Jump to content
  • 0

pomoc /dann && /admins


Stellet

Dotaz

Ahoj můžu se zeptat jak udělat /dann na určitý čas, že prostě dám třeba v sekundách /dann Ahoj 60 a až za těch 60sekund zmizne ? 

 

 

Ještě mám Admins (Ano vzal jsem si ho z TT15 protože mě zaujal :) )

Jenže dělá to neplechu, když má mít hodnost což nastavenou mám, tak je problém v tom že není v Admins

 ukáže to toto: sa-mp-019.png

 

ALe když má:

if(PlayerInfo[i][pAdmin] == 1 && !IsPlayerAdmin(i) && !strcmp(hodnost[i],"žádná",true))
       {
format(s2,120,"\n{FFFFFF}[ id %d ] {CCFF00}%s {FFFFFF}[ Event Master ] ",i,Jmeno(i));
strcat(string,s2);
       }
Ostatní code:
 

stock ViewAdmins(playerid)
{
    if(IsPlayerConnected(playerid))
{
   new pocet; pocet = 0;
   for(new i=0;i<MAX_PLAYERS;i++)
   {
       if(IsPlayerConnected(i) && PlayerInfo[i][pAdmin] > 0)
       {
           pocet++;
       }
   }
   if(pocet == 0)
   {
            ShowPlayerDialog(playerid,D_ADMINS,DIALOG_STYLE_MSGBOX,"Administrátoři online","{E10000}[  Offline  ] {FFFFFF}Není online žádný Administrátor","Ok","");
return 1;
   }
   new string[800],s2[170];
   format(string,800,"{E10000}Administratori online:");
        for(new i=0;i<MAX_PLAYERS;i++)
   {
if(IsPlayerConnected(i))
         {
       if(PlayerInfo[i][pAdmin] == 1 && !IsPlayerAdmin(i) && !strcmp(hodnost[i],"žádná",true))
       {
format(s2,120,"\n{FFFFFF}[ id %d ] {CCFF00}%s {FFFFFF}[ Event Master ] ",i,Jmeno(i));
strcat(string,s2);
       }
       if(PlayerInfo[i][pAdmin] == 2 && !IsPlayerAdmin(i) && strcmp(hodnost[i],"žádná",true))
       {
format(s2,170, "\n{FFFFFF}[ id %d ] {CCFF00}%s {FFFFFF}[Administrátor] [ %s ] ",i,Jmeno(i),hodnost[i]);
strcat(string,s2);
       }
       if(PlayerInfo[i][pAdmin] == 3 && !IsPlayerAdmin(i) && strcmp(hodnost[i],"žádná",true))
       {
format(s2,170, "\n{FFFFFF}[ id %d ] {CCFF00}%s {FFFFFF}[Administrátor] [ %s ] ",i,Jmeno(i),hodnost[i]);
strcat(string,s2);
       }
       if(PlayerInfo[i][pAdmin] == 4 && !IsPlayerAdmin(i) && strcmp(hodnost[i],"žádná",true))
       {
format(s2,170, "\n{FFFFFF}[ id %d ] {CCFF00}%s {FFFFFF}[Administrátor] [ %s ] ",i,Jmeno(i),hodnost[i]);
strcat(string,s2);
       }
       if(PlayerInfo[i][pAdmin] == 5 && !IsPlayerAdmin(i) && strcmp(hodnost[i],"žádná",true))
       {
format(s2,170, "\n{FFFFFF}[ id %d ] {CCFF00}%s {FFFFFF}[Hlavní Administrátor] [ %s ] ",i,Jmeno(i),hodnost[i]);
strcat(string,s2);
       }
}
}
   ShowPlayerDialog(playerid,D_ADMINS,DIALOG_STYLE_MSGBOX,"Administrátoři online",string,"Ok","");
}
    return 1;
}
Edited by FeedBoss
Link to comment
Share on other sites

1 odpověd na tuto otázku

Recommended Posts

  • 0

Ahoj.

Ohledně toho příkazu /dann budeš potřebovat timer. V návodech určitě na něj najdeš tutoriál.

 

Co se zobrazování online adminů týče, dá se to určitě napsat lépe. Máš tam spoustu přebytečného kódu, který se opakuje. Například by sis mohl vytvořit funkci, která vrátí hodnost (Admin, Hl. admin, ...)

Jinak, ve tvém případě máš tuhle chybu:

strcmp(hodnost[i],"žádná",true)

Funkce strcmp srovnává řetěze s jiným. Logickou chybu tam máš takovou, že aby se podmínka splnila, tak podle samp-wiki: 

 

 

1 o r -1 if some character do not match: string1 - string2 ('i' represents character index starting from 0);
difference in number of characters if one string matches only part of another string.

Tzn. aby se podmínka splnila, musíš to mít takhle:

strcmp(hodnost[i],"žádná",true) != 0

(Nesmí mít hodnost "žádná")

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...