Halfway through adding in universe support
This commit is contained in:
@ -1,7 +1,6 @@
|
||||
package com.massivecraft.factions.integration;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
@ -14,7 +13,6 @@ import org.bukkit.plugin.Plugin;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import com.massivecraft.factions.entity.FPlayer;
|
||||
import com.massivecraft.factions.entity.FPlayerColl;
|
||||
import com.massivecraft.factions.entity.Faction;
|
||||
import com.massivecraft.factions.util.HealthBarUtil;
|
||||
import com.massivecraft.mcore.ps.PS;
|
||||
@ -252,17 +250,16 @@ public class SpoutFeatures
|
||||
{
|
||||
if ( ! isEnabled()) return;
|
||||
|
||||
Collection<FPlayer> players = FPlayerColl.get().getAllOnline();
|
||||
|
||||
for (FPlayer player : players)
|
||||
for (Player player : Bukkit.getOnlinePlayers())
|
||||
{
|
||||
FPlayer fplayer = FPlayer.get(player);
|
||||
if (chunk == null)
|
||||
{
|
||||
mainListener.updateTerritoryDisplay(player, false);
|
||||
mainListener.updateTerritoryDisplay(fplayer, false);
|
||||
}
|
||||
else if (player.getCurrentChunk().equals(chunk))
|
||||
else if (fplayer.getCurrentChunk().equals(chunk))
|
||||
{
|
||||
mainListener.updateTerritoryDisplay(player, true);
|
||||
mainListener.updateTerritoryDisplay(fplayer, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -281,12 +278,13 @@ public class SpoutFeatures
|
||||
|
||||
chunk = chunk.getChunk(true);
|
||||
|
||||
Collection<FPlayer> players = FPlayerColl.get().getAllOnline();
|
||||
|
||||
for (FPlayer player : players)
|
||||
for (Player player : Bukkit.getOnlinePlayers())
|
||||
{
|
||||
if (chunk == null || player.getCurrentChunk().equals(chunk))
|
||||
mainListener.updateAccessInfo(player);
|
||||
FPlayer fplayer = FPlayer.get(player);
|
||||
if (chunk == null || fplayer.getCurrentChunk().equals(chunk))
|
||||
{
|
||||
mainListener.updateAccessInfo(fplayer);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -11,9 +11,8 @@ import org.bukkit.event.Listener;
|
||||
import com.massivecraft.factions.ConfServer;
|
||||
import com.massivecraft.factions.Factions;
|
||||
import com.massivecraft.factions.TerritoryAccess;
|
||||
import com.massivecraft.factions.entity.BoardColl;
|
||||
import com.massivecraft.factions.entity.BoardColls;
|
||||
import com.massivecraft.factions.entity.FPlayer;
|
||||
import com.massivecraft.factions.entity.FPlayerColl;
|
||||
import com.massivecraft.factions.entity.Faction;
|
||||
import com.massivecraft.mcore.ps.PS;
|
||||
|
||||
@ -29,7 +28,7 @@ public class SpoutMainListener implements Listener
|
||||
@EventHandler(priority = EventPriority.NORMAL)
|
||||
public void onSpoutCraftEnable(SpoutCraftEnableEvent event)
|
||||
{
|
||||
final FPlayer me = FPlayerColl.get().get(event.getPlayer());
|
||||
final FPlayer me = FPlayer.get(event.getPlayer());
|
||||
|
||||
SpoutFeatures.updateTitle(me, null);
|
||||
SpoutFeatures.updateTitle(null, me);
|
||||
@ -90,7 +89,7 @@ public class SpoutMainListener implements Listener
|
||||
private void doLabels(FPlayer player, SpoutPlayer sPlayer, boolean notify)
|
||||
{
|
||||
PS here = player.getCurrentChunk();
|
||||
Faction factionHere = BoardColl.get().getFactionAt(here);
|
||||
Faction factionHere = BoardColls.get().getFactionAt(here);
|
||||
String tag = factionHere.getColorTo(player).toString() + factionHere.getTag();
|
||||
|
||||
// ----------------------
|
||||
@ -181,7 +180,7 @@ public class SpoutMainListener implements Listener
|
||||
}
|
||||
|
||||
String msg = "";
|
||||
TerritoryAccess access = BoardColl.get().getTerritoryAccessAt(here);
|
||||
TerritoryAccess access = BoardColls.get().getTerritoryAccessAt(here);
|
||||
|
||||
if ( ! access.isDefault())
|
||||
{
|
||||
|
@ -11,7 +11,7 @@ import com.massivecraft.factions.entity.MConf;
|
||||
|
||||
public class FactionChannel extends FactionsChannelAbstract
|
||||
{
|
||||
public static final Set<Rel> targetRelations = EnumSet.of(Rel.MEMBER);
|
||||
public static final Set<Rel> targetRelations = EnumSet.of(Rel.MEMBER, Rel.RECRUIT);
|
||||
@Override public Set<Rel> getTargetRelations() { return targetRelations; }
|
||||
|
||||
@Override public String getName() { return MConf.get().herochatFactionName; }
|
||||
|
@ -24,7 +24,6 @@ import com.dthielke.herochat.MessageNotFoundException;
|
||||
import com.dthielke.herochat.util.Messaging;
|
||||
import com.massivecraft.factions.Rel;
|
||||
import com.massivecraft.factions.entity.FPlayer;
|
||||
import com.massivecraft.factions.entity.FPlayerColl;
|
||||
import com.massivecraft.factions.entity.Faction;
|
||||
|
||||
public abstract class FactionsChannelAbstract implements Channel
|
||||
@ -206,30 +205,27 @@ public abstract class FactionsChannelAbstract implements Channel
|
||||
return this.getMutes().contains(name.toLowerCase());
|
||||
}
|
||||
|
||||
|
||||
public abstract Set<Rel> getTargetRelations();
|
||||
|
||||
// TODO: When I add in universes I will need to separate the channel per universe.
|
||||
public Set<Player> getRecipients(Player sender)
|
||||
{
|
||||
Set<Player> ret = new HashSet<Player>();
|
||||
|
||||
FPlayer fpsender = FPlayerColl.get().get(sender);
|
||||
Faction faction = fpsender.getFaction();
|
||||
ret.addAll(faction.getOnlinePlayers());
|
||||
FPlayer fpsender = FPlayer.get(sender);
|
||||
Faction faction = fpsender.getFaction();
|
||||
String universe = fpsender.getUniverse();
|
||||
|
||||
for (FPlayer fplayer : FPlayerColl.get().getAllOnline())
|
||||
for (Player player : Bukkit.getOnlinePlayers())
|
||||
{
|
||||
if(this.getTargetRelations().contains(faction.getRelationTo(fplayer)))
|
||||
{
|
||||
ret.add(fplayer.getPlayer());
|
||||
}
|
||||
FPlayer frecipient = FPlayer.get(player);
|
||||
if (!frecipient.getUniverse().equals(universe)) continue;
|
||||
if (!this.getTargetRelations().contains(faction.getRelationTo(frecipient))) continue;
|
||||
ret.add(player);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void processChat(ChannelChatEvent event)
|
||||
{
|
||||
|
Reference in New Issue
Block a user