ZP Admin Limitada
#1
Hola,
necesito un poco de ayuda para edite limite admin menú en server ZP por favor, he encontrado el código para que puede utilizar el menú admin 5 veces en el mapa, pero quiero cambiar a utilizar el menú Admin Cada 10 minutos, quiero decir cuando se utiliza el menú admin entonces tu debe esperar 10 minutos para el uso de nuevo.

Código:
new g_iAdMenuUsage[33]
    #define ADMINMENUUSAGE_LIMIT 5 // Limit for how many times an admin can open admin menu per map
     
    public plugin_init()
    {
        // Plugin disabled?
        if (!g_pluginenabled) return;

Código:
// Game Menu
public menu_game(id, key)
{
    switch (key)
    {
        case 0: // Buy Weapons
        {
            // Custom buy menus enabled?
            if (get_pcvar_num(cvar_buycustom))
            {
                // Disable the remember selection setting
                WPN_AUTO_ON = 0
                zp_colored_print(id, "^x04[ZP]^x01 %L", id, "BUY_ENABLED")
                
                // Show menu if player hasn't yet bought anything
                if (g_canbuy[id]) show_menu_buy1(id)
            }
            else
                zp_colored_print(id, "^x04[ZP]^x01 %L", id, "CMD_NOT")
        }
        case 1: // Extra Items
        {
            // Extra items enabled?
            if (get_pcvar_num(cvar_extraitems))
            {
                // Check whether the player is able to buy anything
                if (g_isalive[id])
                    show_menu_extras(id)
                else
                    zp_colored_print(id, "^x04[ZP]^x01 %L", id, "CMD_NOT")
            }
            else
                zp_colored_print(id, "^x04[ZP]^x01 %L", id, "CMD_NOT_EXTRAS")
        }
        case 2: // Zombie Classes
        {
            // Zombie classes enabled?
            if (get_pcvar_num(cvar_zclasses))
                show_menu_zclass(id)
            else
                zp_colored_print(id, "^x04[ZP]^x01 %L", id, "CMD_NOT_ZCLASSES")
        }
        case 3: // Unstuck
        {
            // Check if player is stuck
            if (g_isalive[id])
            {
                if (is_player_stuck(id))
                {
                    // Move to an initial spawn
                    if (get_pcvar_num(cvar_randspawn))
                        do_random_spawn(id) // random spawn (including CSDM)
                    else
                        do_random_spawn(id, 1) // regular spawn
                }
                else
                    zp_colored_print(id, "^x04[ZP]^x01 %L", id, "CMD_NOT_STUCK")
            }
            else
                zp_colored_print(id, "^x04[ZP]^x01 %L", id, "CMD_NOT")
        }
        case 4: // Help Menu
        {
            show_menu_info(id)
        }
        case 5: // Join Spectator
        {
            // Player alive?
            if (g_isalive[id])
            {
                // Prevent abuse by non-admins if block suicide setting is enabled
                if (get_pcvar_num(cvar_blocksuicide) && !(get_user_flags(id) & g_access_flag[ACCESS_ADMIN_MENU]))
                {
                    zp_colored_print(id, "^x04[ZP]^x01 %L", id, "CMD_NOT")
                    return PLUGIN_HANDLED;
                }
                
                // Check that we still have both humans and zombies to keep the round going
                check_round(id)
                
                // Kill him before he switches team
                dllfunc(DLLFunc_ClientKill, id)
            }
            
            // Temporarily save player stats?
            if (get_pcvar_num(cvar_statssave)) save_stats(id)
            
            // Remove previous tasks
            remove_task(id+TASK_TEAM)
            remove_task(id+TASK_MODEL)
            remove_task(id+TASK_FLASH)
            remove_task(id+TASK_CHARGE)
            remove_task(id+TASK_SPAWN)
            remove_task(id+TASK_BLOOD)
            remove_task(id+TASK_AURA)
            remove_task(id+TASK_BURN)
            
            // Then move him to the spectator team
            fm_cs_set_user_team(id, FM_CS_TEAM_SPECTATOR)
            fm_user_team_update(id)
        }
        case 8: // Admin Menu
        {
            // Check if player has the required access
            if (get_user_flags(id) & g_access_flag[ACCESS_ADMIN_MENU])
            {
                if(g_iAdMenuUsage[id] >= ADMINMENUUSAGE_LIMIT)
                {
                    zp_colored_print(id, "^x04[ZP]^x01 You have used up all your admin menu allowance for this map bro!")
                    zp_colored_print(id, "^x04[ZP]^x01 You can use admin menu %d times every map!", ADMINMENUUSAGE_LIMIT)
                }
                else
                {
                    show_menu_admin(id)
                    
                    g_iAdMenuUsage[id] ++
                }
            }
        }
    }
    
    return PLUGIN_HANDLED;
}


Archivos adjuntos
.sma   Descargar AMXX / zombie_plague40.sma (Tamaño: 383.77 KB / Descargas: 83)
Responder
#2
Esto es lo mas rápido que se me ocurrió


Archivos adjuntos
.sma   Descargar AMXX / zombie_plague40 (1).sma (Tamaño: 383.74 KB / Descargas: 102)
“Quien te quiere en su vida, volverá a buscarte”
Qué frase más estúpida
Porque quien te quiere en su vida, jamás se iría.
Responder
#3
(25/03/2019, 11:08 AM)HK-416 escribió: Esto es lo mas rápido que se me ocurrió


Muchas gracias. Lo intentaré.
¿Puedes mostrarme el código que agregaste y editaste?
Responder
#4
Código PHP:
                // Disable the remember selection setting
                
WPN_AUTO_ON 0
                zp_colored_print
(id"^x04[ZP]^x01 %L"id"BUY_ENABLED")
                
                
// Show menu if player hasn't yet bought anything
                
if (g_canbuy[id]) show_menu_buy1(id)
            }
            else
                
zp_colored_print(id"^x04[ZP]^x01 %L"id"CMD_NOT")
        }
        case 
1// Extra Items
        
{
            
// Extra items enabled?
            
if (get_pcvar_num(cvar_extraitems))
            {
                
// Check whether the player is able to buy anything
                
if (g_isalive[id])
                    
show_menu_extras(id)
                else
                    
zp_colored_print(id"^x04[ZP]^x01 %L"id"CMD_NOT")
            }
            else
                
zp_colored_print(id"^x04[ZP]^x01 %L"id"CMD_NOT_EXTRAS")
        }
        case 
2// Zombie Classes
        
{
            
// Zombie classes enabled?
            
if (get_pcvar_num(cvar_zclasses))
                
show_menu_zclass(id)
            else
                
zp_colored_print(id"^x04[ZP]^x01 %L"id"CMD_NOT_ZCLASSES")
        }
        case 
3// Unstuck
        
{
            
// Check if player is stuck
            
if (g_isalive[id])
            {
                if (
is_player_stuck(id))
                {
                    
// Move to an initial spawn
                    
if (get_pcvar_num(cvar_randspawn))
                        
do_random_spawn(id// random spawn (including CSDM)
                    
else
                        
do_random_spawn(id1// regular spawn
                
}
                else
                    
zp_colored_print(id"^x04[ZP]^x01 %L"id"CMD_NOT_STUCK")
            }
            else
                
zp_colored_print(id"^x04[ZP]^x01 %L"id"CMD_NOT")
        }
        case 
4// Help Menu
        
{
            
show_menu_info(id)
        }
        case 
5// Join Spectator
        
{
            
// Player alive?
            
if (g_isalive[id])
            {
                
// Prevent abuse by non-admins if block suicide setting is enabled
                
if (get_pcvar_num(cvar_blocksuicide) && !(get_user_flags(id) & g_access_flag[ACCESS_ADMIN_MENU]))
                {
                    
zp_colored_print(id"^x04[ZP]^x01 %L"id"CMD_NOT")
                    return 
PLUGIN_HANDLED;
                }
                
                
// Check that we still have both humans and zombies to keep the round going
                
check_round(id)
                
                
// Kill him before he switches team
                
dllfunc(DLLFunc_ClientKillid)
            }
            
            
// Temporarily save player stats?
            
if (get_pcvar_num(cvar_statssave)) save_stats(id)
            
            
// Remove previous tasks
            
remove_task(id+TASK_TEAM)
            
remove_task(id+TASK_MODEL)
            
remove_task(id+TASK_FLASH)
            
remove_task(id+TASK_CHARGE)
            
remove_task(id+TASK_SPAWN)
            
remove_task(id+TASK_BLOOD)
            
remove_task(id+TASK_AURA)
            
remove_task(id+TASK_BURN)
            
            
// Then move him to the spectator team
            
fm_cs_set_user_team(idFM_CS_TEAM_SPECTATOR)
            
fm_user_team_update(id)
        }
        case 
8// Admin Menu
        
{
            
// Check if player has the required access
            
if (get_user_flags(id) & g_access_flag[ACCESS_ADMIN_MENU])
            {
                if(
g_iAdMenuUsage[id] >= 1)
                {
                    
zp_colored_print(id"^x04[ZP]^x01 Tienes que esperar 10 Minutos para volver a usar el menu de admin")
                }
                else
                {
                    
show_menu_admin(id)
                    
set_task(600.0"volver_a_usar"id// 600 segundo = 10 minutos
                    
g_iAdMenuUsage[id] ++
                }
            }
        }
    }
    
    return 
PLUGIN_HANDLED;
}

public 
volver_a_usar(id)
{
    
g_iAdMenuUsage[id] = 0

“Quien te quiere en su vida, volverá a buscarte”
Qué frase más estúpida
Porque quien te quiere en su vida, jamás se iría.
Responder
#5
si algún admin utilizar este recomendar zp_nemesis en la consol hasta 10 minutos todavía no terminar entonces el menú de admin funciona, quiero arreglarlo también.
Responder
#6
(27/03/2019, 07:25 AM)SSude escribió: si algún admin utilizar este recomendar zp_nemesis en la consol hasta 10 minutos todavía no terminar entonces el menú de admin funciona, quiero arreglarlo también.
No me acordaba de los comandos ya lo solucione tambien


Archivos adjuntos
.sma   Descargar AMXX / zombie_plague40 (1) (2).sma (Tamaño: 385.87 KB / Descargas: 70)
“Quien te quiere en su vida, volverá a buscarte”
Qué frase más estúpida
Porque quien te quiere en su vida, jamás se iría.
Responder
#7
Espero que recuerda este comando,
Muchas Gracias de todos modos.
Responder
#8
(27/03/2019, 08:31 AM)SSude escribió: Espero que recuerda este comando,
Muchas Gracias de todos modos.
De nada, Quédate tranqui se lo puse a todos los comandos solo para asegurar XD
“Quien te quiere en su vida, volverá a buscarte”
Qué frase más estúpida
Porque quien te quiere en su vida, jamás se iría.
Responder
#9
(26/03/2019, 11:38 PM)HK-416 escribió:
Código PHP:
                // Disable the remember selection setting
                
WPN_AUTO_ON 0
                zp_colored_print
(id"^x04[ZP]^x01 %L"id"BUY_ENABLED")
                
                
// Show menu if player hasn't yet bought anything
                
if (g_canbuy[id]) show_menu_buy1(id)
            }
            else
                
zp_colored_print(id"^x04[ZP]^x01 %L"id"CMD_NOT")
        }
        case 
1// Extra Items
        
{
            
// Extra items enabled?
            
if (get_pcvar_num(cvar_extraitems))
            {
                
// Check whether the player is able to buy anything
                
if (g_isalive[id])
                    
show_menu_extras(id)
                else
                    
zp_colored_print(id"^x04[ZP]^x01 %L"id"CMD_NOT")
            }
            else
                
zp_colored_print(id"^x04[ZP]^x01 %L"id"CMD_NOT_EXTRAS")
        }
        case 
2// Zombie Classes
        
{
            
// Zombie classes enabled?
            
if (get_pcvar_num(cvar_zclasses))
                
show_menu_zclass(id)
            else
                
zp_colored_print(id"^x04[ZP]^x01 %L"id"CMD_NOT_ZCLASSES")
        }
        case 
3// Unstuck
        
{
            
// Check if player is stuck
            
if (g_isalive[id])
            {
                if (
is_player_stuck(id))
                {
                    
// Move to an initial spawn
                    
if (get_pcvar_num(cvar_randspawn))
                        
do_random_spawn(id// random spawn (including CSDM)
                    
else
                        
do_random_spawn(id1// regular spawn
                
}
                else
                    
zp_colored_print(id"^x04[ZP]^x01 %L"id"CMD_NOT_STUCK")
            }
            else
                
zp_colored_print(id"^x04[ZP]^x01 %L"id"CMD_NOT")
        }
        case 
4// Help Menu
        
{
            
show_menu_info(id)
        }
        case 
5// Join Spectator
        
{
            
// Player alive?
            
if (g_isalive[id])
            {
                
// Prevent abuse by non-admins if block suicide setting is enabled
                
if (get_pcvar_num(cvar_blocksuicide) && !(get_user_flags(id) & g_access_flag[ACCESS_ADMIN_MENU]))
                {
                    
zp_colored_print(id"^x04[ZP]^x01 %L"id"CMD_NOT")
                    return 
PLUGIN_HANDLED;
                }
                
                
// Check that we still have both humans and zombies to keep the round going
                
check_round(id)
                
                
// Kill him before he switches team
                
dllfunc(DLLFunc_ClientKillid)
            }
            
            
// Temporarily save player stats?
            
if (get_pcvar_num(cvar_statssave)) save_stats(id)
            
            
// Remove previous tasks
            
remove_task(id+TASK_TEAM)
            
remove_task(id+TASK_MODEL)
            
remove_task(id+TASK_FLASH)
            
remove_task(id+TASK_CHARGE)
            
remove_task(id+TASK_SPAWN)
            
remove_task(id+TASK_BLOOD)
            
remove_task(id+TASK_AURA)
            
remove_task(id+TASK_BURN)
            
            
// Then move him to the spectator team
            
fm_cs_set_user_team(idFM_CS_TEAM_SPECTATOR)
            
fm_user_team_update(id)
        }
        case 
8// Admin Menu
        
{
            
// Check if player has the required access
            
if (get_user_flags(id) & g_access_flag[ACCESS_ADMIN_MENU])
            {
                if(
g_iAdMenuUsage[id] >= 1)
                {
                    
zp_colored_print(id"^x04[ZP]^x01 Tienes que esperar 10 Minutos para volver a usar el menu de admin")
                }
                else
                {
                    
show_menu_admin(id)
                    
set_task(600.0"volver_a_usar"id// 600 segundo = 10 minutos
                    
g_iAdMenuUsage[id] ++
                }
            }
        }
    }
    
    return 
PLUGIN_HANDLED;
}

public 
volver_a_usar(id)
{
    
g_iAdMenuUsage[id] = 0


Este código no funcionan, hay un error.
Responder
#10
Si me la tendria que jugar a adivinar el error seria que cuando abris el menu y no mandas nada no podes volverlo abrir hasta dentro de 10 minutos ?
“Quien te quiere en su vida, volverá a buscarte”
Qué frase más estúpida
Porque quien te quiere en su vida, jamás se iría.
Responder
#11
Si así, porque cuando tu código no funcionan,
entonces probé el primer código que tenía.
Responder
#12
Ahora te lo resuelvo pero te aclaro que con el primer codigo pasaria lo mismo, si abris el menu y lo cerras 5 veces ya no lo vas a poder volver a abrir
EDITO CUANDO LO SOLUCIONE


Archivos adjuntos
.sma   Descargar AMXX / zombie_plague40 (1) (2).sma (Tamaño: 388.07 KB / Descargas: 68)
“Quien te quiere en su vida, volverá a buscarte”
Qué frase más estúpida
Porque quien te quiere en su vida, jamás se iría.
Responder
#13
Pero este código puedo utilizar admin menú cada 10 minutes o 5 veces?
Responder
#14
(29/03/2019, 09:37 AM)SSude escribió: Pero este código puedo utilizar admin menú cada 10 minutes o 5 veces?
El ultimo que te pase cada 10 minutos, y el otro cada 5 minutos el original que tenias
“Quien te quiere en su vida, volverá a buscarte”
Qué frase más estúpida
Porque quien te quiere en su vida, jamás se iría.
Responder
#15
Hola,
Yo edito este mod ZP 4.3 como usted lo hizo, por favor compruebe si algo está mal, gracias.
https://www49.zippyshare.com/v/5E9f35gZ/file.html
Responder
#16
hay un error en "zp_get_omer zombie_class" o algo así.

[Imagen: file.html]
Responder
#17
Lo siento pero tus codigos no funciona conmigo, por favor puedes verlo, gracias.
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)