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

Willy

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 16/01/2009
Número de Mensagens : 44
Insígnias de JAM :

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

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

Rotação de acordo com a posição do mouse e colisões

em Ter 22 Jun 2010, 13:57
BOA TARDE GMBR *---*
Que saudade, estive sumido esperando minha licença chegar, mais agora estou de GMK 8 PRO originalzão *-*

Mais é de lei pedir ajuda ao povo da gmbr!

Vamos ao ponto, um exemplo breve:


Suponhamos que eu tenho essa seta: ----->
eu quero que essa seta gire, no eixo dela, apontando para o mouse, até aí acho que isso não é complicado, tenho pouca noção disso, mais ja consigo fazer, mais sempre é bem vindo um jeito novo de se fazer...

Até aí tudo bem.
Mas eu tenho a duvida que anda matando minhas produções:
Como eu faço pra seta girar, e os objetos colidirem de acordo com a posição da seta?
tipo, se a seta estiver à 45º os objetos baterem de acordo com isso, e não com a posição de colisão normal dela...

Não sei se formulei a pergunta de forma certa, mais vamos indo Razz

Abraços! Feliz Feliz
avatar
Data de inscrição : 24/05/2008
Número de Mensagens : 2417
Insígnias de JAM :

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

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

Re: Rotação de acordo com a posição do mouse e colisões

em Ter 22 Jun 2010, 15:24
1- Para girar ela é muito simples, na sprite modifique o ponto de apoio (origem) da imagem para onde você quer que seja o "centro", quando ela girar, essa posição ficará estatica.
Dai para ele ficar olhando sempre para o mouse:
A imagem inicial dela deve ser para a direita ou seja: ---->

Depois no step coloque o código:
image_angle = point_direction(x,y,mouse_x,mouse_y);

Pronto!
Sua flecha está olhando para o mouse!

2- Não intendi direito o problema, você quer que os objetos ganhem um movimento diferente dependendo do angulo de inclinação dela?
Por exemplo: Um objeto plano, uma bola que quicar em cima vai voltar para cima. Um objeto com inclinação de 30º vai fazer a bola pingar um pouco para o lado. É isso?
Se for é mais complicado, pois depende do ponto onde o objeto colidiu, a forma do objeto, etc. Pelomenos, se você quiser algo que pareça real.

Mas se for só para colidir com a seta de acordo com a imagem, basta você selecionar a opção no sprite: "precise collision"
Isso é a colisão por pixel.
avatar
Data de inscrição : 16/01/2009
Número de Mensagens : 44
Insígnias de JAM :

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

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

Re: Rotação de acordo com a posição do mouse e colisões

em Ter 22 Jun 2010, 15:42
(na parte 2, é exatamente isso que eu dizia (y))
Mas na precise collision, ele num vai modificar a forma que o objeto kika, com base no angulo da imagem neh ? só com base na imagem inicial?
avatar
Data de inscrição : 17/05/2009
Número de Mensagens : 938
Insígnias de JAM :

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

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

Re: Rotação de acordo com a posição do mouse e colisões

em Ter 22 Jun 2010, 16:00
Para fazer os outros objetos colidirem de acordo com o angulo da seta, tipo o que o Janx falou, o objeto ir para a direção contrária com referência à seta, basta deixar o objeto que é a seta como não solido e nos outros objetos que é para colidirem com a seta ADD um evento de colisão com a seta, e ir na "aba MOVE" e arrastar o icone chamado BONCE, e deixar as configurações como abiaxo:

Aplique to: Self
Precise: Precisely
Against: All Objects

Assim os outros objetos vão rebater na seta e ir para várias direções dependendo da direção em que eles vão e da superfície da seta, tipo igual as bolinhas de bilhar !
avatar
Data de inscrição : 16/01/2009
Número de Mensagens : 44
Insígnias de JAM :

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

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

Re: Rotação de acordo com a posição do mouse e colisões

em Ter 22 Jun 2010, 18:11
Vo fazer o teste, jaja volto com a resposta se funcionou...

EDIT:
Bom, primeiramente queria agradecer à vocês mais uma vez por me ajudarem nas 2 questões.
funcionou perfeitamente.
e só pra concluir, acho que algumas pessoas ainda vão ter essa duvida futuramente, quem sabe olhando aki ja tenham uma noção melhor:
Solido, e não solido. Ao pé da letra, sabemos o que é e tudo mais. Mas teriamos uma definição melhor de quando usar, ou não a opção solida? somente em paredes?

Abraços, e tudo de bom!
avatar
Data de inscrição : 24/05/2008
Número de Mensagens : 2417
Insígnias de JAM :

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

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

Re: Rotação de acordo com a posição do mouse e colisões

em Ter 22 Jun 2010, 21:29
Bom... você pode usar "solid" para outras coisas... mas o mais comum é isso mesmo, pois existem funções que utilizam essa variavel para checar a colisão e os eventos de colisão tambem usam ela.

Mas você pode usar solid para definir um tipo de objeto qualquer, mas tome cuidado para não ter problemas de colisão pois se tiver um evento de colisão com um objeto que tem solid como true, já pode dar vários problemas...
Outro motivo de ser mais usado apenas para colisões.


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