Um mйtodo:
PHP код:
#define VAGAS (20)
//ou use getmaxplayers
new VAGA_S;
forward SendInfor();
forward Checar();
new PlayersOnline;
//ver se o maluco й adm
new Admin[MAX_PLAYERS];
public OnGameModeInit()
{
SetTimer("SendInfo", 60000*2, 1);
VAGA_S = GetMaxPlayers();
return 1;
}
public SendInfo()
{
new online;
for(new i = 0; i <= MAX_PLAYERS; i++)
if(IsPlayerConnected(i))
online += 1;
PlayersOnline = online;
}
public OnPlayerConnect(playerid)
{
if(PlayersOnline == VAGA_S && Admin[playerid])
Checar();
return true;
}
public Checar() //kickar um nгo admim para entrada de um admin
{
for(new i=0; i<=MAX_PLAYERS; i++)
if(Admin[i] < 1){
new numSorteado = random(i),Kick(numSorteado); SendClientMessage(numSorteado, -1, #Vocк foi kickado para dar lugar a um admin)}
else return false;
return false;
}
Outro mйtodo:
PHP код:
#define NON_ADMIN (10) //vagas para nгo admin
public OnPlayerConnect(playerid)
{
if(PlayersOnline == VAGA_S && Admin[playerid])
Checar();
if(PlayersOnline == NON_ADMIN)
if(Admin[playerid] < 1)
{
SendClientMessage(playerid, -1, #O Servidor estб com o resto das vagas reservadas apenas а administradores);
Kick(playerid);
//se entrar os outros admins e o servidor ficar cheio por completo ai o outro sistema de retirar alguem nгo admin entra em funзгo, que no caso e o VAGA_S ou VAGAS
}
return true;
}
AGORA TU EDITAS DA FORMA DE SEU GAMEMODE