Made a sepparate health bar listener, reduced duplicate code and added respawn listener.
This commit is contained in:
parent
3eed72783b
commit
10522e7048
@ -31,6 +31,7 @@ import com.massivecraft.factions.listeners.FactionsBlockListener;
|
||||
import com.massivecraft.factions.listeners.FactionsChatListener;
|
||||
import com.massivecraft.factions.listeners.FactionsEntityListener;
|
||||
import com.massivecraft.factions.listeners.FactionsExploitListener;
|
||||
import com.massivecraft.factions.listeners.FactionsHealthBarListener;
|
||||
import com.massivecraft.factions.listeners.FactionsPlayerListener;
|
||||
import com.massivecraft.factions.listeners.FactionsServerListener;
|
||||
import com.massivecraft.factions.struct.ChatMode;
|
||||
@ -58,6 +59,7 @@ public class P extends MPlugin
|
||||
public final FactionsExploitListener exploitListener;
|
||||
public final FactionsBlockListener blockListener;
|
||||
public final FactionsServerListener serverListener;
|
||||
public final FactionsHealthBarListener healthBarListener;
|
||||
|
||||
// Persistance related
|
||||
private boolean locked = false;
|
||||
@ -78,6 +80,7 @@ public class P extends MPlugin
|
||||
this.exploitListener = new FactionsExploitListener();
|
||||
this.blockListener = new FactionsBlockListener(this);
|
||||
this.serverListener = new FactionsServerListener(this);
|
||||
this.healthBarListener = new FactionsHealthBarListener(this);
|
||||
}
|
||||
|
||||
|
||||
|
@ -1,7 +1,6 @@
|
||||
package com.massivecraft.factions.listeners;
|
||||
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.EventHandler;
|
||||
|
@ -26,7 +26,6 @@ import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
||||
import org.bukkit.event.entity.EntityDamageEvent;
|
||||
import org.bukkit.event.entity.EntityDeathEvent;
|
||||
import org.bukkit.event.entity.EntityExplodeEvent;
|
||||
import org.bukkit.event.entity.EntityRegainHealthEvent;
|
||||
import org.bukkit.event.entity.EntityTargetEvent;
|
||||
import org.bukkit.event.entity.PotionSplashEvent;
|
||||
import org.bukkit.event.painting.PaintingBreakByEntityEvent;
|
||||
@ -42,7 +41,6 @@ import com.massivecraft.factions.FPlayer;
|
||||
import com.massivecraft.factions.FPlayers;
|
||||
import com.massivecraft.factions.Faction;
|
||||
import com.massivecraft.factions.P;
|
||||
import com.massivecraft.factions.integration.SpoutFeatures;
|
||||
import com.massivecraft.factions.struct.FFlag;
|
||||
import com.massivecraft.factions.struct.Rel;
|
||||
import com.massivecraft.factions.util.MiscUtil;
|
||||
@ -407,30 +405,4 @@ public class FactionsEntityListener implements Listener
|
||||
|
||||
event.setCancelled(true);
|
||||
}
|
||||
|
||||
// -------------------------------------------- //
|
||||
// HEALTH BAR
|
||||
// -------------------------------------------- //
|
||||
|
||||
@EventHandler(priority = EventPriority.MONITOR)
|
||||
public void monitorEntityDamageEvent(EntityDamageEvent event)
|
||||
{
|
||||
if (event.isCancelled()) return;
|
||||
if ( ! Conf.spoutHealthBarUnderNames) return;
|
||||
Entity entity = event.getEntity();
|
||||
if ( ! (entity instanceof Player)) return;
|
||||
Player player = (Player)entity;
|
||||
SpoutFeatures.updateMyAppearance(player);
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.MONITOR)
|
||||
public void monitorEntityRegainHealthEvent(EntityRegainHealthEvent event)
|
||||
{
|
||||
if (event.isCancelled()) return;
|
||||
if ( ! Conf.spoutHealthBarUnderNames) return;
|
||||
Entity entity = event.getEntity();
|
||||
if ( ! (entity instanceof Player)) return;
|
||||
Player player = (Player)entity;
|
||||
SpoutFeatures.updateMyAppearance(player);
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,57 @@
|
||||
package com.massivecraft.factions.listeners;
|
||||
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.Cancellable;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.EventPriority;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.entity.EntityDamageEvent;
|
||||
import org.bukkit.event.entity.EntityRegainHealthEvent;
|
||||
import org.bukkit.event.player.PlayerRespawnEvent;
|
||||
|
||||
import com.massivecraft.factions.Conf;
|
||||
import com.massivecraft.factions.P;
|
||||
import com.massivecraft.factions.integration.SpoutFeatures;
|
||||
|
||||
|
||||
public class FactionsHealthBarListener implements Listener
|
||||
{
|
||||
public P p;
|
||||
public FactionsHealthBarListener(P p)
|
||||
{
|
||||
this.p = p;
|
||||
}
|
||||
|
||||
// -------------------------------------------- //
|
||||
// HEALTH BAR
|
||||
// -------------------------------------------- //
|
||||
|
||||
public static void possiblyUpdateHealthBar(Entity entity, Cancellable event)
|
||||
{
|
||||
if (event != null && event.isCancelled()) return;
|
||||
if ( ! Conf.spoutHealthBarUnderNames) return;
|
||||
if ( ! (entity instanceof Player)) return;
|
||||
Player player = (Player)entity;
|
||||
SpoutFeatures.updateMyAppearance(player);
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.MONITOR)
|
||||
public void monitorEntityDamageEvent(EntityDamageEvent event)
|
||||
{
|
||||
possiblyUpdateHealthBar(event.getEntity(), event);
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.MONITOR)
|
||||
public void monitorEntityRegainHealthEvent(EntityRegainHealthEvent event)
|
||||
{
|
||||
possiblyUpdateHealthBar(event.getEntity(), event);
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.MONITOR)
|
||||
public void monitorPlayerRespawnEvent(PlayerRespawnEvent event)
|
||||
{
|
||||
possiblyUpdateHealthBar(event.getPlayer(), null);
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue
Block a user