55 lines
2.2 KiB
Diff
55 lines
2.2 KiB
Diff
From fd5b30936be418b1270633aa80c6df0c12665ab6 Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Sat, 15 Jun 2013 19:52:04 -0400
|
|
Subject: [PATCH] EntityShootBowEvent consumeArrow and getArrowItem API
|
|
|
|
Adds ability to get what arrow was shot, and control if it should be consumed.
|
|
|
|
diff --git a/src/main/java/org/bukkit/event/entity/EntityShootBowEvent.java b/src/main/java/org/bukkit/event/entity/EntityShootBowEvent.java
|
|
index ec12b57e..d086f331 100644
|
|
--- a/src/main/java/org/bukkit/event/entity/EntityShootBowEvent.java
|
|
+++ b/src/main/java/org/bukkit/event/entity/EntityShootBowEvent.java
|
|
@@ -2,6 +2,7 @@ package org.bukkit.event.entity;
|
|
|
|
import org.bukkit.entity.Entity;
|
|
import org.bukkit.entity.LivingEntity;
|
|
+import org.bukkit.entity.Projectile; // Paper
|
|
import org.bukkit.event.Cancellable;
|
|
import org.bukkit.event.HandlerList;
|
|
import org.bukkit.inventory.ItemStack;
|
|
@@ -17,9 +18,30 @@ public class EntityShootBowEvent extends EntityEvent implements Cancellable {
|
|
private Entity projectile;
|
|
private final float force;
|
|
private boolean cancelled;
|
|
+ // Paper start
|
|
+ private boolean consumeArrow = true;
|
|
+ private final ItemStack arrowItem;
|
|
+ public void setConsumeArrow(boolean consumeArrow) {
|
|
+ this.consumeArrow = consumeArrow;
|
|
+ }
|
|
+ public boolean getConsumeArrow() {
|
|
+ return consumeArrow;
|
|
+ }
|
|
+
|
|
+ @NotNull
|
|
+ public ItemStack getArrowItem() {
|
|
+ return arrowItem;
|
|
+ }
|
|
+
|
|
+ @Deprecated
|
|
+ public EntityShootBowEvent(@NotNull final LivingEntity shooter, @Nullable final ItemStack bow, @NotNull final Projectile projectile, final float force) {
|
|
+ this(shooter, bow, new ItemStack(org.bukkit.Material.AIR), projectile, force);
|
|
+ }
|
|
|
|
- public EntityShootBowEvent(@NotNull final LivingEntity shooter, @Nullable final ItemStack bow, @NotNull final Entity projectile, final float force) {
|
|
+ public EntityShootBowEvent(@NotNull final LivingEntity shooter, @Nullable final ItemStack bow, @NotNull ItemStack arrowItem, @NotNull final Projectile projectile, final float force) {
|
|
super(shooter);
|
|
+ this.arrowItem = arrowItem;
|
|
+ // Paper end
|
|
this.bow = bow;
|
|
this.projectile = projectile;
|
|
this.force = force;
|
|
--
|
|
2.21.0
|
|
|