This commit is contained in:
2024-07-15 18:42:41 -05:00
parent c8430625bf
commit d511641410
5 changed files with 37 additions and 32 deletions
@@ -119,7 +119,7 @@ public class StrongholdManager {
commander.stronghold = mine; commander.stronghold = mine;
} }
mine.setActive(true); mine.isActive = true;
tower.setProtectionState(Enum.ProtectionState.PROTECTED); tower.setProtectionState(Enum.ProtectionState.PROTECTED);
tower.getBounds().setRegions(tower); tower.getBounds().setRegions(tower);
InterestManager.setObjectDirty(tower); InterestManager.setObjectDirty(tower);
@@ -158,7 +158,7 @@ public class StrongholdManager {
//update tower to become Mine Tower again //update tower to become Mine Tower again
tower.setMeshUUID(1500100); tower.setMeshUUID(1500100);
mine.setActive(false); mine.isActive = false;
tower.setProtectionState(Enum.ProtectionState.NPC); tower.setProtectionState(Enum.ProtectionState.NPC);
tower.getBounds().setRegions(tower); tower.getBounds().setRegions(tower);
InterestManager.setObjectDirty(tower); InterestManager.setObjectDirty(tower);
+5 -5
View File
@@ -37,11 +37,11 @@ public class ItemTableEntry {
List<ItemTableEntry> itemTableEntryList; List<ItemTableEntry> itemTableEntryList;
itemTableEntryList = LootManager._itemTables.get(itemTable); itemTableEntryList = LootManager._itemTables.get(itemTable);
if(itemTableEntryList != null) {
for (ItemTableEntry iteration : itemTableEntryList) for (ItemTableEntry iteration : itemTableEntryList)
if (roll >= iteration.minRoll && roll <= iteration.maxRoll) if (roll >= iteration.minRoll && roll <= iteration.maxRoll)
itemTableEntry = iteration; itemTableEntry = iteration;
}
return itemTableEntry; return itemTableEntry;
} }
+5 -5
View File
@@ -33,11 +33,11 @@ public class ModTableEntry {
List<ModTableEntry> itemTableEntryList; List<ModTableEntry> itemTableEntryList;
itemTableEntryList = LootManager._modTables.get(modTablwe); itemTableEntryList = LootManager._modTables.get(modTablwe);
if(itemTableEntryList != null) {
for (ModTableEntry iteration : itemTableEntryList) for (ModTableEntry iteration : itemTableEntryList)
if (roll >= iteration.minRoll && roll <= iteration.maxRoll) if (roll >= iteration.minRoll && roll <= iteration.maxRoll)
modTableEntry = iteration; modTableEntry = iteration;
}
return modTableEntry; return modTableEntry;
} }
} }
+22 -18
View File
@@ -911,12 +911,13 @@ public class MobAI {
private static void CheckToSendMobHome(Mob mob) { private static void CheckToSendMobHome(Mob mob) {
if(mob.BehaviourType.equals(Enum.MobBehaviourType.Pet1)){
if(mob.loc.distanceSquared(mob.getOwner().loc) > 60 * 60)
mob.teleport(mob.getOwner().loc);
return;
}
try { try {
if(mob.BehaviourType.equals(Enum.MobBehaviourType.Pet1)){
if(mob.loc.distanceSquared(mob.getOwner().loc) > 60 * 60)
mob.teleport(mob.getOwner().loc);
return;
}
if (mob.BehaviourType.isAgressive) { if (mob.BehaviourType.isAgressive) {
if (mob.isPlayerGuard()) { if (mob.isPlayerGuard()) {
@@ -1353,21 +1354,24 @@ public class MobAI {
return null; return null;
} }
public static void RecoverHealth(Mob mob){ public static void RecoverHealth(Mob mob) {
//recover health //recover health
try {
if (mob.getTimestamps().containsKey("HEALTHRECOVERED") == false) if (mob.getTimestamps().containsKey("HEALTHRECOVERED") == false)
mob.getTimestamps().put("HEALTHRECOVERED", System.currentTimeMillis());
if (mob.isSit() && mob.getTimeStamp("HEALTHRECOVERED") < System.currentTimeMillis() + 3000)
if (mob.getHealth() < mob.getHealthMax()) {
float recoveredHealth = mob.getHealthMax() * ((1 + mob.getBonuses().getFloatPercentAll(Enum.ModType.HealthRecoverRate, Enum.SourceType.None)) * 0.01f);
mob.setHealth(mob.getHealth() + recoveredHealth);
mob.getTimestamps().put("HEALTHRECOVERED", System.currentTimeMillis()); mob.getTimestamps().put("HEALTHRECOVERED", System.currentTimeMillis());
if (mob.getHealth() > mob.getHealthMax()) if (mob.isSit() && mob.getTimeStamp("HEALTHRECOVERED") < System.currentTimeMillis() + 3000)
mob.setHealth(mob.getHealthMax()); if (mob.getHealth() < mob.getHealthMax()) {
}
float recoveredHealth = mob.getHealthMax() * ((1 + mob.getBonuses().getFloatPercentAll(Enum.ModType.HealthRecoverRate, Enum.SourceType.None)) * 0.01f);
mob.setHealth(mob.getHealth() + recoveredHealth);
mob.getTimestamps().put("HEALTHRECOVERED", System.currentTimeMillis());
if (mob.getHealth() > mob.getHealthMax())
mob.setHealth(mob.getHealthMax());
}
} catch (Exception e) {
Logger.info(mob.getObjectUUID() + " " + mob.getName() + " Failed At: RecoverHealth" + " " + e.getMessage());
}
} }
} }
+3 -2
View File
@@ -1423,8 +1423,9 @@ public class Mob extends AbstractIntelligenceAgent {
WorldGrid.RemoveWorldObject(this); WorldGrid.RemoveWorldObject(this);
this.charItemManager.clearInventory(); this.charItemManager.clearInventory();
if(this.StrongholdEpic) if(this.StrongholdEpic && this.stronghold != null && this.stronghold.isActive)
StrongholdManager.EndStronghold(this.stronghold); this.stronghold.isActive = false;
//StrongholdManager.EndStronghold(this.stronghold);
} }
@Override @Override