Browse Source

added hamlet guard logic

master
FatBoy-DOTC 2 years ago
parent
commit
1ff42b775c
  1. 2
      src/engine/Enum.java
  2. 14
      src/engine/ai/MobileFSM.java

2
src/engine/Enum.java

@ -2826,7 +2826,7 @@ public class Enum { @@ -2826,7 +2826,7 @@ public class Enum {
GuardMinion(GuardCaptain, false, true, true, false, true),
GuardWallArcher(null, false, true, false, false, false),
Wanderer(null, false, false, false, false, false),
HamletGuard(null, false, false, false, false, false),
HamletGuard(null, false, true, false, false, false),
AggroWanderer(null, false, false, false, false, false);
private static HashMap<Integer, MobBehaviourType> _behaviourTypes = new HashMap<>();

14
src/engine/ai/MobileFSM.java

@ -368,6 +368,9 @@ public class MobileFSM { @@ -368,6 +368,9 @@ public class MobileFSM {
case Pet1:
PetLogic(mob);
break;
case HamletGuard:
HamletGuardLogic(mob);
break;
default:
DefaultLogic(mob);
break;
@ -606,10 +609,19 @@ public class MobileFSM { @@ -606,10 +609,19 @@ public class MobileFSM {
CheckForAttack(mob);
}
}
private static void HamletGuardLogic(Mob mob){
if (mob.getCombatTarget() == null) {
//safehold guard
SafeGuardAggro(mob);
if(mob.getCombatTarget() != null){
CheckForAttack(mob);
}
}
}
private static void DefaultLogic(Mob mob){
//check for players that can be aggroed if mob is agressive and has no target
if (mob.BehaviourType.isAgressive && mob.getCombatTarget() == null) {
if (mob.BehaviourType == Enum.MobBehaviourType.SimpleStandingGuard) {
if (mob.BehaviourType == Enum.MobBehaviourType.HamletGuard) {
//safehold guard
SafeGuardAggro(mob);
} else {

Loading…
Cancel
Save