SHARE
TWEET
Untitled
a guest
Sep 17th, 2014
8
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
- private void checkBlocksCollision() {
- // for (int i = 0; i < blocks.size(); i++) {
- // Block block = blocks.get(i);
- if(player.bounds.overlaps(block.bounds)){
- Rectangle intersection = new Rectangle();
- Intersector.intersectRectangles(player.bounds, block.bounds, intersection);
- boolean checkForTopCollision = true;
- collideTop(intersection,player);
- if(collideLeft(intersection,player) ){
- //left
- player.position.x = intersection.x - player.width;
- checkForTopCollision = false;
- }
- if(collideRight(intersection,player)){
- //right
- player.position.x = intersection.x + intersection.width;
- checkForTopCollision = false;
- }
- if(checkForTopCollision){
- if(collideTop(intersection,player) && collideLeft(intersection,player) == false && collideRight(intersection,player) == false){
- //top
- player.position.y = intersection.y + intersection.height;
- player.state = PlayerState.STANDING_ON_BLOCK;
- }
- }
- }else{
- player.state = PlayerState.MOVING;
- }
- //}
- }
- private boolean collideLeft(Rectangle intersection, Player player){
- if(intersection.x > player.bounds.x){
- return true;
- }
- return false;
- }
- private boolean collideRight(Rectangle intersection, Player player){
- if(intersection.x + intersection.width < player.bounds.x + player.width){
- return true;
- }
- return false;
- }
- private boolean collideTop(Rectangle intersection, Player player){
- if(intersection.y + intersection.height < player.bounds.y + player.height){
- System.out.println("collide top");
- return true;
- }
- return false;
- }
- private boolean collideBottom(Rectangle intersection, Player player){
- return false;
- }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy.
