diff --git a/src/main/java/de/bixilon/minosoft/gui/rendering/modding/events/WindowCloseEvent.kt b/src/main/java/de/bixilon/minosoft/gui/rendering/modding/events/WindowCloseEvent.kt index 58b826fcc..b59f0955d 100644 --- a/src/main/java/de/bixilon/minosoft/gui/rendering/modding/events/WindowCloseEvent.kt +++ b/src/main/java/de/bixilon/minosoft/gui/rendering/modding/events/WindowCloseEvent.kt @@ -16,8 +16,9 @@ package de.bixilon.minosoft.gui.rendering.modding.events import de.bixilon.minosoft.gui.rendering.RenderWindow import de.bixilon.minosoft.gui.rendering.Rendering import de.bixilon.minosoft.gui.rendering.system.window.BaseWindow +import de.bixilon.minosoft.modding.event.events.CancelableEvent class WindowCloseEvent( renderWindow: RenderWindow = Rendering.currentContext!!, val window: BaseWindow, -) : RenderEvent(renderWindow) +) : RenderEvent(renderWindow), CancelableEvent diff --git a/src/main/java/de/bixilon/minosoft/modding/event/EventInvokerMethod.kt b/src/main/java/de/bixilon/minosoft/modding/event/EventInvokerMethod.kt index 157ee5e6d..5f22ee08c 100644 --- a/src/main/java/de/bixilon/minosoft/modding/event/EventInvokerMethod.kt +++ b/src/main/java/de/bixilon/minosoft/modding/event/EventInvokerMethod.kt @@ -32,7 +32,7 @@ class EventInvokerMethod( if (!method.parameters[0].type.isAssignableFrom(event.javaClass)) { return } - if (!this.isIgnoreCancelled && event is CancelableEvent && event.isCancelled) { + if (!this.isIgnoreCancelled && event is CancelableEvent && event.cancelled) { return } method(listener, event) diff --git a/src/main/java/de/bixilon/minosoft/modding/event/events/BlockBreakAnimationEvent.java b/src/main/java/de/bixilon/minosoft/modding/event/events/BlockBreakAnimationEvent.java deleted file mode 100644 index f6532e54b..000000000 --- a/src/main/java/de/bixilon/minosoft/modding/event/events/BlockBreakAnimationEvent.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Minosoft - * Copyright (C) 2020 Moritz Zwerger - * - * This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with this program. If not, see . - * - * This software is not affiliated with Mojang AB, the original developer of Minecraft. - */ - -package de.bixilon.minosoft.modding.event.events; - -import de.bixilon.minosoft.protocol.network.connection.PlayConnection; -import de.bixilon.minosoft.protocol.packets.s2c.play.BlockBreakAnimationS2CP; -import glm_.vec3.Vec3i; - -public class BlockBreakAnimationEvent extends CancelableEvent { - private final int entityId; - private final Vec3i position; - private final int stage; - - public BlockBreakAnimationEvent(PlayConnection connection, int entityId, Vec3i position, int stage) { - super(connection); - this.entityId = entityId; - this.position = position; - this.stage = stage; - } - - public BlockBreakAnimationEvent(PlayConnection connection, BlockBreakAnimationS2CP pkg) { - super(connection); - this.entityId = pkg.getAnimationId(); - this.position = pkg.getBlockPosition(); - this.stage = pkg.getStage(); - } - - public int getEntityId() { - return this.entityId; - } - - public Vec3i getPosition() { - return this.position; - } - - public int getStage() { - return this.stage; - } -} diff --git a/src/main/java/de/bixilon/minosoft/modding/event/events/BlockBreakAnimationEvent.kt b/src/main/java/de/bixilon/minosoft/modding/event/events/BlockBreakAnimationEvent.kt new file mode 100644 index 000000000..ae615c815 --- /dev/null +++ b/src/main/java/de/bixilon/minosoft/modding/event/events/BlockBreakAnimationEvent.kt @@ -0,0 +1,29 @@ +/* + * Minosoft + * Copyright (C) 2020 Moritz Zwerger + * + * This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along with this program. If not, see . + * + * This software is not affiliated with Mojang AB, the original developer of Minecraft. + */ +package de.bixilon.minosoft.modding.event.events + +import de.bixilon.minosoft.modding.event.EventInitiators +import de.bixilon.minosoft.protocol.network.connection.PlayConnection +import de.bixilon.minosoft.protocol.packets.s2c.play.BlockBreakAnimationS2CP +import glm_.vec3.Vec3i + +class BlockBreakAnimationEvent( + connection: PlayConnection, + initiator: EventInitiators, + val animationId: Int, + val blockPosition: Vec3i, + val stage: Int, +) : PlayConnectionEvent(connection, initiator), CancelableEvent { + + constructor(connection: PlayConnection, packet: BlockBreakAnimationS2CP) : this(connection, EventInitiators.SERVER, packet.animationId, packet.blockPosition, packet.stage) +} diff --git a/src/main/java/de/bixilon/minosoft/modding/event/events/CancelableEvent.kt b/src/main/java/de/bixilon/minosoft/modding/event/events/CancelableEvent.kt index 30cc340bb..b7cd3c75c 100644 --- a/src/main/java/de/bixilon/minosoft/modding/event/events/CancelableEvent.kt +++ b/src/main/java/de/bixilon/minosoft/modding/event/events/CancelableEvent.kt @@ -12,12 +12,20 @@ */ package de.bixilon.minosoft.modding.event.events -import de.bixilon.minosoft.modding.event.EventInitiators -import de.bixilon.minosoft.protocol.network.connection.PlayConnection +import de.bixilon.minosoft.util.KUtil.synchronizedSetOf -abstract class CancelableEvent @JvmOverloads constructor( - connection: PlayConnection, - initiator: EventInitiators = EventInitiators.DEFAULT, -) : PlayConnectionEvent(connection, initiator) { - var isCancelled = false +interface CancelableEvent { + var cancelled: Boolean + get() = CANCELLED_EVENTS.contains(this) + set(value) { + if (value) { + CANCELLED_EVENTS -= this + } else { + CANCELLED_EVENTS += this + } + } + + private companion object { + val CANCELLED_EVENTS: MutableSet = synchronizedSetOf() + } } diff --git a/src/main/java/de/bixilon/minosoft/modding/event/events/ChatMessageReceiveEvent.kt b/src/main/java/de/bixilon/minosoft/modding/event/events/ChatMessageReceiveEvent.kt index 330a4132a..1854d9a9d 100644 --- a/src/main/java/de/bixilon/minosoft/modding/event/events/ChatMessageReceiveEvent.kt +++ b/src/main/java/de/bixilon/minosoft/modding/event/events/ChatMessageReceiveEvent.kt @@ -25,7 +25,7 @@ class ChatMessageReceiveEvent( val message: ChatComponent, val position: ChatTextPositions, val sender: UUID?, -) : CancelableEvent(connection, initiator) { +) : PlayConnectionEvent(connection, initiator), CancelableEvent { constructor(connection: PlayConnection, packet: ChatMessageS2CP) : this(connection, EventInitiators.SERVER, packet.message, packet.position, packet.sender) diff --git a/src/main/java/de/bixilon/minosoft/modding/event/events/ChatMessageSendEvent.kt b/src/main/java/de/bixilon/minosoft/modding/event/events/ChatMessageSendEvent.kt index 39016dd19..068442f47 100644 --- a/src/main/java/de/bixilon/minosoft/modding/event/events/ChatMessageSendEvent.kt +++ b/src/main/java/de/bixilon/minosoft/modding/event/events/ChatMessageSendEvent.kt @@ -15,4 +15,4 @@ package de.bixilon.minosoft.modding.event.events import de.bixilon.minosoft.modding.event.EventInitiators import de.bixilon.minosoft.protocol.network.connection.PlayConnection -class ChatMessageSendEvent(connection: PlayConnection, val message: String) : CancelableEvent(connection, EventInitiators.CLIENT) +class ChatMessageSendEvent(connection: PlayConnection, val message: String) : PlayConnectionEvent(connection, EventInitiators.CLIENT), CancelableEvent diff --git a/src/main/java/de/bixilon/minosoft/modding/event/events/CollectItemAnimationEvent.kt b/src/main/java/de/bixilon/minosoft/modding/event/events/CollectItemAnimationEvent.kt index a97d8c0f9..bcd3a2d05 100644 --- a/src/main/java/de/bixilon/minosoft/modding/event/events/CollectItemAnimationEvent.kt +++ b/src/main/java/de/bixilon/minosoft/modding/event/events/CollectItemAnimationEvent.kt @@ -25,7 +25,7 @@ class CollectItemAnimationEvent( val collectedEntity: Entity, val collector: LivingEntity, val count: Int, -) : CancelableEvent(connection, initiator) { +) : PlayConnectionEvent(connection, initiator), CancelableEvent { constructor(connection: PlayConnection, packet: ItemCollectAnimationS2CP) : this(connection, EventInitiators.SERVER, connection.world.entities[packet.itemEntityId]!!.unsafeCast(), connection.world.entities[packet.collectorEntityId]!!.unsafeCast(), packet.count) } diff --git a/src/main/java/de/bixilon/minosoft/modding/event/events/ContainerCloseEvent.kt b/src/main/java/de/bixilon/minosoft/modding/event/events/ContainerCloseEvent.kt index de87c62ee..8d2614734 100644 --- a/src/main/java/de/bixilon/minosoft/modding/event/events/ContainerCloseEvent.kt +++ b/src/main/java/de/bixilon/minosoft/modding/event/events/ContainerCloseEvent.kt @@ -24,7 +24,7 @@ class ContainerCloseEvent( connection: PlayConnection, initiator: EventInitiators, val containerId: Int, -) : CancelableEvent(connection, initiator) { +) : PlayConnectionEvent(connection, initiator), CancelableEvent { constructor(connection: PlayConnection, packet: ContainerCloseS2CP) : this(connection, EventInitiators.SERVER, packet.containerId) diff --git a/src/main/java/de/bixilon/minosoft/modding/event/events/ExperienceChangeEvent.kt b/src/main/java/de/bixilon/minosoft/modding/event/events/ExperienceChangeEvent.kt index bb0dbea29..f49b435e7 100644 --- a/src/main/java/de/bixilon/minosoft/modding/event/events/ExperienceChangeEvent.kt +++ b/src/main/java/de/bixilon/minosoft/modding/event/events/ExperienceChangeEvent.kt @@ -22,7 +22,7 @@ class ExperienceChangeEvent( val bar: Float, val level: Int, val total: Int, -) : CancelableEvent(connection, initiator) { +) : PlayConnectionEvent(connection, initiator), CancelableEvent { constructor(connection: PlayConnection, packet: ExperienceSetS2CP) : this(connection, EventInitiators.SERVER, packet.bar, packet.level, packet.total) } diff --git a/src/main/java/de/bixilon/minosoft/modding/event/events/JoinGameEvent.java b/src/main/java/de/bixilon/minosoft/modding/event/events/JoinGameEvent.java deleted file mode 100644 index 185fc9516..000000000 --- a/src/main/java/de/bixilon/minosoft/modding/event/events/JoinGameEvent.java +++ /dev/null @@ -1,110 +0,0 @@ -/* - * Minosoft - * Copyright (C) 2020 Moritz Zwerger - * - * This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with this program. If not, see . - * - * This software is not affiliated with Mojang AB, the original developer of Minecraft. - */ - -package de.bixilon.minosoft.modding.event.events; - -import com.google.common.collect.HashBiMap; -import de.bixilon.minosoft.data.Difficulties; -import de.bixilon.minosoft.data.abilities.Gamemodes; -import de.bixilon.minosoft.data.registries.Dimension; -import de.bixilon.minosoft.data.registries.ResourceLocation; -import de.bixilon.minosoft.protocol.network.connection.PlayConnection; -import de.bixilon.minosoft.protocol.packets.s2c.play.JoinGameS2CP; - -public class JoinGameEvent extends CancelableEvent { - private final int entityId; - private final boolean hardcore; - private final Gamemodes gamemode; - private final Dimension dimension; - private final Difficulties difficulty; - private final int viewDistance; - private final int maxPlayers; - private final boolean reducedDebugScreen; - private final boolean enableRespawnScreen; - private final long hashedSeed; - private final HashBiMap dimensions; - - public JoinGameEvent(PlayConnection connection, int entityId, boolean hardcore, Gamemodes gamemode, Dimension dimension, Difficulties difficulty, int viewDistance, int maxPlayers, boolean reducedDebugScreen, boolean enableRespawnScreen, long hashedSeed, HashBiMap dimensions) { - super(connection); - this.entityId = entityId; - this.hardcore = hardcore; - this.gamemode = gamemode; - this.dimension = dimension; - this.difficulty = difficulty; - this.viewDistance = viewDistance; - this.maxPlayers = maxPlayers; - this.reducedDebugScreen = reducedDebugScreen; - this.enableRespawnScreen = enableRespawnScreen; - this.hashedSeed = hashedSeed; - this.dimensions = dimensions; - } - - public JoinGameEvent(PlayConnection connection, JoinGameS2CP pkg) { - super(connection); - this.entityId = pkg.getEntityId(); - this.hardcore = pkg.isHardcore(); - this.gamemode = pkg.getGamemode(); - this.dimension = pkg.getDimension(); - this.difficulty = pkg.getDifficulty(); - this.viewDistance = pkg.getViewDistance(); - this.maxPlayers = pkg.getMaxPlayers(); - this.reducedDebugScreen = pkg.isReducedDebugScreen(); - this.enableRespawnScreen = pkg.isEnableRespawnScreen(); - this.hashedSeed = pkg.getHashedSeed(); - this.dimensions = pkg.getDimensions(); - } - - public int getEntityId() { - return this.entityId; - } - - public boolean isHardcore() { - return this.hardcore; - } - - public Gamemodes getGamemode() { - return this.gamemode; - } - - public Dimension getDimension() { - return this.dimension; - } - - public Difficulties getDifficulty() { - return this.difficulty; - } - - public int getViewDistance() { - return this.viewDistance; - } - - public int getMaxPlayers() { - return this.maxPlayers; - } - - public boolean isReducedDebugScreen() { - return this.reducedDebugScreen; - } - - public boolean isEnableRespawnScreen() { - return this.enableRespawnScreen; - } - - public long getHashedSeed() { - return this.hashedSeed; - } - - public HashBiMap getDimensions() { - return this.dimensions; - } -} diff --git a/src/main/java/de/bixilon/minosoft/modding/event/events/OpenSignEditorEvent.kt b/src/main/java/de/bixilon/minosoft/modding/event/events/OpenSignEditorEvent.kt index da544ee23..eb0040b54 100644 --- a/src/main/java/de/bixilon/minosoft/modding/event/events/OpenSignEditorEvent.kt +++ b/src/main/java/de/bixilon/minosoft/modding/event/events/OpenSignEditorEvent.kt @@ -21,7 +21,7 @@ class OpenSignEditorEvent( connection: PlayConnection, initiator: EventInitiators, val blockPosition: Vec3i, -) : CancelableEvent(connection, initiator) { +) : PlayConnectionEvent(connection, initiator), CancelableEvent { constructor(connection: PlayConnection, packet: SignEditorOpenS2CP) : this(connection, EventInitiators.SERVER, packet.blockPosition) } diff --git a/src/main/java/de/bixilon/minosoft/modding/event/events/ParticleSpawnEvent.kt b/src/main/java/de/bixilon/minosoft/modding/event/events/ParticleSpawnEvent.kt index 63c9f70de..be8ff928f 100644 --- a/src/main/java/de/bixilon/minosoft/modding/event/events/ParticleSpawnEvent.kt +++ b/src/main/java/de/bixilon/minosoft/modding/event/events/ParticleSpawnEvent.kt @@ -27,7 +27,7 @@ class ParticleSpawnEvent( val speed: Float, val count: Int, val data: ParticleData, -) : CancelableEvent(connection, initiator) { +) : PlayConnectionEvent(connection, initiator), CancelableEvent { val position: Vec3d = position get() = Vec3d(field) val offset: Vec3 = offset diff --git a/src/main/java/de/bixilon/minosoft/modding/event/events/PlaySoundEvent.kt b/src/main/java/de/bixilon/minosoft/modding/event/events/PlaySoundEvent.kt index 514ae2e29..442a29b2b 100644 --- a/src/main/java/de/bixilon/minosoft/modding/event/events/PlaySoundEvent.kt +++ b/src/main/java/de/bixilon/minosoft/modding/event/events/PlaySoundEvent.kt @@ -29,7 +29,7 @@ class PlaySoundEvent( val soundEvent: SoundEvent, val volume: Float, val pitch: Float, -) : CancelableEvent(connection, initiator) { +) : PlayConnectionEvent(connection, initiator), CancelableEvent { val position: Vec3 = position get() = Vec3(field) diff --git a/src/main/java/de/bixilon/minosoft/modding/event/events/PlayerListInfoChangeEvent.kt b/src/main/java/de/bixilon/minosoft/modding/event/events/PlayerListInfoChangeEvent.kt index d37f7988a..1f05ff569 100644 --- a/src/main/java/de/bixilon/minosoft/modding/event/events/PlayerListInfoChangeEvent.kt +++ b/src/main/java/de/bixilon/minosoft/modding/event/events/PlayerListInfoChangeEvent.kt @@ -22,7 +22,7 @@ class PlayerListInfoChangeEvent( initiator: EventInitiators, val header: ChatComponent, val footer: ChatComponent, -) : CancelableEvent(connection, initiator) { +) : PlayConnectionEvent(connection, initiator), CancelableEvent { constructor(connection: PlayConnection, packet: TabListTextSetS2CP) : this(connection, EventInitiators.SERVER, packet.header, packet.footer) } diff --git a/src/main/java/de/bixilon/minosoft/modding/event/events/PlayerListItemChangeEvent.java b/src/main/java/de/bixilon/minosoft/modding/event/events/PlayerListItemChangeEvent.kt similarity index 56% rename from src/main/java/de/bixilon/minosoft/modding/event/events/PlayerListItemChangeEvent.java rename to src/main/java/de/bixilon/minosoft/modding/event/events/PlayerListItemChangeEvent.kt index 137f2103d..39f9396ae 100644 --- a/src/main/java/de/bixilon/minosoft/modding/event/events/PlayerListItemChangeEvent.java +++ b/src/main/java/de/bixilon/minosoft/modding/event/events/PlayerListItemChangeEvent.kt @@ -10,30 +10,19 @@ * * This software is not affiliated with Mojang AB, the original developer of Minecraft. */ +package de.bixilon.minosoft.modding.event.events -package de.bixilon.minosoft.modding.event.events; +import de.bixilon.minosoft.data.player.tab.TabListItemData +import de.bixilon.minosoft.modding.event.EventInitiators +import de.bixilon.minosoft.protocol.network.connection.PlayConnection +import de.bixilon.minosoft.protocol.packets.s2c.play.TabListDataS2CP +import java.util.* -import de.bixilon.minosoft.data.player.tab.TabListItemData; -import de.bixilon.minosoft.protocol.network.connection.PlayConnection; -import de.bixilon.minosoft.protocol.packets.s2c.play.TabListDataS2CP; +class PlayerListItemChangeEvent( + connection: PlayConnection, + initiator: EventInitiators, + val items: Map, +) : PlayConnectionEvent(connection, initiator), CancelableEvent { -import java.util.Map; -import java.util.UUID; - -public class PlayerListItemChangeEvent extends CancelableEvent { - private final Map items; - - public PlayerListItemChangeEvent(PlayConnection connection, Map items) { - super(connection); - this.items = items; - } - - public PlayerListItemChangeEvent(PlayConnection connection, TabListDataS2CP pkg) { - super(connection); - this.items = pkg.getItems(); - } - - public Map getItems() { - return this.items; - } + constructor(connection: PlayConnection, packet: TabListDataS2CP) : this(connection, EventInitiators.SERVER, packet.items) } diff --git a/src/main/java/de/bixilon/minosoft/modding/event/events/PluginMessageReceiveEvent.kt b/src/main/java/de/bixilon/minosoft/modding/event/events/PluginMessageReceiveEvent.kt index 0baceb5aa..19512c6a7 100644 --- a/src/main/java/de/bixilon/minosoft/modding/event/events/PluginMessageReceiveEvent.kt +++ b/src/main/java/de/bixilon/minosoft/modding/event/events/PluginMessageReceiveEvent.kt @@ -20,10 +20,10 @@ import de.bixilon.minosoft.protocol.protocol.PlayInByteBuffer class PluginMessageReceiveEvent( connection: PlayConnection, - initiators: EventInitiators, + initiator: EventInitiators, val channel: ResourceLocation, data: PlayInByteBuffer, -) : CancelableEvent(connection, initiators) { +) : PlayConnectionEvent(connection, initiator), CancelableEvent { val data: PlayInByteBuffer = data get() = PlayInByteBuffer(field) diff --git a/src/main/java/de/bixilon/minosoft/modding/event/events/ResourcePackRequestEvent.kt b/src/main/java/de/bixilon/minosoft/modding/event/events/ResourcePackRequestEvent.kt index 440cb1275..7355627a3 100644 --- a/src/main/java/de/bixilon/minosoft/modding/event/events/ResourcePackRequestEvent.kt +++ b/src/main/java/de/bixilon/minosoft/modding/event/events/ResourcePackRequestEvent.kt @@ -23,7 +23,7 @@ class ResourcePackRequestEvent( val url: String, val hash: String, val promptText: ChatComponent?, -) : CancelableEvent(connection, initiator) { +) : PlayConnectionEvent(connection, initiator), CancelableEvent { constructor(connection: PlayConnection, packet: ResourcepackRequestS2CP) : this(connection, EventInitiators.SERVER, packet.url, packet.hash, packet.promptText) diff --git a/src/main/java/de/bixilon/minosoft/modding/event/events/TimeChangeEvent.kt b/src/main/java/de/bixilon/minosoft/modding/event/events/TimeChangeEvent.kt index 80cbb28db..44ee68e00 100644 --- a/src/main/java/de/bixilon/minosoft/modding/event/events/TimeChangeEvent.kt +++ b/src/main/java/de/bixilon/minosoft/modding/event/events/TimeChangeEvent.kt @@ -21,7 +21,7 @@ class TimeChangeEvent( initiator: EventInitiators, val age: Long, val time: Long, -) : CancelableEvent(connection, initiator) { +) : PlayConnectionEvent(connection, initiator), CancelableEvent { constructor(connection: PlayConnection, packet: WorldTimeSetS2CP) : this(connection, EventInitiators.SERVER, packet.age, packet.time) diff --git a/src/main/java/de/bixilon/minosoft/protocol/network/connection/Connection.kt b/src/main/java/de/bixilon/minosoft/protocol/network/connection/Connection.kt index 14c2b07d4..f5b8edc46 100644 --- a/src/main/java/de/bixilon/minosoft/protocol/network/connection/Connection.kt +++ b/src/main/java/de/bixilon/minosoft/protocol/network/connection/Connection.kt @@ -65,7 +65,9 @@ abstract class Connection : EventMaster { eventInvoker(event) } if (event is CancelableEvent) { - return event.isCancelled + val cancelled = event.cancelled + event.cancelled = false // Cleanup memory + return cancelled } return false } diff --git a/src/main/java/de/bixilon/minosoft/protocol/packets/s2c/play/JoinGameS2CP.kt b/src/main/java/de/bixilon/minosoft/protocol/packets/s2c/play/JoinGameS2CP.kt index 9909a9952..942d3b682 100644 --- a/src/main/java/de/bixilon/minosoft/protocol/packets/s2c/play/JoinGameS2CP.kt +++ b/src/main/java/de/bixilon/minosoft/protocol/packets/s2c/play/JoinGameS2CP.kt @@ -21,7 +21,6 @@ import de.bixilon.minosoft.data.registries.ResourceLocation import de.bixilon.minosoft.data.world.biome.accessor.BlockBiomeAccessor import de.bixilon.minosoft.data.world.biome.accessor.NoiseBiomeAccessor import de.bixilon.minosoft.modding.channels.DefaultPluginChannels -import de.bixilon.minosoft.modding.event.events.JoinGameEvent import de.bixilon.minosoft.protocol.ErrorHandler import de.bixilon.minosoft.protocol.network.connection.Connection import de.bixilon.minosoft.protocol.network.connection.PlayConnection @@ -140,9 +139,6 @@ class JoinGameS2CP(buffer: PlayInByteBuffer) : PlayS2CPacket() { } override fun handle(connection: PlayConnection) { - if (connection.fireEvent(JoinGameEvent(connection, this))) { - return - } val playerEntity = connection.player playerEntity.tabListItem.gamemode = gamemode