• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

will.i.am

Jogo de carros em Flash

1 mensagem neste tópico

Boa noite, tenho de fazer um jogo de carros, já tenho o código para um jogador, vou deixá-lo aqui para o poderem analisar:

onClipEvent (enterFrame) {
    if (Key.isDown(Key.LEFT) && Key.isDown(Key.UP)) {
        this._rotation -= 2.6;
    }
    if (Key.isDown(Key.RIGHT) && Key.isDown(Key.UP)) {
        this._rotation += 2.6;
    }
    if (Key.isDown(Key.LEFT) && _root.z > 0.1&& (!Key.isDown(Key.UP) ) && (!Key.isDown(Key.DOWN) )) {
        this._rotation -= 2.6;
    }
    if (Key.isDown(Key.RIGHT)  && _root.z > 0.1&& (!Key.isDown(Key.UP) ) && (!Key.isDown(Key.DOWN) )) {
        this._rotation += 2.6;
    }
    if (Key.isDown(Key.LEFT) && Key.isDown(Key.DOWN)) {
        this._rotation += 2.6;
    }
    if (Key.isDown(Key.RIGHT) && Key.isDown(Key.DOWN)) {
        this._rotation -= 2.6;
    }
    if (Key.isDown(Key.UP)) {
        this._y -= (Math.cos(Math.PI/180 * this._rotation))*_root.z;
        this._x += (Math.sin(Math.PI/180 * this._rotation))*_root.z;
    }
    if (Key.isDown(Key.DOWN) ) {
        this._y -= Math.cos(Math.PI/180 * this._rotation) *_root.z;
        this._x += Math.sin(Math.PI/180 * this._rotation)*_root.z;
    }
    if (Key.isDown(Key.UP)&& !(Key.isDown(Key.DOWN) ) && _root.z > -2&& _root.z < 3) {
        _root.z += 0.08;
    }
    if (Key.isDown(Key.DOWN) && !(Key.isDown(Key.UP) ) && _root.z > -2&& _root.z < 3) {
        _root.z -= 0.08;
    }
    if ((_root.z > 0.1) && (!Key.isDown(Key.UP) )&& (!Key.isDown(Key.DOWN) )) {
        this._y -= (Math.cos(Math.PI/180 * this._rotation))*_root.z;
        this._x += (Math.sin(Math.PI/180 * this._rotation))*_root.z;
        _root.z -= 0.04;
    }
    if ((_root.z < -0.1) && (!Key.isDown(Key.UP) )&& (!Key.isDown(Key.DOWN) )) {
        this._y -= (Math.cos(Math.PI/180 * this._rotation))*_root.z;
        this._x += (Math.sin(Math.PI/180 * this._rotation))*_root.z;
        _root.z += 0.04;
    }
    if ((_root.z < 0.1) && (!Key.isDown(Key.UP) ) && (!Key.isDown(Key.DOWN) ) && _root.z >= 0 ) {
        _root.z = 0;
    }
    if ((_root.z > -0.1) && (!Key.isDown(Key.UP) ) && (!Key.isDown(Key.DOWN) )&& _root.z <= 0 ) {
        _root.z = 0;
    }
    if (Key.isDown(Key.UP)&& (Key.isDown(Key.DOWN) )) {
        _root.z /= 1.1;
    }
}

O jogo tem de ser Multiplayer, o primeiro jogador controla as teclas de direcção.

Para fazer o mesmo código para o segundo jogador, alterando as teclas de direcção para as teclas W, A, S e D, como devo fazer?

Os If´s ficarão algo deste género?

 if (Key.isDown(Key.A) && Key.isDown(Key.S)) {

Para definir limites tenho de recorrer à função Hit Test não é? Obrigado pela ajuda

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora