[POMOC] Admin cuvanje

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

prethodna tema - sledeća tema

0 članova i 3 gostiju 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.
[pawn]new INI:File = INI_Open(textic);[/pawn]

Ovo.
[pawn]INI_SetTag(File, "data");[/pawn]

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.
[pawn]new INI:File = INI_Open(textic);[/pawn]

Ovo.
[pawn]INI_SetTag(File, "data");[/pawn]

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

[pawn]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[aIme], ime, true) == 0)
      {
      PI[igr][pAdmin] = lvl;
      AdminInfo[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[aIme], ime, 0, strlen(ime), MAX_PLAYER_NAME);
      strmid(AdminInfo[aPas], pas, 0, strlen(pas), 60);
      AdminInfo[aRank] = lvl;
      AdminInfo[aStanje] = 0;
      AdminInfo[aNeakt] = 0;
      strmid(AdminInfo[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;
}[/pawn]

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

[pawn]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[aIme], ime, true) == 0)
      {
      PI[igr][pAdmin] = lvl;
      AdminInfo[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[aIme], ime, 0, strlen(ime), MAX_PLAYER_NAME);
      strmid(AdminInfo[aPas], pas, 0, strlen(pas), 60);
      AdminInfo[aRank] = lvl;
      AdminInfo[aStanje] = 0;
      AdminInfo[aNeakt] = 0;
      strmid(AdminInfo[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;
}[/pawn]
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.
[pawn]PI[playerid][pAdmin] = level;[/pawn]