[POMOC] Admin cuvanje


Započeo Mile_Anderson, Jun 19, 2016, 08:53:00 PRE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim: LoC
Detaljan opis problema: Pa kada dam sebi admina,nece da mi sacuva ...isto tako daje mi neke codove lupam 21 a i ne trazi mi prilikom logovanja,po meni je ovo sve ok nzm sta ne stima.. ???
Dio skripte:
YCMD:postaviadmina(playerid, params[],help)
{
    #pragma unused help
    if(UlogovanProvera[playerid] == 0) return SCM(playerid,-1,""JCRVENA"ERROR: "SVCRVENA"Moras se ulogovati da bi koristio ovu komandu!");
	if(PI[playerid][pAdmin] < 6) return SCM(playerid,-1,""JCRVENA"ERROR: "SVCRVENA"Samo Vlasnik!");
	new igr, lvl, pas[60], zdz[60], str1[100], str2[100], ime[MAX_PLAYER_NAME]; new textic[64];
	if(sscanf(params, "uis[60]s[60]", igr, lvl, pas, zdz)) return SCM(playerid, -1,""SIVA"USE: "BELA"/makeadmin [ID/ime] [level] [lozinka] [zaduzenje]");
	if(igr == IPI) return SCM(playerid, -1, "Igrac je offline.");
	GetPlayerName(igr, ime, sizeof(ime));
	if(PI[igr][pAdmin] != 0)
	{
		for(new i = 1; i < MAX_ADMINS; i++)
		{
		if(strcmp(AdminInfo[i][aIme], ime, true) == 0)
		{
		PI[igr][pAdmin] = lvl;
		AdminInfo[i][aRank] = lvl;
		SaveAdmin(i);
		}
		}
	}
	else
	{
	PI[igr][pAdmin] = lvl;
	for(new i = 1; i < MAX_ADMINS; i++)
	{
		format(textic, sizeof(textic), "Admini/Admin_%d.ini", i);
		if(!fexist(textic))
		{
		strmid(AdminInfo[i][aIme], ime, 0, strlen(ime), MAX_PLAYER_NAME);
		strmid(AdminInfo[i][aPas], pas, 0, strlen(pas), 60);
		AdminInfo[i][aRank] = lvl;
		AdminInfo[i][aStanje] = 0;
		AdminInfo[i][aNeakt] = 0;
		strmid(AdminInfo[i][aZaduz], zdz, 0, strlen(zdz), 60);
		fopen(textic, io_write);
		SaveAdmin(i);
		i = 998;
		}
	}
	}
	format(str1, sizeof(str1), ""GLAVNA"(LoC): "BELA"Administrator %s vas je promovisao u administratora level %d.", GetName(playerid), lvl);
	SCM(igr, -1, str1);
	SCM(playerid,-1,""SVCRVENA"---------------------------------------");
	SCM(playerid,-1,""BELA"               !  VAZNO  !                      ");
	SCM(playerid,-1," ");
	SCMF(playerid,-1,""BELA"           ADMIN SIFRA: %d                    ",pas);
	SCM(playerid,-1," ");
	SCM(playerid,-1,""BELA"Zapamtite ovaj kod! Inace, necete moci da se ulogujete kao admin!");
	SCM(playerid,-1,""SVCRVENA"---------------------------------------");
	format(str2, sizeof(str2), ""GLAVNA"(LoC): "BELA"Promovisali ste %s-u administratorski level %d.", GetName(igr), lvl);
	SCM(playerid, -1, str2);
	return 1;
}

stock SaveAdmin(i)
{
	new textic[64];
	format(textic, sizeof(textic), "Admini/Admin_%d.ini",i);// j
	if(fexist(textic))
	{
	new INI:File = INI_Open(textic);
	INI_WriteString(File, "Ime", AdminInfo[i][aIme]);
	INI_WriteString(File, "Pas", AdminInfo[i][aPas]);
	INI_WriteInt(File, "Rank", AdminInfo[i][aRank]);
	INI_WriteInt(File, "Stanje", AdminInfo[i][aStanje]);
	INI_WriteInt(File, "Neakt", AdminInfo[i][aNeakt]);
	INI_WriteString(File, "Zaduzenje", AdminInfo[i][aZaduz]);
	INI_Close(File);
	}
	return 1;
}
stock ProveriAdmina(playerid)
{
	new name[MAX_PLAYER_NAME];
	GetPlayerName(playerid, name, sizeof(name));
	for(new h = 1; h < MAX_ADMINS; h++)
	{
		new textic[64];
		format(textic, sizeof(textic), "Admini/Admin_%d.ini",h);
		if(fexist(textic))
		{
		if(strcmp(AdminInfo[h][aIme],name, true) == 0 && PI[playerid][pAdmin] == 0)
		{
		SPD(playerid, DIALOG_ASIFRA, DIALOG_STYLE_INPUT, ""GLAVNA"Admin verifikacija!", ""BELA"Unesite svoju administracioski kod da biste ste se prijavali kao administrator!", "Unesi", "Odustani");
		admin[playerid] = h;
		}
		}
	}
	return 1;
}
stock LoadAdmine()
{
	for(new h = 1; h < MAX_ADMINS; h++)
	{
	new textic[64];
	format(textic, sizeof(textic), "Admini/Admin_%d.ini",h);
	if(fexist(textic))
	{
	INI_ParseFile(textic, "LoadAdmin_%s", .bExtra = true, .extra = h);
	}
	}
}

Neke slike/video za lakse dobivanje pomoci(neobavezno): ///

Stavis ispod ovog.
new INI:File = INI_Open(textic);


Ovo.
INI_SetTag(File, "data");


Pa vidi sta ce biti mada gledam i ovu tvoju komandu sada jesi je zakomplikovao :D

Citat: â–... â–† â–ˆ Rudimental â–ˆ â–† â–... poslato Jun 19, 2016, 11:24:04 PRE PODNE
Stavis ispod ovog.
new INI:File = INI_Open(textic);


Ovo.
INI_SetTag(File, "data");


Pa vidi sta ce biti mada gledam i ovu tvoju komandu sada jesi je zakomplikovao :D
Nisam te razumeo gde stavljam ovo,ma Dowla je zakomplikovao zivot a ne komandu... >:(
EDIT:skontao

Ovako.
stock SaveAdmin(i)
{
	new textic[64];
	format(textic, sizeof(textic), "Admini/Admin_%d.ini",i);// j
	if (fexist(textic))
	{
		new INI:File = INI_Open(textic);
		INI_SetTag(File, "data");
		INI_WriteString(File, "Ime", AdminInfo[i][aIme]);
		INI_WriteString(File, "Pas", AdminInfo[i][aPas]);
		INI_WriteInt(File, "Rank", AdminInfo[i][aRank]);
		INI_WriteInt(File, "Stanje", AdminInfo[i][aStanje]);
		INI_WriteInt(File, "Neakt", AdminInfo[i][aNeakt]);
		INI_WriteString(File, "Zaduzenje", AdminInfo[i][aZaduz]);
		INI_Close(File);
	}
	return 1;
}


Ali ja ovde buraz ne vidim varijablu pAdmin gde nju cuvas ?

Citat: â–... â–† â–ˆ Rudimental â–ˆ â–† â–... poslato Jun 19, 2016, 11:32:50 PRE PODNE
Ovako.
stock SaveAdmin(i)
{
	new textic[64];
	format(textic, sizeof(textic), "Admini/Admin_%d.ini",i);// j
	if (fexist(textic))
	{
		new INI:File = INI_Open(textic);
		INI_SetTag(File, "data");
		INI_WriteString(File, "Ime", AdminInfo[i][aIme]);
		INI_WriteString(File, "Pas", AdminInfo[i][aPas]);
		INI_WriteInt(File, "Rank", AdminInfo[i][aRank]);
		INI_WriteInt(File, "Stanje", AdminInfo[i][aStanje]);
		INI_WriteInt(File, "Neakt", AdminInfo[i][aNeakt]);
		INI_WriteString(File, "Zaduzenje", AdminInfo[i][aZaduz]);
		INI_Close(File);
	}
	return 1;
}


Ali ja ovde buraz ne vidim varijablu pAdmin gde nju cuvas ?
Iskreno da ti kazem ne znam ni sam gde je cuvam,samo da pogledam gde se cuva.. :'(
EDIT: ne cuvam je nigde...
Poslednja Izmena: Jun 19, 2016, 11:38:37 PRE PODNE od Darko Neskovicâ„¢

Pa kako onda da ti ostane admin ako je ne cuvas nigde :D Posto vidim da je na PI[playerid][pAdmin] nadji gde su slicne varijable za cuvanje pa sredi to. Eto primer za level kako je uradjeno da sacuva.

Citat: â–... â–† â–ˆ Rudimental â–ˆ â–† â–... poslato Jun 19, 2016, 11:59:26 PRE PODNE
Pa kako onda da ti ostane admin ako je ne cuvas nigde :D Posto vidim da je na PI[playerid][pAdmin] nadji gde su slicne varijable za cuvanje pa sredi to. Eto primer za level kako je uradjeno da sacuva.
Mislis na ovo
stock SavePlayer(playerid)
{
    if(UlogovanProvera[playerid] == 1)
	{
	    new INI:File = INI_Open(Korisnici(playerid));
	    INI_SetTag(File,"data");
		INI_WriteInt(File,"NovacDzep",PI[playerid][pNovacDzep]);
	    INI_WriteInt(File,"Admin",PI[playerid][pAdmin]);

pod onplayerdisconnect dodaj SavePlayer(playerid); i uzivaj, i pod ongamemodeexit
heroin rap - Moskri u kuci, od sledece lajne glava ce mi puci

Citat: ophion poslato Jun 19, 2016, 13:00:43 POSLE PODNE
pod onplayerdisconnect dodaj SavePlayer(playerid); i uzivaj, i pod ongamemodeexit
definisano mi vec -.- :'(

evo ovako kad dades sam sebi admin ne cuva? e ovako postavi i test ako ne bi budio to reci ovdje

YCMD:postaviadmina(playerid, params[],help)
{
    #pragma unused help
    if(UlogovanProvera[playerid] == 0) return SCM(playerid,-1,""JCRVENA"ERROR: "SVCRVENA"Moras se ulogovati da bi koristio ovu komandu!");
	if(PI[playerid][pAdmin] < 6) return SCM(playerid,-1,""JCRVENA"ERROR: "SVCRVENA"Samo Vlasnik!");
	new igr, lvl, pas[60], zdz[60], str1[100], str2[100], ime[MAX_PLAYER_NAME]; new textic[64];
	if(sscanf(params, "uis[60]s[60]", igr, lvl, pas, zdz)) return SCM(playerid, -1,""SIVA"USE: "BELA"/makeadmin [ID/ime] [level] [lozinka] [zaduzenje]");
	if(igr == IPI) return SCM(playerid, -1, "Igrac je offline.");
	GetPlayerName(igr, ime, sizeof(ime));
	if(PI[igr][pAdmin] != 0)
	{
		for(new i = 1; i < MAX_ADMINS; i++)
		{
		if(strcmp(AdminInfo[i][aIme], ime, true) == 0)
		{
		PI[igr][pAdmin] = lvl;
		AdminInfo[i][aRank] = lvl;
		SaveAdmin(i);
SaveAdmin(playerid);
		}
		}
	}
	else
	{
	PI[igr][pAdmin] = lvl;
	for(new i = 1; i < MAX_ADMINS; i++)
	{
		format(textic, sizeof(textic), "Admini/Admin_%d.ini", i);
		if(!fexist(textic))
		{
		strmid(AdminInfo[i][aIme], ime, 0, strlen(ime), MAX_PLAYER_NAME);
		strmid(AdminInfo[i][aPas], pas, 0, strlen(pas), 60);
		AdminInfo[i][aRank] = lvl;
		AdminInfo[i][aStanje] = 0;
		AdminInfo[i][aNeakt] = 0;
		strmid(AdminInfo[i][aZaduz], zdz, 0, strlen(zdz), 60);
		fopen(textic, io_write);
		SaveAdmin(i);
                SaveAdmin(playerid);
		i = 998;
		}
	}
	}
	format(str1, sizeof(str1), ""GLAVNA"(LoC): "BELA"Administrator %s vas je promovisao u administratora level %d.", GetName(playerid), lvl);
	SCM(igr, -1, str1);
	SCM(playerid,-1,""SVCRVENA"---------------------------------------");
	SCM(playerid,-1,""BELA"               !  VAZNO  !                      ");
	SCM(playerid,-1," ");
	SCMF(playerid,-1,""BELA"           ADMIN SIFRA: %d                    ",pas);
	SCM(playerid,-1," ");
	SCM(playerid,-1,""BELA"Zapamtite ovaj kod! Inace, necete moci da se ulogujete kao admin!");
	SCM(playerid,-1,""SVCRVENA"---------------------------------------");
	format(str2, sizeof(str2), ""GLAVNA"(LoC): "BELA"Promovisali ste %s-u administratorski level %d.", GetName(igr), lvl);
	SCM(playerid, -1, str2);
	return 1;
}

Citat: Ilcev1 poslato Jun 19, 2016, 17:29:36 POSLE PODNE
evo ovako kad dades sam sebi admin ne cuva? e ovako postavi i test ako ne bi budio to reci ovdje

YCMD:postaviadmina(playerid, params[],help)
{
    #pragma unused help
    if(UlogovanProvera[playerid] == 0) return SCM(playerid,-1,""JCRVENA"ERROR: "SVCRVENA"Moras se ulogovati da bi koristio ovu komandu!");
	if(PI[playerid][pAdmin] < 6) return SCM(playerid,-1,""JCRVENA"ERROR: "SVCRVENA"Samo Vlasnik!");
	new igr, lvl, pas[60], zdz[60], str1[100], str2[100], ime[MAX_PLAYER_NAME]; new textic[64];
	if(sscanf(params, "uis[60]s[60]", igr, lvl, pas, zdz)) return SCM(playerid, -1,""SIVA"USE: "BELA"/makeadmin [ID/ime] [level] [lozinka] [zaduzenje]");
	if(igr == IPI) return SCM(playerid, -1, "Igrac je offline.");
	GetPlayerName(igr, ime, sizeof(ime));
	if(PI[igr][pAdmin] != 0)
	{
		for(new i = 1; i < MAX_ADMINS; i++)
		{
		if(strcmp(AdminInfo[i][aIme], ime, true) == 0)
		{
		PI[igr][pAdmin] = lvl;
		AdminInfo[i][aRank] = lvl;
		SaveAdmin(i);
SaveAdmin(playerid);
		}
		}
	}
	else
	{
	PI[igr][pAdmin] = lvl;
	for(new i = 1; i < MAX_ADMINS; i++)
	{
		format(textic, sizeof(textic), "Admini/Admin_%d.ini", i);
		if(!fexist(textic))
		{
		strmid(AdminInfo[i][aIme], ime, 0, strlen(ime), MAX_PLAYER_NAME);
		strmid(AdminInfo[i][aPas], pas, 0, strlen(pas), 60);
		AdminInfo[i][aRank] = lvl;
		AdminInfo[i][aStanje] = 0;
		AdminInfo[i][aNeakt] = 0;
		strmid(AdminInfo[i][aZaduz], zdz, 0, strlen(zdz), 60);
		fopen(textic, io_write);
		SaveAdmin(i);
                SaveAdmin(playerid);
		i = 998;
		}
	}
	}
	format(str1, sizeof(str1), ""GLAVNA"(LoC): "BELA"Administrator %s vas je promovisao u administratora level %d.", GetName(playerid), lvl);
	SCM(igr, -1, str1);
	SCM(playerid,-1,""SVCRVENA"---------------------------------------");
	SCM(playerid,-1,""BELA"               !  VAZNO  !                      ");
	SCM(playerid,-1," ");
	SCMF(playerid,-1,""BELA"           ADMIN SIFRA: %d                    ",pas);
	SCM(playerid,-1," ");
	SCM(playerid,-1,""BELA"Zapamtite ovaj kod! Inace, necete moci da se ulogujete kao admin!");
	SCM(playerid,-1,""SVCRVENA"---------------------------------------");
	format(str2, sizeof(str2), ""GLAVNA"(LoC): "BELA"Promovisali ste %s-u administratorski level %d.", GetName(igr), lvl);
	SCM(playerid, -1, str2);
	return 1;
}

ne radi

Burazeru nemoj puno komplikovati oko sitnice, ako ti se level primer dobro sacuvava uradis istu varijablu kao za level gde treba da se cuva i sta imas u enumu jos da sredis i to je to zatim u komandu kojom dajes admina treba ti ovako nesto.
PI[playerid][pAdmin] = level;