Only mobiles with contracts can be slotted.

This commit is contained in:
2023-08-21 15:22:08 -04:00
parent e00328ae13
commit 43375a6f5b
+9
View File
@@ -343,6 +343,15 @@ public enum NPCManager {
if (buildingSlot == -1) if (buildingSlot == -1)
Logger.error("No available slot for NPC: " + abstractCharacter.getObjectUUID()); Logger.error("No available slot for NPC: " + abstractCharacter.getObjectUUID());
// Pets are regular mobiles not hirelings (Siege engines)
if (abstractCharacter.getObjectType().equals(Enum.GameObjectType.Mob)) {
Mob mobile = (Mob) abstractCharacter;
if (mobile.contract != null)
abstractCharacter.building.getHirelings().put(abstractCharacter, buildingSlot);
} else
abstractCharacter.building.getHirelings().put(abstractCharacter, buildingSlot); abstractCharacter.building.getHirelings().put(abstractCharacter, buildingSlot);
// Override bind and location for this npc derived // Override bind and location for this npc derived