Conectar-se
Quem está conectado
36 usuários online :: 1 usuário cadastrado, Nenhum Invisível e 35 Visitantes

Willy

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 10/04/2012
Número de Mensagens : 63
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://www.ihebhost.com.br

[Resolvido] Como quebrar o chão ao andar por cima?

em Seg 26 Maio 2014, 11:42
GAME MAKER STUDIO

Estou com um jogo tipo plataforma e gostaria de uma forma que o chão se quebre ao andar por cima e não pular em cima.

Alguns casos encontrado aqui, só funcionaram quando saltei, mas o problema é que ele não é 100% certo que vá quebrar (testei várias vezes e em algumas vezes não quebrou).
E no meu game eu não vou pular e sim andar.

Fiz isso:

No create do chão quebradiço:
cair = false;


No evento de colisão com o player:
if other.y < y and cair = false

{
alarm[0] = 4*room_speed;
cair = true;
}


No alarm[0]:
instance_destroy();


Não funcionou andando, precisa dar um salto para que se quebre.

EX: Meu personagem vai vir andando em uma reta de blocos cinza e no final desse bloco começa o bloco marrom (que se quebra), então, ao passar por cima do bloco marrom o mesmo deve se destruir, quebrar, cair ou desaparecer. Tanto faz, mas tem que sumir hehehe.

Preciso de ajuda,
Obrigado !


Última edição por loganout em Ter 03 Jun 2014, 20:21, editado 1 vez(es)
avatar
Data de inscrição : 15/08/2010
Número de Mensagens : 1597
Insígnias de JAM :

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

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

Re: [Resolvido] Como quebrar o chão ao andar por cima?

em Seg 26 Maio 2014, 16:16
Tente:


Código:
//No create do chão quebradiço:


cair = false;








//No evento de STEP:


if(distance_to_point(player.x,y)<sprite_get_width(player.sprite_index) && distance_to_point(x,player.y)<sprite_get_height(player.sprite_index))


{


alarm[0] = 4*room_speed;


cair = true;


}








//No alarm[0]:


instance_destroy();

avatar
Ranking : Nota D
Notas recebidas : D + D
Data de inscrição : 06/04/2012
Número de Mensagens : 682
Insígnias de JAM :

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

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

Re: [Resolvido] Como quebrar o chão ao andar por cima?

em Seg 26 Maio 2014, 18:37
Tente isso:
no objeto que você quer quebrar coloquei isto:
Evento alarm0
Código:

instance_destroy();//Pode substituir depois para o efeito que quiser ou simplismente fazer isso: y=y+1 para cair, ou habilita a gravidade

No Step do mesmo objeto:
Código:

if place_meeting(x, y-1, obj_player)
{
alarm[0] = 30;//Aumente o 30 se quiser que demore mais tempo para cair ou destruir ou qualquer outro efeito que você coloco acima.
}

Eu acabei de criar isto, e esta funcionando perfeitamente.
avatar
Data de inscrição : 10/04/2012
Número de Mensagens : 63
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://www.ihebhost.com.br

Re: [Resolvido] Como quebrar o chão ao andar por cima?

em Ter 27 Maio 2014, 12:35
willcraft2Tente isso:
no objeto que você quer quebrar coloquei isto:
Evento alarm0
Código:

instance_destroy();//Pode substituir depois para o efeito que quiser ou simplismente fazer isso: y=y+1 para cair, ou habilita a gravidade

No Step do mesmo objeto:
Código:

if place_meeting(x, y-1, obj_player)
{
alarm[0] = 30;//Aumente o 30 se quiser que demore mais tempo para cair ou destruir ou qualquer outro efeito que você coloco acima.
}

Eu acabei de criar isto, e esta funcionando perfeitamente.

Funcionou mais ou menos.
Acontece que o bloco só quebra quando o player sair de cima, enquanto estiver em cima o bloco não quebra.
avatar
Ranking : Nota D
Notas recebidas : D + D
Data de inscrição : 06/04/2012
Número de Mensagens : 682
Insígnias de JAM :

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

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

Re: [Resolvido] Como quebrar o chão ao andar por cima?

em Ter 27 Maio 2014, 13:03
Reputação da mensagem: 100% (1 votos)
vai no CREATE e coloca isso:
Código:

podecolidir = true;

La no STEP substitua tudo por isso:
Código:

if place_meeting(x, y-1, player) and podecolidir = true
{
alarm[0] = 30;
podecolidir = false;
}

Agora você precisa fazer a variavel podecolidir a voltar a ser TRUE, isso é com você já que não sei como esta ai.
avatar
Data de inscrição : 10/04/2012
Número de Mensagens : 63
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://www.ihebhost.com.br

Re: [Resolvido] Como quebrar o chão ao andar por cima?

em Ter 27 Maio 2014, 23:32
Agora ficou top.


Nem precisou fazer a variável voltar a ser true, cada bloco a pesar de ser o mesmo obj eles são true até que o player esteja sobre ele. Como eu só quero que eles se quebrem e desapareçam, fica assim mesmo....


Obrigado ! 
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