Bueno, me quemé la cabeza intentando arreglarlo y no pude.
Code:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>
#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "author"
new cvar_cost
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /hp", "menuhp")
cvar_cost = register_cvar("amx_cost_vida", "3000")
// Add your code here...
}
public menuhp(id)
{
new Menu = menu_create("/rMenu de hp", "hp2")
menu_additem(Menu, "/wCargar vida", "1")
menu_additem(Menu, "/wVender vida", "2")
menu_setprop(Menu, MPROP_EXITNAME, "Salir")
menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, Menu, 0)
}
public hp2(id, Menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(Menu)
return PLUGIN_HANDLED
}
new iData[6];
new iAccess;
new iName[64];
new iCallback;
menu_item_getinfo(Menu, item, iAccess, iData, 5, iName, 63, iCallback)
switch(str_to_num(iData))
{
case 1:
{
new MEnu = menu_create("/rMenu para comprar", "menucompra")
menu_additem(MEnu, "/wComprar 50 de vida", "1")
menu_additem(MEnu, "/wComprar 75 de vida", "2")
menu_additem(MEnu, "/wComprar 100 de vida", "3")
menu_setprop(MEnu, MPROP_EXITNAME, "Salir")
menu_setprop(MEnu, MPROP_EXIT, MEXIT_ALL)
}
case 2:
{
new MENu = menu_create("/rMenu para vender", "menuventa")
menu_additem(MENu, "/wVender 50 de vida", "1")
menu_additem(MENu, "/wVender 75 de vida", "2")
menu_additem(MENu, "/wVender 100 de vida", "3")
}
}
return PLUGIN_HANDLED
}
public menucompra(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
return (PLUGIN_HANDLED)
}
new iData[6];
new iCallback;
new iName[64];
new iAccess;
menu_item_getinfo(menu, item, iAccess, iData, 5, iName, 63, iCallback)
new money, cost, cost2, cost3
money = cs_get_user_money(id)
cost = get_pcvar_num(cvar_cost)
cost2 = cost * 2
cost3 = cost * 3
switch(str_to_num(iData))
{
case 1:
{
if(is_user_alive(id) && (money >= cost))
{
set_user_health(id, (get_user_health(id)) + 50)
cs_set_user_money(id, money - cvar_cost)
client_print(id, print_chat, "Compraste 50 de vida")
client_print(id, print_center, "Compraste 50 de vida")
}
else if(money >= cost)
{
client_print(id, print_chat, "No puedes comprar vida porque estas muerto")
client_print(id, print_center, "No puedes comprar vida porque estas muerto")
}
else if(is_user_alive(id))
{
client_print(id, print_chat, "No puedes comprar vida porque no tienes dinero")
client_print(id, print_center, "No puedes comprar vida porque no tienes dinero")
}
}
case 2:
{
if(is_user_alive(id) && (money >= cost2))
{
set_user_health(id, (get_user_health(id)) + 75)
cs_set_user_money(id, money - (cvar_cost * 2))
client_print(id, print_chat, "Compraste 75 de vida")
client_print(id, print_center, "Compraste 75 de vida")
}
else if(money >= cost2)
{
client_print(id, print_chat, "No puedes comprar vida porque estas muerto")
client_print(id, print_center, "No puedes comprar vida porque estas muerto")
}
else if(is_user_alive(id))
{
client_print(id, print_center, "No puedes comprar vida porque no tienes dinero")
client_print(id, print_center, "No puedes comprar vida porque no tienes dinero")
}
}
case 3:
{
if(is_user_alive(id) && (money >= cost3))
{
set_user_health(id, (get_user_health(id)) + 100)
cs_set_user_money(id, money - (cvar_cost * 3))
client_print(id, print_chat, "Compraste 100 de vida")
client_print(id, print_center, "Compraste 100 de vida")
}
else if(money >=cost3)
{
client_print(id, print_chat, "No puedes comprar vida porque estas muerto")
client_print(id, print_center, "No puedes comprar vida porque estas muerto")
}
else if(is_user_alive(id))
{
client_print(id, print_chat, "No puedes comprar vida porque no tienes dinero")
client_print(id, print_center, "No puedes comprar vida porque no tienes dinero")
}
}
}
return PLUGIN_HANDLED
}
public menuventa(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
new iData[6];
new iCallback;
new iName[64];
new iAccess;
menu_item_getinfo(menu, item, iAccess, iData, 5, iName, 63, iCallback)
new money, cost, cost2, cost3, heal, alive
money = cs_get_user_money(id)
cost = get_pcvar_num(cvar_cost)
cost2 = cost * 2
cost3 = cost * 3
heal = get_user_health(id)
alive = is_user_alive(id)
switch(str_to_num(iData))
{
case 1:
{
if(alive && (heal >= 51))
{
set_user_health(id, (heal - 50))
cs_set_user_money(id, (money + cost))
client_print(id, print_chat, "Vendiste 50 de vida")
client_print(id, print_center, "Vendiste 50 de vida")
}
else if(alive && (heal <= 50))
{
client_print(id, print_chat, "No puedes vender vida porque no tienes suficiente de la misma")
client_print(id, print_center, "No puedes vender vida porque no tienes suficiente de la misma")
}
else if(heal >= 51)
{
client_print(id, print_chat, "No puedes vender vida porque estas muerto")
client_print(id, print_center, "No puedes vender vida porque estas muerto")
}
}
case 2:
{
if(is_user_alive(id) && (heal >= 76))
{
set_user_health(id, (heal - 75))
cs_set_user_money(id, (money + cost2))
client_print(id, print_chat, "Vendiste 75 de vida")
client_print(id, print_center, "Vendiste 75 de vida")
}
else if(is_user_alive(id) && (heal <= 75))
{
client_print(id, print_chat, "No puedes vender vida porque no tienes suficiente de la misma")
client_print(id, print_center, "No puedes vender vida porque no tienes suficiente de la misma")
}
else if(heal >=76)
{
client_print(id, print_chat, "No puedes vender vida porque estas muerto")
client_print(id, print_center, "No puedes vender vida porque estas muerto")
}
}
case 3:
{
if(is_user_alive(id) && (heal >= 100))
{
set_user_health(id, (heal - 99))
cs_set_user_money(id, (money + cost3))
client_print(id, print_chat, "Vendiste 99 de vida")
client_print(id, print_center, "Vendiste 99 de vida")
}
else if(is_user_alive(id) && (heal <= 99))
{
client_print(id, print_chat, "No puedes vender vida porque no tienes suficiente de la misma")
client_print(id, print_center, "No puedes vender vida porque no tienes suficiente de la misma")
}
else if(heal >= 100)
{
client_print(id, print_chat, "No puedes vender vida porque estas muerto")
client_print(id, print_center, "No puedes vender vida porque estas muerto")
}
}
}
return PLUGIN_HANDLED
}