added concept for monsters

This commit is contained in:
2025-11-28 23:35:30 +01:00
parent f212e5e4a8
commit 71dc34b418
58 changed files with 73 additions and 9 deletions

View File

@@ -0,0 +1,51 @@
package de.miaurizius.jgame2d.entity.monster;
import de.miaurizius.jgame2d.core.GamePanel;
import de.miaurizius.jgame2d.core.enums.Direction;
import de.miaurizius.jgame2d.entity.Entity;
import java.util.Random;
public class GreenSlimeMON extends Entity {
public GreenSlimeMON(GamePanel panel) {
super(panel);
name = "green-slime";
speed = 1;
maxLife = 4;
life = maxLife;
solidArea.x = 3;
solidArea.y = 18;
solidArea.width = 42;
solidArea.height = 30;
solidAreaDefaultX = solidArea.x;
solidAreaDefaultY = solidArea.y;
getImage();
}
public void getImage() {
up1 = initEntitySprites("monster/greenslime_down_1");
up2 = initEntitySprites("monster/greenslime_down_2");
down1 = initEntitySprites("monster/greenslime_down_1");
down2 = initEntitySprites("monster/greenslime_down_2");
left1 = initEntitySprites("monster/greenslime_down_1");
left2 = initEntitySprites("monster/greenslime_down_2");
right1 = initEntitySprites("monster/greenslime_down_1");
right2 = initEntitySprites("monster/greenslime_down_2");
}
public void setAction() {
actionLock++;
if(actionLock != 120) return; //lock action for x frames
Random rand = new Random();
int i = rand.nextInt(100)+1; //Generate number between 1 and 100
if(i <= 25) direction = Direction.UP;
if(i > 25 && i <= 50) direction = Direction.DOWN;
if(i > 50 && i <= 75) direction = Direction.LEFT;
if(i > 75) direction = Direction.RIGHT;
actionLock = 0;
}
}