Komanda /admini.

MirzaMehmedovic Započeo Debug
pre 9 meseci
1,701
pregleda
8
postova
Ova tema je zaključana. Samo moderatori i administratori mogu odgovarati.
MirzaMehmedovic
Street Runner
pre 9 meseci
Naslov problema*: Komanda /admini.
Opis problema*: Prvi Admin na listi nikad nije AFK, cak i kada ide ESC ne pokazuje da je AFK. Dok svi ostali Admini koji su ispod prvog su uvijek AFK. Ne znam kako da rijesim to pa ako neko zna bilo bi super.
Pokušaj rešavanja*: ///
Deo programskog koda*:
YCMD:admini(playerid, params[], help)
{
    if(UlogovanProvera == 0) return SCM(playerid, -1,"* Moras se ulogovati da bi koristio ovu komandu!");
    new tempAdminData, idx = 0;
foreach(new i : Player)
{
if (PlayerInfo >= 1 || PlayerInfo == 1)
{
tempAdminData = i;
if(PlayerInfo == 1) { tempAdminData = 0; }
else { tempAdminData = PlayerInfo; }
idx++;
}
}
for (new i = 0; i <= idx; ++i)
{
for (new j = i + 1; j < idx; ++j)
{
if (tempAdminData < tempAdminData)
            {
tempAdminData ^= tempAdminData;
tempAdminData ^= tempAdminData;
tempAdminData ^= tempAdminData;
tempAdminData ^= tempAdminData;
tempAdminData ^= tempAdminData;
tempAdminData ^= tempAdminData;
}
}
}
new string;
strcat(string, "Ime\tDuznost\tLevel");
for(new i = 0; i < idx; ++i)
{
new pid = tempAdminData, atext;
strcat(string, "\n");
strcat(string, "{FFFFFF}");
if(IsPlayerPaused(pid))
{
strcat(string, GetName(pid)); strcat(string, " ");
strcat(string, ""CRVENA"");
strcat(string, "\t");
}
        else { strcat(string, GetName(pid)); strcat(string, "\t"); }
if(AdminDuty == 0) { strcat(string, ""CRVENA"Van Duznosti"); }
    if(AdminDuty == 1) { strcat(string, ""ZELENA"Na duznosti"); }
if(tempAdminData == 0) { format(atext, sizeof atext, "\tTest Admin"); }
else { format(atext, sizeof atext, "\t%d", tempAdminData); }
strcat(string, atext);
strcat(string, "\n");
}
ShowPlayerDialog(playerid, 418, DIALOG_STYLE_TABLIST_HEADERS, "Admini Online ()", string, "Izlaz", "");
return 1;
}


Debug informacije: ///
Fotografija problema u igri: https://imgur.com/a/rUZqGGY
Korišćene biblioteke (includes): ///
Dodatne informacije: ///
Emo
Kingpin
pre 9 meseci
Postavi kod na pastebin ili preko [pawn ] [/ pawn]
Kod

graph designer

MirzaMehmedovic
Street Runner
pre 9 meseci
Dodan kod.
MirzaMehmedovic
Street Runner
pre 9 meseci
Jos uvijek nije fixano, da li ima neko ko zna ?
Raskiselišelitiseopanci
Enforcer
pre 9 meseci
for (new i = 0; i < idx; ++i)
oh god
musoviich
Hustler
pre 9 meseci
Zameni liniju:
for (new i = 0; i <= idx; ++i)

sa:
for (new i = 0; i < idx; ++i)
MirzaMehmedovic
Street Runner
pre 9 meseci
YCMD:admini(playerid, params[], help)
{
    if(UlogovanProvera == 0) return SCM(playerid, -1,"* Moras se ulogovati da bi koristio ovu komandu!");
    new tempAdminData, idx = 0;
foreach(new i : Player)
{
if (PlayerInfo >= 1 || PlayerInfo == 1)
{
tempAdminData = i;
if(PlayerInfo == 1) { tempAdminData = 0; }
else { tempAdminData = PlayerInfo; }
idx++;
}
}
for (new i = 0; i < idx; ++i)
{
for (new j = i + 1; j < idx; ++j)
{
if (tempAdminData < tempAdminData)
            {
tempAdminData ^= tempAdminData;
tempAdminData ^= tempAdminData;
tempAdminData ^= tempAdminData;
tempAdminData ^= tempAdminData;
tempAdminData ^= tempAdminData;
tempAdminData ^= tempAdminData;
}
}
}
new string;
strcat(string, "Ime\tDuznost\tLevel");
for(new i = 0; i < idx; ++i)
{
new pid = tempAdminData, atext;
strcat(string, "\n");
strcat(string, "{FFFFFF}");
if(IsPlayerPaused(pid))
{
strcat(string, GetName(pid)); strcat(string, " ");
strcat(string, ""CRVENA"");
strcat(string, "\t");
}
        else { strcat(string, GetName(pid)); strcat(string, "\t"); }
if(AdminDuty == 0) { strcat(string, ""CRVENA"Van Duznosti"); }
    if(AdminDuty == 1) { strcat(string, ""ZELENA"Na duznosti"); }
if(tempAdminData == 0) { format(atext, sizeof atext, "\tTest Admin"); }
else { format(atext, sizeof atext, "\t%d", tempAdminData); }
strcat(string, atext);
strcat(string, "\n");
}
ShowPlayerDialog(playerid, 418, DIALOG_STYLE_TABLIST_HEADERS, "Admini Online ()", string, "Izlaz", "");
return 1;
}


Zamjenio sam i jos uvijek mi pokazuje da su svi Admini AFK osim prvog na listi.
marko077
Underboss
pre 9 meseci

YCMD:admini(playerid, params[], help)
{
    if(UlogovanProvera == 0) return SCM(playerid, -1,"* Moras se ulogovati da bi koristio ovu komandu!");
    new string[ 1024 ];
    new aLevel;
    foreach(new i : Player)
    {
        if (PlayerInfo >= 1 || PlayerInfo == 1)
        {   
            if( PlayerInfo[ i ][ pAdmin >= 1]) aLevel = PlayerInfo[ i ][pAdmin ];
            else aLevel = PlayerInfo[ i ][ pTAdmin ];
            if( !IsPlayerPaused( playerid ))
                format(string, sizeof string, "%s%s\t%s\t%d\n"\
                    ,string
                    , GetName( i )
                    , AdminDuty == 0 ? "Van Duznosti" : "Na Duznosti"
                    , aLevel);
            else
                format(string, sizeof string, "%s%s"CRVENA"[ AFK]\t"BELA"%s\t%d\n"\
                    , string
                    , GetName( i )
                    , AdminDuty == 0 ? "Van Duznosti" : "Na Duznosti"
                    , aLevel);       
        }
    }
   
    new string2;
    strcat(string2, "Ime\tDuznost\tLevel\n");
    strcat(string2, string );
   
    ShowPlayerDialog(playerid, 418, DIALOG_STYLE_TABLIST_HEADERS, "Admini Online ()", string2, "Izlaz", "");
    return 1;
}



Trebalo bi da radi 🙂
Nisam testao, jer nemam samp compiler kod sebe, prilagodi kod onome sto zelis i ne komplikuj osnovne komande.

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava