From 00ca39ca50ffd6857b7c7aecc68296b69ab5c664 Mon Sep 17 00:00:00 2001 From: Obique Date: Sat, 21 Feb 2015 12:04:05 -0600 Subject: [PATCH] Fixed chat bug where spatial chat doesn't work on two clients --- .../callbacks/SocialInternalCmdCallback.java | 3 +-- src/services/CoreManager.java | 14 ++++++++++++-- src/services/chat/ChatService.java | 3 +-- 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/src/resources/commands/callbacks/SocialInternalCmdCallback.java b/src/resources/commands/callbacks/SocialInternalCmdCallback.java index bda1d6053..4b40e044c 100644 --- a/src/resources/commands/callbacks/SocialInternalCmdCallback.java +++ b/src/resources/commands/callbacks/SocialInternalCmdCallback.java @@ -26,8 +26,7 @@ public class SocialInternalCmdCallback implements ICmdCallback { for (Player observer : observers) { if (observer.getCreatureObject() == null) continue; - - observer.sendPacket(emote); + observer.sendPacket(new PlayerEmote(observer.getCreatureObject().getObjectId(), emote)); } } } diff --git a/src/services/CoreManager.java b/src/services/CoreManager.java index f697aa095..a944a2bd0 100644 --- a/src/services/CoreManager.java +++ b/src/services/CoreManager.java @@ -155,13 +155,23 @@ public class CoreManager extends Manager { private void outputSWG(SWGPacket p) { if (p instanceof Baseline) - packetOutput.println("Baseline " + ((Baseline)p).getType() + " " + ((Baseline)p).getNum()); + outputBaseline((Baseline) p); else if (p instanceof ObjectController) - packetOutput.println("ObjectController 0x" + Integer.toHexString(((ObjectController)p).getControllerCrc())); + outputObjectController((ObjectController) p); else packetOutput.println(p.getClass().getSimpleName()); } + private void outputBaseline(Baseline b) { + packetOutput.println("Baseline [" + b.getId() + "] " + b.getType() + " " + b.getNum()); + } + + private void outputObjectController(ObjectController cont) { + int crc = cont.getControllerCrc(); + long id = cont.getObjectId(); + packetOutput.println("ObjectController [" + id + "] 0x" + Integer.toHexString(crc)); + } + /** * Returns the time in milliseconds since the server started initialization * @return the core time represented as a double diff --git a/src/services/chat/ChatService.java b/src/services/chat/ChatService.java index 8386151cf..8c2612d37 100644 --- a/src/services/chat/ChatService.java +++ b/src/services/chat/ChatService.java @@ -180,8 +180,7 @@ public class ChatService extends Service { for (Player observer : actor.getObservers()) { if (observer.getCreatureObject() == null) continue; - message.setObjectId(observer.getCreatureObject().getObjectId()); - observer.sendPacket(message); + observer.sendPacket(new SpatialChat(observer.getCreatureObject().getObjectId(), message)); } }