Fix compile errors

This commit is contained in:
embeddedt 2023-04-09 20:04:51 -04:00
parent 21dfec3b93
commit 6f3cef7e1d
No known key found for this signature in database
GPG Key ID: A69433EC199B5613
11 changed files with 29 additions and 50 deletions

View File

@ -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}")
}

View File

@ -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
rei_version=8.3.590
ctm_version=1.18.2-1.1.5+5
kubejs_version=1802.5.5-build.569

View File

@ -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);

View File

@ -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;
}

View File

@ -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;

View File

@ -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<SocialInteractionsService> cir) {
cir.setReturnValue(new OfflineSocialInteractions());
@Overwrite
private UserApiService createUserApiService(YggdrasilAuthenticationService yggdrasilAuthenticationService, GameConfig arg) {
return UserApiService.OFFLINE;
}
}

View File

@ -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;
}

View File

@ -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<ResourceLocation, BakedModel> 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<Triple<ResourceLocation, Transformation, Boolean>, BakedModel> loadedBakedModels;
private Cache<ResourceLocation, UnbakedModel> 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<Material, TextureAtlasSprite> textureGetter) {
@Overwrite(remap = false)
public BakedModel bake(ResourceLocation arg, ModelState arg2, Function<Material, TextureAtlasSprite> textureGetter) {
Triple<ResourceLocation, Transformation, Boolean> 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();

View File

@ -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) {

View File

@ -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();
}
}

View File

@ -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"