BaseBoxTile.java 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package me.hammerle.supersnuvi.tiles;
  2. import me.hammerle.supersnuvi.gamelogic.Level;
  3. import me.hammerle.supersnuvi.util.Face;
  4. import me.hammerle.supersnuvi.util.Utils;
  5. public class BaseBoxTile extends BaseTile
  6. {
  7. public BaseBoxTile(float tMinX, float tMinY, float tMaxX, float tMaxY)
  8. {
  9. super(tMinX, tMinY, tMaxX, tMaxY);
  10. super.setDefaultCollisionBox();
  11. }
  12. @Override
  13. public boolean isMoveColliding(float minX, float minY, float maxX, float maxY, int x, int y, Level l)
  14. {
  15. float minTileX = Utils.toCoord(x);
  16. float minTileY = Utils.toCoord(y);
  17. return maxX > minTileX && minTileX + Tile.SIZE > minX &&
  18. maxY > minTileY && minTileY + Tile.SIZE > minY;
  19. }
  20. @Override
  21. public boolean isColliding(float minX, float minY, float maxX, float maxY, int x, int y, Level l)
  22. {
  23. float minTileX = Utils.toCoord(x);
  24. float minTileY = Utils.toCoord(y);
  25. return maxX > minTileX && minTileX + Tile.SIZE > minX &&
  26. maxY > minTileY && minTileY + Tile.SIZE > minY;
  27. }
  28. @Override
  29. public Face getCollidingFace(float minX, float minY, float maxX, float maxY, int x, int y, Level l)
  30. {
  31. float minTileX = Utils.toCoord(x);
  32. float minTileY = Utils.toCoord(y);
  33. return Utils.getCollidingFace(
  34. minTileX, minTileY, minTileX + Tile.SIZE, minTileY + Tile.SIZE,
  35. minX, minY, maxX, maxY);
  36. }
  37. }