Inverter lados

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

Resolvido Inverter lados

Mensagem por andreh em Ter 12 Abr 2011, 22:16

Bom, o meu problema é o seguinte: se apertar a seta direcional direita, o player vai pra direita, e se apertar a esquerda, vai pra esquerda. Mas eu quero criar um objeto na qual se o player colidir, mude a direção, ou seja, se apertar direita, vai pra esquerda, se apertar esquerda vai pra direita. Eu quero o mesmo para o mouse, se levar pra direita vai pra esquerda e se levar pra esquerda vai pra direita. Por favor me ajudem.


Última edição por andreh em Qua 13 Abr 2011, 15:59, editado 1 vez(es)

andreh

Ranking : Nota C
Número de Mensagens : 183
Idade : 20
Data de inscrição : 09/03/2011
Notas recebidas : C
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: Inverter lados

Mensagem por Nuclear em Ter 12 Abr 2011, 22:27

Coloca isso no create do player:

Código:
dorgas=false

RESUMO:
Cria a variavel dorgas

Coloca isso no step do player:

Código:
if dorgas=false
{
if keyboard_check_pressed(vk_down){y+=32}
if keyboard_check_pressed(vk_right){x+=32}
if keyboard_check_pressed(vk_left){x-=32}
if keyboard_check_pressed(vk_up){y-=32}
}
else
{
if keyboard_check_pressed(vk_down){y-=32}
if keyboard_check_pressed(vk_right){x-=32}
if keyboard_check_pressed(vk_left){x+=32}
if keyboard_check_pressed(vk_up){y+=32}
}

RESUMO:
Se ele não tive dorgado ele anda normal, caso contrario a movimentação muda.

Agora na colisão com o obj_poção_que_deixa_doidão:

Código:
dorgas=true

Colisão com o obj_poção_cura:

Código:
dorgas=false

Não esqueça de adptar

Nuclear

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

Voltar ao Topo Ir em baixo

Resolvido Re: Inverter lados

Mensagem por gustavo ferreira em Ter 12 Abr 2011, 22:30

faz assim no create
Código:
global.inverte=false
ae na colisão com o objeto que faz mudar vc coloca
Código:
global.inverte=true
ae no step do player
Código:
if global.inverte=true{
if keyboard_check(vk_right){
if place_free(x-2,y){x-=5}
}
if keyboard_check(vk_left){
if place_free(x+2,y){x+=5}
}
}else{
if keyboard_check(vk_right){
if place_free(x+2,y){x+=5}
}
if keyboard_check(vk_left){
if place_free(x-2,y){x-=5}
}
olha num testei mais provavelmente da certo XD!!

gustavo ferreira

Ranking : Nota C
Número de Mensagens : 470
Idade : 22
Data de inscrição : 03/12/2010
Notas recebidas : C+C+C+C
Reputação : 28
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: Inverter lados

Mensagem por andreh em Ter 12 Abr 2011, 22:45

os 2 dão certo, mas vcs tem ideia de como fazer isso com o mouse? se levar o mouse pra direita, ele vai pra esquerda e vice-versa. Por favor me ajudem, mas agradeço por me ajudarem com o teclado.

andreh

Ranking : Nota C
Número de Mensagens : 183
Idade : 20
Data de inscrição : 09/03/2011
Notas recebidas : C
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: Inverter lados

Mensagem por Shadow10 em Ter 12 Abr 2011, 23:14

Eu simplifiquei tudo pra você com um simples switch.
Testei aqui e ta funcionando muito bem.

No create coloca essa variavel:
Código:
invertido = false;

E no step esse:
Código:
switch (keyboard_key)
{
  case vk_right:
  if invertido = false{
  x+=5;
  } else if  invertido = true{
  x-=5;
  }
  break;
  case vk_left:
  if invertido = false{
  x-=5;
  } else if  invertido = true{
  x+=5;
  }
  break;
}

**********Editado***********

E pros eventos do mouse usa esses códigos aqui:
Código:
if mouse_x > object0.x and invertido = false{
object0.x+=5;
}
if mouse_x > object0.x and invertido = true{
object0.x-=5;
}
if mouse_x < object0.x and invertido = false{
object0.x-=5;
}
if mouse_x < object0.x and invertido = true{
object0.x+=5;
}

Certo?


Última edição por Shadow10 em Ter 12 Abr 2011, 23:29, editado 1 vez(es)

Shadow10

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

Voltar ao Topo Ir em baixo

Resolvido Re: Inverter lados

Mensagem por andreh em Ter 12 Abr 2011, 23:22

Vlw, mas vc nao tem ideia de como aplicar isso no mouse?

andreh

Ranking : Nota C
Número de Mensagens : 183
Idade : 20
Data de inscrição : 09/03/2011
Notas recebidas : C
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: Inverter lados

Mensagem por Shadow10 em Ter 12 Abr 2011, 23:30

Eu dei um edite aí em cima esplicando sobre o mouse, ve se ficou do jeito que você ta querendo.
Comenta aí qualquer coisa.

Shadow10

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

Voltar ao Topo Ir em baixo

Resolvido Re: Inverter lados

Mensagem por andreh em Qua 13 Abr 2011, 15:58

Vlw, deu td certo, obrigado a todos q me ajudaram. Resolvido.

andreh

Ranking : Nota C
Número de Mensagens : 183
Idade : 20
Data de inscrição : 09/03/2011
Notas recebidas : C
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: Inverter lados

Mensagem por Conteúdo patrocinado Hoje à(s) 10:19


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