From 81116b828916c0ef856d536f5857890c00d56195 Mon Sep 17 00:00:00 2001 From: cheaterpaul Date: Fri, 19 Jul 2024 22:55:56 +0200 Subject: [PATCH] update to neoforge 21.0.111-beta close #1394 --- gradle.properties | 4 ++-- .../de/teamlapen/vampirism/blocks/TentBlock.java | 10 ---------- .../vampirism/client/VampirismModClient.java | 1 - .../client/core/ClientRegistryHandler.java | 4 ++++ .../vampirism/client/core/ModBlocksRender.java | 15 ++++++--------- .../vampirism/client/core/ModClientFluids.java | 13 +++++++++++++ .../vampirism/client/core/ModEffects.java | 9 +++------ .../vampirism/client/core/ModItemsRender.java | 11 +++++++++-- .../de/teamlapen/vampirism/core/ModFluids.java | 13 ------------- .../items/ColoredVampireClothingItem.java | 9 --------- .../teamlapen/vampirism/items/HunterHatItem.java | 10 ---------- .../vampirism/items/MotherTrophyItem.java | 9 --------- .../vampirism/items/VampireClothingItem.java | 10 ---------- .../mixin/client/accessor/MobEffectAccessor.java | 15 --------------- src/main/resources/vampirism.mixins.json | 1 - 15 files changed, 37 insertions(+), 97 deletions(-) create mode 100644 src/main/java/de/teamlapen/vampirism/client/core/ModClientFluids.java delete mode 100644 src/main/java/de/teamlapen/vampirism/mixin/client/accessor/MobEffectAccessor.java diff --git a/gradle.properties b/gradle.properties index 79ee5ca34d..f24b10df99 100755 --- a/gradle.properties +++ b/gradle.properties @@ -6,8 +6,8 @@ org.gradle.debug=false # forge minecraft_version=1.21 minecraft_version_range=[1.21,1.22) -forge_version=21.0.86-beta -forge_version_range=[21.0.86-beta,) +forge_version=21.0.111-beta +forge_version_range=[21.0.111-beta,) loader_version_range=[1,) parchment_minecraft_version=1.20.6 parchment_mappings_version=2024.05.01 diff --git a/src/main/java/de/teamlapen/vampirism/blocks/TentBlock.java b/src/main/java/de/teamlapen/vampirism/blocks/TentBlock.java index c7e32b5094..0ac140d3ae 100644 --- a/src/main/java/de/teamlapen/vampirism/blocks/TentBlock.java +++ b/src/main/java/de/teamlapen/vampirism/blocks/TentBlock.java @@ -5,7 +5,6 @@ import com.google.common.collect.Table; import com.mojang.datafixers.util.Pair; import de.teamlapen.lib.lib.util.UtilLib; -import de.teamlapen.vampirism.client.extensions.BlockExtensions; import de.teamlapen.vampirism.core.ModBlocks; import de.teamlapen.vampirism.core.ModItems; import de.teamlapen.vampirism.entity.player.VampirismPlayerAttributes; @@ -37,12 +36,9 @@ import net.minecraft.world.phys.shapes.CollisionContext; import net.minecraft.world.phys.shapes.Shapes; import net.minecraft.world.phys.shapes.VoxelShape; -import net.neoforged.neoforge.client.extensions.common.IClientBlockExtensions; import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; import java.util.Map; -import java.util.function.Consumer; import static net.minecraft.world.level.block.BedBlock.OCCUPIED; import static net.minecraft.world.level.block.state.properties.BlockStateProperties.HORIZONTAL_FACING; @@ -209,12 +205,6 @@ public TentBlock() { this.registerDefaultState(this.getStateDefinition().any().setValue(FACING, Direction.NORTH).setValue(POSITION, 0).setValue(OCCUPIED, false)); } - @Override - public void initializeClient(@NotNull Consumer consumer) { - consumer.accept(BlockExtensions.TENT); - } - - @Override public boolean canSurvive(@NotNull BlockState blockState, @NotNull LevelReader worldReader, @NotNull BlockPos blockPos) { return worldReader.getBlockState(blockPos).isAir(); diff --git a/src/main/java/de/teamlapen/vampirism/client/VampirismModClient.java b/src/main/java/de/teamlapen/vampirism/client/VampirismModClient.java index 4dad6688f6..99f43139e2 100644 --- a/src/main/java/de/teamlapen/vampirism/client/VampirismModClient.java +++ b/src/main/java/de/teamlapen/vampirism/client/VampirismModClient.java @@ -76,7 +76,6 @@ public static VampirismModClient getINSTANCE() { public void setupClient(@NotNull FMLClientSetupEvent event) { VampirismMod.proxy.onInitStep(IInitListener.Step.CLIENT_SETUP, event); event.enqueueWork(ModBlocksRender::register); - event.enqueueWork(ModEffects::modifyNightVisionRenderer); event.enqueueWork(ModItemsRender::registerItemModelPropertyUnsafe); event.enqueueWork(() -> { Sheets.addWoodType(LogBlock.DARK_SPRUCE); diff --git a/src/main/java/de/teamlapen/vampirism/client/core/ClientRegistryHandler.java b/src/main/java/de/teamlapen/vampirism/client/core/ClientRegistryHandler.java index 1be5837e31..e36b3bffda 100644 --- a/src/main/java/de/teamlapen/vampirism/client/core/ClientRegistryHandler.java +++ b/src/main/java/de/teamlapen/vampirism/client/core/ClientRegistryHandler.java @@ -24,5 +24,9 @@ public static void init(IEventBus modbus){ modbus.addListener(ModItemsRender::registerItemDecorator); modbus.addListener(ClientEventHandler::registerReloadListener); modbus.addListener(ClientEventHandler::registerStageEvent); + modbus.addListener(ModEffects::registerClientExtensions); + modbus.addListener(ModBlocksRender::registerClientExtensions); + modbus.addListener(ModClientFluids::registerClientExtensions); + modbus.addListener(ModItemsRender::registerClientExtensions); } } diff --git a/src/main/java/de/teamlapen/vampirism/client/core/ModBlocksRender.java b/src/main/java/de/teamlapen/vampirism/client/core/ModBlocksRender.java index a187c472e5..3f9440321c 100755 --- a/src/main/java/de/teamlapen/vampirism/client/core/ModBlocksRender.java +++ b/src/main/java/de/teamlapen/vampirism/client/core/ModBlocksRender.java @@ -1,29 +1,22 @@ package de.teamlapen.vampirism.client.core; -import de.teamlapen.vampirism.REFERENCE; import de.teamlapen.vampirism.api.entity.factions.IFaction; import de.teamlapen.vampirism.blockentity.AlchemicalCauldronBlockEntity; import de.teamlapen.vampirism.blockentity.TotemBlockEntity; import de.teamlapen.vampirism.blocks.TotemTopBlock; +import de.teamlapen.vampirism.client.extensions.BlockExtensions; import de.teamlapen.vampirism.client.renderer.blockentity.*; import de.teamlapen.vampirism.core.ModBlocks; import de.teamlapen.vampirism.core.ModFluids; import de.teamlapen.vampirism.core.ModTiles; import net.minecraft.client.renderer.ItemBlockRenderTypes; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.resources.model.Material; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.item.DyeColor; import net.minecraft.world.level.block.entity.BlockEntity; import net.neoforged.neoforge.client.event.EntityRenderersEvent; import net.neoforged.neoforge.client.event.RegisterColorHandlersEvent; +import net.neoforged.neoforge.client.extensions.common.RegisterClientExtensionsEvent; import org.jetbrains.annotations.NotNull; -import java.util.Arrays; -import java.util.Comparator; - -import static net.minecraft.world.inventory.InventoryMenu.BLOCK_ATLAS; - /** * Handles all block render registration including TileEntities */ @@ -79,5 +72,9 @@ private static void registerRenderType() { ItemBlockRenderTypes.setRenderLayer(ModFluids.BLOOD.get(), RenderType.translucent()); } + public static void registerClientExtensions(RegisterClientExtensionsEvent event) { + event.registerBlock(BlockExtensions.TENT, ModBlocks.TENT.get(), ModBlocks.TENT_MAIN.get()); + } + } diff --git a/src/main/java/de/teamlapen/vampirism/client/core/ModClientFluids.java b/src/main/java/de/teamlapen/vampirism/client/core/ModClientFluids.java new file mode 100644 index 0000000000..ad031b5e78 --- /dev/null +++ b/src/main/java/de/teamlapen/vampirism/client/core/ModClientFluids.java @@ -0,0 +1,13 @@ +package de.teamlapen.vampirism.client.core; + +import de.teamlapen.vampirism.client.extensions.FluidExtensions; +import de.teamlapen.vampirism.core.ModFluids; +import net.neoforged.neoforge.client.extensions.common.RegisterClientExtensionsEvent; + +public class ModClientFluids { + + public static void registerClientExtensions(RegisterClientExtensionsEvent event) { + event.registerFluidType(FluidExtensions.BLOOD, ModFluids.BLOOD_TYPE.get()); + event.registerFluidType(FluidExtensions.IMPURE_BLOOD, ModFluids.IMPURE_BLOOD_TYPE.get()); + } +} diff --git a/src/main/java/de/teamlapen/vampirism/client/core/ModEffects.java b/src/main/java/de/teamlapen/vampirism/client/core/ModEffects.java index 35f2184dea..af4b2dde76 100644 --- a/src/main/java/de/teamlapen/vampirism/client/core/ModEffects.java +++ b/src/main/java/de/teamlapen/vampirism/client/core/ModEffects.java @@ -1,15 +1,12 @@ package de.teamlapen.vampirism.client.core; import de.teamlapen.vampirism.client.extensions.EffectExtensions; -import de.teamlapen.vampirism.mixin.client.accessor.MobEffectAccessor; import net.minecraft.world.effect.MobEffects; +import net.neoforged.neoforge.client.extensions.common.RegisterClientExtensionsEvent; public class ModEffects { - public static void modifyNightVisionRenderer() { - MobEffectAccessor effect = (MobEffectAccessor) MobEffects.NIGHT_VISION.value(); - if (effect.getEffectRenderer() == null) { - effect.setEffectRenderer(EffectExtensions.NIGHT_VISION); - } + public static void registerClientExtensions(RegisterClientExtensionsEvent event) { + event.registerMobEffect(EffectExtensions.NIGHT_VISION, MobEffects.NIGHT_VISION.value()); } } diff --git a/src/main/java/de/teamlapen/vampirism/client/core/ModItemsRender.java b/src/main/java/de/teamlapen/vampirism/client/core/ModItemsRender.java index e167d950a0..8c7d3d8926 100755 --- a/src/main/java/de/teamlapen/vampirism/client/core/ModItemsRender.java +++ b/src/main/java/de/teamlapen/vampirism/client/core/ModItemsRender.java @@ -1,12 +1,12 @@ package de.teamlapen.vampirism.client.core; import com.mojang.blaze3d.vertex.PoseStack; -import de.teamlapen.vampirism.REFERENCE; import de.teamlapen.vampirism.api.entity.player.refinement.IRefinementSet; import de.teamlapen.vampirism.api.items.IArrowContainer; import de.teamlapen.vampirism.api.items.IRefinementItem; import de.teamlapen.vampirism.api.items.IVampirismCrossbow; import de.teamlapen.vampirism.api.util.VResourceLocation; +import de.teamlapen.vampirism.client.extensions.ItemExtensions; import de.teamlapen.vampirism.core.ModBlocks; import de.teamlapen.vampirism.core.ModDataComponents; import de.teamlapen.vampirism.core.ModItems; @@ -18,9 +18,9 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.CrossbowItem; import net.minecraft.world.item.component.DyedItemColor; -import net.neoforged.neoforge.capabilities.Capabilities; import net.neoforged.neoforge.client.event.RegisterColorHandlersEvent; import net.neoforged.neoforge.client.event.RegisterItemDecorationsEvent; +import net.neoforged.neoforge.client.extensions.common.RegisterClientExtensionsEvent; import org.jetbrains.annotations.NotNull; import java.util.stream.Stream; @@ -97,4 +97,11 @@ public static void registerItemDecorator(RegisterItemDecorationsEvent event) { }); }); } + + public static void registerClientExtensions(RegisterClientExtensionsEvent event) { + event.registerItem(ItemExtensions.HUNTER_HAT, ModItems.HUNTER_HAT_HEAD_0.get(), ModItems.HUNTER_HAT_HEAD_1.get()); + event.registerItem(ItemExtensions.MOTHER_TROPHY, ModBlocks.MOTHER_TROPHY.asItem()); + event.registerItem(ItemExtensions.VAMPIRE_CLOAK, ModItems.VAMPIRE_CLOAK_BLACK_BLUE.get(), ModItems.VAMPIRE_CLOAK_BLACK_RED.get(), ModItems.VAMPIRE_CLOAK_RED_BLACK.get(), ModItems.VAMPIRE_CLOAK_BLACK_WHITE.get(), ModItems.VAMPIRE_CLOAK_WHITE_BLACK.get()); + event.registerItem(ItemExtensions.VAMPIRE_CLOTHING, ModItems.VAMPIRE_CLOTHING_CROWN.get(), ModItems.VAMPIRE_CLOTHING_HAT.get(), ModItems.VAMPIRE_CLOTHING_LEGS.get(), ModItems.VAMPIRE_CLOTHING_BOOTS.get()); + } } diff --git a/src/main/java/de/teamlapen/vampirism/core/ModFluids.java b/src/main/java/de/teamlapen/vampirism/core/ModFluids.java index 908522502c..f4f2a241f8 100755 --- a/src/main/java/de/teamlapen/vampirism/core/ModFluids.java +++ b/src/main/java/de/teamlapen/vampirism/core/ModFluids.java @@ -1,7 +1,6 @@ package de.teamlapen.vampirism.core; import de.teamlapen.vampirism.REFERENCE; -import de.teamlapen.vampirism.client.extensions.FluidExtensions; import de.teamlapen.vampirism.fluids.BloodFluid; import de.teamlapen.vampirism.fluids.ImpureBloodFluid; import net.minecraft.core.registries.Registries; @@ -10,15 +9,11 @@ import net.minecraft.world.level.material.Fluid; import net.neoforged.bus.api.IEventBus; import net.neoforged.fml.ModList; -import net.neoforged.neoforge.client.extensions.common.IClientFluidTypeExtensions; import net.neoforged.neoforge.common.SoundActions; import net.neoforged.neoforge.fluids.FluidType; import net.neoforged.neoforge.registries.DeferredHolder; import net.neoforged.neoforge.registries.DeferredRegister; import net.neoforged.neoforge.registries.NeoForgeRegistries; -import org.jetbrains.annotations.NotNull; - -import java.util.function.Consumer; public class ModFluids { public static final DeferredRegister FLUIDS = DeferredRegister.create(Registries.FLUID, REFERENCE.MODID); @@ -34,10 +29,6 @@ public class ModFluids { .density(1300) .descriptionId(ModList.get().isLoaded(REFERENCE.INTEGRATIONS_MODID) ? "fluid.vampirism.blood.vampirism" : "fluid.vampirism.blood")) { - @Override - public void initializeClient(@NotNull Consumer consumer) { - consumer.accept(FluidExtensions.BLOOD); - } }); public static final DeferredHolder IMPURE_BLOOD_TYPE = FLUID_TYPES.register("impure_blood", () -> new FluidType(FluidType.Properties.create() @@ -47,10 +38,6 @@ public void initializeClient(@NotNull Consumer consu .density(1300) .descriptionId(ModList.get().isLoaded(REFERENCE.INTEGRATIONS_MODID) ? "fluid.vampirism.blood.vampirism" : "fluid.vampirism.blood")) { - @Override - public void initializeClient(@NotNull Consumer consumer) { - consumer.accept(FluidExtensions.IMPURE_BLOOD); - } }); public static final DeferredHolder BLOOD = FLUIDS.register("blood", BloodFluid::new); public static final DeferredHolder IMPURE_BLOOD = FLUIDS.register("impure_blood", ImpureBloodFluid::new); diff --git a/src/main/java/de/teamlapen/vampirism/items/ColoredVampireClothingItem.java b/src/main/java/de/teamlapen/vampirism/items/ColoredVampireClothingItem.java index 9abd06d048..902cf7503f 100644 --- a/src/main/java/de/teamlapen/vampirism/items/ColoredVampireClothingItem.java +++ b/src/main/java/de/teamlapen/vampirism/items/ColoredVampireClothingItem.java @@ -1,16 +1,12 @@ package de.teamlapen.vampirism.items; -import de.teamlapen.vampirism.client.extensions.ItemExtensions; import de.teamlapen.vampirism.core.ModArmorMaterials; import net.minecraft.core.Holder; import net.minecraft.util.StringRepresentable; import net.minecraft.world.item.ArmorItem; import net.minecraft.world.item.ArmorMaterial; -import net.neoforged.neoforge.client.extensions.common.IClientItemExtensions; import org.jetbrains.annotations.NotNull; -import java.util.function.Consumer; - public class ColoredVampireClothingItem extends VampireClothingItem { @@ -18,11 +14,6 @@ public ColoredVampireClothingItem(@NotNull ArmorItem.Type type, EnumClothingColo super(type, color.armorMaterial); } - @Override - public void initializeClient(@NotNull Consumer consumer) { - consumer.accept(ItemExtensions.VAMPIRE_CLOAK); - } - public enum EnumClothingColor implements StringRepresentable { REDBLACK("red_black", ModArmorMaterials.VAMPIRE_CLOAK_RED_BLACK), BLACKRED("black_red", ModArmorMaterials.VAMPIRE_CLOAK_BLACK_RED), diff --git a/src/main/java/de/teamlapen/vampirism/items/HunterHatItem.java b/src/main/java/de/teamlapen/vampirism/items/HunterHatItem.java index a71410b959..3b0e14bfa7 100644 --- a/src/main/java/de/teamlapen/vampirism/items/HunterHatItem.java +++ b/src/main/java/de/teamlapen/vampirism/items/HunterHatItem.java @@ -2,7 +2,6 @@ import de.teamlapen.lib.lib.util.UtilLib; import de.teamlapen.vampirism.api.VampirismAPI; -import de.teamlapen.vampirism.client.extensions.ItemExtensions; import net.minecraft.core.Holder; import net.minecraft.core.component.DataComponents; import net.minecraft.core.particles.ParticleTypes; @@ -11,14 +10,10 @@ import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ArmorMaterial; -import net.minecraft.world.item.ArmorMaterials; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; -import net.neoforged.neoforge.client.extensions.common.IClientItemExtensions; import org.jetbrains.annotations.NotNull; -import java.util.function.Consumer; - /** * Simple headwear that look like a hunter head */ @@ -30,11 +25,6 @@ public HunterHatItem(HatType type, Holder armorMaterial) { this.type = type; } - @Override - public void initializeClient(@NotNull Consumer consumer) { - consumer.accept(ItemExtensions.HUNTER_HAT); - } - private String descriptionId; public HatType getHateType() { diff --git a/src/main/java/de/teamlapen/vampirism/items/MotherTrophyItem.java b/src/main/java/de/teamlapen/vampirism/items/MotherTrophyItem.java index 697424af09..7ba4f4e6a0 100644 --- a/src/main/java/de/teamlapen/vampirism/items/MotherTrophyItem.java +++ b/src/main/java/de/teamlapen/vampirism/items/MotherTrophyItem.java @@ -1,20 +1,11 @@ package de.teamlapen.vampirism.items; -import de.teamlapen.vampirism.client.extensions.ItemExtensions; import net.minecraft.world.item.BlockItem; import net.minecraft.world.level.block.Block; -import net.neoforged.neoforge.client.extensions.common.IClientItemExtensions; - -import java.util.function.Consumer; public class MotherTrophyItem extends BlockItem { public MotherTrophyItem(Block pBlock, Properties pProperties) { super(pBlock, pProperties); } - - @Override - public void initializeClient(Consumer consumer) { - consumer.accept(ItemExtensions.MOTHER_TROPHY); - } } diff --git a/src/main/java/de/teamlapen/vampirism/items/VampireClothingItem.java b/src/main/java/de/teamlapen/vampirism/items/VampireClothingItem.java index e01cadfd3b..1ff8369ba6 100644 --- a/src/main/java/de/teamlapen/vampirism/items/VampireClothingItem.java +++ b/src/main/java/de/teamlapen/vampirism/items/VampireClothingItem.java @@ -6,8 +6,6 @@ import de.teamlapen.vampirism.api.VampirismAPI; import de.teamlapen.vampirism.api.entity.factions.IFaction; import de.teamlapen.vampirism.api.items.IFactionExclusiveItem; -import de.teamlapen.vampirism.client.extensions.ItemExtensions; -import de.teamlapen.vampirism.core.ModArmorMaterials; import de.teamlapen.vampirism.core.ModEffects; import de.teamlapen.vampirism.core.ModItems; import de.teamlapen.vampirism.util.Helper; @@ -25,12 +23,10 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; import net.minecraft.world.level.Level; -import net.neoforged.neoforge.client.extensions.common.IClientItemExtensions; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.List; -import java.util.function.Consumer; public class VampireClothingItem extends ArmorItem implements IFactionExclusiveItem { @@ -43,12 +39,6 @@ public void appendHoverText(@NotNull ItemStack stack, @Nullable TooltipContext c this.addFactionToolTips(stack, context, tooltip, flagIn, VampirismMod.proxy.getClientPlayer()); } - - @Override - public void initializeClient(@NotNull Consumer consumer) { - consumer.accept(ItemExtensions.VAMPIRE_CLOTHING); - } - @Override public boolean canEquip(ItemStack stack, EquipmentSlot armorType, LivingEntity entity) { return super.canEquip(stack, armorType, entity) && Helper.isVampire(entity); diff --git a/src/main/java/de/teamlapen/vampirism/mixin/client/accessor/MobEffectAccessor.java b/src/main/java/de/teamlapen/vampirism/mixin/client/accessor/MobEffectAccessor.java deleted file mode 100644 index e289436caf..0000000000 --- a/src/main/java/de/teamlapen/vampirism/mixin/client/accessor/MobEffectAccessor.java +++ /dev/null @@ -1,15 +0,0 @@ -package de.teamlapen.vampirism.mixin.client.accessor; - -import net.minecraft.world.effect.MobEffect; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.gen.Accessor; - -@Mixin(MobEffect.class) -public interface MobEffectAccessor { - - @Accessor("effectRenderer") - Object getEffectRenderer(); - - @Accessor("effectRenderer") - void setEffectRenderer(Object effectRenderer); -} diff --git a/src/main/resources/vampirism.mixins.json b/src/main/resources/vampirism.mixins.json index 219752d1b3..b021d16afe 100644 --- a/src/main/resources/vampirism.mixins.json +++ b/src/main/resources/vampirism.mixins.json @@ -68,7 +68,6 @@ "client.accessor.EntityRenderDispatcherAccessor", "client.accessor.HumanoidArmorLayerAccessor", "client.accessor.LivingEntityRendererAccessor", - "client.accessor.MobEffectAccessor", "client.accessor.ParticleEngineAccessor", "client.accessor.StatsScreenAccessor", "client.accessor.VillagerModelAccessor"