diff --git a/src/main/java/dan200/computercraft/shared/turtle/core/TurtlePlaceCommand.java b/src/main/java/dan200/computercraft/shared/turtle/core/TurtlePlaceCommand.java index 1de0c860e..d30264751 100644 --- a/src/main/java/dan200/computercraft/shared/turtle/core/TurtlePlaceCommand.java +++ b/src/main/java/dan200/computercraft/shared/turtle/core/TurtlePlaceCommand.java @@ -215,27 +215,18 @@ public class TurtlePlaceCommand implements ITurtleCommand { // Place on the entity boolean placed = false; ActionResult cancelResult = hitEntity.interactAt(turtlePlayer, hitPos, Hand.MAIN_HAND); - if (cancelResult == null) { - cancelResult = hitEntity.interactAt(turtlePlayer, hitPos, Hand.MAIN_HAND); - } if (cancelResult != null && cancelResult.isAccepted()) { placed = true; - } else if (hitEntity instanceof LivingEntity) { - // See EntityPlayer.interactOn - cancelResult = stackCopy.useOnEntity(turtlePlayer, (LivingEntity) hitEntity, Hand.MAIN_HAND); + } + else { + cancelResult = hitEntity.interact(turtlePlayer, Hand.MAIN_HAND); if (cancelResult != null && cancelResult.isAccepted()) { placed = true; - } else if (cancelResult == null) { - if (hitEntity.interact(turtlePlayer, Hand.MAIN_HAND) == ActionResult.CONSUME) { - placed = true; - } else { - placed = stackCopy.useOnEntity(turtlePlayer, (LivingEntity) hitEntity, Hand.MAIN_HAND) - .isAccepted(); - if (placed) { - turtlePlayer.loadInventory(stackCopy); - } - } + } + else if (hitEntity instanceof LivingEntity) { + placed = stackCopy.useOnEntity(turtlePlayer, (LivingEntity) hitEntity, Hand.MAIN_HAND).isAccepted(); + if (placed) turtlePlayer.loadInventory(stackCopy); } }