Raised This Month: $ Target: $400
 0% 

problem with callback, blocks all options


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
Author Message
EclipseCP
BANNED
Join Date: Dec 2010
Old 04-22-2011 , 20:07   problem with callback, blocks all options
Reply With Quote #1

hello, sorry for my english, use translator.

I have a problem with callback.

I wanted to do that if one condition X, a menu option to display my gray (to number), but block all ...

this is the menu

PHP Code:
show_menu_player_list(id)
{
    new 
menuidmenu[128], playeruserflagsbuffer[2]
    
userflags get_user_flags(id)
    
    
// Title
    
switch (PL_ACTION)
    {
        case 
ACTION_ZOMBIEFY_HUMANIZEformatex(menucharsmax(menu), "%L\r"id"MENU_ADMIN1")
        case 
ACTION_MAKE_NEMESISformatex(menucharsmax(menu), "%L\r"id"MENU_ADMIN2")
        case 
ACTION_MAKE_SURVIVORformatex(menucharsmax(menu), "%L\r"id"MENU_ADMIN3")
        case 
ACTION_RESPAWN_PLAYERformatex(menucharsmax(menu), "%L\r"id"MENU_ADMIN4")
    }
    
menuid menu_create(menu"menu_player_list")
    
    
// Player List
    
for (player 0player <= g_maxplayersplayer++)
    {
        
// 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]))
                        
formatex(menucharsmax(menu), "%s \r[%L]"g_playername[player], idg_nemesis[player] ? "CLASS_NEMESIS" "CLASS_ZOMBIE")
                    else
                        
formatex(menucharsmax(menu), "\d%s [%L]"g_playername[player], idg_nemesis[player] ? "CLASS_NEMESIS" "CLASS_ZOMBIE")
                }
                else
                {
                    if (
allowed_zombie(player) && (g_newround ? (userflags g_access_flag[ACCESS_MODE_INFECTION]) : (userflags g_access_flag[ACCESS_MAKE_ZOMBIE])))
                        
formatex(menucharsmax(menu), "%s \y[%L]"g_playername[player], idg_survivor[player] ? "CLASS_SURVIVOR" "CLASS_HUMAN")
                    else
                        
formatex(menucharsmax(menu), "\d%s [%L]"g_playername[player], idg_survivor[player] ? "CLASS_SURVIVOR" "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])
                        
formatex(menucharsmax(menu), "%s \r[%L]"g_playername[player], idg_nemesis[player] ? "CLASS_NEMESIS" "CLASS_ZOMBIE")
                    else
                        
formatex(menucharsmax(menu), "%s \y[%L]"g_playername[player], idg_survivor[player] ? "CLASS_SURVIVOR" "CLASS_HUMAN")
                }
                else
                    
formatex(menucharsmax(menu), "\d%s [%L]"g_playername[player], idg_zombie[player] ? g_nemesis[player] ? "CLASS_NEMESIS" "CLASS_ZOMBIE" g_survivor[player] ? "CLASS_SURVIVOR" "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])
                        
formatex(menucharsmax(menu), "%s \r[%L]"g_playername[player], idg_nemesis[player] ? "CLASS_NEMESIS" "CLASS_ZOMBIE")
                    else
                        
formatex(menucharsmax(menu), "%s \y[%L]"g_playername[player], idg_survivor[player] ? "CLASS_SURVIVOR" "CLASS_HUMAN")
                }
                else
                    
formatex(menucharsmax(menu), "\d%s [%L]"g_playername[player], idg_zombie[player] ? g_nemesis[player] ? "CLASS_NEMESIS" "CLASS_ZOMBIE" g_survivor[player] ? "CLASS_SURVIVOR" "CLASS_HUMAN")
            }
            case 
ACTION_RESPAWN_PLAYER// Respawn command
            
{
                if (
allowed_respawn(player) && (userflags g_access_flag[ACCESS_RESPAWN_PLAYERS]))
                    
formatex(menucharsmax(menu), "%s"g_playername[player])
                else
                    
formatex(menucharsmax(menu), "\d%s"g_playername[player])
            }
        }
        
        
// Add player
        
buffer[0] = player
        buffer
[1] = 0
        menu_additem
(menuidmenubuffer)
    }
    
    
// Back - Next - Exit
    
formatex(menucharsmax(menu), "%L"id"MENU_BACK")
    
menu_setprop(menuidMPROP_BACKNAMEmenu)
    
formatex(menucharsmax(menu), "%L"id"MENU_NEXT")
    
menu_setprop(menuidMPROP_NEXTNAMEmenu)
    
formatex(menucharsmax(menu), "%L"id"MENU_EXIT")
    
menu_setprop(menuidMPROP_EXITNAMEmenu)
    
    
menu_display(idmenuid)

in some cases appears \d, but I want to transform into callback, as here

PHP Code:
            case ACTION_RESPAWN_PLAYER// Respawn command
            
{
                if (
allowed_respawn(player) && (userflags g_access_flag[ACCESS_RESPAWN_PLAYERS]))
                    
formatex(menucharsmax(menu), "%s"g_playername[player])
                else
                    
formatex(menucharsmax(menu), "\d%s"g_playername[player])
            } 
So what I did was

changed

PHP Code:
        // Add player
        
buffer[0] = player
        buffer
[1] = 0
        menu_additem
(menuidmenubuffer), ADMIN_ALLmenu_makecallback("c_player_list")) 
and added
PHP Code:
public c_player_list(idmenuiditem)
{
    if (
allowed_zombie(id) || allowed_nemesis(id) || allowed_survivor(id) || allowed_human(id))
    {
            return 
ITEM_ENABLED
    
}
    
    return 
ITEM_DISABLED

if not expressed well excuse me and ask me again

Greetings

Last edited by EclipseCP; 04-22-2011 at 20:11.
EclipseCP is offline
 



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 19:56.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode