diff --git a/src/services/ConnectionService.java b/src/services/ConnectionService.java index a7b67d2c..570e5f70 100644 --- a/src/services/ConnectionService.java +++ b/src/services/ConnectionService.java @@ -212,12 +212,6 @@ public class ConnectionService implements INetworkDispatch { core.groupService.handleGroupDisband(object); - for (CreatureObject opponent : object.getDuelList()) { - if (opponent != null) { - core.combatService.handleEndDuel(object, opponent, false); - } - } - if (core.instanceService.isInInstance(object)) { core.instanceService.remove(core.instanceService.getActiveInstance(object), object); } diff --git a/src/services/SimulationService.java b/src/services/SimulationService.java index 4c8666b8..dd219d6b 100644 --- a/src/services/SimulationService.java +++ b/src/services/SimulationService.java @@ -731,6 +731,12 @@ public class SimulationService implements INetworkDispatch { if(!ghost.isSet(PlayerFlags.LD)) ghost.toggleFlag(PlayerFlags.LD); + for (CreatureObject opponent : object.getDuelList()) { + if (opponent != null) { + core.combatService.handleEndDuel(object, opponent, true); + } + } + /* object.createTransaction(core.getCreatureODB().getEnvironment()); core.getCreatureODB().put(object, Long.class, CreatureObject.class, object.getTransaction());