mirror of
https://gitlab.com/phoenix-dvpmt/mmoitems.git
synced 2025-02-02 11:21:20 +01:00
Improved Shadow Veil after 2 YEARS of not having PvM support!
- Made Shadow Veil stop future and current mobs from targeting you!
This commit is contained in:
parent
3c3f39c01a
commit
21ff801949
@ -8,10 +8,12 @@ import org.bukkit.Bukkit;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.Particle;
|
||||
import org.bukkit.entity.LivingEntity;
|
||||
import org.bukkit.entity.Mob;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
||||
import org.bukkit.event.entity.EntityTargetEvent;
|
||||
import org.bukkit.scheduler.BukkitRunnable;
|
||||
|
||||
import net.Indyuce.mmoitems.MMOItems;
|
||||
@ -41,6 +43,9 @@ public class Shadow_Veil extends Ability implements Listener {
|
||||
stats.getPlayer().getWorld().playSound(stats.getPlayer().getLocation(), VersionSound.ENTITY_ENDERMAN_TELEPORT.toSound(), 3, 0);
|
||||
for (Player online : Bukkit.getOnlinePlayers())
|
||||
online.hidePlayer(MMOItems.plugin, stats.getPlayer());
|
||||
for (Mob serverEntities : stats.getPlayer().getWorld().getEntitiesByClass(Mob.class))
|
||||
if (serverEntities.getTarget() != null && serverEntities.getTarget().equals(stats.getPlayer()))
|
||||
serverEntities.setTarget(null);
|
||||
new BukkitRunnable() {
|
||||
double ti = 0;
|
||||
double y = 0;
|
||||
@ -84,9 +89,19 @@ public class Shadow_Veil extends Ability implements Listener {
|
||||
public void a(EntityDamageByEntityEvent event) {
|
||||
if (!(event.getDamager() instanceof Player))
|
||||
return;
|
||||
|
||||
|
||||
Player player = (Player) event.getDamager();
|
||||
if (shadowVeil.contains(player.getUniqueId()))
|
||||
shadowVeil.remove(player.getUniqueId());
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void b(EntityTargetEvent event) {
|
||||
if (!(event.getTarget() instanceof Player))
|
||||
return;
|
||||
|
||||
Player player = (Player) event.getTarget();
|
||||
if (shadowVeil.contains(player.getUniqueId()))
|
||||
event.setCancelled(true);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user