Como colidir,mas sem grudar na parede?

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

Como colidir,mas sem grudar na parede?

Mensagem por Lizarus em Ter 14 Out 2014, 15:03

Tipo:Eu uso no evento de colisão com o obj_solido a ação set vertical speed( Action Vspeed ),mas quando eu encosto na parede e aperto o de andar,eu não caio!Como faço para parar com isso?

Lizarus

Número de Mensagens : 61
Idade : 18
Data de inscrição : 15/09/2014
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como colidir,mas sem grudar na parede?

Mensagem por gabriel33245900 em Ter 14 Out 2014, 15:20

crie 1 objeto 32x32 ou do tamanho do sprite do seu personagem! pinte toda a área do desenho, selecione o objeto, coloque a mask do objeto, assim seu personagem ficara perfeito!
=D
OBS:A mask e encontrada na tela do objeto, apenas de duplo click no objeto na lista ao lado <<< é ali embaixo!
Parent
Mask
Troque a mask para o bloco que você criou!

gabriel33245900

Número de Mensagens : 361
Idade : 16
Data de inscrição : 06/09/2014
Reputação : 54
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como colidir,mas sem grudar na parede?

Mensagem por DooMan em Ter 14 Out 2014, 15:23

se vc colocar a direção pra 270 pode ser que dê certo..

DooMan

Ranking : Nota B
Número de Mensagens : 90
Idade : 21
Data de inscrição : 23/02/2011
Notas recebidas : B
Reputação : 5
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como colidir,mas sem grudar na parede?

Mensagem por Lizarus em Qua 15 Out 2014, 18:14

Gabriel não deu certo fazer do jeito que voce disse,e Dooman,node eu boto 270 cara?

Lizarus

Número de Mensagens : 61
Idade : 18
Data de inscrição : 15/09/2014
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como colidir,mas sem grudar na parede?

Mensagem por AxeInLine em Qua 15 Out 2014, 18:25

Lizarus, não sei realmente a explicação exata para isso, mas é bem simples de resolver (pelo menos nunca falhou comigo).
Vou dar o exemplo de como fazer, mas somente para UM LADO, você vai ter que inverter o código.
Basicamente seria isso:
Código:
if (place_free(x+1,y))//mude "+1" para "-1" quando for para a esquerda.
{
if (keyboard_check(vk_right))//troca o "vk_right" por "vk_left"
{
hspeed = 1;
}
}
if (keyboard_check_released(vk_right))//troca o "vk_right" por "vk_left"
{
hspeed = 0;
}
Bem, deve dar certo, se dar algum erro, me avisa que vejo o que acontece (pode ser burrice minha também xD).


Última edição por AxeInLine em Qua 15 Out 2014, 18:35, editado 2 vez(es) (Razão : Erros de ortografia)

AxeInLine

Número de Mensagens : 211
Idade : 14
Data de inscrição : 23/03/2014
Reputação : 40
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como colidir,mas sem grudar na parede?

Mensagem por willcraft2 em Qua 15 Out 2014, 18:26

Aqui no forum tem uma engine chamada Movimento Limpo criado pelo Willy.

http://gmbr.forumeiros.com/t27557-engine-movimento-limpo-20-willy

Procure antes de pergunta.

Espero ter ajudado flw

willcraft2

Ranking : Nota D
Número de Mensagens : 682
Idade : 16
Data de inscrição : 06/04/2012
Notas recebidas : D + D
Reputação : 42
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como colidir,mas sem grudar na parede?

Mensagem por Isaque Onix em Qua 15 Out 2014, 19:40

eae cara, beleza?


bom eu concordo plenamente com o willcraft2, Voce tem que pesquisar antes de perguntar...

mas, mesmo assim vou tentar te ajudar, ensinando, e, nao dando o codigo pronto...!

bom, quando voce se move para uma direçao, voce tem que checar se o objeto pode se mover pra la, vamos supor que voce vai para a direita usando x:

Código:
x+=4//anda 4 pixels para a direita eternamente...

bom, o codigo acima faria com que o objeto andasse sempre para a direita, independente do que tivesse pela frente... oque eu teria que fazer para este objeto nao atravessar os objetos e fazer uma "Checagem" para saber se tem algo que o impede de prosseguir, para isso, podemos usar diversas funçoes, tais como:

Código:
place_meeting(x+4,y,parede)//checa se o objeto parede esta la
place_free(x+4,y)//checa se o espaço esta aberto (se nao a um objeto SOLIDO 4 pixels a direita)
instance_place(x+4,y,parede)//quase igual ao place_meeting etc....
no seu caso, voce tem que checar se a um objeto solido, entao ficaria algo assim:

Código:
if(keyboard_check(vk_right)){//se a ceta para a direita estiver pressionada
if(place_free(x+4,y)){//se o espaço 4 pixels a direita estiver aberto
x+=4//anda 4 pixels para a direita...
}}

Isaque Onix

Número de Mensagens : 1597
Idade : 23
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: Como colidir,mas sem grudar na parede?

Mensagem por gabriel33245900 em Qua 15 Out 2014, 20:10

Bom o nosso amigo perguntou como resolve isso, a engine do Willy é usada para jogadores que requer o conhecimento do Willy, ele quer saber como fazer com que ele não pare na parede, amigo você usa algum código do personagem, por que se tiver passe!

gabriel33245900

Número de Mensagens : 361
Idade : 16
Data de inscrição : 06/09/2014
Reputação : 54
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como colidir,mas sem grudar na parede?

Mensagem por WellingtonBecker em Qua 15 Out 2014, 20:15

Lizarus escreveu:Tipo:Eu uso no evento de colisão com o obj_solido a ação set vertical speed( Action Vspeed ),mas quando eu encosto na parede e aperto o de andar,eu não caio!Como faço para parar com isso?

Coloque esse código no STEP do player:

Código:
    while (!place_free(x+1,y))
    {x-=1;}
    while (!place_free(x-1,y))
    {x+=1;}

WellingtonBecker

Ranking : Nota D
Número de Mensagens : 820
Idade : 35
Data de inscrição : 09/05/2013
Notas recebidas : D
Reputação : 105
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Como colidir,mas sem grudar na parede?

Mensagem por Lizarus em Qua 22 Out 2014, 21:18

N deu certo nenhum das alternativas,alguem faria uma engine para me ajudar?

Lizarus

Número de Mensagens : 61
Idade : 18
Data de inscrição : 15/09/2014
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como colidir,mas sem grudar na parede?

Mensagem por vitorfernandes13 em Qua 22 Out 2014, 22:41


vitorfernandes13

Ranking : Nota C
Número de Mensagens : 284
Data de inscrição : 11/01/2014
Notas recebidas : C
Reputação : 11
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como colidir,mas sem grudar na parede?

Mensagem por Conteúdo patrocinado Hoje à(s) 00:01


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