Primeiramente vamos criar um novo documento Flash ActionScript 2.0.
Vamos adicionar dois quadrados, um que será movimentado e outro que será feita a colisão.
Converta os dois desenhos para um MovieClip, clique com o botão direito e selecione Convert to Symbol... selecione MovieClip na tela que aparece e clique OK.
Na guia Properties, altere o nome dos objetos para "quadrado" e "parede".
Quadrado é o quadrado azul e parede é o verde.
Clique com o botão direito no primeiro Frame da Layer1 e selecione Actions.. e vamos colocar a "mão na massa".
Adicione o seguinte código:
Usamos o evento isDown para verificar se cada tecla foi pressionada e usamos em seguida o valor da tecla:
Key.isDown(Key.)
Assim se retornar verdadeiro, a condição if será executada.
Lembre-se que, o eixo onde o objeto é movimentado para cima e para baixo, é chamado de Y, e o eixo da horizontal é chamado de X. Você pode alterar o valor de cada incremento ou decremento de cada eixo.
Repare que usamos o hitTest para testar uma colisão com os seguintes parâmetros:
.hitTest(objeto2)
O hitTest retorna um valor lógico (true ou false), se for true nesse caso, será exibido no output a mensagem "colidiu".
Abraços e até a próxima.
Vamos adicionar dois quadrados, um que será movimentado e outro que será feita a colisão.
Converta os dois desenhos para um MovieClip, clique com o botão direito e selecione Convert to Symbol... selecione MovieClip na tela que aparece e clique OK.
Na guia Properties, altere o nome dos objetos para "quadrado" e "parede".
Quadrado é o quadrado azul e parede é o verde.
Clique com o botão direito no primeiro Frame da Layer1 e selecione Actions.. e vamos colocar a "mão na massa".
Adicione o seguinte código:
this.onEnterFrame = function(){
// se a tecla for para baixo
if(Key.isDown(Key.DOWN)){
// move o quadrado + 10 no eixo y
quadrado._y += 10;
}
// tecla para cima
else if(Key.isDown(Key.UP)){
// - 10 no eixo y
quadrado._y -= 10;
}
// esquerda
else if(Key.isDown(Key.LEFT)){
// - 10 eixo x
quadrado._x -= 10;
}
// direita
else if(Key.isDown(Key.RIGHT)){
// + 10 eixo x
quadrado._x += 10;
}
// se parede colidiu com quadrado
if(parede.hitTest(quadrado)){
// faça alguma coisa
trace("colidiu");
}
}
Usamos o evento isDown para verificar se cada tecla foi pressionada e usamos em seguida o valor da tecla:
Key.isDown(Key.
Assim se retornar verdadeiro, a condição if será executada.
Lembre-se que, o eixo onde o objeto é movimentado para cima e para baixo, é chamado de Y, e o eixo da horizontal é chamado de X. Você pode alterar o valor de cada incremento ou decremento de cada eixo.
Repare que usamos o hitTest para testar uma colisão com os seguintes parâmetros:
O hitTest retorna um valor lógico (true ou false), se for true nesse caso, será exibido no output a mensagem "colidiu".
Abraços e até a próxima.
0 comentários:
Postar um comentário