Szerző Téma: "Nincs admin a szerver" kijelzése  (Megtekintve 713 alkalommal)

Nem elérhető inf

  • 366
    • Profil megtekintése
"Nincs admin a szerver" kijelzése
« Dátum: 2013. október 23. - 16:22:31 »
0 Show voters
Sziasztok!

Valaki beletudná írni ebbe a /admins scriptbe hogyha nincs admin a szerveren akkor ne egy üres táblázatot adjon ki hanem írja ki hogy \"Nincs admin a szerveren!\".


Admins Script:

 
CMD:admins(playerid, params[])
{
new strtext[1000];
new string[1000];
new sendername[MAX_PLAYER_NAME];
if(IsPlayerConnected(playerid))
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
   if(IsPlayerConnected(i))
   {
      if(JatekosInfo[playerid][AdminSzint] == 1)
      {
         GetPlayerName(i, sendername, sizeof(sendername));
         format(string, 128, \"|- Név: %s | ID: %d | Szint: 1 | Rang: VIP -|\", sendername, i);
      }
      if(JatekosInfo[playerid][AdminSzint] == 2)
      {
         GetPlayerName(i, sendername, sizeof(sendername));
         format(string, 128, \"|- Név: %s | ID: %d | Szint: 2 | Rang: Próbaidõs Admin -|\", sendername, i);
      }
      if(JatekosInfo[playerid][AdminSzint] == 3)
      {
         GetPlayerName(i, sendername, sizeof(sendername));
         format(string, 128, \"|- Név: %s | ID: %d | Szint: 3 | Rang: Moderátor -|\", sendername, i);
      }
      if(JatekosInfo[playerid][AdminSzint] == 4)
      {
         GetPlayerName(i, sendername, sizeof(sendername));
         format(string, 128, \"|- Név: %s | ID: %d | Szint: 4 | Rang: Admin -|\", sendername, i);
      }
      if(JatekosInfo[playerid][AdminSzint] == 5)
      {
         GetPlayerName(i, sendername, sizeof(sendername));
         format(string, 128, \"|- Név: %s | ID: %d | Szint: 5 | Rang: Fõadmin -|\", sendername, i);
      }
      if(JatekosInfo[playerid][AdminSzint] == 6)
      {
         GetPlayerName(i, sendername, sizeof(sendername));
         format(string, 128, \"|- Név: %s | ID: %d | Szint: 6 | Rang: Tulajdonos -|\", sendername, i);
      }
      strcat(string, \"\\n\");
      strcat(strtext, string);
   }
}
ShowPlayerDialog(playerid, 303, DIALOG_STYLE_MSGBOX,\"Adminok\", strtext, \"Kilépés\",#);
}
return 1;
}

Nem elérhető Kovacs_Richard

  • 1743
  • HRP Fejlesztő
  • Discord: Kovacs_Richard#0321
    • Profil megtekintése
    • Hun Role Play Web
"Nincs admin a szerver" kijelzése
« Válasz #1 Dátum: 2013. október 23. - 16:41:25 »
0 Show voters
if(!strlen(strtext)) { format(strtext,sizeof(strtext),\"Nincs admin a szerveren\"); }
ShowPlayerDialog(playerid, 303, DIALOG_STYLE_MSGBOX,\"Adminok\", strtext, \"Kilépés\",#);
Régóta nem tevékenykedem, mint SA-MP scripter.
HRP Fejlesztő.

Nem elérhető inf

  • 366
    • Profil megtekintése
"Nincs admin a szerver" kijelzése
« Válasz #2 Dátum: 2013. október 23. - 17:00:58 »
0 Show voters
Semmi, ugyanúgy kiad egy üres táblázatot.

Nem elérhető Kovacs_Richard

  • 1743
  • HRP Fejlesztő
  • Discord: Kovacs_Richard#0321
    • Profil megtekintése
    • Hun Role Play Web
"Nincs admin a szerver" kijelzése
« Válasz #3 Dátum: 2013. október 23. - 17:29:55 »
0 Show voters
pedig ennek mûködnie kéne, mutasd a jelenlegi kódot
Régóta nem tevékenykedem, mint SA-MP scripter.
HRP Fejlesztő.

Nem elérhető inf

  • 366
    • Profil megtekintése
"Nincs admin a szerver" kijelzése
« Válasz #4 Dátum: 2013. október 23. - 17:38:14 »
0 Show voters
CMD:admins(playerid, params[])
{
new strtext[1000];
new string[1000];
new sendername[MAX_PLAYER_NAME];
if(IsPlayerConnected(playerid))
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
   if(IsPlayerConnected(i))
   {
      if(JatekosInfo[playerid][AdminSzint] == 1)
      {
         GetPlayerName(i, sendername, sizeof(sendername));
         format(string, 128, \"{\"nsarga\"}|- Név: %s | ID: %d | Szint: 1 | Rang: VIP -|\", sendername, i);
      }
      if(JatekosInfo[playerid][AdminSzint] == 2)
      {
         GetPlayerName(i, sendername, sizeof(sendername));
         format(string, 128, \"{\"szold\"}|- Név: %s | ID: %d | Szint: 2 | Rang: Próbaidõs Admin -|\", sendername, i);
      }
      if(JatekosInfo[playerid][AdminSzint] == 3)
      {
         GetPlayerName(i, sendername, sizeof(sendername));
         format(string, 128, \"{\"vkek\"}|- Név: %s | ID: %d | Szint: 3 | Rang: Moderátor -|\", sendername, i);
      }
      if(JatekosInfo[playerid][AdminSzint] == 4)
      {
         GetPlayerName(i, sendername, sizeof(sendername));
         format(string, 128, \"|- Név: %s | ID: %d | Szint: 4 | Rang: Admin -|\", sendername, i);
      }
      if(JatekosInfo[playerid][AdminSzint] == 5)
      {
         GetPlayerName(i, sendername, sizeof(sendername));
         format(string, 128, \"{\"vzold\"}|- Név: %s | ID: %d | Szint: 5 | Rang: Fõadmin -|\", sendername, i);
      }
      if(JatekosInfo[playerid][AdminSzint] == 6)
      {
         GetPlayerName(i, sendername, sizeof(sendername));
         format(string, 128, \"{\"piros\"}|- Név: %s | ID: %d | Szint: 6 | Rang: Tulajdonos -|\", sendername, i);
      }
      strcat(string, \"\\n\");
      strcat(strtext, string);
   }
}
if(!strlen(strtext)) { format(strtext,sizeof(strtext),\"Nincs admin a szerveren\"); }
ShowPlayerDialog(playerid, 303, DIALOG_STYLE_MSGBOX,\"{\"piros\"}Adminok\", strtext, \"Kilépés\",#);
}
return 1;
}

Nem elérhető BoOy

  • 3209
  • 2013-as év szkriptere
    • Profil megtekintése
"Nincs admin a szerver" kijelzése
« Válasz #5 Dátum: 2013. október 23. - 18:52:51 »
0 Show voters
CMD:admins(playerid, params[])
{
        new strtext[1000];
        new string[1000];
        new count = 0;
        new sendername[MAX_PLAYER_NAME];
        if(IsPlayerConnected(playerid))
        {
                for(new i = 0; i < MAX_PLAYERS; i++)
                {
                        if(IsPlayerConnected(i))
                        {
                                if(JatekosInfo[playerid][AdminSzint] == 1)
                                {
                                        count++;
                                        GetPlayerName(i, sendername, sizeof(sendername));
                                        format(string, 128, \"|- Név: %s | ID: %d | Szint: 1 | Rang: VIP -|\", sendername, i);
                                }
                                if(JatekosInfo[playerid][AdminSzint] == 2)
                                {
                                        count++;
                                        GetPlayerName(i, sendername, sizeof(sendername));
                                        format(string, 128, \"|- Név: %s | ID: %d | Szint: 2 | Rang: Próbaidõs Admin -|\", sendername, i);
                                }
                                if(JatekosInfo[playerid][AdminSzint] == 3)
                                {
                                        GetPlayerName(i, sendername, sizeof(sendername));
                                        format(string, 128, \"|- Név: %s | ID: %d | Szint: 3 | Rang: Moderátor -|\", sendername, i);
                                }
                                if(JatekosInfo[playerid][AdminSzint] == 4)
                                {
                                        count++;
                                        GetPlayerName(i, sendername, sizeof(sendername));
                                        format(string, 128, \"|- Név: %s | ID: %d | Szint: 4 | Rang: Admin -|\", sendername, i);
                                }
                                if(JatekosInfo[playerid][AdminSzint] == 5)
                                {
                                        count++;
                                        GetPlayerName(i, sendername, sizeof(sendername));
                                        format(string, 128, \"|- Név: %s | ID: %d | Szint: 5 | Rang: Fõadmin -|\", sendername, i);
                                }
                                if(JatekosInfo[playerid][AdminSzint] == 6)
                                {
                                        count++;
                                        GetPlayerName(i, sendername, sizeof(sendername));
                                        format(string, 128, \"|- Név: %s | ID: %d | Szint: 6 | Rang: Tulajdonos -|\", sendername, i);
                                }
                                strcat(string, \"\\n\");
                                strcat(strtext, string);
                        }
                }
if(count == 0) return ShowPlayerDialog(playerid, 303, DIALOG_STYLE_MSGBOX,\"Adminok\", \"Nincs online admin\", \"Kilépés\",#);
else return ShowPlayerDialog(playerid, 303, DIALOG_STYLE_MSGBOX,\"Adminok\", strtext, \"Kilépés\",#);
        }
        return 1;
}
« Utoljára szerkesztve: 2013. október 23. - 19:17:06 írta BoOy »

Nem elérhető Kovacs_Richard

  • 1743
  • HRP Fejlesztő
  • Discord: Kovacs_Richard#0321
    • Profil megtekintése
    • Hun Role Play Web
"Nincs admin a szerver" kijelzése
« Válasz #6 Dátum: 2013. október 23. - 19:04:45 »
0 Show voters
van még néhány észrevételem:
 
JatekosInfo[playerid][AdminSzint]

 
helyett
 
JatekosInfo[AdminSzint]

 
és a sok if helyett else if-ekkel csinálnám a helyedben
 
{FFFFFF}|- Név: 12345678901234567890 | ID: 123 | Szint: 2 | Rang: Próbaidõs Admin -|[/quote]
84 karakter ( + szöveg végi \\0 ) szóval max 85 karakter lehet a string-ed
 
new string[1000];

 
helyett:
 
new string[85];

 
és ehhez igazítani a dialog szöveghez létrehozott strtext tömböt is, lesz annyi admin, hogy kelljen 1000 cella?
amúgy teszteltem a kódot és 1 karakter hosszú volt az strtext
 
strcat(string, \"\\n\");
strcat(strtext, string);

 
ez a kód miatt...ahány játékos van online annyi karakter lesz...
 
if(strlen(string))
{
      strcat(string, \"\\n\");
strcat(strtext, string);
strdel(string,0,sizeof(string));
}

 
vagy
 
strcat(string, \"\\n\");

 
ezt a kódot kitörlöd és a formatok végére beírod a \\n-t
Régóta nem tevékenykedem, mint SA-MP scripter.
HRP Fejlesztő.

Nem elérhető inf

  • 366
    • Profil megtekintése
"Nincs admin a szerver" kijelzése
« Válasz #7 Dátum: 2013. október 23. - 20:11:35 »
0 Show voters
Mostmár kiírja hogy nincs online admin, csak mostmeg 2x tesz be 1 admint.

Szerintem ha 4 player lenne akkor meg 3x írná az utolsót.


Kép:

\"admins_www.kepfeltoltes.hu_.png\"
« Utoljára szerkesztve: 2013. október 23. - 20:16:19 írta InFIeL_HuN »

Nem elérhető BoOy

  • 3209
  • 2013-as év szkriptere
    • Profil megtekintése
"Nincs admin a szerver" kijelzése
« Válasz #8 Dátum: 2013. október 23. - 20:23:12 »
0 Show voters
Ezt próbáld meg.. hátha.
 
CMD:admins(playerid,params[])
{
    new string[256],count = 0;
    new sendername[MAX_PLAYER_NAME];
    for(new i = 0;i < MAX_PLAYERS; i++)
    {
        if(IsPlayerConnected(i))
        {
            if(JatekosInfo[playerid][AdminSzint] >= 1)
            {
               GetPlayerName(i, sendername, sizeof(sendername));
               if(JatekosInfo[playerid][AdminSzint] == 1)format(string, 128, \"%s|- Név: %s | ID: %d | Szint: 1 | Rang: VIP -|\\n\", string,sendername, i);
               else if(JatekosInfo[playerid][AdminSzint] == 2)format(string, 128, \"%s|- Név: %s | ID: %d | Szint: 2 | Rang: VIP -|\\n\", string,sendername, i);
               else if(JatekosInfo[playerid][AdminSzint] == 3)format(string, 128, \"%s|- Név: %s | ID: %d | Szint: 3 | Rang: VIP -|\\n\", string,sendername, i);
               else if(JatekosInfo[playerid][AdminSzint] == 4)format(string, 128, \"%s|- Név: %s | ID: %d | Szint: 4 | Rang: VIP -|\\n\", string,sendername, i);
               else if(JatekosInfo[playerid][AdminSzint] == 5)format(string, 128, \"%s|- Név: %s | ID: %d | Szint: 5 | Rang: VIP -|\\n\", string,sendername, i);
               else if(JatekosInfo[playerid][AdminSzint] == 6)format(string, 128, \"%s|- Név: %s | ID: %d | Szint: 6 | Rang: VIP -|\\n\", string,sendername, i);         
      count++;
            }
        }
        if(count != 0) ShowPlayerDialog(playerid, 303, DIALOG_STYLE_MSGBOX,\"Adminok\",string, \"Kilépés\",\"\");
        else
        {
            ShowPlayerDialog(playerid,303,DIALOG_STYLE_MSGBOX,\"Adminok\",\"Nincs online Admin!\",\"Kilép\",\"\");
        }
    }
    return 1;
}
« Utoljára szerkesztve: 2013. október 23. - 20:27:24 írta BoOy »

Nem elérhető Kovacs_Richard

  • 1743
  • HRP Fejlesztő
  • Discord: Kovacs_Richard#0321
    • Profil megtekintése
    • Hun Role Play Web
"Nincs admin a szerver" kijelzése
« Válasz #9 Dátum: 2013. október 23. - 20:25:31 »
0 Show voters
if(IsPlayerConnected(i))
strcat(strtext, string);

 
Igen mivel ezen a feltételen belül van...
a string formázó if-else if-eken beülre rakd vagy az elejére rakj egy strdel-t de inkább az elõbbit ajánlom
 

Ezt próbáld meg.. hátha.
 
CMD:admins(playerid,params[])
{
   new string[256],count = 0;
   new sendername[MAX_PLAYER_NAME];
   for(new i = 0;i < MAX_PLAYERS; i++)
   {
       if(IsPlayerConnected(i))
       {
           if(JatekosInfo[playerid][AdminSzint] >= 1)
           {
              GetPlayerName(i, sendername, sizeof(sendername));
              if(JatekosInfo[playerid][AdminSzint] == 1)format(string, 128, \"%s|- Név: %s | ID: %d | Szint: 1 | Rang: VIP -|\\n\", string,sendername, i);
              else if(JatekosInfo[playerid][AdminSzint] == 2)format(string, 128, \"%s|- Név: %s | ID: %d | Szint: 2 | Rang: VIP -|\\n\", string,sendername, i);
              else if(JatekosInfo[playerid][AdminSzint] == 3)format(string, 128, \"%s|- Név: %s | ID: %d | Szint: 3 | Rang: VIP -|\\n\", string,sendername, i);
              else if(JatekosInfo[playerid][AdminSzint] == 4)format(string, 128, \"%s|- Név: %s | ID: %d | Szint: 4 | Rang: VIP -|\\n\", string,sendername, i);
              else if(JatekosInfo[playerid][AdminSzint] == 5)format(string, 128, \"%s|- Név: %s | ID: %d | Szint: 5 | Rang: VIP -|\\n\", string,sendername, i);
              else if(JatekosInfo[playerid][AdminSzint] == 6)format(string, 128, \"%s|- Név: %s | ID: %d | Szint: 6 | Rang: VIP -|\\n\", string,sendername, i);
               ShowPlayerDialog(playerid, 303, DIALOG_STYLE_MSGBOX,\"Adminok\",string, \"Kilépés\",\"\");
      count++;
           }
       }
       else if(count == 0)
       {
           ShowPlayerDialog(playerid,303,DIALOG_STYLE_MSGBOX,\"Adminok\",\"Nincs online Admin!\",\"Kilép\",\"\");
       }
   }
   return 1;
}

 

[/quote]
 
ShowPlayerDialog(playerid, 303, DIALOG_STYLE_MSGBOX,\"Adminok\",string, \"Kilépés\",\"\");

 
ezt szerintem nem kéne a cikluson belülre rakni :)
Régóta nem tevékenykedem, mint SA-MP scripter.
HRP Fejlesztő.

Nem elérhető BoOy

  • 3209
  • 2013-as év szkriptere
    • Profil megtekintése
"Nincs admin a szerver" kijelzése
« Válasz #10 Dátum: 2013. október 23. - 20:27:53 »
0 Show voters
hopp. elírtam bocsi, módosítva!

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal