mirror of
https://github.com/Minestom/Minestom.git
synced 2024-09-27 06:03:01 +02:00
Made Event an interface
This commit is contained in:
parent
9c87b4d54f
commit
2d8474282b
@ -3,7 +3,7 @@ package net.minestom.server.event;
|
|||||||
/**
|
/**
|
||||||
* Represents an {@link Event} which can be cancelled.
|
* Represents an {@link Event} which can be cancelled.
|
||||||
*/
|
*/
|
||||||
public interface CancellableEvent {
|
public interface CancellableEvent extends Event{
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets if the {@link Event} should be cancelled or not.
|
* Gets if the {@link Event} should be cancelled or not.
|
||||||
|
@ -3,9 +3,9 @@ package net.minestom.server.event;
|
|||||||
import net.minestom.server.event.handler.EventHandler;
|
import net.minestom.server.event.handler.EventHandler;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Object which can be listened to by an {@link EventHandler}.
|
* Event which can be listened to by an {@link EventHandler}.
|
||||||
* <p>
|
* <p>
|
||||||
* Called using {@link EventHandler#callEvent(Class, Event)}.
|
* Called using {@link EventHandler#callEvent(Class, Event)}.
|
||||||
*/
|
*/
|
||||||
public class Event {
|
public interface Event {
|
||||||
}
|
}
|
||||||
|
@ -21,6 +21,10 @@ public class EventListener<T extends Event> implements ListenerAttach {
|
|||||||
this.combined = combined;
|
this.combined = combined;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static <T extends Event> EventListener.Builder<T> of(Class<T> eventType) {
|
||||||
|
return new EventListener.Builder<>(eventType);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void attachTo(@NotNull EventHandler handler) {
|
public void attachTo(@NotNull EventHandler handler) {
|
||||||
final boolean success = this.attach.add(handler);
|
final boolean success = this.attach.add(handler);
|
||||||
|
@ -3,7 +3,7 @@ package net.minestom.server.event;
|
|||||||
import net.minestom.server.instance.Instance;
|
import net.minestom.server.instance.Instance;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
public class InstanceEvent extends Event {
|
public class InstanceEvent implements Event {
|
||||||
|
|
||||||
protected final Instance instance;
|
protected final Instance instance;
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@ package net.minestom.server.event;
|
|||||||
import net.minestom.server.inventory.Inventory;
|
import net.minestom.server.inventory.Inventory;
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
|
|
||||||
public class InventoryEvent extends Event {
|
public class InventoryEvent implements Event {
|
||||||
|
|
||||||
protected Inventory inventory;
|
protected Inventory inventory;
|
||||||
|
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
package net.minestom.server.event.entity;
|
package net.minestom.server.event.entity;
|
||||||
|
|
||||||
import net.minestom.server.entity.Entity;
|
import net.minestom.server.entity.Entity;
|
||||||
import net.minestom.server.event.Event;
|
|
||||||
import net.minestom.server.event.trait.EntityEvent;
|
import net.minestom.server.event.trait.EntityEvent;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
@ -9,7 +8,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
* Called when a player does a left click on an entity or with
|
* Called when a player does a left click on an entity or with
|
||||||
* {@link net.minestom.server.entity.EntityCreature#attack(Entity)}.
|
* {@link net.minestom.server.entity.EntityCreature#attack(Entity)}.
|
||||||
*/
|
*/
|
||||||
public class EntityAttackEvent extends Event implements EntityEvent {
|
public class EntityAttackEvent implements EntityEvent {
|
||||||
|
|
||||||
private final Entity entity;
|
private final Entity entity;
|
||||||
private final Entity target;
|
private final Entity target;
|
||||||
|
@ -4,14 +4,13 @@ import net.minestom.server.entity.Entity;
|
|||||||
import net.minestom.server.entity.LivingEntity;
|
import net.minestom.server.entity.LivingEntity;
|
||||||
import net.minestom.server.entity.damage.DamageType;
|
import net.minestom.server.entity.damage.DamageType;
|
||||||
import net.minestom.server.event.CancellableEvent;
|
import net.minestom.server.event.CancellableEvent;
|
||||||
import net.minestom.server.event.Event;
|
|
||||||
import net.minestom.server.event.trait.EntityEvent;
|
import net.minestom.server.event.trait.EntityEvent;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Called with {@link LivingEntity#damage(DamageType, float)}.
|
* Called with {@link LivingEntity#damage(DamageType, float)}.
|
||||||
*/
|
*/
|
||||||
public class EntityDamageEvent extends Event implements EntityEvent, CancellableEvent {
|
public class EntityDamageEvent implements EntityEvent, CancellableEvent {
|
||||||
|
|
||||||
private final Entity entity;
|
private final Entity entity;
|
||||||
private final DamageType damageType;
|
private final DamageType damageType;
|
||||||
|
@ -1,11 +1,10 @@
|
|||||||
package net.minestom.server.event.entity;
|
package net.minestom.server.event.entity;
|
||||||
|
|
||||||
import net.minestom.server.entity.Entity;
|
import net.minestom.server.entity.Entity;
|
||||||
import net.minestom.server.event.Event;
|
|
||||||
import net.minestom.server.event.trait.EntityEvent;
|
import net.minestom.server.event.trait.EntityEvent;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
public class EntityDeathEvent extends Event implements EntityEvent {
|
public class EntityDeathEvent implements EntityEvent {
|
||||||
|
|
||||||
// TODO cause
|
// TODO cause
|
||||||
private final Entity entity;
|
private final Entity entity;
|
||||||
|
@ -2,12 +2,11 @@ package net.minestom.server.event.entity;
|
|||||||
|
|
||||||
import net.minestom.server.entity.Entity;
|
import net.minestom.server.entity.Entity;
|
||||||
import net.minestom.server.event.CancellableEvent;
|
import net.minestom.server.event.CancellableEvent;
|
||||||
import net.minestom.server.event.Event;
|
|
||||||
import net.minestom.server.event.trait.EntityEvent;
|
import net.minestom.server.event.trait.EntityEvent;
|
||||||
import net.minestom.server.utils.time.TimeUnit;
|
import net.minestom.server.utils.time.TimeUnit;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
public class EntityFireEvent extends Event implements EntityEvent, CancellableEvent {
|
public class EntityFireEvent implements EntityEvent, CancellableEvent {
|
||||||
|
|
||||||
private final Entity entity;
|
private final Entity entity;
|
||||||
private int duration;
|
private int duration;
|
||||||
|
@ -3,7 +3,6 @@ package net.minestom.server.event.entity;
|
|||||||
import net.minestom.server.entity.Entity;
|
import net.minestom.server.entity.Entity;
|
||||||
import net.minestom.server.entity.ItemEntity;
|
import net.minestom.server.entity.ItemEntity;
|
||||||
import net.minestom.server.event.CancellableEvent;
|
import net.minestom.server.event.CancellableEvent;
|
||||||
import net.minestom.server.event.Event;
|
|
||||||
import net.minestom.server.event.trait.EntityEvent;
|
import net.minestom.server.event.trait.EntityEvent;
|
||||||
import net.minestom.server.item.ItemStack;
|
import net.minestom.server.item.ItemStack;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
@ -11,7 +10,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when two {@link ItemEntity} are merging their {@link ItemStack} together to form a sole entity.
|
* Called when two {@link ItemEntity} are merging their {@link ItemStack} together to form a sole entity.
|
||||||
*/
|
*/
|
||||||
public class EntityItemMergeEvent extends Event implements EntityEvent, CancellableEvent {
|
public class EntityItemMergeEvent implements EntityEvent, CancellableEvent {
|
||||||
|
|
||||||
private Entity entity;
|
private Entity entity;
|
||||||
private final ItemEntity merged;
|
private final ItemEntity merged;
|
||||||
|
@ -1,12 +1,11 @@
|
|||||||
package net.minestom.server.event.entity;
|
package net.minestom.server.event.entity;
|
||||||
|
|
||||||
import net.minestom.server.entity.Entity;
|
import net.minestom.server.entity.Entity;
|
||||||
import net.minestom.server.event.Event;
|
|
||||||
import net.minestom.server.event.trait.EntityEvent;
|
import net.minestom.server.event.trait.EntityEvent;
|
||||||
import net.minestom.server.potion.Potion;
|
import net.minestom.server.potion.Potion;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
public class EntityPotionAddEvent extends Event implements EntityEvent {
|
public class EntityPotionAddEvent implements EntityEvent {
|
||||||
|
|
||||||
private final Entity entity;
|
private final Entity entity;
|
||||||
private final Potion potion;
|
private final Potion potion;
|
||||||
|
@ -1,12 +1,11 @@
|
|||||||
package net.minestom.server.event.entity;
|
package net.minestom.server.event.entity;
|
||||||
|
|
||||||
import net.minestom.server.entity.Entity;
|
import net.minestom.server.entity.Entity;
|
||||||
import net.minestom.server.event.Event;
|
|
||||||
import net.minestom.server.event.trait.EntityEvent;
|
import net.minestom.server.event.trait.EntityEvent;
|
||||||
import net.minestom.server.potion.Potion;
|
import net.minestom.server.potion.Potion;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
public class EntityPotionRemoveEvent extends Event implements EntityEvent {
|
public class EntityPotionRemoveEvent implements EntityEvent {
|
||||||
|
|
||||||
private final Entity entity;
|
private final Entity entity;
|
||||||
private final Potion potion;
|
private final Potion potion;
|
||||||
|
@ -2,7 +2,6 @@ package net.minestom.server.event.entity;
|
|||||||
|
|
||||||
import net.minestom.server.entity.Entity;
|
import net.minestom.server.entity.Entity;
|
||||||
import net.minestom.server.event.CancellableEvent;
|
import net.minestom.server.event.CancellableEvent;
|
||||||
import net.minestom.server.event.Event;
|
|
||||||
import net.minestom.server.event.trait.EntityEvent;
|
import net.minestom.server.event.trait.EntityEvent;
|
||||||
import net.minestom.server.utils.Position;
|
import net.minestom.server.utils.Position;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
@ -10,7 +9,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called with {@link net.minestom.server.entity.type.projectile.EntityProjectile#shoot(Position, double, double)}
|
* Called with {@link net.minestom.server.entity.type.projectile.EntityProjectile#shoot(Position, double, double)}
|
||||||
*/
|
*/
|
||||||
public class EntityShootEvent extends Event implements EntityEvent, CancellableEvent {
|
public class EntityShootEvent implements EntityEvent, CancellableEvent {
|
||||||
|
|
||||||
private final Entity entity;
|
private final Entity entity;
|
||||||
private final Entity projectile;
|
private final Entity projectile;
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
package net.minestom.server.event.entity;
|
package net.minestom.server.event.entity;
|
||||||
|
|
||||||
import net.minestom.server.entity.Entity;
|
import net.minestom.server.entity.Entity;
|
||||||
import net.minestom.server.event.Event;
|
|
||||||
import net.minestom.server.event.trait.EntityEvent;
|
import net.minestom.server.event.trait.EntityEvent;
|
||||||
import net.minestom.server.instance.Instance;
|
import net.minestom.server.instance.Instance;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
@ -9,7 +8,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when a new instance is set for an entity.
|
* Called when a new instance is set for an entity.
|
||||||
*/
|
*/
|
||||||
public class EntitySpawnEvent extends Event implements EntityEvent {
|
public class EntitySpawnEvent implements EntityEvent {
|
||||||
|
|
||||||
private final Entity entity;
|
private final Entity entity;
|
||||||
private final Instance spawnInstance;
|
private final Instance spawnInstance;
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
package net.minestom.server.event.entity;
|
package net.minestom.server.event.entity;
|
||||||
|
|
||||||
import net.minestom.server.entity.Entity;
|
import net.minestom.server.entity.Entity;
|
||||||
import net.minestom.server.event.Event;
|
|
||||||
import net.minestom.server.event.trait.EntityEvent;
|
import net.minestom.server.event.trait.EntityEvent;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
@ -9,7 +8,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
* Called when an entity ticks itself.
|
* Called when an entity ticks itself.
|
||||||
* Same event instance used for all tick events for the same entity.
|
* Same event instance used for all tick events for the same entity.
|
||||||
*/
|
*/
|
||||||
public class EntityTickEvent extends Event implements EntityEvent {
|
public class EntityTickEvent implements EntityEvent {
|
||||||
|
|
||||||
private final Entity entity;
|
private final Entity entity;
|
||||||
|
|
||||||
|
@ -2,7 +2,6 @@ package net.minestom.server.event.entity;
|
|||||||
|
|
||||||
import net.minestom.server.entity.Entity;
|
import net.minestom.server.entity.Entity;
|
||||||
import net.minestom.server.event.CancellableEvent;
|
import net.minestom.server.event.CancellableEvent;
|
||||||
import net.minestom.server.event.Event;
|
|
||||||
import net.minestom.server.event.trait.EntityEvent;
|
import net.minestom.server.event.trait.EntityEvent;
|
||||||
import net.minestom.server.utils.Vector;
|
import net.minestom.server.utils.Vector;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
@ -10,7 +9,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when a velocity is applied to an entity using {@link Entity#setVelocity(Vector)}.
|
* Called when a velocity is applied to an entity using {@link Entity#setVelocity(Vector)}.
|
||||||
*/
|
*/
|
||||||
public class EntityVelocityEvent extends Event implements EntityEvent, CancellableEvent {
|
public class EntityVelocityEvent implements EntityEvent, CancellableEvent {
|
||||||
|
|
||||||
private final Entity entity;
|
private final Entity entity;
|
||||||
private Vector velocity;
|
private Vector velocity;
|
||||||
|
@ -6,7 +6,7 @@ import net.minestom.server.event.Event;
|
|||||||
import net.minestom.server.item.ItemStack;
|
import net.minestom.server.item.ItemStack;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
public class EntityEquipEvent extends Event {
|
public class EntityEquipEvent implements Event {
|
||||||
|
|
||||||
private final Entity entity;
|
private final Entity entity;
|
||||||
private ItemStack equippedItem;
|
private ItemStack equippedItem;
|
||||||
|
@ -6,7 +6,7 @@ import net.minestom.server.event.Event;
|
|||||||
import net.minestom.server.item.ItemStack;
|
import net.minestom.server.item.ItemStack;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
public class ItemDropEvent extends Event implements CancellableEvent {
|
public class ItemDropEvent implements CancellableEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private final ItemStack itemStack;
|
private final ItemStack itemStack;
|
||||||
|
@ -5,7 +5,7 @@ import net.minestom.server.event.Event;
|
|||||||
import net.minestom.server.item.ItemStack;
|
import net.minestom.server.item.ItemStack;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
public class ItemUpdateStateEvent extends Event {
|
public class ItemUpdateStateEvent implements Event {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private final Player.Hand hand;
|
private final Player.Hand hand;
|
||||||
|
@ -5,7 +5,7 @@ import net.minestom.server.event.CancellableEvent;
|
|||||||
import net.minestom.server.event.Event;
|
import net.minestom.server.event.Event;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
public class PickupExperienceEvent extends Event implements CancellableEvent {
|
public class PickupExperienceEvent implements CancellableEvent {
|
||||||
|
|
||||||
private final ExperienceOrb experienceOrb;
|
private final ExperienceOrb experienceOrb;
|
||||||
private short experienceCount;
|
private short experienceCount;
|
||||||
|
@ -7,7 +7,7 @@ import net.minestom.server.event.Event;
|
|||||||
import net.minestom.server.item.ItemStack;
|
import net.minestom.server.item.ItemStack;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
public class PickupItemEvent extends Event implements CancellableEvent {
|
public class PickupItemEvent implements CancellableEvent {
|
||||||
|
|
||||||
private final LivingEntity livingEntity;
|
private final LivingEntity livingEntity;
|
||||||
private final ItemEntity itemEntity;
|
private final ItemEntity itemEntity;
|
||||||
|
@ -10,7 +10,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
* Called when a {@link Player} opens the advancement screens or switch the tab
|
* Called when a {@link Player} opens the advancement screens or switch the tab
|
||||||
* and when he closes the screen.
|
* and when he closes the screen.
|
||||||
*/
|
*/
|
||||||
public class AdvancementTabEvent extends Event implements PlayerEvent {
|
public class AdvancementTabEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private final AdvancementAction action;
|
private final AdvancementAction action;
|
||||||
|
@ -11,7 +11,7 @@ import java.util.UUID;
|
|||||||
* Called before the player initialization, it can be used to kick the player before any connection
|
* Called before the player initialization, it can be used to kick the player before any connection
|
||||||
* or to change his final username/uuid.
|
* or to change his final username/uuid.
|
||||||
*/
|
*/
|
||||||
public class AsyncPlayerPreLoginEvent extends Event implements PlayerEvent {
|
public class AsyncPlayerPreLoginEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private String username;
|
private String username;
|
||||||
|
@ -12,7 +12,7 @@ import net.minestom.server.utils.validate.Check;
|
|||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
|
|
||||||
public class PlayerBlockBreakEvent extends Event implements PlayerEvent, CancellableEvent {
|
public class PlayerBlockBreakEvent implements PlayerEvent, CancellableEvent {
|
||||||
|
|
||||||
private static final BlockManager BLOCK_MANAGER = MinecraftServer.getBlockManager();
|
private static final BlockManager BLOCK_MANAGER = MinecraftServer.getBlockManager();
|
||||||
|
|
||||||
|
@ -12,7 +12,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
* Called when a player interacts with a block (right-click).
|
* Called when a player interacts with a block (right-click).
|
||||||
* This is also called when a block is placed.
|
* This is also called when a block is placed.
|
||||||
*/
|
*/
|
||||||
public class PlayerBlockInteractEvent extends Event implements PlayerEvent, CancellableEvent {
|
public class PlayerBlockInteractEvent implements PlayerEvent, CancellableEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private final BlockPosition blockPosition;
|
private final BlockPosition blockPosition;
|
||||||
|
@ -17,7 +17,7 @@ import org.jetbrains.annotations.Nullable;
|
|||||||
/**
|
/**
|
||||||
* Called when a player tries placing a block.
|
* Called when a player tries placing a block.
|
||||||
*/
|
*/
|
||||||
public class PlayerBlockPlaceEvent extends Event implements PlayerEvent, CancellableEvent {
|
public class PlayerBlockPlaceEvent implements PlayerEvent, CancellableEvent {
|
||||||
|
|
||||||
private static final BlockManager BLOCK_MANAGER = MinecraftServer.getBlockManager();
|
private static final BlockManager BLOCK_MANAGER = MinecraftServer.getBlockManager();
|
||||||
|
|
||||||
|
@ -11,7 +11,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when a player change his held slot (by pressing 1-9 keys).
|
* Called when a player change his held slot (by pressing 1-9 keys).
|
||||||
*/
|
*/
|
||||||
public class PlayerChangeHeldSlotEvent extends Event implements PlayerEvent, CancellableEvent {
|
public class PlayerChangeHeldSlotEvent implements PlayerEvent, CancellableEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private byte slot;
|
private byte slot;
|
||||||
|
@ -18,7 +18,7 @@ import java.util.function.Supplier;
|
|||||||
* Called every time a {@link Player} write and send something in the chat.
|
* 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.
|
* The event can be cancelled to do not send anything, and the format can be changed.
|
||||||
*/
|
*/
|
||||||
public class PlayerChatEvent extends Event implements PlayerEvent, CancellableEvent {
|
public class PlayerChatEvent implements PlayerEvent, CancellableEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private final Collection<Player> recipients;
|
private final Collection<Player> recipients;
|
||||||
|
@ -8,7 +8,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when a player receive a new chunk data.
|
* Called when a player receive a new chunk data.
|
||||||
*/
|
*/
|
||||||
public class PlayerChunkLoadEvent extends Event implements PlayerEvent {
|
public class PlayerChunkLoadEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private final int chunkX, chunkZ;
|
private final int chunkX, chunkZ;
|
||||||
|
@ -10,7 +10,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
* <p>
|
* <p>
|
||||||
* Could be used to unload the chunk internally in order to save memory.
|
* Could be used to unload the chunk internally in order to save memory.
|
||||||
*/
|
*/
|
||||||
public class PlayerChunkUnloadEvent extends Event implements PlayerEvent {
|
public class PlayerChunkUnloadEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private final int chunkX, chunkZ;
|
private final int chunkX, chunkZ;
|
||||||
|
@ -9,7 +9,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called every time a player send a message starting by '/'.
|
* Called every time a player send a message starting by '/'.
|
||||||
*/
|
*/
|
||||||
public class PlayerCommandEvent extends Event implements PlayerEvent, CancellableEvent {
|
public class PlayerCommandEvent implements PlayerEvent, CancellableEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private String command;
|
private String command;
|
||||||
|
@ -11,7 +11,7 @@ import org.jetbrains.annotations.Nullable;
|
|||||||
/**
|
/**
|
||||||
* Called when a player die in {@link Player#kill()}.
|
* Called when a player die in {@link Player#kill()}.
|
||||||
*/
|
*/
|
||||||
public class PlayerDeathEvent extends Event implements PlayerEvent {
|
public class PlayerDeathEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private Component deathText;
|
private Component deathText;
|
||||||
|
@ -8,7 +8,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when a player disconnect.
|
* Called when a player disconnect.
|
||||||
*/
|
*/
|
||||||
public class PlayerDisconnectEvent extends Event implements PlayerEvent {
|
public class PlayerDisconnectEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
|
|
||||||
|
@ -9,7 +9,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when a player is finished eating.
|
* Called when a player is finished eating.
|
||||||
*/
|
*/
|
||||||
public class PlayerEatEvent extends Event implements PlayerEvent {
|
public class PlayerEatEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private final ItemStack foodItem;
|
private final ItemStack foodItem;
|
||||||
|
@ -9,7 +9,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when a {@link Player} interacts (right-click) with an {@link Entity}.
|
* Called when a {@link Player} interacts (right-click) with an {@link Entity}.
|
||||||
*/
|
*/
|
||||||
public class PlayerEntityInteractEvent extends Event implements PlayerEvent {
|
public class PlayerEntityInteractEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private final Entity entityTarget;
|
private final Entity entityTarget;
|
||||||
|
@ -9,7 +9,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when the player swings his hand.
|
* Called when the player swings his hand.
|
||||||
*/
|
*/
|
||||||
public class PlayerHandAnimationEvent extends Event implements PlayerEvent, CancellableEvent {
|
public class PlayerHandAnimationEvent implements PlayerEvent, CancellableEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private final Player.Hand hand;
|
private final Player.Hand hand;
|
||||||
|
@ -11,7 +11,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
*
|
*
|
||||||
* @see ItemAnimationType
|
* @see ItemAnimationType
|
||||||
*/
|
*/
|
||||||
public class PlayerItemAnimationEvent extends Event implements PlayerEvent, CancellableEvent {
|
public class PlayerItemAnimationEvent implements PlayerEvent, CancellableEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private final ItemAnimationType armAnimationType;
|
private final ItemAnimationType armAnimationType;
|
||||||
|
@ -17,7 +17,7 @@ import org.jetbrains.annotations.Nullable;
|
|||||||
* <p>
|
* <p>
|
||||||
* WARNING: defining the spawning instance is MANDATORY.
|
* WARNING: defining the spawning instance is MANDATORY.
|
||||||
*/
|
*/
|
||||||
public class PlayerLoginEvent extends Event implements PlayerEvent {
|
public class PlayerLoginEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private Instance spawningInstance;
|
private Instance spawningInstance;
|
||||||
|
@ -10,7 +10,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when a player is modifying his position.
|
* Called when a player is modifying his position.
|
||||||
*/
|
*/
|
||||||
public class PlayerMoveEvent extends Event implements PlayerEvent, CancellableEvent {
|
public class PlayerMoveEvent implements PlayerEvent, CancellableEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private Position newPosition;
|
private Position newPosition;
|
||||||
|
@ -8,7 +8,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when a player send {@link net.minestom.server.network.packet.client.play.ClientPluginMessagePacket}.
|
* Called when a player send {@link net.minestom.server.network.packet.client.play.ClientPluginMessagePacket}.
|
||||||
*/
|
*/
|
||||||
public class PlayerPluginMessageEvent extends Event implements PlayerEvent {
|
public class PlayerPluginMessageEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private final String identifier;
|
private final String identifier;
|
||||||
|
@ -12,7 +12,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
* or to cancel its processing, cancelling the event means that the player will
|
* or to cancel its processing, cancelling the event means that the player will
|
||||||
* continue the animation indefinitely.
|
* continue the animation indefinitely.
|
||||||
*/
|
*/
|
||||||
public class PlayerPreEatEvent extends Event implements PlayerEvent, CancellableEvent {
|
public class PlayerPreEatEvent implements PlayerEvent, CancellableEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private final ItemStack foodItem;
|
private final ItemStack foodItem;
|
||||||
|
@ -9,7 +9,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when a player warns the server of a resource pack status.
|
* Called when a player warns the server of a resource pack status.
|
||||||
*/
|
*/
|
||||||
public class PlayerResourcePackStatusEvent extends Event implements PlayerEvent {
|
public class PlayerResourcePackStatusEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private final ResourcePackStatus status;
|
private final ResourcePackStatus status;
|
||||||
|
@ -10,7 +10,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
* Called when {@link Player#respawn()} is executed (for custom respawn or as a result of
|
* Called when {@link Player#respawn()} is executed (for custom respawn or as a result of
|
||||||
* {@link net.minestom.server.network.packet.client.play.ClientStatusPacket}
|
* {@link net.minestom.server.network.packet.client.play.ClientStatusPacket}
|
||||||
*/
|
*/
|
||||||
public class PlayerRespawnEvent extends Event implements PlayerEvent {
|
public class PlayerRespawnEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private Position respawnPosition;
|
private Position respawnPosition;
|
||||||
|
@ -8,7 +8,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called after the player signals the server that his settings has been modified.
|
* Called after the player signals the server that his settings has been modified.
|
||||||
*/
|
*/
|
||||||
public class PlayerSettingsChangeEvent extends Event implements PlayerEvent {
|
public class PlayerSettingsChangeEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
|
|
||||||
|
@ -10,7 +10,7 @@ import org.jetbrains.annotations.Nullable;
|
|||||||
/**
|
/**
|
||||||
* Called at the player connection to initialize his skin.
|
* Called at the player connection to initialize his skin.
|
||||||
*/
|
*/
|
||||||
public class PlayerSkinInitEvent extends Event implements PlayerEvent {
|
public class PlayerSkinInitEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private PlayerSkin skin;
|
private PlayerSkin skin;
|
||||||
|
@ -9,7 +9,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when a new instance is set for a player.
|
* Called when a new instance is set for a player.
|
||||||
*/
|
*/
|
||||||
public class PlayerSpawnEvent extends Event implements PlayerEvent {
|
public class PlayerSpawnEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private final Instance spawnInstance;
|
private final Instance spawnInstance;
|
||||||
|
@ -15,7 +15,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
* (could be because of high latency or a modified client) so cancelling {@link PlayerBlockBreakEvent} is also necessary.
|
* (could be because of high latency or a modified client) so cancelling {@link PlayerBlockBreakEvent} is also necessary.
|
||||||
* Could be fixed in future Minestom version.
|
* Could be fixed in future Minestom version.
|
||||||
*/
|
*/
|
||||||
public class PlayerStartDiggingEvent extends Event implements PlayerEvent, CancellableEvent {
|
public class PlayerStartDiggingEvent implements PlayerEvent, CancellableEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private final BlockPosition blockPosition;
|
private final BlockPosition blockPosition;
|
||||||
|
@ -8,7 +8,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when a player start flying.
|
* Called when a player start flying.
|
||||||
*/
|
*/
|
||||||
public class PlayerStartFlyingEvent extends Event implements PlayerEvent {
|
public class PlayerStartFlyingEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@ import net.minestom.server.event.Event;
|
|||||||
import net.minestom.server.event.trait.PlayerEvent;
|
import net.minestom.server.event.trait.PlayerEvent;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
public class PlayerStartFlyingWithElytraEvent extends Event implements PlayerEvent {
|
public class PlayerStartFlyingWithElytraEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when a player starts sneaking.
|
* Called when a player starts sneaking.
|
||||||
*/
|
*/
|
||||||
public class PlayerStartSneakingEvent extends Event implements PlayerEvent {
|
public class PlayerStartSneakingEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when a player starts sprinting.
|
* Called when a player starts sprinting.
|
||||||
*/
|
*/
|
||||||
public class PlayerStartSprintingEvent extends Event implements PlayerEvent {
|
public class PlayerStartSprintingEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when a player stop flying.
|
* Called when a player stop flying.
|
||||||
*/
|
*/
|
||||||
public class PlayerStopFlyingEvent extends Event implements PlayerEvent {
|
public class PlayerStopFlyingEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@ import net.minestom.server.event.Event;
|
|||||||
import net.minestom.server.event.trait.PlayerEvent;
|
import net.minestom.server.event.trait.PlayerEvent;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
public class PlayerStopFlyingWithElytraEvent extends Event implements PlayerEvent {
|
public class PlayerStopFlyingWithElytraEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when a player stops sneaking.
|
* Called when a player stops sneaking.
|
||||||
*/
|
*/
|
||||||
public class PlayerStopSneakingEvent extends Event implements PlayerEvent {
|
public class PlayerStopSneakingEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when a player stops sprinting.
|
* Called when a player stops sprinting.
|
||||||
*/
|
*/
|
||||||
public class PlayerStopSprintingEvent extends Event implements PlayerEvent {
|
public class PlayerStopSprintingEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
|
|
||||||
|
@ -10,7 +10,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Called when a player is trying to swap his main and off hand item.
|
* Called when a player is trying to swap his main and off hand item.
|
||||||
*/
|
*/
|
||||||
public class PlayerSwapItemEvent extends Event implements PlayerEvent, CancellableEvent {
|
public class PlayerSwapItemEvent implements PlayerEvent, CancellableEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private ItemStack mainHandItem;
|
private ItemStack mainHandItem;
|
||||||
|
@ -1,14 +1,13 @@
|
|||||||
package net.minestom.server.event.player;
|
package net.minestom.server.event.player;
|
||||||
|
|
||||||
import net.minestom.server.entity.Player;
|
import net.minestom.server.entity.Player;
|
||||||
import net.minestom.server.event.Event;
|
|
||||||
import net.minestom.server.event.trait.PlayerEvent;
|
import net.minestom.server.event.trait.PlayerEvent;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Called at each player tick.
|
* Called at each player tick.
|
||||||
*/
|
*/
|
||||||
public class PlayerTickEvent extends Event implements PlayerEvent {
|
public class PlayerTickEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
|
|
||||||
|
@ -10,7 +10,7 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
/**
|
/**
|
||||||
* Event when an item is used without clicking on a block.
|
* Event when an item is used without clicking on a block.
|
||||||
*/
|
*/
|
||||||
public class PlayerUseItemEvent extends Event implements PlayerEvent, CancellableEvent {
|
public class PlayerUseItemEvent implements PlayerEvent, CancellableEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private final Player.Hand hand;
|
private final Player.Hand hand;
|
||||||
|
@ -11,7 +11,7 @@ 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).
|
* Used when a player is clicking on a block with an item (but is not a block in item form).
|
||||||
*/
|
*/
|
||||||
public class PlayerUseItemOnBlockEvent extends Event implements PlayerEvent {
|
public class PlayerUseItemOnBlockEvent implements PlayerEvent {
|
||||||
|
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private final Player.Hand hand;
|
private final Player.Hand hand;
|
||||||
|
@ -4,7 +4,7 @@ import net.minestom.server.event.Event;
|
|||||||
import net.minestom.server.network.packet.server.play.TagsPacket;
|
import net.minestom.server.network.packet.server.play.TagsPacket;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
public class UpdateTagListEvent extends Event {
|
public class UpdateTagListEvent implements Event {
|
||||||
|
|
||||||
private TagsPacket packet;
|
private TagsPacket packet;
|
||||||
|
|
||||||
|
@ -2,7 +2,6 @@ package net.minestom.server.event.server;
|
|||||||
|
|
||||||
import net.minestom.server.MinecraftServer;
|
import net.minestom.server.MinecraftServer;
|
||||||
import net.minestom.server.event.CancellableEvent;
|
import net.minestom.server.event.CancellableEvent;
|
||||||
import net.minestom.server.event.Event;
|
|
||||||
import net.minestom.server.network.player.PlayerConnection;
|
import net.minestom.server.network.player.PlayerConnection;
|
||||||
import net.minestom.server.ping.ResponseData;
|
import net.minestom.server.ping.ResponseData;
|
||||||
import net.minestom.server.ping.ResponseDataConsumer;
|
import net.minestom.server.ping.ResponseDataConsumer;
|
||||||
@ -16,7 +15,7 @@ import java.util.Objects;
|
|||||||
* Called when a {@link PlayerConnection} sends a status packet,
|
* Called when a {@link PlayerConnection} sends a status packet,
|
||||||
* usually to display information on the server list.
|
* usually to display information on the server list.
|
||||||
*/
|
*/
|
||||||
public class ServerListPingEvent extends Event implements CancellableEvent {
|
public class ServerListPingEvent implements CancellableEvent {
|
||||||
private final PlayerConnection connection;
|
private final PlayerConnection connection;
|
||||||
private final ServerListPingType type;
|
private final ServerListPingType type;
|
||||||
|
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
package net.minestom.server.event.trait;
|
package net.minestom.server.event.trait;
|
||||||
|
|
||||||
public interface EventTrait {
|
import net.minestom.server.event.Event;
|
||||||
|
|
||||||
|
public interface EventTrait extends Event {
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
package net.minestom.server.extras.query.event;
|
package net.minestom.server.extras.query.event;
|
||||||
|
|
||||||
import net.minestom.server.event.CancellableEvent;
|
import net.minestom.server.event.CancellableEvent;
|
||||||
import net.minestom.server.event.Event;
|
|
||||||
import net.minestom.server.utils.binary.Writeable;
|
import net.minestom.server.utils.binary.Writeable;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
@ -13,7 +12,7 @@ import java.util.Objects;
|
|||||||
*
|
*
|
||||||
* @param <T> the type of the response
|
* @param <T> the type of the response
|
||||||
*/
|
*/
|
||||||
public abstract class QueryEvent<T extends Writeable> extends Event implements CancellableEvent {
|
public abstract class QueryEvent<T extends Writeable> implements CancellableEvent {
|
||||||
private final SocketAddress sender;
|
private final SocketAddress sender;
|
||||||
private final int sessionID;
|
private final int sessionID;
|
||||||
|
|
||||||
|
@ -11,11 +11,14 @@ import net.minestom.server.entity.GameMode;
|
|||||||
import net.minestom.server.entity.ItemEntity;
|
import net.minestom.server.entity.ItemEntity;
|
||||||
import net.minestom.server.entity.Player;
|
import net.minestom.server.entity.Player;
|
||||||
import net.minestom.server.entity.damage.DamageType;
|
import net.minestom.server.entity.damage.DamageType;
|
||||||
|
import net.minestom.server.event.EventListener;
|
||||||
|
import net.minestom.server.event.EventNode;
|
||||||
import net.minestom.server.event.GlobalEventHandler;
|
import net.minestom.server.event.GlobalEventHandler;
|
||||||
import net.minestom.server.event.entity.EntityAttackEvent;
|
import net.minestom.server.event.entity.EntityAttackEvent;
|
||||||
import net.minestom.server.event.item.ItemDropEvent;
|
import net.minestom.server.event.item.ItemDropEvent;
|
||||||
import net.minestom.server.event.item.PickupItemEvent;
|
import net.minestom.server.event.item.PickupItemEvent;
|
||||||
import net.minestom.server.event.player.*;
|
import net.minestom.server.event.player.*;
|
||||||
|
import net.minestom.server.event.trait.PlayerEvent;
|
||||||
import net.minestom.server.instance.Chunk;
|
import net.minestom.server.instance.Chunk;
|
||||||
import net.minestom.server.instance.Instance;
|
import net.minestom.server.instance.Instance;
|
||||||
import net.minestom.server.instance.InstanceContainer;
|
import net.minestom.server.instance.InstanceContainer;
|
||||||
@ -134,6 +137,11 @@ public class PlayerInit {
|
|||||||
|
|
||||||
// EVENT REGISTERING
|
// EVENT REGISTERING
|
||||||
|
|
||||||
|
var node = EventNode.create(PlayerEvent.class);
|
||||||
|
node.addListener(EventListener.of(PlayerTickEvent.class)
|
||||||
|
.handler(playerTickEvent -> System.out.println("Player tick!"))
|
||||||
|
.build());
|
||||||
|
|
||||||
GlobalEventHandler globalEventHandler = MinecraftServer.getGlobalEventHandler();
|
GlobalEventHandler globalEventHandler = MinecraftServer.getGlobalEventHandler();
|
||||||
globalEventHandler.addEventCallback(EntityAttackEvent.class, event -> {
|
globalEventHandler.addEventCallback(EntityAttackEvent.class, event -> {
|
||||||
final Entity source = event.getEntity();
|
final Entity source = event.getEntity();
|
||||||
|
Loading…
Reference in New Issue
Block a user