Android Open Source - Hungry-Mouse Tile






From Project

Back to project page Hungry-Mouse.

License

The source code is released under:

MIT License

If you think the Android project Hungry-Mouse 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

//Name:   Tile.java
//Purpose:  create a 2-dimensional array with values that from text files.
//      based on those values we will present specific images to the screen
//      the text files and therefore the 2-dimensional array represents the level environment
//from   www  . j a va 2s  . c om
package com.hungry.mouse.main;

import com.hungry.mouse.framework.Image;

//android libraries stored in SDK platform
import android.graphics.Rect;//hold 4 integer coordinates for rectangle

public class Tile {

  private int tileX, tileY, speedX;
  public int type;
  public Image tileImage;

  private Mouse Mouse = GameScreen.getMouse();
  private Background bg = GameScreen.getBg1();

  private Rect r;

  //initialize tiles
  public Tile(int x, int y, int typeInt) {
    tileX = x * 40;
    tileY = y * 40;

    type = typeInt;

    r = new Rect();

    //load suitable image based on numerical value
    if (type == 5) {
      tileImage = Assets.tiledirt;
    } else if (type == 8) {
      tileImage = Assets.tilegrassTop;
    } else if (type == 4) {
      tileImage = Assets.tilegrassLeft;

    } else if (type == 6) {
      tileImage = Assets.tilegrassRight;

    } else if (type == 2) {
      tileImage = Assets.tilegrassBot;
    } else {
      type = 0;
    }

  }

  //update and check for collisions
  public void update() {
    speedX = bg.getSpeedX() * 5;
    tileX += speedX;
    r.set(tileX, tileY, tileX+40, tileY+40);
      
    if (Rect.intersects(r, Mouse.yellowRed) && type != 0) {
      checkVerticalCollision(Mouse.rect, Mouse.rect2);
      checkSideCollision(Mouse.rect3, Mouse.rect4, Mouse.footleft, Mouse.footright);
    }
  
  }

  //check the vertical collision with the environment
  public void checkVerticalCollision(Rect rtop, Rect rbot) {
    if (Rect.intersects(rtop, r)) {
    }

    if (Rect.intersects(rbot, r) && type == 8) {
      Mouse.setJumped(false);
      Mouse.setSpeedY(0);
      Mouse.setCenterY(tileY - 63);
    }
  }

  //check the side collision with the environment
  public void checkSideCollision(Rect rleft, Rect rright, Rect leftfoot, Rect rightfoot) {
    if (type != 5 && type != 2 && type != 0){
      if (Rect.intersects(rleft, r)) {
        Mouse.setCenterX(tileX + 102);
        Mouse.setSpeedX(0);
        }else if (Rect.intersects(leftfoot, r)) {
          Mouse.setCenterX(tileX + 85);
          Mouse.setSpeedX(0);
        }
        
      if (Rect.intersects(rright, r)) {
        Mouse.setCenterX(tileX - 62);
        Mouse.setSpeedX(0);
      }
      else if (Rect.intersects(rightfoot, r)) {
        Mouse.setCenterX(tileX - 45);
        Mouse.setSpeedX(0);
      }
    }
  }
    
  //getters//
  public int getTileX() {
    return tileX;
  }


  public int getTileY() {
    return tileY;
  }
  public Image getTileImage() {
    return tileImage;
  }
  //setters//
  public void setTileX(int tileX) {
    this.tileX = tileX;
  }
  
  public void setTileY(int tileY) {
    this.tileY = tileY;
  }

  public void setTileImage(Image tileImage) {
    this.tileImage = tileImage;
  }

}




Java Source Code List

com.hungry.mouse.framework.Audio.java
com.hungry.mouse.framework.FileIO.java
com.hungry.mouse.framework.Game.java
com.hungry.mouse.framework.Graphics.java
com.hungry.mouse.framework.Image.java
com.hungry.mouse.framework.Input.java
com.hungry.mouse.framework.Music.java
com.hungry.mouse.framework.Pool.java
com.hungry.mouse.framework.Screen.java
com.hungry.mouse.framework.Sound.java
com.hungry.mouse.framework.implementation.AccelerometerHandler.java
com.hungry.mouse.framework.implementation.AndroidAudio.java
com.hungry.mouse.framework.implementation.AndroidFastRenderView.java
com.hungry.mouse.framework.implementation.AndroidFileIO.java
com.hungry.mouse.framework.implementation.AndroidGame.java
com.hungry.mouse.framework.implementation.AndroidGraphics.java
com.hungry.mouse.framework.implementation.AndroidImage.java
com.hungry.mouse.framework.implementation.AndroidInput.java
com.hungry.mouse.framework.implementation.AndroidMusic.java
com.hungry.mouse.framework.implementation.AndroidSound.java
com.hungry.mouse.framework.implementation.MultiTouchHandler.java
com.hungry.mouse.framework.implementation.SingleTouchHandler.java
com.hungry.mouse.framework.implementation.TouchHandler.java
com.hungry.mouse.main.AboutScreen.java
com.hungry.mouse.main.Animation.java
com.hungry.mouse.main.Assets.java
com.hungry.mouse.main.Background.java
com.hungry.mouse.main.Bomb.java
com.hungry.mouse.main.Cheese.java
com.hungry.mouse.main.Enemy.java
com.hungry.mouse.main.GameScreen.java
com.hungry.mouse.main.HelpScreen1.java
com.hungry.mouse.main.HelpScreen2.java
com.hungry.mouse.main.HelpScreen3.java
com.hungry.mouse.main.HelpScreen4.java
com.hungry.mouse.main.Kamikazi.java
com.hungry.mouse.main.LevelSelectorScreen.java
com.hungry.mouse.main.LoadingScreen.java
com.hungry.mouse.main.MainMenuScreen.java
com.hungry.mouse.main.Mouse.java
com.hungry.mouse.main.Projectile.java
com.hungry.mouse.main.Rewards.java
com.hungry.mouse.main.SampleGame.java
com.hungry.mouse.main.Settings.java
com.hungry.mouse.main.Sign.java
com.hungry.mouse.main.SplashLoadingScreen.java
com.hungry.mouse.main.Tile.java