[Resolvido] Como checar se está empurrando?

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

[Resolvido] Como checar se está empurrando?

Mensagem por Ticky em Dom 18 Jan 2009, 14:58

Tipo, eu quero saber como eu faço para:

Se eu estiver colidindo com o "objeto_bloco" e eu pressionar a tecla "esquerda", ele troca a sprite para "movendo_andando_esquerda";
Se eu estiver colidindo com o "objeto_bloco" mas não pressionar a tecla "esquerda", ele troca a sprite para "movendo_parado_esquerda";
Se eu não estiver colidindo com o "objeto_bloco" e não estiver pressionando a tecla "esquerda", ele troca a sprite para "parado_esquerda";
Se eu não estiver colidindo com o "objeto_bloco" e estiver pressionando a tecla "esquerda", ele troca a sprite para "andando_esquerda".


Entenderam?


Última edição por Ticky em Seg 19 Jan 2009, 20:45, editado 1 vez(es)

Ticky

Número de Mensagens : 390
Idade : 19
Data de inscrição : 12/10/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: [Resolvido] Como checar se está empurrando?

Mensagem por Janx em Dom 18 Jan 2009, 17:28

Vc ja deu a resposta. Basta passar para GML.

vou fazer as 2 primeiras pra vc:

Se eu estiver colidindo com o "objeto_bloco" e eu pressionar a tecla "esquerda", ele troca a sprite para "movendo_andando_esquerda";
Se eu estiver colidindo com o "objeto_bloco" mas não pressionar a tecla "esquerda", ele troca a sprite para "movendo_parado_esquerda";

Código:
if place_meeting(x,y,objeto_bloco) && keyboard_check(vk_left)
{
sprite_index = movendo_andando_esquerda;
}

if place_meeting(x,y,objeto_bloco) && !keyboard_check(vk_left)
{
sprite_index = movendo_parado_esquerda;
}

Janx

Número de Mensagens : 2417
Idade : 23
Data de inscrição : 24/05/2008
Reputação : 14
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 2
   : 0

Voltar ao Topo Ir em baixo

Re: [Resolvido] Como checar se está empurrando?

Mensagem por Ticky em Seg 19 Jan 2009, 19:11

Valeu Janx!
Valeu mesmo, pois além de me ajudar, me deu uma tarefa-de-casa pra fazer! Laughing
Eu consegui, o código completo é esse:
Código:
if place_meeting(x,y,objeto_bloco) && keyboard_check(vk_left)
{
sprite_index = movendo_andando_esquerda;
}

if place_meeting(x,y,objeto_bloco) && !keyboard_check(vk_left)
{
sprite_index = movendo_parado_esquerda;
}

if !place_meeting(x,y,objeto_bloco) && !keyboard_check(vk_left)
{
sprite_index = parado_esquerda;
}

if !place_meeting(x,y,objeto_bloco) && keyboard_check(vk_left)
{
sprite_index = andando_esquerda;
}

Ticky

Número de Mensagens : 390
Idade : 19
Data de inscrição : 12/10/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: [Resolvido] Como checar se está empurrando?

Mensagem por Janx em Seg 19 Jan 2009, 19:13

Viu como é facil?
Ainda mais do modo q vc perguntou

Se eu não estiver colidindo com o "objeto_bloco" e estiver pressionando a tecla "esquerda", ele troca a sprite para "andando_esquerda".

Ai ja ta a resposta, so q na nossa lingua, so presisa passar para GML e pronto!
Facil neh?
Quando presisar de fazer algo é so escrever exatamente como é e depois passar pra gml =)

Q bom que conseguiu!

FLW!

Janx

Número de Mensagens : 2417
Idade : 23
Data de inscrição : 24/05/2008
Reputação : 14
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 2
   : 0

Voltar ao Topo Ir em baixo

Re: [Resolvido] Como checar se está empurrando?

Mensagem por Ticky em Seg 19 Jan 2009, 19:41

Só que eu não sabia que "!" significa "não" e eu tava trocando "sprite_index=" com "image_index=" XDXDXD
E valeu pela dica de transferir para GML!

Ticky

Número de Mensagens : 390
Idade : 19
Data de inscrição : 12/10/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: [Resolvido] Como checar se está empurrando?

Mensagem por Gusba em Seg 19 Jan 2009, 20:29

problema bem resolvido, mas um conselho é primeiro checar se a tecla foi ou nao precionada e abrir outro if dentro do outro checando se esta colidiondo com o bloco

Gusba

Número de Mensagens : 1156
Idade : 21
Data de inscrição : 03/08/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   :
   :

http://www.ciganospictures.hd1.com.br

Voltar ao Topo Ir em baixo

Re: [Resolvido] Como checar se está empurrando?

Mensagem por Janx em Seg 19 Jan 2009, 21:23

Gusba escreveu:problema bem resolvido, mas um conselho é primeiro checar se a tecla foi ou nao precionada e abrir outro if dentro do outro checando se esta colidiondo com o bloco

bom acredito q nao fassa mta diferença =/
Ou tem diferença =/?

Janx

Número de Mensagens : 2417
Idade : 23
Data de inscrição : 24/05/2008
Reputação : 14
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 2
   : 0

Voltar ao Topo Ir em baixo

Re: [Resolvido] Como checar se está empurrando?

Mensagem por Gusba em Seg 19 Jan 2009, 21:41

a diferença é que voce vai economizar processamento, voce vai reduzir pela metade o numero de checagens, pq se a tecla nao for pressionada ele nem vai checar o proximo IF

Gusba

Número de Mensagens : 1156
Idade : 21
Data de inscrição : 03/08/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   :
   :

http://www.ciganospictures.hd1.com.br

Voltar ao Topo Ir em baixo

Re: [Resolvido] Como checar se está empurrando?

Mensagem por Janx em Ter 20 Jan 2009, 01:40

a, mas a diferença nao eh mta quando sao poucos eventos =/

Flw

Janx

Número de Mensagens : 2417
Idade : 23
Data de inscrição : 24/05/2008
Reputação : 14
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 2
   : 0

Voltar ao Topo Ir em baixo

Re: [Resolvido] Como checar se está empurrando?

Mensagem por Ticky em Ter 20 Jan 2009, 10:07

Então eu posso usar 4 if's no mesmo code?

Ticky

Número de Mensagens : 390
Idade : 19
Data de inscrição : 12/10/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: [Resolvido] Como checar se está empurrando?

Mensagem por Janx em Ter 20 Jan 2009, 12:01

4? nao...
Seria isso aki o:

if keyboard_check(vk_left)
{
if place_meeting(x,y,objeto_bloco)
{
sprite_index = movendo_andando_esquerda;
}
}

(para o primeiro codigo q vc fez)


Flw

Janx

Número de Mensagens : 2417
Idade : 23
Data de inscrição : 24/05/2008
Reputação : 14
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 2
   : 0

Voltar ao Topo Ir em baixo

Re: [Resolvido] Como checar se está empurrando?

Mensagem por Gusba em Ter 20 Jan 2009, 13:48

é, para poucas checagens nao faz muita diferença, mas eu sempre cuido isso, tipo, se eu for mudar de sprite, eu checo se a sprite é diferente da quela q ele vai troca, assim ele nao fica o tempo todo trocando, ele só troca uma vez

Gusba

Número de Mensagens : 1156
Idade : 21
Data de inscrição : 03/08/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   :
   :

http://www.ciganospictures.hd1.com.br

Voltar ao Topo Ir em baixo

Re: [Resolvido] Como checar se está empurrando?

Mensagem por Conteúdo patrocinado Hoje à(s) 06:05


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