Conectar-se

Esqueci minha senha

Últimos assuntos
» colisão de queda após outra colisão dando problema
Ontem à(s) 20:18 por Willy

» [Duvida] O que aprender
Seg 26 Jun 2017, 15:32 por Markituh

» BUILD FAILED: Cannot find BUILD.xml
Seg 26 Jun 2017, 14:50 por ReisBlender

» Nota de esclarecimento - GMBR voltou!
Sex 23 Jun 2017, 20:33 por Willy

» Regras do Fórum
Sex 23 Jun 2017, 19:02 por GMBR

» Retorno da GMBR!!!
Ter 24 Jan 2017, 15:43 por GMBR

» Jogo Dengue HTML
Seg 30 Nov 2015, 16:17 por guga

» Criando IA Simples para inimigos
Qua 25 Nov 2015, 19:22 por DJDAVYD

» Ordenar variavel em ordem decrescente
Sex 28 Ago 2015, 21:09 por Kodained

» Crio Trilha Sonora para Games!
Qui 27 Ago 2015, 13:50 por Isaias Malafaia

» Problema com Colisão
Qui 27 Ago 2015, 12:30 por The_Game

» Quem quer Uma Engine, e de Quê?
Qui 27 Ago 2015, 09:22 por theguitarmester

» [RESOLV]Como adicionar 2 objetos na mesma posição?
Qua 26 Ago 2015, 11:38 por Bhryenno Kelvyn Carlson

» Sistema de porta!!!
Ter 25 Ago 2015, 21:29 por theguitarmester

» Venda de objetos em Inventário - Multiplicado
Seg 24 Ago 2015, 18:33 por AG Hydra

» Atirar na direção certa
Seg 24 Ago 2015, 09:03 por theguitarmester

» Western Duels
Seg 24 Ago 2015, 07:47 por theguitarmester

» Problemas na compilação android
Dom 23 Ago 2015, 23:43 por Zero.

» Dúvida sobre strings, lendo txt
Sab 22 Ago 2015, 20:31 por Pai véi

» Como estabilizar um som
Sab 22 Ago 2015, 19:03 por Isquilo_Roedor

» Janela Modal
Sab 22 Ago 2015, 09:23 por Pai véi

» Sobre instance Creation Code
Sab 22 Ago 2015, 08:39 por Pai véi

» LudumDare #33
Sex 21 Ago 2015, 21:17 por WellingtonBecker

» Como fazer um temporizador
Sex 21 Ago 2015, 19:02 por Isquilo_Roedor

» GMS sempre salva projeto ao compilar?
Sex 21 Ago 2015, 12:32 por Pai véi

Quem está conectado
18 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 18 Visitantes

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 324 em Ter 05 Out 2010, 13:36

Como mudar a movimentação do objeto

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

Como mudar a movimentação do objeto

Mensagem por BugueiXD em Sab 04 Jul 2015, 13:07

Eae pessoal, estou quebrando a cabeça mas não estou conseguindo terminar um sistema que eu fiz, queria que um objeto tivesse a movimentação normal, e para isso usei esse código:

Código:
if keyboard_check(vk_right)
  {
   x += 4
  }
  
  if keyboard_check(vk_left)
  {
   x -=4
  }
  
  if keyboard_check(vk_up)
  {
   y -= 4
  }
  
  if keyboard_check(vk_down)
  {
   y += 4
  }

Até ai tudo bem, mas eu queria que quando o objeto entrasse no outro(que no caso é um bloco 32x32) ele mudasse a movimentação para uma movimentação de grid, como se travasse no objeto, mas é claro podendo se movimentar

OBS: O objeto é um alvo, também 32x32
avatar
BugueiXD

Data de inscrição : 28/10/2014
Número de Mensagens : 29
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Como mudar a movimentação do objeto

Mensagem por Willy em Sab 04 Jul 2015, 13:42

Para a movimentação em grid funcionar, você tem que se certificar que o jogador não poderá alterar a direção do movimento por um certo período de tempo.

Você deverá criar uma variável chamada "Passos", esta por sua vez servirá como um contador (32 à 0). O jogador só poderá se movimentar SE esta var tiver o valor de zero. Por exemplo:

Código:
if (Passos = 0 && keyboard_check(vk_right)){
   Passos = 32;
}
E o movimento em grid seria assim:
Código:
repeat(4){
   if (Passos>0){
      Passos -=1;
      x+=1;
   }
}

Perceba que este pequeno código só se movimentará para a direita. Cabe a você bolar um sistema mais completo, atendendo as suas necessidades.

Dúvidas é só falar.
Flws...
blz

_________________


Engines, tutoriais e projetos? Clique no banner!



Atenção:
Comporte-se, senão você vai levar a cintada do Willy no meio da bunda! bravo

avatar
Willy

Ranking : Nota A
Notas recebidas : C + B + A + A
Data de inscrição : 08/06/2009
Número de Mensagens : 1814
Insígnias de JAM :

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

Prêmios
   : 2
   : 1
   : 1

Ver perfil do usuário http://willy-gmbr.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Como mudar a movimentação do objeto

Mensagem por BugueiXD em Sab 04 Jul 2015, 13:52

Não era bem isso que eu queria, como disse o objeto que eu quero com esse sistema seria um alvo, até ai tudo bem, queria que ele se movimentasse com uma movimentação bem livre, como aquela que eu coloquei ali encima , mas ao colidir com certo objeto, queria que ele ficasse com uma movimentação em grid, como se estivesse travando uma mira
avatar
BugueiXD

Data de inscrição : 28/10/2014
Número de Mensagens : 29
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Como mudar a movimentação do objeto

Mensagem por Willy em Sab 04 Jul 2015, 13:57

Não entendi muito bem o que exatamente você quer. Mas se você quer que o tipo de movimentação mude, simplesmente use uma variável que decide qual tipo de movimento deve ser executado. Claro, isso é bem óbvio, mas é o que eu consegui entender da sua dúvida, portanto eu sei que não é isso o que você quer.

_________________


Engines, tutoriais e projetos? Clique no banner!



Atenção:
Comporte-se, senão você vai levar a cintada do Willy no meio da bunda! bravo

avatar
Willy

Ranking : Nota A
Notas recebidas : C + B + A + A
Data de inscrição : 08/06/2009
Número de Mensagens : 1814
Insígnias de JAM :

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

Prêmios
   : 2
   : 1
   : 1

Ver perfil do usuário http://willy-gmbr.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Como mudar a movimentação do objeto

Mensagem por BugueiXD em Sab 04 Jul 2015, 14:10

Legal, era isso mesmo que eu queria, criei uma variável chamada movimentação e dei dois valores a ela:

Código:
Movimentacao = 0
Movimentacao = 1

No valor 0 a movimentação é livre, posso movimentar meu alvo pelo cenário todo, no valor 1 a movimentação vira uma movimentação em grid, ficou bom, mas gostaria de saber se tem como arrastar minha mira para o meio do bloco, sendo que os dois tem 32x32
avatar
BugueiXD

Data de inscrição : 28/10/2014
Número de Mensagens : 29
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Como mudar a movimentação do objeto

Mensagem por Willy em Sab 04 Jul 2015, 14:21

Antes de iniciar o movimento de grid, use um sistema com repeat para igualar o valor x/y dos dois objetos ou simplesmente defina o valor x/y = other.x/y diretamente (isso fará um movimento brusco).

_________________


Engines, tutoriais e projetos? Clique no banner!



Atenção:
Comporte-se, senão você vai levar a cintada do Willy no meio da bunda! bravo

avatar
Willy

Ranking : Nota A
Notas recebidas : C + B + A + A
Data de inscrição : 08/06/2009
Número de Mensagens : 1814
Insígnias de JAM :

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

Prêmios
   : 2
   : 1
   : 1

Ver perfil do usuário http://willy-gmbr.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Como mudar a movimentação do objeto

Mensagem por BugueiXD em Sab 04 Jul 2015, 14:36

Eu tentei fazer assim

Código:
  if  Movimentacao = 1
  {
   repeat(4)
   {
    if x = (other).x && y = (other).y
    {
    }
    else
    {
     x = (other).x && y = (other).y
    }
   }
 }

mas o meu alvo vai para o inicio da tela
avatar
BugueiXD

Data de inscrição : 28/10/2014
Número de Mensagens : 29
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Como mudar a movimentação do objeto

Mensagem por Willy em Sab 04 Jul 2015, 14:53

A função other funciona apenas no evento de colisão ou dentro de um escopo with.

Considerando que você disse "entrar no alvo", vou considerar que existe uma colisão. Então, no objeto que se movimenta, na colisão com o objeto:
Código:
x = other.x;
y = other.y;
Essa é a forma brusca. A mais suave é um pouco trabalhosa de escrever de cabeça.

_________________


Engines, tutoriais e projetos? Clique no banner!



Atenção:
Comporte-se, senão você vai levar a cintada do Willy no meio da bunda! bravo

avatar
Willy

Ranking : Nota A
Notas recebidas : C + B + A + A
Data de inscrição : 08/06/2009
Número de Mensagens : 1814
Insígnias de JAM :

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

Prêmios
   : 2
   : 1
   : 1

Ver perfil do usuário http://willy-gmbr.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Como mudar a movimentação do objeto

Mensagem por BugueiXD em Sab 04 Jul 2015, 15:14

Quando coloco isso no obj do alvo(que é o que se movimenta) ele não "entra" mais no bloco
avatar
BugueiXD

Data de inscrição : 28/10/2014
Número de Mensagens : 29
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Como mudar a movimentação do objeto

Mensagem por Willy em Sab 04 Jul 2015, 15:55

Bom, fica meio difícil fazer algo exato, eu não tenho como saber como seus objetos se comportam ou como devem se comportar. Mas a base é essa, manipular o x/y do objeto até que fique na posição desejada.

Flws...

_________________


Engines, tutoriais e projetos? Clique no banner!



Atenção:
Comporte-se, senão você vai levar a cintada do Willy no meio da bunda! bravo

avatar
Willy

Ranking : Nota A
Notas recebidas : C + B + A + A
Data de inscrição : 08/06/2009
Número de Mensagens : 1814
Insígnias de JAM :

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

Prêmios
   : 2
   : 1
   : 1

Ver perfil do usuário http://willy-gmbr.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Como mudar a movimentação do objeto

Mensagem por BugueiXD em Dom 05 Jul 2015, 12:25

Eu consegui aqui, ficou bem do jeito que eu queria
avatar
BugueiXD

Data de inscrição : 28/10/2014
Número de Mensagens : 29
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Como mudar a movimentação do objeto

Mensagem por Conteúdo patrocinado


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