From 504dcad849c600d324b32a10cbd24e9676859f3f Mon Sep 17 00:00:00 2001 From: Paint_Ninja Date: Sat, 19 Apr 2025 13:18:48 +0100 Subject: [PATCH] Seal most event hierarchies (#10515) Most events in Forge are not designed to be extended by mod devs but technically allowed it before this PR, leading to a risk of unintentional breaking changes for those that do. If you need to extend a Forge event, please let us know so that we can explicitly support that and design it with extending in mind. Note that this change does not affect making your own events that directly extend from EventBus' `Event` class. --- .../client/event/ClientChatEvent.java | 2 +- .../client/event/ClientChatReceivedEvent.java | 6 +- .../client/event/ClientPauseChangeEvent.java | 6 +- .../ClientPlayerChangeGameTypeEvent.java | 2 +- .../event/ClientPlayerNetworkEvent.java | 8 +-- .../client/event/ComputeFovModifierEvent.java | 2 +- .../client/event/ContainerScreenEvent.java | 8 +-- .../CreateSpecialBlockRendererEvent.java | 2 +- .../event/CustomizeGuiOverlayEvent.java | 8 +-- .../client/event/EntityRenderersEvent.java | 10 +-- .../client/event/InputEvent.java | 14 ++-- .../client/event/ModelEvent.java | 10 +-- .../event/MovementInputUpdateEvent.java | 2 +- .../client/event/RecipesUpdatedEvent.java | 2 +- .../event/RegisterClientCommandsEvent.java | 2 +- .../RegisterClientReloadListenersEvent.java | 2 +- ...rClientTooltipComponentFactoriesEvent.java | 2 +- .../event/RegisterColorHandlersEvent.java | 6 +- .../RegisterDimensionSpecialEffectsEvent.java | 2 +- .../RegisterEntitySpectatorShadersEvent.java | 2 +- .../event/RegisterItemDecorationsEvent.java | 2 +- .../event/RegisterKeyMappingsEvent.java | 2 +- .../event/RegisterNamedRenderTypesEvent.java | 2 +- .../event/RegisterParticleProvidersEvent.java | 2 +- .../event/RegisterPresetEditorsEvent.java | 2 +- ...egisterTextureAtlasSpriteLoadersEvent.java | 2 +- .../client/event/RenderArmEvent.java | 2 +- .../event/RenderBlockScreenEffectEvent.java | 2 +- .../client/event/RenderHandEvent.java | 2 +- .../client/event/RenderHighlightEvent.java | 6 +- .../client/event/RenderItemInFrameEvent.java | 2 +- .../client/event/RenderLivingEvent.java | 6 +- .../client/event/RenderNameTagEvent.java | 2 +- .../client/event/RenderPlayerEvent.java | 6 +- .../client/event/RenderTooltipEvent.java | 8 +-- .../client/event/ScreenEvent.java | 68 +++++++++---------- .../client/event/ScreenshotEvent.java | 2 +- .../event/SystemMessageReceivedEvent.java | 2 +- .../client/event/TextureStitchEvent.java | 4 +- .../client/event/ToastAddEvent.java | 2 +- .../client/event/ViewportEvent.java | 10 +-- .../client/event/sound/PlaySoundEvent.java | 2 +- .../event/sound/PlaySoundSourceEvent.java | 2 +- .../event/sound/PlayStreamingSourceEvent.java | 2 +- .../event/sound/SoundEngineLoadEvent.java | 2 +- .../data/event/GatherDataEvent.java | 4 +- .../event/AddPackFindersEvent.java | 2 +- .../event/AddReloadListenerEvent.java | 2 +- .../event/AnvilUpdateEvent.java | 2 +- .../minecraftforge/event/CommandEvent.java | 2 +- .../event/DifficultyChangeEvent.java | 2 +- .../event/GameShuttingDownEvent.java | 2 +- .../event/GatherComponentsEvent.java | 4 +- .../minecraftforge/event/GrindstoneEvent.java | 6 +- .../event/ItemStackedOnOtherEvent.java | 2 +- .../event/LootTableLoadEvent.java | 2 +- .../event/ModMismatchEvent.java | 2 +- .../event/OnDatapackSyncEvent.java | 2 +- .../event/PlayLevelSoundEvent.java | 6 +- .../event/RegisterCommandsEvent.java | 2 +- .../RegisterStructureConversionsEvent.java | 2 +- .../minecraftforge/event/ServerChatEvent.java | 2 +- .../event/TagsUpdatedEvent.java | 2 +- .../net/minecraftforge/event/TickEvent.java | 36 +++++----- .../event/VanillaGameEvent.java | 2 +- .../brewing/BrewingRecipeRegisterEvent.java | 2 +- .../brewing/PlayerBrewedPotionEvent.java | 2 +- .../event/brewing/PotionBrewEvent.java | 8 +-- .../enchanting/EnchantmentLevelSetEvent.java | 2 +- .../entity/EntityAttributeCreationEvent.java | 2 +- .../EntityAttributeModificationEvent.java | 2 +- .../event/entity/EntityEvent.java | 4 +- .../event/entity/EntityJoinLevelEvent.java | 2 +- .../event/entity/EntityLeaveLevelEvent.java | 2 +- .../event/entity/EntityMobGriefingEvent.java | 2 +- .../event/entity/EntityMountEvent.java | 2 +- .../entity/EntityStruckByLightningEvent.java | 2 +- .../event/entity/EntityTeleportEvent.java | 12 ++-- .../entity/EntityTravelToDimensionEvent.java | 2 +- .../event/entity/ProjectileImpactEvent.java | 2 +- .../entity/SpawnPlacementRegisterEvent.java | 2 +- .../event/entity/item/ItemExpireEvent.java | 2 +- .../event/entity/item/ItemTossEvent.java | 2 +- .../event/entity/living/AnimalTameEvent.java | 2 +- .../entity/living/BabyEntitySpawnEvent.java | 2 +- .../entity/living/LivingAttackEvent.java | 2 +- .../entity/living/LivingBreatheEvent.java | 2 +- .../living/LivingChangeTargetEvent.java | 2 +- .../entity/living/LivingConversionEvent.java | 6 +- .../entity/living/LivingDamageEvent.java | 2 +- .../event/entity/living/LivingDeathEvent.java | 2 +- .../living/LivingDestroyBlockEvent.java | 2 +- .../event/entity/living/LivingDropsEvent.java | 2 +- .../event/entity/living/LivingDrownEvent.java | 2 +- .../living/LivingEntityUseItemEvent.java | 10 +-- .../living/LivingEquipmentChangeEvent.java | 2 +- .../event/entity/living/LivingEvent.java | 6 +- .../living/LivingExperienceDropEvent.java | 2 +- .../event/entity/living/LivingFallEvent.java | 2 +- .../living/LivingGetProjectileEvent.java | 2 +- .../event/entity/living/LivingHealEvent.java | 2 +- .../event/entity/living/LivingHurtEvent.java | 2 +- .../entity/living/LivingMakeBrainEvent.java | 2 +- .../entity/living/LivingPackSizeEvent.java | 2 +- .../entity/living/LivingSwapItemsEvent.java | 4 +- .../entity/living/LivingUseTotemEvent.java | 2 +- .../entity/living/LootingLevelEvent.java | 2 +- .../event/entity/living/MobEffectEvent.java | 10 +-- .../event/entity/living/MobSpawnEvent.java | 10 +-- .../entity/living/MonsterDisguiseEvent.java | 2 +- .../event/entity/living/ShieldBlockEvent.java | 2 +- .../event/entity/living/ZombieEvent.java | 4 +- .../event/entity/player/AdvancementEvent.java | 6 +- .../event/entity/player/AnvilRepairEvent.java | 2 +- .../event/entity/player/ArrowLooseEvent.java | 2 +- .../event/entity/player/ArrowNockEvent.java | 2 +- .../entity/player/AttackEntityEvent.java | 2 +- .../event/entity/player/BonemealEvent.java | 2 +- .../event/entity/player/CriticalHitEvent.java | 2 +- .../entity/player/EntityItemPickupEvent.java | 2 +- .../event/entity/player/FillBucketEvent.java | 2 +- .../event/entity/player/ItemFishedEvent.java | 2 +- .../event/entity/player/ItemTooltipEvent.java | 2 +- .../player/PermissionsChangedEvent.java | 2 +- .../entity/player/PlayerContainerEvent.java | 6 +- .../entity/player/PlayerDestroyItemEvent.java | 2 +- .../event/entity/player/PlayerEvent.java | 34 +++++----- .../entity/player/PlayerFlyableFallEvent.java | 2 +- .../entity/player/PlayerInteractEvent.java | 18 ++--- .../entity/player/PlayerSetSpawnEvent.java | 2 +- .../entity/player/PlayerSleepInBedEvent.java | 2 +- .../player/PlayerSpawnPhantomsEvent.java | 2 +- .../entity/player/PlayerWakeUpEvent.java | 2 +- .../event/entity/player/PlayerXpEvent.java | 8 +-- .../player/SleepingLocationCheckEvent.java | 2 +- .../entity/player/SleepingTimeCheckEvent.java | 2 +- .../entity/player/TradeWithVillagerEvent.java | 2 +- .../furnace/FurnaceFuelBurnTimeEvent.java | 2 +- .../event/level/AlterGroundEvent.java | 2 +- .../event/level/BlockEvent.java | 26 +++---- .../event/level/ChunkDataEvent.java | 8 +-- .../event/level/ChunkEvent.java | 4 +- .../level/ChunkTicketLevelUpdatedEvent.java | 2 +- .../event/level/ChunkWatchEvent.java | 6 +- .../event/level/ExplosionEvent.java | 6 +- .../event/level/LevelEvent.java | 10 +-- .../event/level/NoteBlockEvent.java | 10 +-- .../event/level/PistonEvent.java | 6 +- .../event/level/SaplingGrowTreeEvent.java | 2 +- .../event/level/SleepFinishedTimeEvent.java | 2 +- .../ChannelRegistrationChangeEvent.java | 4 +- .../event/network/ConnectionStartEvent.java | 2 +- .../GatherLoginConfigurationTasksEvent.java | 2 +- .../event/server/ServerAboutToStartEvent.java | 2 +- .../event/server/ServerLifecycleEvent.java | 4 +- .../event/server/ServerStartedEvent.java | 2 +- .../event/server/ServerStartingEvent.java | 2 +- .../event/server/ServerStoppedEvent.java | 2 +- .../event/server/ServerStoppingEvent.java | 2 +- .../event/village/VillageSiegeEvent.java | 2 +- .../event/village/WandererTradesEvent.java | 2 +- .../fml/event/config/ModConfigEvent.java | 8 +-- .../event/lifecycle/FMLClientSetupEvent.java | 2 +- .../event/lifecycle/FMLCommonSetupEvent.java | 2 +- .../event/lifecycle/FMLConstructModEvent.java | 2 +- .../FMLDedicatedServerSetupEvent.java | 2 +- .../event/lifecycle/FMLLoadCompleteEvent.java | 2 +- .../event/lifecycle/InterModEnqueueEvent.java | 2 +- .../event/lifecycle/InterModProcessEvent.java | 2 +- .../registries/DataPackRegistryEvent.java | 2 +- .../registries/IdMappingEvent.java | 4 +- .../registries/MissingMappingsEvent.java | 2 +- .../registries/NewRegistryEvent.java | 4 +- .../events/PermissionGatherEvent.java | 8 +-- 174 files changed, 371 insertions(+), 371 deletions(-) diff --git a/src/main/java/net/minecraftforge/client/event/ClientChatEvent.java b/src/main/java/net/minecraftforge/client/event/ClientChatEvent.java index 51fbdfe257..6d293bf5ac 100644 --- a/src/main/java/net/minecraftforge/client/event/ClientChatEvent.java +++ b/src/main/java/net/minecraftforge/client/event/ClientChatEvent.java @@ -22,7 +22,7 @@ import org.jetbrains.annotations.ApiStatus; * only on the {@linkplain LogicalSide#CLIENT logical client}.

**/ @Cancelable -public class ClientChatEvent extends Event +public final class ClientChatEvent extends Event { private String message; private final String originalMessage; diff --git a/src/main/java/net/minecraftforge/client/event/ClientChatReceivedEvent.java b/src/main/java/net/minecraftforge/client/event/ClientChatReceivedEvent.java index e0e6c0186b..545bd3c9f0 100644 --- a/src/main/java/net/minecraftforge/client/event/ClientChatReceivedEvent.java +++ b/src/main/java/net/minecraftforge/client/event/ClientChatReceivedEvent.java @@ -29,7 +29,7 @@ import java.util.UUID; * @see ChatType */ @Cancelable -public class ClientChatReceivedEvent extends Event { +public sealed class ClientChatReceivedEvent extends Event { private Component message; private final ChatType.Bound boundChatType; private final UUID sender; @@ -94,7 +94,7 @@ public class ClientChatReceivedEvent extends Event { * * @see ChatType */ - public static class Player extends ClientChatReceivedEvent { + public static final class Player extends ClientChatReceivedEvent { private final PlayerChatMessage playerChatMessage; @ApiStatus.Internal @@ -119,7 +119,7 @@ public class ClientChatReceivedEvent extends Event { * So moved to it's own event. {@link SystemMessageReceivedEvent} */ @Deprecated(forRemoval = true, since = "1.21.1") - public static class System extends ClientChatReceivedEvent { + public static final class System extends ClientChatReceivedEvent { private final boolean overlay; @ApiStatus.Internal diff --git a/src/main/java/net/minecraftforge/client/event/ClientPauseChangeEvent.java b/src/main/java/net/minecraftforge/client/event/ClientPauseChangeEvent.java index b2ba8e9b24..15e716be02 100644 --- a/src/main/java/net/minecraftforge/client/event/ClientPauseChangeEvent.java +++ b/src/main/java/net/minecraftforge/client/event/ClientPauseChangeEvent.java @@ -21,7 +21,7 @@ import net.minecraftforge.fml.LogicalSide; * @see ClientPauseChangeEvent.Pre * @see ClientPauseChangeEvent.Post */ -public abstract class ClientPauseChangeEvent extends Event { +public abstract sealed class ClientPauseChangeEvent extends Event { private final boolean pause; public ClientPauseChangeEvent(boolean pause) { @@ -38,7 +38,7 @@ public abstract class ClientPauseChangeEvent extends Event { * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class Pre extends ClientPauseChangeEvent { + public static final class Pre extends ClientPauseChangeEvent { public Pre(boolean pause) { super(pause); @@ -53,7 +53,7 @@ public abstract class ClientPauseChangeEvent extends Event { *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class Post extends ClientPauseChangeEvent { + public static final class Post extends ClientPauseChangeEvent { public Post(boolean pause) { super(pause); diff --git a/src/main/java/net/minecraftforge/client/event/ClientPlayerChangeGameTypeEvent.java b/src/main/java/net/minecraftforge/client/event/ClientPlayerChangeGameTypeEvent.java index 7c0e94b73c..8eed984bac 100644 --- a/src/main/java/net/minecraftforge/client/event/ClientPlayerChangeGameTypeEvent.java +++ b/src/main/java/net/minecraftforge/client/event/ClientPlayerChangeGameTypeEvent.java @@ -21,7 +21,7 @@ import org.jetbrains.annotations.ApiStatus; *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ -public class ClientPlayerChangeGameTypeEvent extends Event +public final class ClientPlayerChangeGameTypeEvent extends Event { private final PlayerInfo info; private final GameType currentGameType; diff --git a/src/main/java/net/minecraftforge/client/event/ClientPlayerNetworkEvent.java b/src/main/java/net/minecraftforge/client/event/ClientPlayerNetworkEvent.java index fb83376fde..326520d6c2 100644 --- a/src/main/java/net/minecraftforge/client/event/ClientPlayerNetworkEvent.java +++ b/src/main/java/net/minecraftforge/client/event/ClientPlayerNetworkEvent.java @@ -26,7 +26,7 @@ import org.jetbrains.annotations.Nullable; * @see LoggingOut * @see Clone **/ -public abstract class ClientPlayerNetworkEvent extends Event { +public abstract sealed class ClientPlayerNetworkEvent extends Event { private final MultiPlayerGameMode multiPlayerGameMode; private final LocalPlayer player; private final Connection connection; @@ -67,7 +67,7 @@ public abstract class ClientPlayerNetworkEvent extends Event { *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class LoggingIn extends ClientPlayerNetworkEvent { + public static final class LoggingIn extends ClientPlayerNetworkEvent { @ApiStatus.Internal public LoggingIn(final MultiPlayerGameMode controller, final LocalPlayer player, final Connection networkManager) { super(controller, player, networkManager); @@ -84,7 +84,7 @@ public abstract class ClientPlayerNetworkEvent extends Event { */ @SuppressWarnings("NullableProblems") // Shush IntelliJ, we override non-nullables as nullables in this specific event; see later comment - public static class LoggingOut extends ClientPlayerNetworkEvent { + public static final class LoggingOut extends ClientPlayerNetworkEvent { @ApiStatus.Internal public LoggingOut(@Nullable final MultiPlayerGameMode controller, @Nullable final LocalPlayer player, @Nullable final Connection networkManager) { //noinspection ConstantConditions we know these are nullable, but we don't want to annotate the super as nullable since this is the only event with nullables @@ -133,7 +133,7 @@ public abstract class ClientPlayerNetworkEvent extends Event { *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class Clone extends ClientPlayerNetworkEvent { + public static final class Clone extends ClientPlayerNetworkEvent { private final LocalPlayer oldPlayer; @ApiStatus.Internal diff --git a/src/main/java/net/minecraftforge/client/event/ComputeFovModifierEvent.java b/src/main/java/net/minecraftforge/client/event/ComputeFovModifierEvent.java index da21bede99..7fd83d12eb 100644 --- a/src/main/java/net/minecraftforge/client/event/ComputeFovModifierEvent.java +++ b/src/main/java/net/minecraftforge/client/event/ComputeFovModifierEvent.java @@ -24,7 +24,7 @@ import org.jetbrains.annotations.ApiStatus; * * @see ViewportEvent.ComputeFov */ -public class ComputeFovModifierEvent extends Event { +public final class ComputeFovModifierEvent extends Event { private final Player player; private final float fovModifier; private final float scale; diff --git a/src/main/java/net/minecraftforge/client/event/ContainerScreenEvent.java b/src/main/java/net/minecraftforge/client/event/ContainerScreenEvent.java index 23fee30834..50c780f846 100644 --- a/src/main/java/net/minecraftforge/client/event/ContainerScreenEvent.java +++ b/src/main/java/net/minecraftforge/client/event/ContainerScreenEvent.java @@ -23,7 +23,7 @@ import org.jetbrains.annotations.ApiStatus; * @see Render.Foreground * @see Render.Background */ -public abstract class ContainerScreenEvent extends Event { +public abstract sealed class ContainerScreenEvent extends Event { private final AbstractContainerScreen containerScreen; @ApiStatus.Internal @@ -48,7 +48,7 @@ public abstract class ContainerScreenEvent extends Event { * @see Foreground * @see Background */ - public static abstract class Render extends ContainerScreenEvent { + public static abstract sealed class Render extends ContainerScreenEvent { private final GuiGraphics guiGraphics; private final int mouseX; private final int mouseY; @@ -94,7 +94,7 @@ public abstract class ContainerScreenEvent extends Event { *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class Foreground extends Render { + public static final class Foreground extends Render { @ApiStatus.Internal public Foreground(AbstractContainerScreen guiContainer, GuiGraphics guiGraphics, int mouseX, int mouseY) { super(guiContainer, guiGraphics, mouseX, mouseY); @@ -110,7 +110,7 @@ public abstract class ContainerScreenEvent extends Event { *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class Background extends Render { + public static final class Background extends Render { @ApiStatus.Internal public Background(AbstractContainerScreen guiContainer, GuiGraphics guiGraphics, int mouseX, int mouseY) { super(guiContainer, guiGraphics, mouseX, mouseY); diff --git a/src/main/java/net/minecraftforge/client/event/CreateSpecialBlockRendererEvent.java b/src/main/java/net/minecraftforge/client/event/CreateSpecialBlockRendererEvent.java index 1ef20b9fdc..fd4bce9605 100644 --- a/src/main/java/net/minecraftforge/client/event/CreateSpecialBlockRendererEvent.java +++ b/src/main/java/net/minecraftforge/client/event/CreateSpecialBlockRendererEvent.java @@ -11,7 +11,7 @@ import net.minecraft.client.renderer.special.SpecialModelRenderer; import net.minecraft.world.level.block.Block; import net.minecraftforge.eventbus.api.Event; -public class CreateSpecialBlockRendererEvent extends Event { +public final class CreateSpecialBlockRendererEvent extends Event { private final Map map; public CreateSpecialBlockRendererEvent(Map map) { diff --git a/src/main/java/net/minecraftforge/client/event/CustomizeGuiOverlayEvent.java b/src/main/java/net/minecraftforge/client/event/CustomizeGuiOverlayEvent.java index 7a89d8033d..6c28980be0 100644 --- a/src/main/java/net/minecraftforge/client/event/CustomizeGuiOverlayEvent.java +++ b/src/main/java/net/minecraftforge/client/event/CustomizeGuiOverlayEvent.java @@ -23,7 +23,7 @@ import java.util.List; * @see DebugText * @see Chat */ -public abstract class CustomizeGuiOverlayEvent extends Event { +public abstract sealed class CustomizeGuiOverlayEvent extends Event { private final Window window; private final GuiGraphics guiGraphics; private final float partialTick; @@ -57,7 +57,7 @@ public abstract class CustomizeGuiOverlayEvent extends Event { * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class BossEventProgress extends CustomizeGuiOverlayEvent { + public static final class BossEventProgress extends CustomizeGuiOverlayEvent { private final LerpingBossEvent bossEvent; private final int x; private final int y; @@ -119,7 +119,7 @@ public abstract class CustomizeGuiOverlayEvent extends Event { *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class DebugText extends CustomizeGuiOverlayEvent { + public static final class DebugText extends CustomizeGuiOverlayEvent { private final List text; private final Side side; @@ -159,7 +159,7 @@ public abstract class CustomizeGuiOverlayEvent extends Event { *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class Chat extends CustomizeGuiOverlayEvent { + public static final class Chat extends CustomizeGuiOverlayEvent { private int posX; private int posY; diff --git a/src/main/java/net/minecraftforge/client/event/EntityRenderersEvent.java b/src/main/java/net/minecraftforge/client/event/EntityRenderersEvent.java index c67d49fdc1..2ab9e555f6 100644 --- a/src/main/java/net/minecraftforge/client/event/EntityRenderersEvent.java +++ b/src/main/java/net/minecraftforge/client/event/EntityRenderersEvent.java @@ -53,7 +53,7 @@ import java.util.function.Supplier; * @see EntityRenderersEvent.RegisterRenderers * @see EntityRenderersEvent.AddLayers */ -public abstract class EntityRenderersEvent extends Event implements IModBusEvent { +public abstract sealed class EntityRenderersEvent extends Event implements IModBusEvent { @ApiStatus.Internal protected EntityRenderersEvent() {} @@ -65,7 +65,7 @@ public abstract class EntityRenderersEvent extends Event implements IModBusEvent *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class RegisterLayerDefinitions extends EntityRenderersEvent { + public static final class RegisterLayerDefinitions extends EntityRenderersEvent { @ApiStatus.Internal public RegisterLayerDefinitions() {} @@ -93,7 +93,7 @@ public abstract class EntityRenderersEvent extends Event implements IModBusEvent *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class RegisterRenderers extends EntityRenderersEvent { + public static final class RegisterRenderers extends EntityRenderersEvent { @ApiStatus.Internal public RegisterRenderers() {} @@ -127,7 +127,7 @@ public abstract class EntityRenderersEvent extends Event implements IModBusEvent *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class AddLayers extends EntityRenderersEvent { + public static final class AddLayers extends EntityRenderersEvent { private final Map, EntityRenderer> renderers; private final Map> skinMap; private final EntityRendererProvider.Context context; @@ -201,7 +201,7 @@ public abstract class EntityRenderersEvent extends Event implements IModBusEvent *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class CreateSkullModels extends EntityRenderersEvent { + public static final class CreateSkullModels extends EntityRenderersEvent { private final ImmutableMap.Builder> builder; @ApiStatus.Internal diff --git a/src/main/java/net/minecraftforge/client/event/InputEvent.java b/src/main/java/net/minecraftforge/client/event/InputEvent.java index 5e8e8f0432..4275bcce78 100644 --- a/src/main/java/net/minecraftforge/client/event/InputEvent.java +++ b/src/main/java/net/minecraftforge/client/event/InputEvent.java @@ -24,7 +24,7 @@ import org.lwjgl.glfw.GLFW; * @see Key * @see InteractionKeyMappingTriggered */ -public abstract class InputEvent extends Event { +public abstract sealed class InputEvent extends Event { @ApiStatus.Internal protected InputEvent() {} @@ -38,7 +38,7 @@ public abstract class InputEvent extends Event { * @see Pre * @see Post */ - public static abstract class MouseButton extends InputEvent { + public static abstract sealed class MouseButton extends InputEvent { private final int button; private final int action; private final int modifiers; @@ -97,7 +97,7 @@ public abstract class InputEvent extends Event { * @see the online GLFW documentation */ @Cancelable - public static class Pre extends MouseButton { + public static final class Pre extends MouseButton { @ApiStatus.Internal public Pre(int button, int action, int modifiers) { super(button, action, modifiers); @@ -114,7 +114,7 @@ public abstract class InputEvent extends Event { * * @see the online GLFW documentation */ - public static class Post extends MouseButton { + public static final class Post extends MouseButton { @ApiStatus.Internal public Post(int button, int action, int modifiers) { super(button, action, modifiers); @@ -135,7 +135,7 @@ public abstract class InputEvent extends Event { * @see the online GLFW documentation */ @Cancelable - public static class MouseScrollingEvent extends InputEvent { + public static final class MouseScrollingEvent extends InputEvent { private final double deltaX; private final double deltaY; private final double mouseX; @@ -213,7 +213,7 @@ public abstract class InputEvent extends Event { *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class Key extends InputEvent { + public static final class Key extends InputEvent { private final int key; private final int scanCode; private final int action; @@ -297,7 +297,7 @@ public abstract class InputEvent extends Event { */ // TODO: Change the 'button' to sub events. - Lex 0422202 @Cancelable - public static class InteractionKeyMappingTriggered extends InputEvent { + public static final class InteractionKeyMappingTriggered extends InputEvent { private final int button; private final KeyMapping keyMapping; private final InteractionHand hand; diff --git a/src/main/java/net/minecraftforge/client/event/ModelEvent.java b/src/main/java/net/minecraftforge/client/event/ModelEvent.java index cc22b8fa2a..ba1f853573 100644 --- a/src/main/java/net/minecraftforge/client/event/ModelEvent.java +++ b/src/main/java/net/minecraftforge/client/event/ModelEvent.java @@ -28,7 +28,7 @@ import java.util.Map; /** * Houses events related to models. */ -public abstract class ModelEvent extends Event { +public abstract sealed class ModelEvent extends Event { @ApiStatus.Internal protected ModelEvent() { } @@ -48,7 +48,7 @@ public abstract class ModelEvent extends Event { *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class ModifyBakingResult extends ModelEvent implements IModBusEvent { + public static final class ModifyBakingResult extends ModelEvent implements IModBusEvent { private final ModelBakery modelBakery; private final ModelBakery.BakingResult results; @@ -84,7 +84,7 @@ public abstract class ModelEvent extends Event { *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class BakingCompleted extends ModelEvent implements IModBusEvent { + public static final class BakingCompleted extends ModelEvent implements IModBusEvent { private final ModelManager modelManager; private final ModelBakery modelBakery; @@ -118,7 +118,7 @@ public abstract class ModelEvent extends Event { *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class RegisterModelStateDefinitions extends ModelEvent implements IModBusEvent { + public static final class RegisterModelStateDefinitions extends ModelEvent implements IModBusEvent { private final Map> states = new HashMap<>(); private final Map> view = Collections.unmodifiableMap(states); @@ -148,7 +148,7 @@ public abstract class ModelEvent extends Event { *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class RegisterGeometryLoaders extends ModelEvent implements IModBusEvent { + public static final class RegisterGeometryLoaders extends ModelEvent implements IModBusEvent { private final Map loaders; @ApiStatus.Internal diff --git a/src/main/java/net/minecraftforge/client/event/MovementInputUpdateEvent.java b/src/main/java/net/minecraftforge/client/event/MovementInputUpdateEvent.java index 422ba3d3fc..2e0ff05d59 100644 --- a/src/main/java/net/minecraftforge/client/event/MovementInputUpdateEvent.java +++ b/src/main/java/net/minecraftforge/client/event/MovementInputUpdateEvent.java @@ -21,7 +21,7 @@ import org.jetbrains.annotations.ApiStatus; *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ -public class MovementInputUpdateEvent extends PlayerEvent { +public final class MovementInputUpdateEvent extends PlayerEvent { private final ClientInput input; @ApiStatus.Internal diff --git a/src/main/java/net/minecraftforge/client/event/RecipesUpdatedEvent.java b/src/main/java/net/minecraftforge/client/event/RecipesUpdatedEvent.java index c95c2c711c..663c462c5f 100644 --- a/src/main/java/net/minecraftforge/client/event/RecipesUpdatedEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RecipesUpdatedEvent.java @@ -20,7 +20,7 @@ import org.jetbrains.annotations.ApiStatus; *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ -public class RecipesUpdatedEvent extends Event { +public final class RecipesUpdatedEvent extends Event { private final ClientRecipeBook recipeBook; @ApiStatus.Internal diff --git a/src/main/java/net/minecraftforge/client/event/RegisterClientCommandsEvent.java b/src/main/java/net/minecraftforge/client/event/RegisterClientCommandsEvent.java index 4dc3e7a496..7247d5f3f5 100644 --- a/src/main/java/net/minecraftforge/client/event/RegisterClientCommandsEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RegisterClientCommandsEvent.java @@ -34,7 +34,7 @@ import org.jetbrains.annotations.ApiStatus; * * @see net.minecraftforge.event.RegisterCommandsEvent */ -public class RegisterClientCommandsEvent extends Event +public final class RegisterClientCommandsEvent extends Event { private final CommandDispatcher dispatcher; private final CommandBuildContext context; diff --git a/src/main/java/net/minecraftforge/client/event/RegisterClientReloadListenersEvent.java b/src/main/java/net/minecraftforge/client/event/RegisterClientReloadListenersEvent.java index 0e641cc2ba..339215f6b0 100644 --- a/src/main/java/net/minecraftforge/client/event/RegisterClientReloadListenersEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RegisterClientReloadListenersEvent.java @@ -27,7 +27,7 @@ import org.jetbrains.annotations.ApiStatus; *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ -public class RegisterClientReloadListenersEvent extends Event implements IModBusEvent +public final class RegisterClientReloadListenersEvent extends Event implements IModBusEvent { private final ReloadableResourceManager resourceManager; diff --git a/src/main/java/net/minecraftforge/client/event/RegisterClientTooltipComponentFactoriesEvent.java b/src/main/java/net/minecraftforge/client/event/RegisterClientTooltipComponentFactoriesEvent.java index 564ff815e3..045de9e5fb 100644 --- a/src/main/java/net/minecraftforge/client/event/RegisterClientTooltipComponentFactoriesEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RegisterClientTooltipComponentFactoriesEvent.java @@ -26,7 +26,7 @@ import java.util.function.Function; *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ -public class RegisterClientTooltipComponentFactoriesEvent extends Event implements IModBusEvent +public final class RegisterClientTooltipComponentFactoriesEvent extends Event implements IModBusEvent { private final Map, Function> factories; diff --git a/src/main/java/net/minecraftforge/client/event/RegisterColorHandlersEvent.java b/src/main/java/net/minecraftforge/client/event/RegisterColorHandlersEvent.java index 1b2b316c67..8e351ce1ca 100644 --- a/src/main/java/net/minecraftforge/client/event/RegisterColorHandlersEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RegisterColorHandlersEvent.java @@ -27,7 +27,7 @@ import org.jetbrains.annotations.ApiStatus; * @see RegisterColorHandlersEvent.Block * @see RegisterColorHandlersEvent.Item */ -public abstract class RegisterColorHandlersEvent extends Event implements IModBusEvent { +public abstract sealed class RegisterColorHandlersEvent extends Event implements IModBusEvent { @ApiStatus.Internal protected RegisterColorHandlersEvent() {} @@ -39,7 +39,7 @@ public abstract class RegisterColorHandlersEvent extends Event implements IModBu *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class Block extends RegisterColorHandlersEvent { + public static final class Block extends RegisterColorHandlersEvent { private final BlockColors blockColors; @ApiStatus.Internal @@ -72,7 +72,7 @@ public abstract class RegisterColorHandlersEvent extends Event implements IModBu * Allows registration of custom {@link ColorResolver} implementations to be used with * {@link net.minecraft.world.level.BlockAndTintGetter#getBlockTint(BlockPos, ColorResolver)}. */ - public static class ColorResolvers extends RegisterColorHandlersEvent { + public static final class ColorResolvers extends RegisterColorHandlersEvent { private final ImmutableList.Builder builder; @ApiStatus.Internal diff --git a/src/main/java/net/minecraftforge/client/event/RegisterDimensionSpecialEffectsEvent.java b/src/main/java/net/minecraftforge/client/event/RegisterDimensionSpecialEffectsEvent.java index 65c792bd5f..b01af80078 100644 --- a/src/main/java/net/minecraftforge/client/event/RegisterDimensionSpecialEffectsEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RegisterDimensionSpecialEffectsEvent.java @@ -24,7 +24,7 @@ import java.util.Map; *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ -public class RegisterDimensionSpecialEffectsEvent extends Event implements IModBusEvent +public final class RegisterDimensionSpecialEffectsEvent extends Event implements IModBusEvent { private final Map effects; diff --git a/src/main/java/net/minecraftforge/client/event/RegisterEntitySpectatorShadersEvent.java b/src/main/java/net/minecraftforge/client/event/RegisterEntitySpectatorShadersEvent.java index 911367820b..ced04261b7 100644 --- a/src/main/java/net/minecraftforge/client/event/RegisterEntitySpectatorShadersEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RegisterEntitySpectatorShadersEvent.java @@ -25,7 +25,7 @@ import java.util.Map; *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ -public class RegisterEntitySpectatorShadersEvent extends Event implements IModBusEvent +public final class RegisterEntitySpectatorShadersEvent extends Event implements IModBusEvent { private final Map, ResourceLocation> shaders; diff --git a/src/main/java/net/minecraftforge/client/event/RegisterItemDecorationsEvent.java b/src/main/java/net/minecraftforge/client/event/RegisterItemDecorationsEvent.java index 51c9b5a8e2..5d90794dcb 100644 --- a/src/main/java/net/minecraftforge/client/event/RegisterItemDecorationsEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RegisterItemDecorationsEvent.java @@ -28,7 +28,7 @@ import java.util.Map; *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ -public class RegisterItemDecorationsEvent extends Event implements IModBusEvent +public final class RegisterItemDecorationsEvent extends Event implements IModBusEvent { private final Map> decorators; diff --git a/src/main/java/net/minecraftforge/client/event/RegisterKeyMappingsEvent.java b/src/main/java/net/minecraftforge/client/event/RegisterKeyMappingsEvent.java index 4d0d08588d..0e77eb6bd3 100644 --- a/src/main/java/net/minecraftforge/client/event/RegisterKeyMappingsEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RegisterKeyMappingsEvent.java @@ -23,7 +23,7 @@ import org.jetbrains.annotations.ApiStatus; *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ -public class RegisterKeyMappingsEvent extends Event implements IModBusEvent +public final class RegisterKeyMappingsEvent extends Event implements IModBusEvent { private final Options options; diff --git a/src/main/java/net/minecraftforge/client/event/RegisterNamedRenderTypesEvent.java b/src/main/java/net/minecraftforge/client/event/RegisterNamedRenderTypesEvent.java index 14b362002c..c36a879852 100644 --- a/src/main/java/net/minecraftforge/client/event/RegisterNamedRenderTypesEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RegisterNamedRenderTypesEvent.java @@ -28,7 +28,7 @@ import java.util.Map; *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ -public class RegisterNamedRenderTypesEvent extends Event implements IModBusEvent +public final class RegisterNamedRenderTypesEvent extends Event implements IModBusEvent { private final Map renderTypes; diff --git a/src/main/java/net/minecraftforge/client/event/RegisterParticleProvidersEvent.java b/src/main/java/net/minecraftforge/client/event/RegisterParticleProvidersEvent.java index c9dcdb73e1..43ba57c8ee 100644 --- a/src/main/java/net/minecraftforge/client/event/RegisterParticleProvidersEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RegisterParticleProvidersEvent.java @@ -29,7 +29,7 @@ import org.jetbrains.annotations.ApiStatus; *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ -public class RegisterParticleProvidersEvent extends Event implements IModBusEvent +public final class RegisterParticleProvidersEvent extends Event implements IModBusEvent { private final ParticleEngine particleEngine; diff --git a/src/main/java/net/minecraftforge/client/event/RegisterPresetEditorsEvent.java b/src/main/java/net/minecraftforge/client/event/RegisterPresetEditorsEvent.java index 08077668c8..f3e3773673 100644 --- a/src/main/java/net/minecraftforge/client/event/RegisterPresetEditorsEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RegisterPresetEditorsEvent.java @@ -29,7 +29,7 @@ import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ -public class RegisterPresetEditorsEvent extends Event implements IModBusEvent +public final class RegisterPresetEditorsEvent extends Event implements IModBusEvent { private static final Logger LOGGER = LogManager.getLogger(); diff --git a/src/main/java/net/minecraftforge/client/event/RegisterTextureAtlasSpriteLoadersEvent.java b/src/main/java/net/minecraftforge/client/event/RegisterTextureAtlasSpriteLoadersEvent.java index 2b264db225..88f5123172 100644 --- a/src/main/java/net/minecraftforge/client/event/RegisterTextureAtlasSpriteLoadersEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RegisterTextureAtlasSpriteLoadersEvent.java @@ -26,7 +26,7 @@ import org.jetbrains.annotations.ApiStatus; *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ -public class RegisterTextureAtlasSpriteLoadersEvent extends Event implements IModBusEvent { +public final class RegisterTextureAtlasSpriteLoadersEvent extends Event implements IModBusEvent { private final BiMap loaders; @ApiStatus.Internal diff --git a/src/main/java/net/minecraftforge/client/event/RenderArmEvent.java b/src/main/java/net/minecraftforge/client/event/RenderArmEvent.java index 2ae39f21a1..0c326e68b7 100644 --- a/src/main/java/net/minecraftforge/client/event/RenderArmEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RenderArmEvent.java @@ -27,7 +27,7 @@ import org.jetbrains.annotations.ApiStatus; * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable -public class RenderArmEvent extends Event { +public final class RenderArmEvent extends Event { private final PoseStack poseStack; private final MultiBufferSource multiBufferSource; private final int packedLight; diff --git a/src/main/java/net/minecraftforge/client/event/RenderBlockScreenEffectEvent.java b/src/main/java/net/minecraftforge/client/event/RenderBlockScreenEffectEvent.java index e526f13df0..0000ffaa24 100644 --- a/src/main/java/net/minecraftforge/client/event/RenderBlockScreenEffectEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RenderBlockScreenEffectEvent.java @@ -25,7 +25,7 @@ import org.jetbrains.annotations.ApiStatus; * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable -public class RenderBlockScreenEffectEvent extends Event +public final class RenderBlockScreenEffectEvent extends Event { /** * The type of the block overlay to be rendered. diff --git a/src/main/java/net/minecraftforge/client/event/RenderHandEvent.java b/src/main/java/net/minecraftforge/client/event/RenderHandEvent.java index e67267dce4..085a6e3d31 100644 --- a/src/main/java/net/minecraftforge/client/event/RenderHandEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RenderHandEvent.java @@ -28,7 +28,7 @@ import org.jetbrains.annotations.ApiStatus; * @see RenderArmEvent */ @Cancelable -public class RenderHandEvent extends Event +public final class RenderHandEvent extends Event { private final InteractionHand hand; private final PoseStack poseStack; diff --git a/src/main/java/net/minecraftforge/client/event/RenderHighlightEvent.java b/src/main/java/net/minecraftforge/client/event/RenderHighlightEvent.java index 325e8d5e9e..cc4b29ddb7 100644 --- a/src/main/java/net/minecraftforge/client/event/RenderHighlightEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RenderHighlightEvent.java @@ -26,7 +26,7 @@ import org.jetbrains.annotations.ApiStatus; * @see Entity */ @Cancelable -public abstract class RenderHighlightEvent extends Event +public abstract sealed class RenderHighlightEvent extends Event { private final LevelRenderer levelRenderer; private final Camera camera; @@ -104,7 +104,7 @@ public abstract class RenderHighlightEvent extends Event * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class Block extends RenderHighlightEvent + public static final class Block extends RenderHighlightEvent { @ApiStatus.Internal public Block(LevelRenderer levelRenderer, Camera camera, BlockHitResult target, float partialTick, PoseStack poseStack, MultiBufferSource bufferSource) @@ -130,7 +130,7 @@ public abstract class RenderHighlightEvent extends Event *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class Entity extends RenderHighlightEvent + public static final class Entity extends RenderHighlightEvent { @ApiStatus.Internal public Entity(LevelRenderer levelRenderer, Camera camera, EntityHitResult target, float partialTick, PoseStack poseStack, MultiBufferSource bufferSource) diff --git a/src/main/java/net/minecraftforge/client/event/RenderItemInFrameEvent.java b/src/main/java/net/minecraftforge/client/event/RenderItemInFrameEvent.java index 62457dac93..2b0a0b4112 100644 --- a/src/main/java/net/minecraftforge/client/event/RenderItemInFrameEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RenderItemInFrameEvent.java @@ -29,7 +29,7 @@ import org.jetbrains.annotations.ApiStatus; * @see ItemFrameRenderer */ @Cancelable -public class RenderItemInFrameEvent extends Event { +public final class RenderItemInFrameEvent extends Event { private final ItemFrameRenderState state; private final ItemFrameRenderer renderer; private final PoseStack poseStack; diff --git a/src/main/java/net/minecraftforge/client/event/RenderLivingEvent.java b/src/main/java/net/minecraftforge/client/event/RenderLivingEvent.java index e5b11fab56..c6dae9fbc8 100644 --- a/src/main/java/net/minecraftforge/client/event/RenderLivingEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RenderLivingEvent.java @@ -32,7 +32,7 @@ import org.jetbrains.annotations.ApiStatus; * @see RenderPlayerEvent * @see LivingEntityRenderer */ -public abstract class RenderLivingEvent> extends Event { +public abstract sealed class RenderLivingEvent> extends Event { private final S state; private final LivingEntityRenderer renderer; private final PoseStack poseStack; @@ -100,7 +100,7 @@ public abstract class RenderLivingEvent the model for the living entity */ @Cancelable - public static class Pre> extends RenderLivingEvent { + public static final class Pre> extends RenderLivingEvent { @ApiStatus.Internal public Pre(S state, LivingEntityRenderer renderer, PoseStack poseStack, MultiBufferSource multiBufferSource, int packedLight) { super(state, renderer, poseStack, multiBufferSource, packedLight); @@ -118,7 +118,7 @@ public abstract class RenderLivingEvent the living entity that was rendered * @param the model for the living entity */ - public static class Post> extends RenderLivingEvent { + public static final class Post> extends RenderLivingEvent { @ApiStatus.Internal public Post(S state, LivingEntityRenderer renderer, PoseStack poseStack, MultiBufferSource multiBufferSource, int packedLight) { super(state, renderer, poseStack, multiBufferSource, packedLight); diff --git a/src/main/java/net/minecraftforge/client/event/RenderNameTagEvent.java b/src/main/java/net/minecraftforge/client/event/RenderNameTagEvent.java index aba8031de2..2bdd46ae00 100644 --- a/src/main/java/net/minecraftforge/client/event/RenderNameTagEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RenderNameTagEvent.java @@ -32,7 +32,7 @@ import org.jetbrains.annotations.ApiStatus; * @see EntityRenderer */ @Event.HasResult -public class RenderNameTagEvent extends Event { +public final class RenderNameTagEvent extends Event { private Component nameplateContent; private final EntityRenderState state; private final Component originalContent; diff --git a/src/main/java/net/minecraftforge/client/event/RenderPlayerEvent.java b/src/main/java/net/minecraftforge/client/event/RenderPlayerEvent.java index 15b0342faf..fa1505f1e7 100644 --- a/src/main/java/net/minecraftforge/client/event/RenderPlayerEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RenderPlayerEvent.java @@ -24,7 +24,7 @@ import org.jetbrains.annotations.ApiStatus; * @see RenderPlayerEvent.Post * @see PlayerRenderer */ -public abstract class RenderPlayerEvent extends Event { +public abstract sealed class RenderPlayerEvent extends Event { private final PlayerRenderState state; private final PlayerRenderer renderer; private final PoseStack poseStack; @@ -86,7 +86,7 @@ public abstract class RenderPlayerEvent extends Event { * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class Pre extends RenderPlayerEvent { + public static final class Pre extends RenderPlayerEvent { @ApiStatus.Internal public Pre(PlayerRenderState state, PlayerRenderer renderer, PoseStack poseStack, MultiBufferSource multiBufferSource, int packedLight) { super(state, renderer, poseStack, multiBufferSource, packedLight); @@ -101,7 +101,7 @@ public abstract class RenderPlayerEvent extends Event { *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class Post extends RenderPlayerEvent { + public static final class Post extends RenderPlayerEvent { @ApiStatus.Internal public Post(PlayerRenderState state, PlayerRenderer renderer, PoseStack poseStack, MultiBufferSource multiBufferSource, int packedLight) { super(state, renderer, poseStack, multiBufferSource, packedLight); diff --git a/src/main/java/net/minecraftforge/client/event/RenderTooltipEvent.java b/src/main/java/net/minecraftforge/client/event/RenderTooltipEvent.java index d158d094cb..52eded33fd 100644 --- a/src/main/java/net/minecraftforge/client/event/RenderTooltipEvent.java +++ b/src/main/java/net/minecraftforge/client/event/RenderTooltipEvent.java @@ -34,7 +34,7 @@ import java.util.List; * @see RenderTooltipEvent.Pre * @see RenderTooltipEvent.Background */ -public abstract class RenderTooltipEvent extends Event +public abstract sealed class RenderTooltipEvent extends Event { @NotNull protected final ItemStack itemStack; @@ -121,7 +121,7 @@ public abstract class RenderTooltipEvent extends Event * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class GatherComponents extends Event + public static final class GatherComponents extends Event { private final ItemStack itemStack; private final int screenWidth; @@ -210,7 +210,7 @@ public abstract class RenderTooltipEvent extends Event * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class Pre extends RenderTooltipEvent + public static final class Pre extends RenderTooltipEvent { private final int screenWidth; private final int screenHeight; @@ -289,7 +289,7 @@ public abstract class RenderTooltipEvent extends Event *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class Background extends RenderTooltipEvent { + public static final class Background extends RenderTooltipEvent { private final ResourceLocation originalBackground; private ResourceLocation background; diff --git a/src/main/java/net/minecraftforge/client/event/ScreenEvent.java b/src/main/java/net/minecraftforge/client/event/ScreenEvent.java index 371c323587..f292efa718 100644 --- a/src/main/java/net/minecraftforge/client/event/ScreenEvent.java +++ b/src/main/java/net/minecraftforge/client/event/ScreenEvent.java @@ -35,7 +35,7 @@ import java.util.function.Consumer; * @see MouseInput * @see KeyInput */ -public abstract class ScreenEvent extends Event { +public abstract sealed class ScreenEvent extends Event { private final Screen screen; @ApiStatus.Internal @@ -61,7 +61,7 @@ public abstract class ScreenEvent extends Event { * @see Init.Pre * @see Init.Post */ - public static abstract class Init extends ScreenEvent { + public static abstract sealed class Init extends ScreenEvent { private final Consumer add; private final Consumer remove; @@ -111,7 +111,7 @@ public abstract class ScreenEvent extends Event { * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class Pre extends Init { + public static final class Pre extends Init { @ApiStatus.Internal public Pre(Screen screen, List list, Consumer add, Consumer remove) { super(screen, list, add, remove); @@ -126,7 +126,7 @@ public abstract class ScreenEvent extends Event { *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class Post extends Init { + public static final class Post extends Init { @ApiStatus.Internal public Post(Screen screen, List list, Consumer add, Consumer remove) { super(screen, list, add, remove); @@ -141,7 +141,7 @@ public abstract class ScreenEvent extends Event { * @see Render.Pre * @see Render.Post */ - public static abstract class Render extends ScreenEvent { + public static abstract sealed class Render extends ScreenEvent { private final GuiGraphics guiGraphics; private final int mouseX; private final int mouseY; @@ -194,7 +194,7 @@ public abstract class ScreenEvent extends Event { * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class Pre extends Render { + public static final class Pre extends Render { @ApiStatus.Internal public Pre(Screen screen, GuiGraphics guiGraphics, int mouseX, int mouseY, float partialTick) { super(screen, guiGraphics, mouseX, mouseY, partialTick); @@ -209,7 +209,7 @@ public abstract class ScreenEvent extends Event { *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class Post extends Render { + public static final class Post extends Render { @ApiStatus.Internal public Post(Screen screen, GuiGraphics guiGraphics, int mouseX, int mouseY, float partialTick) { super(screen, guiGraphics, mouseX, mouseY, partialTick); @@ -226,7 +226,7 @@ public abstract class ScreenEvent extends Event { *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class BackgroundRendered extends ScreenEvent { + public static final class BackgroundRendered extends ScreenEvent { private final GuiGraphics guiGraphics; @ApiStatus.Internal @@ -255,7 +255,7 @@ public abstract class ScreenEvent extends Event { * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class RenderInventoryMobEffects extends ScreenEvent { + public static final class RenderInventoryMobEffects extends ScreenEvent { private final int availableSpace; private boolean compact; private int horizontalOffset; @@ -320,7 +320,7 @@ public abstract class ScreenEvent extends Event { * @see MouseDragged * @see MouseScrolled */ - private static abstract class MouseInput extends ScreenEvent { + private static abstract sealed class MouseInput extends ScreenEvent { private final double mouseX; private final double mouseY; @@ -353,7 +353,7 @@ public abstract class ScreenEvent extends Event { * @see MouseButtonPressed.Pre * @see MouseButtonPressed.Post */ - public static abstract class MouseButtonPressed extends MouseInput { + public static abstract sealed class MouseButtonPressed extends MouseInput { private final int button; @ApiStatus.Internal @@ -383,7 +383,7 @@ public abstract class ScreenEvent extends Event { * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class Pre extends MouseButtonPressed { + public static final class Pre extends MouseButtonPressed { @ApiStatus.Internal public Pre(Screen screen, double mouseX, double mouseY, int button) { super(screen, mouseX, mouseY, button); @@ -406,7 +406,7 @@ public abstract class ScreenEvent extends Event { * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @HasResult - public static class Post extends MouseButtonPressed { + public static final class Post extends MouseButtonPressed { private final boolean handled; @ApiStatus.Internal @@ -431,7 +431,7 @@ public abstract class ScreenEvent extends Event { * @see MouseButtonReleased.Pre * @see MouseButtonReleased.Post */ - public static abstract class MouseButtonReleased extends MouseInput { + public static abstract sealed class MouseButtonReleased extends MouseInput { private final int button; @ApiStatus.Internal @@ -461,7 +461,7 @@ public abstract class ScreenEvent extends Event { * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class Pre extends MouseButtonReleased { + public static final class Pre extends MouseButtonReleased { @ApiStatus.Internal public Pre(Screen screen, double mouseX, double mouseY, int button) { super(screen, mouseX, mouseY, button); @@ -484,7 +484,7 @@ public abstract class ScreenEvent extends Event { * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @HasResult - public static class Post extends MouseButtonReleased { + public static final class Post extends MouseButtonReleased { private final boolean handled; @ApiStatus.Internal @@ -509,7 +509,7 @@ public abstract class ScreenEvent extends Event { * @see MouseDragged.Pre * @see MouseDragged.Post */ - public static abstract class MouseDragged extends MouseInput { + public static abstract sealed class MouseDragged extends MouseInput { private final int mouseButton; private final double dragX; private final double dragY; @@ -557,7 +557,7 @@ public abstract class ScreenEvent extends Event { * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class Pre extends MouseDragged { + public static final class Pre extends MouseDragged { @ApiStatus.Internal public Pre(Screen screen, double mouseX, double mouseY, int mouseButton, double dragX, double dragY) { super(screen, mouseX, mouseY, mouseButton, dragX, dragY); @@ -574,7 +574,7 @@ public abstract class ScreenEvent extends Event { *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class Post extends MouseDragged { + public static final class Post extends MouseDragged { @ApiStatus.Internal public Post(Screen screen, double mouseX, double mouseY, int mouseButton, double dragX, double dragY) { super(screen, mouseX, mouseY, mouseButton, dragX, dragY); @@ -589,7 +589,7 @@ public abstract class ScreenEvent extends Event { * @see MouseScrolled.Pre * @see MouseScrolled.Post */ - public static abstract class MouseScrolled extends MouseInput { + public static abstract sealed class MouseScrolled extends MouseInput { private final double deltaX; private final double deltaY; @@ -625,7 +625,7 @@ public abstract class ScreenEvent extends Event { * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class Pre extends MouseScrolled { + public static final class Pre extends MouseScrolled { @ApiStatus.Internal public Pre(Screen screen, double mouseX, double mouseY, double deltaX, double deltaY) { super(screen, mouseX, mouseY, deltaX, deltaY); @@ -642,7 +642,7 @@ public abstract class ScreenEvent extends Event { *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class Post extends MouseScrolled { + public static final class Post extends MouseScrolled { @ApiStatus.Internal public Post(Screen screen, double mouseX, double mouseY, double deltaX, double deltaY) { super(screen, mouseX, mouseY, deltaX, deltaY); @@ -659,7 +659,7 @@ public abstract class ScreenEvent extends Event { * @see InputConstants * @see the online GLFW documentation */ - private static abstract class KeyInput extends ScreenEvent { + private static abstract sealed class KeyInput extends ScreenEvent { private final int keyCode; private final int scanCode; private final int modifiers; @@ -719,7 +719,7 @@ public abstract class ScreenEvent extends Event { * @see KeyPressed.Pre * @see KeyPressed.Post */ - public static abstract class KeyPressed extends KeyInput { + public static abstract sealed class KeyPressed extends KeyInput { @ApiStatus.Internal public KeyPressed(Screen screen, int keyCode, int scanCode, int modifiers) { super(screen, keyCode, scanCode, modifiers); @@ -736,7 +736,7 @@ public abstract class ScreenEvent extends Event { * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class Pre extends KeyPressed { + public static final class Pre extends KeyPressed { @ApiStatus.Internal public Pre(Screen screen, int keyCode, int scanCode, int modifiers) { super(screen, keyCode, scanCode, modifiers); @@ -754,7 +754,7 @@ public abstract class ScreenEvent extends Event { * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class Post extends KeyPressed { + public static final class Post extends KeyPressed { @ApiStatus.Internal public Post(Screen screen, int keyCode, int scanCode, int modifiers) { super(screen, keyCode, scanCode, modifiers); @@ -769,7 +769,7 @@ public abstract class ScreenEvent extends Event { * @see KeyReleased.Pre * @see KeyReleased.Post */ - public static abstract class KeyReleased extends KeyInput { + public static abstract sealed class KeyReleased extends KeyInput { @ApiStatus.Internal public KeyReleased(Screen screen, int keyCode, int scanCode, int modifiers) { super(screen, keyCode, scanCode, modifiers); @@ -786,7 +786,7 @@ public abstract class ScreenEvent extends Event { * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class Pre extends KeyReleased { + public static final class Pre extends KeyReleased { @ApiStatus.Internal public Pre(Screen screen, int keyCode, int scanCode, int modifiers) { super(screen, keyCode, scanCode, modifiers); @@ -804,7 +804,7 @@ public abstract class ScreenEvent extends Event { * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class Post extends KeyReleased { + public static final class Post extends KeyReleased { @ApiStatus.Internal public Post(Screen screen, int keyCode, int scanCode, int modifiers) { super(screen, keyCode, scanCode, modifiers); @@ -820,7 +820,7 @@ public abstract class ScreenEvent extends Event { * @see CharacterTyped.Post * @see the online GLFW documentation */ - public static class CharacterTyped extends ScreenEvent { + public static sealed class CharacterTyped extends ScreenEvent { private final char codePoint; private final int modifiers; @@ -864,7 +864,7 @@ public abstract class ScreenEvent extends Event { * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class Pre extends CharacterTyped { + public static final class Pre extends CharacterTyped { @ApiStatus.Internal public Pre(Screen screen, char codePoint, int modifiers) { super(screen, codePoint, modifiers); @@ -881,7 +881,7 @@ public abstract class ScreenEvent extends Event { *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class Post extends CharacterTyped { + public static final class Post extends CharacterTyped { @ApiStatus.Internal public Post(Screen screen, char codePoint, int modifiers) { super(screen, codePoint, modifiers); @@ -902,7 +902,7 @@ public abstract class ScreenEvent extends Event { * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class Opening extends ScreenEvent { + public static final class Opening extends ScreenEvent { @Nullable private final Screen currentScreen; private Screen newScreen; @@ -949,7 +949,7 @@ public abstract class ScreenEvent extends Event { *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class Closing extends ScreenEvent { + public static final class Closing extends ScreenEvent { @ApiStatus.Internal public Closing(Screen screen) { super(screen); diff --git a/src/main/java/net/minecraftforge/client/event/ScreenshotEvent.java b/src/main/java/net/minecraftforge/client/event/ScreenshotEvent.java index 94d1163f18..39bc8ed585 100644 --- a/src/main/java/net/minecraftforge/client/event/ScreenshotEvent.java +++ b/src/main/java/net/minecraftforge/client/event/ScreenshotEvent.java @@ -31,7 +31,7 @@ import java.io.IOException; * @see Screenshot */ @Cancelable -public class ScreenshotEvent extends Event { +public final class ScreenshotEvent extends Event { public static final Component DEFAULT_CANCEL_REASON = Component.literal("Screenshot canceled"); private final NativeImage image; diff --git a/src/main/java/net/minecraftforge/client/event/SystemMessageReceivedEvent.java b/src/main/java/net/minecraftforge/client/event/SystemMessageReceivedEvent.java index 1ed710c011..56869c6719 100644 --- a/src/main/java/net/minecraftforge/client/event/SystemMessageReceivedEvent.java +++ b/src/main/java/net/minecraftforge/client/event/SystemMessageReceivedEvent.java @@ -18,7 +18,7 @@ import org.jetbrains.annotations.ApiStatus; * */ @Cancelable -public class SystemMessageReceivedEvent extends Event { +public final class SystemMessageReceivedEvent extends Event { private Component message; private final boolean overlay; diff --git a/src/main/java/net/minecraftforge/client/event/TextureStitchEvent.java b/src/main/java/net/minecraftforge/client/event/TextureStitchEvent.java index a0df0d0f3e..2a4cb146f5 100644 --- a/src/main/java/net/minecraftforge/client/event/TextureStitchEvent.java +++ b/src/main/java/net/minecraftforge/client/event/TextureStitchEvent.java @@ -19,7 +19,7 @@ import org.jetbrains.annotations.ApiStatus; * @see TextureStitchEvent.Post * @see TextureAtlas */ -public class TextureStitchEvent extends Event implements IModBusEvent +public sealed class TextureStitchEvent extends Event implements IModBusEvent { private final TextureAtlas atlas; @@ -80,7 +80,7 @@ public class TextureStitchEvent extends Event implements IModBusEvent *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus()} mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class Post extends TextureStitchEvent + public static final class Post extends TextureStitchEvent { @ApiStatus.Internal public Post(TextureAtlas map) diff --git a/src/main/java/net/minecraftforge/client/event/ToastAddEvent.java b/src/main/java/net/minecraftforge/client/event/ToastAddEvent.java index 9f77796ee0..9181f767e3 100644 --- a/src/main/java/net/minecraftforge/client/event/ToastAddEvent.java +++ b/src/main/java/net/minecraftforge/client/event/ToastAddEvent.java @@ -22,7 +22,7 @@ import net.minecraftforge.fml.LogicalSide; * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable -public class ToastAddEvent extends Event { +public final class ToastAddEvent extends Event { private final Toast toast; public ToastAddEvent(Toast toast) { diff --git a/src/main/java/net/minecraftforge/client/event/ViewportEvent.java b/src/main/java/net/minecraftforge/client/event/ViewportEvent.java index a10cfd6a13..4e003d67d3 100644 --- a/src/main/java/net/minecraftforge/client/event/ViewportEvent.java +++ b/src/main/java/net/minecraftforge/client/event/ViewportEvent.java @@ -30,7 +30,7 @@ import org.jetbrains.annotations.ApiStatus; * @see ComputeCameraAngles * @see ComputeFov */ -public abstract class ViewportEvent extends Event { +public abstract sealed class ViewportEvent extends Event { private final GameRenderer renderer; private final Camera camera; private final double partialTick; @@ -73,7 +73,7 @@ public abstract class ViewportEvent extends Event { * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ @Cancelable - public static class RenderFog extends ViewportEvent { + public static final class RenderFog extends ViewportEvent { private final FogMode mode; private final FogType type; private float farPlaneDistance; @@ -182,7 +182,7 @@ public abstract class ViewportEvent extends Event { *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class ComputeFogColor extends ViewportEvent { + public static final class ComputeFogColor extends ViewportEvent { private float red; private float green; private float blue; @@ -254,7 +254,7 @@ public abstract class ViewportEvent extends Event { *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ - public static class ComputeCameraAngles extends ViewportEvent { + public static final class ComputeCameraAngles extends ViewportEvent { private float yaw; private float pitch; private float roll; @@ -327,7 +327,7 @@ public abstract class ViewportEvent extends Event { * * @see ComputeFovModifierEvent */ - public static class ComputeFov extends ViewportEvent { + public static final class ComputeFov extends ViewportEvent { private final boolean usedConfiguredFov; private float fov; diff --git a/src/main/java/net/minecraftforge/client/event/sound/PlaySoundEvent.java b/src/main/java/net/minecraftforge/client/event/sound/PlaySoundEvent.java index 6cd191a76e..e285340bce 100644 --- a/src/main/java/net/minecraftforge/client/event/sound/PlaySoundEvent.java +++ b/src/main/java/net/minecraftforge/client/event/sound/PlaySoundEvent.java @@ -27,7 +27,7 @@ import org.jetbrains.annotations.Nullable; * @see PlaySoundSourceEvent * @see PlayStreamingSourceEvent */ -public class PlaySoundEvent extends SoundEvent +public final class PlaySoundEvent extends SoundEvent { private final String name; private final SoundInstance originalSound; diff --git a/src/main/java/net/minecraftforge/client/event/sound/PlaySoundSourceEvent.java b/src/main/java/net/minecraftforge/client/event/sound/PlaySoundSourceEvent.java index 404c5a9688..00d512e929 100644 --- a/src/main/java/net/minecraftforge/client/event/sound/PlaySoundSourceEvent.java +++ b/src/main/java/net/minecraftforge/client/event/sound/PlaySoundSourceEvent.java @@ -26,7 +26,7 @@ import org.jetbrains.annotations.ApiStatus; * * @see PlayStreamingSourceEvent */ -public class PlaySoundSourceEvent extends SoundSourceEvent +public final class PlaySoundSourceEvent extends SoundSourceEvent { @ApiStatus.Internal public PlaySoundSourceEvent(SoundEngine engine, SoundInstance sound, Channel channel) diff --git a/src/main/java/net/minecraftforge/client/event/sound/PlayStreamingSourceEvent.java b/src/main/java/net/minecraftforge/client/event/sound/PlayStreamingSourceEvent.java index abdab79e69..79f4f9f7f7 100644 --- a/src/main/java/net/minecraftforge/client/event/sound/PlayStreamingSourceEvent.java +++ b/src/main/java/net/minecraftforge/client/event/sound/PlayStreamingSourceEvent.java @@ -26,7 +26,7 @@ import org.jetbrains.annotations.ApiStatus; * * @see PlayStreamingSourceEvent */ -public class PlayStreamingSourceEvent extends SoundSourceEvent +public final class PlayStreamingSourceEvent extends SoundSourceEvent { @ApiStatus.Internal public PlayStreamingSourceEvent(SoundEngine engine, SoundInstance sound, Channel channel) diff --git a/src/main/java/net/minecraftforge/client/event/sound/SoundEngineLoadEvent.java b/src/main/java/net/minecraftforge/client/event/sound/SoundEngineLoadEvent.java index bc7907fd03..bacf5ba33d 100644 --- a/src/main/java/net/minecraftforge/client/event/sound/SoundEngineLoadEvent.java +++ b/src/main/java/net/minecraftforge/client/event/sound/SoundEngineLoadEvent.java @@ -21,7 +21,7 @@ import org.jetbrains.annotations.ApiStatus; *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * only on the {@linkplain LogicalSide#CLIENT logical client}.

*/ -public class SoundEngineLoadEvent extends SoundEvent implements IModBusEvent +public final class SoundEngineLoadEvent extends SoundEvent implements IModBusEvent { @ApiStatus.Internal public SoundEngineLoadEvent(SoundEngine manager) diff --git a/src/main/java/net/minecraftforge/data/event/GatherDataEvent.java b/src/main/java/net/minecraftforge/data/event/GatherDataEvent.java index b24145f815..37a53c3482 100644 --- a/src/main/java/net/minecraftforge/data/event/GatherDataEvent.java +++ b/src/main/java/net/minecraftforge/data/event/GatherDataEvent.java @@ -25,7 +25,7 @@ import java.util.concurrent.CompletableFuture; import java.util.function.Function; import java.util.stream.Collectors; -public class GatherDataEvent extends Event implements IModBusEvent +public final class GatherDataEvent extends Event implements IModBusEvent { private final DataGenerator dataGenerator; private final DataGeneratorConfig config; @@ -54,7 +54,7 @@ public class GatherDataEvent extends Event implements IModBusEvent public boolean includeReports() { return this.config.reports; } public boolean validate() { return this.config.validate; } - public static class DataGeneratorConfig { + public static final class DataGeneratorConfig { private final Set mods; private final Path path; private final Collection inputs; diff --git a/src/main/java/net/minecraftforge/event/AddPackFindersEvent.java b/src/main/java/net/minecraftforge/event/AddPackFindersEvent.java index 5f5b0d4391..cb43d9c04a 100644 --- a/src/main/java/net/minecraftforge/event/AddPackFindersEvent.java +++ b/src/main/java/net/minecraftforge/event/AddPackFindersEvent.java @@ -16,7 +16,7 @@ import java.util.function.Consumer; /** * Fired on {@link PackRepository} creation to allow mods to add new pack finders. */ -public class AddPackFindersEvent extends Event implements IModBusEvent { +public final class AddPackFindersEvent extends Event implements IModBusEvent { private final PackType packType; private final Consumer sources; diff --git a/src/main/java/net/minecraftforge/event/AddReloadListenerEvent.java b/src/main/java/net/minecraftforge/event/AddReloadListenerEvent.java index bc78f32a1a..9e2a36e2ae 100644 --- a/src/main/java/net/minecraftforge/event/AddReloadListenerEvent.java +++ b/src/main/java/net/minecraftforge/event/AddReloadListenerEvent.java @@ -29,7 +29,7 @@ import java.util.concurrent.Executor; * The event is fired on each reload and lets modders add their own ReloadListeners, for server-side resources. * The event is fired on the {@link MinecraftForge#EVENT_BUS} */ -public class AddReloadListenerEvent extends Event { +public final class AddReloadListenerEvent extends Event { private final List listeners = new ArrayList<>(); private final ReloadableServerResources serverResources; diff --git a/src/main/java/net/minecraftforge/event/AnvilUpdateEvent.java b/src/main/java/net/minecraftforge/event/AnvilUpdateEvent.java index 2fc290cdaa..586fac224e 100644 --- a/src/main/java/net/minecraftforge/event/AnvilUpdateEvent.java +++ b/src/main/java/net/minecraftforge/event/AnvilUpdateEvent.java @@ -21,7 +21,7 @@ import org.jetbrains.annotations.Nullable; * if the output is empty, and the event is not canceled, vanilla behavior will execute.
*/ @Cancelable -public class AnvilUpdateEvent extends Event { +public final class AnvilUpdateEvent extends Event { private final ItemStack left; private final ItemStack right; private final String name; diff --git a/src/main/java/net/minecraftforge/event/CommandEvent.java b/src/main/java/net/minecraftforge/event/CommandEvent.java index 8735aef857..0eda4bafaa 100644 --- a/src/main/java/net/minecraftforge/event/CommandEvent.java +++ b/src/main/java/net/minecraftforge/event/CommandEvent.java @@ -25,7 +25,7 @@ import org.jetbrains.annotations.Nullable; * only on the {@linkplain LogicalSide#SERVER logical server}. **/ @Cancelable -public class CommandEvent extends Event +public final class CommandEvent extends Event { private ParseResults parse; @Nullable diff --git a/src/main/java/net/minecraftforge/event/DifficultyChangeEvent.java b/src/main/java/net/minecraftforge/event/DifficultyChangeEvent.java index 5421e2f6e3..8d01ca383d 100644 --- a/src/main/java/net/minecraftforge/event/DifficultyChangeEvent.java +++ b/src/main/java/net/minecraftforge/event/DifficultyChangeEvent.java @@ -19,7 +19,7 @@ import net.minecraftforge.eventbus.api.Event; *
* This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ -public class DifficultyChangeEvent extends Event { +public final class DifficultyChangeEvent extends Event { private final Difficulty difficulty; private final Difficulty oldDifficulty; diff --git a/src/main/java/net/minecraftforge/event/GameShuttingDownEvent.java b/src/main/java/net/minecraftforge/event/GameShuttingDownEvent.java index 56169689ec..e40d177918 100644 --- a/src/main/java/net/minecraftforge/event/GameShuttingDownEvent.java +++ b/src/main/java/net/minecraftforge/event/GameShuttingDownEvent.java @@ -17,7 +17,7 @@ import net.minecraftforge.eventbus.api.Event; * * @author Curle */ -public class GameShuttingDownEvent extends Event +public final class GameShuttingDownEvent extends Event { public GameShuttingDownEvent() {} } diff --git a/src/main/java/net/minecraftforge/event/GatherComponentsEvent.java b/src/main/java/net/minecraftforge/event/GatherComponentsEvent.java index 778a579521..82c57475d3 100644 --- a/src/main/java/net/minecraftforge/event/GatherComponentsEvent.java +++ b/src/main/java/net/minecraftforge/event/GatherComponentsEvent.java @@ -18,7 +18,7 @@ import javax.annotation.Nullable; Where all the events fore Gathering Components will exist. */ -public abstract class GatherComponentsEvent extends Event { +public abstract sealed class GatherComponentsEvent extends Event { private final DataComponentMap.Builder components = DataComponentMap.builder(); private final DataComponentMap originalComponents; private final Object owner; @@ -54,7 +54,7 @@ public abstract class GatherComponentsEvent extends Event { * * References in {@link net.minecraft.world.item.Items} may not be valid at the current time. */ - public static class Item extends GatherComponentsEvent { + public static final class Item extends GatherComponentsEvent { public Item(net.minecraft.world.item.Item item, DataComponentMap dataComponents) { super(item, dataComponents); } diff --git a/src/main/java/net/minecraftforge/event/GrindstoneEvent.java b/src/main/java/net/minecraftforge/event/GrindstoneEvent.java index b73acec05a..6574ae2c88 100644 --- a/src/main/java/net/minecraftforge/event/GrindstoneEvent.java +++ b/src/main/java/net/minecraftforge/event/GrindstoneEvent.java @@ -11,7 +11,7 @@ import net.minecraft.world.item.ItemStack; import net.minecraftforge.eventbus.api.Cancelable; import net.minecraftforge.eventbus.api.Event; -public abstract class GrindstoneEvent extends Event +public abstract sealed class GrindstoneEvent extends Event { private final ItemStack top; private final ItemStack bottom; @@ -79,7 +79,7 @@ public abstract class GrindstoneEvent extends Event * */ @Cancelable - public static class OnPlaceItem extends GrindstoneEvent + public static final class OnPlaceItem extends GrindstoneEvent { private ItemStack output; @@ -119,7 +119,7 @@ public abstract class GrindstoneEvent extends Event * if the amount of experience is larger than or equal 0, the vanilla behavior for calculating experience will not run.
*/ @Cancelable - public static class OnTakeItem extends GrindstoneEvent + public static final class OnTakeItem extends GrindstoneEvent { private ItemStack newTop = ItemStack.EMPTY; private ItemStack newBottom = ItemStack.EMPTY; diff --git a/src/main/java/net/minecraftforge/event/ItemStackedOnOtherEvent.java b/src/main/java/net/minecraftforge/event/ItemStackedOnOtherEvent.java index dc82ca6d30..1c41c33db3 100644 --- a/src/main/java/net/minecraftforge/event/ItemStackedOnOtherEvent.java +++ b/src/main/java/net/minecraftforge/event/ItemStackedOnOtherEvent.java @@ -34,7 +34,7 @@ import org.jetbrains.annotations.ApiStatus; * This also means that the two vanilla checks described above will not be called. */ @Cancelable -public class ItemStackedOnOtherEvent extends Event +public final class ItemStackedOnOtherEvent extends Event { private final ItemStack carriedItem; private final ItemStack stackedOnItem; diff --git a/src/main/java/net/minecraftforge/event/LootTableLoadEvent.java b/src/main/java/net/minecraftforge/event/LootTableLoadEvent.java index 6da674f6f5..8b43dac0c1 100644 --- a/src/main/java/net/minecraftforge/event/LootTableLoadEvent.java +++ b/src/main/java/net/minecraftforge/event/LootTableLoadEvent.java @@ -24,7 +24,7 @@ import net.minecraftforge.fml.LogicalSide; * only on the {@linkplain LogicalSide#SERVER logical server}.

*/ @Cancelable -public class LootTableLoadEvent extends Event +public final class LootTableLoadEvent extends Event { private final ResourceLocation name; private LootTable table; diff --git a/src/main/java/net/minecraftforge/event/ModMismatchEvent.java b/src/main/java/net/minecraftforge/event/ModMismatchEvent.java index 8d3bdd146e..ede6b53390 100644 --- a/src/main/java/net/minecraftforge/event/ModMismatchEvent.java +++ b/src/main/java/net/minecraftforge/event/ModMismatchEvent.java @@ -39,7 +39,7 @@ import java.util.stream.Stream; *

This event is fired on the {@linkplain FMLJavaModLoadingContext#getModEventBus() mod-specific event bus}, * on both {@linkplain LogicalSide logical sides}.

*/ -public class ModMismatchEvent extends Event implements IModBusEvent +public final class ModMismatchEvent extends Event implements IModBusEvent { /** * The level being loaded. Useful for things like {@link net.minecraft.world.level.storage.DimensionDataStorage} diff --git a/src/main/java/net/minecraftforge/event/OnDatapackSyncEvent.java b/src/main/java/net/minecraftforge/event/OnDatapackSyncEvent.java index a52cbd28d0..031b6c9220 100644 --- a/src/main/java/net/minecraftforge/event/OnDatapackSyncEvent.java +++ b/src/main/java/net/minecraftforge/event/OnDatapackSyncEvent.java @@ -17,7 +17,7 @@ import java.util.List; * before tags and crafting recipes are sent to the client. Send datapack data * to clients when this event fires. */ -public class OnDatapackSyncEvent extends Event { +public final class OnDatapackSyncEvent extends Event { private final PlayerList playerList; @Nullable diff --git a/src/main/java/net/minecraftforge/event/PlayLevelSoundEvent.java b/src/main/java/net/minecraftforge/event/PlayLevelSoundEvent.java index abddb13e69..94af2abe84 100644 --- a/src/main/java/net/minecraftforge/event/PlayLevelSoundEvent.java +++ b/src/main/java/net/minecraftforge/event/PlayLevelSoundEvent.java @@ -38,7 +38,7 @@ import java.util.Objects; * This event is fired on the {@link MinecraftForge#EVENT_BUS}. */ @Cancelable -public class PlayLevelSoundEvent extends Event { +public sealed class PlayLevelSoundEvent extends Event { private final Level level; private final float originalVolume; private final float originalPitch; @@ -149,7 +149,7 @@ public class PlayLevelSoundEvent extends Event { *

* This event is fired on the {@link MinecraftForge#EVENT_BUS}. */ - public static class AtEntity extends PlayLevelSoundEvent { + public static final class AtEntity extends PlayLevelSoundEvent { private final Entity entity; public AtEntity(Level level, @Nullable Entity entity, Holder sound, SoundSource source, float volume, float pitch) { @@ -176,7 +176,7 @@ public class PlayLevelSoundEvent extends Event { *

* This event is fired on the {@link MinecraftForge#EVENT_BUS}. */ - public static class AtPosition extends PlayLevelSoundEvent { + public static final class AtPosition extends PlayLevelSoundEvent { private final Vec3 position; public AtPosition(Level level, Vec3 position, Holder sound, SoundSource source, float volume, float pitch) { diff --git a/src/main/java/net/minecraftforge/event/RegisterCommandsEvent.java b/src/main/java/net/minecraftforge/event/RegisterCommandsEvent.java index e58e3405a2..0824aa3d78 100644 --- a/src/main/java/net/minecraftforge/event/RegisterCommandsEvent.java +++ b/src/main/java/net/minecraftforge/event/RegisterCommandsEvent.java @@ -21,7 +21,7 @@ import net.minecraft.commands.Commands; * * The event is fired on the {@link MinecraftForge#EVENT_BUS} */ -public class RegisterCommandsEvent extends Event +public final class RegisterCommandsEvent extends Event { private final CommandDispatcher dispatcher; private final Commands.CommandSelection environment; diff --git a/src/main/java/net/minecraftforge/event/RegisterStructureConversionsEvent.java b/src/main/java/net/minecraftforge/event/RegisterStructureConversionsEvent.java index 1be8b28e78..21f979f546 100644 --- a/src/main/java/net/minecraftforge/event/RegisterStructureConversionsEvent.java +++ b/src/main/java/net/minecraftforge/event/RegisterStructureConversionsEvent.java @@ -35,7 +35,7 @@ import com.google.common.base.Preconditions; * @see StructuresBecomeConfiguredFix * @see #register(String, StructuresBecomeConfiguredFix.Conversion) */ -public class RegisterStructureConversionsEvent extends Event +public final class RegisterStructureConversionsEvent extends Event { private final Map map; diff --git a/src/main/java/net/minecraftforge/event/ServerChatEvent.java b/src/main/java/net/minecraftforge/event/ServerChatEvent.java index 7738eced2d..820b883c5b 100644 --- a/src/main/java/net/minecraftforge/event/ServerChatEvent.java +++ b/src/main/java/net/minecraftforge/event/ServerChatEvent.java @@ -26,7 +26,7 @@ import org.jetbrains.annotations.ApiStatus; * only on the {@linkplain LogicalSide#SERVER logical server}. **/ @Cancelable -public class ServerChatEvent extends Event { +public final class ServerChatEvent extends Event { private final ServerPlayer player; private final String username; private final String rawText; diff --git a/src/main/java/net/minecraftforge/event/TagsUpdatedEvent.java b/src/main/java/net/minecraftforge/event/TagsUpdatedEvent.java index f41e7ea46e..f93cb487f0 100644 --- a/src/main/java/net/minecraftforge/event/TagsUpdatedEvent.java +++ b/src/main/java/net/minecraftforge/event/TagsUpdatedEvent.java @@ -11,7 +11,7 @@ import net.minecraftforge.eventbus.api.Event; /** * Fired when tags are updated on either server or client. This event can be used to refresh data that depends on tags. */ -public class TagsUpdatedEvent extends Event +public final class TagsUpdatedEvent extends Event { private final RegistryAccess registryAccess; private final UpdateCause updateCause; diff --git a/src/main/java/net/minecraftforge/event/TickEvent.java b/src/main/java/net/minecraftforge/event/TickEvent.java index b9235fa9b6..e03a00eb95 100644 --- a/src/main/java/net/minecraftforge/event/TickEvent.java +++ b/src/main/java/net/minecraftforge/event/TickEvent.java @@ -16,13 +16,13 @@ import net.minecraft.world.level.Level; import net.minecraftforge.eventbus.api.Event; import net.minecraftforge.fml.LogicalSide; -public class TickEvent extends Event { +public sealed class TickEvent extends Event { public enum Type { - LEVEL, PLAYER, CLIENT, SERVER, RENDER; + LEVEL, PLAYER, CLIENT, SERVER, RENDER } public enum Phase { - START, END; + START, END } public final Type type; @@ -35,7 +35,7 @@ public class TickEvent extends Event { this.phase = phase; } - public static class ServerTickEvent extends TickEvent { + public static sealed class ServerTickEvent extends TickEvent { private final BooleanSupplier haveTime; private final MinecraftServer server; @@ -61,38 +61,38 @@ public class TickEvent extends Event { return server; } - public static class Pre extends ServerTickEvent { + public static final class Pre extends ServerTickEvent { public Pre(BooleanSupplier haveTime, MinecraftServer server) { super(haveTime, server, Phase.START); } } - public static class Post extends ServerTickEvent { + public static final class Post extends ServerTickEvent { public Post(BooleanSupplier haveTime, MinecraftServer server) { super(haveTime, server, Phase.END); } } } - public static class ClientTickEvent extends TickEvent { + public static sealed class ClientTickEvent extends TickEvent { protected ClientTickEvent(Phase phase) { super(Type.CLIENT, LogicalSide.CLIENT, phase); } - public static class Pre extends ClientTickEvent { + public static final class Pre extends ClientTickEvent { public Pre() { super(Phase.START); } } - public static class Post extends ClientTickEvent { + public static final class Post extends ClientTickEvent { public Post() { super(Phase.END); } } } - public static class LevelTickEvent extends TickEvent { + public static sealed class LevelTickEvent extends TickEvent { public final Level level; private final BooleanSupplier haveTime; @@ -112,20 +112,20 @@ public class TickEvent extends Event { return this.haveTime.getAsBoolean(); } - public static class Pre extends LevelTickEvent { + public static final class Pre extends LevelTickEvent { public Pre(LogicalSide side, Level level, BooleanSupplier haveTime) { super(side, level, haveTime, Phase.START); } } - public static class Post extends LevelTickEvent { + public static final class Post extends LevelTickEvent { public Post(LogicalSide side, Level level, BooleanSupplier haveTime) { super(side, level, haveTime, Phase.END); } } } - public static class PlayerTickEvent extends TickEvent { + public static sealed class PlayerTickEvent extends TickEvent { public final Player player; protected PlayerTickEvent(Player player, Phase phase) { @@ -133,20 +133,20 @@ public class TickEvent extends Event { this.player = player; } - public static class Pre extends PlayerTickEvent { + public static final class Pre extends PlayerTickEvent { public Pre(Player player) { super(player, Phase.START); } } - public static class Post extends PlayerTickEvent { + public static final class Post extends PlayerTickEvent { public Post(Player player) { super(player, Phase.END); } } } - public static class RenderTickEvent extends TickEvent { + public static sealed class RenderTickEvent extends TickEvent { private final DeltaTracker timer; private RenderTickEvent(Phase phase, DeltaTracker timer) { @@ -158,13 +158,13 @@ public class TickEvent extends Event { return this.timer; } - public static class Pre extends RenderTickEvent { + public static final class Pre extends RenderTickEvent { public Pre(DeltaTracker timer) { super(Phase.START, timer); } } - public static class Post extends RenderTickEvent { + public static final class Post extends RenderTickEvent { public Post(DeltaTracker timer) { super(Phase.END, timer); } diff --git a/src/main/java/net/minecraftforge/event/VanillaGameEvent.java b/src/main/java/net/minecraftforge/event/VanillaGameEvent.java index 904c127151..3059985b62 100644 --- a/src/main/java/net/minecraftforge/event/VanillaGameEvent.java +++ b/src/main/java/net/minecraftforge/event/VanillaGameEvent.java @@ -24,7 +24,7 @@ import org.jetbrains.annotations.Nullable; * Cancel this event to prevent Vanilla from posting the {@link GameEvent} to all nearby {@link net.minecraft.world.level.gameevent.GameEventListener GameEventListeners}. **/ @Cancelable -public class VanillaGameEvent extends Event +public final class VanillaGameEvent extends Event { private final Level level; private final GameEvent vanillaEvent; diff --git a/src/main/java/net/minecraftforge/event/brewing/BrewingRecipeRegisterEvent.java b/src/main/java/net/minecraftforge/event/brewing/BrewingRecipeRegisterEvent.java index 679c8141e3..73f62ad5ae 100644 --- a/src/main/java/net/minecraftforge/event/brewing/BrewingRecipeRegisterEvent.java +++ b/src/main/java/net/minecraftforge/event/brewing/BrewingRecipeRegisterEvent.java @@ -15,7 +15,7 @@ import net.minecraftforge.common.brewing.BrewingRecipe; import net.minecraftforge.common.brewing.IBrewingRecipe; import net.minecraftforge.eventbus.api.Event; -public class BrewingRecipeRegisterEvent extends Event { +public final class BrewingRecipeRegisterEvent extends Event { private final PotionBrewing.Builder builder; private final FeatureFlagSet features; diff --git a/src/main/java/net/minecraftforge/event/brewing/PlayerBrewedPotionEvent.java b/src/main/java/net/minecraftforge/event/brewing/PlayerBrewedPotionEvent.java index aa28d06578..4e1a4b0077 100644 --- a/src/main/java/net/minecraftforge/event/brewing/PlayerBrewedPotionEvent.java +++ b/src/main/java/net/minecraftforge/event/brewing/PlayerBrewedPotionEvent.java @@ -13,7 +13,7 @@ import org.jetbrains.annotations.NotNull; /** * This event is called when a player picks up a potion from a brewing stand. */ -public class PlayerBrewedPotionEvent extends PlayerEvent +public final class PlayerBrewedPotionEvent extends PlayerEvent { private final ItemStack stack; diff --git a/src/main/java/net/minecraftforge/event/brewing/PotionBrewEvent.java b/src/main/java/net/minecraftforge/event/brewing/PotionBrewEvent.java index 5aa40951b4..e7bd7fc4ad 100644 --- a/src/main/java/net/minecraftforge/event/brewing/PotionBrewEvent.java +++ b/src/main/java/net/minecraftforge/event/brewing/PotionBrewEvent.java @@ -12,9 +12,9 @@ import net.minecraftforge.eventbus.api.Cancelable; import net.minecraftforge.eventbus.api.Event; import org.jetbrains.annotations.NotNull; -public class PotionBrewEvent extends Event +public sealed class PotionBrewEvent extends Event { - private NonNullList stacks; + private final NonNullList stacks; protected PotionBrewEvent(NonNullList stacks) { @@ -59,7 +59,7 @@ public class PotionBrewEvent extends Event * If this event is canceled, and items have been modified, PotionBrewEvent.Post will automatically be fired. **/ @Cancelable - public static class Pre extends PotionBrewEvent + public static final class Pre extends PotionBrewEvent { public Pre(NonNullList stacks) { @@ -80,7 +80,7 @@ public class PotionBrewEvent extends Event *
* This event is fired on the {@link MinecraftForge#EVENT_BUS}.
**/ - public static class Post extends PotionBrewEvent + public static final class Post extends PotionBrewEvent { public Post(NonNullList stacks) { diff --git a/src/main/java/net/minecraftforge/event/enchanting/EnchantmentLevelSetEvent.java b/src/main/java/net/minecraftforge/event/enchanting/EnchantmentLevelSetEvent.java index c95b83064c..5472f57d9f 100644 --- a/src/main/java/net/minecraftforge/event/enchanting/EnchantmentLevelSetEvent.java +++ b/src/main/java/net/minecraftforge/event/enchanting/EnchantmentLevelSetEvent.java @@ -18,7 +18,7 @@ import org.jetbrains.annotations.NotNull; * from 0-15 and indicates how many bookshelves surround the enchanting table. The {@link #itemStack} representing the item being * enchanted is also available. */ -public class EnchantmentLevelSetEvent extends net.minecraftforge.eventbus.api.Event +public final class EnchantmentLevelSetEvent extends net.minecraftforge.eventbus.api.Event { private final Level level; private final BlockPos pos; diff --git a/src/main/java/net/minecraftforge/event/entity/EntityAttributeCreationEvent.java b/src/main/java/net/minecraftforge/event/entity/EntityAttributeCreationEvent.java index 1ad31cb0d5..c889c205cd 100644 --- a/src/main/java/net/minecraftforge/event/entity/EntityAttributeCreationEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/EntityAttributeCreationEvent.java @@ -21,7 +21,7 @@ import net.minecraftforge.fml.event.IModBusEvent; *
* Fired on the Mod bus {@link IModBusEvent}.
**/ -public class EntityAttributeCreationEvent extends Event implements IModBusEvent { +public final class EntityAttributeCreationEvent extends Event implements IModBusEvent { private final Map, AttributeSupplier> map; public EntityAttributeCreationEvent(Map, AttributeSupplier> map) { diff --git a/src/main/java/net/minecraftforge/event/entity/EntityAttributeModificationEvent.java b/src/main/java/net/minecraftforge/event/entity/EntityAttributeModificationEvent.java index 9bc920b902..56d12c853a 100644 --- a/src/main/java/net/minecraftforge/event/entity/EntityAttributeModificationEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/EntityAttributeModificationEvent.java @@ -28,7 +28,7 @@ import java.util.stream.Collectors; *
* Fired on the Mod bus {@link IModBusEvent}.
**/ -public class EntityAttributeModificationEvent extends Event implements IModBusEvent { +public final class EntityAttributeModificationEvent extends Event implements IModBusEvent { private final Map, AttributeSupplier.Builder> entityAttributes; private final List> entityTypes; diff --git a/src/main/java/net/minecraftforge/event/entity/EntityEvent.java b/src/main/java/net/minecraftforge/event/entity/EntityEvent.java index c3ef704e4c..bf4770c1e1 100644 --- a/src/main/java/net/minecraftforge/event/entity/EntityEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/EntityEvent.java @@ -40,7 +40,7 @@ public class EntityEvent extends Event { *
* This event is fired on the {@link MinecraftForge#EVENT_BUS}.
**/ - public static class EntityConstructing extends EntityEvent { + public static final class EntityConstructing extends EntityEvent { public EntityConstructing(Entity entity) { super(entity); } @@ -58,7 +58,7 @@ public class EntityEvent extends Event { *
* This event is fired on the {@link net.minecraftforge.common.MinecraftForge#EVENT_BUS}.
**/ - public static class EnteringSection extends EntityEvent { + public static final class EnteringSection extends EntityEvent { private final long packedOldPos; private final long packedNewPos; diff --git a/src/main/java/net/minecraftforge/event/entity/EntityJoinLevelEvent.java b/src/main/java/net/minecraftforge/event/entity/EntityJoinLevelEvent.java index ffdcf1ae84..201ef66dfd 100644 --- a/src/main/java/net/minecraftforge/event/entity/EntityJoinLevelEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/EntityJoinLevelEvent.java @@ -27,7 +27,7 @@ import net.minecraftforge.fml.LogicalSide; * on both logical sides. **/ @Cancelable -public class EntityJoinLevelEvent extends EntityEvent { +public final class EntityJoinLevelEvent extends EntityEvent { private final Level level; private final boolean loadedFromDisk; diff --git a/src/main/java/net/minecraftforge/event/entity/EntityLeaveLevelEvent.java b/src/main/java/net/minecraftforge/event/entity/EntityLeaveLevelEvent.java index 72faf077c0..589185c32d 100644 --- a/src/main/java/net/minecraftforge/event/entity/EntityLeaveLevelEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/EntityLeaveLevelEvent.java @@ -20,7 +20,7 @@ import net.minecraftforge.eventbus.api.Cancelable; * This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus} * on both logical sides. **/ -public class EntityLeaveLevelEvent extends EntityEvent { +public final class EntityLeaveLevelEvent extends EntityEvent { private final Level level; public EntityLeaveLevelEvent(Entity entity, Level level) { diff --git a/src/main/java/net/minecraftforge/event/entity/EntityMobGriefingEvent.java b/src/main/java/net/minecraftforge/event/entity/EntityMobGriefingEvent.java index de076313bc..f1d02b7547 100644 --- a/src/main/java/net/minecraftforge/event/entity/EntityMobGriefingEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/EntityMobGriefingEvent.java @@ -22,7 +22,7 @@ import net.minecraftforge.eventbus.api.Event.HasResult; * This event is fired on the {@link MinecraftForge#EVENT_BUS}. */ @HasResult -public class EntityMobGriefingEvent extends EntityEvent +public final class EntityMobGriefingEvent extends EntityEvent { public EntityMobGriefingEvent(Entity entity) { diff --git a/src/main/java/net/minecraftforge/event/entity/EntityMountEvent.java b/src/main/java/net/minecraftforge/event/entity/EntityMountEvent.java index 5ec521cc10..3f62a60f4a 100644 --- a/src/main/java/net/minecraftforge/event/entity/EntityMountEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/EntityMountEvent.java @@ -25,7 +25,7 @@ import net.minecraftforge.eventbus.api.Cancelable; */ @Cancelable -public class EntityMountEvent extends EntityEvent +public final class EntityMountEvent extends EntityEvent { private final Entity entityMounting; diff --git a/src/main/java/net/minecraftforge/event/entity/EntityStruckByLightningEvent.java b/src/main/java/net/minecraftforge/event/entity/EntityStruckByLightningEvent.java index ef43aa1751..f228b91c5e 100644 --- a/src/main/java/net/minecraftforge/event/entity/EntityStruckByLightningEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/EntityStruckByLightningEvent.java @@ -26,7 +26,7 @@ import net.minecraftforge.eventbus.api.Cancelable; * This event is fired on the {@link MinecraftForge#EVENT_BUS}.
**/ @net.minecraftforge.eventbus.api.Cancelable -public class EntityStruckByLightningEvent extends EntityEvent +public final class EntityStruckByLightningEvent extends EntityEvent { private final LightningBolt lightning; diff --git a/src/main/java/net/minecraftforge/event/entity/EntityTeleportEvent.java b/src/main/java/net/minecraftforge/event/entity/EntityTeleportEvent.java index 4c90fac526..6f9360c001 100644 --- a/src/main/java/net/minecraftforge/event/entity/EntityTeleportEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/EntityTeleportEvent.java @@ -29,7 +29,7 @@ import org.jetbrains.annotations.Nullable; * All children of this event are fired on the {@link MinecraftForge#EVENT_BUS}.
**/ @Cancelable -public class EntityTeleportEvent extends EntityEvent +public sealed class EntityTeleportEvent extends EntityEvent { protected double targetX; protected double targetY; @@ -70,7 +70,7 @@ public class EntityTeleportEvent extends EntityEvent * If this event is canceled, the entity will not be teleported. */ @Cancelable - public static class TeleportCommand extends EntityTeleportEvent + public static final class TeleportCommand extends EntityTeleportEvent { public TeleportCommand(Entity entity, double targetX, double targetY, double targetZ) { @@ -94,7 +94,7 @@ public class EntityTeleportEvent extends EntityEvent * If this event is canceled, the entity will not be teleported. */ @Cancelable - public static class SpreadPlayersCommand extends EntityTeleportEvent + public static final class SpreadPlayersCommand extends EntityTeleportEvent { public SpreadPlayersCommand(Entity entity, double targetX, double targetY, double targetZ) { @@ -117,7 +117,7 @@ public class EntityTeleportEvent extends EntityEvent * If this event is canceled, the entity will not be teleported. */ @Cancelable - public static class EnderEntity extends EntityTeleportEvent + public static final class EnderEntity extends EntityTeleportEvent { private final LivingEntity entityLiving; @@ -148,7 +148,7 @@ public class EntityTeleportEvent extends EntityEvent * If this event is canceled, the entity will not be teleported. */ @Cancelable - public static class EnderPearl extends EntityTeleportEvent + public static final class EnderPearl extends EntityTeleportEvent { private final ServerPlayer player; private final ThrownEnderpearl pearlEntity; @@ -207,7 +207,7 @@ public class EntityTeleportEvent extends EntityEvent * If this event is canceled, the entity will not be teleported. */ @Cancelable - public static class ChorusFruit extends EntityTeleportEvent + public static final class ChorusFruit extends EntityTeleportEvent { private final LivingEntity entityLiving; diff --git a/src/main/java/net/minecraftforge/event/entity/EntityTravelToDimensionEvent.java b/src/main/java/net/minecraftforge/event/entity/EntityTravelToDimensionEvent.java index c29709732a..9f37d3c50a 100644 --- a/src/main/java/net/minecraftforge/event/entity/EntityTravelToDimensionEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/EntityTravelToDimensionEvent.java @@ -24,7 +24,7 @@ import net.minecraftforge.eventbus.api.Cancelable; * This event is fired on the {@link MinecraftForge#EVENT_BUS}.
**/ @Cancelable -public class EntityTravelToDimensionEvent extends EntityEvent +public final class EntityTravelToDimensionEvent extends EntityEvent { private final ResourceKey dimension; diff --git a/src/main/java/net/minecraftforge/event/entity/ProjectileImpactEvent.java b/src/main/java/net/minecraftforge/event/entity/ProjectileImpactEvent.java index d2ed1bc1c9..f206668b77 100644 --- a/src/main/java/net/minecraftforge/event/entity/ProjectileImpactEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/ProjectileImpactEvent.java @@ -22,7 +22,7 @@ import java.util.Objects; * You can also directly set the {@link ImpactResult} to change the impact behaviour. * @see #setImpactResult(ImpactResult) */ -public class ProjectileImpactEvent extends EntityEvent { +public final class ProjectileImpactEvent extends EntityEvent { private final HitResult ray; private final Projectile projectile; diff --git a/src/main/java/net/minecraftforge/event/entity/SpawnPlacementRegisterEvent.java b/src/main/java/net/minecraftforge/event/entity/SpawnPlacementRegisterEvent.java index 8bbf2e65a7..b033fbc3d9 100644 --- a/src/main/java/net/minecraftforge/event/entity/SpawnPlacementRegisterEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/SpawnPlacementRegisterEvent.java @@ -42,7 +42,7 @@ import org.jetbrains.annotations.ApiStatus; * * Fired on the Mod bus {@link IModBusEvent}.
*/ -public class SpawnPlacementRegisterEvent extends Event implements IModBusEvent { +public final class SpawnPlacementRegisterEvent extends Event implements IModBusEvent { private final Map, MergedSpawnPredicate> map; @ApiStatus.Internal diff --git a/src/main/java/net/minecraftforge/event/entity/item/ItemExpireEvent.java b/src/main/java/net/minecraftforge/event/entity/item/ItemExpireEvent.java index 542597aaf1..8776ee2782 100644 --- a/src/main/java/net/minecraftforge/event/entity/item/ItemExpireEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/item/ItemExpireEvent.java @@ -15,7 +15,7 @@ import net.minecraft.world.entity.item.ItemEntity; * it will add more time to the entities life equal to extraLife. */ @Cancelable -public class ItemExpireEvent extends ItemEvent +public final class ItemExpireEvent extends ItemEvent { private int extraLife; diff --git a/src/main/java/net/minecraftforge/event/entity/item/ItemTossEvent.java b/src/main/java/net/minecraftforge/event/entity/item/ItemTossEvent.java index ac46d68dd6..6444936b31 100644 --- a/src/main/java/net/minecraftforge/event/entity/item/ItemTossEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/item/ItemTossEvent.java @@ -16,7 +16,7 @@ import net.minecraft.world.entity.player.Player; * removed from the inventory - and thus removed from the system. */ @Cancelable -public class ItemTossEvent extends ItemEvent +public final class ItemTossEvent extends ItemEvent { private final Player player; diff --git a/src/main/java/net/minecraftforge/event/entity/living/AnimalTameEvent.java b/src/main/java/net/minecraftforge/event/entity/living/AnimalTameEvent.java index eb949227b7..fb13d2edd2 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/AnimalTameEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/AnimalTameEvent.java @@ -19,7 +19,7 @@ import net.minecraftforge.eventbus.api.Cancelable; * This event is fired on the {@link MinecraftForge#EVENT_BUS}. */ @Cancelable -public class AnimalTameEvent extends LivingEvent +public final class AnimalTameEvent extends LivingEvent { private final Animal animal; private final Player tamer; diff --git a/src/main/java/net/minecraftforge/event/entity/living/BabyEntitySpawnEvent.java b/src/main/java/net/minecraftforge/event/entity/living/BabyEntitySpawnEvent.java index 59d780499a..23235ec38f 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/BabyEntitySpawnEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/BabyEntitySpawnEvent.java @@ -38,7 +38,7 @@ import org.jetbrains.annotations.Nullable; * This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ @Cancelable -public class BabyEntitySpawnEvent extends Event { +public final class BabyEntitySpawnEvent extends Event { private final Mob parentA; private final Mob parentB; private final Player causedByPlayer; diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingAttackEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingAttackEvent.java index 9b8d2c34b1..b87314beea 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingAttackEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingAttackEvent.java @@ -31,7 +31,7 @@ import net.minecraft.world.entity.LivingEntity; * This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ @Cancelable -public class LivingAttackEvent extends LivingEvent +public final class LivingAttackEvent extends LivingEvent { private final DamageSource source; private final float amount; diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingBreatheEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingBreatheEvent.java index bb684a2be4..b3bafb5344 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingBreatheEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingBreatheEvent.java @@ -23,7 +23,7 @@ import net.minecraftforge.eventbus.api.Cancelable; *
* This event is fired on {@link MinecraftForge#EVENT_BUS} */ -public class LivingBreatheEvent extends LivingEvent { +public final class LivingBreatheEvent extends LivingEvent { private boolean canBreathe; private boolean canRefillAir; private int consumeAirAmount; diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingChangeTargetEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingChangeTargetEvent.java index 9e3a3460cb..49e8b0b5bd 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingChangeTargetEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingChangeTargetEvent.java @@ -34,7 +34,7 @@ import net.minecraftforge.eventbus.api.Cancelable; * This event is fired on the {@link MinecraftForge#EVENT_BUS}. */ @Cancelable -public class LivingChangeTargetEvent extends LivingEvent { +public final class LivingChangeTargetEvent extends LivingEvent { private final ILivingTargetType targetType; private final LivingEntity originalTarget; private LivingEntity newTarget; diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingConversionEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingConversionEvent.java index a3242ac876..b4deb7845c 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingConversionEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingConversionEvent.java @@ -25,7 +25,7 @@ import java.util.function.Consumer; * Tadpole -> Frog when it grows up * Mushroom Cow -> Cow when sheared */ -public class LivingConversionEvent extends LivingEvent { +public sealed class LivingConversionEvent extends LivingEvent { public LivingConversionEvent(LivingEntity entity) { super(entity); } @@ -42,7 +42,7 @@ public class LivingConversionEvent extends LivingEvent { * If cancelled, the replacement will not occur */ @Cancelable - public static class Pre extends LivingConversionEvent { + public static final class Pre extends LivingConversionEvent { private final EntityType outcome; private final Consumer timer; @@ -79,7 +79,7 @@ public class LivingConversionEvent extends LivingEvent { * itself with another entity. * The old living entity is likely to be removed right after this event. */ - public static class Post extends LivingConversionEvent { + public static final class Post extends LivingConversionEvent { private final LivingEntity outcome; public Post(LivingEntity entity, LivingEntity outcome) { diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingDamageEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingDamageEvent.java index ad50a93619..1a1d0ff465 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingDamageEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingDamageEvent.java @@ -30,7 +30,7 @@ import net.minecraft.world.entity.LivingEntity; * @see LivingHurtEvent **/ @Cancelable -public class LivingDamageEvent extends LivingEvent +public final class LivingDamageEvent extends LivingEvent { private final DamageSource source; private float amount; diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingDeathEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingDeathEvent.java index c237313100..f900123fb2 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingDeathEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingDeathEvent.java @@ -32,7 +32,7 @@ import net.minecraft.world.entity.LivingEntity; * This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ @Cancelable -public class LivingDeathEvent extends LivingEvent +public final class LivingDeathEvent extends LivingEvent { private final DamageSource source; public LivingDeathEvent(LivingEntity entity, DamageSource source) diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingDestroyBlockEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingDestroyBlockEvent.java index a601d1aec6..09c857ff92 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingDestroyBlockEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingDestroyBlockEvent.java @@ -25,7 +25,7 @@ import net.minecraftforge.eventbus.api.Cancelable; * This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ @Cancelable -public class LivingDestroyBlockEvent extends LivingEvent +public final class LivingDestroyBlockEvent extends LivingEvent { private final BlockPos pos; private final BlockState state; diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingDropsEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingDropsEvent.java index 4f96f9a8c4..82a1b0656d 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingDropsEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingDropsEvent.java @@ -34,7 +34,7 @@ import net.minecraftforge.eventbus.api.Cancelable; * This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ @net.minecraftforge.eventbus.api.Cancelable -public class LivingDropsEvent extends LivingEvent { +public final class LivingDropsEvent extends LivingEvent { private final DamageSource source; private final Collection drops; private final boolean recentlyHit; diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingDrownEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingDrownEvent.java index acbcabd4c1..6af4477914 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingDrownEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingDrownEvent.java @@ -26,7 +26,7 @@ import net.minecraftforge.eventbus.api.Cancelable; * This event is fired on {@link MinecraftForge#EVENT_BUS} **/ @Cancelable -public class LivingDrownEvent extends LivingEvent { +public final class LivingDrownEvent extends LivingEvent { private boolean isDrowning; private float damageAmount; private int bubbleCount; diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingEntityUseItemEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingEntityUseItemEvent.java index 6650ee6c98..e505162d90 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingEntityUseItemEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingEntityUseItemEvent.java @@ -10,7 +10,7 @@ import net.minecraft.world.item.ItemStack; import net.minecraftforge.eventbus.api.Cancelable; import org.jetbrains.annotations.NotNull; -public class LivingEntityUseItemEvent extends LivingEvent +public sealed class LivingEntityUseItemEvent extends LivingEvent { private final ItemStack item; private int duration; @@ -50,7 +50,7 @@ public class LivingEntityUseItemEvent extends LivingEvent * */ @Cancelable - public static class Start extends LivingEntityUseItemEvent + public static final class Start extends LivingEntityUseItemEvent { public Start(LivingEntity entity, @NotNull ItemStack item, int duration) { @@ -65,7 +65,7 @@ public class LivingEntityUseItemEvent extends LivingEvent * */ @Cancelable - public static class Tick extends LivingEntityUseItemEvent + public static final class Tick extends LivingEntityUseItemEvent { public Tick(LivingEntity entity, @NotNull ItemStack item, int duration) { @@ -86,7 +86,7 @@ public class LivingEntityUseItemEvent extends LivingEvent * The only vanilla item this would effect are bows, and it would cause them NOT to fire there arrow. */ @Cancelable - public static class Stop extends LivingEntityUseItemEvent + public static final class Stop extends LivingEntityUseItemEvent { public Stop(LivingEntity entity, @NotNull ItemStack item, int duration) { @@ -106,7 +106,7 @@ public class LivingEntityUseItemEvent extends LivingEvent * The result item stack is the stack that is placed in the player's inventory in replacement of the stack that is currently being used. * */ - public static class Finish extends LivingEntityUseItemEvent + public static final class Finish extends LivingEntityUseItemEvent { private ItemStack result; public Finish(LivingEntity entity, @NotNull ItemStack item, int duration, @NotNull ItemStack result) diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingEquipmentChangeEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingEquipmentChangeEvent.java index 457feea57c..dd919f9a65 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingEquipmentChangeEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingEquipmentChangeEvent.java @@ -28,7 +28,7 @@ import org.jetbrains.annotations.NotNull; *
* This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ -public class LivingEquipmentChangeEvent extends LivingEvent { +public final class LivingEquipmentChangeEvent extends LivingEvent { private final EquipmentSlot slot; private final ItemStack from; private final ItemStack to; diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingEvent.java index cdac9f495a..83032d9994 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingEvent.java @@ -51,7 +51,7 @@ public class LivingEvent extends EntityEvent * This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ @Cancelable - public static class LivingTickEvent extends LivingEvent + public static final class LivingTickEvent extends LivingEvent { public LivingTickEvent(LivingEntity e){ super(e); } } @@ -70,12 +70,12 @@ public class LivingEvent extends EntityEvent *
* This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ - public static class LivingJumpEvent extends LivingEvent + public static final class LivingJumpEvent extends LivingEvent { public LivingJumpEvent(LivingEntity e){ super(e); } } - public static class LivingVisibilityEvent extends LivingEvent + public static final class LivingVisibilityEvent extends LivingEvent { private double visibilityModifier; @Nullable diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingExperienceDropEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingExperienceDropEvent.java index 0e6acc16f1..a7b527947f 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingExperienceDropEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingExperienceDropEvent.java @@ -16,7 +16,7 @@ import org.jetbrains.annotations.Nullable; * by canceling the event. */ @Cancelable -public class LivingExperienceDropEvent extends LivingEvent +public final class LivingExperienceDropEvent extends LivingEvent { @Nullable private final Player attackingPlayer; private final int originalExperiencePoints; diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingFallEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingFallEvent.java index 5381cb2734..8a652444b9 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingFallEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingFallEvent.java @@ -28,7 +28,7 @@ import net.minecraft.world.entity.LivingEntity; * This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ @Cancelable -public class LivingFallEvent extends LivingEvent { +public final class LivingFallEvent extends LivingEvent { private double distance; private float damageMultiplier; diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingGetProjectileEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingGetProjectileEvent.java index effeccf81e..309a67ed4c 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingGetProjectileEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingGetProjectileEvent.java @@ -20,7 +20,7 @@ import net.minecraft.world.item.ItemStack; *

* This event is fired on the {@link net.minecraftforge.common.MinecraftForge#EVENT_BUS}. */ -public class LivingGetProjectileEvent extends LivingEvent +public final class LivingGetProjectileEvent extends LivingEvent { private final ItemStack projectileWeaponItemStack; private ItemStack projectileItemStack; diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingHealEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingHealEvent.java index 93005d2c6d..4d2782ba94 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingHealEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingHealEvent.java @@ -26,7 +26,7 @@ import net.minecraft.world.entity.LivingEntity; * This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ @Cancelable -public class LivingHealEvent extends LivingEvent +public final class LivingHealEvent extends LivingEvent { private float amount; public LivingHealEvent(LivingEntity entity, float amount) diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingHurtEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingHurtEvent.java index a107c96816..7c5ced3075 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingHurtEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingHurtEvent.java @@ -31,7 +31,7 @@ import net.minecraftforge.eventbus.api.Cancelable; * @see LivingDamageEvent **/ @net.minecraftforge.eventbus.api.Cancelable -public class LivingHurtEvent extends LivingEvent +public final class LivingHurtEvent extends LivingEvent { private final DamageSource source; private float amount; diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingMakeBrainEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingMakeBrainEvent.java index b826547f51..aed4ace88c 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingMakeBrainEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingMakeBrainEvent.java @@ -31,7 +31,7 @@ import net.minecraftforge.eventbus.api.Cancelable; *
* This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ -public class LivingMakeBrainEvent extends LivingEvent +public final class LivingMakeBrainEvent extends LivingEvent { private final BrainBuilder brainBuilder; diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingPackSizeEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingPackSizeEvent.java index 6671860241..5f85ebaa71 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingPackSizeEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingPackSizeEvent.java @@ -9,7 +9,7 @@ import net.minecraftforge.eventbus.api.Event.HasResult; import net.minecraft.world.entity.Mob; @HasResult -public class LivingPackSizeEvent extends LivingEvent +public final class LivingPackSizeEvent extends LivingEvent { private int maxPackSize; diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingSwapItemsEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingSwapItemsEvent.java index a3616d96b6..2bfe6a4627 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingSwapItemsEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingSwapItemsEvent.java @@ -11,7 +11,7 @@ import net.minecraft.world.item.ItemStack; import net.minecraftforge.eventbus.api.Cancelable; import org.jetbrains.annotations.ApiStatus; -public class LivingSwapItemsEvent extends LivingEvent +public sealed class LivingSwapItemsEvent extends LivingEvent { @ApiStatus.Internal @@ -27,7 +27,7 @@ public class LivingSwapItemsEvent extends LivingEvent *

This event is {@linkplain Cancelable cancellable}, and does not {@linkplain HasResult have a result}. */ @Cancelable - public static class Hands extends LivingSwapItemsEvent + public static final class Hands extends LivingSwapItemsEvent { private ItemStack toMainHand; private ItemStack toOffHand; diff --git a/src/main/java/net/minecraftforge/event/entity/living/LivingUseTotemEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LivingUseTotemEvent.java index a1c05d64bf..7709c9953d 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LivingUseTotemEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LivingUseTotemEvent.java @@ -23,7 +23,7 @@ import net.minecraftforge.fml.LogicalSide; * only on the {@linkplain LogicalSide#SERVER logical server}.

*/ @Cancelable -public class LivingUseTotemEvent extends LivingEvent +public final class LivingUseTotemEvent extends LivingEvent { private final DamageSource source; private final ItemStack totem; diff --git a/src/main/java/net/minecraftforge/event/entity/living/LootingLevelEvent.java b/src/main/java/net/minecraftforge/event/entity/living/LootingLevelEvent.java index 3c9b2cd921..a76d06e290 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/LootingLevelEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/LootingLevelEvent.java @@ -10,7 +10,7 @@ import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.damagesource.DamageSource; import org.jetbrains.annotations.Nullable; -public class LootingLevelEvent extends LivingEvent { +public final class LootingLevelEvent extends LivingEvent { @Nullable private final DamageSource damageSource; diff --git a/src/main/java/net/minecraftforge/event/entity/living/MobEffectEvent.java b/src/main/java/net/minecraftforge/event/entity/living/MobEffectEvent.java index ff82d0f76b..c692388542 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/MobEffectEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/MobEffectEvent.java @@ -20,7 +20,7 @@ import org.jetbrains.annotations.Nullable; *

* All children of this event are fired on the {@link MinecraftForge#EVENT_BUS}. */ -public class MobEffectEvent extends LivingEvent { +public sealed class MobEffectEvent extends LivingEvent { @Nullable protected final MobEffectInstance effectInstance; @@ -40,7 +40,7 @@ public class MobEffectEvent extends LivingEvent { * This Event does not have a result. */ @Cancelable - public static class Remove extends MobEffectEvent { + public static final class Remove extends MobEffectEvent { private final MobEffect effect; public Remove(LivingEntity living, MobEffect effect) { @@ -80,7 +80,7 @@ public class MobEffectEvent extends LivingEvent { * {@link Result#DEFAULT DEFAULT} will run vanilla logic to determine if this mob effect is applicable in {@link LivingEntity#canBeAffected}. */ @HasResult - public static class Applicable extends MobEffectEvent { + public static final class Applicable extends MobEffectEvent { public Applicable(LivingEntity living, @NotNull MobEffectInstance effectInstance) { super(living, effectInstance); } @@ -98,7 +98,7 @@ public class MobEffectEvent extends LivingEvent { * This event is not {@link Cancelable}. * This event does not have a result. */ - public static class Added extends MobEffectEvent { + public static final class Added extends MobEffectEvent { private final MobEffectInstance oldEffectInstance; private final Entity source; @@ -139,7 +139,7 @@ public class MobEffectEvent extends LivingEvent { * This event is not {@link Cancelable}. * This event does not have a result. */ - public static class Expired extends MobEffectEvent { + public static final class Expired extends MobEffectEvent { public Expired(LivingEntity living, MobEffectInstance effect) { super(living, effect); } diff --git a/src/main/java/net/minecraftforge/event/entity/living/MobSpawnEvent.java b/src/main/java/net/minecraftforge/event/entity/living/MobSpawnEvent.java index d7ab2211b8..1d2efda097 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/MobSpawnEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/MobSpawnEvent.java @@ -36,7 +36,7 @@ import net.minecraftforge.fml.LogicalSide; *

* {@link AllowDespawn} is not related to the mob spawn event flow, as it fires when a despawn is attempted. */ -public abstract class MobSpawnEvent extends EntityEvent { +public abstract sealed class MobSpawnEvent extends EntityEvent { private final ServerLevelAccessor level; private final double x; private final double y; @@ -104,7 +104,7 @@ public abstract class MobSpawnEvent extends EntityEvent { * @see SpawnPlacementRegisterEvent */ @HasResult - public static class SpawnPlacementCheck extends Event { + public static final class SpawnPlacementCheck extends Event { private final EntityType entityType; private final ServerLevelAccessor level; private final EntitySpawnReason spawnReason; @@ -201,7 +201,7 @@ public abstract class MobSpawnEvent extends EntityEvent { * @see {@link SpawnPlacementCheck} To modify the result of spawn placements at runtime. */ @HasResult - public static class PositionCheck extends MobSpawnEvent { + public static final class PositionCheck extends MobSpawnEvent { @Nullable private final BaseSpawner spawner; private final EntitySpawnReason spawnReason; @@ -245,7 +245,7 @@ public abstract class MobSpawnEvent extends EntityEvent { * @apiNote Callers do not need to check if the entity's spawn was cancelled, as the spawn will be blocked by Forge. */ @Cancelable - public static class FinalizeSpawn extends MobSpawnEvent { + public static final class FinalizeSpawn extends MobSpawnEvent { private final EntitySpawnReason spawnReason; @Nullable private final BaseSpawner spawner; @@ -383,7 +383,7 @@ public abstract class MobSpawnEvent extends EntityEvent { // TODO: 1.20 Move to standalone class, as it is unrelated to the complex mob spawning flow. // Such a refactor will allow the BaseSpawner and MobSpawnType params to be hoisted to MobSpawnEvent. @HasResult - public static class AllowDespawn extends MobSpawnEvent { + public static final class AllowDespawn extends MobSpawnEvent { public AllowDespawn(Mob mob, ServerLevelAccessor level) { super(mob, level, mob.getX(), mob.getY(), mob.getZ()); } diff --git a/src/main/java/net/minecraftforge/event/entity/living/MonsterDisguiseEvent.java b/src/main/java/net/minecraftforge/event/entity/living/MonsterDisguiseEvent.java index 1a52afeacc..05ab26d970 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/MonsterDisguiseEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/MonsterDisguiseEvent.java @@ -20,7 +20,7 @@ import net.minecraftforge.eventbus.api.Cancelable; * This event does not have a {@link Result}. */ @Cancelable -public class MonsterDisguiseEvent extends LivingEvent { +public final class MonsterDisguiseEvent extends LivingEvent { private final Player player; public MonsterDisguiseEvent(Monster monster, Player player) { diff --git a/src/main/java/net/minecraftforge/event/entity/living/ShieldBlockEvent.java b/src/main/java/net/minecraftforge/event/entity/living/ShieldBlockEvent.java index b415852b44..ad42b31382 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/ShieldBlockEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/ShieldBlockEvent.java @@ -19,7 +19,7 @@ import net.minecraftforge.eventbus.api.Cancelable; * at least for players. */ @Cancelable -public class ShieldBlockEvent extends LivingEvent { +public final class ShieldBlockEvent extends LivingEvent { private final DamageSource source; private final float originalBlocked; private float dmgBlocked; diff --git a/src/main/java/net/minecraftforge/event/entity/living/ZombieEvent.java b/src/main/java/net/minecraftforge/event/entity/living/ZombieEvent.java index 455ad2da63..e0b27c6110 100644 --- a/src/main/java/net/minecraftforge/event/entity/living/ZombieEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/living/ZombieEvent.java @@ -20,7 +20,7 @@ import net.minecraftforge.eventbus.api.Cancelable; * * All children of this event are fired on the {@link MinecraftForge#EVENT_BUS}. **/ -public class ZombieEvent extends EntityEvent { +public sealed class ZombieEvent extends EntityEvent { private final Zombie zombie; public ZombieEvent(Zombie zombie) @@ -59,7 +59,7 @@ public class ZombieEvent extends EntityEvent { * This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ @HasResult - public static class SummonAidEvent extends ZombieEvent { + public static final class SummonAidEvent extends ZombieEvent { private Zombie customSummonedAid; private final Level level; diff --git a/src/main/java/net/minecraftforge/event/entity/player/AdvancementEvent.java b/src/main/java/net/minecraftforge/event/entity/player/AdvancementEvent.java index cebb46186b..41306bb153 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/AdvancementEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/AdvancementEvent.java @@ -16,7 +16,7 @@ import net.minecraftforge.common.MinecraftForge; * @see AdvancementEarnEvent * @see AdvancementProgressEvent */ -public class AdvancementEvent extends PlayerEvent { +public sealed class AdvancementEvent extends PlayerEvent { private final AdvancementHolder advancement; public AdvancementEvent(Player player, AdvancementHolder advancement) { @@ -41,7 +41,7 @@ public class AdvancementEvent extends PlayerEvent { * * @see AdvancementProgress#isDone() */ - public static class AdvancementEarnEvent extends AdvancementEvent { + public static final class AdvancementEarnEvent extends AdvancementEvent { public AdvancementEarnEvent(Player player, AdvancementHolder earned) { super(player, earned); } @@ -59,7 +59,7 @@ public class AdvancementEvent extends PlayerEvent { * @see net.minecraft.server.PlayerAdvancements#award(Advancement, String) * @see net.minecraft.server.PlayerAdvancements#revoke(Advancement, String) */ - public static class AdvancementProgressEvent extends AdvancementEvent { + public static final class AdvancementProgressEvent extends AdvancementEvent { private final AdvancementProgress advancementProgress; private final String criterionName; private final AdvancementEvent.AdvancementProgressEvent.ProgressType progressType; diff --git a/src/main/java/net/minecraftforge/event/entity/player/AnvilRepairEvent.java b/src/main/java/net/minecraftforge/event/entity/player/AnvilRepairEvent.java index 0dd3dc94ba..ef7adf96d8 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/AnvilRepairEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/AnvilRepairEvent.java @@ -16,7 +16,7 @@ import org.jetbrains.annotations.NotNull; * * ItemStacks are the inputs/output from the anvil. They cannot be edited. */ -public class AnvilRepairEvent extends PlayerEvent +public final class AnvilRepairEvent extends PlayerEvent { @NotNull private final ItemStack left; // The left side of the input diff --git a/src/main/java/net/minecraftforge/event/entity/player/ArrowLooseEvent.java b/src/main/java/net/minecraftforge/event/entity/player/ArrowLooseEvent.java index 514a5deb54..bd0625276d 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/ArrowLooseEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/ArrowLooseEvent.java @@ -31,7 +31,7 @@ import org.jetbrains.annotations.NotNull; * This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ @Cancelable -public class ArrowLooseEvent extends PlayerEvent +public final class ArrowLooseEvent extends PlayerEvent { private final ItemStack bow; private final Level level; diff --git a/src/main/java/net/minecraftforge/event/entity/player/ArrowNockEvent.java b/src/main/java/net/minecraftforge/event/entity/player/ArrowNockEvent.java index b943b7a1e3..3dcfea04de 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/ArrowNockEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/ArrowNockEvent.java @@ -21,7 +21,7 @@ import org.jetbrains.annotations.NotNull; *
* This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ -public class ArrowNockEvent extends PlayerEvent { +public final class ArrowNockEvent extends PlayerEvent { private final ItemStack bow; private final InteractionHand hand; private final Level level; diff --git a/src/main/java/net/minecraftforge/event/entity/player/AttackEntityEvent.java b/src/main/java/net/minecraftforge/event/entity/player/AttackEntityEvent.java index 9502275ab9..352844337a 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/AttackEntityEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/AttackEntityEvent.java @@ -25,7 +25,7 @@ import net.minecraft.world.entity.player.Player; * This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ @Cancelable -public class AttackEntityEvent extends PlayerEvent +public final class AttackEntityEvent extends PlayerEvent { private final Entity target; public AttackEntityEvent(Player player, Entity target) diff --git a/src/main/java/net/minecraftforge/event/entity/player/BonemealEvent.java b/src/main/java/net/minecraftforge/event/entity/player/BonemealEvent.java index 55e21cd2be..365ffe83f6 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/BonemealEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/BonemealEvent.java @@ -27,7 +27,7 @@ import org.jetbrains.annotations.Nullable; @Cancelable @HasResult // TODO: Redesign BonemealEvent the whole thing, it doens't make sense. -public class BonemealEvent extends PlayerEvent { +public final class BonemealEvent extends PlayerEvent { private final Level level; private final BlockPos pos; private final BlockState block; diff --git a/src/main/java/net/minecraftforge/event/entity/player/CriticalHitEvent.java b/src/main/java/net/minecraftforge/event/entity/player/CriticalHitEvent.java index ec0957bbc2..035cf5929e 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/CriticalHitEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/CriticalHitEvent.java @@ -25,7 +25,7 @@ import net.minecraft.world.entity.player.Player; * This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ @HasResult -public class CriticalHitEvent extends PlayerEvent +public final class CriticalHitEvent extends PlayerEvent { private float damageModifier; private final float oldDamageModifier; diff --git a/src/main/java/net/minecraftforge/event/entity/player/EntityItemPickupEvent.java b/src/main/java/net/minecraftforge/event/entity/player/EntityItemPickupEvent.java index 94d134d995..8f9870d66a 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/EntityItemPickupEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/EntityItemPickupEvent.java @@ -22,7 +22,7 @@ import net.minecraft.world.entity.player.Player; */ @Cancelable @Event.HasResult -public class EntityItemPickupEvent extends PlayerEvent +public final class EntityItemPickupEvent extends PlayerEvent { private final ItemEntity item; diff --git a/src/main/java/net/minecraftforge/event/entity/player/FillBucketEvent.java b/src/main/java/net/minecraftforge/event/entity/player/FillBucketEvent.java index 2119eb06e0..44371b3769 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/FillBucketEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/FillBucketEvent.java @@ -25,7 +25,7 @@ import org.jetbrains.annotations.Nullable; */ @Cancelable @Event.HasResult -public class FillBucketEvent extends PlayerEvent +public final class FillBucketEvent extends PlayerEvent { private final ItemStack current; diff --git a/src/main/java/net/minecraftforge/event/entity/player/ItemFishedEvent.java b/src/main/java/net/minecraftforge/event/entity/player/ItemFishedEvent.java index 3425cffd5f..5ed3878ba2 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/ItemFishedEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/ItemFishedEvent.java @@ -22,7 +22,7 @@ import java.util.List; * The hook will still take the damage specified */ @Cancelable -public class ItemFishedEvent extends PlayerEvent { +public final class ItemFishedEvent extends PlayerEvent { private final NonNullList stacks = NonNullList.create(); private final FishingHook hook; private int rodDamage; diff --git a/src/main/java/net/minecraftforge/event/entity/player/ItemTooltipEvent.java b/src/main/java/net/minecraftforge/event/entity/player/ItemTooltipEvent.java index 25c82bf1a1..adf5aa74e7 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/ItemTooltipEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/ItemTooltipEvent.java @@ -15,7 +15,7 @@ import net.minecraft.network.chat.Component; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -public class ItemTooltipEvent extends PlayerEvent +public final class ItemTooltipEvent extends PlayerEvent { private final TooltipFlag flags; @NotNull diff --git a/src/main/java/net/minecraftforge/event/entity/player/PermissionsChangedEvent.java b/src/main/java/net/minecraftforge/event/entity/player/PermissionsChangedEvent.java index 80bf1204ce..c80a658c2c 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/PermissionsChangedEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/PermissionsChangedEvent.java @@ -14,7 +14,7 @@ import net.minecraftforge.eventbus.api.Cancelable; * This event is cancelable which will stop the op or deop from happening. */ @Cancelable -public class PermissionsChangedEvent extends PlayerEvent +public final class PermissionsChangedEvent extends PlayerEvent { private final int newLevel; private final int oldLevel; diff --git a/src/main/java/net/minecraftforge/event/entity/player/PlayerContainerEvent.java b/src/main/java/net/minecraftforge/event/entity/player/PlayerContainerEvent.java index 9c3269aa70..f1a1f5bba3 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/PlayerContainerEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/PlayerContainerEvent.java @@ -8,7 +8,7 @@ package net.minecraftforge.event.entity.player; import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.AbstractContainerMenu; -public class PlayerContainerEvent extends PlayerEvent +public sealed class PlayerContainerEvent extends PlayerEvent { private final AbstractContainerMenu container; public PlayerContainerEvent(Player player, AbstractContainerMenu container) @@ -17,14 +17,14 @@ public class PlayerContainerEvent extends PlayerEvent this.container = container; } - public static class Open extends PlayerContainerEvent + public static final class Open extends PlayerContainerEvent { public Open(Player player, AbstractContainerMenu container) { super(player, container); } } - public static class Close extends PlayerContainerEvent + public static final class Close extends PlayerContainerEvent { public Close(Player player, AbstractContainerMenu container) { diff --git a/src/main/java/net/minecraftforge/event/entity/player/PlayerDestroyItemEvent.java b/src/main/java/net/minecraftforge/event/entity/player/PlayerDestroyItemEvent.java index 5733f00528..57bd88a6e5 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/PlayerDestroyItemEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/PlayerDestroyItemEvent.java @@ -48,7 +48,7 @@ import org.jetbrains.annotations.Nullable; * This event is fired from {@link ForgeEventFactory#onPlayerDestroyItem(Player, ItemStack, InteractionHand)}.
* This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ -public class PlayerDestroyItemEvent extends PlayerEvent { +public final class PlayerDestroyItemEvent extends PlayerEvent { @NotNull private final ItemStack original; @Nullable diff --git a/src/main/java/net/minecraftforge/event/entity/player/PlayerEvent.java b/src/main/java/net/minecraftforge/event/entity/player/PlayerEvent.java index 542896e252..65994d3f24 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/PlayerEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/PlayerEvent.java @@ -66,7 +66,7 @@ public class PlayerEvent extends LivingEvent *
* This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ - public static class HarvestCheck extends PlayerEvent + public static final class HarvestCheck extends PlayerEvent { private final BlockState state; private boolean success; @@ -103,7 +103,7 @@ public class PlayerEvent extends LivingEvent * This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ @Cancelable - public static class BreakSpeed extends PlayerEvent + public static final class BreakSpeed extends PlayerEvent { private static final BlockPos LEGACY_UNKNOWN = new BlockPos(0, -1, 0); private final BlockState state; @@ -143,7 +143,7 @@ public class PlayerEvent extends LivingEvent *
* This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ - public static class NameFormat extends PlayerEvent + public static final class NameFormat extends PlayerEvent { private final Component username; private Component displayname; @@ -186,7 +186,7 @@ public class PlayerEvent extends LivingEvent *
* This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ - public static class TabListNameFormat extends PlayerEvent + public static final class TabListNameFormat extends PlayerEvent { @Nullable private Component displayName; @@ -212,7 +212,7 @@ public class PlayerEvent extends LivingEvent * Fired when the EntityPlayer is cloned, typically caused by the impl sending a RESPAWN_PLAYER event. * Either caused by death, or by traveling from the End to the overworld. */ - public static class Clone extends PlayerEvent + public static final class Clone extends PlayerEvent { private final Player original; private final boolean wasDeath; @@ -246,7 +246,7 @@ public class PlayerEvent extends LivingEvent * Fired when an Entity is started to be "tracked" by this player (the player receives updates about this entity, e.g. motion). * */ - public static class StartTracking extends PlayerEvent { + public static final class StartTracking extends PlayerEvent { private final Entity target; @@ -269,7 +269,7 @@ public class PlayerEvent extends LivingEvent * Fired when an Entity is stopped to be "tracked" by this player (the player no longer receives updates about this entity, e.g. motion). * */ - public static class StopTracking extends PlayerEvent { + public static final class StopTracking extends PlayerEvent { private final Entity target; @@ -294,7 +294,7 @@ public class PlayerEvent extends LivingEvent * allow mods to load an additional file from the players directory * containing additional mod related player data. */ - public static class LoadFromFile extends PlayerEvent { + public static final class LoadFromFile extends PlayerEvent { private final File playerDirectory; private final String playerUUID; @@ -346,7 +346,7 @@ public class PlayerEvent extends LivingEvent * WARNING: Do not overwrite the player's .dat file here. You will * corrupt the world state. */ - public static class SaveToFile extends PlayerEvent { + public static final class SaveToFile extends PlayerEvent { private final File playerDirectory; private final String playerUUID; @@ -386,7 +386,7 @@ public class PlayerEvent extends LivingEvent } } - public static class ItemPickupEvent extends PlayerEvent { + public static final class ItemPickupEvent extends PlayerEvent { /** * Original EntityItem with current remaining stack size */ @@ -411,7 +411,7 @@ public class PlayerEvent extends LivingEvent } } - public static class ItemCraftedEvent extends PlayerEvent { + public static final class ItemCraftedEvent extends PlayerEvent { @NotNull private final ItemStack crafting; private final Container craftMatrix; @@ -434,7 +434,7 @@ public class PlayerEvent extends LivingEvent } } - public static class ItemSmeltedEvent extends PlayerEvent { + public static final class ItemSmeltedEvent extends PlayerEvent { @NotNull private final ItemStack smelting; public ItemSmeltedEvent(Player player, @NotNull ItemStack crafting) @@ -450,21 +450,21 @@ public class PlayerEvent extends LivingEvent } } - public static class PlayerLoggedInEvent extends PlayerEvent { + public static final class PlayerLoggedInEvent extends PlayerEvent { public PlayerLoggedInEvent(Player player) { super(player); } } - public static class PlayerLoggedOutEvent extends PlayerEvent { + public static final class PlayerLoggedOutEvent extends PlayerEvent { public PlayerLoggedOutEvent(Player player) { super(player); } } - public static class PlayerRespawnEvent extends PlayerEvent { + public static final class PlayerRespawnEvent extends PlayerEvent { private final boolean endConquered; public PlayerRespawnEvent(Player player, boolean endConquered) @@ -485,7 +485,7 @@ public class PlayerEvent extends LivingEvent } - public static class PlayerChangedDimensionEvent extends PlayerEvent { + public static final class PlayerChangedDimensionEvent extends PlayerEvent { private final ResourceKey fromDim; private final ResourceKey toDim; public PlayerChangedDimensionEvent(Player player, ResourceKey fromDim, ResourceKey toDim) @@ -511,7 +511,7 @@ public class PlayerEvent extends LivingEvent * If the event is cancelled the game mode of the player is not changed and the value of newGameMode is ignored. */ @Cancelable - public static class PlayerChangeGameModeEvent extends PlayerEvent + public static final class PlayerChangeGameModeEvent extends PlayerEvent { private final GameType currentGameMode; private GameType newGameMode; diff --git a/src/main/java/net/minecraftforge/event/entity/player/PlayerFlyableFallEvent.java b/src/main/java/net/minecraftforge/event/entity/player/PlayerFlyableFallEvent.java index 156d24bdfd..a383962c10 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/PlayerFlyableFallEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/PlayerFlyableFallEvent.java @@ -12,7 +12,7 @@ import net.minecraft.world.entity.player.Player; * @author Mithion * */ -public class PlayerFlyableFallEvent extends PlayerEvent +public final class PlayerFlyableFallEvent extends PlayerEvent { private float distance; private float multiplier; diff --git a/src/main/java/net/minecraftforge/event/entity/player/PlayerInteractEvent.java b/src/main/java/net/minecraftforge/event/entity/player/PlayerInteractEvent.java index cd6ae78ad9..6d729e389d 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/PlayerInteractEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/PlayerInteractEvent.java @@ -37,7 +37,7 @@ import org.jetbrains.annotations.Nullable; * All subclasses are fired on {@link MinecraftForge#EVENT_BUS}. * See the individual documentation on each subevent for more details. **/ -public class PlayerInteractEvent extends PlayerEvent { +public sealed class PlayerInteractEvent extends PlayerEvent { private final InteractionHand hand; private final BlockPos pos; @Nullable @@ -61,7 +61,7 @@ public class PlayerInteractEvent extends PlayerEvent { * If we are on the client and result is not {@link InteractionResult#SUCCESS}, the client will then try {@link EntityInteract}. */ @Cancelable - public static class EntityInteractSpecific extends PlayerInteractEvent { + public static final class EntityInteractSpecific extends PlayerInteractEvent { private final Vec3 localPos; private final Entity target; @@ -100,7 +100,7 @@ public class PlayerInteractEvent extends PlayerEvent { * If we are on the client and result is not {@link InteractionResult#SUCCESS}, the client will then try {@link RightClickItem}. */ @Cancelable - public static class EntityInteract extends PlayerInteractEvent { + public static final class EntityInteract extends PlayerInteractEvent { private final Entity target; public EntityInteract(Player player, InteractionHand hand, Entity target) { @@ -127,10 +127,10 @@ public class PlayerInteractEvent extends PlayerEvent { * Note that handling things differently on the client vs server may cause desynchronizations! */ @Cancelable - public static class RightClickBlock extends PlayerInteractEvent { + public static final class RightClickBlock extends PlayerInteractEvent { private Result useBlock = Result.DEFAULT; private Result useItem = Result.DEFAULT; - private BlockHitResult hitVec; + private final BlockHitResult hitVec; public RightClickBlock(Player player, InteractionHand hand, BlockPos pos, BlockHitResult hitVec) { super(player, hand, pos, hitVec.getDirection()); @@ -195,7 +195,7 @@ public class PlayerInteractEvent extends PlayerEvent { * If we are on the client and result is not {@link InteractionResult#SUCCESS}, the client will then continue to other hands. */ @Cancelable - public static class RightClickItem extends PlayerInteractEvent { + public static final class RightClickItem extends PlayerInteractEvent { public RightClickItem(Player player, InteractionHand hand) { super(player, hand, player.blockPosition(), null); } @@ -206,7 +206,7 @@ public class PlayerInteractEvent extends PlayerEvent { * The server is not aware of when the client right clicks empty space with an empty hand, you will need to tell the server yourself. * This event cannot be canceled. */ - public static class RightClickEmpty extends PlayerInteractEvent { + public static final class RightClickEmpty extends PlayerInteractEvent { public RightClickEmpty(Player player, InteractionHand hand) { super(player, hand, player.blockPosition(), null); } @@ -228,7 +228,7 @@ public class PlayerInteractEvent extends PlayerEvent { * Therefore, in creative mode, {@link #setUseBlock} and {@link #setUseItem} have no effect. */ @Cancelable - public static class LeftClickBlock extends PlayerInteractEvent { + public static final class LeftClickBlock extends PlayerInteractEvent { private Result useBlock = Result.DEFAULT; private Result useItem = Result.DEFAULT; private final Action action; @@ -313,7 +313,7 @@ public class PlayerInteractEvent extends PlayerEvent { * The server is not aware of when the client left clicks empty space, you will need to tell the server yourself. * This event cannot be canceled. */ - public static class LeftClickEmpty extends PlayerInteractEvent { + public static final class LeftClickEmpty extends PlayerInteractEvent { public LeftClickEmpty(Player player) { super(player, InteractionHand.MAIN_HAND, player.blockPosition(), null); } diff --git a/src/main/java/net/minecraftforge/event/entity/player/PlayerSetSpawnEvent.java b/src/main/java/net/minecraftforge/event/entity/player/PlayerSetSpawnEvent.java index 183627a7cb..7ba0882a52 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/PlayerSetSpawnEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/PlayerSetSpawnEvent.java @@ -18,7 +18,7 @@ import org.jetbrains.annotations.Nullable; * The event can be canceled, which will prevent the spawn point from being changed. */ @Cancelable -public class PlayerSetSpawnEvent extends PlayerEvent { +public final class PlayerSetSpawnEvent extends PlayerEvent { private final @Nullable ServerPlayer.RespawnConfig config; @Deprecated(forRemoval = true, since = "1.21.5") diff --git a/src/main/java/net/minecraftforge/event/entity/player/PlayerSleepInBedEvent.java b/src/main/java/net/minecraftforge/event/entity/player/PlayerSleepInBedEvent.java index 6e4c672dad..9152d2e995 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/PlayerSleepInBedEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/PlayerSleepInBedEvent.java @@ -24,7 +24,7 @@ import java.util.Optional; *
* This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ -public class PlayerSleepInBedEvent extends PlayerEvent +public final class PlayerSleepInBedEvent extends PlayerEvent { private BedSleepingProblem result = null; private final Optional pos; diff --git a/src/main/java/net/minecraftforge/event/entity/player/PlayerSpawnPhantomsEvent.java b/src/main/java/net/minecraftforge/event/entity/player/PlayerSpawnPhantomsEvent.java index b07b8bdc17..d687db5161 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/PlayerSpawnPhantomsEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/PlayerSpawnPhantomsEvent.java @@ -23,7 +23,7 @@ import org.jetbrains.annotations.NotNull; * @see PlayerSpawnPhantomsEvent#setResult for the effects of each result. */ @Event.HasResult -public class PlayerSpawnPhantomsEvent extends PlayerEvent { +public final class PlayerSpawnPhantomsEvent extends PlayerEvent { private int phantomsToSpawn; public PlayerSpawnPhantomsEvent(Player player, int phantomsToSpawn) { diff --git a/src/main/java/net/minecraftforge/event/entity/player/PlayerWakeUpEvent.java b/src/main/java/net/minecraftforge/event/entity/player/PlayerWakeUpEvent.java index 3074a7ee48..16843882a3 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/PlayerWakeUpEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/PlayerWakeUpEvent.java @@ -12,7 +12,7 @@ import net.minecraft.world.entity.player.Player; * This is merely for purposes of listening for this to happen.
* There is nothing that can be manipulated with this event. */ -public class PlayerWakeUpEvent extends PlayerEvent +public final class PlayerWakeUpEvent extends PlayerEvent { private final boolean wakeImmediately; diff --git a/src/main/java/net/minecraftforge/event/entity/player/PlayerXpEvent.java b/src/main/java/net/minecraftforge/event/entity/player/PlayerXpEvent.java index 329faf625c..04b5c896f9 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/PlayerXpEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/PlayerXpEvent.java @@ -17,7 +17,7 @@ import net.minecraftforge.eventbus.api.Cancelable; *
* All children of this event are fired on the {@link MinecraftForge#EVENT_BUS}. */ -public class PlayerXpEvent extends PlayerEvent { +public sealed class PlayerXpEvent extends PlayerEvent { public PlayerXpEvent(Player player) { super(player); } @@ -27,7 +27,7 @@ public class PlayerXpEvent extends PlayerEvent { * It can be cancelled, and no further processing will be done. */ @Cancelable - public static class PickupXp extends PlayerXpEvent { + public static final class PickupXp extends PlayerXpEvent { private final ExperienceOrb orb; public PickupXp(Player player, ExperienceOrb orb) { @@ -45,7 +45,7 @@ public class PlayerXpEvent extends PlayerEvent { * It can be cancelled, and no further processing will be done. */ @Cancelable - public static class XpChange extends PlayerXpEvent { + public static final class XpChange extends PlayerXpEvent { private int amount; public XpChange(Player player, int amount) { @@ -67,7 +67,7 @@ public class PlayerXpEvent extends PlayerEvent { * It can be cancelled, and no further processing will be done. */ @Cancelable - public static class LevelChange extends PlayerXpEvent { + public static final class LevelChange extends PlayerXpEvent { private int levels; public LevelChange(Player player, int levels) { diff --git a/src/main/java/net/minecraftforge/event/entity/player/SleepingLocationCheckEvent.java b/src/main/java/net/minecraftforge/event/entity/player/SleepingLocationCheckEvent.java index c28659cb9f..176f555b28 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/SleepingLocationCheckEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/SleepingLocationCheckEvent.java @@ -24,7 +24,7 @@ import net.minecraftforge.eventbus.api.Event.HasResult; * setResult(DEFAULT) causes game to check {@link Block#isBed(BlockState, BlockGetter, BlockPos, Entity)} instead */ @HasResult -public class SleepingLocationCheckEvent extends LivingEvent +public final class SleepingLocationCheckEvent extends LivingEvent { private final BlockPos sleepingLocation; diff --git a/src/main/java/net/minecraftforge/event/entity/player/SleepingTimeCheckEvent.java b/src/main/java/net/minecraftforge/event/entity/player/SleepingTimeCheckEvent.java index acdcc667fd..28f7ed012b 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/SleepingTimeCheckEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/SleepingTimeCheckEvent.java @@ -22,7 +22,7 @@ import java.util.Optional; * setResult(DEFAULT) causes game to check !{@link Level#isDay()} instead. */ @HasResult -public class SleepingTimeCheckEvent extends PlayerEvent +public final class SleepingTimeCheckEvent extends PlayerEvent { private final Optional sleepingLocation; diff --git a/src/main/java/net/minecraftforge/event/entity/player/TradeWithVillagerEvent.java b/src/main/java/net/minecraftforge/event/entity/player/TradeWithVillagerEvent.java index 64abbd9815..9a130d3301 100644 --- a/src/main/java/net/minecraftforge/event/entity/player/TradeWithVillagerEvent.java +++ b/src/main/java/net/minecraftforge/event/entity/player/TradeWithVillagerEvent.java @@ -20,7 +20,7 @@ import org.jetbrains.annotations.ApiStatus; *

This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus}, * only on the {@linkplain LogicalSide#SERVER logical server}.

*/ -public class TradeWithVillagerEvent extends PlayerEvent +public final class TradeWithVillagerEvent extends PlayerEvent { private final MerchantOffer offer; private final AbstractVillager abstractVillager; diff --git a/src/main/java/net/minecraftforge/event/furnace/FurnaceFuelBurnTimeEvent.java b/src/main/java/net/minecraftforge/event/furnace/FurnaceFuelBurnTimeEvent.java index 673b905dd5..7382d2775f 100644 --- a/src/main/java/net/minecraftforge/event/furnace/FurnaceFuelBurnTimeEvent.java +++ b/src/main/java/net/minecraftforge/event/furnace/FurnaceFuelBurnTimeEvent.java @@ -29,7 +29,7 @@ import org.jetbrains.annotations.Nullable; * This event is fired on the {@link MinecraftForge#EVENT_BUS}. **/ @Cancelable -public class FurnaceFuelBurnTimeEvent extends Event +public final class FurnaceFuelBurnTimeEvent extends Event { @NotNull private final ItemStack itemStack; diff --git a/src/main/java/net/minecraftforge/event/level/AlterGroundEvent.java b/src/main/java/net/minecraftforge/event/level/AlterGroundEvent.java index 5c4d60599e..97a204bea4 100644 --- a/src/main/java/net/minecraftforge/event/level/AlterGroundEvent.java +++ b/src/main/java/net/minecraftforge/event/level/AlterGroundEvent.java @@ -24,7 +24,7 @@ import org.jetbrains.annotations.ApiStatus; * This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus} * only on the {@linkplain net.minecraftforge.fml.LogicalSide#SERVER logical server}. */ -public class AlterGroundEvent extends Event { +public final class AlterGroundEvent extends Event { private final LevelSimulatedReader level; private final RandomSource random; private final BlockPos pos; diff --git a/src/main/java/net/minecraftforge/event/level/BlockEvent.java b/src/main/java/net/minecraftforge/event/level/BlockEvent.java index f1a39f0b23..4332a93eeb 100644 --- a/src/main/java/net/minecraftforge/event/level/BlockEvent.java +++ b/src/main/java/net/minecraftforge/event/level/BlockEvent.java @@ -64,7 +64,7 @@ public class BlockEvent extends Event { * Canceling this event will prevent the Block from being broken. */ @Cancelable - public static class BreakEvent extends BlockEvent { + public static final class BreakEvent extends BlockEvent { /** Reference to the Player who broke the block. If no player is available, use a EntityFakePlayer */ private final Player player; private int exp; @@ -113,7 +113,7 @@ public class BlockEvent extends Event { * If a Block Place event is cancelled, the block will not be placed. */ @Cancelable - public static class EntityPlaceEvent extends BlockEvent { + public static sealed class EntityPlaceEvent extends BlockEvent { private final Entity entity; private final BlockSnapshot blockSnapshot; private final BlockState placedBlock; @@ -146,7 +146,7 @@ public class BlockEvent extends Event { * block. */ @Cancelable - public static class EntityMultiPlaceEvent extends EntityPlaceEvent { + public static final class EntityMultiPlaceEvent extends EntityPlaceEvent { private final List blockSnapshots; public EntityMultiPlaceEvent(@NotNull List blockSnapshots, @NotNull BlockState placedAgainst, @Nullable Entity entity) { @@ -174,7 +174,7 @@ public class BlockEvent extends Event { * does. This event is only called on the server. */ @Cancelable - public static class NeighborNotifyEvent extends BlockEvent { + public static final class NeighborNotifyEvent extends BlockEvent { private final EnumSet notifiedSides; private final boolean forceRedstoneUpdate; @@ -209,7 +209,7 @@ public class BlockEvent extends Event { * even if the liquid usually does do that (like water). */ @HasResult - public static class CreateFluidSourceEvent extends Event { + public static final class CreateFluidSourceEvent extends Event { private final Level level; private final BlockPos pos; private final BlockState state; @@ -242,10 +242,10 @@ public class BlockEvent extends Event { * {@link #getPos()} will return the position of the block to be changed. */ @Cancelable - public static class FluidPlaceBlockEvent extends BlockEvent { + public static final class FluidPlaceBlockEvent extends BlockEvent { private final BlockPos liquidPos; private BlockState newState; - private BlockState origState; + private final BlockState origState; public FluidPlaceBlockEvent(LevelAccessor level, BlockPos pos, BlockPos liquidPos, BlockState state) { super(level, pos, state); @@ -284,7 +284,7 @@ public class BlockEvent extends Event { * Fired when a crop block grows. See subevents. * */ - public static class CropGrowEvent extends BlockEvent { + public static sealed class CropGrowEvent extends BlockEvent { public CropGrowEvent(Level level, BlockPos pos, BlockState state) { super(level, pos, state); } @@ -301,7 +301,7 @@ public class BlockEvent extends Event { *
*/ @HasResult - public static class Pre extends CropGrowEvent { + public static final class Pre extends CropGrowEvent { public Pre(Level level, BlockPos pos, BlockState state) { super(level, pos, state); } @@ -316,7 +316,7 @@ public class BlockEvent extends Event { *
* This event does not have a result. {@link HasResult}
*/ - public static class Post extends CropGrowEvent { + public static final class Post extends CropGrowEvent { private final BlockState originalState; public Post(Level level, BlockPos pos, BlockState original, BlockState state) { @@ -335,7 +335,7 @@ public class BlockEvent extends Event { * This event is {@link Cancelable} */ @Cancelable - public static class FarmlandTrampleEvent extends BlockEvent { + public static final class FarmlandTrampleEvent extends BlockEvent { private final Entity entity; private final double fallDistance; @@ -361,7 +361,7 @@ public class BlockEvent extends Event { * If cancelled, the portal will not be spawned. */ @Cancelable - public static class PortalSpawnEvent extends BlockEvent { + public static final class PortalSpawnEvent extends BlockEvent { private final PortalShape size; public PortalSpawnEvent(LevelAccessor level, BlockPos pos, BlockState state, PortalShape size) { @@ -385,7 +385,7 @@ public class BlockEvent extends Event { * from changing the block's state. */ @Cancelable - public static class BlockToolModificationEvent extends BlockEvent { + public static final class BlockToolModificationEvent extends BlockEvent { private final UseOnContext context; private final ToolAction toolAction; private final boolean simulate; diff --git a/src/main/java/net/minecraftforge/event/level/ChunkDataEvent.java b/src/main/java/net/minecraftforge/event/level/ChunkDataEvent.java index c887c32e0a..70d2f96abf 100644 --- a/src/main/java/net/minecraftforge/event/level/ChunkDataEvent.java +++ b/src/main/java/net/minecraftforge/event/level/ChunkDataEvent.java @@ -25,7 +25,7 @@ import net.minecraftforge.eventbus.api.Event; *
* All children of this event are fired on the {@link MinecraftForge#EVENT_BUS}.
**/ -public class ChunkDataEvent extends ChunkEvent { +public sealed class ChunkDataEvent extends ChunkEvent { private final SerializableChunkData data; public ChunkDataEvent(ChunkAccess chunk, SerializableChunkData data) { @@ -53,8 +53,8 @@ public class ChunkDataEvent extends ChunkEvent { *
* This event is fired on the {@link MinecraftForge#EVENT_BUS}.
**/ - public static class Load extends ChunkDataEvent { - private ChunkType status; + public static final class Load extends ChunkDataEvent { + private final ChunkType status; public Load(ChunkAccess chunk, SerializableChunkData data, ChunkType status) { super(chunk, data); @@ -77,7 +77,7 @@ public class ChunkDataEvent extends ChunkEvent { *
* This event is fired on the {@link MinecraftForge#EVENT_BUS}.
**/ - public static class Save extends ChunkDataEvent { + public static final class Save extends ChunkDataEvent { public Save(ChunkAccess chunk, LevelAccessor world, SerializableChunkData data) { super(chunk, world, data); } diff --git a/src/main/java/net/minecraftforge/event/level/ChunkEvent.java b/src/main/java/net/minecraftforge/event/level/ChunkEvent.java index 60efa8284e..9b3da0cb8a 100644 --- a/src/main/java/net/minecraftforge/event/level/ChunkEvent.java +++ b/src/main/java/net/minecraftforge/event/level/ChunkEvent.java @@ -56,7 +56,7 @@ public class ChunkEvent extends LevelEvent *
* This event is fired on the {@link MinecraftForge#EVENT_BUS}.
**/ - public static class Load extends ChunkEvent + public static final class Load extends ChunkEvent { private final boolean newChunk; @@ -91,7 +91,7 @@ public class ChunkEvent extends LevelEvent *
* This event is fired on the {@link MinecraftForge#EVENT_BUS}.
**/ - public static class Unload extends ChunkEvent + public static final class Unload extends ChunkEvent { public Unload(ChunkAccess chunk) { diff --git a/src/main/java/net/minecraftforge/event/level/ChunkTicketLevelUpdatedEvent.java b/src/main/java/net/minecraftforge/event/level/ChunkTicketLevelUpdatedEvent.java index 04da357eaa..d7213f1e71 100644 --- a/src/main/java/net/minecraftforge/event/level/ChunkTicketLevelUpdatedEvent.java +++ b/src/main/java/net/minecraftforge/event/level/ChunkTicketLevelUpdatedEvent.java @@ -29,7 +29,7 @@ import org.jetbrains.annotations.Nullable; * This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus} * only on the {@linkplain LogicalSide#SERVER logical server}. **/ -public class ChunkTicketLevelUpdatedEvent extends Event +public final class ChunkTicketLevelUpdatedEvent extends Event { private final ServerLevel level; private final long chunkPos; diff --git a/src/main/java/net/minecraftforge/event/level/ChunkWatchEvent.java b/src/main/java/net/minecraftforge/event/level/ChunkWatchEvent.java index 0ad0b0c185..03774b244b 100644 --- a/src/main/java/net/minecraftforge/event/level/ChunkWatchEvent.java +++ b/src/main/java/net/minecraftforge/event/level/ChunkWatchEvent.java @@ -25,7 +25,7 @@ import net.minecraftforge.fml.LogicalSide; * This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus} * only on the {@linkplain LogicalSide#SERVER logical server}. **/ -public class ChunkWatchEvent extends Event { +public sealed class ChunkWatchEvent extends Event { private final ServerLevel level; private final ServerPlayer player; private final ChunkPos pos; @@ -67,7 +67,7 @@ public class ChunkWatchEvent extends Event { * This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus} * only on the {@linkplain LogicalSide#SERVER logical server}. **/ - public static class Watch extends ChunkWatchEvent { + public static final class Watch extends ChunkWatchEvent { private final LevelChunk chunk; public Watch(ServerPlayer player, LevelChunk chunk, ServerLevel level) { @@ -88,7 +88,7 @@ public class ChunkWatchEvent extends Event { * This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus} * only on the {@linkplain LogicalSide#SERVER logical server}. **/ - public static class UnWatch extends ChunkWatchEvent { + public static final class UnWatch extends ChunkWatchEvent { public UnWatch(ServerPlayer player, ChunkPos pos, ServerLevel level) { super(player, pos, level); } diff --git a/src/main/java/net/minecraftforge/event/level/ExplosionEvent.java b/src/main/java/net/minecraftforge/event/level/ExplosionEvent.java index a9fe717250..892ed3f30e 100644 --- a/src/main/java/net/minecraftforge/event/level/ExplosionEvent.java +++ b/src/main/java/net/minecraftforge/event/level/ExplosionEvent.java @@ -25,7 +25,7 @@ import net.minecraft.world.level.Level; * Children do not use {@link HasResult}.
* Children of this event are fired on the {@link MinecraftForge#EVENT_BUS}.
*/ -public class ExplosionEvent extends Event { +public sealed class ExplosionEvent extends Event { private final Level level; private final Explosion explosion; @@ -49,7 +49,7 @@ public class ExplosionEvent extends Event { * This event is fired on the {@link MinecraftForge#EVENT_BUS}.
*/ @Cancelable - public static class Start extends ExplosionEvent { + public static final class Start extends ExplosionEvent { public Start(Level level, Explosion explosion) { super(level, explosion); } @@ -61,7 +61,7 @@ public class ExplosionEvent extends Event { * This event does not use {@link HasResult}.
* This event is fired on the {@link MinecraftForge#EVENT_BUS}.
*/ - public static class Detonate extends ExplosionEvent { + public static final class Detonate extends ExplosionEvent { private final List blocks; private final List entityList; diff --git a/src/main/java/net/minecraftforge/event/level/LevelEvent.java b/src/main/java/net/minecraftforge/event/level/LevelEvent.java index f3bb055327..cddd8311b4 100644 --- a/src/main/java/net/minecraftforge/event/level/LevelEvent.java +++ b/src/main/java/net/minecraftforge/event/level/LevelEvent.java @@ -61,7 +61,7 @@ public class LevelEvent extends Event { * This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus} * on both logical sides. **/ - public static class Load extends LevelEvent { + public static final class Load extends LevelEvent { public Load(LevelAccessor level) { super(level); } } @@ -77,7 +77,7 @@ public class LevelEvent extends Event { * This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus} * on both logical sides. **/ - public static class Unload extends LevelEvent { + public static final class Unload extends LevelEvent { public Unload(LevelAccessor level) { super(level); } } @@ -91,7 +91,7 @@ public class LevelEvent extends Event { * This event is fired on the {@linkplain MinecraftForge#EVENT_BUS main Forge event bus} * only on the {@linkplain LogicalSide#SERVER logical server}. **/ - public static class Save extends LevelEvent { + public static final class Save extends LevelEvent { public Save(LevelAccessor level) { super(level); } } @@ -108,7 +108,7 @@ public class LevelEvent extends Event { * @see ServerLevelData#isInitialized() */ @Cancelable - public static class CreateSpawnPosition extends LevelEvent { + public static final class CreateSpawnPosition extends LevelEvent { private final ServerLevelData settings; public CreateSpawnPosition(LevelAccessor level, ServerLevelData settings) { @@ -133,7 +133,7 @@ public class LevelEvent extends Event { * Canceling the event will result in an empty list, meaning no entity will be spawned.

*/ @Cancelable - public static class PotentialSpawns extends LevelEvent { + public static final class PotentialSpawns extends LevelEvent { private final MobCategory mobcategory; private final BlockPos pos; private final List> list; diff --git a/src/main/java/net/minecraftforge/event/level/NoteBlockEvent.java b/src/main/java/net/minecraftforge/event/level/NoteBlockEvent.java index b6c7abbba6..00194da9cd 100644 --- a/src/main/java/net/minecraftforge/event/level/NoteBlockEvent.java +++ b/src/main/java/net/minecraftforge/event/level/NoteBlockEvent.java @@ -17,7 +17,7 @@ import com.google.common.base.Preconditions; * Base class for Noteblock Events * */ -public class NoteBlockEvent extends BlockEvent { +public sealed class NoteBlockEvent extends BlockEvent { private int noteId; protected NoteBlockEvent(Level world, BlockPos pos, BlockState state, int note) { @@ -65,7 +65,7 @@ public class NoteBlockEvent extends BlockEvent { * Canceling this event will stop the note from playing. */ @Cancelable - public static class Play extends NoteBlockEvent { + public static final class Play extends NoteBlockEvent { private NoteBlockInstrument instrument; public Play(Level world, BlockPos pos, BlockState state, int note, NoteBlockInstrument instrument) { @@ -87,7 +87,7 @@ public class NoteBlockEvent extends BlockEvent { * Canceling this event will not change the note and also stop the Noteblock from playing it's note. */ @Cancelable - public static class Change extends NoteBlockEvent { + public static final class Change extends NoteBlockEvent { private final Note oldNote; private final Octave oldOctave; @@ -111,7 +111,7 @@ public class NoteBlockEvent extends BlockEvent { * For altered notes such as G-Sharp / A-Flat the Sharp variant is used here. * */ - public static enum Note { + public enum Note { F_SHARP, G, G_SHARP, @@ -137,7 +137,7 @@ public class NoteBlockEvent extends BlockEvent { * Together with {@link Note} it fully describes the note. * */ - public static enum Octave { + public enum Octave { LOW, MID, HIGH; // only valid for F_SHARP diff --git a/src/main/java/net/minecraftforge/event/level/PistonEvent.java b/src/main/java/net/minecraftforge/event/level/PistonEvent.java index 86556d447b..63859c09ac 100644 --- a/src/main/java/net/minecraftforge/event/level/PistonEvent.java +++ b/src/main/java/net/minecraftforge/event/level/PistonEvent.java @@ -15,7 +15,7 @@ import org.jetbrains.annotations.Nullable; /** * Base piston event, use {@link PistonEvent.Post} and {@link PistonEvent.Pre} */ -public abstract class PistonEvent extends BlockEvent +public abstract sealed class PistonEvent extends BlockEvent { private final Direction direction; @@ -72,7 +72,7 @@ public abstract class PistonEvent extends BlockEvent /** * Fires after the piston has moved and set surrounding states. This will not fire if {@link PistonEvent.Pre} is cancelled. */ - public static class Post extends PistonEvent + public static final class Post extends PistonEvent { public Post(Level world, BlockPos pos, Direction direction, PistonMoveType moveType) @@ -86,7 +86,7 @@ public abstract class PistonEvent extends BlockEvent * Fires before the piston has updated block states. Cancellation prevents movement. */ @Cancelable - public static class Pre extends PistonEvent + public static final class Pre extends PistonEvent { public Pre(Level world, BlockPos pos, Direction direction, PistonMoveType moveType) diff --git a/src/main/java/net/minecraftforge/event/level/SaplingGrowTreeEvent.java b/src/main/java/net/minecraftforge/event/level/SaplingGrowTreeEvent.java index a2013671c2..92efe14614 100644 --- a/src/main/java/net/minecraftforge/event/level/SaplingGrowTreeEvent.java +++ b/src/main/java/net/minecraftforge/event/level/SaplingGrowTreeEvent.java @@ -31,7 +31,7 @@ import org.jetbrains.annotations.Nullable; // TODO: Rename to BlockFeatureGrowEvent in 1.20 @HasResult @Deprecated(forRemoval = true, since = "1.21.1") // Dont remove, rename -public class SaplingGrowTreeEvent extends LevelEvent { +public final class SaplingGrowTreeEvent extends LevelEvent { private final RandomSource randomSource; private final BlockPos pos; @Nullable diff --git a/src/main/java/net/minecraftforge/event/level/SleepFinishedTimeEvent.java b/src/main/java/net/minecraftforge/event/level/SleepFinishedTimeEvent.java index 4847e1f11f..b91fb0f40e 100644 --- a/src/main/java/net/minecraftforge/event/level/SleepFinishedTimeEvent.java +++ b/src/main/java/net/minecraftforge/event/level/SleepFinishedTimeEvent.java @@ -12,7 +12,7 @@ import net.minecraft.server.level.ServerLevel; * * setWakeUpTime(wakeUpTime) sets a new time that will be added to the dayTime.
*/ -public class SleepFinishedTimeEvent extends LevelEvent +public final class SleepFinishedTimeEvent extends LevelEvent { private long newTime; private final long minTime; diff --git a/src/main/java/net/minecraftforge/event/network/ChannelRegistrationChangeEvent.java b/src/main/java/net/minecraftforge/event/network/ChannelRegistrationChangeEvent.java index 4b739cf2d3..3af4d02610 100644 --- a/src/main/java/net/minecraftforge/event/network/ChannelRegistrationChangeEvent.java +++ b/src/main/java/net/minecraftforge/event/network/ChannelRegistrationChangeEvent.java @@ -18,9 +18,9 @@ import net.minecraftforge.eventbus.api.Event; * It seems plausible that this will fire multiple times for the same state, depending on what the server is doing. * It just directly dispatches upon receipt. */ -public class ChannelRegistrationChangeEvent extends Event { +public final class ChannelRegistrationChangeEvent extends Event { public enum Type { - REGISTER, UNREGISTER; + REGISTER, UNREGISTER } private final Connection source; diff --git a/src/main/java/net/minecraftforge/event/network/ConnectionStartEvent.java b/src/main/java/net/minecraftforge/event/network/ConnectionStartEvent.java index 6865b4b41b..992aa11bb1 100644 --- a/src/main/java/net/minecraftforge/event/network/ConnectionStartEvent.java +++ b/src/main/java/net/minecraftforge/event/network/ConnectionStartEvent.java @@ -18,7 +18,7 @@ import net.minecraftforge.eventbus.api.Event; * * As this is a blocking event modders can also do things like load data. Need some example uses. */ -public class ConnectionStartEvent extends Event { +public final class ConnectionStartEvent extends Event { private final Connection connection; @ApiStatus.Internal diff --git a/src/main/java/net/minecraftforge/event/network/GatherLoginConfigurationTasksEvent.java b/src/main/java/net/minecraftforge/event/network/GatherLoginConfigurationTasksEvent.java index 212a909b40..3a81dc9bfd 100644 --- a/src/main/java/net/minecraftforge/event/network/GatherLoginConfigurationTasksEvent.java +++ b/src/main/java/net/minecraftforge/event/network/GatherLoginConfigurationTasksEvent.java @@ -15,7 +15,7 @@ import net.minecraftforge.eventbus.api.Event; * Gathers tasks that need to be run during the initial login configuration. * @see net.minecraft.server.network.ServerConfigurationPacketListenerImpl#startConfiguration() startConfiguration */ -public class GatherLoginConfigurationTasksEvent extends Event { +public final class GatherLoginConfigurationTasksEvent extends Event { private final Connection connection; private final Consumer add; diff --git a/src/main/java/net/minecraftforge/event/server/ServerAboutToStartEvent.java b/src/main/java/net/minecraftforge/event/server/ServerAboutToStartEvent.java index 582a29283e..e59c9af479 100644 --- a/src/main/java/net/minecraftforge/event/server/ServerAboutToStartEvent.java +++ b/src/main/java/net/minecraftforge/event/server/ServerAboutToStartEvent.java @@ -15,7 +15,7 @@ import net.minecraftforge.fml.event.lifecycle.InterModProcessEvent; * You can obtain a reference to the server with this event. * @author cpw */ -public class ServerAboutToStartEvent extends ServerLifecycleEvent { +public final class ServerAboutToStartEvent extends ServerLifecycleEvent { public ServerAboutToStartEvent(MinecraftServer server) { diff --git a/src/main/java/net/minecraftforge/event/server/ServerLifecycleEvent.java b/src/main/java/net/minecraftforge/event/server/ServerLifecycleEvent.java index ec28d6c353..b450b5a70e 100644 --- a/src/main/java/net/minecraftforge/event/server/ServerLifecycleEvent.java +++ b/src/main/java/net/minecraftforge/event/server/ServerLifecycleEvent.java @@ -8,8 +8,8 @@ package net.minecraftforge.event.server; import net.minecraft.server.MinecraftServer; import net.minecraftforge.eventbus.api.Event; -public class ServerLifecycleEvent extends Event -{ +public sealed class ServerLifecycleEvent extends Event + permits ServerAboutToStartEvent, ServerStartedEvent, ServerStartingEvent, ServerStoppedEvent, ServerStoppingEvent { protected final MinecraftServer server; diff --git a/src/main/java/net/minecraftforge/event/server/ServerStartedEvent.java b/src/main/java/net/minecraftforge/event/server/ServerStartedEvent.java index 54328d8ea7..b0c28b6bc9 100644 --- a/src/main/java/net/minecraftforge/event/server/ServerStartedEvent.java +++ b/src/main/java/net/minecraftforge/event/server/ServerStartedEvent.java @@ -12,7 +12,7 @@ import net.minecraft.server.MinecraftServer; * * @author cpw */ -public class ServerStartedEvent extends ServerLifecycleEvent +public final class ServerStartedEvent extends ServerLifecycleEvent { public ServerStartedEvent(final MinecraftServer server) diff --git a/src/main/java/net/minecraftforge/event/server/ServerStartingEvent.java b/src/main/java/net/minecraftforge/event/server/ServerStartingEvent.java index 9d050f7ac4..0b2769c68d 100644 --- a/src/main/java/net/minecraftforge/event/server/ServerStartingEvent.java +++ b/src/main/java/net/minecraftforge/event/server/ServerStartingEvent.java @@ -15,7 +15,7 @@ import net.minecraft.server.MinecraftServer; * * @author cpw */ -public class ServerStartingEvent extends ServerLifecycleEvent +public final class ServerStartingEvent extends ServerLifecycleEvent { public ServerStartingEvent(final MinecraftServer server) { diff --git a/src/main/java/net/minecraftforge/event/server/ServerStoppedEvent.java b/src/main/java/net/minecraftforge/event/server/ServerStoppedEvent.java index 83aaa48cd8..cd7b3ef92d 100644 --- a/src/main/java/net/minecraftforge/event/server/ServerStoppedEvent.java +++ b/src/main/java/net/minecraftforge/event/server/ServerStoppedEvent.java @@ -14,7 +14,7 @@ import net.minecraft.server.MinecraftServer; * * @author cpw */ -public class ServerStoppedEvent extends ServerLifecycleEvent { +public final class ServerStoppedEvent extends ServerLifecycleEvent { public ServerStoppedEvent(MinecraftServer server) { super(server); diff --git a/src/main/java/net/minecraftforge/event/server/ServerStoppingEvent.java b/src/main/java/net/minecraftforge/event/server/ServerStoppingEvent.java index 821b570a82..c0abc416a5 100644 --- a/src/main/java/net/minecraftforge/event/server/ServerStoppingEvent.java +++ b/src/main/java/net/minecraftforge/event/server/ServerStoppingEvent.java @@ -12,7 +12,7 @@ import net.minecraft.server.MinecraftServer; * * @author cpw */ -public class ServerStoppingEvent extends ServerLifecycleEvent +public final class ServerStoppingEvent extends ServerLifecycleEvent { public ServerStoppingEvent(MinecraftServer server) { diff --git a/src/main/java/net/minecraftforge/event/village/VillageSiegeEvent.java b/src/main/java/net/minecraftforge/event/village/VillageSiegeEvent.java index bffffac3c0..73302f68b2 100644 --- a/src/main/java/net/minecraftforge/event/village/VillageSiegeEvent.java +++ b/src/main/java/net/minecraftforge/event/village/VillageSiegeEvent.java @@ -24,7 +24,7 @@ import net.minecraftforge.eventbus.api.Event; * This event is fired on the {@link MinecraftForge#EVENT_BUS}. */ @Cancelable -public class VillageSiegeEvent extends Event +public final class VillageSiegeEvent extends Event { private final VillageSiege siege; private final Level level; diff --git a/src/main/java/net/minecraftforge/event/village/WandererTradesEvent.java b/src/main/java/net/minecraftforge/event/village/WandererTradesEvent.java index cb3c724b53..632e2fb0ff 100644 --- a/src/main/java/net/minecraftforge/event/village/WandererTradesEvent.java +++ b/src/main/java/net/minecraftforge/event/village/WandererTradesEvent.java @@ -36,7 +36,7 @@ public class WandererTradesEvent extends Event { public static class Pool { private int rolls; - private List entries; + private final List entries; public Pool(Pair data) { this.rolls = data.getRight(); diff --git a/src/main/java/net/minecraftforge/fml/event/config/ModConfigEvent.java b/src/main/java/net/minecraftforge/fml/event/config/ModConfigEvent.java index 60c44855cc..67ede54410 100644 --- a/src/main/java/net/minecraftforge/fml/event/config/ModConfigEvent.java +++ b/src/main/java/net/minecraftforge/fml/event/config/ModConfigEvent.java @@ -10,7 +10,7 @@ import net.minecraftforge.fml.config.IConfigEvent; import net.minecraftforge.fml.config.ModConfig; import net.minecraftforge.fml.event.IModBusEvent; -public class ModConfigEvent extends Event implements IModBusEvent, IConfigEvent { +public sealed class ModConfigEvent extends Event implements IModBusEvent, IConfigEvent { private final ModConfig config; ModConfigEvent(final ModConfig config) { @@ -26,7 +26,7 @@ public class ModConfigEvent extends Event implements IModBusEvent, IConfigEvent * Fired during mod and server loading, depending on {@link ModConfig.Type} of config file. * Any Config objects associated with this will be valid and can be queried directly. */ - public static class Loading extends ModConfigEvent { + public static final class Loading extends ModConfigEvent { public Loading(final ModConfig config) { super(config); } @@ -38,7 +38,7 @@ public class ModConfigEvent extends Event implements IModBusEvent, IConfigEvent * and may not even be on the server or client threads. Ensure you properly synchronize * any resultant changes. */ - public static class Reloading extends ModConfigEvent { + public static final class Reloading extends ModConfigEvent { public Reloading(final ModConfig config) { super(config); } @@ -50,7 +50,7 @@ public class ModConfigEvent extends Event implements IModBusEvent, IConfigEvent * server goes away, though it will fire on the dedicated server as well. * The config file will be saved after this event has fired. */ - public static class Unloading extends ModConfigEvent { + public static final class Unloading extends ModConfigEvent { public Unloading(final ModConfig config) { super(config); } diff --git a/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLClientSetupEvent.java b/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLClientSetupEvent.java index 1376bd17c8..f13e416de8 100644 --- a/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLClientSetupEvent.java +++ b/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLClientSetupEvent.java @@ -23,7 +23,7 @@ import net.minecraftforge.fml.ModLoadingStage; * * This is a parallel dispatch event. */ -public class FMLClientSetupEvent extends ParallelDispatchEvent { +public final class FMLClientSetupEvent extends ParallelDispatchEvent { public FMLClientSetupEvent(ModContainer container, ModLoadingStage stage) { super(container, stage); } diff --git a/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLCommonSetupEvent.java b/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLCommonSetupEvent.java index e5fac14e61..65a4abaa25 100644 --- a/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLCommonSetupEvent.java +++ b/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLCommonSetupEvent.java @@ -27,7 +27,7 @@ import java.util.function.Consumer; * @see DeferredWorkQueue to enqueue work to run on the main game thread after this event has * completed dispatch */ -public class FMLCommonSetupEvent extends ParallelDispatchEvent +public final class FMLCommonSetupEvent extends ParallelDispatchEvent { public FMLCommonSetupEvent(final ModContainer container, final ModLoadingStage stage) { diff --git a/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLConstructModEvent.java b/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLConstructModEvent.java index a03ae05c6c..139c546862 100644 --- a/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLConstructModEvent.java +++ b/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLConstructModEvent.java @@ -12,7 +12,7 @@ import net.minecraftforge.fml.ModLoadingStage; * Supplied as a param to your mod's constructor to get access * to the mod EventBus and various mod-specific objects. */ -public class FMLConstructModEvent extends ParallelDispatchEvent { +public final class FMLConstructModEvent extends ParallelDispatchEvent { public FMLConstructModEvent(final ModContainer container, final ModLoadingStage stage) { super(container, stage); } diff --git a/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLDedicatedServerSetupEvent.java b/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLDedicatedServerSetupEvent.java index cdbd67ef12..e8e7b3648f 100644 --- a/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLDedicatedServerSetupEvent.java +++ b/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLDedicatedServerSetupEvent.java @@ -26,7 +26,7 @@ import net.minecraftforge.fml.ModLoadingStage; * * This is a parallel dispatch event. */ -public class FMLDedicatedServerSetupEvent extends ParallelDispatchEvent +public final class FMLDedicatedServerSetupEvent extends ParallelDispatchEvent { public FMLDedicatedServerSetupEvent(ModContainer container, ModLoadingStage stage) { diff --git a/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLLoadCompleteEvent.java b/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLLoadCompleteEvent.java index 0cf51c32f6..02f0e10bb3 100644 --- a/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLLoadCompleteEvent.java +++ b/src/main/java/net/minecraftforge/fml/event/lifecycle/FMLLoadCompleteEvent.java @@ -14,7 +14,7 @@ import net.minecraftforge.fml.ModLoadingStage; * * @author cpw */ -public class FMLLoadCompleteEvent extends ParallelDispatchEvent +public final class FMLLoadCompleteEvent extends ParallelDispatchEvent { public FMLLoadCompleteEvent(final ModContainer container, final ModLoadingStage stage) { diff --git a/src/main/java/net/minecraftforge/fml/event/lifecycle/InterModEnqueueEvent.java b/src/main/java/net/minecraftforge/fml/event/lifecycle/InterModEnqueueEvent.java index d8cffaabf5..9e9eef0385 100644 --- a/src/main/java/net/minecraftforge/fml/event/lifecycle/InterModEnqueueEvent.java +++ b/src/main/java/net/minecraftforge/fml/event/lifecycle/InterModEnqueueEvent.java @@ -19,7 +19,7 @@ import net.minecraftforge.fml.ModLoadingStage; * * This is a parallel dispatch event. */ -public class InterModEnqueueEvent extends ParallelDispatchEvent +public final class InterModEnqueueEvent extends ParallelDispatchEvent { public InterModEnqueueEvent(final ModContainer container, final ModLoadingStage stage) diff --git a/src/main/java/net/minecraftforge/fml/event/lifecycle/InterModProcessEvent.java b/src/main/java/net/minecraftforge/fml/event/lifecycle/InterModProcessEvent.java index 2065c30e87..803b97faeb 100644 --- a/src/main/java/net/minecraftforge/fml/event/lifecycle/InterModProcessEvent.java +++ b/src/main/java/net/minecraftforge/fml/event/lifecycle/InterModProcessEvent.java @@ -23,7 +23,7 @@ import java.util.function.Predicate; * @see #getIMCStream() * @see #getIMCStream(Predicate) */ -public class InterModProcessEvent extends ParallelDispatchEvent +public final class InterModProcessEvent extends ParallelDispatchEvent { public InterModProcessEvent(final ModContainer container, final ModLoadingStage stage) { diff --git a/src/main/java/net/minecraftforge/registries/DataPackRegistryEvent.java b/src/main/java/net/minecraftforge/registries/DataPackRegistryEvent.java index 1b94d251bb..e0c0f9d04f 100644 --- a/src/main/java/net/minecraftforge/registries/DataPackRegistryEvent.java +++ b/src/main/java/net/minecraftforge/registries/DataPackRegistryEvent.java @@ -20,7 +20,7 @@ import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.Nullable; -public class DataPackRegistryEvent extends Event implements IModBusEvent +public sealed class DataPackRegistryEvent extends Event implements IModBusEvent { @ApiStatus.Internal public DataPackRegistryEvent() {} diff --git a/src/main/java/net/minecraftforge/registries/IdMappingEvent.java b/src/main/java/net/minecraftforge/registries/IdMappingEvent.java index f04c4dfb35..4a956a8229 100644 --- a/src/main/java/net/minecraftforge/registries/IdMappingEvent.java +++ b/src/main/java/net/minecraftforge/registries/IdMappingEvent.java @@ -28,9 +28,9 @@ import java.util.Map; *

* Fired on the {@link net.minecraftforge.common.MinecraftForge#EVENT_BUS forge bus}. */ -public class IdMappingEvent extends Event +public final class IdMappingEvent extends Event { - public static class ModRemapping + public static final class ModRemapping { public final ResourceLocation registry; public final ResourceLocation key; diff --git a/src/main/java/net/minecraftforge/registries/MissingMappingsEvent.java b/src/main/java/net/minecraftforge/registries/MissingMappingsEvent.java index 8b8457ff01..819722962d 100644 --- a/src/main/java/net/minecraftforge/registries/MissingMappingsEvent.java +++ b/src/main/java/net/minecraftforge/registries/MissingMappingsEvent.java @@ -18,7 +18,7 @@ import java.util.Locale; /** * Fired on the {@link net.minecraftforge.common.MinecraftForge#EVENT_BUS forge bus}. */ -public class MissingMappingsEvent extends Event +public final class MissingMappingsEvent extends Event { private final ResourceKey> key; private final IForgeRegistry registry; diff --git a/src/main/java/net/minecraftforge/registries/NewRegistryEvent.java b/src/main/java/net/minecraftforge/registries/NewRegistryEvent.java index 2e56cc60f9..2bf066113f 100644 --- a/src/main/java/net/minecraftforge/registries/NewRegistryEvent.java +++ b/src/main/java/net/minecraftforge/registries/NewRegistryEvent.java @@ -22,7 +22,7 @@ import org.slf4j.Logger; /** * Register new registries when you receive this event through {@link RegistryBuilder} and {@link #create(RegistryBuilder)}. */ -public class NewRegistryEvent extends Event implements IModBusEvent { +public final class NewRegistryEvent extends Event implements IModBusEvent { private static final Logger LOGGER = LogUtils.getLogger(); private final List> registries = new ArrayList<>(); @@ -97,7 +97,7 @@ public class NewRegistryEvent extends Event implements IModBusEvent { Consumer> onFill ) {} - private static class RegistryHolder implements Supplier> { + private static final class RegistryHolder implements Supplier> { IForgeRegistry registry = null; @Override diff --git a/src/main/java/net/minecraftforge/server/permission/events/PermissionGatherEvent.java b/src/main/java/net/minecraftforge/server/permission/events/PermissionGatherEvent.java index 53ead36f48..bc610d560c 100644 --- a/src/main/java/net/minecraftforge/server/permission/events/PermissionGatherEvent.java +++ b/src/main/java/net/minecraftforge/server/permission/events/PermissionGatherEvent.java @@ -24,7 +24,7 @@ import java.util.*; * *

Note: All PermissionNodes that you want to use, must be registered!

*/ -public class PermissionGatherEvent extends Event +public sealed class PermissionGatherEvent extends Event { /** @@ -32,9 +32,9 @@ public class PermissionGatherEvent extends Event *

Note: Create a new instance when registering a PermissionHandler. * If you cache it, make sure that your PermissionHandler is actually used after this event.

*/ - public static class Handler extends PermissionGatherEvent + public static final class Handler extends PermissionGatherEvent { - private Map availableHandlers = new HashMap<>(); + private final Map availableHandlers = new HashMap<>(); public Handler() { @@ -60,7 +60,7 @@ public class PermissionGatherEvent extends Event /** * Used to register your PermissionNodes, every node that you want to use, must be registered! */ - public static class Nodes extends PermissionGatherEvent + public static final class Nodes extends PermissionGatherEvent { private final Set> nodes = new HashSet<>();