|
@@ -2,6 +2,7 @@ package com.gmail.nossr50.listeners;
|
|
|
|
|
|
import org.bukkit.OfflinePlayer;
|
|
|
import org.bukkit.block.Block;
|
|
|
+import org.bukkit.enchantments.Enchantment;
|
|
|
import org.bukkit.entity.AnimalTamer;
|
|
|
import org.bukkit.entity.Entity;
|
|
|
import org.bukkit.entity.FallingBlock;
|
|
@@ -21,10 +22,12 @@ import org.bukkit.event.entity.EntityDamageEvent;
|
|
|
import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
|
|
|
import org.bukkit.event.entity.EntityDeathEvent;
|
|
|
import org.bukkit.event.entity.EntityExplodeEvent;
|
|
|
+import org.bukkit.event.entity.EntityShootBowEvent;
|
|
|
import org.bukkit.event.entity.EntityTameEvent;
|
|
|
import org.bukkit.event.entity.EntityTargetEvent;
|
|
|
import org.bukkit.event.entity.ExplosionPrimeEvent;
|
|
|
import org.bukkit.event.entity.FoodLevelChangeEvent;
|
|
|
+import org.bukkit.inventory.ItemStack;
|
|
|
|
|
|
import com.gmail.nossr50.mcMMO;
|
|
|
import com.gmail.nossr50.datatypes.player.McMMOPlayer;
|
|
@@ -51,6 +54,15 @@ public class EntityListener implements Listener {
|
|
|
this.plugin = plugin;
|
|
|
}
|
|
|
|
|
|
+ @EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
|
|
|
+ public void onEntityShootBow(EntityShootBowEvent event) {
|
|
|
+ ItemStack bow = event.getBow();
|
|
|
+
|
|
|
+ if (bow != null && bow.containsEnchantment(Enchantment.ARROW_INFINITE)) {
|
|
|
+ event.getProjectile().setMetadata(mcMMO.infiniteArrowKey, mcMMO.metadataValue);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* Monitor EntityChangeBlock events.
|
|
|
*
|