You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

47 lines
1.2 KiB

  1. package controller;
  2. import controller.ObjectController;
  3. import gameobjects.GameObject;
  4. import org.apache.logging.log4j.Logger;
  5. import org.apache.logging.log4j.LogManager;
  6. public class MineController extends ObjectController {
  7. int rad = 3;
  8. double xSpeed = 0.;
  9. double lineSpeed = 0;
  10. private static Logger logger = LogManager.getLogger(MineController.class);
  11. public MineController(double lineSpeed) {
  12. this.lineSpeed = lineSpeed;
  13. }
  14. @Override
  15. public void updateObject() {
  16. if (gameObject.getY() >= this.getPlayground().getSizeY() - 10) {
  17. this.gameObject.setVY(0);
  18. if (xSpeed == 0.) {
  19. GameObject ego = getPlayground().getObject("ego");
  20. double egoXPos = ego.getX();
  21. if (egoXPos > this.gameObject.getX()) {
  22. xSpeed = 50;
  23. } else {
  24. xSpeed = -50;
  25. }
  26. this.gameObject.setVX(xSpeed);
  27. }
  28. this.gameObject.setVX(xSpeed);
  29. }
  30. if (this.gameObject.getX() < 0 || (this.gameObject.getX() > this.getPlayground().getSizeX())) {
  31. logger.debug("deleting" + this.gameObject.getId());
  32. getPlayground().deleteObject(this.gameObject.getId());
  33. }
  34. applySpeedVector();
  35. }
  36. }