Duvida sobre colisão e perda de vida

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

Duvida sobre colisão e perda de vida

Mensagem por DonutScore em Seg 07 Abr 2014, 16:27

Pessoal, estou fazendo um jogo de beyblade, ele já está bem concluído, o problema até agora é sobre a colisão dos 2 players.

jogo é topdown

Por enquanto, sempre que um player colide com o outro, os dois perdem vida.

Evento collision de obj_a_p1
Código:
global.player1hp-=1

Evento collision de obj_d_p2
Código:
global.player2hp-=1

Acredito que possa ser aproveita a velocidade dos player para tirar a vida de um ou de outro

Coloquei no Evento colission
Código:
if obj_a_p1.speed > obj_a_p2.speed //velocidade escolhida
    {
    global.player1hp-=1
    }
Mas da um erro e o jogo fecha, deve ser porque no momento da colisão o objeto colide e a velocidade fica em zero, não sei direito pois não entendo muito sobre isso. Antigamente eu só usava o step para movimentar agora a movimentação depende do vspeed e do hspeed.

Queria que o player que tivesse menor velocidade no momento da colisão fosse o player que recebesse o dano.
Pensei em algo como: Armazenar a velocidade dos dois player's em string e só epois fazer a comparação de maior e menor, mas não sei como fazer isso. nervoso 



Obrigado feliz2 

DonutScore

Número de Mensagens : 176
Idade : 23
Data de inscrição : 18/12/2013
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://donutscore.com

Voltar ao Topo Ir em baixo

Re: Duvida sobre colisão e perda de vida

Mensagem por JoaoVanBlizzard em Seg 07 Abr 2014, 17:02

Eu percebi uma coisa no play 2 você indentificou ele nos codigos assim:
Evento collision de obj_d_p2


e no codigo assim:
obj_a_p2 



afinal é obj_a_p2 ou obj_d_p2  ?


esses enganos ortográficos são uma das principais causas de erro, mas tem um jeito mais facil de especificar esse código


No event colision de qualquer um deles usa esse codigo:

Código:
if speed < other.speed = hp-=1



Mas como você criou uma variavel global para cada um dos player pode fazer assim:

Código:
if speed < other.speed = global.player1hp-=1//coloque esse codigo  no player 1

if speed < other.speed = global.player2hp-=1//coloque esse codigo  no player 2

JoaoVanBlizzard

Ranking : Nota B
Número de Mensagens : 1925
Idade : 38
Data de inscrição : 04/03/2012
Notas recebidas : B+B
Reputação : 144
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 2
   : 0

Voltar ao Topo Ir em baixo

Re: Duvida sobre colisão e perda de vida

Mensagem por DonutScore em Seg 07 Abr 2014, 17:06

O segundo player é obj_d_p2 mesmo, é porque alem desse existe os objetos
"obj_a_X"
"obj_b_X"
"obj_c_X"

É para um menu de seleção de personagens.
Até achei que era por mal escrita de programação e tentei colocar
Código:
///vida -1
if (string(obj_a_p1.speed) >= string(obj_a_p2.speed))
    {
    global.player1hp-=1
    }
Mas continuou o mesmo erro

Vou testar seu codigo e logo-logo eu dou edit, obrigado

EDIT

Na caixa de error fica assim,



Se não for muito incomodo e você tiver o GMS eu posso enviar o projeto por mp.


EDIT 2

Agora deu certo, foi só organizar o codigo
Código:
if (speed < other.speed)
    {
    global.player2hp-=1
    }



Valeu pela ajuda, estou muito ansioso para terminar esse jogo

DonutScore

Número de Mensagens : 176
Idade : 23
Data de inscrição : 18/12/2013
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://donutscore.com

Voltar ao Topo Ir em baixo

Re: Duvida sobre colisão e perda de vida

Mensagem por JoaoVanBlizzard em Seg 07 Abr 2014, 17:18

ops, quem errou fui eu, coloquei um sina de = sem querer e deu esse erro
faz assim:
Código:
if (speed < other.speed) { global.player1hp-=1}


EdiT : beleza então acho que escrevi na pressa e coloquei errado, que bom que conseguiu acertar agora, espero poder ver seu jogo quando tiver pronto ok. Smile

JoaoVanBlizzard

Ranking : Nota B
Número de Mensagens : 1925
Idade : 38
Data de inscrição : 04/03/2012
Notas recebidas : B+B
Reputação : 144
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 2
   : 0

Voltar ao Topo Ir em baixo

Re: Duvida sobre colisão e perda de vida

Mensagem por vinians em Seg 07 Abr 2014, 18:36

Amigo, porque criar variáveis paradas se você poderia criar dois objetos player e configurar como player 1 ou 2 e aproveitar todo o poder do GM com variáveis de objeto?

vinians

Ranking : Nota B
Número de Mensagens : 2490
Idade : 27
Data de inscrição : 18/09/2008
Notas recebidas : B-C-A-C
Reputação : 52
Insignia 1 x 0 Insignia 2 x 1 Insignia 3 x 0
Prêmios
   : 0
   : 2
   : 1

http://xcreatorgames.weebly.com/

Voltar ao Topo Ir em baixo

Re: Duvida sobre colisão e perda de vida

Mensagem por DonutScore em Ter 08 Abr 2014, 08:23

Vou ver se encontro algo sobre isso, ainda estou convertendo o dnd para gml, valeu

DonutScore

Número de Mensagens : 176
Idade : 23
Data de inscrição : 18/12/2013
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://donutscore.com

Voltar ao Topo Ir em baixo

Re: Duvida sobre colisão e perda de vida

Mensagem por Conteúdo patrocinado Hoje à(s) 02: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