Szerző Téma: Parancsra mindenkit kickeljen kivéve azt aki beírja.  (Megtekintve 888 alkalommal)

dexi

  • Vendég
Parancsra mindenkit kickeljen kivéve azt aki beírja.
« Dátum: 2011. december 13. - 16:41:39 »
0 Show voters
/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?
« Utoljára szerkesztve: 2011. december 13. - 16:48:46 írta dexi »

Nem elérhető kurta999

  • 2759
  • Éllő fédisznó
    • Profil megtekintése
Parancsra mindenkit kickeljen kivéve azt aki beírja.
« Válasz #1 Dátum: 2011. december 13. - 16:52:42 »
0 Show voters
[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.
« Utoljára szerkesztve: 2011. december 13. - 16:58:23 írta kurta999 »

Nem elérhető Sheet

  • 1508
  • Támogató
    • Profil megtekintése
Parancsra mindenkit kickeljen kivéve azt aki beírja.
« Válasz #2 Dátum: 2011. december 13. - 16:54:28 »
0 Show voters
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ó

Parancsra mindenkit kickeljen kivéve azt aki beírja.
« Válasz #3 Dátum: 2011. december 13. - 21:11:07 »
0 Show voters
@Kurta999
Nem tudom, hogy neked mi lehet a gond, nekem foreachhal is mûködött az adminrendszeremben.

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal