[Ajuda]collision line

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

Resolvido [Ajuda]collision line

Mensagem por Isaque Onix em Sab 09 Mar 2013, 23:05

bom, eu só quero intender como funciona pois tentei aqui no meu projeto (link na assinatura) e não deu certo, na verdade, acho que todo mundo aki sabe usar, menos eu *---*

mais é o seguinte, tenho um obj_enemy, um obj_char e um obj_Solid, sendo que o alinhamento é como pac-man ou bomber-man, se alguem me ajudar Smile

-Grato-


Última edição por MC D_LIRIO em Ter 12 Mar 2013, 11:52, editado 2 vez(es)

Isaque Onix

Número de Mensagens : 1597
Idade : 23
Data de inscrição : 15/08/2010
Reputação : 147
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://spyreserver.16mb.com

Voltar ao Topo Ir em baixo

Resolvido Re: [Ajuda]collision line

Mensagem por Crovux em Dom 10 Mar 2013, 08:54

não entendi o que você quer... Quer uma colisão pra objetos no estilo bomberman e pacman?

Crovux

Número de Mensagens : 169
Idade : 20
Data de inscrição : 07/01/2012
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Ajuda]collision line

Mensagem por Adilson Thiago Vieira em Dom 10 Mar 2013, 12:46

é assim que se usa amigo:
Código:

if (collision_line(x que começa a checage,yque começa a checage,local x que vai checage,local y que vai a checage,objeto que vai checa se tem colisao na linha,true,0))
flws,se nao for isso fala ae

Adilson Thiago Vieira

Ranking : Sem avaliações
Número de Mensagens : 367
Idade : 19
Data de inscrição : 17/10/2012
Notas recebidas : D+C+C+D
Reputação : 25
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Ajuda]collision line

Mensagem por Isaque Onix em Dom 10 Mar 2013, 16:58

Crovux escreveu:não entendi o que você quer... Quer uma colisão pra objetos no estilo bomberman e pacman?
é, quero uma colisão que faça com que o Enemy 'veja' o player com a collision line, o bomberman e pacman são só um exemplo de como o jogo é.

Adilson Thiago Vieira escreveu:é assim que se usa amigo:
Código:

if (collision_line(x que começa a checage,yque começa a checage,local x que vai checage,local y que vai a checage,objeto que vai checa se tem colisao na linha,true,0))
flws,se nao for isso fala ae

será que pode postar um exemplo? não consegui intender ainda..

é basicamente esse o sistema do jogo, sendo que se o enemy 'ver' o Player, ele segue.

[edit]
usei assim:
Código:
collision_line(x,y,Player.x,Player.y,Solido,1,1)
mais ñ ta funcionando, esse codigo fica no script do enemy.

Isaque Onix

Número de Mensagens : 1597
Idade : 23
Data de inscrição : 15/08/2010
Reputação : 147
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://spyreserver.16mb.com

Voltar ao Topo Ir em baixo

Resolvido Re: [Ajuda]collision line

Mensagem por Adilson Thiago Vieira em Seg 11 Mar 2013, 20:43

desculpa a demora,ando meio sem tempo para entra no forum....
nao vi o if ai no codigo...Vc realmente nao o esta usando?
lembresse,se é uma checage PRECISA do if
Código:

if collision_line(x,y,Player.x,Player.y,Solido,1,1)
{
executa a acao
}
se ainda nao funfar me avisa que vejo oq faço pa te ajuda"!
flw

Adilson Thiago Vieira

Ranking : Sem avaliações
Número de Mensagens : 367
Idade : 19
Data de inscrição : 17/10/2012
Notas recebidas : D+C+C+D
Reputação : 25
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Ajuda]collision line

Mensagem por Isaque Onix em Seg 11 Mar 2013, 22:41

tem sim, eu ñ pus o codigo completo ñ. mais vlw Very Happy
depois vê aki como ficou pf Spyre

Isaque Onix

Número de Mensagens : 1597
Idade : 23
Data de inscrição : 15/08/2010
Reputação : 147
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://spyreserver.16mb.com

Voltar ao Topo Ir em baixo

Resolvido Re: [Ajuda]collision line

Mensagem por saim em Ter 12 Mar 2013, 09:12

MC D_LIRIO escreveu:usei assim:
Código:
collision_line(x,y,Player.x,Player.y,Solido,1,1)
mais ñ ta funcionando, esse codigo fica no script do enemy.
Está correto. Esse código vai verificar se na linha que une os pontos entre o objeto que chama a função (inimigo) e o objeto "Player" existe um objeto chamado "Solido".
Eu recomendo veementemente que você passe a se preocupar com as nomenclaturas e passe a chamar seus objetos com nomes mais auto-explicativos, como "objPlayer" e "objSolido".
Como o Adilson Thiago Vieira comentou, o código em si não faz nada. Ele retorna "true" ou "false". Então, pra ter utilidade, ele precisa ser colocado dentro de um "if".
Edit antes de postar: na verdade, ele não retorna "true" ou "false". Ele retorna a id da instância interceptada pela linha. Se não tem nenhuma instância, ela retorna um valor negativo (que acho que é -4, depois eu explico porque). Na prática, você pode usar esses valores como "true/false", o game maker aceita.

Pra debugar seu problema, você pode colocar no step do inimigo esse código. Faça algo assim:
>create<
Código:
colide = "n colide";
>step<
Código:
var linha;
linha = collision_line(x, y, Player.x, Player.y, Solido, 1, 1);
if (linha){
colide = "colide sim";
}
else{
colide = "n colide";
}
>draw<
Código:
draw_line(x, y, Player.x, Player.y);
draw_text(x, y - 18, colide);
Isso vai fazer rodar a collision_line e mostrar a linha que está sendo checada, bem como o resultado.

Em jogos ortogonais, a origem dos objetos normalmente é no ponto (0, 0). Isso não deveria ser um problema pra collision_line, mas... com o precision_cheching, talvez seja. Se o draw não te mostrar o que há de errado, tente adicionar uma(s) unidade em x e y, evitando que a linha passe entre os objetos "Solido".

saim

Ranking : Nota B
Número de Mensagens : 2964
Idade : 38
Data de inscrição : 14/01/2011
Notas recebidas : C-D-A-B
Reputação : 121
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Resolvido Re: [Ajuda]collision line

Mensagem por Isaque Onix em Ter 12 Mar 2013, 09:32

fiz exatamente oque vc falou, e não deu certo tbm:

Isaque Onix

Número de Mensagens : 1597
Idade : 23
Data de inscrição : 15/08/2010
Reputação : 147
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://spyreserver.16mb.com

Voltar ao Topo Ir em baixo

Resolvido Re: [Ajuda]collision line

Mensagem por Joton em Ter 12 Mar 2013, 09:34


Joton

Ranking : Nota B
Número de Mensagens : 836
Idade : 28
Data de inscrição : 25/07/2010
Notas recebidas : A+B+C
Reputação : 5
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 0
   : 0

http://jotonsn.blogspot.com/

Voltar ao Topo Ir em baixo

Resolvido Re: [Ajuda]collision line

Mensagem por Isaque Onix em Ter 12 Mar 2013, 10:37

Brigadão aew gente, resolvido!

Precisando tamo aí!

Isaque Onix

Número de Mensagens : 1597
Idade : 23
Data de inscrição : 15/08/2010
Reputação : 147
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://spyreserver.16mb.com

Voltar ao Topo Ir em baixo

Resolvido Re: [Ajuda]collision line

Mensagem por Conteúdo patrocinado Hoje à(s) 19:59


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