diff --git a/build.gradle b/build.gradle index a64fdbc..84edb9a 100644 --- a/build.gradle +++ b/build.gradle @@ -2,7 +2,7 @@ apply plugin: "net.minecraftforge.gradle.forge" apply plugin: 'kotlin' group = 'com.github.octarine-noise' -version = "2.0.7" +version = "2.0.8" archivesBaseName = rootProject.name + '-MC1.9' buildscript { @@ -32,8 +32,8 @@ dependencies { } minecraft { - version = '1.9-12.16.0.1810-1.9' - mappings = 'snapshot_20160326' + version = '1.9-12.16.0.1853-1.9' + mappings = 'snapshot_20160406' runDir = 'run' } diff --git a/src/main/kotlin/mods/betterfoliage/client/Hooks.kt b/src/main/kotlin/mods/betterfoliage/client/Hooks.kt index 3cb1c0e..1c7c5c1 100644 --- a/src/main/kotlin/mods/betterfoliage/client/Hooks.kt +++ b/src/main/kotlin/mods/betterfoliage/client/Hooks.kt @@ -95,10 +95,10 @@ fun renderWorldBlock(dispatcher: BlockRendererDispatcher, return if (canRender) dispatcher.renderBlock(state, pos, blockAccess, worldRenderer) else false } -fun canRenderBlockInLayer(block: Block, layer: BlockRenderLayer): Boolean { - if (layer == CUTOUT_MIPPED && !block.canRenderInLayer(CUTOUT)) { +fun canRenderBlockInLayer(block: Block, state: IBlockState, layer: BlockRenderLayer): Boolean { + if (layer == CUTOUT_MIPPED && !block.canRenderInLayer(state, CUTOUT)) { return true } - return block.canRenderInLayer(layer) + return block.canRenderInLayer(state, layer) } \ No newline at end of file diff --git a/src/main/kotlin/mods/betterfoliage/loader/BetterFoliageCore.kt b/src/main/kotlin/mods/betterfoliage/loader/BetterFoliageCore.kt index cce1927..4a13230 100644 --- a/src/main/kotlin/mods/betterfoliage/loader/BetterFoliageCore.kt +++ b/src/main/kotlin/mods/betterfoliage/loader/BetterFoliageCore.kt @@ -110,6 +110,7 @@ class BetterFoliageTransformer : Transformer() { find(varinsn(ISTORE, 23))?.insertAfter { log.info("Applying RenderChunk block layer override") varinsn(ALOAD, 19) + varinsn(ALOAD, 20) varinsn(ALOAD, 22) invokeStatic(Refs.canRenderBlockInLayer) varinsn(ISTORE, 23) diff --git a/src/main/kotlin/mods/betterfoliage/loader/Refs.kt b/src/main/kotlin/mods/betterfoliage/loader/Refs.kt index ec8e9b0..d759fc2 100644 --- a/src/main/kotlin/mods/betterfoliage/loader/Refs.kt +++ b/src/main/kotlin/mods/betterfoliage/loader/Refs.kt @@ -29,7 +29,7 @@ object Refs { val Block = ClassRef("net.minecraft.block.Block", "ajt") val StateImplementation = ClassRef("net.minecraft.block.state.BlockStateContainer\$StateImplementation", "ard\$a") - val canRenderInLayer = MethodRef(Block, "canRenderInLayer", ClassRef.boolean, BlockRenderLayer) + val canRenderInLayer = MethodRef(Block, "canRenderInLayer", ClassRef.boolean, IBlockState, BlockRenderLayer) val getAmbientOcclusionLightValue = MethodRef(StateImplementation, "getAmbientOcclusionLightValue", "func_185892_j", "j", ClassRef.float) val useNeighborBrightness = MethodRef(StateImplementation, "useNeighborBrightness", "func_185916_f", "f", ClassRef.boolean) val doesSideBlockRendering = MethodRef(StateImplementation, "doesSideBlockRendering", ClassRef.boolean, IBlockAccess, BlockPos, EnumFacing) @@ -75,7 +75,7 @@ object Refs { val onRandomDisplayTick = MethodRef(BetterFoliageHooks, "onRandomDisplayTick", ClassRef.void, World, IBlockState, BlockPos) val onAfterLoadModelDefinitions = MethodRef(BetterFoliageHooks, "onAfterLoadModelDefinitions", ClassRef.void, ModelLoader) val renderWorldBlock = MethodRef(BetterFoliageHooks, "renderWorldBlock", ClassRef.boolean, BlockRendererDispatcher, IBlockState, BlockPos, IBlockAccess, VertexBuffer, BlockRenderLayer) - val canRenderBlockInLayer = MethodRef(BetterFoliageHooks, "canRenderBlockInLayer", ClassRef.boolean, Block, BlockRenderLayer) + val canRenderBlockInLayer = MethodRef(BetterFoliageHooks, "canRenderBlockInLayer", ClassRef.boolean, Block, IBlockState, BlockRenderLayer) // Optifine val OptifineClassTransformer = ClassRef("optifine.OptiFineClassTransformer")