Късметлия си, понеже преди време бях направил точно такава заявка и още пазя кода.
Код за потвърждение: Избери целия код
#include <amxmodx>
#include <cromchat>
#include <cstrike>
#include <fun>
//#define USING_REGAMEDLL
#if defined USING_REGAMEDLL
#include <reapi>
#else
#include <stripweapons>
#endif
#define PLUGIN_VERSION "1.0"
#define SOUND_BUY "items/gunpickup2.wav"
#define SHOP_FLAG ADMIN_LEVEL_D
#define MAX_ITEMS 3
enum _:ItemInfo
{
Name[32],
Price,
Weapon[16],
Ammo,
Csw
}
new g_eItems[MAX_ITEMS][ItemInfo] =
{
{ "SG-550 Sniper Rifle", 5000, "weapon_sg550", 90, CSW_SG550 },
{ "G3/SG-1 Precision Sniper Rifle", 6000, "weapon_g3sg1", 90, CSW_G3SG1 },
{ "AWP", 4000, "weapon_awp", 30, CSW_AWP }
}
public plugin_init()
{
register_plugin("Simple Shop", PLUGIN_VERSION, "OciXCrom")
register_cvar("@CRXSimpleShop", PLUGIN_VERSION, FCVAR_SERVER|FCVAR_SPONLY|FCVAR_UNLOGGED)
register_clcmd("say /shop", "cmdShop")
register_clcmd("say_team /shop", "cmdShop")
CC_SetPrefix("&x04[Sniper Shop]")
}
public plugin_precache()
precache_sound(SOUND_BUY)
public cmdShop(id)
{
if(!(get_user_flags(id) & SHOP_FLAG))
CC_SendMessage(id, "You have no access to this command.")
else if(!is_user_alive(id))
CC_SendMessage(id, "You need to be alive.")
else
{
new iMenu = menu_create("\rSniper Shop", "shopHandler")
new szItem[64], iMoney = cs_get_user_money(id)
for(new i; i < sizeof(g_eItems); i++)
{
formatex(szItem, charsmax(szItem), "%s %s[%i$]", g_eItems[i][Name], iMoney >= g_eItems[i][Price] ? "\r" : "\d", g_eItems[i][Price])
menu_additem(iMenu, szItem)
}
menu_display(id, iMenu, 0)
}
return PLUGIN_HANDLED
}
public shopHandler(id, iMenu, iItem)
{
if(iItem != MENU_EXIT && is_user_alive(id))
{
new iMoney = cs_get_user_money(id)
if(iMoney < g_eItems[iItem][Price])
CC_SendMessage(id, "You don't have enough money to purchase this item.")
else
{
cs_set_user_money(id, iMoney - g_eItems[iItem][Price])
CC_SendMessage(id, "You have bought ^3%s ^1for ^4%i$", g_eItems[iItem][Name], g_eItems[iItem][Price])
emit_sound(id, CHAN_ITEM, SOUND_BUY, 1.0, ATTN_NORM, 0, PITCH_NORM)
#if defined USING_REGAMEDLL
rg_give_item(id, g_eItems[iItem][Weapon], GT_REPLACE)
#else
StripWeapons(id, Primary)
give_item(id, g_eItems[iItem][Weapon])
#endif
cs_set_user_bpammo(id, g_eItems[iItem][Ammo], g_eItems[iItem][Csw])
}
}
menu_destroy(iMenu)
return PLUGIN_HANDLED
}
Ако ползваш ReHLDS & ReGameDLL, премахни коментара от реда //#define USING_REGAMEDLL