【マイクラ】onInteract 関数で PlayerInteractEvent が3回呼ばれた!という話

@EventHandler
public void onInteract(PlayerInteractEvent e) {

アイテムを持って右クリックした時、

onInteract の関数が、3回呼ばれることがあった。

その時のログがこちら。

System.out.println(e.getAction());
System.out.println(e.getHand());
System.out.println(e.getPlayer());
System.out.println(e.getBlockFace());
System.out.println(e.getClickedBlock());
System.out.println(e.getHandlers());
System.out.println(e.getItem());
System.out.println(e.getMaterial());
System.out.println(e.hasBlock());
System.out.println(e.hasItem());
System.out.println(e.isBlockInHand());
System.out.println(e.useInteractedBlock());
System.out.println(e.useItemInHand());


13:46:41 INFO: CraftBlock{pos=BlockPosition{x=-229, y=79, z=1050},type=GRASS_BLOCK,data=Block{minecraft:grass_block}[snowy=false],[email protected]}

13:46:41 INFO: ItemStack{GOLDEN_PICKAXE x 1}

13:46:41 INFO: cmd =fill -229 79 1050 -229 79 1050 air destroy

13:46:41 INFO: CraftBlock{pos=BlockPosition{x=-229, y=79, z=1051},type=GRASS_BLOCK,data=Block{minecraft:grass_block}[snowy=false],[email protected]}

13:46:41 INFO: ItemStack{GOLDEN_PICKAXE x 1}

13:46:41 INFO: cmd =fill -229 79 1051 -229 79 1051 air destroy

13:46:41 INFO: CraftBlock{pos=BlockPosition{x=-229, y=79, z=1050},type=AIR,data=Block{minecraft:air},[email protected]}

13:46:41 INFO: cmd =fill -228 79 1051 -228 79 1051 air destroy

OFF_HAND と HAND の違いがあったのは、わかった。

しかし、それでも HAND でイベントが2回呼ばれる。

違いといえば、「useInteractedBlock」の ALLOW と DENY くらい?