Merge 1.16 into 1.18
This commit is contained in:
commit
ee8093fc50
|
|
@ -1,7 +1,11 @@
|
||||||
package org.embeddedt.modernfix.common.mixin.perf.dynamic_resources;
|
package org.embeddedt.modernfix.common.mixin.perf.dynamic_resources;
|
||||||
|
|
||||||
|
import net.minecraft.client.multiplayer.ClientLevel;
|
||||||
|
import net.minecraft.client.renderer.block.model.ItemOverride;
|
||||||
import net.minecraft.client.renderer.block.model.ItemOverrides;
|
import net.minecraft.client.renderer.block.model.ItemOverrides;
|
||||||
import net.minecraft.client.resources.model.BakedModel;
|
import net.minecraft.client.resources.model.BakedModel;
|
||||||
|
import net.minecraft.world.entity.LivingEntity;
|
||||||
|
import net.minecraft.world.item.ItemStack;
|
||||||
import org.embeddedt.modernfix.dynamicresources.ItemOverrideBakedModel;
|
import org.embeddedt.modernfix.dynamicresources.ItemOverrideBakedModel;
|
||||||
import org.spongepowered.asm.mixin.Mixin;
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
import org.spongepowered.asm.mixin.injection.At;
|
import org.spongepowered.asm.mixin.injection.At;
|
||||||
|
|
@ -11,11 +15,12 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
|
||||||
@Mixin(ItemOverrides.class)
|
@Mixin(ItemOverrides.class)
|
||||||
public class ItemOverridesMixin {
|
public class ItemOverridesMixin {
|
||||||
@Inject(method = "resolve", at = @At("RETURN"), cancellable = true)
|
@Inject(method = "resolve", at = @At("RETURN"), cancellable = true)
|
||||||
private void getRealModel(CallbackInfoReturnable<BakedModel> cir) {
|
private void getRealModel(BakedModel bakedModel, ItemStack itemStack, ClientLevel clientLevel, LivingEntity livingEntity, CallbackInfoReturnable<BakedModel> cir) {
|
||||||
BakedModel original = cir.getReturnValue();
|
BakedModel original = cir.getReturnValue();
|
||||||
if(original instanceof ItemOverrideBakedModel) {
|
if(original instanceof ItemOverrideBakedModel) {
|
||||||
ItemOverrideBakedModel override = (ItemOverrideBakedModel)original;
|
ItemOverrideBakedModel override = (ItemOverrideBakedModel)original;
|
||||||
cir.setReturnValue(override.getRealModel());
|
BakedModel overrideModel = override.getRealModel();
|
||||||
|
cir.setReturnValue(overrideModel != null ? overrideModel : bakedModel);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user