Add support for Diagonal Fences
This commit is contained in:
parent
0f180ff979
commit
baca029fd0
|
|
@ -26,6 +26,7 @@ dependencies {
|
||||||
modCompileOnly("appeng:appliedenergistics2-fabric:${appeng_version}") {
|
modCompileOnly("appeng:appliedenergistics2-fabric:${appeng_version}") {
|
||||||
transitive = false
|
transitive = false
|
||||||
}
|
}
|
||||||
|
modCompileOnly("curse.maven:diagonal-fences-458048:${diagonal_fences_version}")
|
||||||
// compile against the JEI API but do not include it at runtime
|
// compile against the JEI API but do not include it at runtime
|
||||||
modCompileOnly("mezz.jei:jei-${minecraft_version}-common:${jei_version}")
|
modCompileOnly("mezz.jei:jei-${minecraft_version}-common:${jei_version}")
|
||||||
modCompileOnly("mezz.jei:jei-${minecraft_version}-gui:${jei_version}")
|
modCompileOnly("mezz.jei:jei-${minecraft_version}-gui:${jei_version}")
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,43 @@
|
||||||
|
package org.embeddedt.modernfix.common.mixin.perf.dynamic_resources.diagonalfences;
|
||||||
|
|
||||||
|
import fuzs.diagonalfences.api.world.level.block.DiagonalBlock;
|
||||||
|
import fuzs.diagonalfences.client.model.MultipartAppender;
|
||||||
|
import net.minecraft.client.renderer.block.model.multipart.MultiPart;
|
||||||
|
import net.minecraft.client.resources.model.ModelBakery;
|
||||||
|
import net.minecraft.client.resources.model.UnbakedModel;
|
||||||
|
import net.minecraft.resources.ResourceLocation;
|
||||||
|
import net.minecraft.world.level.block.Block;
|
||||||
|
import net.minecraft.world.level.block.FenceBlock;
|
||||||
|
import org.embeddedt.modernfix.ModernFixClient;
|
||||||
|
import org.embeddedt.modernfix.annotation.RequiresMod;
|
||||||
|
import org.embeddedt.modernfix.api.entrypoint.ModernFixClientIntegration;
|
||||||
|
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.Inject;
|
||||||
|
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||||
|
|
||||||
|
@Mixin(MultipartAppender.class)
|
||||||
|
@RequiresMod("diagonalfences")
|
||||||
|
public abstract class MultipartAppenderMixin {
|
||||||
|
@Shadow(remap = false)
|
||||||
|
public static void appendDiagonalSelectors(ModelBakery modelBakery, MultiPart multiPart) {
|
||||||
|
throw new AssertionError();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Inject(method = "onPrepareModelBaking", at = @At("RETURN"))
|
||||||
|
private static void setupHelper(CallbackInfo ci) {
|
||||||
|
ModernFixClient.CLIENT_INTEGRATIONS.add(new ModernFixClientIntegration() {
|
||||||
|
@Override
|
||||||
|
public UnbakedModel onUnbakedModelLoad(ResourceLocation location, UnbakedModel originalModel, ModelBakery bakery) {
|
||||||
|
if(originalModel instanceof MultiPart multipart) {
|
||||||
|
Block block = multipart.definition.getOwner();
|
||||||
|
if(block instanceof FenceBlock && block instanceof DiagonalBlock diagonalBlock && diagonalBlock.hasProperties()) {
|
||||||
|
appendDiagonalSelectors(bakery, multipart);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return originalModel;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -30,3 +30,4 @@ accessible field net/minecraft/server/MinecraftServer resources Lnet/minecraft/s
|
||||||
accessible class net/minecraft/server/MinecraftServer$ReloadableResources
|
accessible class net/minecraft/server/MinecraftServer$ReloadableResources
|
||||||
accessible method net/minecraft/client/gui/screens/Screen addRenderableWidget (Lnet/minecraft/client/gui/components/events/GuiEventListener;)Lnet/minecraft/client/gui/components/events/GuiEventListener;
|
accessible method net/minecraft/client/gui/screens/Screen addRenderableWidget (Lnet/minecraft/client/gui/components/events/GuiEventListener;)Lnet/minecraft/client/gui/components/events/GuiEventListener;
|
||||||
accessible field net/minecraft/client/KeyMapping ALL Ljava/util/Map;
|
accessible field net/minecraft/client/KeyMapping ALL Ljava/util/Map;
|
||||||
|
accessible field net/minecraft/client/renderer/block/model/multipart/MultiPart definition Lnet/minecraft/world/level/block/state/StateDefinition;
|
||||||
|
|
@ -18,3 +18,4 @@ fabric_api_version=0.76.0+1.19.2
|
||||||
|
|
||||||
modmenu_version=4.1.2
|
modmenu_version=4.1.2
|
||||||
appeng_version=12.9.3
|
appeng_version=12.9.3
|
||||||
|
diagonal_fences_version=4545943
|
||||||
Loading…
Reference in New Issue
Block a user