Android Open Source - X3n0break Game Input Processor






From Project

Back to project page X3n0break.

License

The source code is released under:

GNU General Public License

If you think the Android project X3n0break 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 org.x3n0m0rph59.breakout;
/*  ww  w.ja va2s  . com*/
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.Input.Keys;
import com.badlogic.gdx.InputProcessor;
import com.badlogic.gdx.graphics.Camera;
import com.badlogic.gdx.math.Rectangle;
import com.badlogic.gdx.math.Vector2;
import com.badlogic.gdx.math.Vector3;

public class GameInputProcessor implements InputProcessor {
  @Override
  public boolean keyDown(int keycode) {
    return false;
  }

  @Override
  public boolean keyUp(int keycode) {
    switch (keycode) {
    case Keys.H:
      ((App) Gdx.app.getApplicationListener()).getGameScreen().getPaddle().getGrapplingHook().toggleSwitch();
      
      return true;
      
    case Keys.B:                    
      ((App) Gdx.app.getApplicationListener()).getGameScreen().releaseSpaceBomb();
      
      return true;
      
    case Keys.PLUS:
      ((App) Gdx.app.getApplicationListener()).getGameScreen().cheat(false);
      
      return true;
      
      
      // TODO: Make this work
//      if (lastKeyID == Keyboard.KEY_LEFT) {        
//        paddle.changeX(-50.0f);
//      }
//      
//      if (lastKeyID == Keyboard.KEY_RIGHT) {        
//        paddle.changeX(+50.0f);
//      }
    }
    
    return false;
  }

  @Override
  public boolean keyTyped(char character) {
    return false;
  }

  @Override
  public boolean touchDown(int screenX, int screenY, int pointer, int button) {            
    switch (pointer) {
    case 0:
      switch (button) {
      case 2:      
        final boolean detonated = ((App) Gdx.app.getApplicationListener()).getGameScreen().detonateSpaceBombs();
        
        if (!detonated)
          ((App) Gdx.app.getApplicationListener()).getGameScreen().getPaddle().getGrapplingHook().toggleSwitch();        
        
        return true;            
      }
      break;
      
    case 1:
      final boolean detonated = ((App) Gdx.app.getApplicationListener()).getGameScreen().detonateSpaceBombs();
      
      if (!detonated)
        ((App) Gdx.app.getApplicationListener()).getGameScreen().getPaddle().getGrapplingHook().toggleSwitch();
      
      break;
    }
    
    return false;
  }
  
  @Override
  public boolean touchUp(int screenX, int screenY, int pointer, int button) {
    final Camera camera = ((GameScreen) ((App) Gdx.app.getApplicationListener()).getCurrentScreen()).getCamera();
    
    final float mX = camera.unproject(new Vector3(screenX, screenY, 0.0f)).x;
    final float mY = camera.unproject(new Vector3(screenX, screenY, 0.0f)).y;
    
    final Rectangle hotRectCheat = new Rectangle((int) (Config.getInstance()
        .getScreenWidth() - Config.SCOREBOARD_WIDTH + 25),
        (int) Config.WORLD_HEIGHT - (175 + 150*2), 150, 150);
    
    final Rectangle hotRectMainMenu = new Rectangle((int) (Config.getInstance()
        .getScreenWidth() - Config.SCOREBOARD_WIDTH + 25),
        (int) Config.WORLD_HEIGHT - (175 + 150), 150, 150);

    final Rectangle hotRectBomb = new Rectangle((int) (Config.getInstance()
        .getScreenWidth() - Config.SCOREBOARD_WIDTH + 25),
        (int) Config.WORLD_HEIGHT - 175, 350, 300);

    
    if (hotRectCheat.contains(new Vector2(mX, mY))) {
      ((App) Gdx.app.getApplicationListener()).getGameScreen().cheat(true);
      return true;
    }
    
    if (hotRectMainMenu.contains(new Vector2(mX, mY))) {      
      ScreenManager.getInstance().showScreen(ScreenType.MENU);
      return true;
    }
    
    if (hotRectBomb.contains(new Vector2(mX, mY))) {
      ((App) Gdx.app.getApplicationListener()).getGameScreen().releaseSpaceBomb();
      return true;
    }    
    
    return false;
  }

  @Override
  public boolean touchDragged(int screenX, int screenY, int pointer) {
    return false;
  }

  @Override
  public boolean mouseMoved(int screenX, int screenY) {    
//    ((App) Gdx.app.getApplicationListener()).getGameScreen().setPointerCoords(x, y);
    
    return true;
  }

  @Override
  public boolean scrolled(int amount) {
    return false;
  }
}




Java Source Code List

org.x3n0m0rph59.breakout.App.java
org.x3n0m0rph59.breakout.BackgroundFactory.java
org.x3n0m0rph59.breakout.Background.java
org.x3n0m0rph59.breakout.Ball.java
org.x3n0m0rph59.breakout.BottomWall.java
org.x3n0m0rph59.breakout.Brick.java
org.x3n0m0rph59.breakout.Config.java
org.x3n0m0rph59.breakout.Destroyable.java
org.x3n0m0rph59.breakout.EffectManager.java
org.x3n0m0rph59.breakout.Effect.java
org.x3n0m0rph59.breakout.FontLoader.java
org.x3n0m0rph59.breakout.FontTuple.java
org.x3n0m0rph59.breakout.ForceFeedback.java
org.x3n0m0rph59.breakout.GameInputProcessor.java
org.x3n0m0rph59.breakout.GameObject.java
org.x3n0m0rph59.breakout.GameScreen.java
org.x3n0m0rph59.breakout.GameState.java
org.x3n0m0rph59.breakout.GrapplingHookSegment.java
org.x3n0m0rph59.breakout.GrapplingHook.java
org.x3n0m0rph59.breakout.HelpInputProcessor.java
org.x3n0m0rph59.breakout.HelpScreen.java
org.x3n0m0rph59.breakout.HighScoreManager.java
org.x3n0m0rph59.breakout.HighScoreScreen.java
org.x3n0m0rph59.breakout.HighScore.java
org.x3n0m0rph59.breakout.HighscoreInputProcessor.java
org.x3n0m0rph59.breakout.IOSLauncher.java
org.x3n0m0rph59.breakout.LevelLoader.java
org.x3n0m0rph59.breakout.LevelSetSelectorInputProcessor.java
org.x3n0m0rph59.breakout.LevelSetSelectorScreen.java
org.x3n0m0rph59.breakout.Logger.java
org.x3n0m0rph59.breakout.MenuInputProcessor.java
org.x3n0m0rph59.breakout.MenuScreen.java
org.x3n0m0rph59.breakout.MusicLoader.java
org.x3n0m0rph59.breakout.MusicStream.java
org.x3n0m0rph59.breakout.ObjectPool.java
org.x3n0m0rph59.breakout.Paddle.java
org.x3n0m0rph59.breakout.ParticleSystem.java
org.x3n0m0rph59.breakout.Particle.java
org.x3n0m0rph59.breakout.Point.java
org.x3n0m0rph59.breakout.Poolable.java
org.x3n0m0rph59.breakout.Powerup.java
org.x3n0m0rph59.breakout.Projectile.java
org.x3n0m0rph59.breakout.Renderable.java
org.x3n0m0rph59.breakout.ResourceMapperDecisionCache.java
org.x3n0m0rph59.breakout.ResourceMapper.java
org.x3n0m0rph59.breakout.ScoreBoard.java
org.x3n0m0rph59.breakout.ScreenManager.java
org.x3n0m0rph59.breakout.ScreenType.java
org.x3n0m0rph59.breakout.SettingsInputProcessor.java
org.x3n0m0rph59.breakout.SettingsScreen.java
org.x3n0m0rph59.breakout.SoundLayer.java
org.x3n0m0rph59.breakout.SoundLoader.java
org.x3n0m0rph59.breakout.SoundSprite.java
org.x3n0m0rph59.breakout.SpaceBomb.java
org.x3n0m0rph59.breakout.SpriteLoader.java
org.x3n0m0rph59.breakout.SpriteObject.java
org.x3n0m0rph59.breakout.SpriteTuple.java
org.x3n0m0rph59.breakout.Star.java
org.x3n0m0rph59.breakout.Stepable.java
org.x3n0m0rph59.breakout.TextAnimationManager.java
org.x3n0m0rph59.breakout.TextAnimation.java
org.x3n0m0rph59.breakout.Util.java
org.x3n0m0rph59.breakout.Vector.java
org.x3n0m0rph59.breakout.android.AndroidLauncher.java
org.x3n0m0rph59.breakout.client.HtmlLauncher.java
org.x3n0m0rph59.breakout.desktop.DesktopLauncher.java