Fix Tree of Life rank 8 hireling repositioning

This commit is contained in:
Rob
2026-07-21 19:40:02 +01:00
parent dc083c1fa6
commit fb30e52be0
2 changed files with 32 additions and 0 deletions
@@ -289,6 +289,34 @@ public enum BuildingManager {
// Method transfers ownership of all hirelings in a building
public static void reslotHirelings(Building building) {
if (building == null)
return;
ArrayList<AbstractCharacter> hirelings =
new ArrayList<>(building.getHirelings().keySet());
building.getHirelings().clear();
for (AbstractCharacter hireling : hirelings) {
int newSlot = NPCManager.slotCharacterInBuilding(hireling);
if (newSlot == -1) {
Logger.error("Unable to re-slot hireling "
+ hireling.getObjectUUID()
+ " for building "
+ building.getObjectUUID());
continue;
}
hireling.setLoc(hireling.getBindLoc());
WorldGrid.updateObject(hireling);
InterestManager.setObjectDirty(hireling);
}
}
public static void refreshHirelings(Building building) {
if (building == null)