Conectar-se
Quem está conectado
15 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 15 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Ranking : Nota A
Notas recebidas : D + A + A
Data de inscrição : 06/12/2009
Número de Mensagens : 1229
Insígnias de JAM :

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

Prêmios
   : 1
   : 2
   : 0
Ver perfil do usuário

Impulso criado pelo inimigo

em Sab 28 Ago 2010, 18:23
Como eu faço que nem os jogos do Sonic quando ele ta correndo e bate em algum obstáculo ou inimigo e ele toma um impulso pra cima e pra traz, queria fazer isso com meu personagem checando se há espaço suficiente para pular e para ir para o lado oposto do inimigo, se tiver espaço acima dele e espaço atrás dele ele vai pra trás e pra cima, se tem espaço pra cima e pro lado não ele vai apenas pra cima.

E ai alguém tem uma ideia de como fazer isso?

P.S: Uso Gravity, 270, 0.5 Happy
avatar
Data de inscrição : 28/08/2010
Número de Mensagens : 154
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Impulso criado pelo inimigo

em Sab 28 Ago 2010, 18:29
Em geral seria algo semelhante a isto:

Collision > Inimigo:
if objetoinimigo.x > x //se sim ele está a direita do personagem, se não a esquerda
{ if place_free(x - 32, y - 32) //se o ponto esrquerdo acima do personagem for livre
{ motion_set(135, 5); }} //cria um movimento na direção citada
else
{ if place_free(x + 32, y - 32) //idem outro, porém para a direita
{ motion_set(45, 5); }}} //idem outro, porém para a direita
Convidad
Convidado

Re: Impulso criado pelo inimigo

em Sab 28 Ago 2010, 18:35
Como eu faço que nem os jogos do Sonic quando ele ta correndo e bate em algum obstáculo ou inimigo e ele toma um impulso pra cima e pra traz

Isso você pode conseguir definindo um valor de hspeed e vspeed. Toda vez que se define um valor pra uma dessas variáveis, a instância vai se movimentar com a velocidade respectiva à cada uma. hspeed define a velocidade horizontal de movimento e vspeed, a vertical.

Se você definir vspeed = -20, então o Sonic vai se mover pra cima, com velocidade de 20px por step, ou seja, vai subir até que essa variável seja "0" ou até que colida com algum objeto sólido. O mesmo vale pra hspeed. Por exemplo: hspeed = -10 vai fazer o Sonic se mover "pra tŕas" (se ele estiver virado pra direita) com velocidade de 10px. Isso tudo faz parte do mecanismo de movimentação do seu jogo.

queria fazer isso com meu personagem checando se há espaço suficiente para pular e para ir para o lado oposto do inimigo,

Nesse caso, você poderia apenas deixar que o sistema de colisão faça o trabalho. Toda vez que o Sonic colidir com algo sólido, ele não atravessará o objeto. O amigo †Ceifador postou aí um exemplo ótimo.
avatar
Ranking : Nota A
Notas recebidas : D + A + A
Data de inscrição : 06/12/2009
Número de Mensagens : 1229
Insígnias de JAM :

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

Prêmios
   : 1
   : 2
   : 0
Ver perfil do usuário

Re: Impulso criado pelo inimigo

em Sab 28 Ago 2010, 18:45
blz, ta tudo funcionando mas temos apenas um problema, o meu personagem quando colide com o inimigo ele faz o que eu queria, mas depois ele fica indo pra um lado algo fica puxando ele, vou tentar arrumar aqui se alguém tiver um solução postar ae, vlw!
avatar
Data de inscrição : 28/08/2010
Número de Mensagens : 154
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Impulso criado pelo inimigo

em Sab 28 Ago 2010, 18:48
Aparentemente há algum movimento aplicado que não se extingue após seu uso. Verifique possíveis erros/falhas na rotina geral.
avatar
Ranking : Nota A
Notas recebidas : D + A + A
Data de inscrição : 06/12/2009
Número de Mensagens : 1229
Insígnias de JAM :

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

Prêmios
   : 1
   : 2
   : 0
Ver perfil do usuário

Re: Impulso criado pelo inimigo

em Sab 28 Ago 2010, 19:17
@†Ceifador escreveu:Aparentemente há algum movimento aplicado que não se extingue após seu uso. Verifique possíveis erros/falhas na rotina geral.

Não ha nenhum erro aqui, uso o jump to X para movimentar meu personagem pra os lados Rolling Eyes
É que o personagem deposi que colide ainda anda para o ladop que ele foi empurrado O.o
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum