mirror of
https://github.com/Minestom/Minestom.git
synced 2025-03-11 22:30:26 +01:00
Use traits for events
This commit is contained in:
parent
047d4a92ac
commit
02fe4c65a2
@ -1,23 +0,0 @@
|
||||
package net.minestom.server.event;
|
||||
|
||||
import net.minestom.server.entity.Entity;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class EntityEvent extends Event {
|
||||
|
||||
protected final Entity entity;
|
||||
|
||||
public EntityEvent(@NotNull Entity entity) {
|
||||
this.entity = entity;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the entity of this event.
|
||||
*
|
||||
* @return the entity
|
||||
*/
|
||||
@NotNull
|
||||
public Entity getEntity() {
|
||||
return entity;
|
||||
}
|
||||
}
|
@ -1,7 +1,6 @@
|
||||
package net.minestom.server.event;
|
||||
|
||||
import net.minestom.server.event.handler.EventHandler;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Object which can be listened to by an {@link EventHandler}.
|
||||
@ -9,15 +8,4 @@ import org.jetbrains.annotations.NotNull;
|
||||
* Called using {@link EventHandler#callEvent(Class, Event)}.
|
||||
*/
|
||||
public class Event {
|
||||
public static EventGroup group(@NotNull EventListener<?>... listeners) {
|
||||
return new EventGroup(listeners);
|
||||
}
|
||||
|
||||
public static <T extends EntityEvent> EventListener.Builder<T> entity(Class<T> eventType) {
|
||||
return new EventListener.Builder<>(eventType);
|
||||
}
|
||||
|
||||
public static <T extends PlayerEvent> EventListener.Builder<T> player(Class<T> eventType) {
|
||||
return new EventListener.Builder<>(eventType);
|
||||
}
|
||||
}
|
||||
|
@ -1,23 +0,0 @@
|
||||
package net.minestom.server.event;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class PlayerEvent extends Event {
|
||||
|
||||
protected final Player player;
|
||||
|
||||
public PlayerEvent(@NotNull Player player) {
|
||||
this.player = player;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the player.
|
||||
*
|
||||
* @return the player
|
||||
*/
|
||||
@NotNull
|
||||
public Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
@ -1,22 +1,29 @@
|
||||
package net.minestom.server.event.entity;
|
||||
|
||||
import net.minestom.server.entity.Entity;
|
||||
import net.minestom.server.event.EntityEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.EntityEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a player does a left click on an entity or with
|
||||
* {@link net.minestom.server.entity.EntityCreature#attack(Entity)}.
|
||||
*/
|
||||
public class EntityAttackEvent extends EntityEvent {
|
||||
public class EntityAttackEvent extends Event implements EntityEvent {
|
||||
|
||||
private final Entity entity;
|
||||
private final Entity target;
|
||||
|
||||
public EntityAttackEvent(@NotNull Entity source, @NotNull Entity target) {
|
||||
super(source);
|
||||
this.entity = source;
|
||||
this.target = target;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Entity getEntity() {
|
||||
return entity;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the target of the attack
|
||||
*/
|
||||
|
@ -1,23 +1,26 @@
|
||||
package net.minestom.server.event.entity;
|
||||
|
||||
import net.minestom.server.entity.Entity;
|
||||
import net.minestom.server.entity.LivingEntity;
|
||||
import net.minestom.server.entity.damage.DamageType;
|
||||
import net.minestom.server.event.CancellableEvent;
|
||||
import net.minestom.server.event.EntityEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.EntityEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called with {@link LivingEntity#damage(DamageType, float)}.
|
||||
*/
|
||||
public class EntityDamageEvent extends EntityEvent implements CancellableEvent {
|
||||
public class EntityDamageEvent extends Event implements EntityEvent, CancellableEvent {
|
||||
|
||||
private final Entity entity;
|
||||
private final DamageType damageType;
|
||||
private float damage;
|
||||
|
||||
private boolean cancelled;
|
||||
|
||||
public EntityDamageEvent(@NotNull LivingEntity entity, @NotNull DamageType damageType, float damage) {
|
||||
super(entity);
|
||||
this.entity = entity;
|
||||
this.damageType = damageType;
|
||||
this.damage = damage;
|
||||
}
|
||||
|
@ -1,14 +1,21 @@
|
||||
package net.minestom.server.event.entity;
|
||||
|
||||
import net.minestom.server.entity.Entity;
|
||||
import net.minestom.server.event.EntityEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.EntityEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class EntityDeathEvent extends EntityEvent {
|
||||
public class EntityDeathEvent extends Event implements EntityEvent {
|
||||
|
||||
// TODO cause
|
||||
private final Entity entity;
|
||||
|
||||
public EntityDeathEvent(@NotNull Entity entity) {
|
||||
super(entity);
|
||||
this.entity = entity;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Entity getEntity() {
|
||||
return entity;
|
||||
}
|
||||
}
|
||||
|
@ -2,18 +2,21 @@ package net.minestom.server.event.entity;
|
||||
|
||||
import net.minestom.server.entity.Entity;
|
||||
import net.minestom.server.event.CancellableEvent;
|
||||
import net.minestom.server.event.EntityEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.EntityEvent;
|
||||
import net.minestom.server.utils.time.TimeUnit;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class EntityFireEvent extends EntityEvent implements CancellableEvent {
|
||||
public class EntityFireEvent extends Event implements EntityEvent, CancellableEvent {
|
||||
|
||||
private final Entity entity;
|
||||
private int duration;
|
||||
private TimeUnit timeUnit;
|
||||
|
||||
private boolean cancelled;
|
||||
|
||||
public EntityFireEvent(Entity entity, int duration, TimeUnit timeUnit) {
|
||||
super(entity);
|
||||
this.entity = entity;
|
||||
setFireTime(duration, timeUnit);
|
||||
}
|
||||
|
||||
@ -43,4 +46,9 @@ public class EntityFireEvent extends EntityEvent implements CancellableEvent {
|
||||
public void setCancelled(boolean cancel) {
|
||||
this.cancelled = cancel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Entity getEntity() {
|
||||
return entity;
|
||||
}
|
||||
}
|
||||
|
@ -1,23 +1,26 @@
|
||||
package net.minestom.server.event.entity;
|
||||
|
||||
import net.minestom.server.entity.Entity;
|
||||
import net.minestom.server.entity.ItemEntity;
|
||||
import net.minestom.server.event.CancellableEvent;
|
||||
import net.minestom.server.event.EntityEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.EntityEvent;
|
||||
import net.minestom.server.item.ItemStack;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when two {@link ItemEntity} are merging their {@link ItemStack} together to form a sole entity.
|
||||
*/
|
||||
public class EntityItemMergeEvent extends EntityEvent implements CancellableEvent {
|
||||
public class EntityItemMergeEvent extends Event implements EntityEvent, CancellableEvent {
|
||||
|
||||
private Entity entity;
|
||||
private final ItemEntity merged;
|
||||
private ItemStack result;
|
||||
|
||||
private boolean cancelled;
|
||||
|
||||
public EntityItemMergeEvent(@NotNull ItemEntity source, @NotNull ItemEntity merged, @NotNull ItemStack result) {
|
||||
super(source);
|
||||
this.entity = source;
|
||||
this.merged = merged;
|
||||
this.result = result;
|
||||
}
|
||||
|
@ -1,19 +1,27 @@
|
||||
package net.minestom.server.event.entity;
|
||||
|
||||
import net.minestom.server.entity.Entity;
|
||||
import net.minestom.server.event.EntityEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.EntityEvent;
|
||||
import net.minestom.server.potion.Potion;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class EntityPotionAddEvent extends EntityEvent {
|
||||
public class EntityPotionAddEvent extends Event implements EntityEvent {
|
||||
|
||||
private final Entity entity;
|
||||
private final Potion potion;
|
||||
|
||||
public EntityPotionAddEvent(@NotNull Entity entity, @NotNull Potion potion) {
|
||||
super(entity);
|
||||
this.entity = entity;
|
||||
this.potion = potion;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public Entity getEntity() {
|
||||
return entity;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the potion that was added.
|
||||
*
|
||||
|
@ -1,16 +1,18 @@
|
||||
package net.minestom.server.event.entity;
|
||||
|
||||
import net.minestom.server.entity.Entity;
|
||||
import net.minestom.server.event.EntityEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.EntityEvent;
|
||||
import net.minestom.server.potion.Potion;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class EntityPotionRemoveEvent extends EntityEvent {
|
||||
public class EntityPotionRemoveEvent extends Event implements EntityEvent {
|
||||
|
||||
private final Entity entity;
|
||||
private final Potion potion;
|
||||
|
||||
public EntityPotionRemoveEvent(@NotNull Entity entity, @NotNull Potion potion) {
|
||||
super(entity);
|
||||
this.entity = entity;
|
||||
this.potion = potion;
|
||||
}
|
||||
|
||||
@ -23,4 +25,9 @@ public class EntityPotionRemoveEvent extends EntityEvent {
|
||||
public Potion getPotion() {
|
||||
return potion;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Entity getEntity() {
|
||||
return entity;
|
||||
}
|
||||
}
|
||||
|
@ -2,15 +2,17 @@ package net.minestom.server.event.entity;
|
||||
|
||||
import net.minestom.server.entity.Entity;
|
||||
import net.minestom.server.event.CancellableEvent;
|
||||
import net.minestom.server.event.EntityEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.EntityEvent;
|
||||
import net.minestom.server.utils.Position;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called with {@link net.minestom.server.entity.type.projectile.EntityProjectile#shoot(Position, double, double)}
|
||||
*/
|
||||
public class EntityShootEvent extends EntityEvent implements CancellableEvent {
|
||||
public class EntityShootEvent extends Event implements EntityEvent, CancellableEvent {
|
||||
|
||||
private final Entity entity;
|
||||
private final Entity projectile;
|
||||
private final Position to;
|
||||
private double power;
|
||||
@ -19,7 +21,7 @@ public class EntityShootEvent extends EntityEvent implements CancellableEvent {
|
||||
private boolean cancelled;
|
||||
|
||||
public EntityShootEvent(@NotNull Entity entity, @NotNull Entity projectile, @NotNull Position to, double power, double spread) {
|
||||
super(entity);
|
||||
this.entity = entity;
|
||||
this.projectile = projectile;
|
||||
this.to = to;
|
||||
this.power = power;
|
||||
@ -90,4 +92,8 @@ public class EntityShootEvent extends EntityEvent implements CancellableEvent {
|
||||
this.cancelled = cancel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Entity getEntity() {
|
||||
return entity;
|
||||
}
|
||||
}
|
||||
|
@ -1,19 +1,21 @@
|
||||
package net.minestom.server.event.entity;
|
||||
|
||||
import net.minestom.server.entity.Entity;
|
||||
import net.minestom.server.event.EntityEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.EntityEvent;
|
||||
import net.minestom.server.instance.Instance;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a new instance is set for an entity.
|
||||
*/
|
||||
public class EntitySpawnEvent extends EntityEvent {
|
||||
public class EntitySpawnEvent extends Event implements EntityEvent {
|
||||
|
||||
private final Entity entity;
|
||||
private final Instance spawnInstance;
|
||||
|
||||
public EntitySpawnEvent(@NotNull Entity entity, @NotNull Instance spawnInstance) {
|
||||
super(entity);
|
||||
this.entity = entity;
|
||||
this.spawnInstance = spawnInstance;
|
||||
}
|
||||
|
||||
|
@ -1,17 +1,24 @@
|
||||
package net.minestom.server.event.entity;
|
||||
|
||||
import net.minestom.server.entity.Entity;
|
||||
import net.minestom.server.event.EntityEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.EntityEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when an entity ticks itself.
|
||||
* Same event instance used for all tick events for the same entity.
|
||||
*/
|
||||
public class EntityTickEvent extends EntityEvent {
|
||||
public class EntityTickEvent extends Event implements EntityEvent {
|
||||
|
||||
private final Entity entity;
|
||||
|
||||
public EntityTickEvent(@NotNull Entity entity) {
|
||||
super(entity);
|
||||
this.entity = entity;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Entity getEntity() {
|
||||
return entity;
|
||||
}
|
||||
}
|
||||
|
@ -2,21 +2,23 @@ package net.minestom.server.event.entity;
|
||||
|
||||
import net.minestom.server.entity.Entity;
|
||||
import net.minestom.server.event.CancellableEvent;
|
||||
import net.minestom.server.event.EntityEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.EntityEvent;
|
||||
import net.minestom.server.utils.Vector;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a velocity is applied to an entity using {@link Entity#setVelocity(Vector)}.
|
||||
*/
|
||||
public class EntityVelocityEvent extends EntityEvent implements CancellableEvent {
|
||||
public class EntityVelocityEvent extends Event implements EntityEvent, CancellableEvent {
|
||||
|
||||
private final Entity entity;
|
||||
private Vector velocity;
|
||||
|
||||
private boolean cancelled;
|
||||
|
||||
public EntityVelocityEvent(@NotNull Entity entity, @NotNull Vector velocity) {
|
||||
super(entity);
|
||||
this.entity = entity;
|
||||
this.velocity = velocity;
|
||||
}
|
||||
|
||||
|
@ -2,20 +2,22 @@ package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.advancements.AdvancementAction;
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a {@link Player} opens the advancement screens or switch the tab
|
||||
* and when he closes the screen.
|
||||
*/
|
||||
public class AdvancementTabEvent extends PlayerEvent {
|
||||
public class AdvancementTabEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
private final AdvancementAction action;
|
||||
private final String tabId;
|
||||
|
||||
public AdvancementTabEvent(@NotNull Player player, @NotNull AdvancementAction action, @NotNull String tabId) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.action = action;
|
||||
this.tabId = tabId;
|
||||
}
|
||||
@ -41,4 +43,9 @@ public class AdvancementTabEvent extends PlayerEvent {
|
||||
public String getTabId() {
|
||||
return tabId;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,7 +1,8 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.UUID;
|
||||
@ -10,13 +11,14 @@ import java.util.UUID;
|
||||
* Called before the player initialization, it can be used to kick the player before any connection
|
||||
* or to change his final username/uuid.
|
||||
*/
|
||||
public class AsyncPlayerPreLoginEvent extends PlayerEvent {
|
||||
public class AsyncPlayerPreLoginEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
private String username;
|
||||
private UUID playerUuid;
|
||||
|
||||
public AsyncPlayerPreLoginEvent(@NotNull Player player, @NotNull String username, @NotNull UUID playerUuid) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.username = username;
|
||||
this.playerUuid = playerUuid;
|
||||
}
|
||||
@ -58,4 +60,9 @@ public class AsyncPlayerPreLoginEvent extends PlayerEvent {
|
||||
public void setPlayerUuid(@NotNull UUID playerUuid) {
|
||||
this.playerUuid = playerUuid;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -3,7 +3,8 @@ package net.minestom.server.event.player;
|
||||
import net.minestom.server.MinecraftServer;
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.CancellableEvent;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import net.minestom.server.instance.block.BlockManager;
|
||||
import net.minestom.server.instance.block.CustomBlock;
|
||||
import net.minestom.server.utils.BlockPosition;
|
||||
@ -11,10 +12,11 @@ import net.minestom.server.utils.validate.Check;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
public class PlayerBlockBreakEvent extends PlayerEvent implements CancellableEvent {
|
||||
public class PlayerBlockBreakEvent extends Event implements PlayerEvent, CancellableEvent {
|
||||
|
||||
private static final BlockManager BLOCK_MANAGER = MinecraftServer.getBlockManager();
|
||||
|
||||
private final Player player;
|
||||
private final BlockPosition blockPosition;
|
||||
|
||||
private final short blockStateId;
|
||||
@ -28,7 +30,7 @@ public class PlayerBlockBreakEvent extends PlayerEvent implements CancellableEve
|
||||
public PlayerBlockBreakEvent(@NotNull Player player, @NotNull BlockPosition blockPosition,
|
||||
short blockStateId, @Nullable CustomBlock customBlock,
|
||||
short resultBlockStateId, short resultCustomBlockId) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
|
||||
this.blockPosition = blockPosition;
|
||||
|
||||
@ -151,4 +153,9 @@ public class PlayerBlockBreakEvent extends PlayerEvent implements CancellableEve
|
||||
public void setCancelled(boolean cancel) {
|
||||
this.cancelled = cancel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -2,7 +2,8 @@ package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.CancellableEvent;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import net.minestom.server.instance.block.BlockFace;
|
||||
import net.minestom.server.utils.BlockPosition;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@ -11,8 +12,9 @@ import org.jetbrains.annotations.NotNull;
|
||||
* Called when a player interacts with a block (right-click).
|
||||
* This is also called when a block is placed.
|
||||
*/
|
||||
public class PlayerBlockInteractEvent extends PlayerEvent implements CancellableEvent {
|
||||
public class PlayerBlockInteractEvent extends Event implements PlayerEvent, CancellableEvent {
|
||||
|
||||
private final Player player;
|
||||
private final BlockPosition blockPosition;
|
||||
private final Player.Hand hand;
|
||||
private final BlockFace blockFace;
|
||||
@ -27,7 +29,7 @@ public class PlayerBlockInteractEvent extends PlayerEvent implements Cancellable
|
||||
|
||||
public PlayerBlockInteractEvent(@NotNull Player player,
|
||||
@NotNull BlockPosition blockPosition, @NotNull Player.Hand hand, @NotNull BlockFace blockFace) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.blockPosition = blockPosition;
|
||||
this.hand = hand;
|
||||
this.blockFace = blockFace;
|
||||
@ -85,4 +87,9 @@ public class PlayerBlockInteractEvent extends PlayerEvent implements Cancellable
|
||||
public void setCancelled(boolean cancel) {
|
||||
this.cancelled = cancel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -4,7 +4,8 @@ import net.minestom.server.MinecraftServer;
|
||||
import net.minestom.server.data.Data;
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.CancellableEvent;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import net.minestom.server.instance.block.Block;
|
||||
import net.minestom.server.instance.block.BlockManager;
|
||||
import net.minestom.server.instance.block.CustomBlock;
|
||||
@ -16,10 +17,11 @@ import org.jetbrains.annotations.Nullable;
|
||||
/**
|
||||
* Called when a player tries placing a block.
|
||||
*/
|
||||
public class PlayerBlockPlaceEvent extends PlayerEvent implements CancellableEvent {
|
||||
public class PlayerBlockPlaceEvent extends Event implements PlayerEvent, CancellableEvent {
|
||||
|
||||
private static final BlockManager BLOCK_MANAGER = MinecraftServer.getBlockManager();
|
||||
|
||||
private final Player player;
|
||||
private short blockStateId;
|
||||
private short customBlockId;
|
||||
private Data blockData;
|
||||
@ -32,7 +34,7 @@ public class PlayerBlockPlaceEvent extends PlayerEvent implements CancellableEve
|
||||
|
||||
public PlayerBlockPlaceEvent(@NotNull Player player, @NotNull Block block,
|
||||
@NotNull BlockPosition blockPosition, @NotNull Player.Hand hand) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.blockStateId = block.getBlockId();
|
||||
this.blockPosition = blockPosition;
|
||||
this.hand = hand;
|
||||
@ -176,4 +178,9 @@ public class PlayerBlockPlaceEvent extends PlayerEvent implements CancellableEve
|
||||
public void setCancelled(boolean cancel) {
|
||||
this.cancelled = cancel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -2,7 +2,8 @@ package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.CancellableEvent;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import net.minestom.server.utils.MathUtils;
|
||||
import net.minestom.server.utils.validate.Check;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@ -10,14 +11,15 @@ import org.jetbrains.annotations.NotNull;
|
||||
/**
|
||||
* Called when a player change his held slot (by pressing 1-9 keys).
|
||||
*/
|
||||
public class PlayerChangeHeldSlotEvent extends PlayerEvent implements CancellableEvent {
|
||||
public class PlayerChangeHeldSlotEvent extends Event implements PlayerEvent, CancellableEvent {
|
||||
|
||||
private final Player player;
|
||||
private byte slot;
|
||||
|
||||
private boolean cancelled;
|
||||
|
||||
public PlayerChangeHeldSlotEvent(@NotNull Player player, byte slot) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.slot = slot;
|
||||
}
|
||||
|
||||
@ -50,4 +52,9 @@ public class PlayerChangeHeldSlotEvent extends PlayerEvent implements Cancellabl
|
||||
public void setCancelled(boolean cancel) {
|
||||
this.cancelled = cancel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -4,7 +4,8 @@ import net.kyori.adventure.text.Component;
|
||||
import net.minestom.server.chat.JsonMessage;
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.CancellableEvent;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
@ -17,8 +18,9 @@ import java.util.function.Supplier;
|
||||
* Called every time a {@link Player} write and send something in the chat.
|
||||
* The event can be cancelled to do not send anything, and the format can be changed.
|
||||
*/
|
||||
public class PlayerChatEvent extends PlayerEvent implements CancellableEvent {
|
||||
public class PlayerChatEvent extends Event implements PlayerEvent, CancellableEvent {
|
||||
|
||||
private final Player player;
|
||||
private final Collection<Player> recipients;
|
||||
private final Supplier<Component> defaultChatFormat;
|
||||
private String message;
|
||||
@ -29,7 +31,7 @@ public class PlayerChatEvent extends PlayerEvent implements CancellableEvent {
|
||||
public PlayerChatEvent(@NotNull Player player, @NotNull Collection<Player> recipients,
|
||||
@NotNull Supplier<Component> defaultChatFormat,
|
||||
@NotNull String message) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.recipients = new ArrayList<>(recipients);
|
||||
this.defaultChatFormat = defaultChatFormat;
|
||||
this.message = message;
|
||||
@ -108,4 +110,9 @@ public class PlayerChatEvent extends PlayerEvent implements CancellableEvent {
|
||||
public void setCancelled(boolean cancel) {
|
||||
this.cancelled = cancel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,18 +1,20 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a player receive a new chunk data.
|
||||
*/
|
||||
public class PlayerChunkLoadEvent extends PlayerEvent {
|
||||
public class PlayerChunkLoadEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
private final int chunkX, chunkZ;
|
||||
|
||||
public PlayerChunkLoadEvent(@NotNull Player player, int chunkX, int chunkZ) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.chunkX = chunkX;
|
||||
this.chunkZ = chunkZ;
|
||||
}
|
||||
@ -34,4 +36,9 @@ public class PlayerChunkLoadEvent extends PlayerEvent {
|
||||
public int getChunkZ() {
|
||||
return chunkZ;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,7 +1,8 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
@ -9,12 +10,13 @@ import org.jetbrains.annotations.NotNull;
|
||||
* <p>
|
||||
* Could be used to unload the chunk internally in order to save memory.
|
||||
*/
|
||||
public class PlayerChunkUnloadEvent extends PlayerEvent {
|
||||
public class PlayerChunkUnloadEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
private final int chunkX, chunkZ;
|
||||
|
||||
public PlayerChunkUnloadEvent(@NotNull Player player, int chunkX, int chunkZ) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.chunkX = chunkX;
|
||||
this.chunkZ = chunkZ;
|
||||
}
|
||||
@ -36,4 +38,9 @@ public class PlayerChunkUnloadEvent extends PlayerEvent {
|
||||
public int getChunkZ() {
|
||||
return chunkZ;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -2,20 +2,22 @@ package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.CancellableEvent;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called every time a player send a message starting by '/'.
|
||||
*/
|
||||
public class PlayerCommandEvent extends PlayerEvent implements CancellableEvent {
|
||||
public class PlayerCommandEvent extends Event implements PlayerEvent, CancellableEvent {
|
||||
|
||||
private final Player player;
|
||||
private String command;
|
||||
|
||||
private boolean cancelled;
|
||||
|
||||
public PlayerCommandEvent(@NotNull Player player, @NotNull String command) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.command = command;
|
||||
}
|
||||
|
||||
@ -47,4 +49,9 @@ public class PlayerCommandEvent extends PlayerEvent implements CancellableEvent
|
||||
public void setCancelled(boolean cancel) {
|
||||
this.cancelled = cancel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -3,15 +3,17 @@ package net.minestom.server.event.player;
|
||||
import net.kyori.adventure.text.Component;
|
||||
import net.minestom.server.chat.JsonMessage;
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* Called when a player die in {@link Player#kill()}.
|
||||
*/
|
||||
public class PlayerDeathEvent extends PlayerEvent {
|
||||
public class PlayerDeathEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
private Component deathText;
|
||||
private Component chatMessage;
|
||||
|
||||
@ -24,7 +26,7 @@ public class PlayerDeathEvent extends PlayerEvent {
|
||||
}
|
||||
|
||||
public PlayerDeathEvent(@NotNull Player player, Component deathText, Component chatMessage) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.deathText = deathText;
|
||||
this.chatMessage = chatMessage;
|
||||
}
|
||||
@ -112,4 +114,9 @@ public class PlayerDeathEvent extends PlayerEvent {
|
||||
public void setChatMessage(@Nullable Component chatMessage) {
|
||||
this.chatMessage = chatMessage;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,15 +1,23 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a player disconnect.
|
||||
*/
|
||||
public class PlayerDisconnectEvent extends PlayerEvent {
|
||||
public class PlayerDisconnectEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
|
||||
public PlayerDisconnectEvent(@NotNull Player player) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,20 +1,22 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import net.minestom.server.item.ItemStack;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a player is finished eating.
|
||||
*/
|
||||
public class PlayerEatEvent extends PlayerEvent {
|
||||
public class PlayerEatEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
private final ItemStack foodItem;
|
||||
private final Player.Hand hand;
|
||||
|
||||
public PlayerEatEvent(@NotNull Player player, @NotNull ItemStack foodItem, @NotNull Player.Hand hand) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.foodItem = foodItem;
|
||||
this.hand = hand;
|
||||
}
|
||||
@ -31,4 +33,9 @@ public class PlayerEatEvent extends PlayerEvent {
|
||||
public @NotNull Player.Hand getHand() {
|
||||
return hand;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -2,19 +2,21 @@ package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Entity;
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a {@link Player} interacts (right-click) with an {@link Entity}.
|
||||
*/
|
||||
public class PlayerEntityInteractEvent extends PlayerEvent {
|
||||
public class PlayerEntityInteractEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
private final Entity entityTarget;
|
||||
private final Player.Hand hand;
|
||||
|
||||
public PlayerEntityInteractEvent(@NotNull Player player, @NotNull Entity entityTarget, @NotNull Player.Hand hand) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.entityTarget = entityTarget;
|
||||
this.hand = hand;
|
||||
}
|
||||
@ -38,4 +40,9 @@ public class PlayerEntityInteractEvent extends PlayerEvent {
|
||||
public Player.Hand getHand() {
|
||||
return hand;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
@ -2,20 +2,22 @@ package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.CancellableEvent;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when the player swings his hand.
|
||||
*/
|
||||
public class PlayerHandAnimationEvent extends PlayerEvent implements CancellableEvent {
|
||||
public class PlayerHandAnimationEvent extends Event implements PlayerEvent, CancellableEvent {
|
||||
|
||||
private final Player player;
|
||||
private final Player.Hand hand;
|
||||
|
||||
private boolean cancelled;
|
||||
|
||||
public PlayerHandAnimationEvent(@NotNull Player player, @NotNull Player.Hand hand) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.hand = hand;
|
||||
}
|
||||
|
||||
@ -38,4 +40,9 @@ public class PlayerHandAnimationEvent extends PlayerEvent implements Cancellable
|
||||
public void setCancelled(boolean cancel) {
|
||||
this.cancelled = cancel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -2,7 +2,8 @@ package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.CancellableEvent;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
@ -10,14 +11,15 @@ import org.jetbrains.annotations.NotNull;
|
||||
*
|
||||
* @see ItemAnimationType
|
||||
*/
|
||||
public class PlayerItemAnimationEvent extends PlayerEvent implements CancellableEvent {
|
||||
public class PlayerItemAnimationEvent extends Event implements PlayerEvent, CancellableEvent {
|
||||
|
||||
private final Player player;
|
||||
private final ItemAnimationType armAnimationType;
|
||||
|
||||
private boolean cancelled;
|
||||
|
||||
public PlayerItemAnimationEvent(@NotNull Player player, @NotNull ItemAnimationType armAnimationType) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.armAnimationType = armAnimationType;
|
||||
}
|
||||
|
||||
@ -31,6 +33,11 @@ public class PlayerItemAnimationEvent extends PlayerEvent implements Cancellable
|
||||
return armAnimationType;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
|
||||
public enum ItemAnimationType {
|
||||
BOW,
|
||||
CROSSBOW,
|
||||
|
@ -1,7 +1,8 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import net.minestom.server.instance.Instance;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
@ -16,12 +17,13 @@ import org.jetbrains.annotations.Nullable;
|
||||
* <p>
|
||||
* WARNING: defining the spawning instance is MANDATORY.
|
||||
*/
|
||||
public class PlayerLoginEvent extends PlayerEvent {
|
||||
public class PlayerLoginEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
private Instance spawningInstance;
|
||||
|
||||
public PlayerLoginEvent(@NotNull Player player) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -44,4 +46,9 @@ public class PlayerLoginEvent extends PlayerEvent {
|
||||
public void setSpawningInstance(@NotNull Instance instance) {
|
||||
this.spawningInstance = instance;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -2,21 +2,23 @@ package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.CancellableEvent;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import net.minestom.server.utils.Position;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a player is modifying his position.
|
||||
*/
|
||||
public class PlayerMoveEvent extends PlayerEvent implements CancellableEvent {
|
||||
public class PlayerMoveEvent extends Event implements PlayerEvent, CancellableEvent {
|
||||
|
||||
private final Player player;
|
||||
private Position newPosition;
|
||||
|
||||
private boolean cancelled;
|
||||
|
||||
public PlayerMoveEvent(@NotNull Player player, @NotNull Position newPosition) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.newPosition = newPosition;
|
||||
}
|
||||
|
||||
@ -48,4 +50,9 @@ public class PlayerMoveEvent extends PlayerEvent implements CancellableEvent {
|
||||
public void setCancelled(boolean cancel) {
|
||||
this.cancelled = cancel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,19 +1,21 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a player send {@link net.minestom.server.network.packet.client.play.ClientPluginMessagePacket}.
|
||||
*/
|
||||
public class PlayerPluginMessageEvent extends PlayerEvent {
|
||||
public class PlayerPluginMessageEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
private final String identifier;
|
||||
private final byte[] message;
|
||||
|
||||
public PlayerPluginMessageEvent(@NotNull Player player, @NotNull String identifier, @NotNull byte[] message) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.identifier = identifier;
|
||||
this.message = message;
|
||||
}
|
||||
@ -47,4 +49,9 @@ public class PlayerPluginMessageEvent extends PlayerEvent {
|
||||
public String getMessageString() {
|
||||
return new String(message);
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -2,7 +2,8 @@ package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.CancellableEvent;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import net.minestom.server.item.ItemStack;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@ -11,8 +12,9 @@ import org.jetbrains.annotations.NotNull;
|
||||
* or to cancel its processing, cancelling the event means that the player will
|
||||
* continue the animation indefinitely.
|
||||
*/
|
||||
public class PlayerPreEatEvent extends PlayerEvent implements CancellableEvent {
|
||||
public class PlayerPreEatEvent extends Event implements PlayerEvent, CancellableEvent {
|
||||
|
||||
private final Player player;
|
||||
private final ItemStack foodItem;
|
||||
private final Player.Hand hand;
|
||||
private long eatingTime;
|
||||
@ -20,7 +22,7 @@ public class PlayerPreEatEvent extends PlayerEvent implements CancellableEvent {
|
||||
private boolean cancelled;
|
||||
|
||||
public PlayerPreEatEvent(@NotNull Player player, @NotNull ItemStack foodItem, @NotNull Player.Hand hand, long eatingTime) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.foodItem = foodItem;
|
||||
this.hand = hand;
|
||||
this.eatingTime = eatingTime;
|
||||
@ -68,4 +70,9 @@ public class PlayerPreEatEvent extends PlayerEvent implements CancellableEvent {
|
||||
public void setCancelled(boolean cancel) {
|
||||
this.cancelled = cancel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,19 +1,21 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import net.minestom.server.resourcepack.ResourcePackStatus;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a player warns the server of a resource pack status.
|
||||
*/
|
||||
public class PlayerResourcePackStatusEvent extends PlayerEvent {
|
||||
public class PlayerResourcePackStatusEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
private final ResourcePackStatus status;
|
||||
|
||||
public PlayerResourcePackStatusEvent(@NotNull Player player, @NotNull ResourcePackStatus status) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.status = status;
|
||||
}
|
||||
|
||||
@ -26,4 +28,9 @@ public class PlayerResourcePackStatusEvent extends PlayerEvent {
|
||||
public ResourcePackStatus getStatus() {
|
||||
return status;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,7 +1,8 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import net.minestom.server.utils.Position;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@ -9,12 +10,13 @@ import org.jetbrains.annotations.NotNull;
|
||||
* Called when {@link Player#respawn()} is executed (for custom respawn or as a result of
|
||||
* {@link net.minestom.server.network.packet.client.play.ClientStatusPacket}
|
||||
*/
|
||||
public class PlayerRespawnEvent extends PlayerEvent {
|
||||
public class PlayerRespawnEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
private Position respawnPosition;
|
||||
|
||||
public PlayerRespawnEvent(@NotNull Player player) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.respawnPosition = player.getRespawnPoint();
|
||||
}
|
||||
|
||||
@ -38,4 +40,9 @@ public class PlayerRespawnEvent extends PlayerEvent {
|
||||
public void setRespawnPosition(@NotNull Position respawnPosition) {
|
||||
this.respawnPosition = respawnPosition;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,16 +1,19 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called after the player signals the server that his settings has been modified.
|
||||
*/
|
||||
public class PlayerSettingsChangeEvent extends PlayerEvent {
|
||||
public class PlayerSettingsChangeEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
|
||||
public PlayerSettingsChangeEvent(@NotNull Player player) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -2,19 +2,21 @@ package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.entity.PlayerSkin;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* Called at the player connection to initialize his skin.
|
||||
*/
|
||||
public class PlayerSkinInitEvent extends PlayerEvent {
|
||||
public class PlayerSkinInitEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
private PlayerSkin skin;
|
||||
|
||||
public PlayerSkinInitEvent(@NotNull Player player, @Nullable PlayerSkin currentSkin) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.skin = currentSkin;
|
||||
}
|
||||
|
||||
@ -36,4 +38,9 @@ public class PlayerSkinInitEvent extends PlayerEvent {
|
||||
public void setSkin(@Nullable PlayerSkin skin) {
|
||||
this.skin = skin;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,20 +1,22 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import net.minestom.server.instance.Instance;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a new instance is set for a player.
|
||||
*/
|
||||
public class PlayerSpawnEvent extends PlayerEvent {
|
||||
public class PlayerSpawnEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
private final Instance spawnInstance;
|
||||
private final boolean firstSpawn;
|
||||
|
||||
public PlayerSpawnEvent(@NotNull Player player, @NotNull Instance spawnInstance, boolean firstSpawn) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.spawnInstance = spawnInstance;
|
||||
this.firstSpawn = firstSpawn;
|
||||
}
|
||||
@ -37,4 +39,9 @@ public class PlayerSpawnEvent extends PlayerEvent {
|
||||
public boolean isFirstSpawn() {
|
||||
return firstSpawn;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -2,7 +2,8 @@ package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.CancellableEvent;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import net.minestom.server.utils.BlockPosition;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@ -14,8 +15,9 @@ import org.jetbrains.annotations.NotNull;
|
||||
* (could be because of high latency or a modified client) so cancelling {@link PlayerBlockBreakEvent} is also necessary.
|
||||
* Could be fixed in future Minestom version.
|
||||
*/
|
||||
public class PlayerStartDiggingEvent extends PlayerEvent implements CancellableEvent {
|
||||
public class PlayerStartDiggingEvent extends Event implements PlayerEvent, CancellableEvent {
|
||||
|
||||
private final Player player;
|
||||
private final BlockPosition blockPosition;
|
||||
private final int blockStateId;
|
||||
private final int customBlockId;
|
||||
@ -23,7 +25,7 @@ public class PlayerStartDiggingEvent extends PlayerEvent implements CancellableE
|
||||
private boolean cancelled;
|
||||
|
||||
public PlayerStartDiggingEvent(@NotNull Player player, @NotNull BlockPosition blockPosition, int blockStateId, int customBlockId) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.blockPosition = blockPosition;
|
||||
this.blockStateId = blockStateId;
|
||||
this.customBlockId = customBlockId;
|
||||
@ -66,4 +68,9 @@ public class PlayerStartDiggingEvent extends PlayerEvent implements CancellableE
|
||||
public void setCancelled(boolean cancel) {
|
||||
this.cancelled = cancel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,15 +1,23 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a player start flying.
|
||||
*/
|
||||
public class PlayerStartFlyingEvent extends PlayerEvent {
|
||||
public class PlayerStartFlyingEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
|
||||
public PlayerStartFlyingEvent(@NotNull Player player) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,12 +1,20 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class PlayerStartFlyingWithElytraEvent extends PlayerEvent {
|
||||
public class PlayerStartFlyingWithElytraEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
|
||||
public PlayerStartFlyingWithElytraEvent(@NotNull Player player) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,15 +1,23 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a player starts sneaking.
|
||||
*/
|
||||
public class PlayerStartSneakingEvent extends PlayerEvent {
|
||||
public class PlayerStartSneakingEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
|
||||
public PlayerStartSneakingEvent(@NotNull Player player) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,15 +1,23 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a player starts sprinting.
|
||||
*/
|
||||
public class PlayerStartSprintingEvent extends PlayerEvent {
|
||||
public class PlayerStartSprintingEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
|
||||
public PlayerStartSprintingEvent(@NotNull Player player) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,15 +1,23 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a player stop flying.
|
||||
*/
|
||||
public class PlayerStopFlyingEvent extends PlayerEvent {
|
||||
public class PlayerStopFlyingEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
|
||||
public PlayerStopFlyingEvent(@NotNull Player player) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,12 +1,20 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class PlayerStopFlyingWithElytraEvent extends PlayerEvent {
|
||||
public class PlayerStopFlyingWithElytraEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
|
||||
public PlayerStopFlyingWithElytraEvent(@NotNull Player player) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,15 +1,23 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a player stops sneaking.
|
||||
*/
|
||||
public class PlayerStopSneakingEvent extends PlayerEvent {
|
||||
public class PlayerStopSneakingEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
|
||||
public PlayerStopSneakingEvent(@NotNull Player player) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,15 +1,23 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a player stops sprinting.
|
||||
*/
|
||||
public class PlayerStopSprintingEvent extends PlayerEvent {
|
||||
public class PlayerStopSprintingEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
|
||||
public PlayerStopSprintingEvent(@NotNull Player player) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -2,22 +2,24 @@ package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.CancellableEvent;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import net.minestom.server.item.ItemStack;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a player is trying to swap his main and off hand item.
|
||||
*/
|
||||
public class PlayerSwapItemEvent extends PlayerEvent implements CancellableEvent {
|
||||
public class PlayerSwapItemEvent extends Event implements PlayerEvent, CancellableEvent {
|
||||
|
||||
private final Player player;
|
||||
private ItemStack mainHandItem;
|
||||
private ItemStack offHandItem;
|
||||
|
||||
private boolean cancelled;
|
||||
|
||||
public PlayerSwapItemEvent(@NotNull Player player, @NotNull ItemStack mainHandItem, @NotNull ItemStack offHandItem) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.mainHandItem = mainHandItem;
|
||||
this.offHandItem = offHandItem;
|
||||
}
|
||||
@ -69,4 +71,9 @@ public class PlayerSwapItemEvent extends PlayerEvent implements CancellableEvent
|
||||
public void setCancelled(boolean cancel) {
|
||||
this.cancelled = cancel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,15 +1,23 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called at each player tick.
|
||||
*/
|
||||
public class PlayerTickEvent extends PlayerEvent {
|
||||
public class PlayerTickEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
|
||||
public PlayerTickEvent(@NotNull Player player) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -2,22 +2,24 @@ package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.CancellableEvent;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import net.minestom.server.item.ItemStack;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Event when an item is used without clicking on a block.
|
||||
*/
|
||||
public class PlayerUseItemEvent extends PlayerEvent implements CancellableEvent {
|
||||
public class PlayerUseItemEvent extends Event implements PlayerEvent, CancellableEvent {
|
||||
|
||||
private final Player player;
|
||||
private final Player.Hand hand;
|
||||
private final ItemStack itemStack;
|
||||
|
||||
private boolean cancelled;
|
||||
|
||||
public PlayerUseItemEvent(@NotNull Player player, @NotNull Player.Hand hand, @NotNull ItemStack itemStack) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.hand = hand;
|
||||
this.itemStack = itemStack;
|
||||
}
|
||||
@ -51,4 +53,9 @@ public class PlayerUseItemEvent extends PlayerEvent implements CancellableEvent
|
||||
public void setCancelled(boolean cancel) {
|
||||
this.cancelled = cancel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -1,7 +1,8 @@
|
||||
package net.minestom.server.event.player;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.event.PlayerEvent;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.trait.PlayerEvent;
|
||||
import net.minestom.server.item.ItemStack;
|
||||
import net.minestom.server.utils.BlockPosition;
|
||||
import net.minestom.server.utils.Direction;
|
||||
@ -10,8 +11,9 @@ import org.jetbrains.annotations.NotNull;
|
||||
/**
|
||||
* Used when a player is clicking on a block with an item (but is not a block in item form).
|
||||
*/
|
||||
public class PlayerUseItemOnBlockEvent extends PlayerEvent {
|
||||
public class PlayerUseItemOnBlockEvent extends Event implements PlayerEvent {
|
||||
|
||||
private final Player player;
|
||||
private final Player.Hand hand;
|
||||
private final ItemStack itemStack;
|
||||
private final BlockPosition position;
|
||||
@ -20,7 +22,7 @@ public class PlayerUseItemOnBlockEvent extends PlayerEvent {
|
||||
public PlayerUseItemOnBlockEvent(@NotNull Player player, @NotNull Player.Hand hand,
|
||||
@NotNull ItemStack itemStack,
|
||||
@NotNull BlockPosition position, @NotNull Direction blockFace) {
|
||||
super(player);
|
||||
this.player = player;
|
||||
this.hand = hand;
|
||||
this.itemStack = itemStack;
|
||||
this.position = position;
|
||||
@ -66,4 +68,9 @@ public class PlayerUseItemOnBlockEvent extends PlayerEvent {
|
||||
public ItemStack getItemStack() {
|
||||
return itemStack;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull Player getPlayer() {
|
||||
return player;
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,14 @@
|
||||
package net.minestom.server.event.trait;
|
||||
|
||||
import net.minestom.server.entity.Entity;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public interface EntityEvent {
|
||||
|
||||
/**
|
||||
* Gets the entity of this event.
|
||||
*
|
||||
* @return the entity
|
||||
*/
|
||||
@NotNull Entity getEntity();
|
||||
}
|
@ -0,0 +1,8 @@
|
||||
package net.minestom.server.event.trait;
|
||||
|
||||
import net.minestom.server.item.ItemStack;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public interface ItemEvent {
|
||||
@NotNull ItemStack getItemStack();
|
||||
}
|
@ -0,0 +1,14 @@
|
||||
package net.minestom.server.event.trait;
|
||||
|
||||
import net.minestom.server.entity.Player;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public interface PlayerEvent {
|
||||
|
||||
/**
|
||||
* Gets the player.
|
||||
*
|
||||
* @return the player
|
||||
*/
|
||||
@NotNull Player getPlayer();
|
||||
}
|
@ -11,7 +11,6 @@ import net.minestom.server.entity.GameMode;
|
||||
import net.minestom.server.entity.ItemEntity;
|
||||
import net.minestom.server.entity.Player;
|
||||
import net.minestom.server.entity.damage.DamageType;
|
||||
import net.minestom.server.event.Event;
|
||||
import net.minestom.server.event.GlobalEventHandler;
|
||||
import net.minestom.server.event.entity.EntityAttackEvent;
|
||||
import net.minestom.server.event.item.ItemDropEvent;
|
||||
@ -136,20 +135,6 @@ public class PlayerInit {
|
||||
// EVENT REGISTERING
|
||||
|
||||
GlobalEventHandler globalEventHandler = MinecraftServer.getGlobalEventHandler();
|
||||
|
||||
connectionManager.addPlayerInitialization(player -> {
|
||||
|
||||
var listener = Event.player(PlayerChatEvent.class)
|
||||
.filter(playerChatEvent -> player.isCreative())
|
||||
.handler(playerChatEvent -> Audiences.players().sendMessage(Component.text("Listener is working!")))
|
||||
.build();
|
||||
//listener.attachTo(player);
|
||||
|
||||
var group = Event.group(listener);
|
||||
group.attachTo(player);
|
||||
|
||||
});
|
||||
|
||||
globalEventHandler.addEventCallback(EntityAttackEvent.class, event -> {
|
||||
final Entity source = event.getEntity();
|
||||
final Entity entity = event.getTarget();
|
||||
|
Loading…
Reference in New Issue
Block a user