Add display crossbones event.

This commit is contained in:
Major-
2014-03-06 18:28:21 +00:00
parent d98c176585
commit 8bca73629f
5 changed files with 85 additions and 0 deletions
@@ -0,0 +1,35 @@
package org.apollo.game.event.impl;
import org.apollo.game.event.Event;
/**
* An {@link Event} sent to the client to display crossbones when the player enters a multi-combat zone.
*
* @author Major
*/
public final class DisplayCrossbonesEvent extends Event {
/**
* Whether or not the crossbones should be displayed.
*/
private final boolean display;
/**
* Creates a display crossbones event.
*
* @param display Whether or not the crossbones should be displayed.
*/
public DisplayCrossbonesEvent(boolean display) {
this.display = display;
}
/**
* Indicates whether the crossbones will be displayed.
*
* @return {@code true} if the crossbones will be displayed, otherwise {@code false}.
*/
public boolean isDisplayed() {
return display;
}
}
@@ -0,0 +1,23 @@
package org.apollo.net.release.r317;
import org.apollo.game.event.impl.DisplayCrossbonesEvent;
import org.apollo.net.codec.game.DataType;
import org.apollo.net.codec.game.GamePacket;
import org.apollo.net.codec.game.GamePacketBuilder;
import org.apollo.net.release.EventEncoder;
/**
* An {@link EventEncoder} for the {@link DisplayCrossbonesEvent}.
*
* @author Major
*/
public final class DisplayCrossbonesEventEncoder extends EventEncoder<DisplayCrossbonesEvent> {
@Override
public GamePacket encode(DisplayCrossbonesEvent event) {
GamePacketBuilder builder = new GamePacketBuilder(61);
builder.put(DataType.BYTE, event.isDisplayed() ? 1 : 0);
return builder.toGamePacket();
}
}
@@ -4,6 +4,7 @@ import org.apollo.game.event.impl.AddGlobalTileItemEvent;
import org.apollo.game.event.impl.AddTileItemEvent;
import org.apollo.game.event.impl.CloseInterfaceEvent;
import org.apollo.game.event.impl.ConfigEvent;
import org.apollo.game.event.impl.DisplayCrossbonesEvent;
import org.apollo.game.event.impl.DisplayTabInterfaceEvent;
import org.apollo.game.event.impl.EnterAmountEvent;
import org.apollo.game.event.impl.ForwardPrivateMessageEvent;
@@ -177,6 +178,7 @@ public final class Release317 extends Release {
register(OpenDialogueInterfaceEvent.class, new OpenDialogueInterfaceEventEncoder());
register(UpdateWeightEvent.class, new UpdateWeightEventEncoder());
register(SetPlayerActionEvent.class, new SetPlayerActionEventEncoder());
register(DisplayCrossbonesEvent.class, new DisplayCrossbonesEventEncoder());
register(AddGlobalTileItemEvent.class, new AddGlobalTileItemEventEncoder());
register(AddTileItemEvent.class, new AddTileItemEventEncoder());
@@ -0,0 +1,23 @@
package org.apollo.net.release.r377;
import org.apollo.game.event.impl.DisplayCrossbonesEvent;
import org.apollo.net.codec.game.DataType;
import org.apollo.net.codec.game.GamePacket;
import org.apollo.net.codec.game.GamePacketBuilder;
import org.apollo.net.release.EventEncoder;
/**
* An {@link EventEncoder} for the {@link DisplayCrossbonesEvent}.
*
* @author Major
*/
public final class DisplayCrossbonesEventEncoder extends EventEncoder<DisplayCrossbonesEvent> {
@Override
public GamePacket encode(DisplayCrossbonesEvent event) {
GamePacketBuilder builder = new GamePacketBuilder(233);
builder.put(DataType.BYTE, event.isDisplayed() ? 1 : 0);
return builder.toGamePacket();
}
}
@@ -4,6 +4,7 @@ import org.apollo.game.event.impl.AddGlobalTileItemEvent;
import org.apollo.game.event.impl.AddTileItemEvent;
import org.apollo.game.event.impl.CloseInterfaceEvent;
import org.apollo.game.event.impl.ConfigEvent;
import org.apollo.game.event.impl.DisplayCrossbonesEvent;
import org.apollo.game.event.impl.DisplayTabInterfaceEvent;
import org.apollo.game.event.impl.EnterAmountEvent;
import org.apollo.game.event.impl.ForwardPrivateMessageEvent;
@@ -174,6 +175,7 @@ public final class Release377 extends Release {
register(OpenDialogueInterfaceEvent.class, new OpenDialogueInterfaceEventEncoder());
register(UpdateWeightEvent.class, new UpdateWeightEventEncoder());
register(SetPlayerActionEvent.class, new SetPlayerActionEventEncoder());
register(DisplayCrossbonesEvent.class, new DisplayCrossbonesEventEncoder());
register(AddGlobalTileItemEvent.class, new AddGlobalTileItemEventEncoder());
register(AddTileItemEvent.class, new AddTileItemEventEncoder());