GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: dexi - 2011. december 13. - 16:41:39

Cím: Parancsra mindenkit kickeljen kivéve azt aki beírja.
Írta: dexi - 2011. december 13. - 16:41:39
/kickall -ra kickeljen mindenkit kivéve azt aki beírta. Csak rCon admin használhassa.
Néztem ezt:[pawn] Kick(!playerid);[/pawn] Nem tudom tesztelni, szerintetek menne?
Cím: Parancsra mindenkit kickeljen kivéve azt aki beírja.
Írta: kurta999 - 2011. december 13. - 16:52:42
[pawn]
CMD:kickall(playerid, params[ ])
{
if(!IsPlayerAdmin(playerid) return 1;
   
for(new i; i < MAX_PLAYERS; i++)
{
   if(!IsPlayerConnected(i)) continue;
   if(i != playerid)
   {
      // Ha üzenetet akarsz nekik küldeni azoknak, akik kickelve lettek, akkor ide írd.
      Kick(i);
   }
}
// Üzenet a játékosnak, aki beírta, hogy minden játékost ki**szott a szerverrõl
return 1;
}
[/pawn]
E: Amúgy erre a megoldásra a foreach nemjó. Próbáltam, nekem nem kickelte a játékosokat. Biztos valami a lecsatlakozásnál bekeveredik.
Cím: Parancsra mindenkit kickeljen kivéve azt aki beírja.
Írta: Sheet - 2011. december 13. - 16:54:28
Ciklus, és egy bool változó!
[pawn]new bool:player[MAX_PLAYERS];
CMD:kickall(playerid)
{
player[playerid] = 1;
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(player == 1) continue;

Kick(i);


}


return 1;


}[/pawn]


EDIT, kurta megelõzött, egy más móddal, de ígyis jó
Cím: Parancsra mindenkit kickeljen kivéve azt aki beírja.
Írta: mauladam - 2011. december 13. - 21:11:07
@Kurta999
Nem tudom, hogy neked mi lehet a gond, nekem foreachhal is mûködött az adminrendszeremben.