Conectar-se
Quem está conectado
14 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 14 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 10/04/2012
Número de Mensagens : 63
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 3

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://www.ihebhost.com.br

Como fazer o obj arremessado deslocar outro ?

em Ter 03 Jun 2014, 20:17
Beleza,
Estou com um game de Aventura com fases estilo plataforma.
Em alguns pontos das fases meu player precisará atirar em uma caixa e essa caixa irá se deslocar em uma determinada velocidade para atingir um inimigo.
Parecido com o que acontece em jogos estilos Angry Birds, para poder visualizar o que estou querendo.
Arremessa o pássaro e ele bate em um objeto que se desloca etc.

Vi uma engine que vem com o GMS mas não encontrei o que faz isso..
O meu game não é estilo Angry Birds, acredito que tenha alguma forma mais simples.
avatar
Data de inscrição : 15/08/2010
Número de Mensagens : 1597
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 147

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://spyreserver.16mb.com

Re: Como fazer o obj arremessado deslocar outro ?

em Ter 03 Jun 2014, 20:27
na colisao
if(other.speed>speed){
speed=other.speed
direction=other.direction
}else{
speed=-speed
}

fiz de cabeça, acho que funciona :p
avatar
Data de inscrição : 10/04/2012
Número de Mensagens : 63
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 3

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://www.ihebhost.com.br

Re: Como fazer o obj arremessado deslocar outro ?

em Sab 07 Jun 2014, 12:24
Essa deu certo...

Mas eu tenho um fase onde possui varias caixas (mesmo objeto) e quando o tiro acerta uma caixa, todas as outras se movem hehehe.
Fiz outro objeto ser criado quando o tiro acerta a caixa e fazer o deslocamento através dele. dessa forma funcionou, mas não sei se é certo.

Como eu faria para que quando o tiro acertar a caixa ela girar, ter mais física no impacto?
avatar
Ranking : Sem avaliações
Data de inscrição : 11/10/2009
Número de Mensagens : 2184
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 106

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

Re: Como fazer o obj arremessado deslocar outro ?

em Sab 07 Jun 2014, 12:40
Reputação da mensagem: 100% (1 votos)
Pô, aí você já precisaria de uma engine de física, fazer manualmente em GML é perda de tempo. Na GMToolbox tem uma seção de Physics la que pode ser interessante dar uma olhada. E o GMS já vem com um sistema de física embutido, mas não posso te dar muitos detalhes já que nunca o usei, sem falar que é pouco documentado nos docs da YoyoGames. Segue aí alguns links que achei:

- Tutoriais de um gringo
- Tópico na GMC discutindo sobre as funções de física.
avatar
Ranking : Nota A
Notas recebidas : A - A - A - A - A -A -C
Data de inscrição : 08/12/2011
Número de Mensagens : 1011
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 71

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

Re: Como fazer o obj arremessado deslocar outro ?

em Sab 07 Jun 2014, 14:31
Como eu faria para que quando o tiro acertar a caixa ela girar, ter mais física no impacto?
ative um alarm no impacto e enquanto ele estiver ativo coloque no step:
if alarm[0]>-1 image_angle+=5;

Lembre-se de ajustar também a gravidade e friction para dar mais realismo.

Voce pode checar também o ponto de colisão na caixa pra determinar pra que lado ela vai girar. Se acertar na parte de baixo gira pra cima e em cima gira pra baixo.

Pra caixa desacelerar o giro use algo como:
if alarm[0]>-1 image_angle+=150/alarm[0]

Vá testando os valores pra ver o que funciona melhor no seu jogo.
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