Posted May 9, 20178 yr I am fairly new to Minecraft Modding (I have around 5 years Java experience). I want to prevent vanilla bows from firing. Looking into the docs for Forge I came across the ArrowNockEvent which should allow me to cancel any bow actions. But even thought the event is marked as @Cancelable, Forge still throws an IllegalArgumentException when I try to cancel the event. Here is the code if I am doing something wrong: @SubscribeEvent(priority = EventPriority.HIGHEST) public void onHit(ArrowNockEvent event) { // not sure if machines can trigger this event if (event.getEntityPlayer() != null) { ItemStack bow = event.getBow(); System.out.println(bow); System.out.println("Empty? " + ItemStackTools.isEmpty(bow)); if (!ItemStackTools.isEmpty(bow)) { if(bow.getItem() instanceof ItemBow) { event.setCanceled(true); } } } }
May 9, 20178 yr Author 4 minutes ago, diesieben07 said: ArrowNockEvent is not @Cancelable: https://github.com/MinecraftForge/MinecraftForge/blob/1.11.x/src/main/java/net/minecraftforge/event/entity/player/ArrowNockEvent.java#L39 Looks like I had some older docs open. Is there any other practically disable vanilla bows without removing the recipe? Edited May 9, 20178 yr by SirWindfield
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.