Fusion Makers
Faça login para usufruir de todos nossos recursos. Ainda não tem uma conta? Inscreva-se já!

Participe do fórum, é rápido e fácil

Fusion Makers
Faça login para usufruir de todos nossos recursos. Ainda não tem uma conta? Inscreva-se já!
Fusion Makers
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Procurar
 
 

Resultados por:
 


Rechercher Pesquisa avançada

Últimos assuntos
» Ideia: MMFMakers, do zero
por mediamaker Qua 26 maio 2021, 12:28

» [Flash] Haunt the house
por mediamaker Sáb 19 Set 2020, 16:47

» Como a criar passo a passo engine de Movimento Grid com colisão (tipo Bomberman) completo usadno extensão Array?
por mediamaker Sex 15 Set 2017, 14:19

» CF2.5 -> 26 reais na steam
por Matheus290 Ter 22 Dez 2015, 17:52

» Aplicação com Editbox não tá rodando online
por Matheus290 Sáb 19 Set 2015, 01:38

» A Guilda continua!!!! "Âncora Team" (novo nome)
por weliowl7 Qua 16 Set 2015, 01:52

» Sub-application e Inventario
por majorcorps Dom 23 Ago 2015, 13:11

» Efeito de string
por majorcorps Sáb 22 Ago 2015, 19:55

» [PC] Pitiri 1997
por Matheus290 Sáb 20 Jun 2015, 17:10

» Teclado virtual com Edit Box
por mediamaker Sáb 20 Jun 2015, 14:10

Quem está conectado?
3 usuários online :: 0 registrados, 0 invisíveis e 3 visitantes :: 1 motor de busca

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 251 em Ter 26 Out 2021, 22:21
Estatísticas
Temos 256 usuários registrados
O último membro registrado é Sitydistta

Os nossos membros postaram um total de 5268 mensagens em 575 assuntos

Movimento de 360º, O que é e como funciona...

2 participantes

Ir para baixo

Movimento de 360º, O que é e como funciona... Empty Movimento de 360º, O que é e como funciona...

Mensagem por Skilo Sex 21 Jan 2011, 14:43

Dificuldade: Avançado
Extensão necessária: Fast Loop Object (Obs: você pode usar os loops do MMF , eu uso a Fast Loop por costume mesmo)
Maker: MMF2
Ao som de: Otherside - Red Hot Chili Pepers

Bom, hoje vou ensinar como fazer um movimento de 360º visto de cima, que é o mais simples e fácil pra quem está aprendendo agora.
Antes de começar, é bom que você entenda um pouco sobre ângulos, seno e cosseno, para um melhor entendimento.
Nessa matéria, vou usar counters, que são mais fáceis de escrever os eventos(não vou complicar pra mim né XD).
Ok, primeiramente crie 4 counters:
  • Ângulo
    Velocidade
    X
    Y

Agora os eventos:

Código:
Start of Frame -> Set counter X to X("active") / Set counter Y to Y("active")

Código:
Alwas -> Set position X(active) to value("counterX") / Set position Y(active) to value("counterY")

Explicando:
A posição dos actives vai sempre se ajustar aos valores dos counters. O primeiro evento serve para os counters começarem com a posição do active, caso contrário ele começará nas posições 0 e 0.
Agora a velocidade:

Código:
Repeat while "Up Arrow" is pressed -> Add 1 to Counter("velocidade")
+ ("velocidade") < 10

Código:
Repeat while "Down Arrow" is pressed -> Sub 1 to Counter("velocidade")
+ ("velocidade") > -10

Eventos simples, "cima" aumenta a velocidade e "baixo" diminui.
Próximo:

Código:
Counter("velocidade") <> 0 -> Star Loop #0 for Abs(value("velocidade")) loop(s)

Como o movimento vai ser baseado nos loops, a quantidade se loops serão de acordo com a velocidade.
Nota: para usar o comando "abs", é necessário digitá-lo, não tem nenhum botão que faz ele aparecer =p
Ele tem a mesma função do módulo na matemática, tornar positivos os número negativos. E pra que fazer isso? Simples, mande o Fast Loop dar um número negativo de voltas e você verá XD

Código:
(Fast Loop): Loop trigger #0
+ Counter("Velocidade") > 0 -> Add Cos(value( "Angulo" )) to Counter X / Sub Sin(value( "Angulo" )) to Counter Y

Explicando: essa é a parte mais complicada de se entender, mas não é nada difícil.
Como exemplo vou usar o ângulo 0, veja:
Movimento de 360º, O que é e como funciona... Circunfernciamv0

Se o ângulo é 0, o objeto deverá andar nesta direção ->
Logo, somente a posição X deverá aumentar, enquanto a posição Y continua a mesma.
Agora um evento para andar pra trás:
Código:
(Fast Loop): Loop trigger #0
+ Counter("Velocidade") < 0 -> Sub Cos(value( "Angulo" )) from Counter X / Add Sin(value( "Angulo" )) from Counter Y

Praticamente a mesma coisa, a diferença é que ao invés de adicionar valores às posições nós subtraímos.

Pronto, o objeto já vai andar normalmente, para frente e para trás, mas ainda faltam duas coisinhas básicas:

1- Desaceleração:
Código:
X Repeat while "Up Arrow" is pressed -> Sub 1 from Counter("velocidade")
+ ("velocidade") > 10

Código:
X Repeat while "Down Arrow" is pressed -> Add 1 to Counter("velocidade")
+ ("velocidade") > -10

X indica uma ação negativa, ou seja, o comando negate.

2 - Alterar direção
Código:
Repeat while "Left Arrow" is pressed -> Add 3 to Counter("Angulo")

Código:
Repeat while "Right Arrow" is pressed -> Sub 3 from Counter("Angulo")

Meio óbvio =p, esses eventos servem para mudar de direção, eu usei o valor 3 porque se for só 1 ele gira muito devagar, com 3 fica bacana, mas isso fica a seu critério ^^

Pra finalizar, um evento para alterar a direção da animação:
Código:
Always -> Set Angle("Active") to value( "Angulo" ) (Quality = 1)

Bom pessoal, é isso, espero que tenham gostado da matéria e aprendido com ela, qualquer dúvida é só postar ok Wink

Matéria postada na BrMaker por Silas

OBS: Havia link para download de uam engine 360, mas ja havia expirado, por isso não consta na matéria.
Skilo
Skilo
Usuário

Mensagens : 32
Data de inscrição : 28/01/2010

Ir para o topo Ir para baixo

Movimento de 360º, O que é e como funciona... Empty Re: Movimento de 360º, O que é e como funciona...

Mensagem por Eskyz Sex 21 Jan 2011, 17:40

Eu ainda me lembrava dessa matéria. Bravo, Silas, bravo! Explicadíssima! Até eu consegui fazer, seguindo passo-a-passo.

Agora vou fazer um jogo de 24H com essa matéria =D
Thanks.
Eskyz
Eskyz
Administrador
Administrador

Mensagens : 360
Data de inscrição : 28/02/2010
Idade : 27
Localização : Brasil

http://www.mmfmakers.rg3.net/

Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos