Problem(error/warning): Problem je u tome kada ja udjem na server meni server dodeli id 0, zatim kada moj prijatelj udje njemu normalno dodeli id 1, prvo sam ovo primetio na admin listi (/admini), Moj prijatelj i ja imamo setanog admina, i vidimo se na listi, ali kada ja kao id 0 izadjem sa servera, ja ostanem na admin listi, pise mi id 0, admin level, ali ime ne prikazuje, a zatim kada udjem na server meni vraca id 0 i tjt, a kada moj prijatelj koji je id 1 njemu sve normalno radi, kada izadje nestane s liste i tjt, ako ima neko ko zna neka pomogne.
Deo skripte: [pawn]Dacu sta bude trebalo[/pawn]
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log): Nista//
Whaaaat?
Prvom igraču koji se konektuje na server naravno da će mu dodijeliti ID 0, svakom narednom za 1 više.
Dalje, pojasni bolje u vezi admin liste, ti kao id 0 ostaješ na listi i kada se disconnectuješ ili šta?
Pošalji komandu ovdje i bolje objasni.
Posalji komandu za admin listu
Citat: daddy. poslato Avgust 18, 2020, 17:29:08 POSLE PODNE
Whaaaat?
Prvom igraču koji se konektuje na server naravno da će mu dodijeliti ID 0, svakom narednom za 1 više.
Dalje, pojasni bolje u vezi admin liste, ti kao id 0 ostaješ na listi i kada se disconnectuješ ili šta?
Pošalji komandu ovdje i bolje objasni.
Da dodeli mu id 0 to ok, ali kada se disconnektujem kao id 0 ja ostajem na admin listi bez imena, nije do komande jer sam i pregledavao u drugim skriptama da li se razlikuje i nije do toga, ne znam jel bi moglo da bude do nekog include-a. Jos nesto, imam komandu srecni id, koja proverava koliko ima online igraca, i daje im nagradu, ja kad se disconnectujem, moj prijatelj ostane sam na serveru, i komanda ucitava kao da je i id 0 na serveru..
Postavi komandu ovdje da vidimo
Citat: daddy. poslato Avgust 18, 2020, 17:42:24 POSLE PODNE
Postavi komandu ovdje da vidimo
[pawn]CMD:admini(playerid, params[])
{
new string[1024],atext[20];
format(string, sizeof(string), "");
for(new i = 0; i <= GetPlayerPoolSize(); i++)
{
if (PlayerInfo
[pAdmin] >= 1)
{
format(atext, sizeof(atext), "{FFFFFF}ID: %d ", i);
strcat(string, atext);
strcat(string, "{607ca8}| ");
strcat(string, "{FFFFFF}");
strcat(string, GetName(i));
strcat(string, "{607ca8} | ");
if(PlayerInfo[playerid][pAdmin] == 10)
{
format(atext, sizeof(atext), "{FFFFFF}Vlasnik ");
strcat(string, atext);
}
else if(PlayerInfo[playerid][pAdmin] > 0 && PlayerInfo[playerid][pAdmin] < 8)
{
strcat(string, "{FFFFFF}Admin Level: ");
format(atext, sizeof(atext), "%d ", PlayerInfo[pAdmin]);
strcat(string, atext);
}
if(AdminDuty == 0)
{
strcat(string, "{607ca8}| {FFFFFF}Duty: {f81414}Off");
}
if(AdminDuty == 1)
{
strcat(string, "{607ca8}| {FFFFFF}Duty: {00ff04}On");
}
strcat(string, "\n");
}
}
if(strlen(string) == 0) return Error(playerid, "{FFFFFF}Trenutno nema online Admina!");
g_SPD(playerid, D_STLIST, DIALOG_STYLE_MSGBOX, "{607ca8}Online Administratori", string, "OK", "");
return 1;
}[/pawn]
[pawn]CMD:admins(playerid, params[])
{
new count = 0, string19[256];
SendClientMessage(playerid, COLOR_GREEN, "");
SendClientMessage(playerid, COLOR_GREEN, "|======== Online Admins =======|");
for(new i = 0; i < MAX_PLAYERS; i ++)
{
if(IsPlayerConnected(i))
{
if(pInfo[Adminlevel] == 1)
{
format(string19, sizeof(string19), "Trial Moderator : %s (%i)",GetName(i), i);
SendClientMessage(playerid, COLOR_WHITE, string19);
count++;
}
if(pInfo[Adminlevel] == 2)
{
format(string19, sizeof(string19), "Moderator : %s (%i)",GetName(i), i);
SendClientMessage(playerid, COLOR_WHITE, string19);
count++;
}
if(pInfo[Adminlevel] == 3)
{
format(string19, sizeof(string19), "Admin : %s (%i)",GetName(i), i);
SendClientMessage(playerid, COLOR_WHITE, string19);
count++;
}
if(pInfo[Adminlevel] == 4)
{
format(string19, sizeof(string19), "Server Manager : %s (%i)",GetName(i), i);
SendClientMessage(playerid, COLOR_WHITE, string19);
count++;
}
if(pInfo[Adminlevel] == 5)
{
format(string19, sizeof(string19), "Server Owner : %s (%i)",GetName(i), i);
SendClientMessage(playerid, COLOR_WHITE, string19);
count++;
}
}
}
if(count == 0)
SendClientMessage(playerid, COLOR_WHITE, "- No Admins Online at this Time!");
SendClientMessage(playerid, COLOR_GREEN, "|==============================|");
SendClientMessage(playerid, COLOR_GREEN, "");
return 1;
}
stock GetName(playerid)
{
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, MAX_PLAYER_NAME);
return pname;
}[/pawn]
https://forum.sa-mp.com/showthread.php?t=568180
Citat: N.D poslato Avgust 18, 2020, 17:57:01 POSLE PODNE
[pawn]CMD:admins(playerid, params[])
{
new count = 0, string19[256];
SendClientMessage(playerid, COLOR_GREEN, "");
SendClientMessage(playerid, COLOR_GREEN, "|======== Online Admins =======|");
for(new i = 0; i < MAX_PLAYERS; i ++)
{
if(IsPlayerConnected(i))
{
if(pInfo[Adminlevel] == 1)
{
format(string19, sizeof(string19), "Trial Moderator : %s (%i)",GetName(i), i);
SendClientMessage(playerid, COLOR_WHITE, string19);
count++;
}
if(pInfo[Adminlevel] == 2)
{
format(string19, sizeof(string19), "Moderator : %s (%i)",GetName(i), i);
SendClientMessage(playerid, COLOR_WHITE, string19);
count++;
}
if(pInfo[Adminlevel] == 3)
{
format(string19, sizeof(string19), "Admin : %s (%i)",GetName(i), i);
SendClientMessage(playerid, COLOR_WHITE, string19);
count++;
}
if(pInfo[Adminlevel] == 4)
{
format(string19, sizeof(string19), "Server Manager : %s (%i)",GetName(i), i);
SendClientMessage(playerid, COLOR_WHITE, string19);
count++;
}
if(pInfo[Adminlevel] == 5)
{
format(string19, sizeof(string19), "Server Owner : %s (%i)",GetName(i), i);
SendClientMessage(playerid, COLOR_WHITE, string19);
count++;
}
}
}
if(count == 0)
SendClientMessage(playerid, COLOR_WHITE, "- No Admins Online at this Time!");
SendClientMessage(playerid, COLOR_GREEN, "|==============================|");
SendClientMessage(playerid, COLOR_GREEN, "");
return 1;
}
stock GetName(playerid)
{
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, MAX_PLAYER_NAME);
return pname;
}[/pawn]
https://forum.sa-mp.com/showthread.php?t=568180
Brate nije meni to problem, ne citas lepo, ja kada izadjem meni cuva id 0, i zato mi ispisuje na admin listi, nije problem do admin liste, vec do necega sto ima veze s onplayerdisconnect/onplayerconnect a ne znam sta..
Citat: unkown337 poslato Avgust 18, 2020, 17:59:20 POSLE PODNE
Brate nije meni to problem, ne citas lepo, ja kada izadjem meni cuva id 0, i zato mi ispisuje na admin listi, nije problem do admin liste, vec do necega sto ima veze s onplayerdisconnect/onplayerconnect a ne znam sta..
Pa posalji nam onda to , objasnio si gore toliko nepovazano...
Verovatno ti fali sačuvavanje negde sa sve igrače tj
[pawn]
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
}
}
return 1;
}
[/pawn]
Bolje koristi foreach umesto ovoga.
Pročitaj na wiki šta vraća funkcija `GetPlayerPoolSize()`
[pawn]
for (new i = GetPlayerPoolSize(); i >= 0; i --) {
if (IsPlayerConnected(i)) {
...
}
}
[/pawn]
Citat: Terza Lazarevic poslato Avgust 18, 2020, 19:10:05 POSLE PODNE
Bolje koristi foreach umesto ovoga.
Pročitaj na wiki šta vraća funkcija `GetPlayerPoolSize()`
[pawn]
for (new i = GetPlayerPoolSize(); i >= 0; i --) {
if (IsPlayerConnected(i)) {
...
}
}
[/pawn]
Resio sam s admin listom, umesto getplayerpoolsize stavio sam foreach, ja sam zamenio sve getplayerpoolsize funkcije s foreach, jel to dobro ili?
Citat: unkown337 poslato Avgust 18, 2020, 19:19:15 POSLE PODNE
Resio sam s admin listom, umesto getplayerpoolsize stavio sam foreach, ja sam zamenio sve getplayerpoolsize funkcije s foreach, jel to dobro ili?
Da