From 7648abcd8f2001cc8547036b45b549b8e36f7be6 Mon Sep 17 00:00:00 2001 From: Major- Date: Fri, 27 Feb 2015 05:56:09 +0000 Subject: [PATCH] Add FlashingTabClickedMessage. --- .../impl/FlashingTabClickedMessage.java | 35 +++++++++++++++++++ .../FlashingTabClickedMessageDecoder.java | 23 ++++++++++++ .../apollo/net/release/r317/Release317.java | 1 + .../FlashingTabClickedMessageDecoder.java | 23 ++++++++++++ .../apollo/net/release/r377/Release377.java | 1 + 5 files changed, 83 insertions(+) create mode 100644 src/org/apollo/game/message/impl/FlashingTabClickedMessage.java create mode 100644 src/org/apollo/net/release/r317/FlashingTabClickedMessageDecoder.java create mode 100644 src/org/apollo/net/release/r377/FlashingTabClickedMessageDecoder.java diff --git a/src/org/apollo/game/message/impl/FlashingTabClickedMessage.java b/src/org/apollo/game/message/impl/FlashingTabClickedMessage.java new file mode 100644 index 00000000..ae7e1056 --- /dev/null +++ b/src/org/apollo/game/message/impl/FlashingTabClickedMessage.java @@ -0,0 +1,35 @@ +package org.apollo.game.message.impl; + +import org.apollo.game.message.Message; + +/** + * A {@link Message} sent by the client indicating a flashing tab has been clicked. + * + * @author Major + */ +public final class FlashingTabClickedMessage extends Message { + + /** + * The tab that was clicked. + */ + private final int tab; + + /** + * Creates the FlashingTabClickedMessage. + * + * @param tab The tab that was clicked. + */ + public FlashingTabClickedMessage(int tab) { + this.tab = tab; + } + + /** + * Gets the index of the tab that was clicked. + * + * @return The tab index. + */ + public int getTab() { + return tab; + } + +} \ No newline at end of file diff --git a/src/org/apollo/net/release/r317/FlashingTabClickedMessageDecoder.java b/src/org/apollo/net/release/r317/FlashingTabClickedMessageDecoder.java new file mode 100644 index 00000000..780be27c --- /dev/null +++ b/src/org/apollo/net/release/r317/FlashingTabClickedMessageDecoder.java @@ -0,0 +1,23 @@ +package org.apollo.net.release.r317; + +import org.apollo.game.message.impl.FlashingTabClickedMessage; +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 MessageDecoder} for the {@link FlashingTabClickedMessage}. + * + * @author Major + */ +public final class FlashingTabClickedMessageDecoder extends MessageDecoder { + + @Override + public FlashingTabClickedMessage decode(GamePacket packet) { + GamePacketReader reader = new GamePacketReader(packet); + int tab = (int) reader.getUnsigned(DataType.BYTE); + return new FlashingTabClickedMessage(tab); + } + +} \ 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 0f4d3cc0..78a0489f 100644 --- a/src/org/apollo/net/release/r317/Release317.java +++ b/src/org/apollo/net/release/r317/Release317.java @@ -127,6 +127,7 @@ public final class Release317 extends Release { register(130, new ClosedInterfaceMessageDecoder()); register(208, new EnteredAmountMessageDecoder()); register(40, new DialogueContinueMessageDecoder()); + register(120, new FlashingTabClickedMessageDecoder()); register(53, new ItemOnItemMessageDecoder()); register(237, new MagicOnItemMessageDecoder()); diff --git a/src/org/apollo/net/release/r377/FlashingTabClickedMessageDecoder.java b/src/org/apollo/net/release/r377/FlashingTabClickedMessageDecoder.java new file mode 100644 index 00000000..7d97ea93 --- /dev/null +++ b/src/org/apollo/net/release/r377/FlashingTabClickedMessageDecoder.java @@ -0,0 +1,23 @@ +package org.apollo.net.release.r377; + +import org.apollo.game.message.impl.FlashingTabClickedMessage; +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 MessageDecoder} for the {@link FlashingTabClickedMessage}. + * + * @author Major + */ +public final class FlashingTabClickedMessageDecoder extends MessageDecoder { + + @Override + public FlashingTabClickedMessage decode(GamePacket packet) { + GamePacketReader reader = new GamePacketReader(packet); + int tab = (int) reader.getUnsigned(DataType.BYTE); + return new FlashingTabClickedMessage(tab); + } + +} \ No newline at end of file diff --git a/src/org/apollo/net/release/r377/Release377.java b/src/org/apollo/net/release/r377/Release377.java index db4868e7..4903d61d 100644 --- a/src/org/apollo/net/release/r377/Release377.java +++ b/src/org/apollo/net/release/r377/Release377.java @@ -127,6 +127,7 @@ public final class Release377 extends Release { register(110, new ClosedInterfaceMessageDecoder()); register(75, new EnteredAmountMessageDecoder()); register(226, new DialogueContinueMessageDecoder()); + register(119, new FlashingTabClickedMessageDecoder()); register(1, new ItemOnItemMessageDecoder()); register(36, new MagicOnItemMessageDecoder());