Starting to clean up FPlayer
This commit is contained in:
		
							parent
							
								
									6ad243c014
								
							
						
					
					
						commit
						f4d799e978
					
				@ -41,10 +41,11 @@ public class FPlayer extends SenderEntity<FPlayer> implements EconomyParticipato
 | 
				
			|||||||
	public FPlayer load(FPlayer that)
 | 
						public FPlayer load(FPlayer that)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		this.setFactionId(that.factionId);
 | 
							this.setFactionId(that.factionId);
 | 
				
			||||||
		this.role = that.role;
 | 
							this.setRole(that.role);
 | 
				
			||||||
		this.title = that.title;
 | 
							this.setTitle(that.title);
 | 
				
			||||||
 | 
							this.setPowerBoost(that.powerBoost);
 | 
				
			||||||
 | 
							
 | 
				
			||||||
		this.power = that.power;
 | 
							this.power = that.power;
 | 
				
			||||||
		this.powerBoost = that.powerBoost;
 | 
					 | 
				
			||||||
		this.lastPowerUpdateTime = that.lastPowerUpdateTime;
 | 
							this.lastPowerUpdateTime = that.lastPowerUpdateTime;
 | 
				
			||||||
		this.lastLoginTime = that.lastLoginTime;
 | 
							this.lastLoginTime = that.lastLoginTime;
 | 
				
			||||||
		
 | 
							
 | 
				
			||||||
@ -55,27 +56,144 @@ public class FPlayer extends SenderEntity<FPlayer> implements EconomyParticipato
 | 
				
			|||||||
	public boolean isDefault()
 | 
						public boolean isDefault()
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		if (this.hasFaction()) return false;
 | 
							if (this.hasFaction()) return false;
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
							// Note: we do not check role or title here since they mean nothing without a faction.
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
							// TODO: This line looks obnoxious, investigate it.
 | 
				
			||||||
		if (this.getPowerRounded() != this.getPowerMaxRounded() && this.getPowerRounded() != (int) Math.round(ConfServer.powerPlayerStarting)) return false;
 | 
							if (this.getPowerRounded() != this.getPowerMaxRounded() && this.getPowerRounded() != (int) Math.round(ConfServer.powerPlayerStarting)) return false;
 | 
				
			||||||
		
 | 
							
 | 
				
			||||||
 | 
							if (this.hasPowerBoost()) return false;
 | 
				
			||||||
 | 
							
 | 
				
			||||||
		return true;
 | 
							return true;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	// -------------------------------------------- //
 | 
						// -------------------------------------------- //
 | 
				
			||||||
	// FIELDS: RAW PERMANENT
 | 
						// FIELDS: RAW
 | 
				
			||||||
	// -------------------------------------------- //
 | 
						// -------------------------------------------- //
 | 
				
			||||||
 | 
						// In this section of the source code we place the field declarations only.
 | 
				
			||||||
 | 
						// Each field has it's own section further down since just the getter and setter logic takes up quite some place.
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	// FIELD: factionId
 | 
						// This is a foreign key.
 | 
				
			||||||
	// TODO: Ensure this one always is null in the nofaction case and never actually the ID of the nofaction-faction.
 | 
						// A players always belongs to a faction.
 | 
				
			||||||
	// TODO: The getFactionId should however NEVER return null!
 | 
						// If null the player belongs to the no-faction faction called Wilderness.
 | 
				
			||||||
	
 | 
					 | 
				
			||||||
	private String factionId = null;
 | 
						private String factionId = null;
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	// The get methods never return null.
 | 
						// What role does the player have in the faction?
 | 
				
			||||||
 | 
						// The default value here is MEMBER since that one would be one of the most common ones and our goal is to save database space.
 | 
				
			||||||
 | 
						// A note to self is that we can not change it from member to anything else just because we feel like it, that would corrupt database content.
 | 
				
			||||||
 | 
						private Rel role = null;
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						// What title does the player have in the faction?
 | 
				
			||||||
 | 
						// The title is just for fun. It's completely meaningless.
 | 
				
			||||||
 | 
						// The default case is no title since it's what you start with and also the most common case.
 | 
				
			||||||
 | 
						// The player title is similar to the faction description.
 | 
				
			||||||
 | 
						// 
 | 
				
			||||||
 | 
						// Question: Can the title contain chat colors?
 | 
				
			||||||
 | 
						// Answer: Yes but in such case the policy is that they already must be parsed using Txt.parse.
 | 
				
			||||||
 | 
						//          If they contain markup it should not be parsed in case we coded the system correctly.
 | 
				
			||||||
 | 
						private String title = null;
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						// Player usually do not have a powerboost. It defaults to 0.
 | 
				
			||||||
 | 
						// The powerBoost is a custom increase/decrease to default and maximum power.
 | 
				
			||||||
 | 
						// Note that player powerBoost and faction powerBoost are very similar.
 | 
				
			||||||
 | 
						private Double powerBoost = null;
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						// TODO
 | 
				
			||||||
 | 
						// FIELD: power
 | 
				
			||||||
 | 
						private double power;
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						// TODO
 | 
				
			||||||
 | 
						// FIELD: lastPowerUpdateTime
 | 
				
			||||||
 | 
						private long lastPowerUpdateTime;
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						// TODO
 | 
				
			||||||
 | 
						// FIELD: lastLoginTime
 | 
				
			||||||
 | 
						private long lastLoginTime;
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						// -------------------------------------------- //
 | 
				
			||||||
 | 
						// FIELDS: RAW TRANSIENT
 | 
				
			||||||
 | 
						// -------------------------------------------- //
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						// Where did this player stand the last time we checked?
 | 
				
			||||||
 | 
						private transient PS currentChunk = null; 
 | 
				
			||||||
 | 
						public PS getCurrentChunk() { return this.currentChunk; }
 | 
				
			||||||
 | 
						public void setCurrentChunk(PS currentChunk) { this.currentChunk = currentChunk.getChunk(true); }
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						// FIELD: mapAutoUpdating
 | 
				
			||||||
 | 
						private transient boolean mapAutoUpdating = false;
 | 
				
			||||||
 | 
						public void setMapAutoUpdating(boolean mapAutoUpdating) { this.mapAutoUpdating = mapAutoUpdating; }
 | 
				
			||||||
 | 
						public boolean isMapAutoUpdating() { return mapAutoUpdating; }
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						// FIELD: autoClaimEnabled
 | 
				
			||||||
 | 
						private transient Faction autoClaimFor = null;
 | 
				
			||||||
 | 
						public Faction getAutoClaimFor() { return autoClaimFor; }
 | 
				
			||||||
 | 
						public void setAutoClaimFor(Faction faction) { this.autoClaimFor = faction; }
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
						private transient boolean usingAdminMode = false;
 | 
				
			||||||
 | 
						public boolean isUsingAdminMode() { return this.usingAdminMode; }
 | 
				
			||||||
 | 
						public void setUsingAdminMode(boolean val) { this.usingAdminMode = val; }
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						// FIELD: loginPvpDisabled
 | 
				
			||||||
 | 
						private transient boolean loginPvpDisabled;
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						// FIELD: account
 | 
				
			||||||
 | 
						public String getAccountId() { return this.getId(); }
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						// -------------------------------------------- //
 | 
				
			||||||
 | 
						// CONSTRUCT
 | 
				
			||||||
 | 
						// -------------------------------------------- //
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						// GSON need this noarg constructor.
 | 
				
			||||||
 | 
						public FPlayer()
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this.resetFactionData(false);
 | 
				
			||||||
 | 
							this.power = ConfServer.powerPlayerStarting;
 | 
				
			||||||
 | 
							this.lastPowerUpdateTime = System.currentTimeMillis();
 | 
				
			||||||
 | 
							this.lastLoginTime = System.currentTimeMillis();
 | 
				
			||||||
 | 
							this.loginPvpDisabled = (ConfServer.noPVPDamageToOthersForXSecondsAfterLogin > 0) ? true : false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							if ( ! ConfServer.newPlayerStartingFactionID.equals(Const.FACTIONID_NONE) && FactionColl.get().containsId(ConfServer.newPlayerStartingFactionID))
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								this.factionId = ConfServer.newPlayerStartingFactionID;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						public final void resetFactionData(boolean doSpoutUpdate)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							// TODO: Should we not rather use ConfServer.newPlayerStartingFactionID here?
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
							// The default neutral faction
 | 
				
			||||||
 | 
							this.setFactionId(null); 
 | 
				
			||||||
 | 
							this.setRole(null);
 | 
				
			||||||
 | 
							this.setTitle(null);
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
							this.autoClaimFor = null;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							if (doSpoutUpdate)
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								SpoutFeatures.updateTitle(this, null);
 | 
				
			||||||
 | 
								SpoutFeatures.updateTitle(null, this);
 | 
				
			||||||
 | 
								SpoutFeatures.updateCape(this.getPlayer(), null);
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						public void resetFactionData()
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this.resetFactionData(true);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						// -------------------------------------------- //
 | 
				
			||||||
 | 
						// FIELD: factionId
 | 
				
			||||||
 | 
						// -------------------------------------------- //
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						// This method never returns null
 | 
				
			||||||
	public String getFactionId()
 | 
						public String getFactionId()
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		if (this.factionId == null) return Const.FACTIONID_NONE;
 | 
							if (this.factionId == null) return Const.FACTIONID_NONE;
 | 
				
			||||||
		return this.factionId;
 | 
							return this.factionId;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						// This method never returns null
 | 
				
			||||||
	public Faction getFaction()
 | 
						public Faction getFaction()
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		Faction ret = FactionColl.get().get(this.getFactionId());
 | 
							Faction ret = FactionColl.get().get(this.getFactionId());
 | 
				
			||||||
@ -83,14 +201,11 @@ public class FPlayer extends SenderEntity<FPlayer> implements EconomyParticipato
 | 
				
			|||||||
		return ret;
 | 
							return ret;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	// TODO: When is this one used?
 | 
					 | 
				
			||||||
	public boolean hasFaction()
 | 
						public boolean hasFaction()
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		// TODO: Broken logic
 | 
					 | 
				
			||||||
		return !this.getFactionId().equals(Const.FACTIONID_NONE);
 | 
							return !this.getFactionId().equals(Const.FACTIONID_NONE);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	
 | 
					 | 
				
			||||||
	// This setter is so long because it search for default/null case and takes care of updating the faction member index 
 | 
						// This setter is so long because it search for default/null case and takes care of updating the faction member index 
 | 
				
			||||||
	public void setFactionId(String factionId)
 | 
						public void setFactionId(String factionId)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
@ -137,103 +252,83 @@ public class FPlayer extends SenderEntity<FPlayer> implements EconomyParticipato
 | 
				
			|||||||
		this.setFactionId(faction.getId());
 | 
							this.setFactionId(faction.getId());
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	
 | 
						// -------------------------------------------- //
 | 
				
			||||||
	// FIELD: role
 | 
						// FIELD: role
 | 
				
			||||||
	private Rel role;
 | 
						// -------------------------------------------- //
 | 
				
			||||||
	public Rel getRole() { return this.role; }
 | 
					 | 
				
			||||||
	public void setRole(Rel role) { this.role = role; SpoutFeatures.updateTitle(this, null); }
 | 
					 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
 | 
						public Rel getRole()
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							if (this.role == null) return Rel.MEMBER;
 | 
				
			||||||
 | 
							return this.role;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						public void setRole(Rel role)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							if (role == null || role == Rel.MEMBER)
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								this.role = null;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							else
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								this.role = role;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							SpoutFeatures.updateTitle(this, null);
 | 
				
			||||||
 | 
							this.changed();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						// -------------------------------------------- //
 | 
				
			||||||
	// FIELD: title
 | 
						// FIELD: title
 | 
				
			||||||
	private String title;
 | 
						// -------------------------------------------- //
 | 
				
			||||||
	public String getTitle() { return this.title; }
 | 
					 | 
				
			||||||
	public void setTitle(String title) { this.title = title; }
 | 
					 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	// FIELD: power
 | 
						public boolean hasTitle()
 | 
				
			||||||
	private double power;
 | 
						{
 | 
				
			||||||
 | 
							return this.title != null;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
 | 
						public String getTitle()
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							if (this.hasTitle()) return this.title;
 | 
				
			||||||
 | 
							return Lang.PLAYER_NOTITLE;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						public void setTitle(String title)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							if (title != null)
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								title = title.trim();
 | 
				
			||||||
 | 
								if (title.length() == 0)
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									title = null;
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							this.title = title;
 | 
				
			||||||
 | 
							this.changed();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						// -------------------------------------------- //
 | 
				
			||||||
	// FIELD: powerBoost
 | 
						// FIELD: powerBoost
 | 
				
			||||||
	// special increase/decrease to min and max power for this player
 | 
					 | 
				
			||||||
	private double powerBoost;
 | 
					 | 
				
			||||||
	public double getPowerBoost() { return this.powerBoost; }
 | 
					 | 
				
			||||||
	public void setPowerBoost(double powerBoost) { this.powerBoost = powerBoost; }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	// FIELD: lastPowerUpdateTime
 | 
					 | 
				
			||||||
	private long lastPowerUpdateTime;
 | 
					 | 
				
			||||||
	
 | 
					 | 
				
			||||||
	// FIELD: lastLoginTime
 | 
					 | 
				
			||||||
	private long lastLoginTime;
 | 
					 | 
				
			||||||
	
 | 
					 | 
				
			||||||
	// -------------------------------------------- //
 | 
					 | 
				
			||||||
	// FIELDS: RAW TRANSIENT
 | 
					 | 
				
			||||||
	// -------------------------------------------- //
 | 
						// -------------------------------------------- //
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	// Where did this player stand the last time we checked?
 | 
						public double getPowerBoost()
 | 
				
			||||||
	private transient PS currentChunk = null; 
 | 
					 | 
				
			||||||
	public PS getCurrentChunk() { return this.currentChunk; }
 | 
					 | 
				
			||||||
	public void setCurrentChunk(PS currentChunk) { this.currentChunk = currentChunk.getChunk(true); }
 | 
					 | 
				
			||||||
	
 | 
					 | 
				
			||||||
	// FIELD: mapAutoUpdating
 | 
					 | 
				
			||||||
	private transient boolean mapAutoUpdating;
 | 
					 | 
				
			||||||
	public void setMapAutoUpdating(boolean mapAutoUpdating) { this.mapAutoUpdating = mapAutoUpdating; }
 | 
					 | 
				
			||||||
	public boolean isMapAutoUpdating() { return mapAutoUpdating; }
 | 
					 | 
				
			||||||
	
 | 
					 | 
				
			||||||
	// FIELD: autoClaimEnabled
 | 
					 | 
				
			||||||
	private transient Faction autoClaimFor;
 | 
					 | 
				
			||||||
	public Faction getAutoClaimFor() { return autoClaimFor; }
 | 
					 | 
				
			||||||
	public void setAutoClaimFor(Faction faction) { this.autoClaimFor = faction; }
 | 
					 | 
				
			||||||
		
 | 
					 | 
				
			||||||
	private transient boolean usingAdminMode = false;
 | 
					 | 
				
			||||||
	public boolean isUsingAdminMode() { return this.usingAdminMode; }
 | 
					 | 
				
			||||||
	public void setUsingAdminMode(boolean val) { this.usingAdminMode = val; }
 | 
					 | 
				
			||||||
	
 | 
					 | 
				
			||||||
	// FIELD: loginPvpDisabled
 | 
					 | 
				
			||||||
	private transient boolean loginPvpDisabled;
 | 
					 | 
				
			||||||
	
 | 
					 | 
				
			||||||
	// FIELD: account
 | 
					 | 
				
			||||||
	public String getAccountId() { return this.getId(); }
 | 
					 | 
				
			||||||
	
 | 
					 | 
				
			||||||
	// -------------------------------------------- //
 | 
					 | 
				
			||||||
	// CONSTRUCT
 | 
					 | 
				
			||||||
	// -------------------------------------------- //
 | 
					 | 
				
			||||||
	
 | 
					 | 
				
			||||||
	// GSON need this noarg constructor.
 | 
					 | 
				
			||||||
	public FPlayer()
 | 
					 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		this.resetFactionData(false);
 | 
							Double ret = this.powerBoost;
 | 
				
			||||||
		this.power = ConfServer.powerPlayerStarting;
 | 
							if (ret == null) ret = 0D;
 | 
				
			||||||
		this.lastPowerUpdateTime = System.currentTimeMillis();
 | 
							return ret;
 | 
				
			||||||
		this.lastLoginTime = System.currentTimeMillis();
 | 
					 | 
				
			||||||
		this.mapAutoUpdating = false;
 | 
					 | 
				
			||||||
		this.autoClaimFor = null;
 | 
					 | 
				
			||||||
		this.loginPvpDisabled = (ConfServer.noPVPDamageToOthersForXSecondsAfterLogin > 0) ? true : false;
 | 
					 | 
				
			||||||
		this.powerBoost = 0.0;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		if ( ! ConfServer.newPlayerStartingFactionID.equals(Const.FACTIONID_NONE) && FactionColl.get().containsId(ConfServer.newPlayerStartingFactionID))
 | 
					 | 
				
			||||||
		{
 | 
					 | 
				
			||||||
			this.factionId = ConfServer.newPlayerStartingFactionID;
 | 
					 | 
				
			||||||
		}
 | 
					 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	public final void resetFactionData(boolean doSpoutUpdate)
 | 
						public void setPowerBoost(Double powerBoost)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		// TODO: Should we not rather use ConfServer.newPlayerStartingFactionID here?
 | 
							if (powerBoost == null || powerBoost == 0)
 | 
				
			||||||
		this.factionId = Const.FACTIONID_NONE; // The default neutral faction
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		this.role = Rel.MEMBER;
 | 
					 | 
				
			||||||
		this.title = "";
 | 
					 | 
				
			||||||
		this.autoClaimFor = null;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		if (doSpoutUpdate)
 | 
					 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			SpoutFeatures.updateTitle(this, null);
 | 
								powerBoost = null;
 | 
				
			||||||
			SpoutFeatures.updateTitle(null, this);
 | 
					 | 
				
			||||||
			SpoutFeatures.updateCape(this.getPlayer(), null);
 | 
					 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
							this.powerBoost = powerBoost;
 | 
				
			||||||
 | 
							this.changed();
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	public void resetFactionData()
 | 
						public boolean hasPowerBoost()
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		this.resetFactionData(true);
 | 
							return this.getPowerBoost() != 0D;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	// -------------------------------------------- //
 | 
						// -------------------------------------------- //
 | 
				
			||||||
@ -293,7 +388,8 @@ public class FPlayer extends SenderEntity<FPlayer> implements EconomyParticipato
 | 
				
			|||||||
	public String getNameAndSomething(String something)
 | 
						public String getNameAndSomething(String something)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		String ret = this.role.getPrefix();
 | 
							String ret = this.role.getPrefix();
 | 
				
			||||||
		if (something.length() > 0) {
 | 
							if (something.length() > 0)
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
			ret += something+" ";
 | 
								ret += something+" ";
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		ret += this.getName();
 | 
							ret += this.getName();
 | 
				
			||||||
@ -302,7 +398,14 @@ public class FPlayer extends SenderEntity<FPlayer> implements EconomyParticipato
 | 
				
			|||||||
	
 | 
						
 | 
				
			||||||
	public String getNameAndTitle()
 | 
						public String getNameAndTitle()
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		return this.getNameAndSomething(this.getTitle());
 | 
							if (this.hasTitle())
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								return this.getNameAndSomething(this.getTitle());
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							else
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								return this.getName();
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	public String getNameAndTag()
 | 
						public String getNameAndTag()
 | 
				
			||||||
 | 
				
			|||||||
@ -57,7 +57,7 @@ public class Faction extends Entity<Faction> implements EconomyParticipator
 | 
				
			|||||||
	// FIELDS: RAW
 | 
						// FIELDS: RAW
 | 
				
			||||||
	// -------------------------------------------- //
 | 
						// -------------------------------------------- //
 | 
				
			||||||
	// In this section of the source code we place the field declarations only.
 | 
						// In this section of the source code we place the field declarations only.
 | 
				
			||||||
	// Each field has it's own section further down since even the getter and setter logic takes up quite some place.
 | 
						// Each field has it's own section further down since just the getter and setter logic takes up quite some place.
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	// TODO: The faction "tag" could/should also have been called "name".
 | 
						// TODO: The faction "tag" could/should also have been called "name".
 | 
				
			||||||
	// The actual faction id looks something like "54947df8-0e9e-4471-a2f9-9af509fb5889" and that is not too easy to remember for humans.
 | 
						// The actual faction id looks something like "54947df8-0e9e-4471-a2f9-9af509fb5889" and that is not too easy to remember for humans.
 | 
				
			||||||
@ -274,6 +274,11 @@ public class Faction extends Entity<Faction> implements EconomyParticipator
 | 
				
			|||||||
		this.changed();
 | 
							this.changed();
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
 | 
						public boolean hasPowerBoost()
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return this.getPowerBoost() != 0D;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
	// -------------------------------------------- //
 | 
						// -------------------------------------------- //
 | 
				
			||||||
	// FIELD: cape
 | 
						// FIELD: cape
 | 
				
			||||||
	// -------------------------------------------- //
 | 
						// -------------------------------------------- //
 | 
				
			||||||
 | 
				
			|||||||
@ -5,4 +5,5 @@ import com.massivecraft.mcore.util.Txt;
 | 
				
			|||||||
public class Lang
 | 
					public class Lang
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	public static final String FACTION_NODESCRIPTION = Txt.parse("<em><silver>no description set");
 | 
						public static final String FACTION_NODESCRIPTION = Txt.parse("<em><silver>no description set");
 | 
				
			||||||
 | 
						public static final String PLAYER_NOTITLE = Txt.parse("<em><silver>no title set");
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -194,7 +194,7 @@ public class SpoutFeatures
 | 
				
			|||||||
				addTag += relationColor.toString() + fplayer.getRole().getPrefix() + faction.getTag();
 | 
									addTag += relationColor.toString() + fplayer.getRole().getPrefix() + faction.getTag();
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
				
 | 
									
 | 
				
			||||||
			if (ConfServer.spoutFactionTitlesOverNames && ! fplayer.getTitle().isEmpty())
 | 
								if (ConfServer.spoutFactionTitlesOverNames && fplayer.hasTitle())
 | 
				
			||||||
			{
 | 
								{
 | 
				
			||||||
				addTag += (addTag.isEmpty() ? "" : " ") + fplayer.getTitle();
 | 
									addTag += (addTag.isEmpty() ? "" : " ") + fplayer.getTitle();
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
 | 
				
			|||||||
@ -227,7 +227,10 @@ public class FactionsChatListener implements Listener
 | 
				
			|||||||
		}
 | 
							}
 | 
				
			||||||
		else if (tag.equals("title"))
 | 
							else if (tag.equals("title"))
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			ret = fpfrom.getTitle();
 | 
								if (fpfrom.hasTitle())
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									ret = fpfrom.getTitle();
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		else if (tag.equals("tag"))
 | 
							else if (tag.equals("tag"))
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user