[Ajuda] Sistema de level - Printable Version
+- SA-MP Forums Archive (
https://sampforum.blast.hk)
+-- Forum: Non-English (
https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (
https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (
https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Sistema de level (
/showthread.php?tid=571352)
Sistema de level -
FellypeR - 18.04.2015
#Resolvido, obg jonathan
Re: Sistema de level -
Vegassilva - 18.04.2015
Vocк estб falando tipo assim, Ser o player morrer o level dele ficara em -1 ?
Re: Sistema de level -
Fel486 - 18.04.2015
No mйtodo de abaixar EXP, coloca uma restriзгo:
Se EXP == 0, entгo EXP = 5 e Level -= 1.
Isso assumindo que volte pro level anterior com uma experiкncia a menos do que o necessбrio para subir novamente
Re: Sistema de level -
ProKillerpa - 18.04.2015
PHP код:
if(PlayerInfo[playerid][PlayerExp] == 0){
PlayerInfo[playerid][LevelP] -= 1
return 1;
}
Tente algo assim.
Re: Sistema de level -
FellypeR - 19.04.2015
Quote:
Originally Posted by Vegassilva
Vocк estб falando tipo assim, Ser o player morrer o level dele ficara em -1 ?
|
um exemplo:
Vc tem que ter 6/6 de xp pra upar de level, quando upa vai mudando 12/12, etc
aн quando o cara perde xp ele fica com -1/6 ao em vez de abaixar o level
Re: Sistema de level -
JonathanFeitosa - 19.04.2015
Seu cуdigo estб muito complicado. Organize seus cуdigos e torne ele mais limpo. Economizar linhas nгo vai melhorar desempenho(nesses casos).
PHP код:
//Ao Ganhar Exp.
PlayerInfo[playerid][PlayerExp] += 1;
if(PlayerInfo[playerid][PlayerExp] > PlayerInfo[playerid][LevelP]*6){ // Se chegar no limite
PlayerInfo[playerid][LevelP] += 1; // dar um level
PlayerInfo[playerid][PlayerExp] = 0; // reinicia o respeito
printf("Upou de Level! Respeito foi para: %d/%d", PlayerInfo[playerid][PlayerExp], PlayerInfo[playerid][LevelP]*6);
}
//Ao Perder Exp se ele jб tiver com Respeito 0..
if(PlayerInfo[playerid][PlayerExp] == 0) { // respeito 0
PlayerInfo[playerid][LevelP] -= 1; // tira um level
PlayerInfo[playerid][PlayerExp] = PlayerInfo[playerid][LevelP]*6; // adiciona experiencia mбxima
printf("Perdeu um Level por respeito baixo :/! Respeito: %d/%d", PlayerInfo[playerid][PlayerExp], PlayerInfo[playerid][LevelP]*6);
return;
}
// caso contrбrio, ele dar normalmente.
PlayerInfo[playerid][PlayerExp] -= 1
Aqui, usamos a lуgica. Sugiro que utilize um caderno, se vocк nгo conseguir fazer de cabeзa.
Usando o Mйtodo para pegar o mбximo respeito ficaria melhor. Apenas um mйtodo que retornaria o valor
PlayerInfo[playerid][LevelP]*6.