Android Open Source - TileArena Keyboard Controller






From Project

Back to project page TileArena.

License

The source code is released under:

MIT License

If you think the Android project TileArena listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package game.tile.arena.util.controller;
/*from w w w .  ja  v  a  2 s.  c o  m*/
import game.tile.arena.Game;
import game.tile.arena.util.Position;
import game.tile.arena.util.input.KeyboardMoveInput;

public class KeyboardController extends PlayerController {

    Position movementPos;
    Position attackPos;

    KeyboardController() {
        movementPos = new Position(0,0);
        attackPos = new Position(0,0);
        Game.rawInput.addInputProcessor(new KeyboardMoveInput(this));
        Game.rawInput.addInputProcessor(new MouseAttackInput(this));
    }

    @Override
    public Position getMovement() {
        return movementPos;
    }

    @Override
    public Position getAttack() {
        return attackPos;
    }

    public void keyPressed(int dir) {
        switch (dir) {
            case 0:
                movementPos = movementPos.add(1,0);
                break;
            case 1:
                movementPos = movementPos.add(0,1);
                break;
            case 2:
                movementPos = movementPos.add(-1,0);
                break;
            case 3:
                movementPos = movementPos.add(0,-1);
                break;
        }
    }

    public void keyReleased(int dir) {
        keyPressed((dir+2)%4);
    }

    public boolean mouseClick(int x, int y, int pointer, int button) {
        mouseClick(x, y, pointer);
        return true;
    }

    public boolean mouseClick(int x, int y, int pointer) {
        attackPos = Game.player.pos.subtract(x, y).subtract(Game.getCameraPos().subtract(Game.SCREEN.scale(1/2.0))).invertX();
        return true;
    }

    public boolean mouseUp(int x, int y, int button) {
        attackPos = new Position(0, 0);
        return true;
    }
}




Java Source Code List

game.tile.arena.Game.java
game.tile.arena.TileArena.java
game.tile.arena.android.AndroidLauncher.java
game.tile.arena.client.HtmlLauncher.java
game.tile.arena.desktop.DesktopLauncher.java
game.tile.arena.entity.Entity.java
game.tile.arena.entity.Player.java
game.tile.arena.entity.attack.AttackBow.java
game.tile.arena.entity.attack.AttackList.java
game.tile.arena.entity.attack.Attack.java
game.tile.arena.entity.enemy.Enemy.java
game.tile.arena.entity.enemy.ai.EnemyAI.java
game.tile.arena.entity.enemy.ai.EnemyDodgeAI.java
game.tile.arena.entity.enemy.ai.EnemyRandomAI.java
game.tile.arena.entity.projectile.LinearProjectile.java
game.tile.arena.entity.projectile.Projectile.java
game.tile.arena.sprite.EntitySprite.java
game.tile.arena.sprite.Image.java
game.tile.arena.util.MathHelper.java
game.tile.arena.util.Position.java
game.tile.arena.util.Preferences.java
game.tile.arena.util.controller.Joystick.java
game.tile.arena.util.controller.KeyboardController.java
game.tile.arena.util.controller.MouseAttackInput.java
game.tile.arena.util.controller.PlayerController.java
game.tile.arena.util.controller.TouchController.java
game.tile.arena.util.input.InputManager.java
game.tile.arena.util.input.JoystickInput.java
game.tile.arena.util.input.KeyboardMoveInput.java
game.tile.arena.util.input.WeaponSwitchInput.java
game.tile.arena.world.Tile.java
game.tile.arena.world.World.java