* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <engine>
#include <hamsandwich>
#include <colorchat>
#define PLUGIN "hyperKOCKA Bolt"
#define VERSION "1.0"
#define AUTHOR "Cowy"
new g_pontok[33];
new bool:g_lancfuresz[33];
new bool:g_machate[33];
new bool:g_gumibot[33];
new shop1;
new shop2;
new shop3;
new shop4;
new shop5;
new shop6;
new shop7;
new shop8;
new shop9;
new shop10;
new shop11;
new syncObjp;
new bool:g_hp;
new admin;
new ajandek1, ajandek2, ajandek3
new VIEW_MODELLANCFURESZ[] = "hyperkockashop/v_lancfuresz.mdl";
new PLAYER_MODELLANCFURESZ[] = "hyperkockashop/p_lancfuresz.mdl";
new VIEW_MODELMACHATE[] = "hyperkockashop/v_machate.mdl";
new PLAYER_MODELMACHATE[] = "hyperkockashop/p_machate.mdl";
new VIEW_MODELGUMIBOT[] = "hyperkockashop/v_gumibot.mdl";
new PLAYER_MODELGUMIBOT[] = "hyperkockashop/p_gumibot.mdl";
new const Si[] = { "hyperkocka_shop/Yes.wav" }
new const No[] = { "hyperkocka_shop/No.wav" }
new const machate[] = {"hyperkockashop/machate.wav"}
new const lancfuresz[] = {"hyperkockashop/lancfuresz.wav"}
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR);
register_event("DeathMsg", "Death", "a");
register_event("CurWeapon", "Change_Weapon", "be", "1=1");
register_logevent("Event_Roundend", 2, "1=Round_End")
register_logevent("Start", 2, "1=Round_Start")
register_clcmd("say /bolt", "boltmenu");
RegisterHam(Ham_Spawn, "player", "PlayerSpawn", 1);
RegisterHam(Ham_TakeDamage, "player", "TakeDamage", 0);
shop1 = register_cvar("shop_1", "5");
shop2 = register_cvar("shop_2", "8");
shop3 = register_cvar("shop_3", "10");
shop4 = register_cvar("shop_4", "13");
shop5 = register_cvar("shop_5", "16");
shop6 = register_cvar("shop_6", "18");
shop7 = register_cvar("shop_7", "5");
shop8 = register_cvar("shop_8", "5");
shop9 = register_cvar("shop_9", "5");
shop10 = register_cvar("shop_10", "15");
shop11 = register_cvar("shop_11", "30");
ajandek1 = register_cvar("pont_ajandek1", "5")
ajandek2 = register_cvar("pont_ajandek2", "10")
ajandek3 = register_cvar("pont_ajandek3", "30")
syncObjp = CreateHudSyncObj();
}
public plugin_precache()
{
precache_model(VIEW_MODELLANCFURESZ);
precache_model(PLAYER_MODELLANCFURESZ);
precache_model(VIEW_MODELMACHATE);
precache_model(PLAYER_MODELMACHATE);
precache_model(VIEW_MODELGUMIBOT);
precache_model(PLAYER_MODELGUMIBOT);
precache_sound(Si)
precache_sound(No)
}
public Start(id)
{
g_hp = true;
}
public Event_Roundend()
{
new players[32], pnum, tempid;
get_players(players, pnum, "c");
for(new i; i<pnum; i++)
{
tempid = players[i];
g_lancfuresz[tempid] = false;
g_machate[tempid] = false;
g_gumibot[tempid] = false;
}
}
public Death()
{
new id = read_data(2);
new attacker = read_data(1);
if(!is_user_alive(attacker))
return PLUGIN_CONTINUE;
if(get_user_team(id) != get_user_team(attacker))
{
g_pontok[attacker]+=5;
}
return PLUGIN_CONTINUE;
}
public boltmenu(id)
{
if(get_user_team(id) == 1)
{
if(is_user_alive(id))
{
static opcion[64];
formatex(opcion, charsmax(opcion),"\y[Bolt] [Beta] v0.1");
new iMenu = menu_create(opcion, "boltmenuh");
formatex(opcion, charsmax(opcion),"Flash Granat \r%d pont", get_pcvar_num(shop1));
formatex(opcion, charsmax(opcion),"He Granat \r%d pont", get_pcvar_num(shop2));
formatex(opcion, charsmax(opcion),"He+Flash Granat \r%d pont", get_pcvar_num(shop3));
formatex(opcion, charsmax(opcion),"Armor \r%d pont", get_pcvar_num(shop4));
formatex(opcion, charsmax(opcion),"+50 HP", get_pcvar_num(shop5));
formatex(opcion, charsmax(opcion),"Machate\r%d pont", get_pcvar_num(shop6));
formatex(opcion, charsmax(opcion),"Lancfuresz\r%d pont", get_pcvar_num(shop7));
formatex(opcion, charsmax(opcion),"Glock\r%d pont", get_pcvar_num(shop8));
formatex(opcion, charsmax(opcion),"M4a1\r%d pont", get_pcvar_num(shop9));
menu_additem(iMenu, opcion, "9");
menu_setprop(iMenu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, iMenu, 0);
}
else
{
ColorChat(id, GREEN, "[Bolt] [Beta] Csak elok hasznalhatjak a boltot");
}
}
else if(get_user_team(id) == 2)
{
if(is_user_alive(id))
{
static opcion[64];
formatex(opcion, charsmax(opcion),"\y[Bolt] [Beta] v0.1");
new iMenu2 = menu_create(opcion, "boltmenuh2");
formatex(opcion, charsmax(opcion),"\w+50 HP(1 korben 1x) \r%d pont", get_pcvar_num(shop10));
formatex(opcion, charsmax(opcion),"\wGumibot(100 Sebzes) \r%d pont", get_pcvar_num(shop11));
menu_additem(iMenu2, opcion, "2");
menu_setprop(iMenu2, MPROP_EXIT, MEXIT_ALL);
menu_display(id, iMenu2, 0);
}
else
{
ColorChat(id, GREEN, "[hyperKOCKA Bolt] [Beta] Csak elok hasznalhatjak a boltot");
}
}
return PLUGIN_HANDLED;
}
public boltmenuh(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new Data[6], Name[64];
new Access, Callback;
menu_item_getinfo(menu, item, Access, Data,5, Name, 63, Callback);
new elo = is_user_alive(id);
new item_ar1 = get_pcvar_num(shop1);
new item_ar2 = get_pcvar_num(shop2);
new item_ar3 = get_pcvar_num(shop3);
new item_ar4 = get_pcvar_num(shop4);
new item_ar5 = get_pcvar_num(shop5);
new item_ar6 = get_pcvar_num(shop6);
new item_ar7 = get_pcvar_num(shop7);
new item_ar8 = get_pcvar_num(shop8);
new item_ar9 = get_pcvar_num(shop9);
new health = get_user_health(id)
new Key = str_to_num(Data);
switch (Key)
{
case 1:
{
if (g_pontok[id]>= item_ar1&& elo)
{
if(g_hp)
{
g_pontok[id] -= item_ar1;
give_item(id, "weapon_flashbang")
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Megvetted a Flash Granatot");
emit_sound(id, CHAN_AUTO, Si, VOL_NORM, ATTN_NORM , 0, PITCH_NORM)
}
else
{
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Nincs penzed erre!");
}
}
}
case 2:
{
if (g_pontok[id]>= item_ar2 && elo)
{
g_pontok[id] -= item_ar2;
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Megvetted a HE Granatot");
give_item(id, "weapon_hegrenade")
emit_sound(id, CHAN_AUTO, Si, VOL_NORM, ATTN_NORM , 0, PITCH_NORM)
}
else
{
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Nincs penzed erre!");
emit_sound(id, CHAN_AUTO, No, VOL_NORM, ATTN_NORM , 0, PITCH_NORM)
}
}
case 3:
{
if (g_pontok[id]>= item_ar3 && elo)
{
g_pontok[id] -= item_ar3;
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Megvetted a HE+Flash granatokat");
give_item(id, "weapon_flashbang")
give_item(id, "weapon_hegrenade")
emit_sound(id, CHAN_AUTO, Si, VOL_NORM, ATTN_NORM , 0, PITCH_NORM)
}
else
{
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Nincs penzed erre!");
emit_sound(id, CHAN_AUTO, No, VOL_NORM, ATTN_NORM , 0, PITCH_NORM)
}
}
case 4:
{
if (g_pontok[id]>= item_ar4 && elo)
{
g_pontok[id] -= item_ar4;
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Megvetted az Armor-t ");
set_user_armor(id, 100)
emit_sound(id, CHAN_AUTO, Si, VOL_NORM, ATTN_NORM , 0, PITCH_NORM)
}
else
{
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Nincs penzed erre!");
emit_sound(id, CHAN_AUTO, No, VOL_NORM, ATTN_NORM , 0, PITCH_NORM)
}
}
case 5:
{
if (g_pontok[id]>= item_ar5 && elo)
{
g_pontok[id] -= item_ar5;
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Megvetted az +50 HP-t ");
set_user_health(id, 150)
emit_sound(id, CHAN_AUTO, Si, VOL_NORM, ATTN_NORM , 0, PITCH_NORM)
}
else
{
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Nincs penzed erre!");
emit_sound(id, CHAN_AUTO, No, VOL_NORM, ATTN_NORM , 0, PITCH_NORM)
}
}
case 6:
{
if (g_pontok[id]>= item_ar6 && elo)
{
g_pontok[id] -= item_ar6;
g_machate[id] = true;
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Megvetted a Machatate-t ");
entity_set_string(id, EV_SZ_viewmodel, VIEW_MODELMACHATE);
entity_set_string(id, EV_SZ_weaponmodel, PLAYER_MODELMACHATE);
emit_sound(id, CHAN_AUTO, Si, VOL_NORM, ATTN_NORM , 0, PITCH_NORM)
emit_sound(id, CHAN_WEAPON, machate, 1.0, ATTN_NORM, 0, PITCH_NORM)
}
else
{
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Nincs penzed erre!");
emit_sound(id, CHAN_AUTO, No, VOL_NORM, ATTN_NORM , 0, PITCH_NORM)
}
}
case 7:
{
if (g_pontok[id]>= item_ar7 && elo)
{
g_pontok[id] -= item_ar7;
g_lancfuresz[id] = true;
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Megvetted a lancfureszt");
entity_set_string(id, EV_SZ_viewmodel, VIEW_MODELLANCFURESZ);
entity_set_string(id, EV_SZ_weaponmodel, PLAYER_MODELLANCFURESZ);
emit_sound(id, CHAN_AUTO, Si, VOL_NORM, ATTN_NORM , 0, PITCH_NORM)
emit_sound(id, CHAN_WEAPON, lancfuresz, 1.0, ATTN_NORM, 0, PITCH_NORM)
}
else
{
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Nincs penzed erre!");
emit_sound(id, CHAN_AUTO, No, VOL_NORM, ATTN_NORM , 0, PITCH_NORM)
}
}
case 8:
{
if (g_pontok[id]>= item_ar8 && elo)
{
g_pontok[id] -= item_ar8;
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Megvetted a Glockot");
give_item(id, "weapon_glock18")
emit_sound(id, CHAN_AUTO, Si, VOL_NORM, ATTN_NORM , 0, PITCH_NORM)
}
else
{
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Nincs penzed erre!");
emit_sound(id, CHAN_AUTO, No, VOL_NORM, ATTN_NORM , 0, PITCH_NORM)
}
}
case 9:
{
if (g_pontok[id]>= item_ar9 && elo)
{
g_pontok[id] -= item_ar9;
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Megvetted a m4a1-t ");
give_item(id, "weapon_m4a1");
emit_sound(id, CHAN_AUTO, Si, VOL_NORM, ATTN_NORM , 0, PITCH_NORM)
}
else
{
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Nincs penzed erre!");
emit_sound(id, CHAN_AUTO, No, VOL_NORM, ATTN_NORM , 0, PITCH_NORM)
}
}
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public boltmenuh2(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new Data[6], Name[64];
new Access, Callback;
menu_item_getinfo(menu, item, Access, Data,5, Name, 63, Callback);
new elo = is_user_alive(id);
new item_ar10 = get_pcvar_num(shop10);
new item_ar11 = get_pcvar_num(shop11);
new health = get_user_health(id)
new Key = str_to_num(Data);
switch (Key)
{
case 1:
{
if (g_pontok[id]>= item_ar10 && elo)
{
if(g_hp)
{
g_pontok[id] -= item_ar10;
set_user_health(id, health+50)
g_hp = false;
}
else
{
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Nincs penzed erre!");
emit_sound(id, CHAN_AUTO, No, VOL_NORM, ATTN_NORM , 0, PITCH_NORM)
}
}
}
case 2:
{
if (g_pontok[id]>= item_ar11 && elo)
{
g_pontok[id] -= item_ar11;
g_gumibot[id] = true;
entity_set_string(id, EV_SZ_viewmodel, VIEW_MODELGUMIBOT);
entity_set_string(id, EV_SZ_weaponmodel, PLAYER_MODELGUMIBOT);
}
else
{
ColorChat(id, NORMAL, "[hyperKOCKA]^1 Nincs penzed erre!");
emit_sound(id, CHAN_AUTO, No, VOL_NORM, ATTN_NORM , 0, PITCH_NORM)
}
}
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public Change_Weapon(id)
{
new weaponID = read_data(2);
if(get_user_team(id) == 1)
{
if(weaponID == CSW_KNIFE && g_machate[id])
{
entity_set_string(id, EV_SZ_viewmodel, VIEW_MODELMACHATE);
entity_set_string(id, EV_SZ_weaponmodel, PLAYER_MODELMACHATE);
}
else if(weaponID == CSW_KNIFE && g_lancfuresz[id])
{
entity_set_string(id, EV_SZ_viewmodel, VIEW_MODELLANCFURESZ);
entity_set_string(id, EV_SZ_weaponmodel, PLAYER_MODELLANCFURESZ);
}
}
else if(get_user_team(id) == 2)
{
if(weaponID == CSW_KNIFE && g_gumibot[id])
{
entity_set_string(id, EV_SZ_viewmodel, VIEW_MODELGUMIBOT);
entity_set_string(id, EV_SZ_weaponmodel, PLAYER_MODELGUMIBOT);
}
}
return PLUGIN_CONTINUE;
}
public PlayerSpawn(id)
{
if (is_user_alive(id))
{
boltmenu(id)
}
}
public TakeDamage(victim, inflictor, attacker, Float:damage, damage_bits)
{
if(get_user_weapon(attacker) == CSW_KNIFE)
{
if(get_user_team(attacker) == 1 && g_machate[attacker])
{
SetHamParamFloat(4, 75.0);
}
else if(get_user_team(attacker) == 1 && g_lancfuresz[attacker])
{
SetHamParamFloat(4, 350.0);
}
else if(get_user_team(attacker) == 2 && g_gumibot[attacker])
{
SetHamParamFloat(4, 100.0);
}
}
return HAM_IGNORED;
}
public client_PreThink(id)
{
set_hudmessage(255, 255, 0, 0.9, 0.8, 0, 6.0, 4.5);
ShowSyncHudMsg(id, syncObjp,"Pontjaid: %i", g_pontok[id]);
return PLUGIN_CONTINUE;
}
public ajandek_1(id)
{
new penz = get_pcvar_num(ajandek1);
client_print(id, print_chat, "[Pontrendszer] %d pont jar mert itt vagy mar 5 perce!", penz)
g_pontok[id] += penz;
}
public ajandek_2(id)
{
new penz = get_pcvar_num(ajandek2);
client_print(id, print_chat, "[Pontrendszer] %d pont jar mert itt vagy mar 10 perce!", penz)
g_pontok[id] += penz;
}
public ajandek_3(id)
{
new penz = get_pcvar_num(ajandek3);
client_print(id, print_chat, "[Pontrendszer] %d pont jar mert itt vagy mar 30 perce!", penz)
g_pontok[id] += penz;
}