Member
|
10-13-2012
, 17:00
Re: [HELP] Zombie Plague Menu
|
#3
|
Quote:
Originally Posted by Electroo
poste le code que t'utilise ?
|
j'utilise zombie plague advance 1.6.1, je pense que je dois modifier quelque chose là mais je sais pas
PHP Code:
show_menu_player_list(id)
{
static menuid, menu[128], player, userflags, buffer[2]
userflags = get_user_flags(id)
// Title
switch (PL_ACTION)
{
case ACTION_ZOMBIEFY_HUMANIZE: formatex(menu, charsmax(menu), "%L\r", id, "MENU_ADMIN1")
case ACTION_MAKE_NEMESIS: formatex(menu, charsmax(menu), "%L\r", id, "MENU_ADMIN2")
case ACTION_MAKE_SURVIVOR: formatex(menu, charsmax(menu), "%L\r", id, "MENU_ADMIN3")
case ACTION_MAKE_SNIPER: formatex(menu, charsmax(menu), "%L\r", id, "MENU_ADMIN8")
case ACTION_MAKE_ASSASSIN: formatex(menu, charsmax(menu), "%L\r", id, "MENU_ADMIN9")
case ACTION_RESPAWN_PLAYER: formatex(menu, charsmax(menu), "%L\r", id, "MENU_ADMIN4")
}
menuid = menu_create(menu, "menu_player_list")
// Player List
for (player = 1; player <= g_maxplayers; player++)
{
// Skip if not connected
if (!g_isconnected[player])
continue;
// Format text depending on the action to take
switch (PL_ACTION)
{
case ACTION_ZOMBIEFY_HUMANIZE: // Zombiefy/Humanize command
{
if (g_zombie[player])
{
if (allowed_human(player) && (userflags & g_access_flag[ACCESS_MAKE_HUMAN]))
{
if (g_nemesis[player])
formatex(menu, charsmax(menu), "%s \r[%L]", g_playername[player], id, "CLASS_NEMESIS")
else if (g_assassin[player])
formatex(menu, charsmax(menu), "%s \r[%L]", g_playername[player], id, "CLASS_ASSASSIN")
else
formatex(menu, charsmax(menu), "%s \r[%L]", g_playername[player], id, "CLASS_ZOMBIE")
}
else
{
if (g_nemesis[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_NEMESIS")
else if (g_assassin[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_ASSASSIN")
else
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_ZOMBIE")
}
}
else
{
if (allowed_zombie(player) && (g_newround ? (userflags & g_access_flag[ACCESS_MODE_INFECTION]) : (userflags & g_access_flag[ACCESS_MAKE_ZOMBIE])))
{
if (g_survivor[player])
formatex(menu, charsmax(menu), "%s \y[%L]", g_playername[player], id, "CLASS_SURVIVOR")
else if (g_sniper[player])
formatex(menu, charsmax(menu), "%s \y[%L]", g_playername[player], id, "CLASS_SNIPER")
else
formatex(menu, charsmax(menu), "%s \y[%L]", g_playername[player], id, "CLASS_HUMAN")
}
else
{
if (g_survivor[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_SURVIVOR")
else if (g_sniper[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_SNIPER")
else
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_HUMAN")
}
}
}
case ACTION_MAKE_NEMESIS: // Nemesis command
{
if (allowed_nemesis(player) && (g_newround ? (userflags & g_access_flag[ACCESS_MODE_NEMESIS]) : (userflags & g_access_flag[ACCESS_MAKE_NEMESIS])))
{
if (g_zombie[player])
{
if (g_nemesis[player])
formatex(menu, charsmax(menu), "%s \r[%L]", g_playername[player], id, "CLASS_NEMESIS")
else if (g_assassin[player])
formatex(menu, charsmax(menu), "%s \r[%L]", g_playername[player], id, "CLASS_ASSASSIN")
else
formatex(menu, charsmax(menu), "%s \r[%L]", g_playername[player], id, "CLASS_ZOMBIE")
}
else
{
if (g_survivor[player])
formatex(menu, charsmax(menu), "%s \y[%L]", g_playername[player], id, "CLASS_SURVIVOR")
else if (g_sniper[player])
formatex(menu, charsmax(menu), "%s \y[%L]", g_playername[player], id, "CLASS_SNIPER")
else
formatex(menu, charsmax(menu), "%s \y[%L]", g_playername[player], id, "CLASS_HUMAN")
}
}
else
{
if (g_zombie[player])
{
if (g_nemesis[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_NEMESIS")
else if (g_assassin[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_ASSASSIN")
else
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_ZOMBIE")
}
else
{
if (g_survivor[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_SURVIVOR")
else if (g_sniper[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_SNIPER")
else
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_HUMAN")
}
}
}
case ACTION_MAKE_SURVIVOR: // Survivor command
{
if (allowed_survivor(player) && (g_newround ? (userflags & g_access_flag[ACCESS_MODE_SURVIVOR]) : (userflags & g_access_flag[ACCESS_MAKE_SURVIVOR])))
{
if (g_zombie[player])
{
if (g_nemesis[player])
formatex(menu, charsmax(menu), "%s \r[%L]", g_playername[player], id, "CLASS_NEMESIS")
else if (g_assassin[player])
formatex(menu, charsmax(menu), "%s \r[%L]", g_playername[player], id, "CLASS_ASSASSIN")
else
formatex(menu, charsmax(menu), "%s \r[%L]", g_playername[player], id, "CLASS_ZOMBIE")
}
else
{
if (g_survivor[player])
formatex(menu, charsmax(menu), "%s \y[%L]", g_playername[player], id, "CLASS_SURVIVOR")
else if (g_sniper[player])
formatex(menu, charsmax(menu), "%s \y[%L]", g_playername[player], id, "CLASS_SNIPER")
else
formatex(menu, charsmax(menu), "%s \y[%L]", g_playername[player], id, "CLASS_HUMAN")
}
}
else
{
if (g_zombie[player])
{
if (g_nemesis[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_NEMESIS")
else if (g_assassin[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_ASSASSIN")
else
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_ZOMBIE")
}
else
{
if (g_survivor[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_SURVIVOR")
else if (g_sniper[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_SNIPER")
else
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_HUMAN")
}
}
}
case ACTION_MAKE_SNIPER: // Sniper command
{
if (allowed_sniper(player) && (g_newround ? (userflags & g_access_flag[ACCESS_MODE_SNIPER]) : (userflags & g_access_flag[ACCESS_MAKE_SNIPER])))
{
if (g_zombie[player])
{
if (g_nemesis[player])
formatex(menu, charsmax(menu), "%s \r[%L]", g_playername[player], id, "CLASS_NEMESIS")
else if (g_assassin[player])
formatex(menu, charsmax(menu), "%s \r[%L]", g_playername[player], id, "CLASS_ASSASSIN")
else
formatex(menu, charsmax(menu), "%s \r[%L]", g_playername[player], id, "CLASS_ZOMBIE")
}
else
{
if (g_survivor[player])
formatex(menu, charsmax(menu), "%s \y[%L]", g_playername[player], id, "CLASS_SURVIVOR")
else if (g_sniper[player])
formatex(menu, charsmax(menu), "%s \y[%L]", g_playername[player], id, "CLASS_SNIPER")
else
formatex(menu, charsmax(menu), "%s \y[%L]", g_playername[player], id, "CLASS_HUMAN")
}
}
else
{
if (g_zombie[player])
{
if (g_nemesis[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_NEMESIS")
else if (g_assassin[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_ASSASSIN")
else
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_ZOMBIE")
}
else
{
if (g_survivor[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_SURVIVOR")
else if (g_sniper[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_SNIPER")
else
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_HUMAN")
}
}
}
case ACTION_MAKE_ASSASSIN: // Nemesis command
{
if (allowed_assassin(player) && (g_newround ? (userflags & g_access_flag[ACCESS_MODE_ASSASSIN]) : (userflags & g_access_flag[ACCESS_MAKE_ASSASSIN])))
{
if (g_zombie[player])
{
if (g_nemesis[player])
formatex(menu, charsmax(menu), "%s \r[%L]", g_playername[player], id, "CLASS_NEMESIS")
else if (g_assassin[player])
formatex(menu, charsmax(menu), "%s \r[%L]", g_playername[player], id, "CLASS_ASSASSIN")
else
formatex(menu, charsmax(menu), "%s \r[%L]", g_playername[player], id, "CLASS_ZOMBIE")
}
else
{
if (g_survivor[player])
formatex(menu, charsmax(menu), "%s \y[%L]", g_playername[player], id, "CLASS_SURVIVOR")
else if (g_sniper[player])
formatex(menu, charsmax(menu), "%s \y[%L]", g_playername[player], id, "CLASS_SNIPER")
else
formatex(menu, charsmax(menu), "%s \y[%L]", g_playername[player], id, "CLASS_HUMAN")
}
}
else
{
if (g_zombie[player])
{
if (g_nemesis[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_NEMESIS")
else if (g_assassin[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_ASSASSIN")
else
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_ZOMBIE")
}
else
{
if (g_survivor[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_SURVIVOR")
else if (g_sniper[player])
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_SNIPER")
else
formatex(menu, charsmax(menu), "\d%s [%L]", g_playername[player], id, "CLASS_HUMAN")
}
}
}
case ACTION_RESPAWN_PLAYER: // Respawn command
{
if (allowed_respawn(player) && (userflags & g_access_flag[ACCESS_RESPAWN_PLAYERS]))
formatex(menu, charsmax(menu), "%s", g_playername[player])
else
formatex(menu, charsmax(menu), "\d%s", g_playername[player])
}
}
// Add player
buffer[0] = player
buffer[1] = 0
menu_additem(menuid, menu, buffer)
}
// Back - Next - Exit
formatex(menu, charsmax(menu), "%L", id, "MENU_BACK")
menu_setprop(menuid, MPROP_BACKNAME, menu)
formatex(menu, charsmax(menu), "%L", id, "MENU_NEXT")
menu_setprop(menuid, MPROP_NEXTNAME, menu)
formatex(menu, charsmax(menu), "%L", id, "MENU_EXIT")
menu_setprop(menuid, MPROP_EXITNAME, menu)
menu_display(id, menuid)
}
El là
PHP Code:
public menu_player_list(id, menuid, item)
{
// Menu was closed
if (item == MENU_EXIT)
{
menu_destroy(menuid)
show_menu_admin(id)
return PLUGIN_HANDLED;
}
// Retrieve player id
static buffer[2], dummy, playerid
menu_item_getinfo(menuid, item, dummy, buffer, charsmax(buffer), _, _, dummy)
playerid = buffer[0]
// Perform action on player
// Get admin flags
static userflags
userflags = get_user_flags(id)
// Make sure it's still connected
if (g_isconnected[playerid])
{
// Perform the right action if allowed
switch (PL_ACTION)
{
case ACTION_ZOMBIEFY_HUMANIZE: // Zombiefy/Humanize command
{
if (g_zombie[playerid])
{
if (userflags & g_access_flag[ACCESS_MAKE_HUMAN])
{
if (allowed_human(playerid))
command_human(id, playerid)
else
zp_colored_print(id, "^x04[GP]^x01 %L", id, "CMD_NOT")
}
else
zp_colored_print(id, "^x04[GP]^x01 %L", id, "CMD_NOT_ACCESS")
}
else
{
if (g_newround ? (userflags & g_access_flag[ACCESS_MODE_INFECTION]) : (userflags & g_access_flag[ACCESS_MAKE_ZOMBIE]))
{
if (allowed_zombie(playerid))
command_zombie(id, playerid)
else
zp_colored_print(id, "^x04[GP]^x01 %L", id, "CMD_NOT")
}
else
zp_colored_print(id, "^x04[GP]^x01 %L", id, "CMD_NOT_ACCESS")
}
}
case ACTION_MAKE_NEMESIS: // Nemesis command
{
if (g_newround ? (userflags & g_access_flag[ACCESS_MODE_NEMESIS]) : (userflags & g_access_flag[ACCESS_MAKE_NEMESIS]))
{
if (allowed_nemesis(playerid))
command_nemesis(id, playerid)
else
zp_colored_print(id, "^x04[GP]^x01 %L", id, "CMD_NOT")
}
else
zp_colored_print(id, "^x04[GP]^x01 %L", id, "CMD_NOT_ACCESS")
}
case ACTION_MAKE_SURVIVOR: // Survivor command
{
if (g_newround ? (userflags & g_access_flag[ACCESS_MODE_SURVIVOR]) : (userflags & g_access_flag[ACCESS_MAKE_SURVIVOR]))
{
if (allowed_survivor(playerid))
command_survivor(id, playerid)
else
zp_colored_print(id, "^x04[GP]^x01 %L", id, "CMD_NOT")
}
else
zp_colored_print(id, "^x04[GP]^x01 %L", id, "CMD_NOT_ACCESS")
}
case ACTION_MAKE_SNIPER: // Sniper command
{
if (g_newround ? (userflags & g_access_flag[ACCESS_MODE_SNIPER]) : (userflags & g_access_flag[ACCESS_MAKE_SNIPER]))
{
if (allowed_sniper(playerid))
command_sniper(id, playerid)
else
zp_colored_print(id, "^x04[GP]^x01 %L", id, "CMD_NOT")
}
else
zp_colored_print(id, "^x04[GP]^x01 %L", id, "CMD_NOT_ACCESS")
}
case ACTION_MAKE_ASSASSIN: // Assassin command
{
if (g_newround ? (userflags & g_access_flag[ACCESS_MODE_ASSASSIN]) : (userflags & g_access_flag[ACCESS_MAKE_ASSASSIN]))
{
if (allowed_assassin(playerid))
command_assassin(id, playerid)
else
zp_colored_print(id, "^x04[GP]^x01 %L", id, "CMD_NOT")
}
else
zp_colored_print(id, "^x04[GP]^x01 %L", id, "CMD_NOT_ACCESS")
}
case ACTION_RESPAWN_PLAYER: // Respawn command
{
if (userflags & g_access_flag[ACCESS_RESPAWN_PLAYERS])
{
if (allowed_respawn(playerid))
command_respawn(id, playerid)
else
zp_colored_print(id, "^x04[GP]^x01 %L", id, "CMD_NOT")
}
else
zp_colored_print(id, "^x04[GP]^x01 %L", id, "CMD_NOT_ACCESS")
}
}
}
else
zp_colored_print(id, "^x04[GP]^x01 %L", id, "CMD_NOT")
menu_destroy(menuid)
show_menu_player_list(id)
return PLUGIN_HANDLED;
}
|
|