hey, i made shop plugin but when menu_display is called for showing the shop id goes to 0
PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <hamsandwich>
#include <fun>
#include <cstrike>
#define PLUGIN "[FRN] Furien Shop"
#define VERSION "1.0"
#define AUTHOR "DeclineD"
#define levels 21
new numbers
new knives[33]
new hasknife[33]
new playershopaf
new playershopf
new TextMsg
new v_knife_1[] = {"models/s-knifes/v_first.mdl"}
new v_knife_2[] = {"models/s-knifes/v_second.mdl"}
new v_knife_3[] = {"models/s-knifes/v_third.mdl"}
new v_knife_4[] = {"models/s-knifes/v_fourth.mdl"}
new v_knife_5[] = {"models/s-knifes/v_fifth.mdl"}
new v_knife_6[] = {"models/s-knifes/v_sixth.mdl"}
new v_knife_7[] = {"models/s_knifes/v_seventh.mdl"}
new v_knife_8[] = {"models/s_knifes/v_eighth.mdl"}
new p_knife_1[] = {"models/s-knifes/p_first.mdl"}
new p_knife_2[] = {"models/s-knifes/p_second.mdl"}
new p_knife_3[] = {"models/s-knifes/p_third.mdl"}
new p_knife_4[] = {"models/s-knifes/p_fourth.mdl"}
new p_knife_5[] = {"models/s-knifes/p_fifth.mdl"}
new p_knife_6[] = {"models/s-knifes/p_sixth.mdl"}
new p_knife_7[] = {"models/s-knifes/p_seventh.mdl"}
new p_knife_8[] = {"models/s_knifes/p_eighth.mdl"}
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /shop","clcmd_shop")
RegisterHam(Ham_TakeDamage, "player", "TAKEDAMAGE")
RegisterHam(Ham_Killed, "player", "Death")
register_forward(FM_PlayerPreThink, "FWD_PreThink")
TextMsg = get_user_msgid("SayText")
}
public plugin_precache()
{
precache_model(v_knife_1)
precache_model(v_knife_2)
precache_model(v_knife_3)
precache_model(v_knife_4)
precache_model(v_knife_5)
precache_model(v_knife_6)
precache_model(p_knife_1)
precache_model(p_knife_2)
precache_model(p_knife_3)
precache_model(p_knife_4)
precache_model(p_knife_5)
precache_model(p_knife_6)
}
public clcmd_shop(id)
{
if(get_user_team(id) == 1)
{
menu_display(id, playershopf)
}
else if(get_user_team(id) == 2)
{
menu_display(id, playershopaf)
}
}
public Death(id)
{
hasknife[id] = false
}
public TAKEDAMAGE(victim, inflictor, attacker, Float:Damage, dmgbits, id)
{
new knife = (get_user_weapon(id) == CSW_KNIFE)
if(hasknife[id] && knife && get_user_team(id) == 1)
{
SetHamParamFloat(4, Damage * 1.5)
}
else SetHamParamFloat(4, Damage * 1)
}
public ShopPlayeraf(id)
{
new len
new text[512]
playershopaf = menu_create("UR BEAUTY SHOP", "ShopHandleraf")
if((get_user_health(id) < 255) && get_user_health(id) > 215)
{
len = formatex(text[len], charsmax(text), "Hp \y[\r+%s\y] \w[\y2500$\w]", get_user_health(id) - 255)
}
if((get_user_health(id) < 255) && get_user_health(id) < 215)
{
len = formatex(text[len], charsmax(text), "Hp \y[\r+40\y] \w[\y2500$\w]")
}
if(get_user_health(id) >= 255)
{
len = formatex(text[len], charsmax(text), "\dHp (Unavailable)")
}
menu_additem(playershopaf,text)
menu_additem(playershopaf,"Armor \y[\r+30\y] \w[\y1000$\w]")
menu_additem(playershopaf,"\rDefuse \wKit \r[\y800$\r]")
menu_setprop(playershopaf, MPROP_EXIT, MENU_EXIT)
}
public ShopHandleraf(id, item)
{
if(item == MENU_EXIT)
{
menu_cancel(id)
}
switch(playershopaf)
{
case 0: {
if(cs_get_user_money(id) >= 2500)
{
cs_set_user_money(id, cs_get_user_money(id) - 2500)
}
else return
if(get_user_health(id) < 255)
{
set_user_health(id, get_user_health(id) + 30)
set_dhudmessage(0, 20, 250, -1.0, 0.70, 2, 0.2, 2.0, 0.2, 0.5)
show_dhudmessage(id, "[+30 Hp]")
}
else if(get_user_health(id) >= 255)
{
set_user_health(id, 255)
}
}
case 1:{
if(cs_get_user_money(id) >= 1000)
{
cs_set_user_money(id, cs_get_user_money(id) - 1000)
}
else return
if(get_user_armor(id) < 300)
{
set_user_armor(id, get_user_armor(id) + 30)
set_dhudmessage(0, 20, 250, 0.5, 0.70, 2, 0.2, 2.0, 0.2, 0.5)
show_dhudmessage(id, "[+30 Armor]")
}
else if(get_user_armor(id) >= 300)
{
set_user_health(id, 255)
}
}
case 2:{
if(cs_get_user_money(id) >= 800)
{
cs_set_user_money(id, cs_get_user_money(id) - 800)
}
else return
give_item(id, "item_thighpack")
}
}
}
public ShopPlayerf(id)
{
new len
new text[512]
playershopf = menu_create("UR BEAUTY SHOP", "ShopHandlerf")
if((get_user_health(id) < 255) && get_user_health(id) > 215)
{
len = formatex(text[len], charsmax(text), "Hp \y[\r+%s\y] \w[\y2500$\w]", get_user_health(id) - 255)
}
if((get_user_health(id) < 255) && get_user_health(id) < 215)
{
len = formatex(text[len], charsmax(text), "Hp \y[\r+40\y] \w[\y2500$\w]")
}
if(get_user_health(id) >= 255)
{
len = formatex(text[len], charsmax(text), "\dHp (Unavailable)")
}
menu_additem(playershopf, text)
menu_additem(playershopf, "Armor \y[\r+30\y] \w[\y500$\w]")
menu_additem(playershopf, "\yLucky \wS-Knife \rWheel \w[\y6000$\w]")
menu_additem(playershopf, "\yChoose Your S-Knife \w[\y7000$\w] [V.I.P.]","4", ADMIN_LEVEL_D)
menu_setprop(playershopf, MPROP_EXIT, MENU_EXIT)
}
public ShopHandlerf(id, item)
{
if(item == MENU_EXIT)
{
menu_cancel(id)
}
switch(playershopaf)
{
case 0: {
if(cs_get_user_money(id) >= 2500)
{
cs_set_user_money(id, cs_get_user_money(id) - 2500)
}
else return
if(get_user_health(id) < 255)
{
set_user_health(id, get_user_health(id) + 30)
set_dhudmessage(0, 20, 250, -1.0, 0.70, 2, 0.2, 2.0, 0.2, 0.5)
show_dhudmessage(id, "[+30 Hp]")
}
else if(get_user_health(id) >= 255)
{
set_user_health(id, 255)
}
}
case 1:{
if(cs_get_user_money(id) >= 500)
{
cs_set_user_money(id, cs_get_user_money(id) - 500)
}
else return
if(get_user_armor(id) < 300)
{
set_user_armor(id, get_user_armor(id) + 30)
set_dhudmessage(0, 20, 250, 0.5, 0.70, 2, 0.2, 2.0, 0.2, 0.5)
show_dhudmessage(id, "[+30 Armor]")
}
else if(get_user_armor(id) >= 300)
{
set_user_health(id, 255)
}
}
case 2:{
if(cs_get_user_money(id) >= 6000)
{
cs_set_user_money(id, cs_get_user_money(id) - 6000)
}
else return
Prepare(id)
}
case 3:{
if(cs_get_user_money(id) >= 7000 && get_user_flags(id) && ADMIN_LEVEL_D)
{
cs_set_user_money(id, cs_get_user_money(id) - 7000)
}
else return
if(get_user_flags(id) && ADMIN_LEVEL_D)
{
show_skins_menu(id)
}
else message_begin(MSG_ONE, TextMsg,_,id)
write_byte(id)
write_string("^x04[Furien]^x01: Only Vip Ranks Has Acces!")
message_end()
}
}
}
Prepare(id)
{
numbers = 8
set_task(0.2,"Spin",id,_,_,"a",numbers)
}
Spin(id)
{
knives[id] = random_num(1,numbers)
hasknife[id] = true
if(knives[id] == 1)
{
set_pev(id, pev_weaponmodel2, p_knife_1)
set_pev(id, pev_viewmodel2, v_knife_1)
}
if(knives[id] == 2)
{
set_pev(id, pev_weaponmodel2, p_knife_2)
set_pev(id, pev_viewmodel2, v_knife_2)
}
if(knives[id] == 3)
{
set_pev(id, pev_weaponmodel2, p_knife_3)
set_pev(id, pev_viewmodel2, v_knife_3)
}
if(knives[id] == 4)
{
set_pev(id, pev_weaponmodel2, p_knife_4)
set_pev(id, pev_viewmodel2, v_knife_4)
}
if(knives[id] == 5)
{
set_pev(id, pev_weaponmodel2, p_knife_5)
set_pev(id, pev_viewmodel2, v_knife_5)
}
if(knives[id] == 6)
{
set_pev(id, pev_weaponmodel2, p_knife_6)
set_pev(id, pev_viewmodel2, v_knife_6)
}
if(knives[id] == 7)
{
set_pev(id, pev_weaponmodel2, p_knife_7)
set_pev(id, pev_viewmodel2, v_knife_7)
}
if(knives[id] == 8)
{
set_pev(id, pev_weaponmodel2, p_knife_8)
set_pev(id, pev_viewmodel2, v_knife_8)
}
}
public show_skins_menu(id)
{
new len
new text[512]
new name[33]
len = formatex(text, charsmax(text), "Choose Your Knife ,Lord %s", get_user_name(id, name, 32))
new menu = menu_create(text, "skinshandler")
menu_additem(menu, "\yBu\rlava \w[\yKNIFE\w]")
menu_additem(menu, "\yDual \rXMas \w[\yKNIVES\w]")
menu_additem(menu, "\yDr\rag\yon \rXMas \w[\yCSO SWORD\w]")
menu_additem(menu, "\yK\ro\ysa \w[\ySCYTHE\w]")
menu_additem(menu, "\yAnc\ri\yent \w[\yLIL HAMMER\w]")
menu_additem(menu, "\yAnc\ri\yent \w[\yAXE\w]")
menu_additem(menu, "\rGun\rkata \w[\yAXE\w]")
menu_additem(menu, "\rMeta\ytroic w\[\yAXE\w]")
menu_display(id, menu)
}
public skinshandler(id, menu)
{
switch(menu)
{
case 0: {
set_pev(id, pev_weaponmodel2, p_knife_1)
set_pev(id, pev_viewmodel2, v_knife_1)
}
case 1:{
set_pev(id, pev_weaponmodel2, p_knife_2)
set_pev(id, pev_viewmodel2, v_knife_2)
}
case 2:{
set_pev(id, pev_weaponmodel2, p_knife_3)
set_pev(id, pev_viewmodel2, v_knife_3)
}
case 3:{
set_pev(id, pev_weaponmodel2, p_knife_4)
set_pev(id, pev_viewmodel2, v_knife_4)
}
case 4:{
set_pev(id, pev_weaponmodel2, p_knife_5)
set_pev(id, pev_viewmodel2, v_knife_5)
}
case 5:{
set_pev(id, pev_weaponmodel2, p_knife_6)
set_pev(id, pev_viewmodel2, v_knife_6)
}
case 6:{
set_pev(id, pev_weaponmodel2, p_knife_7)
set_pev(id, pev_viewmodel2, v_knife_7)
}
case 7:{
set_pev(id, pev_weaponmodel2, p_knife_8)
set_pev(id, pev_viewmodel2, v_knife_8)
}
}
}