Skripta koju koristim: RPG/DM ~ Moja
Detaljan opis problema: Ovako, kada stisnem TAB ne pokazje mi lvle, tj pokazuje ali svi su Lvl 0, tako isto respekti imam 3 / 2 respekta, ide dalje znaÄi, ne dobivam lvl up. Hitno mi to treba.
Dio skripte:
new nxtlevel = PlayerInfo[playerid][pLevel];
new expamount = nxtlevel*levelexp;
new levelpayday = PlayerInfo[targetid][pLevel];
new moneypaydayy = 100*levelpayday;
public paydaycheck(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i ++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[i][pLevel] >= 0)
{
new string[197];
new nxtlevel = PlayerInfo[playerid][pLevel];
new expamount = nxtlevel*levelexp;
new infostring[256];
if (PlayerInfo[i][pExp] < expamount)
{
format(infostring, 256, "ERROR: Nazalost trebas imati %d Respekta, a ti trenutno imas {FFFFFF}[%d]{FF0000}, te nisi dobio levelup!",expamount,PlayerInfo[i][pExp]);
SendClientMessage(i,COLOR_LIGHTRED, infostring);
return 1;
}
else
{
PlayerInfo[playerid][pLevel]++;
PlayerInfo[playerid][pExp] = 0;
SetPlayerScore(playerid, PlayerInfo[playerid][pLevel]);
GetPlayerScore(playerid);
format(string, sizeof(string), "INFO: Cestitamo, sada si %d level!", nxtlevel);
PlayerPlaySound(i, 1052, 0.0, 0.0, 0.0);
SendClientMessage(i, COLOR_GOLD, string);
PlayerInfo[i][pLevel]++;
}
}
}
}
return 1;
}
Neke slike/video za lakse dobivanje pomoci(neobavezno): //
Probaj komandom /kupilevel ili tako nesto slicno!
Nema brate te komande.
Citat: LukenziOTO poslato Avgust 09, 2012, 00:13:44 PRE PODNE
postavi pod onplayerspawn
SetPlayerScore(playerid, PlayerInfo[playerid][pLevel]);
ti si fail
to samo postavlja scor identican levelu
@
probaj ovako
new nxtlevel = PlayerInfo[playerid][pLevel];
new expamount = nxtlevel*levelexp;
new levelpayday = PlayerInfo[targetid][pLevel];
new moneypaydayy = 100*levelpayday;
public paydaycheck(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i ++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[i][pLevel] >= 0)
{
new string[197];
new nxtlevel = PlayerInfo[playerid][pLevel];
new expamount = nxtlevel*levelexp;
new infostring[256];
if (PlayerInfo[i][pExp] < expamount)
{
format(infostring, 256, "ERROR: Nazalost trebas imati %d Respekta, a ti trenutno imas {FFFFFF}[%d]{FF0000}, te nisi dobio levelup!",expamount,PlayerInfo[i][pExp]);
SendClientMessage(i,COLOR_LIGHTRED, infostring);
return 1;
}
else if (PlayerInfo[i][pExp] >= expamount)
{
PlayerInfo[playerid][pLevel]++;
PlayerInfo[playerid][pExp] = 0;
SetPlayerScore(playerid, PlayerInfo[playerid][pLevel]);
GetPlayerScore(playerid);
format(string, sizeof(string), "INFO: Cestitamo, sada si %d level!", nxtlevel);
PlayerPlaySound(i, 1052, 0.0, 0.0, 0.0);
SendClientMessage(i, COLOR_GOLD, string);
PlayerInfo[i][pLevel]++;
}
}
}
}
return 1;
}
Lukenzi radi to, ali kad sebi dam lvl 2 npr, i dalje mi ostaje 1. Tu treba neki Update ?
@Ninex sad ću probat.
Jeli to ono kad imam respekte 2/2 da dobijem lvl 2 il' ?
Probaj ovako trebalo bi raditi
new levelpayday = PlayerInfo[targetid][pLevel];
new moneypaydayy = 100*levelpayday;
public paydaycheck()
{
foreach(Player, i)
{
new string[200];
new nxtlevel = PlayerInfo[i][pLevel];
new expamount = nxtlevel*levelexp;
if(PlayerInfo[i][pExp] >= nxtlevel)
{
PlayerInfo[i][pLevel]++;
PlayerInfo[i][pExp] = 0;
SetPlayerScore(i, PlayerInfo[i][pLevel]);
GetPlayerScore(i);
format(string, sizeof(string), "INFO: Cestitamo, sada si %d level!", nxtlevel);
SendClientMessage(i, COLOR_GOLD, string);
PlayerPlaySound(i, 1052, 0.0, 0.0, 0.0);
}
}
return 1;
}