From a0da317c9bea11f9f26943fe86ee2dbf1755a229 Mon Sep 17 00:00:00 2001 From: Treeku Date: Mon, 16 Dec 2013 05:48:11 +0000 Subject: [PATCH] LD flag is now removed on logging in --- src/resources/objects/player/PlayerObject.java | 9 +++++++++ src/services/SimulationService.java | 7 +++++-- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/resources/objects/player/PlayerObject.java b/src/resources/objects/player/PlayerObject.java index e55b3445..f2b86ce9 100644 --- a/src/resources/objects/player/PlayerObject.java +++ b/src/resources/objects/player/PlayerObject.java @@ -698,4 +698,13 @@ public class PlayerObject extends IntangibleObject { } } + /* + * @return True if specified flag(s) are enabled + */ + public boolean isSet(int flags) { + synchronized(objectMutex) { + return ((flagBitmask & flags) == flags); + } + } + } diff --git a/src/services/SimulationService.java b/src/services/SimulationService.java index 938fc41c..af2ba420 100644 --- a/src/services/SimulationService.java +++ b/src/services/SimulationService.java @@ -615,6 +615,10 @@ public class SimulationService implements INetworkDispatch { PlayerObject ghost = (PlayerObject) object.getSlottedObject("ghost"); + if (ghost.isSet(PlayerFlags.LD)) { + ghost.toggleFlag(PlayerFlags.LD); + } + core.weatherService.sendWeather(object); if (!object.hasSkill(ghost.getProfessionWheelPosition())) { @@ -622,8 +626,7 @@ public class SimulationService implements INetworkDispatch { object.playEffectObject("clienteffect/skill_granted.cef", ""); object.playMusic("sound/music_acq_bountyhunter.snd"); core.skillService.addSkill(object, ghost.getProfessionWheelPosition()); - } - + } } public void transferToPlanet(SWGObject object, Planet planet, Point3D newPos, Quaternion newOrientation, SWGObject newParent) {