| Neeeeeeeeeel.- |
06-16-2012 22:37 |
Re: Buy menu plugin
PHP Code:
#include <amxmodx> #include <cstrike> #include <fun> #include <engine>
new bool:norecoil[33]
new pcvars[3] new Messages[][] ={ "Type /buy to open up the buy menu!", "Now No One Can See You!", "Now You Have No Recoil!" } new Names[][] ={ "", "Invisibility", "NoRecoil" }
public plugin_init() { register_plugin("Buy_Menu","iMiNDFREAK","v1.8") pcvars[0] = register_cvar("buy_menu","1") pcvars[1] = register_cvar("buy_invisibility", "1000") pcvars[2] = register_cvar("buy_norecoil", "1000") register_clcmd( "say /buy","ShowBuyMenu") register_clcmd( "say_team /buy","ShowBuyMenu") register_event("CurWeapon","Change_Gun","be","1=1") register_logevent("ResetBonuses", 2, "1=Round_End") }
public ShowBuyMenu(id) { if(get_pcvar_num(pcvars[0]) == 0) { client_print(id, print_chat, "") return PLUGIN_HANDLED } new menu = menu_create("Buy Menu" , "buy_handle"); new i=1,nr[3] new Form[50] for (i=1; i<sizeof Names; i++) { format(nr,2,"%i",i) format(Form,49,"%s: $%i",Names[i],get_pcvar_num(pcvars[i])) menu_additem(menu ,Form, nr , 0); } menu_setprop(menu , MPROP_EXIT , MEXIT_ALL); menu_display(id , menu , 0); return PLUGIN_CONTINUE } public buy_handle(id , menu , item) { if(item == MENU_EXIT) { client_print(id, print_chat, "") menu_destroy(menu); } new szCommand[6] , szName[64]; new access , callback; menu_item_getinfo(menu , item , access , szCommand , 5 , szName , 63 , callback); new i = str_to_num(szCommand) new money = cs_get_user_money(id) new cost = get_pcvar_num(pcvars[i]) if(money < cost) { client_print(id, print_chat, "", cost) return PLUGIN_HANDLED } cs_set_user_money(id, money-cost,1) client_print(id, print_chat, "",Messages[i]) switch (i){ case 1: set_user_rendering(id,kRenderFxNone, 0,0,0, kRenderTransAdd,30) case 2:norecoil[id]=true } return PLUGIN_HANDLED }
public Change_Gun(id) { if (norecoil[id]) { entity_set_vector(id, EV_VEC_punchangle, Float:{0.0, 0.0, 0.0}) } return PLUGIN_CONTINUE }
public RoundStart(id) { norecoil[id]=false set_user_rendering(id,kRenderFxNone, 0,0,0, kRenderNormal,255) }
|