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

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 05/03/2015
Número de Mensagens : 31
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

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

[RESOLVIDO]Direction após morte

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;
avatar
Data de inscrição : 15/08/2010
Número de Mensagens : 1598
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 147

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://spyreserver.16mb.com

Re: [RESOLVIDO]Direction após morte

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
avatar
Data de inscrição : 05/03/2015
Número de Mensagens : 31
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

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

Re: [RESOLVIDO]Direction após morte

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
avatar
Data de inscrição : 15/08/2010
Número de Mensagens : 1598
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 147

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://spyreserver.16mb.com

Re: [RESOLVIDO]Direction após morte

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.
avatar
Data de inscrição : 05/03/2015
Número de Mensagens : 31
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

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

Re: [RESOLVIDO]Direction após morte

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
avatar
Ranking : Nota D
Notas recebidas : D
Data de inscrição : 21/04/2014
Número de Mensagens : 192
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 1
Reputação : 12

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

Re: [RESOLVIDO]Direction após morte

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)
avatar
Data de inscrição : 15/08/2010
Número de Mensagens : 1598
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 147

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://spyreserver.16mb.com

Re: [RESOLVIDO]Direction após morte

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)
avatar
Ranking : Nota D
Notas recebidas : D
Data de inscrição : 21/04/2014
Número de Mensagens : 192
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 1
Reputação : 12

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

Re: [RESOLVIDO]Direction após morte

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.
avatar
Data de inscrição : 15/08/2010
Número de Mensagens : 1598
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 147

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://spyreserver.16mb.com

Re: [RESOLVIDO]Direction após morte

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
avatar
Data de inscrição : 05/03/2015
Número de Mensagens : 31
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

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

Re: [RESOLVIDO]Direction após morte

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!!
Conteúdo patrocinado

Re: [RESOLVIDO]Direction após morte

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