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: Detrot - 2011. Június 30. - 19:39:08

Cím: miért nem listáz ki mindenkit?
Írta: Detrot - 2011. Június 30. - 19:39:08
CMD:adminok(playerid, params[])
{
    if(IsLogged[playerid] == 1)
{
    SendClientMessage(playerid, COLOR_WHITE, \"Elérhetõ adminok:\");
    for(new i; i<=PLAYERS; i++)
    {
        if(Info[admin] >= 1)
        {
            new str1[64];
            if(Info[admin] == 1)
               {
               format(str1,64,\"Admin %s [1-es admin]\", PlrName(i));
               SendClientMessage(playerid, COLOR_RED, str1);
      }
      if(Info[admin] == 2)
      {
               format(str1,64,\"Admin %s [2-es admin]\", PlrName(i));
               SendClientMessage(playerid, COLOR_RED, str1);
      }
      if(Info[admin] == 3)
      {
               format(str1,64,\"Admin %s [3-as admin]\", PlrName(i));
               SendClientMessage(playerid, COLOR_RED, str1);
      }
      return 1;
   }
}
}
else
{
    SendClientMessage(playerid, COLOR_RED, \"Nem vagy bejelentkezve!\");
}
return 1;
}

 
Itt ez a parancs. Annyi a baj hogy csak az elsõ adminig megy. Szóval nem listázza ki az összeset csak egyet. Mi a baj?
Cím: miért nem listáz ki mindenkit?
Írta: ZeRo - 2011. Június 30. - 19:54:37

...
format(str1,64,\"Admin %s [3-as admin]\", PlrName(i));
               SendClientMessage(playerid, COLOR_RED, str1);
      }
      return 1;
...

 
Innen vedd ki a \'return 1\'; kifejezést, mivel így ha kilistáz egyet, akkor megszakítja a ciklust, így nem listázza a többit.
Cím: miért nem listáz ki mindenkit?
Írta: Detrot - 2011. Június 30. - 20:21:40
akkor meg jön a SERVER UNKOWN COMMAND post:S
Cím: miért nem listáz ki mindenkit?
Írta: Epsilon - 2011. Június 30. - 21:10:29
Ha csak onnan veszed ki ahol Zero mutatta, nem fog \'jönni\'.
Cím: miért nem listáz ki mindenkit?
Írta: Zsolesszka - 2011. Június 30. - 21:14:12
Szerintem meg lehetséges az Unknown rész mivel még mindig nem nézik meg milyen értékekkel fut végig egy ciklus és lehet olyan cellára hivatkozik ami nincs is.
Talán ez segíthet.
 

for(new i; i<=PLAYERS; i++)

 
helyett:
 

for(new i; i < PLAYERS; i++)

 
És azt a return 1;-et vedd ki, amelyikrõl írtak.
Cím: miért nem listáz ki mindenkit?
Írta: Sheet - 2011. Június 30. - 21:24:34
[pawn]CMD:admins(playerid, params[])
{
new admins = 0;
    SendClientMessage(playerid, COLOR_YELLOW, \"   **   Online adminok **\");
     foreach(Player, i)
      {
         new string[128];
    if(Info == 1)

   {


      format(string, 256, \"Admin %s [1-es admin]\", PlrName(i));


      SendClientMessage(playerid, COLOR_RED, string);


      admins++;


   }


    else if(Info
== 2)

   {


       format(string, 256, \"Admin %s [2-es admin]\", PlrName(i));


      SendClientMessage(playerid, COLOR_RED, string);


      admins++;


   }


   else if(Info
== 3)

   {


              format(string, 256, \"Admin %s [3-as admin]\", PlrName(i));


      SendClientMessage(playerid, COLOR_RED, string);


      admins++;


   }


      }


      if (admins == 0) SendClientMessage(playerid, 0xFF4500AA, \"Jelenleg nincs on-line adminisztrátor.\");


    return 1;


}[/pawn]


Dupla hozzászólás automatikusan összefûzve. ( 2011. Július 01. - 22:35:22 )

Ha megoldódott lehet zárni