From df47451f9fa3ff6460b1c749ce625ce3767ad881 Mon Sep 17 00:00:00 2001 From: thispixel Date: Mon, 16 Feb 2015 14:37:08 +0000 Subject: [PATCH] Correct and add the missing npc options. --- .../message/impl/FifthNpcActionMessage.java | 19 +++++++++++++++ .../message/impl/FourthNpcActionMessage.java | 19 +++++++++++++++ .../r317/FifthNpcActionMessageDecoder.java | 24 +++++++++++++++++++ .../r317/FourthNpcActionMessageDecoder.java | 23 ++++++++++++++++++ .../apollo/net/release/r317/Release317.java | 9 ++++--- .../r317/SecondNpcActionMessageDecoder.java | 2 +- .../r317/ThirdNpcActionMessageDecoder.java | 6 ++--- 7 files changed, 94 insertions(+), 8 deletions(-) create mode 100644 src/org/apollo/game/message/impl/FifthNpcActionMessage.java create mode 100644 src/org/apollo/game/message/impl/FourthNpcActionMessage.java create mode 100644 src/org/apollo/net/release/r317/FifthNpcActionMessageDecoder.java create mode 100644 src/org/apollo/net/release/r317/FourthNpcActionMessageDecoder.java diff --git a/src/org/apollo/game/message/impl/FifthNpcActionMessage.java b/src/org/apollo/game/message/impl/FifthNpcActionMessage.java new file mode 100644 index 00000000..9f5331b0 --- /dev/null +++ b/src/org/apollo/game/message/impl/FifthNpcActionMessage.java @@ -0,0 +1,19 @@ +package org.apollo.game.message.impl; + +/** + * The third {@link NpcActionMessage}. + * + * @author Stuart + */ +public final class FifthNpcActionMessage extends NpcActionMessage { + + /** + * Creates a new third npc action message. + * + * @param index The index of the npc. + */ + public FifthNpcActionMessage(int index) { + super(5, index); + } + +} \ No newline at end of file diff --git a/src/org/apollo/game/message/impl/FourthNpcActionMessage.java b/src/org/apollo/game/message/impl/FourthNpcActionMessage.java new file mode 100644 index 00000000..952f06f7 --- /dev/null +++ b/src/org/apollo/game/message/impl/FourthNpcActionMessage.java @@ -0,0 +1,19 @@ +package org.apollo.game.message.impl; + +/** + * The third {@link NpcActionMessage}. + * + * @author Stuart + */ +public final class FourthNpcActionMessage extends NpcActionMessage { + + /** + * Creates a new third npc action message. + * + * @param index The index of the npc. + */ + public FourthNpcActionMessage(int index) { + super(4, index); + } + +} \ No newline at end of file diff --git a/src/org/apollo/net/release/r317/FifthNpcActionMessageDecoder.java b/src/org/apollo/net/release/r317/FifthNpcActionMessageDecoder.java new file mode 100644 index 00000000..7490bd39 --- /dev/null +++ b/src/org/apollo/net/release/r317/FifthNpcActionMessageDecoder.java @@ -0,0 +1,24 @@ +package org.apollo.net.release.r317; + +import org.apollo.game.message.impl.FifthNpcActionMessage; +import org.apollo.net.codec.game.DataOrder; +import org.apollo.net.codec.game.DataType; +import org.apollo.net.codec.game.GamePacket; +import org.apollo.net.codec.game.GamePacketReader; +import org.apollo.net.release.MessageDecoder; + +/** + * A {@link org.apollo.net.release.MessageDecoder} for the {@link org.apollo.game.message.impl.FifthNpcActionMessage}. + * + * @author Stuart + */ +public final class FifthNpcActionMessageDecoder extends MessageDecoder { + + @Override + public FifthNpcActionMessage decode(GamePacket packet) { + GamePacketReader reader = new GamePacketReader(packet); + int index = (int) reader.getSigned(DataType.SHORT, DataOrder.LITTLE); + return new FifthNpcActionMessage(index); + } + +} \ No newline at end of file diff --git a/src/org/apollo/net/release/r317/FourthNpcActionMessageDecoder.java b/src/org/apollo/net/release/r317/FourthNpcActionMessageDecoder.java new file mode 100644 index 00000000..a77bea34 --- /dev/null +++ b/src/org/apollo/net/release/r317/FourthNpcActionMessageDecoder.java @@ -0,0 +1,23 @@ +package org.apollo.net.release.r317; + +import org.apollo.game.message.impl.FourthNpcActionMessage; +import org.apollo.net.codec.game.DataType; +import org.apollo.net.codec.game.GamePacket; +import org.apollo.net.codec.game.GamePacketReader; +import org.apollo.net.release.MessageDecoder; + +/** + * A {@link org.apollo.net.release.MessageDecoder} for the {@link org.apollo.game.message.impl.FourthNpcActionMessage}. + * + * @author Stuart + */ +public final class FourthNpcActionMessageDecoder extends MessageDecoder { + + @Override + public FourthNpcActionMessage decode(GamePacket packet) { + GamePacketReader reader = new GamePacketReader(packet); + int index = (int) reader.getSigned(DataType.SHORT); + return new FourthNpcActionMessage(index); + } + +} \ No newline at end of file diff --git a/src/org/apollo/net/release/r317/Release317.java b/src/org/apollo/net/release/r317/Release317.java index 4d4a48ea..fbeabca2 100644 --- a/src/org/apollo/net/release/r317/Release317.java +++ b/src/org/apollo/net/release/r317/Release317.java @@ -143,9 +143,12 @@ public final class Release317 extends Release { register(121, spamMessageDecoder); register(155, new FirstNpcActionMessageDecoder()); - register(17, new SecondNpcActionMessageDecoder()); - register(21, new ThirdNpcActionMessageDecoder()); - register(236, new TakeTileItemMessageDecoder()); + register(72, new SecondNpcActionMessageDecoder()); + register(17, new ThirdNpcActionMessageDecoder()); + register(21, new FourthNpcActionMessageDecoder()); + register(18, new FifthNpcActionMessageDecoder()); + + register(236, new TakeTileItemMessageDecoder()); register(192, new ItemOnObjectMessageDecoder()); register(128, new FirstPlayerActionMessageDecoder()); diff --git a/src/org/apollo/net/release/r317/SecondNpcActionMessageDecoder.java b/src/org/apollo/net/release/r317/SecondNpcActionMessageDecoder.java index 25ca164a..bb8d3f32 100644 --- a/src/org/apollo/net/release/r317/SecondNpcActionMessageDecoder.java +++ b/src/org/apollo/net/release/r317/SecondNpcActionMessageDecoder.java @@ -14,7 +14,7 @@ public final class SecondNpcActionMessageDecoder extends MessageDecoder