Incomptability with Paradise Lost.
Baconbacon123 opened this issue ยท 3 comments
Fails to launch when used with https://github.com/devs-immortal/Paradise-Lost. This is the error message:
Yes, definitely. Terraform API does this:
@Mixin(CropBlock.class)
public class MixinCropBlock {
@Redirect(method = "Lnet/minecraft/block/CropBlock;getAvailableMoisture(Lnet/minecraft/block/Block;Lnet/minecraft/world/BlockView;Lnet/minecraft/util/math/BlockPos;)F", at = @At(value = "INVOKE", target = "Lnet/minecraft/block/BlockState;isOf(Lnet/minecraft/block/Block;)Z"))
private static boolean onGetAvailableMoisture(BlockState state, Block block) {
return state.isOf(block) || (block == Blocks.FARMLAND && state.isIn(TerraformDirtBlockTags.FARMLAND));
}
}
Paradise Lost uses MoreTags and MoreTags does this:
@Mixin(CropBlock.class)
public abstract class CropBlockMixin {
@Redirect(
method = "getAvailableMoisture",
at = @At(
value = "INVOKE",
target = "Lnet/minecraft/block/BlockState;isOf(Lnet/minecraft/block/Block;)Z"
),
slice = @Slice(
from = @At("HEAD"),
to = @At(
value = "INVOKE",
target = "Lnet/minecraft/block/BlockState;get(Lnet/minecraft/state/property/Property;)Ljava/lang/Comparable;"
)
)
)
private static boolean isBlockFarmland(BlockState blockState, Block block) {
return blockState.isIn(MoreBlockTags.FARMLAND);
}
This is probably actually a conflict with Terraform API.