GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» Retorno da GMBR!!!
por theguitarmester Ter 19 Mar 2024, 22:38

» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27

» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30

» Mudar cor de apenas uma palavra
por lunalol Sex 01 Mar 2024, 13:42

» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17

» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18

» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34

» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13

» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18

» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12

» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02

» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55

» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42

» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56

» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21

» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21

» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39

» Versionamento de código com GitHub
por GabrielXavier Seg 08 Jan 2024, 07:32

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por kolesovsup Sex 29 Dez 2023, 07:16

» a funçao approach ainda existe?
por PEDRINDEV Ter 26 Dez 2023, 20:05

» Inimigo ataca até por trás! >:(
por saim Sex 22 Dez 2023, 08:55

» [RESOLVIDO]Spawn após morte
por Deception_1999 Dom 17 Dez 2023, 16:39

» Remunerado $$$ - Procuro programador para ajudar a "montar" um jogo
por theguitarmester Sáb 02 Dez 2023, 16:28

» Game maker nao abre
por Cerf Dom 26 Nov 2023, 12:01


Barra de EXP Para Level

5 participantes

Ir para baixo

Barra de EXP Para Level Empty Barra de EXP Para Level

Mensagem por galavernaa Sáb 12 Jan 2013, 14:01

Falae pessoal , eu aqui de novo , o motivo de eu perguntar tanto talvez seja minha vontade de aprender , por tanto me desculpe caso eu seja um belo de um noob!
Bom , hoje queria perguntar como fazer por exemplo para cada nível você precisa de uma quantidade de xp para passar , até aí tudo bem , mas tem uma barrinha de XP
como posso fazer para o maximo dela não ser 100 e se o maximo for por exemplo 1000 ela só esteja 100% cheia quando eu estiver em 1000 de xp??
Eu tentei fazer algo assim no create :
global.xp.max=1000
não funcionou , por favor ajudem se possível , obrigado e tenha um bom dia!
galavernaa
galavernaa

Data de inscrição : 20/12/2012
Reputação : 1
Número de Mensagens : 97
Prêmios : Barra de EXP Para Level Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Barra de EXP Para Level Empty Re: Barra de EXP Para Level

Mensagem por The Wizard Sáb 12 Jan 2013, 14:14

Veja mais tutoriais assim você irá melhorar, você terá que fazer algo mais ou menos assim:
Código:
if xp=1000
{passa de nível}
o esquema é ess mas você tem que mostrar os codes que está usando senão não temos como ajuda-lo :/
The Wizard
The Wizard

Games Ranking : Nota B

Notas recebidas : B
Data de inscrição : 24/03/2010
Reputação : 17
Número de Mensagens : 1129
Prêmios : Barra de EXP Para Level Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Barra de EXP Para Level Empty Re: Barra de EXP Para Level

Mensagem por galavernaa Sáb 12 Jan 2013, 14:43

The Wizard escreveu:Veja mais tutoriais assim você irá melhorar, você terá que fazer algo mais ou menos assim:
Código:
if xp=1000
{passa de nível}
o esquema é ess mas você tem que mostrar os codes que está usando senão não temos como ajuda-lo :/
Disso eu sei , não é isso! Eu estou dizendo para fazer no draw_healthbar o maximo da xp ser 1000 por que a barrinha de xp que é uma healthbar fica enteira cheia quando a variavél é 100!
galavernaa
galavernaa

Data de inscrição : 20/12/2012
Reputação : 1
Número de Mensagens : 97
Prêmios : Barra de EXP Para Level Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Barra de EXP Para Level Empty Re: Barra de EXP Para Level

Mensagem por KinKing Sáb 12 Jan 2013, 14:51

Use global.xpMax = 1000 no "create" ou onde for, e global.xpAtual/10 para o "amount" da draw_healthbar. Sendo que esse /10 é, claro, dividido por 10. Mas é 10 é porque a xp máxima (1000) dividida por 10 = 100(%)

Então se sua global.xpMax for 2000, seria global.xpAtual/20.
Se for 3600, seria /36.
KinKing
KinKing

Data de inscrição : 29/05/2008
Reputação : 16
Número de Mensagens : 422
Prêmios : Barra de EXP Para Level Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://felipejoys.webnode.com

Ir para o topo Ir para baixo

Barra de EXP Para Level Empty Re: Barra de EXP Para Level

Mensagem por galavernaa Sáb 12 Jan 2013, 15:28

#KinKing
Tá , entendi o que você quer dizer , mas os números de exp que será preciso não serão tão simples , e serão 99 lvs , como posso fazer de uma forma mais simples ??No nível 1 precisa de 60 de xp , no 2 precisa de 67 e aí fica meio complicado , mas chega uma hora que fica 1117 , então acredito que este método não irá funcionar , e se for ficarei dias e dias fazendo isso com todos os leveis!
galavernaa
galavernaa

Data de inscrição : 20/12/2012
Reputação : 1
Número de Mensagens : 97
Prêmios : Barra de EXP Para Level Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Barra de EXP Para Level Empty Re: Barra de EXP Para Level

Mensagem por KinKing Sáb 12 Jan 2013, 15:56

Barra de EXP Para Level Regra3amount

Amount:
Código:
(global.xpAtual*100)/global.xpMax


EDIT: Desculpa, me empolguei!
KinKing
KinKing

Data de inscrição : 29/05/2008
Reputação : 16
Número de Mensagens : 422
Prêmios : Barra de EXP Para Level Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://felipejoys.webnode.com

Ir para o topo Ir para baixo

Barra de EXP Para Level Empty Re: Barra de EXP Para Level

Mensagem por galavernaa Sáb 12 Jan 2013, 16:09

#KinKing
Resolvi , eu pedi ajuda para meu irmão e ele fez a mesma coisa que você só que com outras variaveis , obrigado! Podem trancar já o tópico obrigado!
galavernaa
galavernaa

Data de inscrição : 20/12/2012
Reputação : 1
Número de Mensagens : 97
Prêmios : Barra de EXP Para Level Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Barra de EXP Para Level Empty Re: Barra de EXP Para Level

Mensagem por Gonçalves Sáb 12 Jan 2013, 16:13

VocÊ precisa de um algoritmo para dizer quanto de experiência precisa pra cada lvl, ou então fazer manualmente mesmo.

No meu jogo TownCraft, como os heróis têm apenas 10 lvl's, fiz manualmente:

Código:
xp_necessaria[0] = 20 // XP necessaria para ir pra lv 2
xp_necessaria[1] = 50 // XP necessaria para ir pra lv 3
xp_necessaria[2]= 80 // XP necessaria para ir pra lv 4
etc.

E por aí vai.

Já pro meu jogo Glanis, eu busquei na net e achei o algoritmo do Tibia de XP. Pra criar um algoritmo desses é um pouco complicado. Um exemplo:

Código:
xp_necessaria = 20+(lv*15)+(lvl*20)

Assim, no LV 1 ele precisará de 55 de XP.
No LV 2 ele precisará de 90 de XP.
No LV 3 ele precisará de 125 de XP.

Não é o melhor dos algoritmos, mas você pode inventar o seu. O do tibia (encontrei no site tibiabr.com):

Código:
xp_necessaria = (50/3)*(lv/3 - (lv*6)/2 + (lv*17) - 12)

Essa barra eu consegui fazer no Glanis, demorei a conseguir, a lógica é essa, ao iniciar:





Código:
xp_necessaria = algoritmo de xp // XP necessária para ir ao LV 2
xp = 0 // XP inicial

// Vars usadas pra desenhar a barra
xp2 = xp
xp3 = xp_necessaria

A barra se desenhar assim:

Código:
draw_healthbar(x-20,y-44,x+20,y-41,xp_porcentagem,c_black,c_lime,c_lime,0,1,1)

E esse xp_porcentagem, como achamos?

Código:
xp_porcentagem = (xp *100)/xp_necessaria

É um simples função matemática, que vai dar xp (exemplo 15) multiplicado por 100, dividido pela xp_necessaria (exemplo 60):

15*100 = 1500
1500/60 = 25

Encontrou que 15 é 25% de 60. Isso fará com que o máximo que a barra tenha como valor é 100.

E quando passar de LV, atualiza a XP necessaria ao aumentar a var LV:

Código:
lv += 1

xp2 = xp_necessaria // Essa var teria o valor 60 se fosse do caso acima

xp_necessaria = algoritmo de xp // Atualizando algoritmo

xp3 = xp_necessaria // Essa var teria o valor de xp necessaria já do novo lv

xp3 -= xp2 // Diferença entre os duas xp_necessaria, o que faria conseguirmos criar a barra sem bugs

Com o draw_healthbar dado acima, a barra ficaria cheia de bugs, então, agora você poderia substiuí-la por:

Código:
xp_porcentagem = (x2 *100)/x3

draw_healthbar(x-20,y-44,x+20,y-41,xp_porcentagem,c_black,c_lime,c_lime,0,1,1)

Acho que funcionaria, se não, só alguns ajustes e deve funcionar.

Até.


Última edição por Gonçalves em Sáb 12 Jan 2013, 16:17, editado 1 vez(es)
Gonçalves
Gonçalves

Games Ranking : Nota B

Notas recebidas : B + A + C
Data de inscrição : 29/10/2010
Reputação : 79
Número de Mensagens : 1013
Prêmios : Barra de EXP Para Level Empty

Medalhas x 0 Tutoriais x 4 Moedas x 0

Ouro x 2 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Barra de EXP Para Level Empty Re: Barra de EXP Para Level

Mensagem por theguitarmester Sáb 12 Jan 2013, 16:14

você pode Fazer Algo Assim:
Vou Fazer um Code que é só Você Colar no Draw para ver.


----------------Editado:
Está Aqui, APENAS COLOQUE NBO DRAW, E DIVIRTA-se!
Código:
///pode colocar isto no CREATE  <<<
if !variable_local_exists('level')
{level=1 expatual=0
explv[1]=0
explv[2]=60
explv[3]=67
explv[4]=74
explv[5]=82
explv[6]=-1    //coloque  esse code no último para Declara que está no Maximo.
}
//////---------                >>>

//CASO VOCÊ NÃO SAIBA FAZER, AQUI É COMO SE FAZ PORCENTAGEM
if level!=6{if explv[level+1]!=0 porcentagem=(100/explv[level+1])*expatual
else porcentagem=0 //a Checagem
}

if level!=6{
draw_set_color(0)
draw_rectangle(view_xview+10,view_yview+10,view_xview+110,view_yview+18,0)
draw_set_color(c_red)
 draw_rectangle(view_xview+10,view_yview+10,view_xview+10+porcentagem,view_yview+18,0)
}else draw_text(view_xview+10,view_yview+10,'Level Máximo')


draw_set_color(c_white)
if level!=6 draw_text(30,30,'LEVEL  '+string(level)+' Falta '+string(explv[level+1]-expatual)+' de Exp')
//Podia ter Feito Experiência direta, isto é, cada vez que chegasse no Nível, não zerava a Exp.


//Para Adicionar Exp
if level!=6
{expatual+=1

//Evoluir
if expatual>=explv[level+1]
{expatual=0 level+=1}

}
theguitarmester
theguitarmester

Games Ranking : Nota C

Notas recebidas : B + C
Data de inscrição : 28/02/2012
Reputação : 139
Número de Mensagens : 2208
Prêmios : Barra de EXP Para Level Empty

Medalhas x 0 Tutoriais x 4 Moedas x 0

Ouro x 2 Prata x 2 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1
Plataformas :
  • Unity


http://guitarmester.no.comunidades.net/index.php?pagina=19362978

Ir para o topo Ir para baixo

Barra de EXP Para Level Empty Re: Barra de EXP Para Level

Mensagem por galavernaa Dom 13 Jan 2013, 14:06

#theguitarmester
Obrigado por me mandar o código , mas eu já tinha feito! hehe mas de qualquer forma , Obrigado!
galavernaa
galavernaa

Data de inscrição : 20/12/2012
Reputação : 1
Número de Mensagens : 97
Prêmios : Barra de EXP Para Level Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Barra de EXP Para Level Empty Re: Barra de EXP Para Level

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos