[Pomoc] Problem oko loginovanja sa GM levelom

Započeo DeBlack, Avgust 28, 2011, 22:52:57 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim: Moja
Detaljan opis problema: Pa imam 2 problema... 1: Kada si dadnem GameMastera i odem relog, vise mi neostane kada dodjem na server.. 2: kada upisem /gamemasteri izbaci mi online gamemastere al nece da pokaze GM-a nivo 4... GM lvl 1,2,3 pokaze al 4 nece s ubacim i njega u skriptu....
Dio skripte:
1. problem ( nece da ostane gm )

format(string2, sizeof(string2), "{00A9FF}Admin {00A9FF}Level: {FFFFFF}%d",PlayerInfo[playerid][pAdmin]);
SendClientMessage(playerid, COLOR_LIGHTBLUE,string2);
format(string2, sizeof(string2), "{00FF00}GameMaster {00FF00}Level: {FFFFFF}%d",PlayerInfo[playerid][pGameMaster]);
SendClientMessage(playerid, COLOR_LIGHTBLUE,string2);


2. problem ( nece da pokaze gm nivo 4 )
if (strcmp(cmd, "/gamemasteri", true) == 0)
{
        if(IsPlayerConnected(playerid))
    {
        SendClientMessage(playerid, COLOR_LIGHTGREEN, " ");
        SendClientMessage(playerid, COLOR_LIGHTGREEN, "{00FF00}|______Online GameMasteri______|");
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
    if(PlayerInfo[i][pGameMaster] >= 1 && PlayerInfo[i][pGameMaster] < 4)
    {
        new admtext[64];
        if(PlayerInfo[i][pGameMaster] == 4) { admtext = "{00FF00}, Gamemaster nivo: {FFFFFF}4"; }
else if(PlayerInfo[i][pGameMaster] == 3) { admtext = "{00FF00}, Gamemaster nivo: {FFFFFF}3"; }
else if(PlayerInfo[i][pGameMaster] == 2) { admtext = "{00FF00}, Gamemaster nivo: {FFFFFF}2"; }
else if(PlayerInfo[i][pGameMaster] == 1) { admtext = "{00FF00}, Gamemaster nivo: {FFFFFF}1"; }
GetPlayerName(i, sendername, sizeof(sendername));
if(GameMasterDuty[i] == 0)
{
format(string, 256, "{FFFFFF}%s {FFFFFF}%s ", sendername, admtext);
SendClientMessage(playerid, COLOR_LIGHTGREEN, string);
}
else
{
    format(string, 256, "{FFFFFF}%s  {FFFFFF}%s ", sendername, admtext);
SendClientMessage(playerid, COLOR_LIGHTGREEN, string);
}
}
}
}
}
return 1;
}

Neke slike/video za lakse dobivanje pomoci(neobavezno)://[color]
      
DeBlack | Mapper | PS User

if(PlayerInfo[i][pGameMaster] >= 1 && PlayerInfo[i][pGameMaster] <= 4)

zamijeni sa tvojim.
Poslednja Izmena: Avgust 28, 2011, 22:56:52 POSLE PODNE od Partybreaker


Server IP: 193.192.58.82:7782
Forum: www.balkan-underline.info


1 problem ) nisam siguran sta treba da se doda pod onplayerupdate jer nisam kuci,uzmi pod tim callbackom kod od admina i samo umesto pAdmin ili kako ti je vec prebaci u pGameMaster...



2 problem) umesto

if(PlayerInfo[i][pGameMaster] >= 1 && PlayerInfo[i][pGameMaster] < 4)

stavi

if(PlayerInfo[i][pGameMaster] >= 1 && PlayerInfo[i][pGameMaster] < 5)
Poslednja Izmena: Avgust 28, 2011, 22:59:48 POSLE PODNE od [TG]Nxidza

Moze i ovako kako sam mu ja napisao. :)

Isto ti je kako god da ga stavis.


Server IP: 193.192.58.82:7782
Forum: www.balkan-underline.info


Nije isto pokazati cemu samo do lvla 3 daj nam onplayerregister i onplayerlogin

Citat: - Nickâ,,¢ poslato Avgust 28, 2011, 23:05:51 POSLE PODNE
Nije isto pokazati cemu samo do lvla 3 daj nam onplayerregister i onplayerlogin
Sta bre ti covece pricas?
Testiraj pa vidi .

ovo

if(PlayerInfo[i][pGameMaster] >= 1 && PlayerInfo[i][pGameMaster] <= 4)

i ovo

if(PlayerInfo[i][pGameMaster] >= 1 && PlayerInfo[i][pGameMaster] < 5)

je isto.

Ocito ne poznajes znakove manje,vece,manje ili jednako,vece ili jednako. :S


Server IP: 193.192.58.82:7782
Forum: www.balkan-underline.info


Vidis li da je problem u tome sto mu ne spema GMA nisi shvatio ocito zato sam trazio onplayerlogin i onplayerregister

Citat: - Nickâ,,¢ poslato Avgust 28, 2011, 23:11:50 POSLE PODNE
Vidis li da je problem u tome sto mu ne spema GMA nisi shvatio ocito zato sam trazio onplayerlogin i onplayerregister

Pricaj malo jasnije.

Ja sam mu dao rjesenje za ovaj drugi problem ili ti /gamemasteri.

Savrseno sam ja shvatio.


Server IP: 193.192.58.82:7782
Forum: www.balkan-underline.info


Citat: - Nickâ,,¢ poslato Avgust 28, 2011, 23:11:50 POSLE PODNE
Vidis li da je problem u tome sto mu ne spema GMA nisi shvatio ocito zato sam trazio onplayerlogin i onplayerregister
Covece to su 2 razlicita problema,rekao sam mu za prvi problem resenje ,a to je da nije stavio pod onplayerupdate ili kako vec glasi taj callback,a za ovo drugo partybreaker i ja smo mu dali resenje .

2. problem rijesen ( u mene stajo zna > 4 umjesto >=4 i zato nije pokazivalo -.- , thx momci)... a 1. neznam jos nista, nek se uradi bilo kako samo da GM nivo ostaje nakon reloga... Hvala unapred
      
DeBlack | Mapper | PS User

Ok brate nisam dobro vidio nabrzinu sam procitao sta odma divljas  :-[ :-[

Citat: DeBlack poslato Avgust 28, 2011, 23:14:42 POSLE PODNE
2. problem rijesen ( u mene stajo zna > 4 umjesto >=4 i zato nije pokazivalo -.- , thx momci)... a 1. neznam jos nista, nek se uradi bilo kako samo da GM nivo ostaje nakon reloga... Hvala unapred
gledaj,odes na callback onplayerupdate valjda se tako zove, onda vidis nesto vezano za pAdmin ,kopiras to i nalepis ispod,i svugde gde je pAdmin stavi pGameMaster,compajlaj i to je to,razumes ? =)

Za vas koji neznate cemu sluzi koji aritmeticki simbol: http://balkan-samp.com/forum/index.php?topic=15196.0

OnPlayerUpdate NIJE preporucljivo koristiti za updateanja igracevih statsa, jer se OnPlayerUpdate koristi vise od 5 puta u sekundi, sto znaci da se vise od 5 puta u sekundi zapisuje u igracev file, sto je jako losa optimizacija.

Ostalo je Nxidza objasnio.
Aequam memento rebus in arduis servare mentem.

Rodjo .. Ja cu ti najlakse Objasnit ! :P

Znaci idi CTRL + f i upisi public OnPlayerUpdate(playerid)

Kad si naso ima dole ovo

if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid])
{
new string3[64];
new playername3[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername3, sizeof(playername3));
format(string3, sizeof(string3), "users/%s.ini", playername3);
new File: hFile = fopen(string3, io_write);
if (hFile)
{
new var[64];
format(var, 64, "Key=%s\n", PlayerInfo[playerid][pKey]);fwrite(hFile, var);
PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid);
format(var, 64, "Level=%d\n",PlayerInfo[playerid][pLevel]);fwrite(hFile, var);
format(var, 64, "AdminLevel=%d\n",PlayerInfo[playerid][pAdmin]);fwrite(hFile, var);

ima toga jos al ovo je dosta
Sad Ispod
format(var, 64, "AdminLevel=%d\n",PlayerInfo[playerid][pAdmin]);fwrite(hFile, var);

Dodaj ovo
format(var, 64, "GameMasterLevel=%d\n",PlayerInfo[playerid][pGameMaster]);fwrite(hFile, var);

i to je to :D nadam se da sam ti pomogo rodjoo :D
Poslednja Izmena: Avgust 29, 2011, 00:58:41 PRE PODNE od William Johnson