#include <amxmodx>
#include <codmod>
#include <engine>
#include <cstrike>
#include <fun>
#include <fakemeta>
#include <csx>
#include <hamsandwich>
native cod_set_user_coins(id, wartosc);
native cod_get_user_coins(id);
new bool:ma_perk[33]
#define FL_WATERJUMP (1<<11) // popping out of the water
#define FL_ONGROUND (1<<9) // not moving on the ground
public plugin_init()
{
register_plugin("CodShop by Lokiec", "1.0", "Anty");
register_clcmd("say /sklep", "Shop");
register_clcmd("say /shop", "Sklep");
register_event("DeathMsg", "DeathMsg", "a");
}
public Shop(id)
{
new menu = menu_create("Sklep", "ShopHandle");
menu_additem(menu, "Vibovit Junior \r[Leczy 2500 HP] \yKoszt: \r6C");
menu_additem(menu, "APAP \r[Leczy 5000 HP] \yKoszt: \r10C");
menu_additem(menu, "Perk I \r[Dostajesz losowy Perk I] \yKoszt: \r10C");
menu_additem(menu, "Perk II \r[Dostajesz losowy Perk II] \yKoszt: \r10C");
menu_additem(menu, "Perk III \r[Dostajesz losowy Perk III] \yKoszt: \r10C");
menu_additem(menu, "Perk III \r[Dostajesz +5000 XP więcej] \yKoszt: \r250C");
menu_additem(menu, "Perk III \r[Dostajesz AutoBH] \yKoszt: \r50C");
menu_display(id, menu);
}
public ShopHandle(id, menu, item)
{
if(!is_user_alive(id) || !is_user_connected(id))
{
return PLUGIN_CONTINUE;
}
new zdrowie = get_user_health(id);
new kasa = cod_get_user_coins(id)
new maxzdrowie = cod_get_user_health(id)+100
if(item == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_CONTINUE;
}
switch(item)
{
case 0:
{
if(kasa >= 6)
{
new nowe_zdrowie = (zdrowie+2500);
if(nowe_zdrowie < maxzdrowie)
{
cod_set_user_coins(id, kasa-6);
set_user_health(id, nowe_zdrowie);
client_print(id, print_chat, "[COD:MW4] Uleczono Cie o 2500 hp!");
}
if(nowe_zdrowie >= maxzdrowie && zdrowie != maxzdrowie)
{
cod_set_user_coins(id, kasa-6);
set_user_health(id, maxzdrowie);
client_print(id, print_chat, "[COD:MW4] Jestes w pelni uleczony!");
}
}
else
client_print(id, print_chat, "[COD:MW] Masz za malo kasy!");
}
case 1:
{
if(kasa >= 10)
{
new nowe_zdrowie = (zdrowie+5000);
if(nowe_zdrowie < maxzdrowie)
{
cod_set_user_coins(id, kasa-10);
set_user_health(id, nowe_zdrowie);
client_print(id, print_chat, "[COD:MW4] Uleczono Cie o 5000 hp!");
}
if(nowe_zdrowie >= maxzdrowie && zdrowie != maxzdrowie)
{
cod_set_user_coins(id, kasa-10);
set_user_health(id, maxzdrowie);
client_print(id, print_chat, "[COD:MW4] Jestes w pelni uleczony!");
}
}
else
client_print(id, print_chat, "[COD:MW4] Masz za malo kasy!");
}
case 2:
{
if(kasa >= 10)
{
cod_set_user_coins(id, kasa-10);
cod_set_user_perk(id, -1, -1, 1, 0);
client_print(id, print_chat, "[COD:MW4] Kupiles losowy perk do slotu nr. 1!");
}
if(kasa < 10)
client_print(id, print_chat, "[COD:MW4] Masz za malo kasy!");
}
case 3:
{
if(kasa >= 10)
{
cod_set_user_coins(id, kasa-10);
cod_set_user_perk(id, -1, -1, 1, 1);
client_print(id, print_chat, "[COD:MW4] Kupiles losowy perk do slotu nr. 2!");
}
if(kasa < 10)
client_print(id, print_chat, "[COD:MW4] Masz za malo kasy!");
}
case 4:
{
if(kasa >= 10)
{
cod_set_user_coins(id, kasa-10);
cod_set_user_perk(id, -1, -1, 1, 2);
client_print(id, print_chat, "[COD:MW4] Kupiles losowy perk do slotu nr. 3!");
}
if(kasa < 10)
client_print(id, print_chat, "[COD:MW4] Masz za malo kasy!");
}
case 5:
{
if(kasa >= 250)
{
cod_set_user_coins(id, kasa-250);
client_print(id, print_chat, "[COD:MW] Kupiles +5000xp za killa. Otrzymujesz 50000/45000xp!");
}
if(kasa < 250)
client_print(id, print_chat, "[COD:MW] Masz za malo kasy!");
}
case 6:
{
if(kasa >= 50)
{
cod_set_user_coins(id, kasa-50);
client_print(id, print_chat, "[COD:MW4] Kupiles AutoBH!");
}
if(kasa < 50)
client_print(id, print_chat, "[COD:MW4] Masz za malo kasy!");
}
}
return PLUGIN_HANDLED;
}
public client_PreThink(id)
{
if(!ma_perk[id])
return PLUGIN_CONTINUE
entity_set_float(id, EV_FL_fuser2, 0.0)
if(!ma_perk[id])
return PLUGIN_CONTINUE
if (entity_get_int(id, EV_INT_button) & 2) {
new flags = entity_get_int(id, EV_INT_flags)
if (flags & FL_WATERJUMP)
return PLUGIN_CONTINUE
if ( entity_get_int(id, EV_INT_waterlevel) >= 2 )
return PLUGIN_CONTINUE
if ( !(flags & FL_ONGROUND) )
return PLUGIN_CONTINUE
new Float:velocity[3]
entity_get_vector(id, EV_VEC_velocity, velocity)
velocity[2] += 250.0
entity_set_vector(id, EV_VEC_velocity, velocity)
entity_set_int(id, EV_INT_gaitsequence, 6)
}
return PLUGIN_CONTINUE
}
public Death()
{
new attacker = read_data(1);
new victim = read_data(2);
if(!is_user_connected(attacker))
return PLUGIN_CONTINUE;
if(!ma_perk[attacker])
return PLUGIN_CONTINUE;
if(get_user_team(victim) != get_user_team(attacker))
cod_set_user_xp(attacker, cod_get_user_xp(attacker)+1000);
return PLUGIN_CONTINUE;
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1250\\ deff0\\ deflang1045{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/