Entrar
Últimos assuntos
» Problema ao entrar por uma porta e voltar por elapor aminaro Seg 06 maio 2024, 10:08
» Alguém aqui já ganha dinheiro com seus games?
por theguitarmester Ter 30 Abr 2024, 11:43
» Colisões não funcionando
por theguitarmester Ter 30 Abr 2024, 10:16
» Como ajustar velocidade de cada frame da animação no game maker
por pequetux Sex 26 Abr 2024, 16:45
» Preciso de ajuda
por AftonDuGrau Dom 21 Abr 2024, 20:18
» Como faz o evento drawn GUI, não se repetir?
por aminaro Sex 19 Abr 2024, 20:30
» PROBLEMAS COM FÍSICAS DE ÁGUA
por aminaro Ter 16 Abr 2024, 10:07
» Retorno da GMBR!!!
por Ralphed Sex 12 Abr 2024, 22:45
» JOGADOR PARANDO NO AR QUANDO ATACA
por aminaro Qua 10 Abr 2024, 13:51
» Problemas com texto interativo
por Kaaru72 Dom 07 Abr 2024, 11:31
» Erro escondido e indecifrável
por dev_gabize.azv Qui 04 Abr 2024, 10:11
» Mudar cor de apenas uma palavra
por Ralphed Sáb 30 Mar 2024, 00:39
» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27
» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30
» 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
» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21
[Resolvido] Dificuldade para cria barra de life
+3
Gabreel
david199
killer118
7 participantes
Página 1 de 1
[Resolvido] Dificuldade para cria barra de life
Boa tarde,
Preciso de uma ajuda, preciso criar uma barra de life para meu chefe e estou com o seguinte problema, segui um tutorial de um cara usando o draw_rectangle, e meu codigo ficou assim:
no evento draw:
como eu poderia arrumar esse problema?
mais um detalhe minha barra não começa na ponta da view e sim +- no meio dela, esse deve ser o problema.
desde já agradeço.
Preciso de uma ajuda, preciso criar uma barra de life para meu chefe e estou com o seguinte problema, segui um tutorial de um cara usando o draw_rectangle, e meu codigo ficou assim:
no evento draw:
- Código:
draw_set_color(cor_da_linha)
draw_rectangle(view_xview+400,740,view_xview+1000,760,true)
draw_set_color(cor_da_barra)
draw_rectangle(view_xview+400,742,50+(view_xview+950*(global.saude_atual/global.saude_total)),760,false)
como eu poderia arrumar esse problema?
mais um detalhe minha barra não começa na ponta da view e sim +- no meio dela, esse deve ser o problema.
desde já agradeço.
killer118- Data de inscrição : 30/08/2013
Reputação : 0
Número de Mensagens : 14
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Resolvido] Dificuldade para cria barra de life
você quer fazer uma barra de vida na view certo?
basta colocar sua posição apenas x e y view nada mais nada menos coloque a posição e ajeite o retângulo assim:
no draw coloque esse código:
e colocar se a barra de vida é maior ou igual a 100 vida =100 assim
no evento step:
basta colocar sua posição apenas x e y view nada mais nada menos coloque a posição e ajeite o retângulo assim:
no draw coloque esse código:
- Código:
draw_set_color(c_black)//cor da linha é preta ou a cor que desejar
draw_rectangle(view_xview,view_yview,view_xview+100,view_yview+30,true)//desenha o retângulo apenas a linha dele
draw_set_color(c_green)//cor da vida aqui está verde mais vc pode mudar
draw_rectangle(view_xview,view_yview+30,view_xview+global.vida,view_yview-20,false)//declara que a vida será verde, perdendo a vida o retângulo verde diminuirá
- Código:
global.vida=100
e colocar se a barra de vida é maior ou igual a 100 vida =100 assim
no evento step:
- Código:
if global.vida<=0{global.vida=0}//ação desejada
if global.vida>=100{global.vida=100}
Última edição por david199 em Sáb 23 Nov 2013, 13:24, editado 1 vez(es)
Re: [Resolvido] Dificuldade para cria barra de life
Não copie o código do david, apenas entenda.
Você tem duas variáveis, uma chamada global.saude_atual e outra global.saude_total.
Você precisa garantir que ela não seja negativa e que não seja mais que a saúde máxima, portanto:
STEP
Você tem duas variáveis, uma chamada global.saude_atual e outra global.saude_total.
Você precisa garantir que ela não seja negativa e que não seja mais que a saúde máxima, portanto:
STEP
- Código:
if global.saude_atual < 0 global.saude_atual = 0
if global.saude_atual > global.saude_total global.saude_atual = global.saude_total
Gabreel- Data de inscrição : 02/10/2009
Reputação : 52
Número de Mensagens : 2232
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Plataformas :- Game Maker 8.0 ou 8.1
- Game Maker Studio 1.4
- Game Maker Studio 2.0
- Javascript
- Outros
Re: [Resolvido] Dificuldade para cria barra de life
Nossa, pra quê tanto código pra uma simples barra de vida? É muito mais fácil usar draw_healthbar, isso se você quiser uma "barra padrão", ou seja, a famosa barrinha retangular. Caso queria uma barra mais complexa, ai vai na base do draw mesmo. Existem alguns tutoriais sobre isso.
Re: [Resolvido] Dificuldade para cria barra de life
Como usar a draw_healthbar caso ainda não saiba:
y1 = A coordenada y do topo da barra
x2 = A coordenada x da direita da barra
y2 = A coordenada y da base da barra
amount = A variável que define quão cheia a barra está (deve ser entre 0 e 100)
backcol = Cor de fundo da barra
mincol = Cor que a barra terá quando estiver vazia (0)
maxcol = Cor que a barra terá quando estiver cheia (100)
direction = Indica o lado para qual a barra irá diminuir (0 = esquerda, 1 = direita, 2 = topo, 3 = base)
showback = Se quiser mostrar a cor de fundo, deixe (true) se não quiser, deixe (false). Se estiver 'false', o argumento backcol será desativado
showborder = Se você quiser que a barra mostre uma borda deixe (true) se não quiser, deixe (false).
EX:
-tendo início a 100px da esquerda da tela
-100px do topo da tela
-terá 400px de largura (500-100)
-terá 100px de altura (200-100)
-pc é a variável onde está o HP do personagem
-cor de fundo preta (c_black)
-cor vermelha quando estiver baixa (c_red)
-cor lima quando estiver cheia (c_lime)
-irá diminuir para a esquerda
-irá mostrar a cor de fundo preta
-irá mostrar a borda
- Código:
draw_healthbar(x1, y1, x2, y2, amount, backcol, mincol, maxcol, direction, showback, showborder);
y1 = A coordenada y do topo da barra
x2 = A coordenada x da direita da barra
y2 = A coordenada y da base da barra
amount = A variável que define quão cheia a barra está (deve ser entre 0 e 100)
backcol = Cor de fundo da barra
mincol = Cor que a barra terá quando estiver vazia (0)
maxcol = Cor que a barra terá quando estiver cheia (100)
direction = Indica o lado para qual a barra irá diminuir (0 = esquerda, 1 = direita, 2 = topo, 3 = base)
showback = Se quiser mostrar a cor de fundo, deixe (true) se não quiser, deixe (false). Se estiver 'false', o argumento backcol será desativado
showborder = Se você quiser que a barra mostre uma borda deixe (true) se não quiser, deixe (false).
EX:
- Código:
draw_healthbar(100, 100, 500, 200, pc, c_black, c_red, c_lime, 0, true, true)
-tendo início a 100px da esquerda da tela
-100px do topo da tela
-terá 400px de largura (500-100)
-terá 100px de altura (200-100)
-pc é a variável onde está o HP do personagem
-cor de fundo preta (c_black)
-cor vermelha quando estiver baixa (c_red)
-cor lima quando estiver cheia (c_lime)
-irá diminuir para a esquerda
-irá mostrar a cor de fundo preta
-irá mostrar a borda
itarodrigo- Data de inscrição : 28/08/2010
Reputação : 52
Número de Mensagens : 599
Prêmios :
x 0 x 4 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Resolvido] Dificuldade para cria barra de life
OPA PERAI!
ERRO MUITO COMUM!
obs.: Se você quiser fazer uma barra de life com o draw.
Aqui vai um código bem fácil:
Eu costumo fazer assim:
Não interessa o tanto de vida ou da barra de vida, ela sempre irá acompanhar, mesmo que você mude o valor da vidaTotal.
Se você desenhar um retângulo outline, se você usar views e esticar a tela você terá um grande erro, mesmo que a tela seja duplicada, outline vai desenhar com grossura de 1 pixel.
ERRO MUITO COMUM!
obs.: Se você quiser fazer uma barra de life com o draw.
Nunca use outline!
Aqui vai um código bem fácil:
Eu costumo fazer assim:
- Código:
x1=100;//Onde começa em x
y1=100;//Onde comeca em y
y2=110;//Onde Termina em y(visto a barra ser horizontal)
vidaTotal=250;
vidaAtual=250;
tamanho=100;//Tamnho da barra de vida em x(largura)
draw_rectangle_color(x1,y1,x1+tamanho+1,y2,c_black,c_black,c_black,c_black,-1);
draw_rectangle_color(x1+1,y1+1,x1+(vidaAtual/vidaTotal)*(tamanho),y2,c_red,c_red,c_black,c_black,-1);
Não interessa o tanto de vida ou da barra de vida, ela sempre irá acompanhar, mesmo que você mude o valor da vidaTotal.
Se você desenhar um retângulo outline, se você usar views e esticar a tela você terá um grande erro, mesmo que a tela seja duplicada, outline vai desenhar com grossura de 1 pixel.
Rodrigo Santiago- Games Ranking :
Notas recebidas : C + C + B
Data de inscrição : 28/07/2012
Reputação : 73
Número de Mensagens : 1281
Prêmios :
x 0 x 0 x 0
x 3 x 1 x 3
x 0 x 0 x 0
Re: [Resolvido] Dificuldade para cria barra de life
Dá uma olhada aqui amigo! Engine RPG - Básicos Lá tem barra de vida personalizada
Re: [Resolvido] Dificuldade para cria barra de life
Olá pessoal, agradeço pela ajuda, mas eu não apenas copiei eu adaptei para poder usa no meu jogo, eu estudei para ver como funcionava mas a logica desse código era diferente do que eu queria por isso pedi uma ajuda para mudar a logica apenas isso, mas de todo modo eu resolvi usar de outra maneira para não precisar mudar o código, novamente obrigado pela ajuda e pode encerrar o tópico.
killer118- Data de inscrição : 30/08/2013
Reputação : 0
Número de Mensagens : 14
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|