corrected signature

This commit is contained in:
Jörg Henke 2020-07-27 23:27:48 +02:00
parent b2ce05e9bf
commit 18d4032f6c
2 changed files with 4 additions and 3 deletions

View File

@ -4,6 +4,7 @@ import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
import org.spongepowered.asm.mixin.injection.callback.LocalCapture;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.block.BlockState; import net.minecraft.block.BlockState;
@ -19,7 +20,7 @@ import net.minecraft.world.World;
*/ */
@Mixin(Block.class) @Mixin(Block.class)
public class BlockBreakMixin { public class BlockBreakMixin {
@Inject(at = @At(value = "INVOKE", target = "Lnet/minecraft/block/Block;onBreak(net/minecraft/world/World;net/minecraft/util/math/BlockPos;net/minecraft/block/BlockState;net/minecraft/entity/player/PlayerEntity)V"), method = "interactOnBreak", cancellable = true) @Inject(at = @At(value = "INVOKE", target = "Lnet/minecraft/block/Block;onBreak(Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;Lnet/minecraft/entity/player/PlayerEntity;)V"), method = "interactOnBreak", cancellable = true)
private void interactOnBreak(final World world, final BlockPos blockPos, final BlockState blockState, final PlayerEntity player, final CallbackInfoReturnable<Boolean> info) { private void interactOnBreak(final World world, final BlockPos blockPos, final BlockState blockState, final PlayerEntity player, final CallbackInfoReturnable<Boolean> info) {
ActionResult result = BreakBlockCallback.EVENT.invoker().interact(world, blockPos, blockState, player); ActionResult result = BreakBlockCallback.EVENT.invoker().interact(world, blockPos, blockState, player);
if (result == ActionResult.FAIL) { if (result == ActionResult.FAIL) {

View File

@ -13,7 +13,7 @@ import net.minecraft.world.World;
* @author jotty * @author jotty
* *
*/ */
public interface BreakBlockCallback { public interface BreakBlockCallback {
Event<BreakBlockCallback> EVENT = EventFactory.createArrayBacked(BreakBlockCallback.class, Event<BreakBlockCallback> EVENT = EventFactory.createArrayBacked(BreakBlockCallback.class,
(listeners) -> (world, blockPos, blockState, player) -> { (listeners) -> (world, blockPos, blockState, player) -> {
for (BreakBlockCallback listener : listeners) { for (BreakBlockCallback listener : listeners) {
@ -24,6 +24,6 @@ public interface BreakBlockCallback {
} }
return ActionResult.PASS; return ActionResult.PASS;
}); });
ActionResult interact(World world, BlockPos blockPos, BlockState blockState, PlayerEntity player); ActionResult interact(World world, BlockPos blockPos, BlockState blockState, PlayerEntity player);
} }