Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Thon

função

Recommended Posts

Eae galera.

 

Sou iniciante no AS3, já entendo um pouco sobre a lógica da programação e tenho um conhecimento já sobre variáveis, switchs, estruturas de repetição e afins. Estou fazendo um game bem iniciante no flash, se trata de como personagem um Avião e um Barco.

 

O objetivo do jogo é você atingir o barco (player 1) com uma bomba que vai sair do avião, e o player 2 desviar podendo andar só para frente.

 

Eu defini as teclas para ambos os movieclip, fazendo o avião ter 3 direções e o navio 1 com suas respectivas velocidades. O problema mesmo é que não estou conseguindo fazer um código no qual faria a bomba "cair" do avião e atingir o navio.

 

Minha estrutura seria para atirar, caso pegasse a bomba "explodiria" e o jogo fosse para uma tela de "end game", se o player 2 conseguisse desviar durante 10 segundos, o player 1 perdia.

 

Vou postar o código do que já fiz até agora, deem uma olhada:

 

import flash.events.KeyboardEvent;
import flash.ui.Keyboard;
import flash.events.Event;
//============================================================
//Variaveis de ações =========================================
var pressSpace:Boolean = false; //bomba atirada

//Variaveis de controle do player 1 e 2 ==========================
var pressLeft:Boolean = new Boolean(false); //pressionar left
var pressRight:Boolean = new Boolean(false);//pressionar right
var pressUp:Boolean = new Boolean(false); //pressionar up
var pressDown:Boolean = new Boolean(false); //pressionar Down
var pressA:Boolean = new Boolean(false); //pressionar A
var pressD:Boolean = new Boolean(false); //pressionar D
//==============================================================
Mouse.hide(); //ocultar seta
addEventListener(Event.ENTER_FRAME, eframe); //atualizar frames
function eframe(event:Event):void
{
aviao.x -= 4
navio.x += 3

if (aviao.x < -80){
 aviao.x = stage.stageWidth + 50
}
if (navio.x > stage.stageWidth + 50){
 navio.x = -25
}
}
//=================================================================
//Eventos de movimento ==============================
stage.addEventListener(KeyboardEvent.KEY_DOWN, pressionar)
stage.addEventListener(KeyboardEvent.KEY_UP, despressionar)
stage.addEventListener(Event.ENTER_FRAME, movee)
stage.addEventListener(KeyboardEvent.KEY_DOWN, pressnavio)
stage.addEventListener(KeyboardEvent.KEY_UP, despressnavio)
stage.addEventListener(Event.ENTER_FRAME, movebarco)
stage.addEventListener(Event.ENTER_FRAME, movetwo)
stage.addEventListener(Event.ENTER_FRAME, moveone)
//=================================================================
//PLAYER 1
function pressionar(event:KeyboardEvent):void{
switch (event.keyCode) {
 case 37: //esquerdo
 pressLeft = true;
 break;
 case 38: //cima
 pressUp = true;
 break;
 case 40: //baixo
 pressDown = true;
 break;
}
}
function despressionar(event:KeyboardEvent):void{
switch (event.keyCode){
 case 37: //esquerdo
 pressLeft = false;
 break;
 case 38: //cima
 pressUp = false;
 break;
 case 40: //baixo
 pressDown = false;
 break;
}
}
function movee(e:Event):void {
if (pressLeft){
 if (this.aviao.x -= 5);
 }
if (pressUp) {
 (this.aviao.y -= 5);
}
if (pressDown) {
 (this.aviao.y += 5);
}
}
function movetwo(e:Event):void {
if (pressUp) {
 if(this.aviao.y > 320) {
  this.aviao.y -= 0;
 }
}
}
function moveone(e:Event):void {
if (pressDown) {
 if(this.aviao.y < 110) {
  this.aviao.y +=5;
 }
}
}
//=========================================================================
//PLAYER 2
function pressnavio(event:KeyboardEvent):void {
switch (event.keyCode) {
 case 65: //tecla A
 pressA = true;
 break;
 case 68: //tecla D
 pressD = true;
 break;
}
}
function despressnavio(event:KeyboardEvent):void {
switch (event.keyCode) {
 case 68: //tecla D
 pressD = false;
 break;
}
}
//=========================================================================

 

Preciso muito de um help aí.

 

Agradeço desde já.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.