mirror of
https://github.com/2006-Scape/apollo.git
synced 2026-07-03 08:39:11 +00:00
Add display crossbones event.
This commit is contained in:
@@ -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());
|
||||
|
||||
Reference in New Issue
Block a user