Code:
// Menus
gMenuID = register_menuid("Select Super Power")
new keys = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)|(1<<8)|(1<<9)
register_menucmd(gMenuID,keys,"selectedSuperPower")
Code:
public selectedSuperPower(id, key)
{
if (!inMenu[id] || !shModActive()) return PLUGIN_HANDLED
inMenu[id] = false
if ( !passCheatDeathCheck(id) ) {
client_print(id, print_center, "Get C/D From www.unitedadmins.com")
return PLUGIN_HANDLED
}
if ( isPowerBanned[id] ) {
client_print(id, print_center, "You are not allowed to have powers")
return PLUGIN_HANDLED
}
// Next and Previous Super Hero Menus
if ( key == 8 ) {
menuSuperPowers(id, gPlayerMenuOffset[id] + 8)
return PLUGIN_HANDLED
}
// Cancel
if ( key == 9 ) {
gPlayerMenuOffset[id] = 0
return PLUGIN_HANDLED
}
// Hero was Picked!
new powerCount = getPowerCount(id)
if ( powerCount >= gNumLevels || powerCount >= gMaxPowers ) return PLUGIN_HANDLED
new heroIndex = gPlayerMenuChoices[id][key + gPlayerMenuOffset[id]]
// Just a crash check
if ( heroIndex < 0 || heroIndex > gSuperHeroCount ) return PLUGIN_HANDLED
new heroLevel = getHeroLevel(heroIndex)
new MaxBinds = get_cvar_num("sh_maxbinds")
if ((gPlayerBinds[id][0] >= MaxBinds && gSuperHeros[heroIndex][requiresKeys])) {
client_print(id, print_chat, "[SH] You cannot choose more than %d heroes that require binds",MaxBinds)
menuSuperPowers(id, gPlayerMenuOffset[id])
return PLUGIN_HANDLED
}
else if ( maxPowersLeft[id][heroLevel] <= 0 ) {
client_print(id, print_chat, "[SH] You cannot pick any more heroes from that level")
menuSuperPowers(id, gPlayerMenuOffset[id])
return PLUGIN_HANDLED
}
new message[256]
if ( !gSuperHeros[heroIndex][requiresKeys] ) {
format(message,256,"AUTOMATIC POWER: %s^n%s", gSuperHeros[heroIndex][superpower], gSuperHeros[heroIndex][help])
}
else {
format(message,256,"BIND KEY TO ^"+POWER%d^": %s^n%s", gPlayerBinds[id][0]+1, gSuperHeros[heroIndex][superpower], gSuperHeros[heroIndex][help])
}
// Show the Hero Picked
set_hudmessage(100,100,0,-1.0,0.2,0,1.0,5.0,0.1,0.2,84)
show_hudmessage( id, message)
// Bind Keys / Set Powers
gPlayerPowers[id][0] = powerCount + 1
gPlayerPowers[id][powerCount + 1] = heroIndex
//Init This Hero!
initHero(id, heroIndex)
displayPowers(id, true)
// Show the Menu Again if they don't have enough skills yet!
menuSuperPowers(id, gPlayerMenuOffset[id])
return PLUGIN_HANDLED
}