That they can't run thought the other Object. ^^
Thx


1 2 3 4 5 | Actor wall = getOneObjectAtOffset(Wall. class , xOffset, yOffset); //xOffset and yOffset can be whatever you want if (wall == null ) { //if the person is not touching a wall move(); //or do whatever you do to move the person } //if the wall is not null(it is real and is touching the person), do nothing. |
1 2 3 4 5 | TeamRot redTeamMember = getOneObjectAtOffset(TeamRot. class , xOffset, yOffset); //xOffset and yOffset can be whatever you want Ball ball = getOneObjectAtOffset(Ball. class , xOffset, yOffset); //xOffset and yOffset can be whatever you want if (redTeamMember == null && ball == null ) { //if the player is not hitting an opposing team member, or the ball //put the code to move the player here } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | TeamRot redTeamMember = getOneObjectAtOffset(TeamRot. class , xOffset, yOffset); //xOffset and yOffset can be whatever you want if (redTeamMember == null ) { //if the player is not hitting an opposing team member //then it can catch the ball, tryToCatchBall(); //put the code to move the player here } //here is what tryToCatchBall() should look like: public void tryToCatchBall() { Ball ball = (Ball) getOneIntersectingObject( this ); if (ball != null ) { //we divide the width and height by 2 to get the space between the center of the player and the edge of the player's image. int width = getImage().getWidth()/ 2 ; int height = getImage().getHeight()/ 2 ; if (direction.equals( "west" )) ball.setLocation(getX()-width, getY()); else if (direction.equals( "north" )) ball.setLocation(getX(), getY()-height); else if (direction.equals( "east" )) ball.setLocation(getX()+width, getY()); else if (direction.equals( "south" )) ball.setLocation(getX(), getY()+height); } } |