14/03/2016, 10:58 AM
hola uso el siguiente sistema de granadas y me pasa que si el user elije el primer pack le da la hegrenade pero tambien le da una flare y una bubble porfavor podrian ayudarme si es de cambiar el sistem me podrian dejar uno porfavor
Código PHP:
/ Menu de granadas
enum _:menu_nades
{
nombre[33],
cantidad1,
cantidad2,
cantidad3,
nivel
}
new const nades[][menu_nades] =
{
{"+ 1 Fire", 1, 0, 0, 1 },
{"+ 1 Fire | + 1 Frost", 1, 1, 0, 15 },
{"+ 2 Fire| + 2 Frost", 2, 2, 0, 30 },
{"+ 2 Fire| + 1 Frost | + 1 Shield", 2, 1, 1, 50 },
{"+ 3 Fire| + 3 Frost | + 2 Shield", 3, 3, 2, 80}
}
public show_menu_granadas(id)
{
new menu = menu_create("\wMenu de bombas", "menu_bombas_handler")
new num[3], len[1024]
for (new i = 0; i < sizeof nades; i++)
{
num_to_str(i, num, 2)
if(g_level[id] >= nades[i][nivel])
formatex(len, sizeof len - 1, "\y [\w%s\y]" , nades[i][nombre])
else formatex(len, sizeof len - 1, "\d [%s] \r[Nivel: %d]" , nades[i][nombre] , nades[i][nivel])
menu_additem(menu, len, num)
}
menu_setprop(menu, MPROP_BACKNAME, "\yAtras")
menu_setprop(menu, MPROP_NEXTNAME, "\ySiguiente")
menu_setprop(menu, MPROP_EXITNAME, "\ySalir")
menu_display(id, menu, 0)
}
public menu_bombas_handler(id, menu, item) {
if(item == MENU_EXIT || !is_user_connected(id))
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
if(g_level[id] < nades[item][nivel])
{
print_color(id, "^x04[ZA]^x01 Para este pack tu nivel debe ser:^x04 %d.", nades[item][nivel])
show_menu_granadas(id)
return PLUGIN_HANDLED;
}
give_item(id, "weapon_hegrenade")
cs_set_user_bpammo(id, CSW_HEGRENADE, nades[item][cantidad1])
give_item(id, "weapon_flashbang")
cs_set_user_bpammo(id, CSW_FLASHBANG, nades[item][cantidad2])
give_item(id, "weapon_smokegrenade")
cs_set_user_bpammo(id, CSW_SMOKEGRENADE, nades[item][cantidad3])
menu_destroy(menu)
return PLUGIN_CONTINUE;
}
stock print_color(id, const mensaje[], any:...) {//Stock para mensajes de color
static buffer[128]
vformat(buffer, charsmax(buffer), mensaje, 3)
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, id)
write_byte(id)
write_string(buffer)
message_end()
}