From 6f3cef7e1daf78375f8a1836766fbb7425c95433 Mon Sep 17 00:00:00 2001 From: embeddedt <42941056+embeddedt@users.noreply.github.com> Date: Sun, 9 Apr 2023 20:04:51 -0400 Subject: [PATCH] Fix compile errors --- build.gradle | 3 ++- gradle.properties | 4 +++- .../core/config/ModernFixEarlyConfig.java | 3 +-- .../DynamicModelBakeEvent.java | 10 +++++----- .../dynamicresources/ResourcePackHandler.java | 2 +- .../mixin/devenv/MinecraftMixin.java | 15 +++++++------- .../BlockBehaviourMixin.java | 2 +- .../dynamic_resources/ModelBakeryMixin.java | 15 +++++++------- .../ctm/TextureMetadataHandlerMixin.java | 4 ++-- .../jeresources/LootTableHelperMixin.java | 20 ------------------- src/main/resources/modernfix.mixins.json | 1 - 11 files changed, 29 insertions(+), 50 deletions(-) delete mode 100644 src/main/java/org/embeddedt/modernfix/mixin/perf/use_integrated_resources/jeresources/LootTableHelperMixin.java diff --git a/build.gradle b/build.gradle index cf8a268b..22bee8c9 100644 --- a/build.gradle +++ b/build.gradle @@ -90,10 +90,11 @@ dependencies { // compile against the JEI API but do not include it at runtime modCompileOnly("mezz.jei:jei-${minecraft_version}-forge:${jei_version}") - modRuntimeOnly("curse.maven:jei-238222:4352925") modCompileOnly("curse.maven:jeresources-240630:3831559") modCompileOnly "me.shedaniel:RoughlyEnoughItems-forge:${rei_version}" + modCompileOnly("dev.latvian.mods:kubejs-forge:${kubejs_version}") + modRuntimeOnly("curse.maven:ferritecore-429235:4074294") modCompileOnly("team.chisel.ctm:CTM:${ctm_version}") } diff --git a/gradle.properties b/gradle.properties index 65e3c416..f014992a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -14,4 +14,6 @@ lazydfu_version=3544496 parchment_version=2022.11.06 refined_storage_version=4392829 jei_version=10.2.1.283 -rei_version=8.3.590 \ No newline at end of file +rei_version=8.3.590 +ctm_version=1.18.2-1.1.5+5 +kubejs_version=1802.5.5-build.569 \ No newline at end of file diff --git a/src/main/java/org/embeddedt/modernfix/core/config/ModernFixEarlyConfig.java b/src/main/java/org/embeddedt/modernfix/core/config/ModernFixEarlyConfig.java index 7737901e..537811cd 100644 --- a/src/main/java/org/embeddedt/modernfix/core/config/ModernFixEarlyConfig.java +++ b/src/main/java/org/embeddedt/modernfix/core/config/ModernFixEarlyConfig.java @@ -1,6 +1,7 @@ package org.embeddedt.modernfix.core.config; import net.minecraftforge.fml.loading.FMLLoader; +import net.minecraftforge.fml.loading.moddiscovery.ExplodedDirectoryLocator; import net.minecraftforge.fml.loading.moddiscovery.ModInfo; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -28,8 +29,6 @@ public class ModernFixEarlyConfig { this.addMixinRule("feature.reduce_loading_screen_freezes", false); this.addMixinRule("feature.direct_stack_trace", false); this.addMixinRule("perf.fast_registry_validation", true); - this.addMixinRule("perf.use_integrated_resources.jepb", modPresent("jepb")); - this.addMixinRule("perf.use_integrated_resources.jeresources", modPresent("jeresources")); this.addMixinRule("perf.jeresources_startup", modPresent("jeresources")); this.addMixinRule("perf.remove_biome_temperature_cache", true); this.addMixinRule("perf.reduce_blockstate_cache_rebuilds", true); diff --git a/src/main/java/org/embeddedt/modernfix/dynamicresources/DynamicModelBakeEvent.java b/src/main/java/org/embeddedt/modernfix/dynamicresources/DynamicModelBakeEvent.java index 76b6c3d0..f2bc894e 100644 --- a/src/main/java/org/embeddedt/modernfix/dynamicresources/DynamicModelBakeEvent.java +++ b/src/main/java/org/embeddedt/modernfix/dynamicresources/DynamicModelBakeEvent.java @@ -4,9 +4,9 @@ import net.minecraft.client.resources.model.BakedModel; import net.minecraft.client.resources.model.ModelManager; import net.minecraft.client.resources.model.UnbakedModel; import net.minecraft.resources.ResourceLocation; -import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.client.model.ForgeModelBakery; import net.minecraftforge.eventbus.api.Event; -import net.minecraftforge.fml.event.lifecycle.IModBusEvent; +import net.minecraftforge.fml.event.IModBusEvent; /** * Fired when a model is baked dynamically. Intended to be used as a replacement for ModelBakeEvent @@ -19,8 +19,8 @@ public class DynamicModelBakeEvent extends Event implements IModBusEvent { private final ResourceLocation location; private BakedModel model; private final UnbakedModel unbakedModel; - private final ModelLoader modelLoader; - public DynamicModelBakeEvent(ResourceLocation location, UnbakedModel unbakedModel, BakedModel model, ModelLoader loader) { + private final ForgeModelBakery modelLoader; + public DynamicModelBakeEvent(ResourceLocation location, UnbakedModel unbakedModel, BakedModel model, ForgeModelBakery loader) { this.location = location; this.model = model; this.unbakedModel = unbakedModel; @@ -39,7 +39,7 @@ public class DynamicModelBakeEvent extends Event implements IModBusEvent { return this.unbakedModel; } - public ModelLoader getModelLoader() { + public ForgeModelBakery getModelLoader() { return this.modelLoader; } diff --git a/src/main/java/org/embeddedt/modernfix/dynamicresources/ResourcePackHandler.java b/src/main/java/org/embeddedt/modernfix/dynamicresources/ResourcePackHandler.java index ee6c5fca..35df07b7 100644 --- a/src/main/java/org/embeddedt/modernfix/dynamicresources/ResourcePackHandler.java +++ b/src/main/java/org/embeddedt/modernfix/dynamicresources/ResourcePackHandler.java @@ -1,6 +1,6 @@ package org.embeddedt.modernfix.dynamicresources; -import dev.latvian.kubejs.script.data.KubeJSResourcePack; +import dev.latvian.mods.kubejs.script.data.KubeJSResourcePack; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.packs.PackResources; import net.minecraft.server.packs.resources.ResourceManager; diff --git a/src/main/java/org/embeddedt/modernfix/mixin/devenv/MinecraftMixin.java b/src/main/java/org/embeddedt/modernfix/mixin/devenv/MinecraftMixin.java index e4e90f44..ce505efc 100644 --- a/src/main/java/org/embeddedt/modernfix/mixin/devenv/MinecraftMixin.java +++ b/src/main/java/org/embeddedt/modernfix/mixin/devenv/MinecraftMixin.java @@ -1,17 +1,16 @@ package org.embeddedt.modernfix.mixin.devenv; -import com.mojang.authlib.minecraft.OfflineSocialInteractions; -import com.mojang.authlib.minecraft.SocialInteractionsService; +import com.mojang.authlib.minecraft.UserApiService; +import com.mojang.authlib.yggdrasil.YggdrasilAuthenticationService; import net.minecraft.client.Minecraft; +import net.minecraft.client.main.GameConfig; import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; +import org.spongepowered.asm.mixin.Overwrite; @Mixin(Minecraft.class) public class MinecraftMixin { - @Inject(method = "createSocialInteractions", at = @At("HEAD"), cancellable = true) - private void noSocialInteraction(CallbackInfoReturnable cir) { - cir.setReturnValue(new OfflineSocialInteractions()); + @Overwrite + private UserApiService createUserApiService(YggdrasilAuthenticationService yggdrasilAuthenticationService, GameConfig arg) { + return UserApiService.OFFLINE; } } diff --git a/src/main/java/org/embeddedt/modernfix/mixin/perf/compress_blockstate/BlockBehaviourMixin.java b/src/main/java/org/embeddedt/modernfix/mixin/perf/compress_blockstate/BlockBehaviourMixin.java index 852b8f52..2ee283ed 100644 --- a/src/main/java/org/embeddedt/modernfix/mixin/perf/compress_blockstate/BlockBehaviourMixin.java +++ b/src/main/java/org/embeddedt/modernfix/mixin/perf/compress_blockstate/BlockBehaviourMixin.java @@ -7,7 +7,7 @@ import org.spongepowered.asm.mixin.Overwrite; @Mixin(BlockBehaviour.class) public class BlockBehaviourMixin { - @Overwrite + @Overwrite(remap = false) protected boolean isAir(BlockState state) { return state.getBlock().properties.isAir; } diff --git a/src/main/java/org/embeddedt/modernfix/mixin/perf/dynamic_resources/ModelBakeryMixin.java b/src/main/java/org/embeddedt/modernfix/mixin/perf/dynamic_resources/ModelBakeryMixin.java index e965131e..1f5272ae 100644 --- a/src/main/java/org/embeddedt/modernfix/mixin/perf/dynamic_resources/ModelBakeryMixin.java +++ b/src/main/java/org/embeddedt/modernfix/mixin/perf/dynamic_resources/ModelBakeryMixin.java @@ -29,17 +29,17 @@ import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.StateDefinition; import net.minecraftforge.client.ForgeHooksClient; -import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.client.model.ForgeModelBakery; import net.minecraftforge.client.model.ModelLoaderRegistry; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.fml.ModLoader; import org.apache.commons.lang3.tuple.Triple; -import org.apache.logging.log4j.Logger; import org.embeddedt.modernfix.ModernFix; import org.embeddedt.modernfix.dynamicresources.DynamicBakedModelProvider; import org.embeddedt.modernfix.dynamicresources.DynamicModelBakeEvent; import org.embeddedt.modernfix.dynamicresources.ModelLocationCache; import org.embeddedt.modernfix.dynamicresources.ResourcePackHandler; +import org.slf4j.Logger; import org.spongepowered.asm.mixin.*; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; @@ -76,8 +76,6 @@ public abstract class ModelBakeryMixin { @Shadow protected abstract void loadModel(ResourceLocation blockstateLocation) throws Exception; - @Shadow @Final private static Logger LOGGER; - @Shadow @Final @Mutable private Map bakedTopLevelModels; @@ -89,6 +87,7 @@ public abstract class ModelBakeryMixin { @Shadow @Final public static BlockModel BLOCK_ENTITY_MARKER; + @Shadow @Final private static Logger LOGGER; private Cache, BakedModel> loadedBakedModels; private Cache loadedModels; @@ -137,7 +136,7 @@ public abstract class ModelBakeryMixin { * @author embeddedt * @reason don't load any models initially, just set up initial data structures */ - @Overwrite + @Overwrite(remap = false) protected void processLoading(ProfilerFiller arg, int maxMipLevels) { ModelLoaderRegistry.onModelLoadingStart(); try { @@ -278,8 +277,8 @@ public abstract class ModelBakeryMixin { } } - @Overwrite - public BakedModel getBakedModel(ResourceLocation arg, ModelState arg2, Function textureGetter) { + @Overwrite(remap = false) + public BakedModel bake(ResourceLocation arg, ModelState arg2, Function textureGetter) { Triple triple = Triple.of(arg, arg2.getRotation(), arg2.isUvLocked()); BakedModel existing = this.bakedCache.get(triple); if (existing != null) { @@ -302,7 +301,7 @@ public abstract class ModelBakeryMixin { if(ibakedmodel == null) { ibakedmodel = iunbakedmodel.bake((ModelBakery) (Object) this, textureGetter, arg2, arg); } - DynamicModelBakeEvent event = new DynamicModelBakeEvent(arg, iunbakedmodel, ibakedmodel, (ModelLoader)(Object)this); + DynamicModelBakeEvent event = new DynamicModelBakeEvent(arg, iunbakedmodel, ibakedmodel, (ForgeModelBakery)(Object)this); ModLoader.get().postEvent(event); this.bakedCache.put(triple, event.getModel()); return event.getModel(); diff --git a/src/main/java/org/embeddedt/modernfix/mixin/perf/dynamic_resources/ctm/TextureMetadataHandlerMixin.java b/src/main/java/org/embeddedt/modernfix/mixin/perf/dynamic_resources/ctm/TextureMetadataHandlerMixin.java index 4d52de4e..453b8962 100644 --- a/src/main/java/org/embeddedt/modernfix/mixin/perf/dynamic_resources/ctm/TextureMetadataHandlerMixin.java +++ b/src/main/java/org/embeddedt/modernfix/mixin/perf/dynamic_resources/ctm/TextureMetadataHandlerMixin.java @@ -6,7 +6,7 @@ import net.minecraft.client.resources.model.BakedModel; import net.minecraft.client.resources.model.Material; import net.minecraft.client.resources.model.UnbakedModel; import net.minecraft.resources.ResourceLocation; -import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.client.model.ForgeModelBakery; import net.minecraftforge.eventbus.api.SubscribeEvent; import org.embeddedt.modernfix.dynamicresources.DynamicModelBakeEvent; import org.spongepowered.asm.mixin.Final; @@ -25,7 +25,7 @@ import java.util.*; @Mixin(TextureMetadataHandler.class) public abstract class TextureMetadataHandlerMixin { - @Shadow @Nonnull protected abstract BakedModel wrap(ResourceLocation loc, UnbakedModel model, BakedModel object, ModelLoader loader) throws IOException; + @Shadow @Nonnull protected abstract BakedModel wrap(ResourceLocation loc, UnbakedModel model, BakedModel object, ForgeModelBakery loader) throws IOException; @SubscribeEvent public void onDynamicModelBake(DynamicModelBakeEvent event) { diff --git a/src/main/java/org/embeddedt/modernfix/mixin/perf/use_integrated_resources/jeresources/LootTableHelperMixin.java b/src/main/java/org/embeddedt/modernfix/mixin/perf/use_integrated_resources/jeresources/LootTableHelperMixin.java deleted file mode 100644 index 1a4ff873..00000000 --- a/src/main/java/org/embeddedt/modernfix/mixin/perf/use_integrated_resources/jeresources/LootTableHelperMixin.java +++ /dev/null @@ -1,20 +0,0 @@ -package org.embeddedt.modernfix.mixin.perf.use_integrated_resources.jeresources; - -import jeresources.util.LootTableHelper; -import net.minecraft.server.MinecraftServer; -import net.minecraft.world.level.Level; -import net.minecraftforge.server.ServerLifecycleHooks; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Redirect; - -@Mixin(LootTableHelper.class) -public class LootTableHelperMixin { - @Redirect(method = "getLootTables", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;getServer()Lnet/minecraft/server/MinecraftServer;")) - private static MinecraftServer useIntegrated(Level level) { - MinecraftServer server = level.getServer(); - if(server != null) - return server; - return ServerLifecycleHooks.getCurrentServer(); - } -} diff --git a/src/main/resources/modernfix.mixins.json b/src/main/resources/modernfix.mixins.json index f4322687..e7666883 100644 --- a/src/main/resources/modernfix.mixins.json +++ b/src/main/resources/modernfix.mixins.json @@ -61,7 +61,6 @@ "perf.cache_model_materials.VanillaModelMixin", "perf.cache_model_materials.MultipartMixin", "perf.faster_texture_stitching.StitcherMixin", - "perf.use_integrated_resources.LootTableHelperMixin", "perf.faster_singleplayer_load.MinecraftServerMixin", "devenv.MinecraftMixin", "devenv.NarratorMixin"