public class HatFedora extends Hat { private Player player = StartingClass.getPlayer(); public static Image hatsprite, addSprite; @Override public Image getSprite() { return hatsprite; } @Override public void effect() { player.getWeapon().setFireRate((int) (player.getWeapon().getFireRate() * 0.8f)); } @Override public String getID() { return "HATFEDORA"; } @Override public Image getAddSprite() { return addSprite; } }
public class Enemy { private int maxHealth, currentHealth, power, speedX, centerX, centerY; private Background bg = StartingClass.getBg1(); private Robot robot = StartingClass.getRobot(); public Rectangle r = new Rectangle(0, 0, 0, 0); public int health = 5; private int movementSpeed; public int getMaxHealth() { return maxHealth; } public int getCurrentHealth() { return currentHealth; } public int getPower() { return power; } public int getSpeedX() { return speedX; } public int getCenterX() { return centerX; } public int getCenterY() { return centerY; } public Background getBg() { return bg; } public void setMaxHealth(int maxHealth) { this.maxHealth = maxHealth; } public void setCurrentHealth(int currentHealth) { this.currentHealth = currentHealth; } public void setPower(int power) { this.power = power; } public void setSpeedX(int speedX) { this.speedX = speedX; } public void setCenterX(int centerX) { this.centerX = centerX; } public void setCenterY(int centerY) { this.centerY = centerY; } public void setBg(Background bg) { this.bg = bg; } public void update() { follow(); centerX += speedX; speedX = bg.getSpeedX() * 5 + movementSpeed; r.setBounds(centerX - 25, centerY - 25, 50, 60); if (r.intersects(Robot.yellowRed)) { checkCollision(); } } private void checkCollision() { if (r.intersects(Robot.rect) || r.intersects(Robot.rect2) || r.intersects(Robot.rect3) || r.intersects(Robot.rect4)) { System.out.println("collision"); } } public void follow() { if (centerX < -95 || centerX > 810) { movementSpeed = 0; } else if (Math.abs(robot.getCenterX() - centerX) < 5) { movementSpeed = 0; } else { if (robot.getCenterX() >= centerX) { movementSpeed = 1; } else { movementSpeed = -1; } } } public void die() {} public void attack() {} }
public class Enemy { private int maxHealth, currentHealth, power, speedX, centerX, centerY; private Background bg = StartingClass.getBg1(); // Behavioral methods public void update() { centerX += speedX; speedX = bg.getSpeedX() * 0; // System.out.printf("\nbg SpeedX = "+ bg.getSpeedX()); } public void die() {} public void attack() {} public int getMaxHealth() { return maxHealth; } public void setMaxHealth(int maxHealth) { this.maxHealth = maxHealth; } public int getCurrentHealth() { return currentHealth; } public void setCurrentHealth(int currentHealth) { this.currentHealth = currentHealth; } public int getPower() { return power; } public void setPower(int power) { this.power = power; } public int getSpeedX() { return speedX; } public void setSpeedX(int speedX) { this.speedX = speedX; } public int getCenterX() { return centerX; } public void setCenterX(int centerX) { this.centerX = centerX; } public int getCenterY() { return centerY; } public void setCenterY(int centerY) { this.centerY = centerY; } public Background getBg() { return bg; } public void setBg(Background bg) { this.bg = bg; } }