Code:
#include < amxmodx >
#include < amxmisc>
#include < engine >
#include < cstrike >
#include < hamsandwich >
#include < fakemeta >
#include < fakemeta_util >
#include < CC_ColorChat >
#include < fun >
#define PLUGIN "Furien Shop"
#define VERSION "0.0.4"
#define AUTHOR "DaNe"
new bool:have_superknife[33];
new bool:have_goldenak[33]
new bool:have_super_black[33]
new have_superknife_v_model [ 66 ] = "models/shop/v_super_knife.mdl"
new have_goldenak_v_model [ 66 ] = "models/shop/v_goldenak.mdl"
new have_super_black_v_model [ 66 ] = "models/shop/v_dragonclaws.mdl"
public plugin_init()
{
register_plugin(PLUGIN, VERSION, "DaNe");
register_clcmd("say /shop", "FurienShop", 0);
register_clcmd("say shop", "FurienShop", 0);
register_clcmd("say_team /shop", "FurienShop", 0);
register_clcmd("say_team shop", "FurienShop", 0);
register_event ( "CurWeapon", "CurrentWeapon", "be", "1=1" );
RegisterHam ( Ham_TakeDamage, "player", "Player_TakeDamage" );
RegisterHam ( Ham_Spawn, "player", "Spawn", 1 );
RegisterHam ( Ham_Spawn, "player", "DropWeapons", 1 );
}
public plugin_precache ( )
{
precache_model ( have_superknife_v_model );
precache_model ( have_goldenak_v_model );
precache_model ( have_super_black_v_model
}
public Spawn ( id )
{
strip_user_weapons ( id );
give_item ( id, "weapon_knife" );
give_item ( id, "weapon_hegrenade" );
give_item ( id, "weapon_smokegrenade" );
cs_set_user_bpammo( id, CSW_SMOKEGRENADE, 2 )
give_item ( id, "weapon_flashbang" );
cs_set_user_bpammo( id, CSW_FLASHBANG, 2 )
have_superknife [ id ] = false;
have_goldenak [ id ] = false;
have_super_black [ id ] = false;
}
public CurrentWeapon ( id )
{
if ( have_superknife [ id ] && get_user_weapon ( id ) == CSW_KNIFE )
{
set_pev ( id, pev_viewmodel2, have_superknife_v_model );
}
if ( have_goldenak [ id ] && get_user_weapon ( id ) == CSW_AK47 )
{
set_pev ( id, pev_viewmodel2, have_goldenak_v_model );
}
if ( have_super_black [ id ] && get_user_weapon ( id ) == CSW_KNIFE )
{
set_pev ( id, pev_viewmodel2, have_super_black_v_model );
}
}
public FurienShop ( id )
{
if (get_user_team(id) == 1 )
{
set_task( 0.1, "ShowFurien", id );
}
if (get_user_team (id ) == 2 )
{
set_task( 0.1, "ShowAntiFurien", id );
}
}
public DropWeapons ( id )
{
if( !is_user_alive( id ) ) {
have_superknife [ id ] = false;
have_super_black [ id ] = false;
have_goldenak [ id ] = false;
}
}
public ShowAntiFurien(id, level, cid)
{
new menu = menu_create( "\rAnti\w-\rFurien \yBuying", "antifurienhandler");
menu_additem(menu, "\yGolden \rAK47 \y- \w[ \r9000 \y$ \w]", "1", 0);
menu_additem(menu, "\yDefuse \rKIT \y- \w[ \r300 \y$ \w]", "2", 0);
menu_additem(menu, "\y50 \rHP \y- \w[ \r3000 \y$ \w]", "3", 0);
menu_additem(menu, "\y50 \rAP \y- \w[ \r1000 \y$ \w]", "4", 0);
menu_additem(menu, "\yHE \rGrenade \y- \w[ \r1200 \y$ \w]", "5", 0);
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, menu, 0);
}
public ShowFurien(id, level, cid)
{
new menu = menu_create( "\rFurien \yBuying", "furienhandler");
menu_additem(menu, "\ySuper \rKnife \y- \w[ \r15000 \y$ \w]", "1", 0);
menu_additem(menu, "\yHE \rGrenade \y- \w[ \r3000 \y$ \w]", "1", 0);
menu_additem(menu, "\y50 \rHP \y- \w[ \r3000 \y$ \w]
menu_additem(menu, "\y100 \rAP \y- \w[ \r10000 \y$ \w]", "1", 0);
menu_additem(menu, "\yBlack \rPack \y- \w[ \r15000 \y$ \w]", "1", 0);
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, menu, 0);
}
public furienhandler (id, menu, item, level, cid)
{
if( item == MENU_EXIT )
{
return 1;
}
new data[6], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
new key = str_to_num(data);
switch(key)
{
case 1:
{
new iMoney = cs_get_user_money ( id ) - 15000;
if( iMoney < 0 )
{
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03Nu ai destui bani!");
return 1;
}
else
{
have_superknife[ id ] = true;
CurrentWeapon( id );
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03Ai cumparat ^x01SuperKnife!");
DropWeapons;
return 1;
}
}
case 2:
{
new iMoney = cs_get_user_money ( id ) - 3000;
if( iMoney < 0 )
{
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03Nu ai destui bani!");
return 1;
}
else
{
give_item ( id, "weapon_hegrenade" );
CurrentWeapon( id );
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03Ai cumparat ^x01HeGrenade!");
DropWeapons;
return 1;
}
}
case 3:
{
new iMoney = cs_get_user_money ( id ) - 3000;
if( iMoney < 0 )
{
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03Nu ai destui bani!");
return 1;
}
else
{
give_item ( id, "weapon_hegrenade" );
CurrentWeapon( id );
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03Ai cumparat ^x01HeGrenade!");
DropWeapons;
return 1;
}
}
case 4:
{
new iMoney = cs_get_user_money ( id ) - 3000;
if( iMoney < 0 )
{
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03Nu ai destui bani !");
return 1;
}
else
{
new Health = get_user_health ( id );
if ( Health <= 250 )
}
{
fm_set_user_health ( id, get_user_health ( id ) + 50 );
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03Ai cumparat ^x0150 HP!")
DropWeapons;
return 1;
}
}
case 5:
{
new iMoney = cs_get_user_money ( id ) - 5000;
if( iMoney < 0 )
{
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03 Nu ai destui bani");
return 1;
}
else
{
new Armor = get_user_armor ( id );
if ( Armor <= 300 )
{
fm_set_user_armor( id, get_user_armor ( id ) + 100 );
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03 Ai cumparat 100 AP!");
DropWeapons;
return 1;
}
}
}
case 6:
{
new iMoney = cs_get_user_money ( id ) - 5000;
if( iMoney < 0 )
{
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03 Nu ai destui bani!");
return 1;
}
else
{
new Health = get_user_health ( id );
if ( Health <= 300 )
{
fm_set_user_armor( id, get_user_armor ( id ) + 250 );
give_item ( id, "weapon_hegrenade" );
cs_set_user_bpammo( id, CSW_HEGRENADE, 3 )
have_super_black[ id ] = true;
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03 Ai cumparat ^x01BlackPack!");
DropWeapons;
return 1;
}
}
}
}
menu_destroy(menu);
return 1;
}
public antifurienhandler(id, menu, item, level, cid)
{
if( item == MENU_EXIT )
{
return 1;
}
new data[6], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
new key = str_to_num(data);
switch(key)
{
case 1:
{
new iMoney = cs_get_user_money ( id ) - 9000;
if( iMoney < 0 )
{
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03Nu ai destui bani!");
return 1;
}
else
{
have_goldenak[ id ] = true;
give_item ( id, "weapon_ak47" );
cs_set_user_bpammo( id, CSW_AK47, 250 )
CurrentWeapon( id );
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03Ai cumparat ^x01GoldenAk!");
DropWeapons;
return 1;
}
}
case 2:
{
new iMoney = cs_get_user_money ( id ) - 300;
if( iMoney < 0 )
{
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03Nu ai destui bani!");
return 1;
}
else
{
fm_give_item ( id, "item_thighpack" );
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03Ai cumparat ^x01DefuseKit!");
DropWeapons;
return 1;
}
}
case 3:
{
new iMoney = cs_get_user_money ( id ) - 3000;
if( iMoney < 0 )
{
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03Nu ai destui bani !");
return 1;
}
else
{
new Health = get_user_health ( id );
if ( Health <= 250 )
}
{
fm_set_user_health ( id, get_user_health ( id ) + 50 );
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03Ai cumparat ^x0150 HP!")
return 1;
}
}
case 4:
{
new iMoney = cs_get_user_money ( id ) - 5000;
if( iMoney < 0 )
{
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03 Nu ai destui bani");
return 1;
}
else
{
new Armor = get_user_armor ( id );
if ( Armor <= 300 )
{
fm_set_user_armor( id, get_user_armor ( id ) + 50 );
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03 Ai cumparat 50 AP!");
return 1;
}
}
}
case 5:
{
new iMoney = cs_get_user_money ( id ) - 1200;
if( iMoney < 0 )
{
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03Nu ai destui bani!");
return 1;
}
else
{
give_item ( id, "weapon_hegrenade" );
CurrentWeapon( id );
ColorChat( id, GREEN, "^x01[ ^x04FurienShop^x01 ]^x03Ai cumparat ^x01HeGrenade!");
return 1;
}
}
}
menu_destroy(menu);
return 1;
}
public Player_TakeDamage ( iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits )
{
if( iInflictor == iAttacker && have_superknife [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_KNIFE && cs_get_user_team( iAttacker ) == CS_TEAM_T )
{
SetHamParamFloat( 4, fDamage * 3.0);
return HAM_HANDLED;
}
if( iInflictor == iAttacker && have_super_black [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_KNIFE && cs_get_user_team( iAttacker ) == CS_TEAM_T )
{
SetHamParamFloat( 4, fDamage * 4.0);
return HAM_HANDLED;
}
if( iInflictor == iAttacker && have_goldenak [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_AK47 && cs_get_user_team( iAttacker ) == CS_TEAM_CT )
{
SetHamParamFloat( 4, fDamage * 3.0);
return HAM_HANDLED;
}
}