trebuchets now have pet AI with canRoam disabled

This commit is contained in:
2023-04-21 20:12:49 -05:00
parent 3329d61636
commit 45ab68caa4
4 changed files with 14 additions and 7 deletions
+5 -5
View File
@@ -113,10 +113,10 @@ public class MobileFSM {
}
City playercity = ZoneManager.getCityAtLocation(mob.getLoc());
if(playercity != null) {
for (Building barracks : playercity.cityBarracks) {
for(AbstractCharacter guardCaptain : barracks.getHirelings().keySet()){
if(guardCaptain.getCombatTarget() == null){
guardCaptain.setCombatTarget(mob);
for (Mob guard : playercity.getParent().zoneMobSet) {
if (guard.BehaviourType != null && guard.BehaviourType.ordinal() == Enum.MobBehaviourType.GuardCaptain.ordinal()) {
if (guard.getCombatTarget() == null && guard.getGuild().equals(mob.getGuild()) == false) {
guard.setCombatTarget(mob);
}
}
}
@@ -584,7 +584,7 @@ public class MobileFSM {
if(mob.getCombatTarget() != null && mob.getCombatTarget().isAlive() == false){
mob.setCombatTarget(null);
}
if(MovementUtilities.canMove(mob)){
if(MovementUtilities.canMove(mob) && mob.BehaviourType.canRoam){
CheckMobMovement(mob);
}
if(mob.getCombatTarget() != null) {
@@ -115,6 +115,9 @@ public class CombatUtilities {
DispatchMessage.sendToAllInRange(agent,msg);
}
public static void swingIsDamage(Mob agent, AbstractWorldObject target, float damage, int animation){
if(agent.isSiege() == true){
damage = ThreadLocalRandom.current().nextInt(1000) + 1500;
}
float trueDamage = damage;
//target = agent.getCombatTarget();
if (!target.isAlive())