Fixed Heroes PvP stuff...
This commit is contained in:
Binary file not shown.
@@ -295,8 +295,9 @@ public class MAListener implements ArenaListener
|
|||||||
if (!arena.running) return;
|
if (!arena.running) return;
|
||||||
|
|
||||||
EntityDamageByEntityEvent e = (event instanceof EntityDamageByEntityEvent) ? (EntityDamageByEntityEvent) event : null;
|
EntityDamageByEntityEvent e = (event instanceof EntityDamageByEntityEvent) ? (EntityDamageByEntityEvent) event : null;
|
||||||
Entity damager = (e != null) ? e.getDamager() : null;
|
|
||||||
Entity damagee = event.getEntity();
|
Entity damagee = event.getEntity();
|
||||||
|
Entity damager = (e != null) ? e.getDamager() : null;
|
||||||
|
if (e != null) damager = ((Projectile) e.getDamager()).getShooter();
|
||||||
|
|
||||||
// Pet wolf
|
// Pet wolf
|
||||||
if (damagee instanceof Wolf && arena.pets.contains(damagee))
|
if (damagee instanceof Wolf && arena.pets.contains(damagee))
|
||||||
@@ -326,7 +327,7 @@ public class MAListener implements ArenaListener
|
|||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
|
|
||||||
// If PvP is disabled and damager is a player, cancel damage
|
// If PvP is disabled and damager is a player, cancel damage
|
||||||
else if (!arena.pvp && (damager instanceof Player || (damager instanceof Projectile && ((Projectile) damager).getShooter() instanceof Player)))
|
else if (!arena.pvp && damager instanceof Player)
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
|
|
||||||
// Log damage
|
// Log damage
|
||||||
@@ -340,14 +341,13 @@ public class MAListener implements ArenaListener
|
|||||||
{
|
{
|
||||||
if (arena.hellhounds)
|
if (arena.hellhounds)
|
||||||
pet.setFireTicks(32768);
|
pet.setFireTicks(32768);
|
||||||
|
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Cancel player and projectile damage
|
|
||||||
else if (damager instanceof Player || damager instanceof Projectile)
|
else if (damager instanceof Player || damager instanceof Projectile)
|
||||||
|
{
|
||||||
|
// Cancel player and projectile damage
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
|
}
|
||||||
// Set damage to 0 for knockbacks from monsters
|
// Set damage to 0 for knockbacks from monsters
|
||||||
else event.setDamage(0);
|
else event.setDamage(0);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -135,7 +135,7 @@ public class MobArena extends JavaPlugin
|
|||||||
pm.registerEvent(Event.Type.PLAYER_KICK, playerListener, Priority.Normal, this);
|
pm.registerEvent(Event.Type.PLAYER_KICK, playerListener, Priority.Normal, this);
|
||||||
pm.registerEvent(Event.Type.PLAYER_JOIN, playerListener, Priority.Normal, this);
|
pm.registerEvent(Event.Type.PLAYER_JOIN, playerListener, Priority.Normal, this);
|
||||||
pm.registerEvent(Event.Type.PLAYER_ANIMATION, playerListener, Priority.Normal, this);
|
pm.registerEvent(Event.Type.PLAYER_ANIMATION, playerListener, Priority.Normal, this);
|
||||||
pm.registerEvent(Event.Type.ENTITY_DAMAGE, entityListener, Priority.High, this); // mcMMO is "Highest"
|
pm.registerEvent(Event.Type.ENTITY_DAMAGE, entityListener, Priority.Low, this); // Must cancel before Heroes
|
||||||
pm.registerEvent(Event.Type.ENTITY_DEATH, entityListener, Priority.Lowest, this); // Lowest because of Tombstone
|
pm.registerEvent(Event.Type.ENTITY_DEATH, entityListener, Priority.Lowest, this); // Lowest because of Tombstone
|
||||||
pm.registerEvent(Event.Type.ENTITY_REGAIN_HEALTH, entityListener, Priority.Normal, this);
|
pm.registerEvent(Event.Type.ENTITY_REGAIN_HEALTH, entityListener, Priority.Normal, this);
|
||||||
pm.registerEvent(Event.Type.ENTITY_EXPLODE, entityListener, Priority.Highest, this);
|
pm.registerEvent(Event.Type.ENTITY_EXPLODE, entityListener, Priority.Highest, this);
|
||||||
|
|||||||
Reference in New Issue
Block a user