Raised This Month: $ Target: $400
 0% 

BCM/ECM/FCM/BM, Help (Menus not working)


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
Author Message
NiQu
Veteran Member
Join Date: Nov 2009
Old 11-09-2009 , 22:31   BCM/ECM/FCM/BM, Help (Menus not working)
Reply With Quote #1

Hi, a friend sent me a BCM/ECM/FCM/BM and once i compiled it without errors or warnings and started my server i typed /gcm "This is the command to open the menu" and the menu came up.

My Problem: All menus in the main menu acts like the close option.. (the menu closes where ever i click in the menu).

How to fix?


My Code:
PHP Code:
create_D3jmenus()
{
    
gBlockMenuPagesMax floatround((float(gBlockMax) / 8.0), floatround_ceil);
    
    
    new 
size sizeof(gszMainMenu) - 1;
    
add(gszMainMenusize"\r[%s] \y%s \rv%s^n^n");
    
add(gszMainMenusize"\r1. \wBlock Menu^n");
    
add(gszMainMenusize"\r2. \wTeleport Menu^n");
    
add(gszMainMenusize"\r3. \wOptions Menu^n");
    
add(gszMainMenusize"\r4. \wCommands Menu^n^n");
    
add(gszMainMenusize"\r5. \wHelp^n^n");
    
add(gszMainMenusize"%s6. %sNoclip: %s^n");
    
add(gszMainMenusize"%s7. %sGodmode: %s^n^n");
    
add(gszMainMenusize"\r0. \wClose");
    
D3jKeysMainMenu B1 B2 B3 B4 B5 B6 B7 B0;
    
    
size sizeof(gszBlockMenu) - 1;
    
add(gszBlockMenusize"\r[%s] \yBlock Menu^n^n");
    
add(gszBlockMenusize"\r1. \wBlock Type: \y%s^n");
    
add(gszBlockMenusize"\r2. \wBlock Size: \y%s^n^n");
    
add(gszBlockMenusize"%s3. %sCreate^n");
    
add(gszBlockMenusize"%s4. %sConvert^n");
    
add(gszBlockMenusize"%s5. %sDelete^n");
    
add(gszBlockMenusize"%s6. %sRotate^n");
    
add(gszBlockMenusize"%s7. %sSet Properties^n");
    
add(gszBlockMenusize"%s8. %sMove^n^n");
    
add(gszBlockMenusize"\r0. \wBack");
    
D3jKeysBlockMenu B1 B2 B3 B4 B5 B6 B7 B8 B0;
    
D3jKeysBlockSelectionMenu B1 B2 B3 B4 B5 B6 B7 B8 B9 B0;
    
D3jKeysPropertyMenu B1 B2 B3 B4 B0;
    
    
size sizeof(gszMoveMenu) - 1;
    
add(gszMoveMenusize"\r[%s] \yMove Menu^n^n");
    
add(gszMoveMenusize"\r1. \wGrid Size: \y%.1f^n^n");
    
add(gszMoveMenusize"\r2. \wZ\y+^n");
    
add(gszMoveMenusize"\r3. \wZ\r-^n");
    
add(gszMoveMenusize"\r4. \wX\y+^n");
    
add(gszMoveMenusize"\r5. \wX\r-^n");
    
add(gszMoveMenusize"\r6. \wY\y+^n");
    
add(gszMoveMenusize"\r7. \wY\r-^n^n^n");
    
add(gszMoveMenusize"\r0. \wBack");
    
D3jKeysMoveMenu B1 B2 B3 B4 B5 B6 B7 B0;
    
    
size sizeof(gszTeleportMenu) - 1;
    
add(gszTeleportMenusize"\r[%s] \yTeleport Menu^n^n");
    
add(gszTeleportMenusize"%s1. %sCreate Start^n");
    
add(gszTeleportMenusize"%s2. %sCreate Destination^n^n");
    
add(gszTeleportMenusize"%s3. %sDelete Teleport^n^n");
    
add(gszTeleportMenusize"%s4. %sSwap Start/Destination^n^n");
    
add(gszTeleportMenusize"%s5. %sShow Path^n^n^n");
    
add(gszTeleportMenusize"\r0. \wBack");
    
D3jKeysTeleportMenu B1 B2 B3 B4 B5 B0;
    
    
size sizeof(gszOptionsMenu) - 1;
    
add(gszOptionsMenusize"\r[%s] \yOptions Menu^n^n");
    
add(gszOptionsMenusize"%s1. %sSnapping: %s^n");
    
add(gszOptionsMenusize"%s2. %sSnapping Gap: \y%.1f^n^n");
    
add(gszOptionsMenusize"%s3. %sAdd to Group^n");
    
add(gszOptionsMenusize"%s4. %sClear Group^n^n");
    
add(gszOptionsMenusize"%s5. %sDelete All^n");
    
add(gszOptionsMenusize"%s6. %sSave^n");
    
add(gszOptionsMenusize"%s7. %sLoad^n^n");
    
add(gszOptionsMenusize"\r0. \wBack");
    
D3jKeysOptionsMenu B1 B2 B3 B4 B5 B6 B7 B0;
    
    
size sizeof(gszChoiceMenu) - 1;
    
add(gszChoiceMenusize"\y%s^n^n");
    
add(gszChoiceMenusize"\r1. \wYes^n");
    
add(gszChoiceMenusize"\r2. \wNo^n^n^n^n^n^n^n^n^n");
    
D3jKeysChoiceMenu B1 B2;
    
    
size sizeof(gszCommandsMenu) - 1;
    
add(gszCommandsMenusize"\r[%s] \yCommands Menu^n^n");
    
add(gszCommandsMenusize"%s1. %sSave Checkpoint^n");
    
add(gszCommandsMenusize"%s2. %sLoad Checkpoint^n^n");
    
add(gszCommandsMenusize"%s3. %sRevive Yourself^n");
    
add(gszCommandsMenusize"%s4. %sRevive Player^n");
    
add(gszCommandsMenusize"%s5. %sRevive Everyone^n^n");
    
add(gszCommandsMenusize"%s6. %s%s Godmode %s Everyone^n");
    
add(gszCommandsMenusize"%s7. %sGive Access to %s^n^n");
    
add(gszCommandsMenusize"\r0. \wBack");
    
D3jKeysCommandsMenu B1 B2 B3 B4 B5 B6 B7 B0;

PHP Code:
public command_MainMenu(id)
{
    
show_MainMenu(id);

}

show_MainMenu(id)
{
    new 
szMenu[256];
    new 
col1[3];
    new 
col2[3];
    new 
szGodmode[6];
    new 
szNoclip[6];
    
    
col1 = ( gbAdminAccess[id] || gbGivedAccess[id] ? "\r" "\d" );
    
col2 = ( gbAdminAccess[id] || gbGivedAccess[id] ? "\w" "\d" );
    
szNoclip = ( gbNoclip[id] ? "\yOn" "\rOff" );
    
szGodmode = ( gbGodmode[id] ? "\yOn" "\rOff" );
    
    
format(szMenu256gszMainMenuPLUGIN_PREFIXPLUGIN_NAMEPLUGIN_VERSIONcol1col2szNoclipcol1col2szGodmode);
    
show_menu(idD3jKeysMainMenuszMenu, -1"MainMenu");

}

show_BlockMenu(id)
{
    new 
szMenu[256];
    new 
col1[3];
    new 
col2[3];
    new 
szSize[8];
    
    
col1 = ( gbAdminAccess[id] || gbGivedAccess[id] ? "\r" "\d" );
    
col2 = ( gbAdminAccess[id] || gbGivedAccess[id] ? "\w" "\d" );
    
    switch ( 
gSelectedBlockSize[id] )
    {
        case 
TINYszSize "Tiny";
        case 
NORMALszSize "Normal";
        case 
LARGEszSize "Large";
    }
    
    
format(szMenusizeof(szMenu) - 1gszBlockMenuPLUGIN_PREFIXgszBlockNames[gSelectedBlockType[id]], szSizecol1col2col1col2col1col2col1col2col1col2col1col2);
    
show_menu(idD3jKeysBlockMenuszMenu, -1"D3jBlockMenu");
}

show_BlockSelectionMenu(id)
{
    new 
szBlockMenu[256];
    new 
szTitle[32];
    new 
szEntry[32];
    new 
num;
    
    
format(szTitlesizeof(szTitle) - 1"\r[%s] \yBlock Selection %d^n^n"PLUGIN_PREFIXgBlockMenuPage[id]);
    
add(szBlockMenusizeof(szBlockMenu) - 1szTitle);
    
    new 
startBlock = ( gBlockMenuPage[id] - ) * 8;
    
    for ( new 
startBlockstartBlock 8; ++)
    {
        if ( 
gBlockMax )
        {
            
num = ( startBlock ) + 1;
            
            
format(szEntrysizeof(szEntry) - 1"\r%d. \w%s^n"numgszBlockNames[i]);
        }
        else
        {
            
format(szEntrysizeof(szEntry) - 1"^n");
        }
        
        
add(szBlockMenusizeof(szBlockMenu) - 1szEntry);
    }
    
    if ( 
gBlockMenuPage[id] < gBlockMenuPagesMax )
    {
        
add(szBlockMenusizeof(szBlockMenu) - 1"^n\r9. \wMore");
    }
    else
    {
        
add(szBlockMenusizeof(szBlockMenu) - 1"^n");
    }
    
    
add(szBlockMenusizeof(szBlockMenu) - 1"^n\r0. \wBack");
    
show_menu(idD3jKeysBlockSelectionMenuszBlockMenu, -1"D3jBlockSelectionMenu");
}

show_PropertyMenu(ident)
{
    new 
szPropertyMenu[256];
    new 
szTitle[32];
    new 
szProperty[32];
    new 
szEntry[64];
    new 
szLine1[3];
    new 
szLine2[3];
    new 
szLine3[3];
    new 
szLine4[3];
    new 
num;
    new 
blockType pev(entpev_body);
    
    
format(szTitlesizeof(szTitle) - 1"\r[%s] \ySet Properties^n^n"PLUGIN_PREFIX);
    
add(szPropertyMenusizeof(szPropertyMenu) - 1szTitle);
    
    if ( 
strlen(gszProperty1Name[blockType]) )
    {
        
Get_BlockProperty(ent1szProperty);
        
        if ( 
blockType == D3j_BUNNYHOP || blockType == D3j_NOSLOWDOWN_BHOP )
        {
            
format(szEntrysizeof(szEntry) - 1"\r1. \w%s: \y%s^n"gszProperty1Name[blockType], ( szProperty[0] == '1' "\yOn" "\rOff" ));
        }
        else
        {
            
format(szEntrysizeof(szEntry) - 1"\r1. \w%s: \y%s^n"gszProperty1Name[blockType], szProperty);
        }
        
        
add(szPropertyMenusizeof(szPropertyMenu) - 1szEntry);
    }
    else
    {
        
format(szLine1sizeof(szLine1) - 1"^n");
    }
    
    if ( 
strlen(gszProperty2Name[blockType]) )
    {
        if ( 
strlen(gszProperty1Name[blockType]) )
        {
            
num 2;
        }
        else
        {
            
num 1;
        }
        
        
Get_BlockProperty(ent2szProperty);
        
        
format(szEntrysizeof(szEntry) - 1"\r%d. \w%s: \y%s^n"numgszProperty2Name[blockType], szProperty);
        
        
add(szPropertyMenusizeof(szPropertyMenu) - 1szEntry);
    }
    else
    {
        
format(szLine2sizeof(szLine2) - 1"^n");
    }
    
    if ( 
strlen(gszProperty3Name[blockType]) )
    {
        if ( 
strlen(gszProperty1Name[blockType]) && strlen(gszProperty2Name[blockType]) )
        {
            
num 3;
        }
        else if ( 
strlen(gszProperty1Name[blockType]) || strlen(gszProperty2Name[blockType]) )
        {
            
num 2;
        }
        else
        {
            
num 1;
        }
        
        
Get_BlockProperty(ent3szProperty);
        
        if ( 
blockType == D3j_BOOTSOFSPEED )
        {
            
format(szEntrysizeof(szEntry) - 1"\r%d. \w%s: \y%s^n"numgszProperty3Name[blockType], szProperty);
        }
        else
        {
            
format(szEntrysizeof(szEntry) - 1"\r%d. \w%s: \y%s^n"numgszProperty3Name[blockType], ( szProperty[0] == '1' "\yOn" "\rOff" ));
        }
        
        
add(szPropertyMenusizeof(szPropertyMenu) - 1szEntry);
    }
    else
    {
        
format(szLine3sizeof(szLine3) - 1"^n");
    }
    
    if ( 
strlen(gszProperty4Name[blockType]) )
    {
        if ( 
strlen(gszProperty1Name[blockType]) && strlen(gszProperty2Name[blockType]) && strlen(gszProperty3Name[blockType]) )
        {
            
num 4;
        }
        else if ( ( 
strlen(gszProperty1Name[blockType]) && strlen(gszProperty2Name[blockType]) ) || ( strlen(gszProperty1Name[blockType]) && strlen(gszProperty3Name[blockType]) ) || ( strlen(gszProperty2Name[blockType]) && strlen(gszProperty3Name[blockType]) ) )
        {
            
num 3;
        }
        else if ( 
strlen(gszProperty1Name[blockType]) || strlen(gszProperty2Name[blockType]) || strlen(gszProperty3Name[blockType]) )
        {
            
num 2;
        }
        else
        {
            
num 1;
        }
        
        
Get_BlockProperty(ent4szProperty);
        
        
format(szEntrysizeof(szEntry) - 1"\r%d. \w%s: \y%s^n"numgszProperty4Name[blockType], ( szProperty[0] == '1' "\yYes" "\rNo" ));
        
add(szPropertyMenusizeof(szPropertyMenu) - 1szEntry);
    }
    else
    {
        
format(szLine4sizeof(szLine4) - 1"^n");
    }
    
    
gPropertyInfo[id][1] = ent;
    
    
add(szPropertyMenusizeof(szPropertyMenu) - 1szLine1);
    
add(szPropertyMenusizeof(szPropertyMenu) - 1szLine2);
    
add(szPropertyMenusizeof(szPropertyMenu) - 1szLine3);
    
add(szPropertyMenusizeof(szPropertyMenu) - 1szLine4);
    
add(szPropertyMenusizeof(szPropertyMenu) - 1"^n^n^n^n^n^n\r0. \wBack");
    
show_menu(idD3jKeysPropertyMenuszPropertyMenu, -1"D3jPropertyMenu");
}

show_MoveMenu(id)
{
    new 
szMenu[256];
    
    
format(szMenusizeof(szMenu) - 1gszMoveMenuPLUGIN_PREFIXgfGridSize[id]);
    
show_menu(idD3jKeysMoveMenuszMenu, -1"D3jMoveMenu");
}

show_TeleportMenu(id)
{
    new 
szMenu[256];
    new 
col1[3];
    new 
col2[3];
    
    
col1 = ( gbAdminAccess[id] || gbGivedAccess[id] ? "\r" "\d" );
    
col2 = ( gbAdminAccess[id] || gbGivedAccess[id] ? "\w" "\d" );
    
    
format(szMenusizeof(szMenu) - 1gszTeleportMenuPLUGIN_PREFIXcol1col2, ( gTeleportStart[id] ? "\r" "\d" ), ( gTeleportStart[id] ? "\w" "\d" ), col1col2col1col2col1col2);
    
show_menu(idD3jKeysTeleportMenuszMenu, -1"D3jTeleportMenu");
}

show_OptionsMenu(id)
{
    new 
col1[3];
    new 
col2[3];
    new 
col3[3];
    new 
col4[3];
    new 
szSnapping[6];
    new 
szMenu[256];
    
    
col1 = ( gbAdminAccess[id] || gbGivedAccess[id] ? "\r" "\d" );
    
col2 = ( gbAdminAccess[id] || gbGivedAccess[id] ? "\w" "\d" );
    
col3 = ( gbAdminAccess[id] ? "\r" "\d" );
    
col4 = ( gbAdminAccess[id] ? "\w" "\d" );
    
szSnapping = ( gbSnapping[id] ? "\yOn" "\rOff" );
    
    
format(szMenusizeof(szMenu) - 1gszOptionsMenuPLUGIN_PREFIXcol1col2szSnappingcol1col2gfSnappingGap[id], col1col2col1col2col3col4col3col4col3col4);
    
show_menu(idD3jKeysOptionsMenuszMenu, -1"D3jOptionsMenu");
}

show_ChoiceMenu(idgChoice, const szTitle[96])
{
    
gChoiceOption[id] = gChoice;
    
    new 
szMenu[128];
    
    
format(szMenusizeof(szMenu) - 1gszChoiceMenuszTitle);
    
show_menu(idD3jKeysChoiceMenuszMenu, -1"D3jChoiceMenu");
}

show_CommandsMenu(id)
{
    new 
szMenu[256];
    new 
col1[3];
    new 
col2[3];
    new 
col3[3];
    new 
col4[3];
    new 
col5[3];
    new 
szAllGodmode1[12];
    new 
szAllGodmode2[12];
    
    
col1 = ( gbAdminAccess[id] ? "\r" "\d" );
    
col2 = ( gbAdminAccess[id] ? "\w" "\d" );
    
col3 = ( ( gbAdminAccess[id] || gbGivedAccess[id] ) && gbAlive[id] ? "\r" "\d" );
    
col4 = ( ( gbAdminAccess[id] || gbGivedAccess[id] ) && gbAlive[id] ? "\w" "\d" );
    
col5 = ( ( gbAdminAccess[id] || gbGivedAccess[id] ) && gbAlive[id] && gbHasCheckpoint[id] ? "\r" "\d" );
    
szAllGodmode1 = ( gbAllGodmode "Remove" "Set" );
    
szAllGodmode2 = ( gbAllGodmode "from" "on" );
    
    
format(szMenusizeof(szMenu) - 1gszCommandsMenuPLUGIN_PREFIXcol3col4col5, ( gbHasCheckpoint[id] && gbAlive[id] ? "\w" "\d" ), ( ( gbAdminAccess[id] || gbGivedAccess[id] ) && !gbAlive[id] ? "\r" "\d" ), ( ( gbAdminAccess[id] || gbGivedAccess[id] ) && !gbAlive[id] ? "\w" "\d" ), col1col2, ( gbAdminAccess[id] || gbGivedAccess[id] ? "\r" "\d" ), ( gbAdminAccess[id] || gbGivedAccess[id] ? "\w" "\d" ), col1col2szAllGodmode1szAllGodmode2col1col2PLUGIN_PREFIX);
    
show_menu(idD3jKeysCommandsMenuszMenu, -1"D3jCommandsMenu");

PHP Code:
public handle_MainMenu(idnum)
{
    switch ( 
num )
    {
        case 
N1show_BlockMenu(id);
        case 
N2show_TeleportMenu(id);
        case 
N3show_OptionsMenu(id);
        case 
N4:
        {
            
show_CommandsMenu(id);
            
gbCommandMenu[id] = true;
        }
        case 
N5show_Help(id);
        case 
N6toggle_Noclip(id);
        case 
N7toggle_Godmode(id);
        case 
N0: return;
    }
    
    if ( 
num == N5 || num == N6 || num == N7 show_MainMenu(id);
}

public 
handle_BlockMenu(idnum)
{
    switch ( 
num )
    {
        case 
N1:
        {
            
gBlockMenuPage[id] = 1;
            
show_BlockSelectionMenu(id);
        }
        case 
N2change_BlockSize(id);
        case 
N3create_BlockAiming(idgSelectedBlockType[id]);
        case 
N4convert_BlockAiming(idgSelectedBlockType[id]);
        case 
N5delete_BlockAiming(id);
        case 
N6rotate_BlockAiming(id);
        case 
N7:
        {
            
setProperties_BlockAiming(id);
            
gbPropertyMenu[id] = true;
        }
        case 
N8:
        {
            if ( 
gbAdminAccess[id] || gbGivedAccess[id] )
            {
                
show_MoveMenu(id);
            }
            else
            {
                
show_BlockMenu(id);
            }
        }
        case 
N0show_MainMenu(id);
    }
    
    if ( 
num != N1 && num != N7 && num != N8 && num != N0 show_BlockMenu(id);
}

public 
handle_BlockSelectionMenu(idnum)
{
    switch ( 
num )
    {
        case 
N9:
        {
            ++
gBlockMenuPage[id];
            
            if ( 
gBlockMenuPage[id] > gBlockMenuPagesMax )
            {
                
gBlockMenuPage[id] = gBlockMenuPagesMax;
            }
            
            
show_BlockSelectionMenu(id);
        }
        case 
N0:
        {
            --
gBlockMenuPage[id];
            
            if ( 
gBlockMenuPage[id] < )
            {
                
show_BlockMenu(id);
            }
            else
            {
                
show_BlockSelectionMenu(id);
            }
        }
        default:
        {
            
num += ( gBlockMenuPage[id] - ) * 8;
            
            if ( 
num gBlockMax )
            {
                
gSelectedBlockType[id] = num;
                
show_BlockMenu(id);
            }
            else
            {
                
show_BlockSelectionMenu(id);
            }
        }
    }
}

public 
handle_PropertyMenu(idnum)
{
    new 
ent gPropertyInfo[id][1];
    
    if ( 
pev_valid(ent) )
    {
        new 
blockType pev(entpev_body);
        
        switch ( 
num )
        {
            case 
N1:
            {
                if ( 
strlen(gszProperty1Name[blockType]) )
                {
                    
gPropertyInfo[id][0] = 1;
                }
                else if ( 
strlen(gszProperty2Name[blockType]) )
                {
                    
gPropertyInfo[id][0] = 2;
                }
                else if ( 
strlen(gszProperty3Name[blockType]) )
                {
                    
gPropertyInfo[id][0] = 3;
                }
                else
                {
                    
gPropertyInfo[id][0] = 4;
                }
                
                if ( 
gPropertyInfo[id][0] == && ( blockType == D3j_BUNNYHOP || blockType == D3j_NOSLOWDOWN_BHOP ) )
                {
                    
toggle_BlockProperty(id1);
                }
                else if ( 
gPropertyInfo[id][0] == && blockType != D3j_BOOTSOFSPEED )
                {
                    
toggle_BlockProperty(id3);
                }
                else if ( 
gPropertyInfo[id][0] == )
                {
                    
toggle_BlockProperty(id4);
                }
                else
                {
                    
D3j_Print(id"Type the new property value for the block.");
                    
client_cmd(id"messagemode D3j_SetProperty");
                }
            }
            case 
N2:
            {
                if ( ( 
strlen(gszProperty1Name[blockType]) && strlen(gszProperty2Name[blockType]) ) || ( strlen(gszProperty1Name[blockType]) && strlen(gszProperty3Name[blockType]) ) || ( strlen(gszProperty1Name[blockType]) && strlen(gszProperty4Name[blockType]) ) || ( strlen(gszProperty2Name[blockType]) && strlen(gszProperty3Name[blockType]) ) || ( strlen(gszProperty2Name[blockType]) && strlen(gszProperty4Name[blockType]) ) || ( strlen(gszProperty3Name[blockType]) && strlen(gszProperty4Name[blockType]) ) )
                {
                    if ( 
strlen(gszProperty1Name[blockType]) && strlen(gszProperty2Name[blockType]) )
                    {
                        
gPropertyInfo[id][0] = 2;
                    }
                    else if ( ( 
strlen(gszProperty1Name[blockType]) && strlen(gszProperty3Name[blockType]) ) || ( strlen(gszProperty2Name[blockType]) && strlen(gszProperty3Name[blockType]) ) )
                    {
                        
gPropertyInfo[id][0] = 3;
                    }
                    else
                    {
                        
gPropertyInfo[id][0] = 4;
                    }
                    
                    if ( 
gPropertyInfo[id][0] == && blockType != D3j_BOOTSOFSPEED )
                    {
                        
toggle_BlockProperty(id3);
                    }
                    else if ( 
gPropertyInfo[id][0] == )
                    {
                        
toggle_BlockProperty(id4);
                    }
                    else
                    {
                        
D3j_Print(id"Type the new property value for the block.");
                        
client_cmd(id"messagemode D3j_SetProperty");
                    }
                }
            }
            case 
N3:
            {
                if ( ( 
strlen(gszProperty1Name[blockType]) && strlen(gszProperty2Name[blockType]) && strlen(gszProperty3Name[blockType]) ) || ( strlen(gszProperty1Name[blockType]) && strlen(gszProperty2Name[blockType]) && strlen(gszProperty4Name[blockType]) ) || ( strlen(gszProperty1Name[blockType]) && strlen(gszProperty3Name[blockType]) && strlen(gszProperty4Name[blockType]) ) || ( strlen(gszProperty2Name[blockType]) && strlen(gszProperty3Name[blockType]) && strlen(gszProperty4Name[blockType]) ) )
                {
                    if ( 
strlen(gszProperty1Name[blockType]) && strlen(gszProperty2Name[blockType]) && strlen(gszProperty3Name[blockType]) )
                    {
                        
gPropertyInfo[id][0] = 3;
                    }
                    else
                    {
                        
gPropertyInfo[id][0] = 4;
                    }
                    
                    if ( 
gPropertyInfo[id][0] == && blockType != D3j_BOOTSOFSPEED )
                    {
                        
toggle_BlockProperty(id3);
                    }
                    else if ( 
gPropertyInfo[id][0] == )
                    {
                        
toggle_BlockProperty(id4);
                    }
                    else
                    {
                        
D3j_Print(id"Type the new property value for the block.");
                        
client_cmd(id"messagemode D3j_SetProperty");
                    }
                }
            }
            case 
N4:
            {
                if ( 
strlen(gszProperty1Name[blockType]) && strlen(gszProperty2Name[blockType]) && strlen(gszProperty3Name[blockType]) && strlen(gszProperty4Name[blockType]) )
                {
                    
toggle_BlockProperty(id4);
                }
            }
            case 
N0:
            {
                
show_BlockMenu(id);
                
gbPropertyMenu[id] = false;
            }
        }
        
        if ( 
num != N0 show_PropertyMenu(ident);
    }
    else
    {
        
D3j_Print(id"That block has been deleted!");
        
show_BlockMenu(id);
        
gbPropertyMenu[id] = false;
    }
}

public 
handle_MoveMenu(idnum)
{
    switch ( 
num )
    {
        case 
N1toggle_GridSize(id);
        case 
N0show_BlockMenu(id);
        default:
        {
            new 
entbody;
            
get_user_aiming(identbody);
            
            if ( 
is_Block(ent) )
            {
                new 
Float:vOrigin[3];
                
                if ( 
is_BlockInGroup(ident) && gGroupCount[id] > )
                {
                    new 
block;
                    new 
bool:bGroupIsStuck true;
                    
                    for ( new 
0<= gGroupCount[id]; ++)
                    {
                        
block gGroupedBlocks[id][i];
                        if ( 
is_BlockInGroup(idblock) )
                        {
                            
pev(blockpev_originvOrigin);
                            
                            switch ( 
num )
                            {
                                case 
N2: { vOrigin[2] += gfGridSize[id]; }
                                case 
N3: { vOrigin[2] -= gfGridSize[id]; }
                                case 
N4: { vOrigin[0] += gfGridSize[id]; }
                                case 
N5: { vOrigin[0] -= gfGridSize[id]; }
                                case 
N6: { vOrigin[1] += gfGridSize[id]; }
                                case 
N7: { vOrigin[1] -= gfGridSize[id]; }
                            }
                            
                            
move_Entity(idblockvOriginfalse);
                            
                            if ( 
bGroupIsStuck )
                            {
                                if ( !
is_BlockStuck(block) )
                                {
                                    
bGroupIsStuck false;
                                }
                            }
                        }
                    }
                    
                    if ( 
bGroupIsStuck )
                    {
                        for ( new 
0<= gGroupCount[id]; ++)
                        {
                            
block gGroupedBlocks[id][i];
                            if ( 
is_BlockInGroup(idblock) )
                            {
                                
delete_Block(block);
                            }
                        }
                        
                        
D3j_Print(id"Group deleted because all the blocks were stuck!");
                    }
                }
                else
                {
                    
pev(entpev_originvOrigin);
                    
                    switch ( 
num )
                    {
                        case 
N2: { vOrigin[2] += gfGridSize[id]; }
                        case 
N3: { vOrigin[2] -= gfGridSize[id]; }
                        case 
N4: { vOrigin[0] += gfGridSize[id]; }
                        case 
N5: { vOrigin[0] -= gfGridSize[id]; }
                        case 
N6: { vOrigin[1] += gfGridSize[id]; }
                        case 
N7: { vOrigin[1] -= gfGridSize[id]; }
                    }
                    
                    
move_Entity(identvOriginfalse);
                    
                    if ( 
is_BlockStuck(ent) )
                    {
                        new 
bool:bDeleted delete_Block(ent);
                        if ( 
bDeleted )
                        {
                            
D3j_Print(id"Block deleted because it was stuck!");
                        }
                    }
                }
            }
        }
    }
    
    if ( 
num != N0 show_MoveMenu(id);
}

public 
handle_TeleportMenu(idnum)
{
    switch ( 
num )
    {
        case 
N1create_TeleportAiming(idTELEPORT_START);
        case 
N2create_TeleportAiming(idTELEPORT_DESTINATION);
        case 
N3delete_TeleportAiming(id);
        case 
N4swap_TeleportAiming(id);
        case 
N5show_TeleportPath(id);
        case 
N0show_MainMenu(id);
    }
    
    if ( 
num != N9 && num != N0 show_TeleportMenu(id);
}

public 
handle_OptionsMenu(idnum)
{
    switch ( 
num )
    {
        case 
N1toggle_Snapping(id);
        case 
N2toggle_SnappingGap(id);
        case 
N3group_BlockAiming(id);
        case 
N4group_Clear(id);
        case 
N5:
        {
            if ( 
gbAdminAccess[id] )
            {
                
show_ChoiceMenu(idCHOICE_DELETE"Are you sure you want to delete all blocks and teleports?");
            }
            else
            {
                
show_OptionsMenu(id);
            }
        }
        case 
N6save_Blocks(id);
        case 
N7:
        {
            if ( 
gbAdminAccess[id] )
            {
                
show_ChoiceMenu(idCHOICE_LOAD"Loading will delete all blocks and teleports, do you want to continue?");
            }
            else
            {
                
show_OptionsMenu(id);
            }
        }
        case 
N0show_MainMenu(id);
    }
    
    if ( 
num != N5 && num != N7 && num != N0 show_OptionsMenu(id);
}

public 
handle_ChoiceMenu(idnum)
{
    switch ( 
num )
    {
        case 
N1:
        {
            switch ( 
gChoiceOption[id] )
            {
                case 
CHOICE_DELETEdelete_All(idtrue);
                case 
CHOICE_LOADload_Blocks(id);
                default: 
log_amx("Invalid choice in handle_ChoiceMenu()"PLUGIN_PREFIXPLUGIN_VERSION);
            }
        }
    }
    
    
show_OptionsMenu(id);
}

public 
handle_CommandsMenu(idnum)
{
    switch ( 
num )
    {
        case 
N1cmd_SaveCheckpoint(id);
        case 
N2cmd_LoadCheckpoint(id);
        case 
N3cmd_ReviveYourself(id);
        case 
N4cmd_RevivePlayer(id);
        case 
N5cmd_ReviveEveryone(id);
        case 
N6toggle_AllGodmode(id);
        case 
N7cmd_GiveAccess(id);
        case 
N0:
        {
            
show_MainMenu(id);
            
gbCommandMenu[id] = false;
        }
    }
    
    if ( 
num != N0 show_CommandsMenu(id);
}

toggle_Noclip(id)
{
    if ( 
gbAdminAccess[id] || gbGivedAccess[id] )
    {
        
set_pev(idpev_movetypegbNoclip[id] ? MOVETYPE_WALK MOVETYPE_NOCLIP);
        
gbNoclip[id] = !gbNoclip[id];
    }
}

toggle_Godmode(id)
{
    if ( 
gbAdminAccess[id] || gbGivedAccess[id] )
    {
        
set_pev(idpev_takedamagegbGodmode[id] ? DAMAGE_AIM DAMAGE_NO);
        
gbGodmode[id] = !gbGodmode[id];
    }


Last edited by NiQu; 11-09-2009 at 22:38.
NiQu 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 17:48.


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