Woop
This commit is contained in:
parent
ac6870b770
commit
21783ef9d4
14
plugin.yml
14
plugin.yml
@ -25,16 +25,12 @@ permissions:
|
|||||||
children:
|
children:
|
||||||
factions.kit.halfmod: true
|
factions.kit.halfmod: true
|
||||||
factions.disband.any: true
|
factions.disband.any: true
|
||||||
factions.setpermanent: true
|
|
||||||
factions.setpeaceful: true
|
|
||||||
factions.sethome.any: true
|
factions.sethome.any: true
|
||||||
factions.money.*: true
|
factions.money.*: true
|
||||||
factions.kit.halfmod:
|
factions.kit.halfmod:
|
||||||
description: Zones, bypassing, and kicking
|
description: Zones, bypassing, and kicking
|
||||||
children:
|
children:
|
||||||
factions.kit.fullplayer: true
|
factions.kit.fullplayer: true
|
||||||
factions.managesafezone: true
|
|
||||||
factions.managewarzone: true
|
|
||||||
factions.bypass: true
|
factions.bypass: true
|
||||||
factions.flag.any: true
|
factions.flag.any: true
|
||||||
factions.kick.any: true
|
factions.kick.any: true
|
||||||
@ -124,10 +120,6 @@ permissions:
|
|||||||
description: see a list of the factions
|
description: see a list of the factions
|
||||||
factions.lock:
|
factions.lock:
|
||||||
description: lock all write stuff
|
description: lock all write stuff
|
||||||
factions.managesafezone:
|
|
||||||
description: claim land as a safe zone and build/destroy within safe zones
|
|
||||||
factions.managewarzone:
|
|
||||||
description: claim land as a war zone and build/destroy within war zones
|
|
||||||
factions.map:
|
factions.map:
|
||||||
description: show the territory map, and set optional auto update
|
description: show the territory map, and set optional auto update
|
||||||
factions.officer:
|
factions.officer:
|
||||||
@ -167,8 +159,6 @@ permissions:
|
|||||||
factions.money.f2f: true
|
factions.money.f2f: true
|
||||||
factions.money.f2p: true
|
factions.money.f2p: true
|
||||||
factions.money.p2f: true
|
factions.money.p2f: true
|
||||||
factions.noboom:
|
|
||||||
description: toggle explosions (peaceful factions only)
|
|
||||||
factions.open:
|
factions.open:
|
||||||
description: switch if invitation is required to join
|
description: switch if invitation is required to join
|
||||||
factions.owner:
|
factions.owner:
|
||||||
@ -177,10 +167,6 @@ permissions:
|
|||||||
description: list owner(s) of this claimed land
|
description: list owner(s) of this claimed land
|
||||||
factions.ownershipbypass:
|
factions.ownershipbypass:
|
||||||
description: bypass ownership restrictions within own faction's territory
|
description: bypass ownership restrictions within own faction's territory
|
||||||
factions.setpeaceful:
|
|
||||||
description: designate a faction as peaceful
|
|
||||||
factions.setpermanent:
|
|
||||||
description: designate a faction as permanent
|
|
||||||
factions.power:
|
factions.power:
|
||||||
description: show player power info
|
description: show player power info
|
||||||
factions.power.any:
|
factions.power.any:
|
||||||
|
@ -218,14 +218,14 @@ public class Board
|
|||||||
{
|
{
|
||||||
row += ChatColor.GRAY+"-";
|
row += ChatColor.GRAY+"-";
|
||||||
}
|
}
|
||||||
else if (factionHere.isSafeZone())
|
/*else if (factionHere.isSafeZone())
|
||||||
{
|
{
|
||||||
row += Conf.colorPeaceful+"+";
|
row += Conf.colorPeaceful+"+";
|
||||||
}
|
}
|
||||||
else if (factionHere.isWarZone())
|
else if (factionHere.isWarZone())
|
||||||
{
|
{
|
||||||
row += ChatColor.DARK_RED+"+";
|
row += ChatColor.DARK_RED+"+";
|
||||||
}
|
}*/
|
||||||
else if
|
else if
|
||||||
(
|
(
|
||||||
factionHere == faction
|
factionHere == faction
|
||||||
|
@ -15,11 +15,12 @@ public class Conf
|
|||||||
// Colors
|
// Colors
|
||||||
public static ChatColor colorMember = ChatColor.GREEN;
|
public static ChatColor colorMember = ChatColor.GREEN;
|
||||||
public static ChatColor colorAlly = ChatColor.LIGHT_PURPLE;
|
public static ChatColor colorAlly = ChatColor.LIGHT_PURPLE;
|
||||||
|
public static ChatColor colorTruce = ChatColor.GOLD;
|
||||||
public static ChatColor colorNeutral = ChatColor.WHITE;
|
public static ChatColor colorNeutral = ChatColor.WHITE;
|
||||||
public static ChatColor colorEnemy = ChatColor.RED;
|
public static ChatColor colorEnemy = ChatColor.RED;
|
||||||
|
|
||||||
public static ChatColor colorPeaceful = ChatColor.GOLD;
|
//public static ChatColor colorPeaceful = ChatColor.GOLD;
|
||||||
public static ChatColor colorWar = ChatColor.DARK_RED;
|
//public static ChatColor colorWar = ChatColor.DARK_RED;
|
||||||
//public static ChatColor colorWilderness = ChatColor.DARK_GREEN;
|
//public static ChatColor colorWilderness = ChatColor.DARK_GREEN;
|
||||||
|
|
||||||
|
|
||||||
@ -143,6 +144,12 @@ public class Conf
|
|||||||
public static boolean territoryAllyPainBuildWhenOffline = false;
|
public static boolean territoryAllyPainBuildWhenOffline = false;
|
||||||
public static boolean territoryAllyDenyUseage = true;
|
public static boolean territoryAllyDenyUseage = true;
|
||||||
public static boolean territoryAllyProtectMaterials = true;
|
public static boolean territoryAllyProtectMaterials = true;
|
||||||
|
public static boolean territoryTruceDenyBuild = true;
|
||||||
|
public static boolean territoryTruceDenyBuildWhenOffline = true;
|
||||||
|
public static boolean territoryTrucePainBuild = false;
|
||||||
|
public static boolean territoryTrucePainBuildWhenOffline = false;
|
||||||
|
public static boolean territoryTruceDenyUseage = true;
|
||||||
|
public static boolean territoryTruceProtectMaterials = true;
|
||||||
public static boolean territoryBlockCreepers = false;
|
public static boolean territoryBlockCreepers = false;
|
||||||
public static boolean territoryBlockCreepersWhenOffline = false;
|
public static boolean territoryBlockCreepersWhenOffline = false;
|
||||||
public static boolean territoryBlockFireballs = false;
|
public static boolean territoryBlockFireballs = false;
|
||||||
@ -152,7 +159,7 @@ public class Conf
|
|||||||
public static boolean territoryDenyEndermanBlocks = true;
|
public static boolean territoryDenyEndermanBlocks = true;
|
||||||
public static boolean territoryDenyEndermanBlocksWhenOffline = true;
|
public static boolean territoryDenyEndermanBlocksWhenOffline = true;
|
||||||
|
|
||||||
public static boolean safeZoneDenyBuild = true;
|
/*public static boolean safeZoneDenyBuild = true;
|
||||||
public static boolean safeZoneDenyUseage = true;
|
public static boolean safeZoneDenyUseage = true;
|
||||||
public static boolean safeZoneBlockTNT = true;
|
public static boolean safeZoneBlockTNT = true;
|
||||||
public static boolean safeZonePreventAllDamageToPlayers = false;
|
public static boolean safeZonePreventAllDamageToPlayers = false;
|
||||||
@ -166,14 +173,15 @@ public class Conf
|
|||||||
public static boolean warZonePowerLoss = true;
|
public static boolean warZonePowerLoss = true;
|
||||||
public static boolean warZoneFriendlyFire = false;
|
public static boolean warZoneFriendlyFire = false;
|
||||||
public static boolean warZoneDenyEndermanBlocks = true;
|
public static boolean warZoneDenyEndermanBlocks = true;
|
||||||
|
*/
|
||||||
|
|
||||||
public static boolean wildernessDenyBuild = false;
|
/*public static boolean wildernessDenyBuild = false;
|
||||||
public static boolean wildernessDenyUseage = false;
|
public static boolean wildernessDenyUseage = false;
|
||||||
public static boolean wildernessBlockCreepers = false;
|
public static boolean wildernessBlockCreepers = false;
|
||||||
public static boolean wildernessBlockFireballs = false;
|
public static boolean wildernessBlockFireballs = false;
|
||||||
public static boolean wildernessBlockTNT = false;
|
public static boolean wildernessBlockTNT = false;
|
||||||
public static boolean wildernessPowerLoss = true;
|
public static boolean wildernessPowerLoss = true;
|
||||||
public static boolean wildernessDenyEndermanBlocks = false;
|
public static boolean wildernessDenyEndermanBlocks = false;*/
|
||||||
|
|
||||||
// for claimed areas where further faction-member ownership can be defined
|
// for claimed areas where further faction-member ownership can be defined
|
||||||
public static boolean ownedAreasEnabled = true;
|
public static boolean ownedAreasEnabled = true;
|
||||||
@ -198,6 +206,7 @@ public class Conf
|
|||||||
public static Set<Material> territoryProtectedMaterialsWhenOffline = EnumSet.noneOf(Material.class);
|
public static Set<Material> territoryProtectedMaterialsWhenOffline = EnumSet.noneOf(Material.class);
|
||||||
public static Set<Material> territoryDenyUseageMaterialsWhenOffline = EnumSet.noneOf(Material.class);
|
public static Set<Material> territoryDenyUseageMaterialsWhenOffline = EnumSet.noneOf(Material.class);
|
||||||
|
|
||||||
|
// TODO: Rename to monsterCreatureTypes
|
||||||
public static transient Set<CreatureType> safeZoneNerfedCreatureTypes = EnumSet.noneOf(CreatureType.class);
|
public static transient Set<CreatureType> safeZoneNerfedCreatureTypes = EnumSet.noneOf(CreatureType.class);
|
||||||
|
|
||||||
// Spout features
|
// Spout features
|
||||||
@ -257,6 +266,7 @@ public class Conf
|
|||||||
public static Set<String> worldsNoClaiming = new HashSet<String>();
|
public static Set<String> worldsNoClaiming = new HashSet<String>();
|
||||||
public static Set<String> worldsNoPowerLoss = new HashSet<String>();
|
public static Set<String> worldsNoPowerLoss = new HashSet<String>();
|
||||||
public static Set<String> worldsIgnorePvP = new HashSet<String>();
|
public static Set<String> worldsIgnorePvP = new HashSet<String>();
|
||||||
|
// TODO: A better solution Would be to have One wilderness faction per world.
|
||||||
public static Set<String> worldsNoWildernessProtection = new HashSet<String>();
|
public static Set<String> worldsNoWildernessProtection = new HashSet<String>();
|
||||||
|
|
||||||
public static transient int mapHeight = 8;
|
public static transient int mapHeight = 8;
|
||||||
@ -268,30 +278,12 @@ public class Conf
|
|||||||
baseCommandAliases.add("f");
|
baseCommandAliases.add("f");
|
||||||
|
|
||||||
factionFlagDefaults = new LinkedHashMap<FactionFlag, Boolean>();
|
factionFlagDefaults = new LinkedHashMap<FactionFlag, Boolean>();
|
||||||
factionFlagDefaults.put(FactionFlag.PERMANENT, FactionFlag.PERMANENT.defaultDefaultValue);
|
|
||||||
factionFlagDefaults.put(FactionFlag.PEACEFUL, FactionFlag.PEACEFUL.defaultDefaultValue);
|
|
||||||
factionFlagDefaults.put(FactionFlag.INFPOWER, FactionFlag.INFPOWER.defaultDefaultValue);
|
|
||||||
factionFlagDefaults.put(FactionFlag.POWERLOSS, FactionFlag.POWERLOSS.defaultDefaultValue);
|
|
||||||
factionFlagDefaults.put(FactionFlag.PVP, FactionFlag.PVP.defaultDefaultValue);
|
|
||||||
factionFlagDefaults.put(FactionFlag.FRIENDLYFIRE, FactionFlag.FRIENDLYFIRE.defaultDefaultValue);
|
|
||||||
factionFlagDefaults.put(FactionFlag.MONSTERS, FactionFlag.MONSTERS.defaultDefaultValue);
|
|
||||||
factionFlagDefaults.put(FactionFlag.EXPLOSIONS, FactionFlag.EXPLOSIONS.defaultDefaultValue);
|
|
||||||
factionFlagDefaults.put(FactionFlag.FIRESPREAD, FactionFlag.FIRESPREAD.defaultDefaultValue);
|
|
||||||
factionFlagDefaults.put(FactionFlag.LIGHTNING, FactionFlag.LIGHTNING.defaultDefaultValue);
|
|
||||||
factionFlagDefaults.put(FactionFlag.ENDERGRIEF, FactionFlag.ENDERGRIEF.defaultDefaultValue);
|
|
||||||
|
|
||||||
factionFlagIsChangeable = new LinkedHashMap<FactionFlag, Boolean>();
|
factionFlagIsChangeable = new LinkedHashMap<FactionFlag, Boolean>();
|
||||||
factionFlagIsChangeable.put(FactionFlag.PERMANENT, FactionFlag.PERMANENT.defaultDefaultChangeable);
|
for (FactionFlag flag : FactionFlag.values())
|
||||||
factionFlagIsChangeable.put(FactionFlag.PEACEFUL, FactionFlag.PEACEFUL.defaultDefaultChangeable);
|
{
|
||||||
factionFlagIsChangeable.put(FactionFlag.INFPOWER, FactionFlag.INFPOWER.defaultDefaultChangeable);
|
factionFlagDefaults.put(flag, flag.defaultDefaultValue);
|
||||||
factionFlagIsChangeable.put(FactionFlag.POWERLOSS, FactionFlag.POWERLOSS.defaultDefaultChangeable);
|
factionFlagIsChangeable.put(flag, flag.defaultDefaultChangeable);
|
||||||
factionFlagIsChangeable.put(FactionFlag.PVP, FactionFlag.PVP.defaultDefaultChangeable);
|
}
|
||||||
factionFlagIsChangeable.put(FactionFlag.FRIENDLYFIRE, FactionFlag.FRIENDLYFIRE.defaultDefaultChangeable);
|
|
||||||
factionFlagIsChangeable.put(FactionFlag.MONSTERS, FactionFlag.MONSTERS.defaultDefaultChangeable);
|
|
||||||
factionFlagIsChangeable.put(FactionFlag.EXPLOSIONS, FactionFlag.EXPLOSIONS.defaultDefaultChangeable);
|
|
||||||
factionFlagIsChangeable.put(FactionFlag.FIRESPREAD, FactionFlag.FIRESPREAD.defaultDefaultChangeable);
|
|
||||||
factionFlagIsChangeable.put(FactionFlag.LIGHTNING, FactionFlag.LIGHTNING.defaultDefaultChangeable);
|
|
||||||
factionFlagIsChangeable.put(FactionFlag.ENDERGRIEF, FactionFlag.ENDERGRIEF.defaultDefaultChangeable);
|
|
||||||
|
|
||||||
territoryEnemyDenyCommands.add("home");
|
territoryEnemyDenyCommands.add("home");
|
||||||
territoryEnemyDenyCommands.add("sethome");
|
territoryEnemyDenyCommands.add("sethome");
|
||||||
|
@ -15,7 +15,6 @@ import com.massivecraft.factions.integration.SpoutFeatures;
|
|||||||
import com.massivecraft.factions.integration.Worldguard;
|
import com.massivecraft.factions.integration.Worldguard;
|
||||||
import com.massivecraft.factions.struct.ChatMode;
|
import com.massivecraft.factions.struct.ChatMode;
|
||||||
import com.massivecraft.factions.struct.FactionFlag;
|
import com.massivecraft.factions.struct.FactionFlag;
|
||||||
import com.massivecraft.factions.struct.Permission;
|
|
||||||
import com.massivecraft.factions.struct.Rel;
|
import com.massivecraft.factions.struct.Rel;
|
||||||
import com.massivecraft.factions.util.RelationUtil;
|
import com.massivecraft.factions.util.RelationUtil;
|
||||||
import com.massivecraft.factions.zcore.persist.PlayerEntity;
|
import com.massivecraft.factions.zcore.persist.PlayerEntity;
|
||||||
@ -78,38 +77,6 @@ public class FPlayer extends PlayerEntity implements EconomyParticipator
|
|||||||
public void setAutoClaimFor(Faction faction)
|
public void setAutoClaimFor(Faction faction)
|
||||||
{
|
{
|
||||||
this.autoClaimFor = faction;
|
this.autoClaimFor = faction;
|
||||||
if (this.autoClaimFor != null)
|
|
||||||
{
|
|
||||||
// TODO: merge these into same autoclaim
|
|
||||||
this.autoSafeZoneEnabled = false;
|
|
||||||
this.autoWarZoneEnabled = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// FIELD: autoSafeZoneEnabled
|
|
||||||
private transient boolean autoSafeZoneEnabled;
|
|
||||||
public boolean isAutoSafeClaimEnabled() { return autoSafeZoneEnabled; }
|
|
||||||
public void setIsAutoSafeClaimEnabled(boolean enabled)
|
|
||||||
{
|
|
||||||
this.autoSafeZoneEnabled = enabled;
|
|
||||||
if (enabled)
|
|
||||||
{
|
|
||||||
this.autoClaimFor = null;
|
|
||||||
this.autoWarZoneEnabled = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// FIELD: autoWarZoneEnabled
|
|
||||||
private transient boolean autoWarZoneEnabled;
|
|
||||||
public boolean isAutoWarClaimEnabled() { return autoWarZoneEnabled; }
|
|
||||||
public void setIsAutoWarClaimEnabled(boolean enabled)
|
|
||||||
{
|
|
||||||
this.autoWarZoneEnabled = enabled;
|
|
||||||
if (enabled)
|
|
||||||
{
|
|
||||||
this.autoClaimFor = null;
|
|
||||||
this.autoSafeZoneEnabled = false;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private transient boolean isAdminBypassing = false;
|
private transient boolean isAdminBypassing = false;
|
||||||
@ -154,8 +121,6 @@ public class FPlayer extends PlayerEntity implements EconomyParticipator
|
|||||||
this.lastLoginTime = System.currentTimeMillis();
|
this.lastLoginTime = System.currentTimeMillis();
|
||||||
this.mapAutoUpdating = false;
|
this.mapAutoUpdating = false;
|
||||||
this.autoClaimFor = null;
|
this.autoClaimFor = null;
|
||||||
this.autoSafeZoneEnabled = false;
|
|
||||||
this.autoWarZoneEnabled = false;
|
|
||||||
this.loginPvpDisabled = (Conf.noPVPDamageToOthersForXSecondsAfterLogin > 0) ? true : false;
|
this.loginPvpDisabled = (Conf.noPVPDamageToOthersForXSecondsAfterLogin > 0) ? true : false;
|
||||||
this.deleteMe = false;
|
this.deleteMe = false;
|
||||||
|
|
||||||
@ -653,14 +618,6 @@ public class FPlayer extends PlayerEntity implements EconomyParticipator
|
|||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
else if (forFaction.isSafeZone() && Permission.MANAGE_SAFE_ZONE.has(getPlayer()))
|
|
||||||
{
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
else if (forFaction.isWarZone() && Permission.MANAGE_WAR_ZONE.has(getPlayer()))
|
|
||||||
{
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
else if (myFaction != forFaction)
|
else if (myFaction != forFaction)
|
||||||
{
|
{
|
||||||
error = P.p.txt.parse("<b>You can't claim land for <h>%s<b>.", forFaction.describeTo(this));
|
error = P.p.txt.parse("<b>You can't claim land for <h>%s<b>.", forFaction.describeTo(this));
|
||||||
@ -677,21 +634,13 @@ public class FPlayer extends PlayerEntity implements EconomyParticipator
|
|||||||
{
|
{
|
||||||
error = P.p.txt.parse("Factions must have at least <h>%s<b> members to claim land.", Conf.claimsRequireMinFactionMembers);
|
error = P.p.txt.parse("Factions must have at least <h>%s<b> members to claim land.", Conf.claimsRequireMinFactionMembers);
|
||||||
}
|
}
|
||||||
else if (currentFaction.isSafeZone())
|
|
||||||
{
|
|
||||||
error = P.p.txt.parse("<b>You can not claim a Safe Zone.");
|
|
||||||
}
|
|
||||||
else if (currentFaction.isWarZone())
|
|
||||||
{
|
|
||||||
error = P.p.txt.parse("<b>You can not claim a War Zone.");
|
|
||||||
}
|
|
||||||
else if (ownedLand >= forFaction.getPowerRounded())
|
else if (ownedLand >= forFaction.getPowerRounded())
|
||||||
{
|
{
|
||||||
error = P.p.txt.parse("<b>You can't claim more land! You need more power!");
|
error = P.p.txt.parse("<b>You can't claim more land! You need more power!");
|
||||||
}
|
}
|
||||||
else if (currentFaction.getRelationTo(forFaction) == Rel.ALLY)
|
else if (currentFaction.getRelationTo(forFaction).isAtLeast(Rel.TRUCE))
|
||||||
{
|
{
|
||||||
error = P.p.txt.parse("<b>You can't claim the land of your allies.");
|
error = P.p.txt.parse("<b>You can't claim this land due to your relation with the current owner.");
|
||||||
}
|
}
|
||||||
else if
|
else if
|
||||||
(
|
(
|
||||||
@ -709,15 +658,7 @@ public class FPlayer extends PlayerEntity implements EconomyParticipator
|
|||||||
}
|
}
|
||||||
else if (currentFaction.isNormal())
|
else if (currentFaction.isNormal())
|
||||||
{
|
{
|
||||||
if (myFaction.isPeaceful())
|
if ( ! currentFaction.hasLandInflation())
|
||||||
{
|
|
||||||
error = P.p.txt.parse("%s<i> owns this land. Your faction is peaceful, so you cannot claim land from other factions.", currentFaction.getTag(this));
|
|
||||||
}
|
|
||||||
else if (currentFaction.isPeaceful())
|
|
||||||
{
|
|
||||||
error = P.p.txt.parse("%s<i> owns this land, and is a peaceful faction. You cannot claim land from them.", currentFaction.getTag(this));
|
|
||||||
}
|
|
||||||
else if ( ! currentFaction.hasLandInflation())
|
|
||||||
{
|
{
|
||||||
// TODO more messages WARN current faction most importantly
|
// TODO more messages WARN current faction most importantly
|
||||||
error = P.p.txt.parse("%s<i> owns this land and is strong enough to keep it.", currentFaction.getTag(this));
|
error = P.p.txt.parse("%s<i> owns this land and is strong enough to keep it.", currentFaction.getTag(this));
|
||||||
@ -748,7 +689,9 @@ public class FPlayer extends PlayerEntity implements EconomyParticipator
|
|||||||
if ( ! this.canClaimForFactionAtLocation(forFaction, location, notifyFailure)) return false;
|
if ( ! this.canClaimForFactionAtLocation(forFaction, location, notifyFailure)) return false;
|
||||||
|
|
||||||
// if economy is enabled and they're not on the bypass list, make 'em pay
|
// if economy is enabled and they're not on the bypass list, make 'em pay
|
||||||
if (Econ.shouldBeUsed() && ! this.isAdminBypassing() && ! forFaction.isSafeZone() && ! forFaction.isWarZone())
|
// TODO: Add flag no costs??
|
||||||
|
//if (Econ.shouldBeUsed() && ! this.isAdminBypassing() && ! forFaction.isSafeZone() && ! forFaction.isWarZone())
|
||||||
|
if (Econ.shouldBeUsed() && ! this.isAdminBypassing())
|
||||||
{
|
{
|
||||||
double cost = Econ.calculateClaimCost(ownedLand, currentFaction.isNormal());
|
double cost = Econ.calculateClaimCost(ownedLand, currentFaction.isNormal());
|
||||||
//String costString = Econ.moneyString(cost);
|
//String costString = Econ.moneyString(cost);
|
||||||
|
@ -41,16 +41,16 @@ public class Faction extends Entity implements EconomyParticipator
|
|||||||
|
|
||||||
// FIELD: peaceful
|
// FIELD: peaceful
|
||||||
// "peaceful" status can only be set by server admins/moderators/ops, and prevents PvP and land capture to/from the faction
|
// "peaceful" status can only be set by server admins/moderators/ops, and prevents PvP and land capture to/from the faction
|
||||||
private boolean peaceful;
|
//private boolean peaceful;
|
||||||
public boolean isPeaceful() { return this.peaceful; }
|
//public boolean isPeaceful() { return this.peaceful; }
|
||||||
public void setPeaceful(boolean isPeaceful) { this.peaceful = isPeaceful; }
|
//public void setPeaceful(boolean isPeaceful) { this.peaceful = isPeaceful; }
|
||||||
|
|
||||||
// FIELD: peacefulExplosionsEnabled
|
// FIELD: peacefulExplosionsEnabled
|
||||||
private boolean peacefulExplosionsEnabled;
|
//private boolean peacefulExplosionsEnabled;
|
||||||
public void setPeacefulExplosionsEnabled(boolean val) { peacefulExplosionsEnabled = val; }
|
//public void setPeacefulExplosionsEnabled(boolean val) { peacefulExplosionsEnabled = val; }
|
||||||
public boolean getPeacefulExplosionsEnabled(){ return this.peacefulExplosionsEnabled; }
|
//public boolean getPeacefulExplosionsEnabled(){ return this.peacefulExplosionsEnabled; }
|
||||||
|
|
||||||
public boolean noExplosionsInTerritory() { return this.peaceful && ! peacefulExplosionsEnabled; }
|
//public boolean noExplosionsInTerritory() { return this.peaceful && ! peacefulExplosionsEnabled; }
|
||||||
|
|
||||||
// FIELD: permanent
|
// FIELD: permanent
|
||||||
// "permanent" status can only be set by server admins/moderators/ops, and allows the faction to remain even with 0 members
|
// "permanent" status can only be set by server admins/moderators/ops, and allows the faction to remain even with 0 members
|
||||||
@ -163,8 +163,8 @@ public class Faction extends Entity implements EconomyParticipator
|
|||||||
this.tag = "???";
|
this.tag = "???";
|
||||||
this.description = "Default faction description :(";
|
this.description = "Default faction description :(";
|
||||||
this.lastPlayerLoggedOffTime = 0;
|
this.lastPlayerLoggedOffTime = 0;
|
||||||
this.peaceful = false;
|
//this.peaceful = false;
|
||||||
this.peacefulExplosionsEnabled = false;
|
//this.peacefulExplosionsEnabled = false;
|
||||||
this.money = 0.0;
|
this.money = 0.0;
|
||||||
this.flagOverrides = new LinkedHashMap<FactionFlag, Boolean>();
|
this.flagOverrides = new LinkedHashMap<FactionFlag, Boolean>();
|
||||||
}
|
}
|
||||||
@ -173,9 +173,9 @@ public class Faction extends Entity implements EconomyParticipator
|
|||||||
// Extra Getters And Setters
|
// Extra Getters And Setters
|
||||||
// -------------------------------------------- //
|
// -------------------------------------------- //
|
||||||
|
|
||||||
public boolean noPvPInTerritory() { return isSafeZone() || (peaceful && Conf.peacefulTerritoryDisablePVP); }
|
//public boolean noPvPInTerritory() { return isSafeZone() || (peaceful && Conf.peacefulTerritoryDisablePVP); }
|
||||||
|
|
||||||
public boolean noMonstersInTerritory() { return isSafeZone() || (peaceful && Conf.peacefulTerritoryDisableMonsters); }
|
//public boolean noMonstersInTerritory() { return isSafeZone() || (peaceful && Conf.peacefulTerritoryDisableMonsters); }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -187,7 +187,8 @@ public class Faction extends Entity implements EconomyParticipator
|
|||||||
|
|
||||||
public boolean isNormal()
|
public boolean isNormal()
|
||||||
{
|
{
|
||||||
return ! (this.isNone() || this.isSafeZone() || this.isWarZone());
|
//return ! (this.isNone() || this.isSafeZone() || this.isWarZone());
|
||||||
|
return ! this.isNone();
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isNone()
|
public boolean isNone()
|
||||||
@ -195,7 +196,7 @@ public class Faction extends Entity implements EconomyParticipator
|
|||||||
return this.getId().equals("0");
|
return this.getId().equals("0");
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isSafeZone()
|
/*public boolean isSafeZone()
|
||||||
{
|
{
|
||||||
return this.getId().equals("-1");
|
return this.getId().equals("-1");
|
||||||
}
|
}
|
||||||
@ -208,7 +209,7 @@ public class Faction extends Entity implements EconomyParticipator
|
|||||||
public boolean isPlayerFreeType()
|
public boolean isPlayerFreeType()
|
||||||
{
|
{
|
||||||
return this.isSafeZone() || this.isWarZone();
|
return this.isSafeZone() || this.isWarZone();
|
||||||
}
|
}*/
|
||||||
|
|
||||||
|
|
||||||
// -------------------------------
|
// -------------------------------
|
||||||
@ -338,7 +339,7 @@ public class Faction extends Entity implements EconomyParticipator
|
|||||||
public ArrayList<FPlayer> getFPlayers()
|
public ArrayList<FPlayer> getFPlayers()
|
||||||
{
|
{
|
||||||
ArrayList<FPlayer> ret = new ArrayList<FPlayer>();
|
ArrayList<FPlayer> ret = new ArrayList<FPlayer>();
|
||||||
if (this.isPlayerFreeType()) return ret;
|
//if (this.isPlayerFreeType()) return ret;
|
||||||
|
|
||||||
for (FPlayer fplayer : FPlayers.i.get())
|
for (FPlayer fplayer : FPlayers.i.get())
|
||||||
{
|
{
|
||||||
@ -354,7 +355,7 @@ public class Faction extends Entity implements EconomyParticipator
|
|||||||
public ArrayList<FPlayer> getFPlayersWhereOnline(boolean online)
|
public ArrayList<FPlayer> getFPlayersWhereOnline(boolean online)
|
||||||
{
|
{
|
||||||
ArrayList<FPlayer> ret = new ArrayList<FPlayer>();
|
ArrayList<FPlayer> ret = new ArrayList<FPlayer>();
|
||||||
if (this.isPlayerFreeType()) return ret;
|
//if (this.isPlayerFreeType()) return ret;
|
||||||
|
|
||||||
for (FPlayer fplayer : FPlayers.i.get())
|
for (FPlayer fplayer : FPlayers.i.get())
|
||||||
{
|
{
|
||||||
@ -400,7 +401,7 @@ public class Faction extends Entity implements EconomyParticipator
|
|||||||
public ArrayList<Player> getOnlinePlayers()
|
public ArrayList<Player> getOnlinePlayers()
|
||||||
{
|
{
|
||||||
ArrayList<Player> ret = new ArrayList<Player>();
|
ArrayList<Player> ret = new ArrayList<Player>();
|
||||||
if (this.isPlayerFreeType()) return ret;
|
//if (this.isPlayerFreeType()) return ret;
|
||||||
|
|
||||||
for (Player player: P.p.getServer().getOnlinePlayers())
|
for (Player player: P.p.getServer().getOnlinePlayers())
|
||||||
{
|
{
|
||||||
@ -418,7 +419,7 @@ public class Faction extends Entity implements EconomyParticipator
|
|||||||
public boolean hasPlayersOnline()
|
public boolean hasPlayersOnline()
|
||||||
{
|
{
|
||||||
// only real factions can have players online, not safe zone / war zone
|
// only real factions can have players online, not safe zone / war zone
|
||||||
if (this.isPlayerFreeType()) return false;
|
//if (this.isPlayerFreeType()) return false;
|
||||||
|
|
||||||
for (Player player: P.p.getServer().getOnlinePlayers())
|
for (Player player: P.p.getServer().getOnlinePlayers())
|
||||||
{
|
{
|
||||||
|
@ -1,44 +0,0 @@
|
|||||||
package com.massivecraft.factions.cmd;
|
|
||||||
|
|
||||||
import com.massivecraft.factions.Conf;
|
|
||||||
import com.massivecraft.factions.struct.Permission;
|
|
||||||
|
|
||||||
public class CmdBoom extends FCommand
|
|
||||||
{
|
|
||||||
public CmdBoom()
|
|
||||||
{
|
|
||||||
super();
|
|
||||||
this.aliases.add("noboom");
|
|
||||||
|
|
||||||
//this.requiredArgs.add("");
|
|
||||||
this.optionalArgs.put("on/off", "flip");
|
|
||||||
|
|
||||||
this.permission = Permission.NO_BOOM.node;
|
|
||||||
this.disableOnLock = true;
|
|
||||||
|
|
||||||
senderMustBePlayer = true;
|
|
||||||
senderMustBeMember = false;
|
|
||||||
senderMustBeOfficer = true;
|
|
||||||
senderMustBeLeader = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void perform()
|
|
||||||
{
|
|
||||||
if ( ! myFaction.isPeaceful())
|
|
||||||
{
|
|
||||||
fme.msg("<b>This command is only usable by factions which are specially designated as peaceful.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// if economy is enabled, they're not on the bypass list, and this command has a cost set, make 'em pay
|
|
||||||
if ( ! payForCommand(Conf.econCostNoBoom, "to toggle explosions", "for toggling explosions")) return;
|
|
||||||
|
|
||||||
myFaction.setPeacefulExplosionsEnabled(this.argAsBool(0, ! myFaction.getPeacefulExplosionsEnabled()));
|
|
||||||
|
|
||||||
String enabled = myFaction.noExplosionsInTerritory() ? "disabled" : "enabled";
|
|
||||||
|
|
||||||
// Inform
|
|
||||||
myFaction.msg("%s<i> has "+enabled+" explosions in your faction's territory.", fme.describeTo(myFaction));
|
|
||||||
}
|
|
||||||
}
|
|
@ -113,7 +113,6 @@ public class CmdHelp extends FCommand
|
|||||||
|
|
||||||
pageLines = new ArrayList<String>();
|
pageLines = new ArrayList<String>();
|
||||||
pageLines.add( p.cmdBase.cmdMap.getUseageTemplate(true) );
|
pageLines.add( p.cmdBase.cmdMap.getUseageTemplate(true) );
|
||||||
pageLines.add( p.cmdBase.cmdBoom.getUseageTemplate(true) );
|
|
||||||
pageLines.add( p.cmdBase.cmdOwner.getUseageTemplate(true) );
|
pageLines.add( p.cmdBase.cmdOwner.getUseageTemplate(true) );
|
||||||
pageLines.add( p.cmdBase.cmdOwnerList.getUseageTemplate(true) );
|
pageLines.add( p.cmdBase.cmdOwnerList.getUseageTemplate(true) );
|
||||||
pageLines.add(p.txt.parse("<i>Claimed land with ownership set is further protected so"));
|
pageLines.add(p.txt.parse("<i>Claimed land with ownership set is further protected so"));
|
||||||
@ -125,6 +124,7 @@ public class CmdHelp extends FCommand
|
|||||||
pageLines.add( p.cmdBase.cmdDisband.getUseageTemplate(true) );
|
pageLines.add( p.cmdBase.cmdDisband.getUseageTemplate(true) );
|
||||||
pageLines.add("");
|
pageLines.add("");
|
||||||
pageLines.add( p.cmdBase.cmdRelationAlly.getUseageTemplate(true) );
|
pageLines.add( p.cmdBase.cmdRelationAlly.getUseageTemplate(true) );
|
||||||
|
pageLines.add( p.cmdBase.cmdRelationTruce.getUseageTemplate(true) );
|
||||||
pageLines.add( p.cmdBase.cmdRelationNeutral.getUseageTemplate(true) );
|
pageLines.add( p.cmdBase.cmdRelationNeutral.getUseageTemplate(true) );
|
||||||
pageLines.add( p.cmdBase.cmdRelationEnemy.getUseageTemplate(true) );
|
pageLines.add( p.cmdBase.cmdRelationEnemy.getUseageTemplate(true) );
|
||||||
pageLines.add(p.txt.parse("<i>Set the relation you WISH to have with another faction."));
|
pageLines.add(p.txt.parse("<i>Set the relation you WISH to have with another faction."));
|
||||||
@ -163,15 +163,11 @@ public class CmdHelp extends FCommand
|
|||||||
pageLines.add(p.txt.parse("<c>/f claim safezone <i>claim land for the Safe Zone"));
|
pageLines.add(p.txt.parse("<c>/f claim safezone <i>claim land for the Safe Zone"));
|
||||||
pageLines.add(p.txt.parse("<c>/f claim warzone <i>claim land for the War Zone"));
|
pageLines.add(p.txt.parse("<c>/f claim warzone <i>claim land for the War Zone"));
|
||||||
pageLines.add(p.txt.parse("<c>/f autoclaim [safezone|warzone] <i>take a guess"));
|
pageLines.add(p.txt.parse("<c>/f autoclaim [safezone|warzone] <i>take a guess"));
|
||||||
pageLines.add( p.cmdBase.cmdSafeunclaimall.getUseageTemplate(true) );
|
|
||||||
pageLines.add( p.cmdBase.cmdWarunclaimall.getUseageTemplate(true) );
|
|
||||||
pageLines.add(p.txt.parse("<i>Note: " + p.cmdBase.cmdUnclaim.getUseageTemplate(false) + P.p.txt.parse("<i>") + " works on safe/war zones as well."));
|
pageLines.add(p.txt.parse("<i>Note: " + p.cmdBase.cmdUnclaim.getUseageTemplate(false) + P.p.txt.parse("<i>") + " works on safe/war zones as well."));
|
||||||
pageLines.add( p.cmdBase.cmdPeaceful.getUseageTemplate(true) );
|
|
||||||
helpPages.add(pageLines);
|
helpPages.add(pageLines);
|
||||||
|
|
||||||
pageLines = new ArrayList<String>();
|
pageLines = new ArrayList<String>();
|
||||||
pageLines.add(p.txt.parse("<i>More commands for server admins:"));
|
pageLines.add(p.txt.parse("<i>More commands for server admins:"));
|
||||||
pageLines.add( p.cmdBase.cmdPeaceful.getUseageTemplate(true) );
|
|
||||||
pageLines.add(p.txt.parse("<i>Peaceful factions are protected from PvP and land capture."));
|
pageLines.add(p.txt.parse("<i>Peaceful factions are protected from PvP and land capture."));
|
||||||
pageLines.add( p.cmdBase.cmdLock.getUseageTemplate(true) );
|
pageLines.add( p.cmdBase.cmdLock.getUseageTemplate(true) );
|
||||||
pageLines.add( p.cmdBase.cmdReload.getUseageTemplate(true) );
|
pageLines.add( p.cmdBase.cmdReload.getUseageTemplate(true) );
|
||||||
|
@ -13,6 +13,7 @@ import com.massivecraft.factions.FLocation;
|
|||||||
import com.massivecraft.factions.FPlayer;
|
import com.massivecraft.factions.FPlayer;
|
||||||
import com.massivecraft.factions.FPlayers;
|
import com.massivecraft.factions.FPlayers;
|
||||||
import com.massivecraft.factions.Faction;
|
import com.massivecraft.factions.Faction;
|
||||||
|
import com.massivecraft.factions.struct.FactionFlag;
|
||||||
import com.massivecraft.factions.struct.Permission;
|
import com.massivecraft.factions.struct.Permission;
|
||||||
import com.massivecraft.factions.struct.Rel;
|
import com.massivecraft.factions.struct.Rel;
|
||||||
import com.massivecraft.factions.zcore.util.SmokeUtil;
|
import com.massivecraft.factions.zcore.util.SmokeUtil;
|
||||||
@ -79,7 +80,7 @@ public class CmdHome extends FCommand
|
|||||||
(
|
(
|
||||||
Conf.homesTeleportAllowedEnemyDistance > 0
|
Conf.homesTeleportAllowedEnemyDistance > 0
|
||||||
&&
|
&&
|
||||||
! faction.isSafeZone()
|
faction.getFlag(FactionFlag.PVP)
|
||||||
&&
|
&&
|
||||||
(
|
(
|
||||||
! fme.isInOwnTerritory()
|
! fme.isInOwnTerritory()
|
||||||
|
@ -1,63 +0,0 @@
|
|||||||
package com.massivecraft.factions.cmd;
|
|
||||||
|
|
||||||
import com.massivecraft.factions.FPlayers;
|
|
||||||
import com.massivecraft.factions.Faction;
|
|
||||||
import com.massivecraft.factions.FPlayer;
|
|
||||||
import com.massivecraft.factions.integration.SpoutFeatures;
|
|
||||||
import com.massivecraft.factions.struct.Permission;
|
|
||||||
|
|
||||||
public class CmdPeaceful extends FCommand
|
|
||||||
{
|
|
||||||
|
|
||||||
public CmdPeaceful()
|
|
||||||
{
|
|
||||||
super();
|
|
||||||
this.aliases.add("peaceful");
|
|
||||||
|
|
||||||
this.requiredArgs.add("faction tag");
|
|
||||||
//this.optionalArgs.put("", "");
|
|
||||||
|
|
||||||
this.permission = Permission.SET_PEACEFUL.node;
|
|
||||||
this.disableOnLock = true;
|
|
||||||
|
|
||||||
senderMustBePlayer = false;
|
|
||||||
senderMustBeMember = false;
|
|
||||||
senderMustBeOfficer = false;
|
|
||||||
senderMustBeLeader = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void perform()
|
|
||||||
{
|
|
||||||
Faction faction = this.argAsFaction(0);
|
|
||||||
if (faction == null) return;
|
|
||||||
|
|
||||||
String change;
|
|
||||||
if (faction.isPeaceful())
|
|
||||||
{
|
|
||||||
change = "removed peaceful status from";
|
|
||||||
faction.setPeaceful(false);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
change = "granted peaceful status to";
|
|
||||||
faction.setPeaceful(true);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Inform all players
|
|
||||||
for (FPlayer fplayer : FPlayers.i.getOnline())
|
|
||||||
{
|
|
||||||
if (fplayer.getFaction() == faction)
|
|
||||||
{
|
|
||||||
fplayer.msg((fme == null ? "A server admin" : fme.describeTo(fplayer, true))+"<i> has "+change+" your faction.");
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
fplayer.msg((fme == null ? "A server admin" : fme.describeTo(fplayer, true))+"<i> has "+change+" the faction \"" + faction.getTag(fplayer) + "<i>\".");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
SpoutFeatures.updateAppearances(faction);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -6,7 +6,7 @@ public class CmdRelationTruce extends FRelationCommand
|
|||||||
{
|
{
|
||||||
public CmdRelationTruce()
|
public CmdRelationTruce()
|
||||||
{
|
{
|
||||||
aliases.add("neutral");
|
aliases.add("truce");
|
||||||
targetRelation = Rel.NEUTRAL;
|
targetRelation = Rel.TRUCE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,41 +0,0 @@
|
|||||||
package com.massivecraft.factions.cmd;
|
|
||||||
|
|
||||||
import com.massivecraft.factions.Board;
|
|
||||||
import com.massivecraft.factions.Conf;
|
|
||||||
import com.massivecraft.factions.Factions;
|
|
||||||
import com.massivecraft.factions.P;
|
|
||||||
import com.massivecraft.factions.struct.Permission;
|
|
||||||
|
|
||||||
public class CmdSafeunclaimall extends FCommand
|
|
||||||
{
|
|
||||||
|
|
||||||
public CmdSafeunclaimall()
|
|
||||||
{
|
|
||||||
this.aliases.add("safeunclaimall");
|
|
||||||
this.aliases.add("safedeclaimall");
|
|
||||||
|
|
||||||
//this.requiredArgs.add("");
|
|
||||||
//this.optionalArgs.put("radius", "0");
|
|
||||||
|
|
||||||
this.permission = Permission.MANAGE_SAFE_ZONE.node;
|
|
||||||
this.disableOnLock = true;
|
|
||||||
|
|
||||||
senderMustBePlayer = false;
|
|
||||||
senderMustBeMember = false;
|
|
||||||
senderMustBeOfficer = false;
|
|
||||||
senderMustBeLeader = false;
|
|
||||||
|
|
||||||
this.setHelpShort("Unclaim all safezone land");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void perform()
|
|
||||||
{
|
|
||||||
Board.unclaimAll(Factions.i.getSafeZone().getId());
|
|
||||||
msg("<i>You unclaimed ALL safe zone land.");
|
|
||||||
|
|
||||||
if (Conf.logLandUnclaims)
|
|
||||||
P.p.log(fme.getName()+" unclaimed all safe zones.");
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -56,9 +56,9 @@ public class CmdShow extends FCommand
|
|||||||
}
|
}
|
||||||
|
|
||||||
String peaceStatus = "";
|
String peaceStatus = "";
|
||||||
if (faction.isPeaceful())
|
if (faction.getFlag(FactionFlag.PEACEFUL))
|
||||||
{
|
{
|
||||||
peaceStatus = " "+Conf.colorNeutral+"This faction is Peaceful";
|
peaceStatus = " "+Conf.colorTruce+"This faction is Peaceful";
|
||||||
}
|
}
|
||||||
|
|
||||||
msg("<a>Joining: <i>"+(faction.getOpen() ? "no invitation is needed" : "invitation is required")+peaceStatus);
|
msg("<a>Joining: <i>"+(faction.getOpen() ? "no invitation is needed" : "invitation is required")+peaceStatus);
|
||||||
|
@ -35,41 +35,6 @@ public class CmdUnclaim extends FCommand
|
|||||||
FLocation flocation = new FLocation(fme);
|
FLocation flocation = new FLocation(fme);
|
||||||
Faction otherFaction = Board.getFactionAt(flocation);
|
Faction otherFaction = Board.getFactionAt(flocation);
|
||||||
|
|
||||||
if (otherFaction.isSafeZone())
|
|
||||||
{
|
|
||||||
if (Permission.MANAGE_SAFE_ZONE.has(sender))
|
|
||||||
{
|
|
||||||
Board.removeAt(flocation);
|
|
||||||
SpoutFeatures.updateTerritoryDisplayLoc(flocation);
|
|
||||||
msg("<i>Safe zone was unclaimed.");
|
|
||||||
|
|
||||||
if (Conf.logLandUnclaims)
|
|
||||||
P.p.log(fme.getName()+" unclaimed land at ("+flocation.getCoordString()+") from the faction: "+otherFaction.getTag());
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
msg("<b>This is a safe zone. You lack permissions to unclaim.");
|
|
||||||
}
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
else if (otherFaction.isWarZone())
|
|
||||||
{
|
|
||||||
if (Permission.MANAGE_WAR_ZONE.has(sender))
|
|
||||||
{
|
|
||||||
Board.removeAt(flocation);
|
|
||||||
SpoutFeatures.updateTerritoryDisplayLoc(flocation);
|
|
||||||
msg("<i>War zone was unclaimed.");
|
|
||||||
|
|
||||||
if (Conf.logLandUnclaims)
|
|
||||||
P.p.log(fme.getName()+" unclaimed land at ("+flocation.getCoordString()+") from the faction: "+otherFaction.getTag());
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
msg("<b>This is a war zone. You lack permissions to unclaim.");
|
|
||||||
}
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (fme.isAdminBypassing())
|
if (fme.isAdminBypassing())
|
||||||
{
|
{
|
||||||
Board.removeAt(flocation);
|
Board.removeAt(flocation);
|
||||||
@ -114,52 +79,6 @@ public class CmdUnclaim extends FCommand
|
|||||||
{
|
{
|
||||||
if ( ! Econ.modifyMoney(fme , refund, "to unclaim this land", "for unclaiming this land")) return;
|
if ( ! Econ.modifyMoney(fme , refund, "to unclaim this land", "for unclaiming this land")) return;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
// a real refund
|
|
||||||
if (refund > 0.0)
|
|
||||||
{
|
|
||||||
if(Conf.bankFactionPaysLandCosts)
|
|
||||||
{
|
|
||||||
Faction faction = myFaction;
|
|
||||||
faction.addMoney(refund);
|
|
||||||
moneyBack = " "+faction.getTag()+"<i> received a refund of <h>"+Econ.moneyString(refund)+"<i>.";
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
Econ.addMoney(fme.getName(), refund);
|
|
||||||
moneyBack = " They received a refund of <h>"+Econ.moneyString(refund)+"<i>.";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// wait, you're charging people to unclaim land? outrageous
|
|
||||||
else if (refund < 0.0)
|
|
||||||
{
|
|
||||||
if(Conf.bankFactionPaysLandCosts)
|
|
||||||
{
|
|
||||||
Faction faction = myFaction;
|
|
||||||
if(!faction.removeMoney(-refund))
|
|
||||||
{
|
|
||||||
msg("<b>Unclaiming this land will cost <h>%s<b> which your faction can't currently afford.", Econ.moneyString(-refund));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
moneyBack = " It cost "+faction.getTag()+" <h>"+Econ.moneyString(refund)+"<i>.";
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (!Econ.deductMoney(fme.getName(), -refund))
|
|
||||||
{
|
|
||||||
msg("<b>Unclaiming this land will cost <h>%s<b> which you can't currently afford.", Econ.moneyString(-refund));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
moneyBack = " It cost them <h>"+Econ.moneyString(refund)+"<i>.";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// no refund
|
|
||||||
else
|
|
||||||
{
|
|
||||||
moneyBack = "";
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Board.removeAt(flocation);
|
Board.removeAt(flocation);
|
||||||
|
@ -1,41 +0,0 @@
|
|||||||
package com.massivecraft.factions.cmd;
|
|
||||||
|
|
||||||
import com.massivecraft.factions.Board;
|
|
||||||
import com.massivecraft.factions.Conf;
|
|
||||||
import com.massivecraft.factions.Factions;
|
|
||||||
import com.massivecraft.factions.P;
|
|
||||||
import com.massivecraft.factions.struct.Permission;
|
|
||||||
|
|
||||||
public class CmdWarunclaimall extends FCommand
|
|
||||||
{
|
|
||||||
|
|
||||||
public CmdWarunclaimall()
|
|
||||||
{
|
|
||||||
this.aliases.add("warunclaimall");
|
|
||||||
this.aliases.add("wardeclaimall");
|
|
||||||
|
|
||||||
//this.requiredArgs.add("");
|
|
||||||
//this.optionalArgs.put("", "");
|
|
||||||
|
|
||||||
this.permission = Permission.MANAGE_WAR_ZONE.node;
|
|
||||||
this.disableOnLock = true;
|
|
||||||
|
|
||||||
senderMustBePlayer = false;
|
|
||||||
senderMustBeMember = false;
|
|
||||||
senderMustBeOfficer = false;
|
|
||||||
senderMustBeLeader = false;
|
|
||||||
|
|
||||||
this.setHelpShort("unclaim all warzone land");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void perform()
|
|
||||||
{
|
|
||||||
Board.unclaimAll(Factions.i.getWarZone().getId());
|
|
||||||
msg("<i>You unclaimed ALL war zone land.");
|
|
||||||
|
|
||||||
if (Conf.logLandUnclaims)
|
|
||||||
P.p.log(fme.getName()+" unclaimed all war zones.");
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -8,7 +8,6 @@ public class FCmdRoot extends FCommand
|
|||||||
{
|
{
|
||||||
public CmdLeader cmdLeader = new CmdLeader();
|
public CmdLeader cmdLeader = new CmdLeader();
|
||||||
public CmdAutoClaim cmdAutoClaim = new CmdAutoClaim();
|
public CmdAutoClaim cmdAutoClaim = new CmdAutoClaim();
|
||||||
public CmdBoom cmdBoom = new CmdBoom();
|
|
||||||
public CmdBypass cmdBypass = new CmdBypass();
|
public CmdBypass cmdBypass = new CmdBypass();
|
||||||
public CmdChat cmdChat = new CmdChat();
|
public CmdChat cmdChat = new CmdChat();
|
||||||
public CmdClaim cmdClaim = new CmdClaim();
|
public CmdClaim cmdClaim = new CmdClaim();
|
||||||
@ -32,13 +31,12 @@ public class FCmdRoot extends FCommand
|
|||||||
public CmdOpen cmdOpen = new CmdOpen();
|
public CmdOpen cmdOpen = new CmdOpen();
|
||||||
public CmdOwner cmdOwner = new CmdOwner();
|
public CmdOwner cmdOwner = new CmdOwner();
|
||||||
public CmdOwnerList cmdOwnerList = new CmdOwnerList();
|
public CmdOwnerList cmdOwnerList = new CmdOwnerList();
|
||||||
public CmdPeaceful cmdPeaceful = new CmdPeaceful();
|
|
||||||
public CmdPower cmdPower = new CmdPower();
|
public CmdPower cmdPower = new CmdPower();
|
||||||
public CmdRelationAlly cmdRelationAlly = new CmdRelationAlly();
|
public CmdRelationAlly cmdRelationAlly = new CmdRelationAlly();
|
||||||
public CmdRelationEnemy cmdRelationEnemy = new CmdRelationEnemy();
|
public CmdRelationEnemy cmdRelationEnemy = new CmdRelationEnemy();
|
||||||
public CmdRelationNeutral cmdRelationNeutral = new CmdRelationNeutral();
|
public CmdRelationNeutral cmdRelationNeutral = new CmdRelationNeutral();
|
||||||
|
public CmdRelationTruce cmdRelationTruce = new CmdRelationTruce();
|
||||||
public CmdReload cmdReload = new CmdReload();
|
public CmdReload cmdReload = new CmdReload();
|
||||||
public CmdSafeunclaimall cmdSafeunclaimall = new CmdSafeunclaimall();
|
|
||||||
public CmdSaveAll cmdSaveAll = new CmdSaveAll();
|
public CmdSaveAll cmdSaveAll = new CmdSaveAll();
|
||||||
public CmdSethome cmdSethome = new CmdSethome();
|
public CmdSethome cmdSethome = new CmdSethome();
|
||||||
public CmdShow cmdShow = new CmdShow();
|
public CmdShow cmdShow = new CmdShow();
|
||||||
@ -47,7 +45,6 @@ public class FCmdRoot extends FCommand
|
|||||||
public CmdUnclaim cmdUnclaim = new CmdUnclaim();
|
public CmdUnclaim cmdUnclaim = new CmdUnclaim();
|
||||||
public CmdUnclaimall cmdUnclaimall = new CmdUnclaimall();
|
public CmdUnclaimall cmdUnclaimall = new CmdUnclaimall();
|
||||||
public CmdVersion cmdVersion = new CmdVersion();
|
public CmdVersion cmdVersion = new CmdVersion();
|
||||||
public CmdWarunclaimall cmdWarunclaimall = new CmdWarunclaimall();
|
|
||||||
|
|
||||||
public FCmdRoot()
|
public FCmdRoot()
|
||||||
{
|
{
|
||||||
@ -73,7 +70,6 @@ public class FCmdRoot extends FCommand
|
|||||||
|
|
||||||
this.addSubCommand(this.cmdLeader);
|
this.addSubCommand(this.cmdLeader);
|
||||||
this.addSubCommand(this.cmdAutoClaim);
|
this.addSubCommand(this.cmdAutoClaim);
|
||||||
this.addSubCommand(this.cmdBoom);
|
|
||||||
this.addSubCommand(this.cmdBypass);
|
this.addSubCommand(this.cmdBypass);
|
||||||
this.addSubCommand(this.cmdChat);
|
this.addSubCommand(this.cmdChat);
|
||||||
this.addSubCommand(this.cmdClaim);
|
this.addSubCommand(this.cmdClaim);
|
||||||
@ -97,13 +93,12 @@ public class FCmdRoot extends FCommand
|
|||||||
this.addSubCommand(this.cmdOpen);
|
this.addSubCommand(this.cmdOpen);
|
||||||
this.addSubCommand(this.cmdOwner);
|
this.addSubCommand(this.cmdOwner);
|
||||||
this.addSubCommand(this.cmdOwnerList);
|
this.addSubCommand(this.cmdOwnerList);
|
||||||
this.addSubCommand(this.cmdPeaceful);
|
|
||||||
this.addSubCommand(this.cmdPower);
|
this.addSubCommand(this.cmdPower);
|
||||||
this.addSubCommand(this.cmdRelationAlly);
|
this.addSubCommand(this.cmdRelationAlly);
|
||||||
this.addSubCommand(this.cmdRelationEnemy);
|
this.addSubCommand(this.cmdRelationEnemy);
|
||||||
this.addSubCommand(this.cmdRelationNeutral);
|
this.addSubCommand(this.cmdRelationNeutral);
|
||||||
|
this.addSubCommand(this.cmdRelationTruce);
|
||||||
this.addSubCommand(this.cmdReload);
|
this.addSubCommand(this.cmdReload);
|
||||||
this.addSubCommand(this.cmdSafeunclaimall);
|
|
||||||
this.addSubCommand(this.cmdSaveAll);
|
this.addSubCommand(this.cmdSaveAll);
|
||||||
this.addSubCommand(this.cmdSethome);
|
this.addSubCommand(this.cmdSethome);
|
||||||
this.addSubCommand(this.cmdShow);
|
this.addSubCommand(this.cmdShow);
|
||||||
@ -112,7 +107,6 @@ public class FCmdRoot extends FCommand
|
|||||||
this.addSubCommand(this.cmdUnclaim);
|
this.addSubCommand(this.cmdUnclaim);
|
||||||
this.addSubCommand(this.cmdUnclaimall);
|
this.addSubCommand(this.cmdUnclaimall);
|
||||||
this.addSubCommand(this.cmdVersion);
|
this.addSubCommand(this.cmdVersion);
|
||||||
this.addSubCommand(this.cmdWarunclaimall);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -5,6 +5,7 @@ import org.bukkit.ChatColor;
|
|||||||
import com.massivecraft.factions.Conf;
|
import com.massivecraft.factions.Conf;
|
||||||
import com.massivecraft.factions.Faction;
|
import com.massivecraft.factions.Faction;
|
||||||
import com.massivecraft.factions.integration.SpoutFeatures;
|
import com.massivecraft.factions.integration.SpoutFeatures;
|
||||||
|
import com.massivecraft.factions.struct.FactionFlag;
|
||||||
import com.massivecraft.factions.struct.Permission;
|
import com.massivecraft.factions.struct.Permission;
|
||||||
import com.massivecraft.factions.struct.Rel;
|
import com.massivecraft.factions.struct.Rel;
|
||||||
|
|
||||||
@ -63,13 +64,13 @@ public abstract class FRelationCommand extends FCommand
|
|||||||
myFaction.msg(currentRelationColor+them.getTag()+"<i> were informed that you wish to be "+targetRelation.getColor()+targetRelation);
|
myFaction.msg(currentRelationColor+them.getTag()+"<i> were informed that you wish to be "+targetRelation.getColor()+targetRelation);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( targetRelation != Rel.NEUTRAL && them.isPeaceful())
|
if ( targetRelation != Rel.NEUTRAL && them.getFlag(FactionFlag.PEACEFUL))
|
||||||
{
|
{
|
||||||
them.msg("<i>This will have no effect while your faction is peaceful.");
|
them.msg("<i>This will have no effect while your faction is peaceful.");
|
||||||
myFaction.msg("<i>This will have no effect while their faction is peaceful.");
|
myFaction.msg("<i>This will have no effect while their faction is peaceful.");
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( targetRelation != Rel.NEUTRAL && myFaction.isPeaceful())
|
if ( targetRelation != Rel.NEUTRAL && myFaction.getFlag(FactionFlag.PEACEFUL))
|
||||||
{
|
{
|
||||||
them.msg("<i>This will have no effect while their faction is peaceful.");
|
them.msg("<i>This will have no effect while their faction is peaceful.");
|
||||||
myFaction.msg("<i>This will have no effect while your faction is peaceful.");
|
myFaction.msg("<i>This will have no effect while your faction is peaceful.");
|
||||||
|
@ -267,7 +267,7 @@ public class SpoutFeatures
|
|||||||
{
|
{
|
||||||
// yeah, no cape if no faction
|
// yeah, no cape if no faction
|
||||||
}
|
}
|
||||||
else if (viewedFaction.isPeaceful())
|
else if (relation == Rel.TRUCE)
|
||||||
cape = Conf.capePeaceful;
|
cape = Conf.capePeaceful;
|
||||||
else if (relation == Rel.NEUTRAL)
|
else if (relation == Rel.NEUTRAL)
|
||||||
cape = Conf.capeNeutral;
|
cape = Conf.capeNeutral;
|
||||||
|
@ -18,7 +18,6 @@ import com.massivecraft.factions.FPlayer;
|
|||||||
import com.massivecraft.factions.FPlayers;
|
import com.massivecraft.factions.FPlayers;
|
||||||
import com.massivecraft.factions.Faction;
|
import com.massivecraft.factions.Faction;
|
||||||
import com.massivecraft.factions.P;
|
import com.massivecraft.factions.P;
|
||||||
import com.massivecraft.factions.struct.Permission;
|
|
||||||
import com.massivecraft.factions.struct.Rel;
|
import com.massivecraft.factions.struct.Rel;
|
||||||
|
|
||||||
|
|
||||||
@ -129,28 +128,6 @@ public class FactionsBlockListener extends BlockListener
|
|||||||
if (pistonFaction == otherFaction)
|
if (pistonFaction == otherFaction)
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
if (otherFaction.isNone())
|
|
||||||
{
|
|
||||||
if (!Conf.wildernessDenyBuild || Conf.worldsNoWildernessProtection.contains(target.getWorld().getName()))
|
|
||||||
return true;
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
else if (otherFaction.isSafeZone())
|
|
||||||
{
|
|
||||||
if ( ! Conf.safeZoneDenyBuild)
|
|
||||||
return true;
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
else if (otherFaction.isWarZone())
|
|
||||||
{
|
|
||||||
if ( ! Conf.warZoneDenyBuild)
|
|
||||||
return true;
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
Rel rel = pistonFaction.getRelationTo(otherFaction);
|
Rel rel = pistonFaction.getRelationTo(otherFaction);
|
||||||
|
|
||||||
if (rel.confDenyBuild(otherFaction.hasPlayersOnline()))
|
if (rel.confDenyBuild(otherFaction.hasPlayersOnline()))
|
||||||
@ -169,37 +146,6 @@ public class FactionsBlockListener extends BlockListener
|
|||||||
FLocation loc = new FLocation(location);
|
FLocation loc = new FLocation(location);
|
||||||
Faction otherFaction = Board.getFactionAt(loc);
|
Faction otherFaction = Board.getFactionAt(loc);
|
||||||
|
|
||||||
if (otherFaction.isNone())
|
|
||||||
{
|
|
||||||
if (!Conf.wildernessDenyBuild || Conf.worldsNoWildernessProtection.contains(location.getWorld().getName()))
|
|
||||||
return true; // This is not faction territory. Use whatever you like here.
|
|
||||||
|
|
||||||
if (!justCheck)
|
|
||||||
me.msg("<b>You can't "+action+" in the wilderness.");
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
else if (otherFaction.isSafeZone())
|
|
||||||
{
|
|
||||||
if (!Conf.safeZoneDenyBuild || Permission.MANAGE_SAFE_ZONE.has(player))
|
|
||||||
return true;
|
|
||||||
|
|
||||||
if (!justCheck)
|
|
||||||
me.msg("<b>You can't "+action+" in a safe zone.");
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
else if (otherFaction.isWarZone())
|
|
||||||
{
|
|
||||||
if (!Conf.warZoneDenyBuild || Permission.MANAGE_WAR_ZONE.has(player))
|
|
||||||
return true;
|
|
||||||
|
|
||||||
if (!justCheck)
|
|
||||||
me.msg("<b>You can't "+action+" in a war zone.");
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
Faction myFaction = me.getFaction();
|
Faction myFaction = me.getFaction();
|
||||||
Rel rel = myFaction.getRelationTo(otherFaction);
|
Rel rel = myFaction.getRelationTo(otherFaction);
|
||||||
boolean online = otherFaction.hasPlayersOnline();
|
boolean online = otherFaction.hasPlayersOnline();
|
||||||
|
@ -3,9 +3,7 @@ package com.massivecraft.factions.listeners;
|
|||||||
import java.text.MessageFormat;
|
import java.text.MessageFormat;
|
||||||
|
|
||||||
import org.bukkit.Location;
|
import org.bukkit.Location;
|
||||||
import org.bukkit.entity.Creeper;
|
|
||||||
import org.bukkit.entity.Entity;
|
import org.bukkit.entity.Entity;
|
||||||
import org.bukkit.entity.Fireball;
|
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.entity.Projectile;
|
import org.bukkit.entity.Projectile;
|
||||||
import org.bukkit.event.entity.CreatureSpawnEvent;
|
import org.bukkit.event.entity.CreatureSpawnEvent;
|
||||||
@ -28,6 +26,7 @@ import com.massivecraft.factions.FPlayer;
|
|||||||
import com.massivecraft.factions.FPlayers;
|
import com.massivecraft.factions.FPlayers;
|
||||||
import com.massivecraft.factions.Faction;
|
import com.massivecraft.factions.Faction;
|
||||||
import com.massivecraft.factions.P;
|
import com.massivecraft.factions.P;
|
||||||
|
import com.massivecraft.factions.struct.FactionFlag;
|
||||||
import com.massivecraft.factions.struct.Rel;
|
import com.massivecraft.factions.struct.Rel;
|
||||||
import com.massivecraft.factions.util.MiscUtil;
|
import com.massivecraft.factions.util.MiscUtil;
|
||||||
|
|
||||||
@ -44,42 +43,24 @@ public class FactionsEntityListener extends EntityListener
|
|||||||
public void onEntityDeath(EntityDeathEvent event)
|
public void onEntityDeath(EntityDeathEvent event)
|
||||||
{
|
{
|
||||||
Entity entity = event.getEntity();
|
Entity entity = event.getEntity();
|
||||||
if ( ! (entity instanceof Player))
|
if ( ! (entity instanceof Player)) return;
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
Player player = (Player) entity;
|
Player player = (Player) entity;
|
||||||
FPlayer fplayer = FPlayers.i.get(player);
|
FPlayer fplayer = FPlayers.i.get(player);
|
||||||
Faction faction = Board.getFactionAt(new FLocation(player.getLocation()));
|
Faction faction = Board.getFactionAt(new FLocation(player.getLocation()));
|
||||||
if (faction.isWarZone())
|
|
||||||
|
if ( ! faction.getFlag(FactionFlag.POWERLOSS))
|
||||||
{
|
{
|
||||||
// war zones always override worldsNoPowerLoss either way, thus this layout
|
fplayer.msg("<i>You didn't lose any power since the territory you died in works that way.");
|
||||||
if (! Conf.warZonePowerLoss)
|
|
||||||
{
|
|
||||||
fplayer.msg("<i>You didn't lose any power since you were in a war zone.");
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Conf.worldsNoPowerLoss.contains(player.getWorld().getName()))
|
if (Conf.worldsNoPowerLoss.contains(player.getWorld().getName()))
|
||||||
{
|
|
||||||
fplayer.msg("<b>The world you are in has power loss normally disabled, but you still lost power since you were in a war zone.");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (faction.isNone() && !Conf.wildernessPowerLoss && !Conf.worldsNoWildernessProtection.contains(player.getWorld().getName()))
|
|
||||||
{
|
|
||||||
fplayer.msg("<i>You didn't lose any power since you were in the wilderness.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
else if (Conf.worldsNoPowerLoss.contains(player.getWorld().getName()))
|
|
||||||
{
|
{
|
||||||
fplayer.msg("<i>You didn't lose any power due to the world you died in.");
|
fplayer.msg("<i>You didn't lose any power due to the world you died in.");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else if (Conf.peacefulMembersDisablePowerLoss && fplayer.hasFaction() && fplayer.getFaction().isPeaceful())
|
|
||||||
{
|
|
||||||
fplayer.msg("<i>You didn't lose any power since you are in a peaceful faction.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
fplayer.onDeath();
|
fplayer.onDeath();
|
||||||
fplayer.msg("<i>Your power is now <h>"+fplayer.getPowerRounded()+" / "+fplayer.getPowerMaxRounded());
|
fplayer.msg("<i>Your power is now <h>"+fplayer.getPowerRounded()+" / "+fplayer.getPowerMaxRounded());
|
||||||
}
|
}
|
||||||
@ -103,11 +84,12 @@ public class FactionsEntityListener extends EntityListener
|
|||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (Conf.safeZonePreventAllDamageToPlayers && isPlayerInSafeZone(event.getEntity()))
|
// TODO: Add a no damage at all flag??
|
||||||
|
/*else if (Conf.safeZonePreventAllDamageToPlayers && isPlayerInSafeZone(event.getEntity()))
|
||||||
{
|
{
|
||||||
// Players can not take any damage in a Safe Zone
|
// Players can not take any damage in a Safe Zone
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
}
|
}*/
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -119,87 +101,14 @@ public class FactionsEntityListener extends EntityListener
|
|||||||
|
|
||||||
Faction faction = Board.getFactionAt(new FLocation(loc));
|
Faction faction = Board.getFactionAt(new FLocation(loc));
|
||||||
|
|
||||||
if (faction.noExplosionsInTerritory())
|
if (faction.getFlag(FactionFlag.EXPLOSIONS) == false)
|
||||||
{
|
{
|
||||||
// faction is peaceful and has explosions set to disabled
|
// faction is peaceful and has explosions set to disabled
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean online = faction.hasPlayersOnline();
|
|
||||||
|
|
||||||
if
|
|
||||||
(
|
|
||||||
event.getEntity() instanceof Creeper
|
|
||||||
&&
|
|
||||||
(
|
|
||||||
(faction.isNone() && Conf.wildernessBlockCreepers && !Conf.worldsNoWildernessProtection.contains(loc.getWorld().getName()))
|
|
||||||
||
|
|
||||||
(faction.isNormal() && (online ? Conf.territoryBlockCreepers : Conf.territoryBlockCreepersWhenOffline))
|
|
||||||
||
|
|
||||||
(faction.isWarZone() && Conf.warZoneBlockCreepers)
|
|
||||||
||
|
|
||||||
faction.isSafeZone()
|
|
||||||
)
|
|
||||||
)
|
|
||||||
{
|
|
||||||
// creeper which needs prevention
|
|
||||||
event.setCancelled(true);
|
|
||||||
}
|
}
|
||||||
else if
|
/*
|
||||||
(
|
|
||||||
event.getEntity() instanceof Fireball
|
|
||||||
&&
|
|
||||||
(
|
|
||||||
(faction.isNone() && Conf.wildernessBlockFireballs && !Conf.worldsNoWildernessProtection.contains(loc.getWorld().getName()))
|
|
||||||
||
|
|
||||||
(faction.isNormal() && (online ? Conf.territoryBlockFireballs : Conf.territoryBlockFireballsWhenOffline))
|
|
||||||
||
|
|
||||||
(faction.isWarZone() && Conf.warZoneBlockFireballs)
|
|
||||||
||
|
|
||||||
faction.isSafeZone()
|
|
||||||
)
|
|
||||||
)
|
|
||||||
{
|
|
||||||
// ghast fireball which needs prevention
|
|
||||||
event.setCancelled(true);
|
|
||||||
}
|
|
||||||
else if
|
|
||||||
(
|
|
||||||
(
|
|
||||||
faction.isNone()
|
|
||||||
&&
|
|
||||||
Conf.wildernessBlockTNT
|
|
||||||
&&
|
|
||||||
! Conf.worldsNoWildernessProtection.contains(loc.getWorld().getName())
|
|
||||||
)
|
|
||||||
||
|
|
||||||
(
|
|
||||||
faction.isNormal()
|
|
||||||
&&
|
|
||||||
(
|
|
||||||
online ? Conf.territoryBlockTNT : Conf.territoryBlockTNTWhenOffline
|
|
||||||
)
|
|
||||||
)
|
|
||||||
||
|
|
||||||
(
|
|
||||||
faction.isWarZone()
|
|
||||||
&&
|
|
||||||
Conf.warZoneBlockTNT
|
|
||||||
)
|
|
||||||
||
|
|
||||||
(
|
|
||||||
faction.isSafeZone()
|
|
||||||
&&
|
|
||||||
Conf.safeZoneBlockTNT
|
|
||||||
)
|
|
||||||
)
|
|
||||||
{
|
|
||||||
// we'll assume it's TNT, which needs prevention
|
|
||||||
event.setCancelled(true);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isPlayerInSafeZone(Entity damagee)
|
public boolean isPlayerInSafeZone(Entity damagee)
|
||||||
{
|
{
|
||||||
if ( ! (damagee instanceof Player))
|
if ( ! (damagee instanceof Player))
|
||||||
@ -212,7 +121,7 @@ public class FactionsEntityListener extends EntityListener
|
|||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
public boolean canDamagerHurtDamagee(EntityDamageByEntityEvent sub)
|
public boolean canDamagerHurtDamagee(EntityDamageByEntityEvent sub)
|
||||||
{
|
{
|
||||||
Entity damager = sub.getDamager();
|
Entity damager = sub.getDamager();
|
||||||
@ -247,14 +156,16 @@ public class FactionsEntityListener extends EntityListener
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Players can not take attack damage in a SafeZone, or possibly peaceful territory
|
// Players can not take attack damage in a SafeZone, or possibly peaceful territory
|
||||||
if (defLocFaction.noPvPInTerritory()) {
|
|
||||||
|
if (defLocFaction.getFlag(FactionFlag.PVP) == false)
|
||||||
|
{
|
||||||
if (damager instanceof Player)
|
if (damager instanceof Player)
|
||||||
{
|
{
|
||||||
FPlayer attacker = FPlayers.i.get((Player)damager);
|
FPlayer attacker = FPlayers.i.get((Player)damager);
|
||||||
attacker.msg("<i>You can't hurt other players in "+(defLocFaction.isSafeZone() ? "a SafeZone." : "peaceful territory."));
|
attacker.msg("<i>You can't hurt other players here.");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
return !defLocFaction.noMonstersInTerritory();
|
return defLocFaction.getFlag(FactionFlag.MONSTERS);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( ! (damager instanceof Player))
|
if ( ! (damager instanceof Player))
|
||||||
@ -278,15 +189,11 @@ public class FactionsEntityListener extends EntityListener
|
|||||||
Faction locFaction = Board.getFactionAt(new FLocation(attacker));
|
Faction locFaction = Board.getFactionAt(new FLocation(attacker));
|
||||||
|
|
||||||
// so we know from above that the defender isn't in a safezone... what about the attacker, sneaky dog that he might be?
|
// so we know from above that the defender isn't in a safezone... what about the attacker, sneaky dog that he might be?
|
||||||
if (locFaction.noPvPInTerritory())
|
if (locFaction.getFlag(FactionFlag.PVP) == false)
|
||||||
{
|
{
|
||||||
attacker.msg("<i>You can't hurt other players while you are in "+(locFaction.isSafeZone() ? "a SafeZone." : "peaceful territory."));
|
attacker.msg("<i>You can't hurt other players here.");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
else if (locFaction.isWarZone() && Conf.warZoneFriendlyFire)
|
|
||||||
{
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
Faction defendFaction = defender.getFaction();
|
Faction defendFaction = defender.getFaction();
|
||||||
Faction attackFaction = attacker.getFaction();
|
Faction attackFaction = attacker.getFaction();
|
||||||
@ -310,17 +217,6 @@ public class FactionsEntityListener extends EntityListener
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (defendFaction.isPeaceful())
|
|
||||||
{
|
|
||||||
attacker.msg("<i>You can't hurt players who are in a peaceful faction.");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
else if (attackFaction.isPeaceful())
|
|
||||||
{
|
|
||||||
attacker.msg("<i>You can't hurt players while you are in a peaceful faction.");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
Rel relation = defendFaction.getRelationTo(attackFaction);
|
Rel relation = defendFaction.getRelationTo(attackFaction);
|
||||||
|
|
||||||
// You can not hurt neutral factions
|
// You can not hurt neutral factions
|
||||||
@ -370,16 +266,17 @@ public class FactionsEntityListener extends EntityListener
|
|||||||
@Override
|
@Override
|
||||||
public void onCreatureSpawn(CreatureSpawnEvent event)
|
public void onCreatureSpawn(CreatureSpawnEvent event)
|
||||||
{
|
{
|
||||||
if (event.isCancelled() || event.getLocation() == null)
|
if (event.isCancelled()) return;
|
||||||
{
|
if (event.getLocation() == null) return;
|
||||||
return;
|
|
||||||
}
|
FLocation floc = new FLocation(event.getLocation());
|
||||||
|
Faction faction = Board.getFactionAt(floc);
|
||||||
|
|
||||||
|
if (faction.getFlag(FactionFlag.MONSTERS)) return;
|
||||||
|
if ( ! Conf.safeZoneNerfedCreatureTypes.contains(event.getCreatureType())) return;
|
||||||
|
|
||||||
if (Conf.safeZoneNerfedCreatureTypes.contains(event.getCreatureType()) && Board.getFactionAt(new FLocation(event.getLocation())).noMonstersInTerritory())
|
|
||||||
{
|
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onEntityTarget(EntityTargetEvent event)
|
public void onEntityTarget(EntityTargetEvent event)
|
||||||
@ -388,23 +285,18 @@ public class FactionsEntityListener extends EntityListener
|
|||||||
|
|
||||||
// if there is a target
|
// if there is a target
|
||||||
Entity target = event.getTarget();
|
Entity target = event.getTarget();
|
||||||
if (target == null)
|
if (target == null) return;
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// We are interested in blocking targeting for certain mobs:
|
// We are interested in blocking targeting for certain mobs:
|
||||||
if ( ! Conf.safeZoneNerfedCreatureTypes.contains(MiscUtil.creatureTypeFromEntity(event.getEntity())))
|
if ( ! Conf.safeZoneNerfedCreatureTypes.contains(MiscUtil.creatureTypeFromEntity(event.getEntity()))) return;
|
||||||
{
|
|
||||||
return;
|
FLocation floc = new FLocation(target.getLocation());
|
||||||
}
|
Faction faction = Board.getFactionAt(floc);
|
||||||
|
|
||||||
|
if (faction.getFlag(FactionFlag.MONSTERS)) return;
|
||||||
|
|
||||||
// in case the target is in a safe zone.
|
|
||||||
if (Board.getFactionAt(new FLocation(target.getLocation())).noMonstersInTerritory())
|
|
||||||
{
|
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onPaintingBreak(PaintingBreakEvent event)
|
public void onPaintingBreak(PaintingBreakEvent event)
|
||||||
@ -444,24 +336,28 @@ public class FactionsEntityListener extends EntityListener
|
|||||||
{
|
{
|
||||||
if (event.isCancelled()) return;
|
if (event.isCancelled()) return;
|
||||||
|
|
||||||
if (stopEndermanBlockManipulation(event.getBlock().getLocation()))
|
FLocation floc = new FLocation(event.getBlock());
|
||||||
{
|
Faction faction = Board.getFactionAt(floc);
|
||||||
|
|
||||||
|
if (faction.getFlag(FactionFlag.ENDERGRIEF)) return;
|
||||||
|
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onEndermanPlace(EndermanPlaceEvent event)
|
public void onEndermanPlace(EndermanPlaceEvent event)
|
||||||
{
|
{
|
||||||
if (event.isCancelled()) return;
|
if (event.isCancelled()) return;
|
||||||
|
|
||||||
if (stopEndermanBlockManipulation(event.getLocation()))
|
FLocation floc = new FLocation(event.getLocation());
|
||||||
{
|
Faction faction = Board.getFactionAt(floc);
|
||||||
|
|
||||||
|
if (faction.getFlag(FactionFlag.ENDERGRIEF)) return;
|
||||||
|
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
private boolean stopEndermanBlockManipulation(Location loc)
|
/*private boolean stopEndermanBlockManipulation(Location loc)
|
||||||
{
|
{
|
||||||
if (loc == null)
|
if (loc == null)
|
||||||
{
|
{
|
||||||
@ -505,5 +401,5 @@ public class FactionsEntityListener extends EntityListener
|
|||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}*/
|
||||||
}
|
}
|
||||||
|
@ -28,10 +28,8 @@ import com.massivecraft.factions.FLocation;
|
|||||||
import com.massivecraft.factions.FPlayer;
|
import com.massivecraft.factions.FPlayer;
|
||||||
import com.massivecraft.factions.FPlayers;
|
import com.massivecraft.factions.FPlayers;
|
||||||
import com.massivecraft.factions.Faction;
|
import com.massivecraft.factions.Faction;
|
||||||
import com.massivecraft.factions.Factions;
|
|
||||||
import com.massivecraft.factions.P;
|
import com.massivecraft.factions.P;
|
||||||
import com.massivecraft.factions.integration.SpoutFeatures;
|
import com.massivecraft.factions.integration.SpoutFeatures;
|
||||||
import com.massivecraft.factions.struct.Permission;
|
|
||||||
import com.massivecraft.factions.struct.Rel;
|
import com.massivecraft.factions.struct.Rel;
|
||||||
import com.massivecraft.factions.zcore.util.TextUtil;
|
import com.massivecraft.factions.zcore.util.TextUtil;
|
||||||
|
|
||||||
@ -257,40 +255,6 @@ public class FactionsPlayerListener extends PlayerListener
|
|||||||
{
|
{
|
||||||
me.attemptClaim(me.getAutoClaimFor(), player.getLocation(), true);
|
me.attemptClaim(me.getAutoClaimFor(), player.getLocation(), true);
|
||||||
}
|
}
|
||||||
else if (me.isAutoSafeClaimEnabled())
|
|
||||||
{
|
|
||||||
if ( ! Permission.MANAGE_SAFE_ZONE.has(player))
|
|
||||||
{
|
|
||||||
me.setIsAutoSafeClaimEnabled(false);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
FLocation playerFlocation = new FLocation(me);
|
|
||||||
|
|
||||||
if (!Board.getFactionAt(playerFlocation).isSafeZone())
|
|
||||||
{
|
|
||||||
Board.setFactionAt(Factions.i.getSafeZone(), playerFlocation);
|
|
||||||
me.msg("<i>This land is now a safe zone.");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (me.isAutoWarClaimEnabled())
|
|
||||||
{
|
|
||||||
if ( ! Permission.MANAGE_WAR_ZONE.has(player))
|
|
||||||
{
|
|
||||||
me.setIsAutoWarClaimEnabled(false);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
FLocation playerFlocation = new FLocation(me);
|
|
||||||
|
|
||||||
if (!Board.getFactionAt(playerFlocation).isWarZone())
|
|
||||||
{
|
|
||||||
Board.setFactionAt(Factions.i.getWarZone(), playerFlocation);
|
|
||||||
me.msg("<i>This land is now a war zone.");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -324,6 +288,8 @@ public class FactionsPlayerListener extends PlayerListener
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// TODO: Improve with the... system for... Permissions
|
||||||
public static boolean playerCanUseItemHere(Player player, Location location, Material material, boolean justCheck)
|
public static boolean playerCanUseItemHere(Player player, Location location, Material material, boolean justCheck)
|
||||||
{
|
{
|
||||||
FPlayer me = FPlayers.i.get(player);
|
FPlayer me = FPlayers.i.get(player);
|
||||||
@ -344,37 +310,6 @@ public class FactionsPlayerListener extends PlayerListener
|
|||||||
return true; // Item isn't one we're preventing for offline factions.
|
return true; // Item isn't one we're preventing for offline factions.
|
||||||
}
|
}
|
||||||
|
|
||||||
if (otherFaction.isNone())
|
|
||||||
{
|
|
||||||
if (!Conf.wildernessDenyUseage || Conf.worldsNoWildernessProtection.contains(location.getWorld().getName()))
|
|
||||||
return true; // This is not faction territory. Use whatever you like here.
|
|
||||||
|
|
||||||
if (!justCheck)
|
|
||||||
me.msg("<b>You can't use <h>%s<b> in the wilderness.", TextUtil.getMaterialName(material));
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
else if (otherFaction.isSafeZone())
|
|
||||||
{
|
|
||||||
if (!Conf.safeZoneDenyUseage || Permission.MANAGE_SAFE_ZONE.has(player))
|
|
||||||
return true;
|
|
||||||
|
|
||||||
if (!justCheck)
|
|
||||||
me.msg("<b>You can't use <h>%s<b> in a safe zone.", TextUtil.getMaterialName(material));
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
else if (otherFaction.isWarZone())
|
|
||||||
{
|
|
||||||
if (!Conf.warZoneDenyUseage || Permission.MANAGE_WAR_ZONE.has(player))
|
|
||||||
return true;
|
|
||||||
|
|
||||||
if (!justCheck)
|
|
||||||
me.msg("<b>You can't use <h>%s<b> in a war zone.", TextUtil.getMaterialName(material));
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
Faction myFaction = me.getFaction();
|
Faction myFaction = me.getFaction();
|
||||||
Rel rel = myFaction.getRelationTo(otherFaction);
|
Rel rel = myFaction.getRelationTo(otherFaction);
|
||||||
|
|
||||||
|
@ -56,7 +56,9 @@ public enum FactionFlag
|
|||||||
*/
|
*/
|
||||||
public boolean getDefault()
|
public boolean getDefault()
|
||||||
{
|
{
|
||||||
return Conf.factionFlagDefaults.get(this);
|
Boolean ret = Conf.factionFlagDefaults.get(this);
|
||||||
|
if (ret == null) return this.defaultDefaultValue;
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -66,7 +68,9 @@ public enum FactionFlag
|
|||||||
*/
|
*/
|
||||||
public boolean isChangeable()
|
public boolean isChangeable()
|
||||||
{
|
{
|
||||||
return Conf.factionFlagIsChangeable.get(this);
|
Boolean ret = Conf.factionFlagIsChangeable.get(this);
|
||||||
|
if (ret == null) return this.defaultDefaultChangeable;
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static FactionFlag parse(String str)
|
public static FactionFlag parse(String str)
|
||||||
|
@ -6,8 +6,6 @@ import com.massivecraft.factions.P;
|
|||||||
|
|
||||||
public enum Permission
|
public enum Permission
|
||||||
{
|
{
|
||||||
MANAGE_SAFE_ZONE("managesafezone"),
|
|
||||||
MANAGE_WAR_ZONE("managewarzone"),
|
|
||||||
OWNERSHIP_BYPASS("ownershipbypass"),
|
OWNERSHIP_BYPASS("ownershipbypass"),
|
||||||
LEADER("leader"),
|
LEADER("leader"),
|
||||||
AUTOCLAIM("autoclaim"),
|
AUTOCLAIM("autoclaim"),
|
||||||
|
@ -87,6 +87,8 @@ public enum Rel
|
|||||||
return Conf.colorAlly;
|
return Conf.colorAlly;
|
||||||
else if (this == NEUTRAL)
|
else if (this == NEUTRAL)
|
||||||
return Conf.colorNeutral;
|
return Conf.colorNeutral;
|
||||||
|
else if (this == TRUCE)
|
||||||
|
return Conf.colorTruce;
|
||||||
else
|
else
|
||||||
return Conf.colorEnemy;
|
return Conf.colorEnemy;
|
||||||
}
|
}
|
||||||
@ -107,6 +109,7 @@ public enum Rel
|
|||||||
}
|
}
|
||||||
|
|
||||||
// TODO: ADD TRUCE!!!!
|
// TODO: ADD TRUCE!!!!
|
||||||
|
// TODO.... or remove it...
|
||||||
public double getRelationCost()
|
public double getRelationCost()
|
||||||
{
|
{
|
||||||
if (this == ENEMY)
|
if (this == ENEMY)
|
||||||
@ -129,6 +132,8 @@ public enum Rel
|
|||||||
return Conf.territoryEnemyDenyBuild;
|
return Conf.territoryEnemyDenyBuild;
|
||||||
else if (this == ALLY)
|
else if (this == ALLY)
|
||||||
return Conf.territoryAllyDenyBuild;
|
return Conf.territoryAllyDenyBuild;
|
||||||
|
else if (this == TRUCE)
|
||||||
|
return Conf.territoryTruceDenyBuild;
|
||||||
else
|
else
|
||||||
return Conf.territoryDenyBuild;
|
return Conf.territoryDenyBuild;
|
||||||
}
|
}
|
||||||
@ -138,6 +143,8 @@ public enum Rel
|
|||||||
return Conf.territoryEnemyDenyBuildWhenOffline;
|
return Conf.territoryEnemyDenyBuildWhenOffline;
|
||||||
else if (this == ALLY)
|
else if (this == ALLY)
|
||||||
return Conf.territoryAllyDenyBuildWhenOffline;
|
return Conf.territoryAllyDenyBuildWhenOffline;
|
||||||
|
else if (this == TRUCE)
|
||||||
|
return Conf.territoryTruceDenyBuildWhenOffline;
|
||||||
else
|
else
|
||||||
return Conf.territoryDenyBuildWhenOffline;
|
return Conf.territoryDenyBuildWhenOffline;
|
||||||
}
|
}
|
||||||
@ -155,6 +162,8 @@ public enum Rel
|
|||||||
return Conf.territoryEnemyPainBuild;
|
return Conf.territoryEnemyPainBuild;
|
||||||
else if (this == ALLY)
|
else if (this == ALLY)
|
||||||
return Conf.territoryAllyPainBuild;
|
return Conf.territoryAllyPainBuild;
|
||||||
|
else if (this == TRUCE)
|
||||||
|
return Conf.territoryTrucePainBuild;
|
||||||
else
|
else
|
||||||
return Conf.territoryPainBuild;
|
return Conf.territoryPainBuild;
|
||||||
}
|
}
|
||||||
@ -164,6 +173,8 @@ public enum Rel
|
|||||||
return Conf.territoryEnemyPainBuildWhenOffline;
|
return Conf.territoryEnemyPainBuildWhenOffline;
|
||||||
else if (this == ALLY)
|
else if (this == ALLY)
|
||||||
return Conf.territoryAllyPainBuildWhenOffline;
|
return Conf.territoryAllyPainBuildWhenOffline;
|
||||||
|
else if (this == TRUCE)
|
||||||
|
return Conf.territoryTrucePainBuildWhenOffline;
|
||||||
else
|
else
|
||||||
return Conf.territoryPainBuildWhenOffline;
|
return Conf.territoryPainBuildWhenOffline;
|
||||||
}
|
}
|
||||||
@ -178,6 +189,8 @@ public enum Rel
|
|||||||
return Conf.territoryEnemyDenyUseage;
|
return Conf.territoryEnemyDenyUseage;
|
||||||
else if (this == ALLY)
|
else if (this == ALLY)
|
||||||
return Conf.territoryAllyDenyUseage;
|
return Conf.territoryAllyDenyUseage;
|
||||||
|
else if (this == TRUCE)
|
||||||
|
return Conf.territoryTruceDenyUseage;
|
||||||
else
|
else
|
||||||
return Conf.territoryDenyUseage;
|
return Conf.territoryDenyUseage;
|
||||||
}
|
}
|
||||||
|
@ -2,10 +2,10 @@ package com.massivecraft.factions.util;
|
|||||||
|
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
|
|
||||||
import com.massivecraft.factions.Conf;
|
|
||||||
import com.massivecraft.factions.FPlayer;
|
import com.massivecraft.factions.FPlayer;
|
||||||
import com.massivecraft.factions.Faction;
|
import com.massivecraft.factions.Faction;
|
||||||
import com.massivecraft.factions.iface.RelationParticipator;
|
import com.massivecraft.factions.iface.RelationParticipator;
|
||||||
|
import com.massivecraft.factions.struct.FactionFlag;
|
||||||
import com.massivecraft.factions.struct.Rel;
|
import com.massivecraft.factions.struct.Rel;
|
||||||
import com.massivecraft.factions.zcore.util.TextUtil;
|
import com.massivecraft.factions.zcore.util.TextUtil;
|
||||||
|
|
||||||
@ -90,9 +90,9 @@ public class RelationUtil
|
|||||||
return Rel.MEMBER;
|
return Rel.MEMBER;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!ignorePeaceful && (fme.isPeaceful() || fthat.isPeaceful()))
|
if (!ignorePeaceful && (fme.getFlag(FactionFlag.PEACEFUL) || fthat.getFlag(FactionFlag.PEACEFUL)))
|
||||||
{
|
{
|
||||||
return Rel.NEUTRAL;
|
return Rel.TRUCE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (fme.getRelationWish(fthat).value >= fthat.getRelationWish(fme).value)
|
if (fme.getRelationWish(fthat).value >= fthat.getRelationWish(fme).value)
|
||||||
@ -121,8 +121,9 @@ public class RelationUtil
|
|||||||
|
|
||||||
public static ChatColor getColorOfThatToMe(RelationParticipator that, RelationParticipator me)
|
public static ChatColor getColorOfThatToMe(RelationParticipator that, RelationParticipator me)
|
||||||
{
|
{
|
||||||
Faction thatFaction = getFaction(that);
|
//Faction thatFaction = getFaction(that);
|
||||||
if (thatFaction != null)
|
// TODO: Add special colors to zone as a feature to replace this one
|
||||||
|
/*if (thatFaction != null)
|
||||||
{
|
{
|
||||||
if (thatFaction.isPeaceful() && thatFaction != getFaction(me))
|
if (thatFaction.isPeaceful() && thatFaction != getFaction(me))
|
||||||
{
|
{
|
||||||
@ -138,7 +139,7 @@ public class RelationUtil
|
|||||||
{
|
{
|
||||||
return Conf.colorWar;
|
return Conf.colorWar;
|
||||||
}
|
}
|
||||||
}
|
}*/
|
||||||
|
|
||||||
return getRelationTo(that, me).getColor();
|
return getRelationTo(that, me).getColor();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user