Tutorial - RPG Barra infinita

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Tutorial - RPG Barra infinita

Mensagem por Limalokão em Dom 24 Jun 2012, 05:20

Barra de HP/MP infinita

Tutorial que ensina à você como criar uma barra que passa de 100 unidades com um tamanho desejado.
Nível Médio
Requerimentos GM 7/8 - Pro
Cansado de ver sua barra apenas com 100? Está tentando criar uma barra para RPG mas não consegue por que estoura os tamanhos desejados??

Seus problemas acabaram!

Primeiro crie uma nova room com width 640 height 480
Segundo crie um controlador para suas barras nomeie como quiser.
Terceiro adicione um evento create e depois execute code e coloque o seguinte código:

Código:
hp=5000 //total de vida atual
maxhp=5000 //máximo de vida
controlahp= hp*100/maxhp //a vida atual é multiplicada por 100: (5000x100=500000) dividida pela vida maxima 5000: (500000%5000=100)

Logo no draw coloque o seguinte código:

Código:
draw_set_alpha(1)//caso você tenha desenhado algo anteriormente com um alpha diferente essa linha reseta o alpha para 1
{
draw_rectangle_color(1,1,hp*100/maxhp*6.38,24,c_red,c_red,c_red,c_red,0)//aqui é a barra colorida da vida (vermelha)
//O VALOR ACIMA: 6.38 FOI BUSCADO, OU SEJA, FIZ TESTES PARA QUE A BARRA VERMELHA FICASSE CHEIA ATÉ O PONTO CERTO...
}
draw_set_color(c_black)//aqui é a cor da borda
{
draw_rectangle(0,0,639,25,1)//esta é a borda, note que o valor de y2=25px é 1 pixel maior ao y2 do retângulo la em cima:24px
}
draw_set_color(c_white)//cor da letra para mostrar o tanto de vida
{
draw_text(x+16,4,"HP: "+string(hp)+string(" / ")+string(maxhp))//escreve o HP na tela e logo depois o tanto de HP / o maximo de HP
}

E é isso, para fazer a barra de MP basta copiar e colar os mesmos códigos em execute codes diferentes para nao bagunçar e trocar as variaveis HP por MP, e depois no draw arrumar a numeração dos pixels! Happy Até...



Limalokão

Ranking : Nota C
Número de Mensagens : 803
Idade : 24
Data de inscrição : 24/11/2009
Notas recebidas : C
Reputação : 10
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Tutorial - RPG Barra infinita

Mensagem por Thiago_o_programador em Dom 24 Jun 2012, 10:16

Tah muito bom mesmo!!
Ps: Tente explicar cada linha por fora,
Ex: Assim:
Código:
draw_set_alpha(1)
caso você tenha desenhado algo anteriormente com um alpha diferente essa linha reseta o alpha para 1.
é mais facil de entender do que assim:
Código:
draw_set_alpha(1)//caso você tenha desenhado algo anteriormente com um alpha diferente essa linha reseta o alpha para 1
. ;)

Ótimo tutorial! Até a proxima!

Thiago_o_programador

Ranking : Nota D
Número de Mensagens : 709
Idade : 19
Data de inscrição : 14/05/2009
Notas recebidas : D - C - D - C
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 1

http://www.jogosdahora.maisblog.net

Voltar ao Topo Ir em baixo

Re: Tutorial - RPG Barra infinita

Mensagem por Limalokão em Dom 24 Jun 2012, 16:14

Happy Obrigado Thiago_o_programador, farei isso nos próximos, tanto que o código fica mais limpo né? Gostei dessa sua ideia! Vlws Flws

Limalokão

Ranking : Nota C
Número de Mensagens : 803
Idade : 24
Data de inscrição : 24/11/2009
Notas recebidas : C
Reputação : 10
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Tutorial - RPG Barra infinita

Mensagem por JDetonados em Qua 03 Out 2012, 10:33

Eu tenho uma dúvida, e se eu quiser fazer tipo uma segunda vida em cima da primeira? Vou dar um exemplo.

O cara tem a vida normal né que fica em vermelho, dai ele pega uma armadura dai a vida dele fica verde. E cada dano que ele toma, diminui da armadura dai quando termina a armadura, volta a tira da vida normal.

JDetonados

Número de Mensagens : 11
Data de inscrição : 30/08/2012
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Tutorial - RPG Barra infinita

Mensagem por Limalokão em Dom 14 Out 2012, 23:43

JDetonados escreveu:Eu tenho uma dúvida, e se eu quiser fazer tipo uma segunda vida em cima da primeira? Vou dar um exemplo.

O cara tem a vida normal né que fica em vermelho, dai ele pega uma armadura dai a vida dele fica verde. E cada dano que ele toma, diminui da armadura dai quando termina a armadura, volta a tira da vida normal.

ai vc teria que criar No controlador:
Código:
escudo=5000
escudomax=5000
controlaescudo= escudo*100/escudomax

Ainda no create você coloca:
Código:
escudoon=false // escudo, on é igual a "ligado" em ingles, escudoligado = falso

No objeto em que tira a vida:
Código:
with (controlador)
{
if escudoon=false
{
hp-=50
}
else
if escudoon=true
{
escudo-50
}
}
quando o player pegar o escudo:
Código:
with (controlador)
{
escudoon=true
}

No controlador quando o escudo acabar:
Código:
if escudo<=0 && escudoon=true
{
escudoon=false
escudo=5000
}

É mais ou menos essa a ideia amigo, mas aí você tem que se virar um pouquinho pra criar suas variaveis.

Limalokão

Ranking : Nota C
Número de Mensagens : 803
Idade : 24
Data de inscrição : 24/11/2009
Notas recebidas : C
Reputação : 10
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Tutorial - RPG Barra infinita

Mensagem por Conteúdo patrocinado Hoje à(s) 12:43


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum