mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2025-12-21 19:34:42 +01:00
Run Spotless on src/main
This commit is contained in:
@@ -1,8 +1,6 @@
|
||||
package emu.grasscutter.server.event;
|
||||
|
||||
/**
|
||||
* Implementing this interface marks an event as cancellable.
|
||||
*/
|
||||
public interface Cancellable {
|
||||
void cancel();
|
||||
}
|
||||
package emu.grasscutter.server.event;
|
||||
|
||||
/** Implementing this interface marks an event as cancellable. */
|
||||
public interface Cancellable {
|
||||
void cancel();
|
||||
}
|
||||
|
||||
@@ -1,32 +1,23 @@
|
||||
package emu.grasscutter.server.event;
|
||||
|
||||
import emu.grasscutter.Grasscutter;
|
||||
|
||||
/**
|
||||
* A generic server event.
|
||||
*/
|
||||
public abstract class Event {
|
||||
private boolean cancelled = false;
|
||||
|
||||
/**
|
||||
* Return the cancelled state of the event.
|
||||
*/
|
||||
public boolean isCanceled() {
|
||||
return this.cancelled;
|
||||
}
|
||||
|
||||
/**
|
||||
* Cancels the event if possible.
|
||||
*/
|
||||
public void cancel() {
|
||||
if (this instanceof Cancellable)
|
||||
this.cancelled = true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Pushes this event to all listeners.
|
||||
*/
|
||||
public void call() {
|
||||
Grasscutter.getPluginManager().invokeEvent(this);
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event;
|
||||
|
||||
import emu.grasscutter.Grasscutter;
|
||||
|
||||
/** A generic server event. */
|
||||
public abstract class Event {
|
||||
private boolean cancelled = false;
|
||||
|
||||
/** Return the cancelled state of the event. */
|
||||
public boolean isCanceled() {
|
||||
return this.cancelled;
|
||||
}
|
||||
|
||||
/** Cancels the event if possible. */
|
||||
public void cancel() {
|
||||
if (this instanceof Cancellable) this.cancelled = true;
|
||||
}
|
||||
|
||||
/** Pushes this event to all listeners. */
|
||||
public void call() {
|
||||
Grasscutter.getPluginManager().invokeEvent(this);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,92 +1,90 @@
|
||||
package emu.grasscutter.server.event;
|
||||
|
||||
import emu.grasscutter.Grasscutter;
|
||||
import emu.grasscutter.plugin.Plugin;
|
||||
import emu.grasscutter.utils.EventConsumer;
|
||||
|
||||
public final class EventHandler<T extends Event> {
|
||||
private final Class<T> eventClass;
|
||||
private EventConsumer<T> listener;
|
||||
private HandlerPriority priority;
|
||||
private boolean handleCanceled;
|
||||
|
||||
public EventHandler(Class<T> eventClass) {
|
||||
this.eventClass = eventClass;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets which event this handler is handling.
|
||||
*
|
||||
* @return An event class.
|
||||
*/
|
||||
public Class<T> handles() {
|
||||
return this.eventClass;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the callback for the handler.
|
||||
*
|
||||
* @return A consumer callback.
|
||||
*/
|
||||
public EventConsumer<T> getCallback() {
|
||||
return this.listener;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the handler's priority.
|
||||
*
|
||||
* @return The priority of the handler.
|
||||
*/
|
||||
public HandlerPriority getPriority() {
|
||||
return this.priority;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns if the handler will ignore cancelled events.
|
||||
*
|
||||
* @return The ignore cancelled state.
|
||||
*/
|
||||
public boolean ignoresCanceled() {
|
||||
return this.handleCanceled;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the callback method for when the event is invoked.
|
||||
*
|
||||
* @param listener An event handler method.
|
||||
* @return Method chaining.
|
||||
*/
|
||||
public EventHandler<T> listener(EventConsumer<T> listener) {
|
||||
this.listener = listener;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Changes the handler's priority in handling events.
|
||||
*
|
||||
* @param priority The priority of the handler.
|
||||
* @return Method chaining.
|
||||
*/
|
||||
public EventHandler<T> priority(HandlerPriority priority) {
|
||||
this.priority = priority;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets if the handler will ignore cancelled events.
|
||||
*
|
||||
* @param ignore If the handler should ignore cancelled events.
|
||||
* @return Method chaining.
|
||||
*/
|
||||
public EventHandler<T> ignore(boolean ignore) {
|
||||
this.handleCanceled = ignore;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Registers the handler into the PluginManager.
|
||||
*/
|
||||
public void register(Plugin plugin) {
|
||||
Grasscutter.getPluginManager().registerListener(plugin, this);
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event;
|
||||
|
||||
import emu.grasscutter.Grasscutter;
|
||||
import emu.grasscutter.plugin.Plugin;
|
||||
import emu.grasscutter.utils.EventConsumer;
|
||||
|
||||
public final class EventHandler<T extends Event> {
|
||||
private final Class<T> eventClass;
|
||||
private EventConsumer<T> listener;
|
||||
private HandlerPriority priority;
|
||||
private boolean handleCanceled;
|
||||
|
||||
public EventHandler(Class<T> eventClass) {
|
||||
this.eventClass = eventClass;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets which event this handler is handling.
|
||||
*
|
||||
* @return An event class.
|
||||
*/
|
||||
public Class<T> handles() {
|
||||
return this.eventClass;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the callback for the handler.
|
||||
*
|
||||
* @return A consumer callback.
|
||||
*/
|
||||
public EventConsumer<T> getCallback() {
|
||||
return this.listener;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the handler's priority.
|
||||
*
|
||||
* @return The priority of the handler.
|
||||
*/
|
||||
public HandlerPriority getPriority() {
|
||||
return this.priority;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns if the handler will ignore cancelled events.
|
||||
*
|
||||
* @return The ignore cancelled state.
|
||||
*/
|
||||
public boolean ignoresCanceled() {
|
||||
return this.handleCanceled;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the callback method for when the event is invoked.
|
||||
*
|
||||
* @param listener An event handler method.
|
||||
* @return Method chaining.
|
||||
*/
|
||||
public EventHandler<T> listener(EventConsumer<T> listener) {
|
||||
this.listener = listener;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Changes the handler's priority in handling events.
|
||||
*
|
||||
* @param priority The priority of the handler.
|
||||
* @return Method chaining.
|
||||
*/
|
||||
public EventHandler<T> priority(HandlerPriority priority) {
|
||||
this.priority = priority;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets if the handler will ignore cancelled events.
|
||||
*
|
||||
* @param ignore If the handler should ignore cancelled events.
|
||||
* @return Method chaining.
|
||||
*/
|
||||
public EventHandler<T> ignore(boolean ignore) {
|
||||
this.handleCanceled = ignore;
|
||||
return this;
|
||||
}
|
||||
|
||||
/** Registers the handler into the PluginManager. */
|
||||
public void register(Plugin plugin) {
|
||||
Grasscutter.getPluginManager().registerListener(plugin, this);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,18 +1,12 @@
|
||||
package emu.grasscutter.server.event;
|
||||
|
||||
public enum HandlerPriority {
|
||||
/**
|
||||
* The handler will be called before every other handler.
|
||||
*/
|
||||
HIGH,
|
||||
|
||||
/**
|
||||
* The handler will be called the same time as other handlers.
|
||||
*/
|
||||
NORMAL,
|
||||
|
||||
/**
|
||||
* The handler will be called after every other handler.
|
||||
*/
|
||||
LOW
|
||||
}
|
||||
package emu.grasscutter.server.event;
|
||||
|
||||
public enum HandlerPriority {
|
||||
/** The handler will be called before every other handler. */
|
||||
HIGH,
|
||||
|
||||
/** The handler will be called the same time as other handlers. */
|
||||
NORMAL,
|
||||
|
||||
/** The handler will be called after every other handler. */
|
||||
LOW
|
||||
}
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
package emu.grasscutter.server.event.dispatch;
|
||||
|
||||
import emu.grasscutter.server.event.types.ServerEvent;
|
||||
|
||||
public final class QueryAllRegionsEvent extends ServerEvent {
|
||||
private String regionList;
|
||||
|
||||
public QueryAllRegionsEvent(String regionList) {
|
||||
super(Type.DISPATCH);
|
||||
|
||||
this.regionList = regionList;
|
||||
}
|
||||
|
||||
public String getRegionList() {
|
||||
return this.regionList;
|
||||
}
|
||||
|
||||
public void setRegionList(String regionList) {
|
||||
this.regionList = regionList;
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.dispatch;
|
||||
|
||||
import emu.grasscutter.server.event.types.ServerEvent;
|
||||
|
||||
public final class QueryAllRegionsEvent extends ServerEvent {
|
||||
private String regionList;
|
||||
|
||||
public QueryAllRegionsEvent(String regionList) {
|
||||
super(Type.DISPATCH);
|
||||
|
||||
this.regionList = regionList;
|
||||
}
|
||||
|
||||
public String getRegionList() {
|
||||
return this.regionList;
|
||||
}
|
||||
|
||||
public void setRegionList(String regionList) {
|
||||
this.regionList = regionList;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
package emu.grasscutter.server.event.dispatch;
|
||||
|
||||
import emu.grasscutter.server.event.types.ServerEvent;
|
||||
|
||||
public final class QueryCurrentRegionEvent extends ServerEvent {
|
||||
private String regionInfo;
|
||||
|
||||
public QueryCurrentRegionEvent(String regionInfo) {
|
||||
super(Type.DISPATCH);
|
||||
|
||||
this.regionInfo = regionInfo;
|
||||
}
|
||||
|
||||
public String getRegionInfo() {
|
||||
return this.regionInfo;
|
||||
}
|
||||
|
||||
public void setRegionInfo(String regionInfo) {
|
||||
this.regionInfo = regionInfo;
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.dispatch;
|
||||
|
||||
import emu.grasscutter.server.event.types.ServerEvent;
|
||||
|
||||
public final class QueryCurrentRegionEvent extends ServerEvent {
|
||||
private String regionInfo;
|
||||
|
||||
public QueryCurrentRegionEvent(String regionInfo) {
|
||||
super(Type.DISPATCH);
|
||||
|
||||
this.regionInfo = regionInfo;
|
||||
}
|
||||
|
||||
public String getRegionInfo() {
|
||||
return this.regionInfo;
|
||||
}
|
||||
|
||||
public void setRegionInfo(String regionInfo) {
|
||||
this.regionInfo = regionInfo;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,33 +1,30 @@
|
||||
package emu.grasscutter.server.event.entity;
|
||||
|
||||
import emu.grasscutter.game.entity.GameEntity;
|
||||
import emu.grasscutter.server.event.Cancellable;
|
||||
import emu.grasscutter.server.event.types.EntityEvent;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
public final class EntityDamageEvent extends EntityEvent implements Cancellable {
|
||||
@Nullable
|
||||
private final GameEntity damager;
|
||||
private float damage;
|
||||
|
||||
public EntityDamageEvent(GameEntity entity, float damage, @Nullable GameEntity damager) {
|
||||
super(entity);
|
||||
|
||||
this.damage = damage;
|
||||
this.damager = damager;
|
||||
}
|
||||
|
||||
public float getDamage() {
|
||||
return this.damage;
|
||||
}
|
||||
|
||||
public void setDamage(float damage) {
|
||||
this.damage = damage;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public GameEntity getDamager() {
|
||||
return this.damager;
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.entity;
|
||||
|
||||
import emu.grasscutter.game.entity.GameEntity;
|
||||
import emu.grasscutter.server.event.Cancellable;
|
||||
import emu.grasscutter.server.event.types.EntityEvent;
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
public final class EntityDamageEvent extends EntityEvent implements Cancellable {
|
||||
@Nullable private final GameEntity damager;
|
||||
private float damage;
|
||||
|
||||
public EntityDamageEvent(GameEntity entity, float damage, @Nullable GameEntity damager) {
|
||||
super(entity);
|
||||
|
||||
this.damage = damage;
|
||||
this.damager = damager;
|
||||
}
|
||||
|
||||
public float getDamage() {
|
||||
return this.damage;
|
||||
}
|
||||
|
||||
public void setDamage(float damage) {
|
||||
this.damage = damage;
|
||||
}
|
||||
|
||||
@Nullable public GameEntity getDamager() {
|
||||
return this.damager;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,23 +1,19 @@
|
||||
package emu.grasscutter.server.event.entity;
|
||||
|
||||
import emu.grasscutter.game.entity.GameEntity;
|
||||
import emu.grasscutter.server.event.types.EntityEvent;
|
||||
import emu.grasscutter.utils.Location;
|
||||
import lombok.Getter;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
public final class EntityDeathEvent extends EntityEvent {
|
||||
@Getter
|
||||
private final Location deathLocation;
|
||||
@Getter
|
||||
@Nullable
|
||||
private final GameEntity killer;
|
||||
|
||||
public EntityDeathEvent(GameEntity entity, int killerId) {
|
||||
super(entity);
|
||||
|
||||
this.deathLocation = new Location(entity.getScene(), entity.getPosition());
|
||||
this.killer = entity.getScene().getEntityById(killerId);
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.entity;
|
||||
|
||||
import emu.grasscutter.game.entity.GameEntity;
|
||||
import emu.grasscutter.server.event.types.EntityEvent;
|
||||
import emu.grasscutter.utils.Location;
|
||||
import javax.annotation.Nullable;
|
||||
import lombok.Getter;
|
||||
|
||||
public final class EntityDeathEvent extends EntityEvent {
|
||||
@Getter private final Location deathLocation;
|
||||
@Getter @Nullable private final GameEntity killer;
|
||||
|
||||
public EntityDeathEvent(GameEntity entity, int killerId) {
|
||||
super(entity);
|
||||
|
||||
this.deathLocation = new Location(entity.getScene(), entity.getPosition());
|
||||
this.killer = entity.getScene().getEntityById(killerId);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,31 +1,32 @@
|
||||
package emu.grasscutter.server.event.entity;
|
||||
|
||||
import emu.grasscutter.game.entity.GameEntity;
|
||||
import emu.grasscutter.net.proto.MotionStateOuterClass.MotionState;
|
||||
import emu.grasscutter.server.event.types.EntityEvent;
|
||||
import emu.grasscutter.utils.Position;
|
||||
|
||||
public final class EntityMoveEvent extends EntityEvent {
|
||||
private final Position position, rotation;
|
||||
private final MotionState motionState;
|
||||
|
||||
public EntityMoveEvent(GameEntity entity, Position position, Position rotation, MotionState motionState) {
|
||||
super(entity);
|
||||
|
||||
this.position = position;
|
||||
this.rotation = rotation;
|
||||
this.motionState = motionState;
|
||||
}
|
||||
|
||||
public Position getPosition() {
|
||||
return this.position;
|
||||
}
|
||||
|
||||
public Position getRotation() {
|
||||
return this.rotation;
|
||||
}
|
||||
|
||||
public MotionState getMotionState() {
|
||||
return this.motionState;
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.entity;
|
||||
|
||||
import emu.grasscutter.game.entity.GameEntity;
|
||||
import emu.grasscutter.net.proto.MotionStateOuterClass.MotionState;
|
||||
import emu.grasscutter.server.event.types.EntityEvent;
|
||||
import emu.grasscutter.utils.Position;
|
||||
|
||||
public final class EntityMoveEvent extends EntityEvent {
|
||||
private final Position position, rotation;
|
||||
private final MotionState motionState;
|
||||
|
||||
public EntityMoveEvent(
|
||||
GameEntity entity, Position position, Position rotation, MotionState motionState) {
|
||||
super(entity);
|
||||
|
||||
this.position = position;
|
||||
this.rotation = rotation;
|
||||
this.motionState = motionState;
|
||||
}
|
||||
|
||||
public Position getPosition() {
|
||||
return this.position;
|
||||
}
|
||||
|
||||
public Position getRotation() {
|
||||
return this.rotation;
|
||||
}
|
||||
|
||||
public MotionState getMotionState() {
|
||||
return this.motionState;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,27 +1,27 @@
|
||||
package emu.grasscutter.server.event.game;
|
||||
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.server.event.types.GameEvent;
|
||||
import emu.grasscutter.server.game.GameSession;
|
||||
|
||||
public final class PlayerCreationEvent extends GameEvent {
|
||||
private final GameSession session;
|
||||
private Class<? extends Player> playerClass;
|
||||
|
||||
public PlayerCreationEvent(GameSession session, Class<? extends Player> playerClass) {
|
||||
this.session = session;
|
||||
this.playerClass = playerClass;
|
||||
}
|
||||
|
||||
public GameSession getSession() {
|
||||
return this.session;
|
||||
}
|
||||
|
||||
public Class<? extends Player> getPlayerClass() {
|
||||
return this.playerClass;
|
||||
}
|
||||
|
||||
public void setPlayerClass(Class<? extends Player> playerClass) {
|
||||
this.playerClass = playerClass;
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.game;
|
||||
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.server.event.types.GameEvent;
|
||||
import emu.grasscutter.server.game.GameSession;
|
||||
|
||||
public final class PlayerCreationEvent extends GameEvent {
|
||||
private final GameSession session;
|
||||
private Class<? extends Player> playerClass;
|
||||
|
||||
public PlayerCreationEvent(GameSession session, Class<? extends Player> playerClass) {
|
||||
this.session = session;
|
||||
this.playerClass = playerClass;
|
||||
}
|
||||
|
||||
public GameSession getSession() {
|
||||
return this.session;
|
||||
}
|
||||
|
||||
public Class<? extends Player> getPlayerClass() {
|
||||
return this.playerClass;
|
||||
}
|
||||
|
||||
public void setPlayerClass(Class<? extends Player> playerClass) {
|
||||
this.playerClass = playerClass;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,33 +1,30 @@
|
||||
package emu.grasscutter.server.event.game;
|
||||
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.server.event.Cancellable;
|
||||
import emu.grasscutter.server.event.types.ServerEvent;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
public final class ReceiveCommandFeedbackEvent extends ServerEvent implements Cancellable {
|
||||
@Nullable
|
||||
private final Player player;
|
||||
private String message;
|
||||
|
||||
public ReceiveCommandFeedbackEvent(@Nullable Player player, String message) {
|
||||
super(Type.GAME);
|
||||
|
||||
this.player = player;
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
public String getMessage() {
|
||||
return this.message;
|
||||
}
|
||||
|
||||
public void setMessage(String message) {
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public Player getPlayer() {
|
||||
return this.player;
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.game;
|
||||
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.server.event.Cancellable;
|
||||
import emu.grasscutter.server.event.types.ServerEvent;
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
public final class ReceiveCommandFeedbackEvent extends ServerEvent implements Cancellable {
|
||||
@Nullable private final Player player;
|
||||
private String message;
|
||||
|
||||
public ReceiveCommandFeedbackEvent(@Nullable Player player, String message) {
|
||||
super(Type.GAME);
|
||||
|
||||
this.player = player;
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
public String getMessage() {
|
||||
return this.message;
|
||||
}
|
||||
|
||||
public void setMessage(String message) {
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
@Nullable public Player getPlayer() {
|
||||
return this.player;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,35 +1,35 @@
|
||||
package emu.grasscutter.server.event.game;
|
||||
|
||||
import emu.grasscutter.server.event.Cancellable;
|
||||
import emu.grasscutter.server.event.types.ServerEvent;
|
||||
import emu.grasscutter.server.game.GameSession;
|
||||
|
||||
public final class ReceivePacketEvent extends ServerEvent implements Cancellable {
|
||||
private final GameSession gameSession;
|
||||
private final int packetId;
|
||||
private byte[] packetData;
|
||||
|
||||
public ReceivePacketEvent(GameSession gameSession, int packetId, byte[] packetData) {
|
||||
super(Type.GAME);
|
||||
|
||||
this.gameSession = gameSession;
|
||||
this.packetId = packetId;
|
||||
this.packetData = packetData;
|
||||
}
|
||||
|
||||
public GameSession getGameSession() {
|
||||
return this.gameSession;
|
||||
}
|
||||
|
||||
public int getPacketId() {
|
||||
return this.packetId;
|
||||
}
|
||||
|
||||
public byte[] getPacketData() {
|
||||
return this.packetData;
|
||||
}
|
||||
|
||||
public void setPacketData(byte[] packetData) {
|
||||
this.packetData = packetData;
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.game;
|
||||
|
||||
import emu.grasscutter.server.event.Cancellable;
|
||||
import emu.grasscutter.server.event.types.ServerEvent;
|
||||
import emu.grasscutter.server.game.GameSession;
|
||||
|
||||
public final class ReceivePacketEvent extends ServerEvent implements Cancellable {
|
||||
private final GameSession gameSession;
|
||||
private final int packetId;
|
||||
private byte[] packetData;
|
||||
|
||||
public ReceivePacketEvent(GameSession gameSession, int packetId, byte[] packetData) {
|
||||
super(Type.GAME);
|
||||
|
||||
this.gameSession = gameSession;
|
||||
this.packetId = packetId;
|
||||
this.packetData = packetData;
|
||||
}
|
||||
|
||||
public GameSession getGameSession() {
|
||||
return this.gameSession;
|
||||
}
|
||||
|
||||
public int getPacketId() {
|
||||
return this.packetId;
|
||||
}
|
||||
|
||||
public byte[] getPacketData() {
|
||||
return this.packetData;
|
||||
}
|
||||
|
||||
public void setPacketData(byte[] packetData) {
|
||||
this.packetData = packetData;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,30 +1,30 @@
|
||||
package emu.grasscutter.server.event.game;
|
||||
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.server.event.Cancellable;
|
||||
import emu.grasscutter.server.event.types.ServerEvent;
|
||||
import emu.grasscutter.server.game.GameSession;
|
||||
|
||||
public final class SendPacketEvent extends ServerEvent implements Cancellable {
|
||||
private final GameSession gameSession;
|
||||
private BasePacket packet;
|
||||
|
||||
public SendPacketEvent(GameSession gameSession, BasePacket packet) {
|
||||
super(Type.GAME);
|
||||
|
||||
this.gameSession = gameSession;
|
||||
this.packet = packet;
|
||||
}
|
||||
|
||||
public GameSession getGameSession() {
|
||||
return this.gameSession;
|
||||
}
|
||||
|
||||
public BasePacket getPacket() {
|
||||
return this.packet;
|
||||
}
|
||||
|
||||
public void setPacket(BasePacket packet) {
|
||||
this.packet = packet;
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.game;
|
||||
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.server.event.Cancellable;
|
||||
import emu.grasscutter.server.event.types.ServerEvent;
|
||||
import emu.grasscutter.server.game.GameSession;
|
||||
|
||||
public final class SendPacketEvent extends ServerEvent implements Cancellable {
|
||||
private final GameSession gameSession;
|
||||
private BasePacket packet;
|
||||
|
||||
public SendPacketEvent(GameSession gameSession, BasePacket packet) {
|
||||
super(Type.GAME);
|
||||
|
||||
this.gameSession = gameSession;
|
||||
this.packet = packet;
|
||||
}
|
||||
|
||||
public GameSession getGameSession() {
|
||||
return this.gameSession;
|
||||
}
|
||||
|
||||
public BasePacket getPacket() {
|
||||
return this.packet;
|
||||
}
|
||||
|
||||
public void setPacket(BasePacket packet) {
|
||||
this.packet = packet;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,24 +1,23 @@
|
||||
package emu.grasscutter.server.event.game;
|
||||
|
||||
import emu.grasscutter.server.event.types.ServerEvent;
|
||||
|
||||
import java.time.Instant;
|
||||
|
||||
public final class ServerTickEvent extends ServerEvent {
|
||||
private final Instant start, end;
|
||||
|
||||
public ServerTickEvent(Instant start, Instant end) {
|
||||
super(Type.GAME);
|
||||
|
||||
this.start = start;
|
||||
this.end = end;
|
||||
}
|
||||
|
||||
public Instant getTickStart() {
|
||||
return this.start;
|
||||
}
|
||||
|
||||
public Instant getTickEnd() {
|
||||
return this.end;
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.game;
|
||||
|
||||
import emu.grasscutter.server.event.types.ServerEvent;
|
||||
import java.time.Instant;
|
||||
|
||||
public final class ServerTickEvent extends ServerEvent {
|
||||
private final Instant start, end;
|
||||
|
||||
public ServerTickEvent(Instant start, Instant end) {
|
||||
super(Type.GAME);
|
||||
|
||||
this.start = start;
|
||||
this.end = end;
|
||||
}
|
||||
|
||||
public Instant getTickStart() {
|
||||
return this.start;
|
||||
}
|
||||
|
||||
public Instant getTickEnd() {
|
||||
return this.end;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,19 +1,18 @@
|
||||
package emu.grasscutter.server.event.internal;
|
||||
|
||||
import emu.grasscutter.server.event.types.ServerEvent;
|
||||
|
||||
import java.time.OffsetDateTime;
|
||||
|
||||
public final class ServerStartEvent extends ServerEvent {
|
||||
private final OffsetDateTime startTime;
|
||||
|
||||
public ServerStartEvent(Type type, OffsetDateTime startTime) {
|
||||
super(type);
|
||||
|
||||
this.startTime = startTime;
|
||||
}
|
||||
|
||||
public OffsetDateTime getStartTime() {
|
||||
return this.startTime;
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.internal;
|
||||
|
||||
import emu.grasscutter.server.event.types.ServerEvent;
|
||||
import java.time.OffsetDateTime;
|
||||
|
||||
public final class ServerStartEvent extends ServerEvent {
|
||||
private final OffsetDateTime startTime;
|
||||
|
||||
public ServerStartEvent(Type type, OffsetDateTime startTime) {
|
||||
super(type);
|
||||
|
||||
this.startTime = startTime;
|
||||
}
|
||||
|
||||
public OffsetDateTime getStartTime() {
|
||||
return this.startTime;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,19 +1,18 @@
|
||||
package emu.grasscutter.server.event.internal;
|
||||
|
||||
import emu.grasscutter.server.event.types.ServerEvent;
|
||||
|
||||
import java.time.OffsetDateTime;
|
||||
|
||||
public final class ServerStopEvent extends ServerEvent {
|
||||
private final OffsetDateTime stopTime;
|
||||
|
||||
public ServerStopEvent(Type type, OffsetDateTime stopTime) {
|
||||
super(type);
|
||||
|
||||
this.stopTime = stopTime;
|
||||
}
|
||||
|
||||
public OffsetDateTime getStopTime() {
|
||||
return this.stopTime;
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.internal;
|
||||
|
||||
import emu.grasscutter.server.event.types.ServerEvent;
|
||||
import java.time.OffsetDateTime;
|
||||
|
||||
public final class ServerStopEvent extends ServerEvent {
|
||||
private final OffsetDateTime stopTime;
|
||||
|
||||
public ServerStopEvent(Type type, OffsetDateTime stopTime) {
|
||||
super(type);
|
||||
|
||||
this.stopTime = stopTime;
|
||||
}
|
||||
|
||||
public OffsetDateTime getStopTime() {
|
||||
return this.stopTime;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,46 +1,40 @@
|
||||
package emu.grasscutter.server.event.player;
|
||||
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.server.event.types.PlayerEvent;
|
||||
import emu.grasscutter.utils.Position;
|
||||
|
||||
/**
|
||||
* TODO: Allow plugins to change the position of the player.
|
||||
*/
|
||||
public final class PlayerMoveEvent extends PlayerEvent {
|
||||
private final MoveType type;
|
||||
private final Position from;
|
||||
private final Position to;
|
||||
|
||||
public PlayerMoveEvent(Player player, MoveType type, Position from, Position to) {
|
||||
super(player);
|
||||
|
||||
this.type = type;
|
||||
this.from = from;
|
||||
this.to = to;
|
||||
}
|
||||
|
||||
public MoveType getMoveType() {
|
||||
return this.type;
|
||||
}
|
||||
|
||||
public Position getSource() {
|
||||
return this.from;
|
||||
}
|
||||
|
||||
public Position getDestination() {
|
||||
return this.to;
|
||||
}
|
||||
|
||||
public enum MoveType {
|
||||
/**
|
||||
* The player has sent a combat invocation to move.
|
||||
*/
|
||||
PLAYER,
|
||||
|
||||
/**
|
||||
* The server has requested that the player moves.
|
||||
*/
|
||||
SERVER
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.player;
|
||||
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.server.event.types.PlayerEvent;
|
||||
import emu.grasscutter.utils.Position;
|
||||
|
||||
/** TODO: Allow plugins to change the position of the player. */
|
||||
public final class PlayerMoveEvent extends PlayerEvent {
|
||||
private final MoveType type;
|
||||
private final Position from;
|
||||
private final Position to;
|
||||
|
||||
public PlayerMoveEvent(Player player, MoveType type, Position from, Position to) {
|
||||
super(player);
|
||||
|
||||
this.type = type;
|
||||
this.from = from;
|
||||
this.to = to;
|
||||
}
|
||||
|
||||
public MoveType getMoveType() {
|
||||
return this.type;
|
||||
}
|
||||
|
||||
public Position getSource() {
|
||||
return this.from;
|
||||
}
|
||||
|
||||
public Position getDestination() {
|
||||
return this.to;
|
||||
}
|
||||
|
||||
public enum MoveType {
|
||||
/** The player has sent a combat invocation to move. */
|
||||
PLAYER,
|
||||
|
||||
/** The server has requested that the player moves. */
|
||||
SERVER
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
package emu.grasscutter.server.event.player;
|
||||
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.server.event.types.PlayerEvent;
|
||||
|
||||
public final class PlayerQuitEvent extends PlayerEvent {
|
||||
public PlayerQuitEvent(Player player) {
|
||||
super(player);
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.player;
|
||||
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.server.event.types.PlayerEvent;
|
||||
|
||||
public final class PlayerQuitEvent extends PlayerEvent {
|
||||
public PlayerQuitEvent(Player player) {
|
||||
super(player);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,24 +1,24 @@
|
||||
package emu.grasscutter.server.event.player;
|
||||
|
||||
import emu.grasscutter.game.mail.Mail;
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.server.event.Cancellable;
|
||||
import emu.grasscutter.server.event.types.PlayerEvent;
|
||||
|
||||
public final class PlayerReceiveMailEvent extends PlayerEvent implements Cancellable {
|
||||
private Mail message;
|
||||
|
||||
public PlayerReceiveMailEvent(Player player, Mail message) {
|
||||
super(player);
|
||||
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
public Mail getMessage() {
|
||||
return this.message;
|
||||
}
|
||||
|
||||
public void setMessage(Mail message) {
|
||||
this.message = message;
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.player;
|
||||
|
||||
import emu.grasscutter.game.mail.Mail;
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.server.event.Cancellable;
|
||||
import emu.grasscutter.server.event.types.PlayerEvent;
|
||||
|
||||
public final class PlayerReceiveMailEvent extends PlayerEvent implements Cancellable {
|
||||
private Mail message;
|
||||
|
||||
public PlayerReceiveMailEvent(Player player, Mail message) {
|
||||
super(player);
|
||||
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
public Mail getMessage() {
|
||||
return this.message;
|
||||
}
|
||||
|
||||
public void setMessage(Mail message) {
|
||||
this.message = message;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,21 +1,20 @@
|
||||
package emu.grasscutter.server.event.player;
|
||||
|
||||
import emu.grasscutter.game.entity.EntityAvatar;
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.server.event.types.PlayerEvent;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* This event is invoked when the ENTIRE TEAM dies.
|
||||
* To listen for one player death, use {@link emu.grasscutter.server.event.entity.EntityDeathEvent}.
|
||||
*/
|
||||
public final class PlayerTeamDeathEvent extends PlayerEvent {
|
||||
@Getter
|
||||
private final EntityAvatar selectedAvatar;
|
||||
|
||||
public PlayerTeamDeathEvent(Player player, EntityAvatar selectedAvatar) {
|
||||
super(player);
|
||||
|
||||
this.selectedAvatar = selectedAvatar;
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.player;
|
||||
|
||||
import emu.grasscutter.game.entity.EntityAvatar;
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.server.event.types.PlayerEvent;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* This event is invoked when the ENTIRE TEAM dies. To listen for one player death, use {@link
|
||||
* emu.grasscutter.server.event.entity.EntityDeathEvent}.
|
||||
*/
|
||||
public final class PlayerTeamDeathEvent extends PlayerEvent {
|
||||
@Getter private final EntityAvatar selectedAvatar;
|
||||
|
||||
public PlayerTeamDeathEvent(Player player, EntityAvatar selectedAvatar) {
|
||||
super(player);
|
||||
|
||||
this.selectedAvatar = selectedAvatar;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,63 +1,53 @@
|
||||
package emu.grasscutter.server.event.player;
|
||||
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.server.event.Cancellable;
|
||||
import emu.grasscutter.server.event.types.PlayerEvent;
|
||||
import emu.grasscutter.utils.Position;
|
||||
|
||||
public final class PlayerTeleportEvent extends PlayerEvent implements Cancellable {
|
||||
private final TeleportType type;
|
||||
private final Position from;
|
||||
private Position to;
|
||||
|
||||
public PlayerTeleportEvent(Player player, TeleportType type, Position from, Position to) {
|
||||
super(player);
|
||||
|
||||
this.type = type;
|
||||
this.from = from;
|
||||
this.to = to;
|
||||
}
|
||||
|
||||
public TeleportType getTeleportType() {
|
||||
return this.type;
|
||||
}
|
||||
|
||||
public Position getSource() {
|
||||
return this.from;
|
||||
}
|
||||
|
||||
public Position getDestination() {
|
||||
return this.to;
|
||||
}
|
||||
|
||||
public void setDestination(Position to) {
|
||||
this.to = to;
|
||||
}
|
||||
|
||||
public enum TeleportType {
|
||||
/**
|
||||
* There is no specified reason to teleport.
|
||||
*/
|
||||
INTERNAL,
|
||||
|
||||
/**
|
||||
* The player has asked to teleport to a waypoint.
|
||||
*/
|
||||
WAYPOINT,
|
||||
|
||||
/**
|
||||
* The player has asked to teleport using the map.
|
||||
*/
|
||||
MAP,
|
||||
|
||||
/**
|
||||
* The player has asked to teleport into a dungeon.
|
||||
*/
|
||||
DUNGEON,
|
||||
|
||||
/**
|
||||
* The player has asked to teleport using the command.
|
||||
*/
|
||||
COMMAND
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.player;
|
||||
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.server.event.Cancellable;
|
||||
import emu.grasscutter.server.event.types.PlayerEvent;
|
||||
import emu.grasscutter.utils.Position;
|
||||
|
||||
public final class PlayerTeleportEvent extends PlayerEvent implements Cancellable {
|
||||
private final TeleportType type;
|
||||
private final Position from;
|
||||
private Position to;
|
||||
|
||||
public PlayerTeleportEvent(Player player, TeleportType type, Position from, Position to) {
|
||||
super(player);
|
||||
|
||||
this.type = type;
|
||||
this.from = from;
|
||||
this.to = to;
|
||||
}
|
||||
|
||||
public TeleportType getTeleportType() {
|
||||
return this.type;
|
||||
}
|
||||
|
||||
public Position getSource() {
|
||||
return this.from;
|
||||
}
|
||||
|
||||
public Position getDestination() {
|
||||
return this.to;
|
||||
}
|
||||
|
||||
public void setDestination(Position to) {
|
||||
this.to = to;
|
||||
}
|
||||
|
||||
public enum TeleportType {
|
||||
/** There is no specified reason to teleport. */
|
||||
INTERNAL,
|
||||
|
||||
/** The player has asked to teleport to a waypoint. */
|
||||
WAYPOINT,
|
||||
|
||||
/** The player has asked to teleport using the map. */
|
||||
MAP,
|
||||
|
||||
/** The player has asked to teleport into a dungeon. */
|
||||
DUNGEON,
|
||||
|
||||
/** The player has asked to teleport using the command. */
|
||||
COMMAND
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,27 +1,22 @@
|
||||
package emu.grasscutter.server.event.player;
|
||||
|
||||
import emu.grasscutter.data.excels.ItemData;
|
||||
import emu.grasscutter.game.entity.EntityAvatar;
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.server.event.Cancellable;
|
||||
import emu.grasscutter.server.event.types.PlayerEvent;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
/**
|
||||
* This event is invoked when the player uses food on an avatar.
|
||||
*/
|
||||
public final class PlayerUseFoodEvent extends PlayerEvent implements Cancellable {
|
||||
@Getter
|
||||
private final EntityAvatar selectedAvatar;
|
||||
@Getter
|
||||
@Setter
|
||||
private ItemData foodUsed;
|
||||
|
||||
public PlayerUseFoodEvent(Player player, ItemData foodUsed, EntityAvatar selectedAvatar) {
|
||||
super(player);
|
||||
|
||||
this.foodUsed = foodUsed;
|
||||
this.selectedAvatar = selectedAvatar;
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.player;
|
||||
|
||||
import emu.grasscutter.data.excels.ItemData;
|
||||
import emu.grasscutter.game.entity.EntityAvatar;
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.server.event.Cancellable;
|
||||
import emu.grasscutter.server.event.types.PlayerEvent;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
/** This event is invoked when the player uses food on an avatar. */
|
||||
public final class PlayerUseFoodEvent extends PlayerEvent implements Cancellable {
|
||||
@Getter private final EntityAvatar selectedAvatar;
|
||||
@Getter @Setter private ItemData foodUsed;
|
||||
|
||||
public PlayerUseFoodEvent(Player player, ItemData foodUsed, EntityAvatar selectedAvatar) {
|
||||
super(player);
|
||||
|
||||
this.foodUsed = foodUsed;
|
||||
this.selectedAvatar = selectedAvatar;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,19 +1,17 @@
|
||||
package emu.grasscutter.server.event.types;
|
||||
|
||||
import emu.grasscutter.game.entity.GameEntity;
|
||||
import emu.grasscutter.server.event.Event;
|
||||
|
||||
/**
|
||||
* An event that is related to entity interactions.
|
||||
*/
|
||||
public abstract class EntityEvent extends Event {
|
||||
protected final GameEntity entity;
|
||||
|
||||
public EntityEvent(GameEntity player) {
|
||||
this.entity = player;
|
||||
}
|
||||
|
||||
public GameEntity getEntity() {
|
||||
return this.entity;
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.types;
|
||||
|
||||
import emu.grasscutter.game.entity.GameEntity;
|
||||
import emu.grasscutter.server.event.Event;
|
||||
|
||||
/** An event that is related to entity interactions. */
|
||||
public abstract class EntityEvent extends Event {
|
||||
protected final GameEntity entity;
|
||||
|
||||
public EntityEvent(GameEntity player) {
|
||||
this.entity = player;
|
||||
}
|
||||
|
||||
public GameEntity getEntity() {
|
||||
return this.entity;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,10 +1,6 @@
|
||||
package emu.grasscutter.server.event.types;
|
||||
|
||||
import emu.grasscutter.server.event.Event;
|
||||
|
||||
/**
|
||||
* An event that is related to the game.
|
||||
*/
|
||||
public abstract class GameEvent extends Event {
|
||||
|
||||
}
|
||||
package emu.grasscutter.server.event.types;
|
||||
|
||||
import emu.grasscutter.server.event.Event;
|
||||
|
||||
/** An event that is related to the game. */
|
||||
public abstract class GameEvent extends Event {}
|
||||
|
||||
@@ -1,19 +1,17 @@
|
||||
package emu.grasscutter.server.event.types;
|
||||
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.server.event.Event;
|
||||
|
||||
/**
|
||||
* An event that is related to player interactions.
|
||||
*/
|
||||
public abstract class PlayerEvent extends Event {
|
||||
protected final Player player;
|
||||
|
||||
public PlayerEvent(Player player) {
|
||||
this.player = player;
|
||||
}
|
||||
|
||||
public Player getPlayer() {
|
||||
return this.player;
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.types;
|
||||
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.server.event.Event;
|
||||
|
||||
/** An event that is related to player interactions. */
|
||||
public abstract class PlayerEvent extends Event {
|
||||
protected final Player player;
|
||||
|
||||
public PlayerEvent(Player player) {
|
||||
this.player = player;
|
||||
}
|
||||
|
||||
public Player getPlayer() {
|
||||
return this.player;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,23 +1,21 @@
|
||||
package emu.grasscutter.server.event.types;
|
||||
|
||||
import emu.grasscutter.server.event.Event;
|
||||
|
||||
/**
|
||||
* An event that is related to the internals of the server.
|
||||
*/
|
||||
public abstract class ServerEvent extends Event {
|
||||
protected final Type type;
|
||||
|
||||
public ServerEvent(Type type) {
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
public Type getServerType() {
|
||||
return this.type;
|
||||
}
|
||||
|
||||
public enum Type {
|
||||
DISPATCH,
|
||||
GAME
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.server.event.types;
|
||||
|
||||
import emu.grasscutter.server.event.Event;
|
||||
|
||||
/** An event that is related to the internals of the server. */
|
||||
public abstract class ServerEvent extends Event {
|
||||
protected final Type type;
|
||||
|
||||
public ServerEvent(Type type) {
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
public Type getServerType() {
|
||||
return this.type;
|
||||
}
|
||||
|
||||
public enum Type {
|
||||
DISPATCH,
|
||||
GAME
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user