diff --git a/src/engine/objects/Mob.java b/src/engine/objects/Mob.java index fc66914e..cc1ccb6f 100644 --- a/src/engine/objects/Mob.java +++ b/src/engine/objects/Mob.java @@ -513,7 +513,11 @@ public class Mob extends AbstractIntelligenceAgent { Mob siegeMinion; - if (artyCaptain.getSiegeMinionMap().size() == 3) + int maxSlots = 1; + if(artyCaptain.getContractID() == 839)//artillery captain for bulwark + maxSlots = 3; + + if (artyCaptain.getSiegeMinionMap().size() == maxSlots) return null; siegeMinion = new Mob(); diff --git a/src/engine/objects/NPC.java b/src/engine/objects/NPC.java index ae8f63bd..f318f87e 100644 --- a/src/engine/objects/NPC.java +++ b/src/engine/objects/NPC.java @@ -50,7 +50,6 @@ public class NPC extends AbstractCharacter { // Used for thread safety public final ReentrantReadWriteLock lock = new ReentrantReadWriteLock(); private final ArrayList rolling = new ArrayList<>(); - private final ConcurrentHashMap siegeMinionMap = new ConcurrentHashMap<>(MBServerStatics.CHM_INIT_CAP, MBServerStatics.CHM_LOAD, MBServerStatics.CHM_THREAD_LOW); public ReentrantReadWriteLock minionLock = new ReentrantReadWriteLock(); public ArrayList forgedItems = new ArrayList<>(); public HashMap equip = null;