mixin-hook包

This commit is contained in:
GaLicn 2025-09-06 16:20:03 +08:00
parent 06a5dafaaa
commit d7a690da14

View File

@ -1,10 +1,9 @@
package com.extendedae_plus.mixin.hooks; package com.extendedae_plus.mixin.hooks;
import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
import net.minecraft.client.resources.model.ModelBakery; import net.minecraft.client.resources.model.ModelBakery;
import net.minecraft.client.resources.model.UnbakedModel; import net.minecraft.client.resources.model.UnbakedModel;
@ -18,16 +17,11 @@ import com.extendedae_plus.hooks.BuiltInModelHooks;
*/ */
@Mixin(ModelBakery.class) @Mixin(ModelBakery.class)
public class ModelBakeryMixin { public class ModelBakeryMixin {
@Inject(method = "loadModel", at = @At("HEAD"), cancellable = true) @Inject(method = "getModel", at = @At("HEAD"), cancellable = true)
private void extendedae_plus$loadModelHook(ResourceLocation id, CallbackInfo ci) { private void extendedae_plus$getModelHook(ResourceLocation id, CallbackInfoReturnable<UnbakedModel> cir) {
var model = BuiltInModelHooks.getBuiltInModel(id); var model = BuiltInModelHooks.getBuiltInModel(id);
if (model != null) { if (model != null) {
cacheAndQueueDependencies(id, model); cir.setReturnValue(model);
ci.cancel();
} }
} }
@Shadow
protected void cacheAndQueueDependencies(ResourceLocation id, UnbakedModel unbakedModel) {
}
} }