SA-MP Forums Archive
[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] -= 
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.