Página 1 de 1

Múltiplas plataformas flutuantes

Enviado: Dom Abr 02, 2017 4:42 pm
por Sergiodesjg
Olá.

Meu limitado conhecimento do GML e as muitas tentativas infrutíferas de solucionar o problema me trouxeram aqui.

É que eu criei uma plataforma flutuante para um jogo de plataforma a qual o personagem seria arrastado pela plataforma que se move de um lado para o outro, mudando de posição cada vez que ela colide com outra plataforma fixa.

No step do personagem coloquei:
if(place_meeting(x, y+vspeed, o_plat_f)){
       x +=  o_plat_f.hspeed;
}
Esse código funciona quando tem só uma plataforma, mas obviamente quando tem mais de uma plataforma dá o erro do personagem ser arrastado para o lado errado porque o sistema não entende de qual plataforma deve pegar a hspeed, já que ambas tem o mesmo nome, são o mesmo objeto.

Eu acredito que deve haver uma forma de solucionar isso sem precisar criar um objeto novo para cada lugar que precisar colocar uma plataforma nova.

Re: Múltiplas plataformas flutuantes  Tópico resolvido

Enviado: Dom Abr 02, 2017 8:50 pm
por Adilson

Código: Selecionar todos

//verifica colisão com as coordenadas e mais a velocidade
if(place_meeting(x , y+4+vspeed, o_plat_f)){
    //pegar a plataforma mais proxima
    var n = instance_nearest(x ,y+4+vspeed ,o_plat_f);
    //sabendo quem ela é, vamos andar com ela
    x += n.hspeed;
}
Isso deve resolver. Da um like se ajudei

Re: Múltiplas plataformas flutuantes

Enviado: Ter Abr 04, 2017 10:09 am
por Sergiodesjg
Funcionou perfeitamente, obrigado.