56 lines
1.7 KiB
Java
56 lines
1.7 KiB
Java
package de.miaurizius.jgame2d.entity.monster;
|
|
|
|
import de.miaurizius.jgame2d.core.GamePanel;
|
|
import de.miaurizius.jgame2d.core.enums.Direction;
|
|
import de.miaurizius.jgame2d.core.enums.EntityType;
|
|
import de.miaurizius.jgame2d.entity.Entity;
|
|
|
|
import java.util.Random;
|
|
|
|
public class GreenSlimeMON extends Entity {
|
|
|
|
public GreenSlimeMON(GamePanel panel) {
|
|
super(panel);
|
|
type = EntityType.MONSTER;
|
|
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();
|
|
}
|
|
|
|
// INTERACTION
|
|
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;
|
|
}
|
|
|
|
// SETTING THINGS UP
|
|
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");
|
|
}
|
|
|
|
}
|