diff --git a/build.gradle b/build.gradle index 9be729a..0ed376f 100644 --- a/build.gradle +++ b/build.gradle @@ -14,7 +14,7 @@ apply plugin: 'org.spongepowered.mixin' def buildnumber = System.getenv('TRAVIS_BUILD_NUMBER') def suffix = buildnumber != null ? ".$buildnumber" : "-SNAPSHOT" -version = "1.0.0$suffix" +version = "1.0.1$suffix" group = "uk.bobbytables.jeidsi" // http://maven.apache.org/guides/mini/guide-naming-conventions.html archivesBaseName = "jeidsi" diff --git a/src/main/java/uk/bobbytables/jeidsi/compat/twilightforest/TwilightForestPlugin.java b/src/main/java/uk/bobbytables/jeidsi/compat/twilightforest/TwilightForestPlugin.java index 54faca2..5455ea5 100644 --- a/src/main/java/uk/bobbytables/jeidsi/compat/twilightforest/TwilightForestPlugin.java +++ b/src/main/java/uk/bobbytables/jeidsi/compat/twilightforest/TwilightForestPlugin.java @@ -23,9 +23,10 @@ public String getRefMapperConfig() { @Override public boolean shouldApplyMixin(String s, String s1) { + JEIDsILoadingPlugin.LOGGER.info("Testing " + s1); for (ModContainer mod : Loader.instance().getModList()) { if (mod.getModId().equals("twilightforest")) { - if (s1.equals("MixinBlockTFMagicLogSpecialUpdate")) { + if (s1.equals("uk.bobbytables.jeidsi.compat.twilightforest.mixins.MixinBlockTFMagicLogSpecialUpdate")) { if (Integer.parseInt(mod.getVersion().split("[.]")[2]) > 689) { JEIDsILoadingPlugin.LOGGER.info("Applying TF Network Mixin"); return true; diff --git a/src/main/java/uk/bobbytables/jeidsi/compat/twilightforest/mixins/MixinBlockTFMagicLogSpecial.java b/src/main/java/uk/bobbytables/jeidsi/compat/twilightforest/mixins/MixinBlockTFMagicLogSpecial.java index ba4ca29..0531579 100644 --- a/src/main/java/uk/bobbytables/jeidsi/compat/twilightforest/mixins/MixinBlockTFMagicLogSpecial.java +++ b/src/main/java/uk/bobbytables/jeidsi/compat/twilightforest/mixins/MixinBlockTFMagicLogSpecial.java @@ -10,13 +10,22 @@ import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; import org.spongepowered.asm.mixin.injection.callback.LocalCapture; +import twilightforest.biomes.TFBiomes; import twilightforest.block.BlockTFMagicLogSpecial; +import uk.bobbytables.jeidsi.JEIDsILoadingPlugin; import java.util.Random; @Mixin(BlockTFMagicLogSpecial.class) public class MixinBlockTFMagicLogSpecial { - @Inject(method = "doTreeOfTransformationEffect", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/chunk/Chunk;getBiomeArray()[B"), locals = LocalCapture.CAPTURE_FAILHARD) + // For versions upto and including 3.8 + @Inject(method = "doTreeOfTransformationEffect", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/chunk/Chunk;getBiomeArray()[B"), locals = LocalCapture.CAPTURE_FAILSOFT) + private void onChangeBiome(World world, BlockPos pos, Random rand, CallbackInfo ci, int i, BlockPos dPos, Biome biomeAt, Chunk chunkAt) { + ((INewChunk) chunkAt).getIntBiomeArray()[(dPos.getZ() & 15) << 4 | (dPos.getX() & 15)] = Biome.getIdForBiome(TFBiomes.enchantedForest); + } + + // For versions 3.9 and later + @Inject(method = "doTreeOfTransformationEffect", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/chunk/Chunk;getBiomeArray()[B"), locals = LocalCapture.CAPTURE_FAILSOFT) private void onChangeBiome(World world, BlockPos pos, Random rand, CallbackInfo ci, Biome targetBiome, int i, BlockPos dPos, Biome biomeAt, Chunk chunkAt) { ((INewChunk) chunkAt).getIntBiomeArray()[(dPos.getZ() & 15) << 4 | (dPos.getX() & 15)] = Biome.getIdForBiome(targetBiome); } diff --git a/src/main/java/uk/bobbytables/jeidsi/compat/twilightforest/mixins/MixinBlockTFMagicLogSpecialUpdate.java b/src/main/java/uk/bobbytables/jeidsi/compat/twilightforest/mixins/MixinBlockTFMagicLogSpecialUpdate.java index a2e9905..1ddbc04 100644 --- a/src/main/java/uk/bobbytables/jeidsi/compat/twilightforest/mixins/MixinBlockTFMagicLogSpecialUpdate.java +++ b/src/main/java/uk/bobbytables/jeidsi/compat/twilightforest/mixins/MixinBlockTFMagicLogSpecialUpdate.java @@ -26,7 +26,7 @@ private void sendChangedBiome(World world, BlockPos pos, Biome biome) { IMessage message = new BiomeChangeMessage(pos.getX(), pos.getZ(), Biome.getIdForBiome(biome)); MessageManager.CHANNEL.sendToAllAround( message, - new NetworkRegistry.TargetPoint(world.provider.getDimension(),pos.getX(), 128.0D, pos.getZ(), 128.0D) + new NetworkRegistry.TargetPoint(world.provider.getDimension(), pos.getX(), 128.0D, pos.getZ(), 128.0D) ); } } \ No newline at end of file