diff --git a/.gitignore b/.gitignore index ba829d14..1c5dcae9 100644 --- a/.gitignore +++ b/.gitignore @@ -50,12 +50,12 @@ interiorlayout/ clientdata/quest/ # PSWG Object Databases -odb/building/je.info.0.19 -odb/creature/je.info.0.19 -odb/doids/je.info.0.18 -odb/guild/je.info.0.19 -odb/mails/je.info.0.19 -odb/oids/je.info.0.19 +odb/building/je.info.* +odb/creature/je.info.* +odb/doids/je.info.* +odb/guild/je.info.* +odb/mails/je.info.* +odb/oids/je.info.* # External tool builders .externalToolBuilders/ diff --git a/scripts/commands/imagedesign.py b/scripts/commands/imagedesign.py index f304d583..5a931c73 100644 --- a/scripts/commands/imagedesign.py +++ b/scripts/commands/imagedesign.py @@ -15,7 +15,7 @@ def run(core, actor, target, commandString): else: if target.getGroupId() == actor.getGroupId(): - print ('same group') + tDesign = ImageDesignStartMessage(target.getObjectId(), actor.getObjectId(), target.getObjectId()) tObj = ObjControllerMessage(11, tDesign) target.getClient().getSession().write(tObj.serialize()) diff --git a/src/services/EntertainmentService.java b/src/services/EntertainmentService.java index 388e4270..1bed00ed 100644 --- a/src/services/EntertainmentService.java +++ b/src/services/EntertainmentService.java @@ -119,7 +119,7 @@ public class EntertainmentService implements INetworkDispatch { // TODO: Attribute check for colors? if (bodyAttributes != null) { for (IDAttribute atr : bodyAttributes) { - System.out.println("ATTRIBUTE: " + atr.getName() + " value of " + atr.getFloatValue()); + //System.out.println("ATTRIBUTE: " + atr.getName() + " value of " + atr.getFloatValue()); if (atr.getFloatValue() > 1f || atr.getFloatValue() < 0) { // RIP Height Exploit <3 return; } @@ -219,6 +219,32 @@ public class EntertainmentService implements INetworkDispatch { if(sender == null) return; + ImageDesignMessage sentPacket = new ImageDesignMessage(); + sentPacket.deserialize(data); + + if (sentPacket.getTargetId() == sentPacket.getDesignerId()) + return; + + if (sentPacket.getObjectId() == sentPacket.getDesignerId()) { + CreatureObject target = (CreatureObject) core.objectService.getObject(sentPacket.getTargetId()); + if (target == null) + return; + + sentPacket.setEndMessage(true); + sentPacket.setObjectId(target.getObjectId()); + ObjControllerMessage endMessage = new ObjControllerMessage(0x0B, sentPacket); + target.getClient().getSession().write(endMessage.serialize()); + + } else if (sentPacket.getObjectId() == sentPacket.getTargetId()) { + CreatureObject designer = (CreatureObject) core.objectService.getObject(sentPacket.getDesignerId()); + if (designer == null) + return; + + sentPacket.setEndMessage(true); + sentPacket.setObjectId(designer.getObjectId()); + ObjControllerMessage endMessage = new ObjControllerMessage(0x0B, sentPacket); + designer.getClient().getSession().write(endMessage.serialize()); + } } });