package com.weem.epicinventor.actor.monster;
import com.weem.epicinventor.*;
import com.weem.epicinventor.actor.*;
import com.weem.epicinventor.ai.*;
import com.weem.epicinventor.utility.*;
public class ZombieWalrus extends Monster {
private static final long serialVersionUID = 10000L;
public ZombieWalrus(MonsterManager mm, Registry rg, String im, String st, int x, int y, int minDist, int maxDist) {
super(mm, rg, im, st, x, y, minDist, maxDist, false);
name = "ZombieWalrus";
displayName = "Zombie Walrus";
monsterManager = mm;
difficultyFactor = 0.80f;
adjustHPForLevel();
topOffset = 12;
baseOffset = 29;
baseWidth = 22;
startJumpSize = 20;
jumpSize = 8;
fallSize = 0;
xMoveSize = 2;
adjustTouchDamageForLevel();
spriteRectOffestX = 10;
dropChances.addDropChance("Tusk", 75.0f, 1, 2);
dropChances.addDropChance("Skin", 75.0f, 2, 3);
dropChances.addDropChance("WeemsDiceBag", 0.20f, 1, 1); //1 in 500 chance
dropChances.addDropChance("ForrestsLaptop", 0.20f, 1, 1); //1 in 500 chance
dropChances.addDropChance("BrandonsAbacus", 0.20f, 1, 1); //1 in 500 chance
ai = new AI(registry, this);
ai.clearGoals();
ai.addGoal(AI.GoalType.ATTACK_PLAYER, "", (Rand.getRange(0, 1) + Rand.getFloat()));
if (groundLevel == 0) {
ai.addGoal(AI.GoalType.ATTACK_PLACEABLE, "", (Rand.getRange(0, 1) + Rand.getFloat()));
}
ai.activate();
}
@Override
protected void updateImage() {
if (vertMoveMode == VertMoveMode.JUMPING) {
setImage("Monsters/" + name + "/Jumping");
} else if (vertMoveMode == VertMoveMode.FLYING) {
loopImage("Monsters/" + name + "/Flapping");
} else if (vertMoveMode == VertMoveMode.FALLING) {
loopImage("Monsters/" + name + "/Falling");
} else {
if (actionMode == ActionMode.ATTACKING) {
loopImage("Monsters/" + name + "/Attacking", 0.50);
} else if (isStill) {
setImage("Monsters/" + name + "/Standing");
} else {
loopImage("Monsters/" + name + "/Walking");
}
}
}
}