los jugadores entran sin ser elegidos
#1
buenas tengo un problema es que cuando se estan eligiendo los jugadores esto entran sin ser elegidos me pueden ayudar para que no entren almenos que el capitan los eliga

Código PHP:
public fnCaptains()
{
    if(
get_playersnum() >= get_pcvar_num(pcvar_max_players)) {

        
set_task(1.0"fnCaptainHud")

        
client_print_color(00"%s Se iniciara elecion por capitanes."TAG)

        
set_cvar_num("sv_restart"1)
        
set_cvar_num("sv_maxspeed"0)
        
set_cvar_num("mp_forcerespawn"0)
        
set_cvar_num("mp_round_infinite"1)
        
captainrun true

        
new random_num(01)
        
tt random_player(1)
        
ct random_player(2)
        if(
r) {
            
make_menu_team(tt)
        }
        else
        {
            
make_menu_team(ct)
        }
    }
    else{
        
client_print_color(00"%s Son necesarios ^4%d^1 jugadores para la eleccion de capitanes"TAGget_pcvar_num(pcvar_max_players))
        
set_cvar_num("sv_maxspeed"320)
        
set_cvar_num("mp_round_infinite"0)
        
EnableHamForward(PlayerSpawn)
        
start_pregame()
        
fn_forceready()
    }
}
make_menu_team(id)
{
    new 
0
    
new menu menu_create("Selecciona a un jugador""mh_menu")
    new 
name[32], num[3]

    new 
players[32], count
    get_players
(playerscount"e""SPECTATOR")

    for(new 
<= iMaxPlayers i++)
    {
        if(
get_user_team(i) == 3)
        {
            
get_user_name(inamecharsmax(name))
            
num_to_str(inumcharsmax(num))
            
menu_additem(menunamenum)
        }
        
c++
    }
    if(
count == 0)
    {
        
menu_destroy(menu)
        
set_cvar_num("sv_maxspeed"320)
        
set_cvar_num("mp_round_infinite"0)
        
captainrun false
        EnableHamForward
(PlayerSpawn)
        
next_vote()

        
team_voting 0
        
return PLUGIN_HANDLED

    
}
    
remove_task(TASK)
    
team_voting get_user_team(id)
    
menu_setprop(menuMPROP_EXITMEXIT_ALL)
    
menu_display(idmenu)
    
set_task(5.0"pfn_end"TASK)
    return 
PLUGIN_HANDLED
}
public 
mh_menu(idmenuitem)
{
    if(
team_voting != get_user_team(id))
    {
        
menu_destroy(menu)
        return
    }
    if(
item == MENU_EXIT)
    {
        
menu_destroy(menu)
        return
    }
    new 
num[3], a
    menu_item_getinfo
(menuitemanumcharsmax(num), ""0a)
    
menu_destroy(menu)
    new 
str_to_num(num)
    
rg_set_user_team(pget_user_team(id) == TEAM_TERRORIST TEAM_CT)
    
rg_round_respawn(p)
    
remove_task(TASK)
    switch(
team_voting)
    {
        case 

        {
            
menu_cancel(ct)
            
make_menu_team(ct)
        }
        case 

        {
            
menu_cancel(ct)
            
make_menu_team(tt)
        }
    }
}
public 
pfn_end(tid)
{
    new 
players[32], count
    get_players
(playerscount"e""SPECTATOR")
    if( 
count )
    {
        new 
players[random(count)]
        
rg_set_user_team(pteam_voting == TEAM_TERRORIST TEAM_CT)
        
rg_round_respawn(p)
    }

    switch(
team_voting)
    {
        case 

        {
            
menu_cancel(ct)
            
make_menu_team(ct)
        }
        case 

        {
            
menu_cancel(ct)
            
make_menu_team(tt)
        }
    }
}
public 
fnCaptainHud()
{
    if(
captainrunset_task(1.0"fnCaptainHud")

    new 
iPlayers[MAX_PLAYERS],iNum,iPlayer;
    
get_players(iPlayers,iNum,"h");

    new 
szName[MAX_NAME_LENGTH],iCTs,szList[4][320],iTeam,iSpec;

    for(new 
i;iNum;i++)
    {
        
iPlayer iPlayers[i];

        
get_user_name(iPlayer,szName,charsmax(szName));

        if((
iPlayer == tt) || (iPlayer == ct))
        {
            
add(szName,charsmax(szName)," (C)");
        }

        
iTeam get_user_team(iPlayer);

        switch(
iTeam)
        {
            case 
2iCTs++;
            case 
3iSpec++;
        }

        
add(szName,charsmax(szName),"^n");
        
add(szList[iTeam],charsmax(szList[]),szName);
    }

    for(new 
0;< (iCTs);i++)
    {
        
add(szList[2],charsmax(szList[]),"^n");
    }

    
set_hudmessage(255000.700.1600.099.00.00.01);
    
show_hudmessage(0"Terroristas");

    
set_hudmessage(2552552550.700.1900.099.00.00.02);
    
show_hudmessage(0"%s^n",szList[1]);

    
set_hudmessage(002550.700.5100.099.00.00.03);
    
show_hudmessage(0"Anti-Terroristas");

    
set_hudmessage(2552552550.700.5400.099.00.00.04);
    
show_hudmessage(0"%s^n",szList[2]);
}
random_player(team)
{
    if(!(
<= team <= 2))
    {
        
log_error(AMX_ERR_NATIVE"[CAPITAN] Team incorrecto")
        return 
0
    
}
    new 
p[32], count
    get_players
(pcount"e"team == "TERRORIST" "CT")

    new 
p[random(count)]
    for(new 
<= iMaxPlayers i++)
    {
        if(
== || team != get_user_team(i))
        {
            continue
        }
        
cmdDirector(i"kill")
        
rg_set_user_team(iTEAM_SPECTATOR)
        
set_member(im_iJoiningState5)
    }
    return 
t

Responder
#2
(23/05/2019, 11:32 AM)Forever123 escribió: buenas tengo un problema es que cuando se estan eligiendo los jugadores esto entran sin ser elegidos me pueden ayudar para que no entren almenos que el capitan los eliga

Código PHP:
public fnCaptains()
{
    if(
get_playersnum() >= get_pcvar_num(pcvar_max_players)) {

        
set_task(1.0"fnCaptainHud")

        
client_print_color(00"%s Se iniciara elecion por capitanes."TAG)

        
set_cvar_num("sv_restart"1)
        
set_cvar_num("sv_maxspeed"0)
        
set_cvar_num("mp_forcerespawn"0)
        
set_cvar_num("mp_round_infinite"1)
        
captainrun true

        
new random_num(01)
        
tt random_player(1)
        
ct random_player(2)
        if(
r) {
            
make_menu_team(tt)
        }
        else
        {
            
make_menu_team(ct)
        }
    }
    else{
        
client_print_color(00"%s Son necesarios ^4%d^1 jugadores para la eleccion de capitanes"TAGget_pcvar_num(pcvar_max_players))
        
set_cvar_num("sv_maxspeed"320)
        
set_cvar_num("mp_round_infinite"0)
        
EnableHamForward(PlayerSpawn)
        
start_pregame()
        
fn_forceready()
    }
}
make_menu_team(id)
{
    new 
0
    
new menu menu_create("Selecciona a un jugador""mh_menu")
    new 
name[32], num[3]

    new 
players[32], count
    get_players
(playerscount"e""SPECTATOR")

    for(new 
<= iMaxPlayers i++)
    {
        if(
get_user_team(i) == 3)
        {
            
get_user_name(inamecharsmax(name))
            
num_to_str(inumcharsmax(num))
            
menu_additem(menunamenum)
        }
        
c++
    }
    if(
count == 0)
    {
        
menu_destroy(menu)
        
set_cvar_num("sv_maxspeed"320)
        
set_cvar_num("mp_round_infinite"0)
        
captainrun false
        EnableHamForward
(PlayerSpawn)
        
next_vote()

        
team_voting 0
        
return PLUGIN_HANDLED

    
}
    
remove_task(TASK)
    
team_voting get_user_team(id)
    
menu_setprop(menuMPROP_EXITMEXIT_ALL)
    
menu_display(idmenu)
    
set_task(5.0"pfn_end"TASK)
    return 
PLUGIN_HANDLED
}
public 
mh_menu(idmenuitem)
{
    if(
team_voting != get_user_team(id))
    {
        
menu_destroy(menu)
        return
    }
    if(
item == MENU_EXIT)
    {
        
menu_destroy(menu)
        return
    }
    new 
num[3], a
    menu_item_getinfo
(menuitemanumcharsmax(num), ""0a)
    
menu_destroy(menu)
    new 
str_to_num(num)
    
rg_set_user_team(pget_user_team(id) == TEAM_TERRORIST TEAM_CT)
    
rg_round_respawn(p)
    
remove_task(TASK)
    switch(
team_voting)
    {
        case 

        {
            
menu_cancel(ct)
            
make_menu_team(ct)
        }
        case 

        {
            
menu_cancel(ct)
            
make_menu_team(tt)
        }
    }
}
public 
pfn_end(tid)
{
    new 
players[32], count
    get_players
(playerscount"e""SPECTATOR")
    if( 
count )
    {
        new 
players[random(count)]
        
rg_set_user_team(pteam_voting == TEAM_TERRORIST TEAM_CT)
        
rg_round_respawn(p)
    }

    switch(
team_voting)
    {
        case 

        {
            
menu_cancel(ct)
            
make_menu_team(ct)
        }
        case 

        {
            
menu_cancel(ct)
            
make_menu_team(tt)
        }
    }
}
public 
fnCaptainHud()
{
    if(
captainrunset_task(1.0"fnCaptainHud")

    new 
iPlayers[MAX_PLAYERS],iNum,iPlayer;
    
get_players(iPlayers,iNum,"h");

    new 
szName[MAX_NAME_LENGTH],iCTs,szList[4][320],iTeam,iSpec;

    for(new 
i;iNum;i++)
    {
        
iPlayer iPlayers[i];

        
get_user_name(iPlayer,szName,charsmax(szName));

        if((
iPlayer == tt) || (iPlayer == ct))
        {
            
add(szName,charsmax(szName)," (C)");
        }

        
iTeam get_user_team(iPlayer);

        switch(
iTeam)
        {
            case 
2iCTs++;
            case 
3iSpec++;
        }

        
add(szName,charsmax(szName),"^n");
        
add(szList[iTeam],charsmax(szList[]),szName);
    }

    for(new 
0;< (iCTs);i++)
    {
        
add(szList[2],charsmax(szList[]),"^n");
    }

    
set_hudmessage(255000.700.1600.099.00.00.01);
    
show_hudmessage(0"Terroristas");

    
set_hudmessage(2552552550.700.1900.099.00.00.02);
    
show_hudmessage(0"%s^n",szList[1]);

    
set_hudmessage(002550.700.5100.099.00.00.03);
    
show_hudmessage(0"Anti-Terroristas");

    
set_hudmessage(2552552550.700.5400.099.00.00.04);
    
show_hudmessage(0"%s^n",szList[2]);
}
random_player(team)
{
    if(!(
<= team <= 2))
    {
        
log_error(AMX_ERR_NATIVE"[CAPITAN] Team incorrecto")
        return 
0
    
}
    new 
p[32], count
    get_players
(pcount"e"team == "TERRORIST" "CT")

    new 
p[random(count)]
    for(new 
<= iMaxPlayers i++)
    {
        if(
== || team != get_user_team(i))
        {
            continue
        }
        
cmdDirector(i"kill")
        
rg_set_user_team(iTEAM_SPECTATOR)
        
set_member(im_iJoiningState5)
    }
    return 
t

A mi me a pasado, antes lo mismo, pero era por el sistema de cuentas, nose si tengas algun sistema de cuentas puesto en tu servidor..
SI NO VAS AYUDAR, POR FAVOR NO COMENTARLovepanda
Responder
#3
(29/05/2019, 02:28 PM)DavidLG escribió:
(23/05/2019, 11:32 AM)Forever123 escribió: buenas tengo un problema es que cuando se estan eligiendo los jugadores esto entran sin ser elegidos me pueden ayudar para que no entren almenos que el capitan los eliga

Código PHP:
public fnCaptains()
{
    if(
get_playersnum() >= get_pcvar_num(pcvar_max_players)) {

        
set_task(1.0"fnCaptainHud")

        
client_print_color(00"%s Se iniciara elecion por capitanes."TAG)

        
set_cvar_num("sv_restart"1)
        
set_cvar_num("sv_maxspeed"0)
        
set_cvar_num("mp_forcerespawn"0)
        
set_cvar_num("mp_round_infinite"1)
        
captainrun true

        
new random_num(01)
        
tt random_player(1)
        
ct random_player(2)
        if(
r) {
            
make_menu_team(tt)
        }
        else
        {
            
make_menu_team(ct)
        }
    }
    else{
        
client_print_color(00"%s Son necesarios ^4%d^1 jugadores para la eleccion de capitanes"TAGget_pcvar_num(pcvar_max_players))
        
set_cvar_num("sv_maxspeed"320)
        
set_cvar_num("mp_round_infinite"0)
        
EnableHamForward(PlayerSpawn)
        
start_pregame()
        
fn_forceready()
    }
}
make_menu_team(id)
{
    new 
0
    
new menu menu_create("Selecciona a un jugador""mh_menu")
    new 
name[32], num[3]

    new 
players[32], count
    get_players
(playerscount"e""SPECTATOR")

    for(new 
<= iMaxPlayers i++)
    {
        if(
get_user_team(i) == 3)
        {
            
get_user_name(inamecharsmax(name))
            
num_to_str(inumcharsmax(num))
            
menu_additem(menunamenum)
        }
        
c++
    }
    if(
count == 0)
    {
        
menu_destroy(menu)
        
set_cvar_num("sv_maxspeed"320)
        
set_cvar_num("mp_round_infinite"0)
        
captainrun false
        EnableHamForward
(PlayerSpawn)
        
next_vote()

        
team_voting 0
        
return PLUGIN_HANDLED

    
}
    
remove_task(TASK)
    
team_voting get_user_team(id)
    
menu_setprop(menuMPROP_EXITMEXIT_ALL)
    
menu_display(idmenu)
    
set_task(5.0"pfn_end"TASK)
    return 
PLUGIN_HANDLED
}
public 
mh_menu(idmenuitem)
{
    if(
team_voting != get_user_team(id))
    {
        
menu_destroy(menu)
        return
    }
    if(
item == MENU_EXIT)
    {
        
menu_destroy(menu)
        return
    }
    new 
num[3], a
    menu_item_getinfo
(menuitemanumcharsmax(num), ""0a)
    
menu_destroy(menu)
    new 
str_to_num(num)
    
rg_set_user_team(pget_user_team(id) == TEAM_TERRORIST TEAM_CT)
    
rg_round_respawn(p)
    
remove_task(TASK)
    switch(
team_voting)
    {
        case 

        {
            
menu_cancel(ct)
            
make_menu_team(ct)
        }
        case 

        {
            
menu_cancel(ct)
            
make_menu_team(tt)
        }
    }
}
public 
pfn_end(tid)
{
    new 
players[32], count
    get_players
(playerscount"e""SPECTATOR")
    if( 
count )
    {
        new 
players[random(count)]
        
rg_set_user_team(pteam_voting == TEAM_TERRORIST TEAM_CT)
        
rg_round_respawn(p)
    }

    switch(
team_voting)
    {
        case 

        {
            
menu_cancel(ct)
            
make_menu_team(ct)
        }
        case 

        {
            
menu_cancel(ct)
            
make_menu_team(tt)
        }
    }
}
public 
fnCaptainHud()
{
    if(
captainrunset_task(1.0"fnCaptainHud")

    new 
iPlayers[MAX_PLAYERS],iNum,iPlayer;
    
get_players(iPlayers,iNum,"h");

    new 
szName[MAX_NAME_LENGTH],iCTs,szList[4][320],iTeam,iSpec;

    for(new 
i;iNum;i++)
    {
        
iPlayer iPlayers[i];

        
get_user_name(iPlayer,szName,charsmax(szName));

        if((
iPlayer == tt) || (iPlayer == ct))
        {
            
add(szName,charsmax(szName)," (C)");
        }

        
iTeam get_user_team(iPlayer);

        switch(
iTeam)
        {
            case 
2iCTs++;
            case 
3iSpec++;
        }

        
add(szName,charsmax(szName),"^n");
        
add(szList[iTeam],charsmax(szList[]),szName);
    }

    for(new 
0;< (iCTs);i++)
    {
        
add(szList[2],charsmax(szList[]),"^n");
    }

    
set_hudmessage(255000.700.1600.099.00.00.01);
    
show_hudmessage(0"Terroristas");

    
set_hudmessage(2552552550.700.1900.099.00.00.02);
    
show_hudmessage(0"%s^n",szList[1]);

    
set_hudmessage(002550.700.5100.099.00.00.03);
    
show_hudmessage(0"Anti-Terroristas");

    
set_hudmessage(2552552550.700.5400.099.00.00.04);
    
show_hudmessage(0"%s^n",szList[2]);
}
random_player(team)
{
    if(!(
<= team <= 2))
    {
        
log_error(AMX_ERR_NATIVE"[CAPITAN] Team incorrecto")
        return 
0
    
}
    new 
p[32], count
    get_players
(pcount"e"team == "TERRORIST" "CT")

    new 
p[random(count)]
    for(new 
<= iMaxPlayers i++)
    {
        if(
== || team != get_user_team(i))
        {
            continue
        }
        
cmdDirector(i"kill")
        
rg_set_user_team(iTEAM_SPECTATOR)
        
set_member(im_iJoiningState5)
    }
    return 
t

A mi me a pasado, antes lo mismo, pero era por el sistema de cuentas, nose si tengas algun sistema de cuentas puesto en tu servidor..

no no tengo ningun sistema de cuenta
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)