[RESOLVIDO]Direction após morte

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

[RESOLVIDO]Direction após morte

Mensagem por katisuke em Qui 05 Mar 2015, 22:38

Eu estou fazendo um jogo de plataforma 2D. E no meu codigo, quando o monstro morre, ele muda pra outro objeto, o "slimeLVL1" . Com uma animação de 20 sprites.
O problema é que quando o monstro morre, ele sempre acaba morrendo virado para a esquerda, tanto faz se o monstro morrer para a direita ou não. E meio q o jogo fica um pouco feio com isso.

Eu quero que o "deadSlimeLVL1" morra na mesma direção de onde estava o "slimeLVL1" anteriormente.

aqui está meu codigo:

O monstro "slimeLVL1":

CREATE:
Código:
hsp=0;
vsp=0;
grav=0.5;
saltar=false;
direcao=true

image_speed=0.3

STEP:
Código:
vsp += grav;
y += vsp;
x += hsp;

if (direcao=true) {
    hsp=choose(-2,2);
    direcao=false;
}

if (hsp=2) {
    image_xscale=1;
} else {
    image_xscale=-1;
}

if (place_meeting(x,y+vsp,chao)) {
      grav=0;
      vsp=0;
      if (place_meeting(x,y-16,chao)) {
          grav=0;
          vsp=0;            
              
      }
}
else {
      grav=0.5
      saltar=false
}


    if (saltar=true){
    vsp=-5;
}


if (place_meeting(x+hsp,y-1,chao)) {
    hsp=0;
    direcao=true;
}


COLISION -> PLAYER

Código:

if (global.matar=true){
    instance_create(x,y-1,deadSlimeLVL1);
    
    hspeed = 0;
    vspeed = 0;
    
    x = x;
    y = y;
    
       instance_destroy();
    
} else {
      show_message("Sua chama foi apagada.")
      room_restart();
      
}


Agora é o "slimeDeadLVL1"

CREATE
Código:
hsp=0;
vsp=0;
grav=0.5;
direcao=true

image_speed = 0.3;

  

STEP:
Código:
y += vsp;
x += hsp;


if (place_meeting(x,y+vsp,chao)) {
      grav=0;
      vsp=0;
      if (place_meeting(x,y-16,chao)) {
          grav=0;
          vsp=0;            
              
      }
}


if (place_meeting(x+hsp,y-1,chao)) {
    hsp=0;
    direcao=true;
}


ANIMATION END:
Código:
image_index = 20;

katisuke

Número de Mensagens : 31
Data de inscrição : 05/03/2015
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO]Direction após morte

Mensagem por Isaque Onix em Qui 05 Mar 2015, 22:59

ao criar o monstro, vc vira ele uai, ex:

Monstro_morto=instance_create(x,y-1,deadSlimeLVL1);
Monstro_morto.image_xscale=imagem_xscale

Isaque Onix

Número de Mensagens : 1597
Idade : 22
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

Re: [RESOLVIDO]Direction após morte

Mensagem por katisuke em Qui 05 Mar 2015, 23:14

agora ele sempre está virando para a direita :/

eu quero que ele morra na direção que o monstro estava antes de morrer

katisuke

Número de Mensagens : 31
Data de inscrição : 05/03/2015
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO]Direction após morte

Mensagem por Isaque Onix em Qui 05 Mar 2015, 23:20

foi um exemplo cara, vi que vc controla o seu objeto pelo image_xscale
if (hsp=2) {
   image_xscale=1;
} else {
   image_xscale=-1;
}
logo, para o outro objeto ser criado na direção certa, usei o
image_xscale=image_xscale
, mais vc tambem pode usar uma condição, sei lá... mais imaginei que o código acima fosse o de virar.

Isaque Onix

Número de Mensagens : 1597
Idade : 22
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

Re: [RESOLVIDO]Direction após morte

Mensagem por katisuke em Qui 05 Mar 2015, 23:25

eu coloquei o codigo que você mostrou ai.
mas ele agora mudou, inves, de so virar para a esquerda ele so vira para a direita.
O problema é que quando ele para, e cria a instance, o hspeed dele é 0, ai vira para a direita, como o meu codigo de direção, e colocando esse seu, ele apenas faz inverter, virando para esquerda

EDIT: alguem ajuda ai por favor
Me enviem algum codigo pra eu resolver isso. Ja tentei das coisas mais absurdas

Usuário Advertido por Post Duplo via MP - Mateus O de Andrade

katisuke

Número de Mensagens : 31
Data de inscrição : 05/03/2015
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO]Direction após morte

Mensagem por Wendryos em Qui 05 Mar 2015, 23:52

Para o inimigo:

1 - Criar uma global, coloca no create de alguma coisa que não vai ser destruida.
Código:
global.lado=0

2 - No código que o slime morre, e troca de instancia.
Código:
global.lado=image_xscale

3 - No create do outro objeto que vai ser criado.
Código:
image_xscale=global.lado.

Tenta ai se não der comenta ai pra tentarmos mais.

Spoiler:
[OFF] Cara não faz Double post não, pois isso é contra as regras, espere alguém responder e ou de um edit.


Última edição por Black Horn em Sex 06 Mar 2015, 00:13, editado 1 vez(es)

Wendryos

Ranking : Nota D
Número de Mensagens : 192
Data de inscrição : 21/04/2014
Notas recebidas : D
Reputação : 12
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO]Direction após morte

Mensagem por Isaque Onix em Sex 06 Mar 2015, 00:08

se o código de nosso amigo, Black Horn, não funcionar. sertifique a direção em que o seu sprite esta virado (ele morto), se estiver virado para a direita, tente esse:
Código:
Monstro_morto=instance_create(x,y-1,deadSlimeLVL1);
Monstro_morto.image_xscale=sign(hsp)
Mas, se estiver virado para a esquerda, tente esse:
Código:
Monstro_morto=instance_create(x,y-1,deadSlimeLVL1);
Monstro_morto.image_xscale=-sign(hsp)

Isaque Onix

Número de Mensagens : 1597
Idade : 22
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

Re: [RESOLVIDO]Direction após morte

Mensagem por Wendryos em Sex 06 Mar 2015, 00:10

Eu acho que o meu funciona de boa, acho que o único problema é porque é uma global, mas isso é de boa para resolver.

Wendryos

Ranking : Nota D
Número de Mensagens : 192
Data de inscrição : 21/04/2014
Notas recebidas : D
Reputação : 12
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO]Direction após morte

Mensagem por Isaque Onix em Sex 06 Mar 2015, 00:17

eu não disse que não ia funcionar... disse que se não funcionasse.
mais acabei de perceber que tem chance do meu não funcionar também. de qualquer forma, vou esperar pra ver se da certo :p

Isaque Onix

Número de Mensagens : 1597
Idade : 22
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

Re: [RESOLVIDO]Direction após morte

Mensagem por katisuke em Sex 06 Mar 2015, 11:29

Isaque onix, seu codigo funcionou Very Happy mt obrigado.

Agora eles morrem pro lado certo vlw Happy
Black horn, o seu codigo não deu certo, acontecia de tudo, morria pro lado certo,morria pro lado errado ou a instancia não era criada.
Mas vlw do mesmo jeito. Agora ta resolvido!!

katisuke

Número de Mensagens : 31
Data de inscrição : 05/03/2015
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO]Direction após morte

Mensagem por Conteúdo patrocinado Hoje à(s) 17:23


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