diff --git a/src/resources/objects/waypoint/WaypointObject.java b/src/resources/objects/waypoint/WaypointObject.java index ece1fc0d4..292d7a9c7 100644 --- a/src/resources/objects/waypoint/WaypointObject.java +++ b/src/resources/objects/waypoint/WaypointObject.java @@ -107,13 +107,14 @@ public class WaypointObject extends IntangibleObject implements OutOfBandData { @Override public void decode(ByteBuffer data) { data.getInt(); - setLocation(data.getFloat(), data.getFloat(), data.getFloat()); + Location loc = new Location(data.getFloat(), data.getFloat(), data.getFloat(), null); cellId = Packet.getLong(data); - getLocation().setTerrain(Terrain.getTerrainFromCrc(data.getInt())); + loc.setTerrain(Terrain.getTerrainFromCrc(data.getInt())); name = Packet.getUnicode(data); Packet.getLong(data); // objectId color = WaypointColor.valueOf(data.get()); active = Packet.getBoolean(data); + setLocation(loc); } @Override diff --git a/src/services/chat/ChatRoomService.java b/src/services/chat/ChatRoomService.java index ea296a911..80ce0a61a 100644 --- a/src/services/chat/ChatRoomService.java +++ b/src/services/chat/ChatRoomService.java @@ -547,7 +547,7 @@ public class ChatRoomService extends Service { } } - Terrain terrain = player.getCreatureObject().getLocation().getTerrain(); + Terrain terrain = player.getCreatureObject().getTerrain(); // Enter the new zone-only chat channels String planetPath = "SWG." + player.getGalaxyName() + "." + terrain.getName() + "."; diff --git a/src/services/galaxy/WeatherService.java b/src/services/galaxy/WeatherService.java index 4ac040b76..872c1a5e3 100644 --- a/src/services/galaxy/WeatherService.java +++ b/src/services/galaxy/WeatherService.java @@ -92,7 +92,7 @@ public final class WeatherService extends Service { private final void handleZoneIn(PlayerEventIntent pei) { Player p = pei.getPlayer(); - Terrain t = p.getCreatureObject().getLocation().getTerrain(); + Terrain t = p.getCreatureObject().getTerrain(); p.sendPacket(constructWeatherPacket(t)); } diff --git a/src/services/map/MapService.java b/src/services/map/MapService.java index 8f4f18492..6c6683de0 100644 --- a/src/services/map/MapService.java +++ b/src/services/map/MapService.java @@ -191,10 +191,10 @@ public class MapService extends Service { mapLocation.setSubcategory((byte) mapCategories.get(mappingTemplate.getSubcategory()).getIndex()); else mapLocation.setSubcategory((byte) 0); - mapLocation.setX((float) object.getLocation().getX()); - mapLocation.setY((float) object.getLocation().getZ()); + mapLocation.setX((float) object.getX()); + mapLocation.setY((float) object.getZ()); - String planet = object.getLocation().getTerrain().getName(); + String planet = object.getTerrain().getName(); switch (type) { case STATIC: diff --git a/src/services/objects/ObjectManager.java b/src/services/objects/ObjectManager.java index bd1b7e9cc..e9c4252a8 100644 --- a/src/services/objects/ObjectManager.java +++ b/src/services/objects/ObjectManager.java @@ -408,7 +408,7 @@ public class ObjectManager extends Manager { if (transform == null) return; Location newLocation = transform.getLocation(); - newLocation.setTerrain(obj.getLocation().getTerrain()); + newLocation.setTerrain(obj.getTerrain()); objectAwareness.move(obj, newLocation); obj.sendDataTransforms(transform); @@ -418,7 +418,7 @@ public class ObjectManager extends Manager { private void moveObject(SWGObject obj, DataTransformWithParent transformWithParent) { Location newLocation = transformWithParent.getLocation(); - newLocation.setTerrain(obj.getLocation().getTerrain()); + newLocation.setTerrain(obj.getTerrain()); SWGObject parent = objectMap.get(transformWithParent.getCellId()); if (parent == null) { System.err.println("ObjectManager: Could not find parent for transform! Cell: " + transformWithParent.getCellId()); diff --git a/src/services/player/PlayerManager.java b/src/services/player/PlayerManager.java index 9b9af40c2..41f96e768 100644 --- a/src/services/player/PlayerManager.java +++ b/src/services/player/PlayerManager.java @@ -199,7 +199,7 @@ public class PlayerManager extends Manager { synchronized(players) { for (Player p : players.values()) { - if (p != null && p.getCreatureObject() != null && p.getCreatureObject().getLocation().getTerrain() == terrain && conditional.meetsCondition(p)) + if (p != null && p.getCreatureObject() != null && p.getCreatureObject().getTerrain() == terrain && conditional.meetsCondition(p)) p.sendPacket(packets); } } @@ -208,7 +208,7 @@ public class PlayerManager extends Manager { public void notifyPlayersAtPlanet(Terrain terrain, Packet... packets) { synchronized(players) { for (Player p : players.values()) { - if (p != null && p.getCreatureObject() != null && p.getCreatureObject().getLocation().getTerrain() == terrain) + if (p != null && p.getCreatureObject() != null && p.getCreatureObject().getTerrain() == terrain) p.sendPacket(packets); } } @@ -223,7 +223,7 @@ public class PlayerManager extends Manager { synchronized(players) { networkIds.forEach(id -> { Player p = players.get(id); - if (p != null && p.getCreatureObject() != null && p.getCreatureObject().getLocation().getTerrain() == terrain && conditional.meetsCondition(p)) + if (p != null && p.getCreatureObject() != null && p.getCreatureObject().getTerrain() == terrain && conditional.meetsCondition(p)) p.sendPacket(packets); }); } @@ -233,7 +233,7 @@ public class PlayerManager extends Manager { synchronized(players) { networkIds.forEach(id -> { Player p = players.get(id); - if (p != null && p.getCreatureObject() != null && p.getCreatureObject().getLocation().getTerrain() == terrain) + if (p != null && p.getCreatureObject() != null && p.getCreatureObject().getTerrain() == terrain) p.sendPacket(packets); }); }