2011-07-18 22:06:02 +02:00
|
|
|
package com.massivecraft.factions;
|
2011-02-06 13:36:11 +01:00
|
|
|
|
2018-12-09 03:13:18 +01:00
|
|
|
import com.massivecraft.factions.event.FactionDisbandEvent.PlayerDisbandReason;
|
2011-10-12 17:25:01 +02:00
|
|
|
import com.massivecraft.factions.iface.EconomyParticipator;
|
|
|
|
import com.massivecraft.factions.iface.RelationParticipator;
|
2019-08-07 20:35:19 +02:00
|
|
|
import com.massivecraft.factions.missions.Mission;
|
2018-03-01 05:23:37 +01:00
|
|
|
import com.massivecraft.factions.struct.BanInfo;
|
2011-07-18 22:06:02 +02:00
|
|
|
import com.massivecraft.factions.struct.Relation;
|
|
|
|
import com.massivecraft.factions.struct.Role;
|
2014-11-07 18:49:54 +01:00
|
|
|
import com.massivecraft.factions.util.LazyLocation;
|
2018-01-04 10:36:51 +01:00
|
|
|
import com.massivecraft.factions.zcore.fperms.Access;
|
2018-02-03 21:33:28 +01:00
|
|
|
import com.massivecraft.factions.zcore.fperms.Permissable;
|
2018-02-03 21:50:12 +01:00
|
|
|
import com.massivecraft.factions.zcore.fperms.PermissableAction;
|
2020-04-04 11:09:05 +02:00
|
|
|
import com.massivecraft.factions.zcore.frame.fupgrades.UpgradeType;
|
2014-04-04 20:55:21 +02:00
|
|
|
import org.bukkit.ChatColor;
|
|
|
|
import org.bukkit.Location;
|
|
|
|
import org.bukkit.entity.Player;
|
2018-03-26 23:43:15 +02:00
|
|
|
import org.bukkit.inventory.Inventory;
|
2018-05-12 00:47:58 +02:00
|
|
|
import org.bukkit.inventory.ItemStack;
|
2014-04-04 20:55:21 +02:00
|
|
|
|
|
|
|
import java.util.*;
|
2014-11-07 18:49:54 +01:00
|
|
|
import java.util.concurrent.ConcurrentHashMap;
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2014-10-19 07:37:25 +02:00
|
|
|
public interface Faction extends EconomyParticipator {
|
2019-05-19 22:09:00 +02:00
|
|
|
|
2019-09-29 10:39:30 +02:00
|
|
|
String getMemberRoleId();
|
|
|
|
|
|
|
|
void setMemberRoleId(String roleId);
|
|
|
|
|
|
|
|
String getGuildId();
|
|
|
|
|
|
|
|
void setGuildId(String id);
|
|
|
|
|
|
|
|
String getWallNotifyChannelId();
|
|
|
|
|
|
|
|
void setWallNotifyChannelId(String channelId);
|
|
|
|
|
|
|
|
String getBufferNotifyChannelId();
|
|
|
|
|
|
|
|
void setBufferNotifyChannelId(String channelId);
|
|
|
|
|
|
|
|
String getWeeWooChannelId();
|
|
|
|
|
|
|
|
void setWeeWooChannelId(String channelId);
|
|
|
|
|
|
|
|
String getNotifyFormat();
|
|
|
|
|
|
|
|
void setNotifyFormat(String format);
|
|
|
|
|
|
|
|
String getWeeWooFormat();
|
|
|
|
|
|
|
|
void setWeeWooFormat(String format);
|
|
|
|
|
|
|
|
String getFactionChatChannelId();
|
|
|
|
|
|
|
|
void setFactionChatChannelId(String channelId);
|
|
|
|
|
2019-09-21 19:02:51 +02:00
|
|
|
String getDiscord();
|
|
|
|
|
|
|
|
void setDiscord(String link);
|
|
|
|
|
2019-09-16 13:56:11 +02:00
|
|
|
void checkPerms();
|
|
|
|
|
2019-09-16 00:08:36 +02:00
|
|
|
double getReinforcedArmor();
|
|
|
|
|
|
|
|
void setReinforcedArmor(double percent);
|
|
|
|
|
2019-09-15 13:51:12 +02:00
|
|
|
int getWarpsLimit();
|
|
|
|
|
|
|
|
void setWarpsLimit(int limit);
|
|
|
|
|
|
|
|
int getTntBankLimit();
|
|
|
|
|
|
|
|
void setTntBankLimit(int limit);
|
2019-05-19 22:09:00 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
int getWallCheckMinutes();
|
2019-09-08 07:25:19 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setWallCheckMinutes(int minutes);
|
2019-09-08 07:25:19 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
int getBufferCheckMinutes();
|
2019-09-08 07:25:19 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setBufferCheckMinutes(int minutes);
|
2019-09-08 07:25:19 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Map<Long, String> getChecks();
|
2019-09-08 07:25:19 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Map<UUID, Integer> getPlayerBufferCheckCount();
|
2019-09-08 07:25:19 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Map<UUID, Integer> getPlayerWallCheckCount();
|
2019-09-08 07:25:19 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean isWeeWoo();
|
2019-09-08 07:25:19 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setWeeWoo(boolean weeWoo);
|
2019-07-11 07:08:35 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean altInvited(FPlayer fplayer);
|
2019-07-11 07:08:35 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Map<String, Mission> getMissions();
|
2019-05-19 22:09:00 +02:00
|
|
|
|
2019-09-21 16:35:08 +02:00
|
|
|
List<String> getCompletedMissions();
|
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void deinviteAlt(FPlayer alt);
|
2019-05-19 22:09:00 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void deinviteAllAlts();
|
2019-05-19 22:09:00 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void altInvite(FPlayer fplayer);
|
2019-05-19 22:09:00 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean addAltPlayer(FPlayer fplayer);
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean removeAltPlayer(FPlayer fplayer);
|
2014-11-07 18:49:54 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Set<FPlayer> getAltPlayers();
|
2014-11-07 18:49:54 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
HashMap<String, List<String>> getAnnouncements();
|
2014-11-07 18:49:54 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
ConcurrentHashMap<String, LazyLocation> getWarps();
|
2014-11-07 18:49:54 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
LazyLocation getWarp(String name);
|
2017-12-19 11:10:52 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setWarp(String name, LazyLocation loc);
|
2017-12-19 11:10:52 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean isWarp(String name);
|
2017-12-19 11:10:52 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean hasWarpPassword(String warp);
|
2014-11-07 18:49:54 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean isWarpPassword(String warp, String password);
|
2014-11-07 18:49:54 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setWarpPassword(String warp, String password);
|
2016-05-31 01:22:45 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean removeWarp(String name);
|
2016-05-31 01:22:45 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void clearWarps();
|
2014-08-05 17:17:27 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
int getMaxVaults();
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setMaxVaults(int value);
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void addAnnouncement(FPlayer fPlayer, String msg);
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void sendUnreadAnnouncements(FPlayer fPlayer);
|
2018-11-22 08:09:58 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void removeAnnouncements(FPlayer fPlayer);
|
2018-11-22 08:09:58 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Set<String> getInvites();
|
2014-10-18 10:54:45 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
String getFocused();
|
2014-10-18 10:54:45 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setFocused(String setFocused);
|
2014-10-18 10:54:45 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
String getId();
|
2018-03-26 23:43:15 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setId(String id);
|
2018-03-26 23:43:15 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void invite(FPlayer fplayer);
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void deinvite(FPlayer fplayer);
|
2018-03-01 05:23:37 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setUpgrade(UpgradeType upgrade, int level);
|
2018-03-01 05:23:37 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
int getUpgrade(UpgradeType upgrade);
|
2019-07-01 05:22:28 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean isInvited(FPlayer fplayer);
|
2019-07-01 05:22:28 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void ban(FPlayer target, FPlayer banner);
|
2019-05-15 04:07:59 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
int getPoints();
|
2019-05-15 04:07:59 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setPoints(int points);
|
2018-03-01 05:23:37 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
int getStrikes();
|
2018-03-01 05:23:37 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setStrikes(int strikes);
|
2018-03-26 23:43:15 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void unban(FPlayer player);
|
2018-03-26 23:43:15 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean isBanned(FPlayer player);
|
2018-03-26 23:43:15 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Set<BanInfo> getBannedPlayers();
|
2018-03-26 23:43:15 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
HashMap<Integer, String> getRulesMap();
|
2018-03-26 23:43:15 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void addRule(String rule);
|
2018-03-26 23:43:15 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void removeRule(int index);
|
2018-03-26 23:43:15 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void clearRules();
|
2018-03-26 23:43:15 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Location getCheckpoint();
|
2018-03-26 23:43:15 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setCheckpoint(Location location);
|
2018-03-26 23:43:15 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void addTnt(int amt);
|
2018-03-26 23:43:15 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void takeTnt(int amt);
|
2018-03-26 23:43:15 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Location getVault();
|
2011-02-06 13:36:11 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setVault(Location vaultLocation);
|
2011-02-06 13:36:11 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Inventory getChestInventory();
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setChestSize(int chestSize);
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setBannerPattern(ItemStack banner);
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
ItemStack getBanner();
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
int getTnt();
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
String getRule(int index);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean getOpen();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setOpen(boolean isOpen);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean isPeaceful();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setPeaceful(boolean isPeaceful);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean getPeacefulExplosionsEnabled();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setPeacefulExplosionsEnabled(boolean val);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean noExplosionsInTerritory();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean isPermanent();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setPermanent(boolean isPermanent);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
String getTag();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setTag(String str);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
String getTag(String prefix);
|
2015-05-12 18:20:11 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
String getTag(Faction otherFaction);
|
2015-05-12 18:20:11 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
String getTag(FPlayer otherFplayer);
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
String getComparisonTag();
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
String getDescription();
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setDescription(String value);
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean hasHome();
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Location getHome();
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setHome(Location home);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2020-03-25 05:56:39 +01:00
|
|
|
void deleteHome();
|
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
long getFoundedDate();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setFoundedDate(long newDate);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void confirmValidHome();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
String getAccountId();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Integer getPermanentPower();
|
2018-05-12 00:47:58 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setPermanentPower(Integer permanentPower);
|
2018-05-12 00:47:58 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean hasPermanentPower();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
double getPowerBoost();
|
2018-05-12 00:47:58 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setPowerBoost(double powerBoost);
|
2015-09-08 18:39:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean noPvPInTerritory();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean noMonstersInTerritory();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean isNormal();
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean isSystemFaction();
|
2015-01-28 17:13:23 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
@Deprecated
|
|
|
|
boolean isNone();
|
2015-01-28 17:13:23 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean isWilderness();
|
2015-08-06 23:53:00 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean isSafeZone();
|
2015-08-06 23:53:00 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean isWarZone();
|
2018-01-04 10:36:51 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean isPlayerFreeType();
|
2018-02-03 21:33:28 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean isPowerFrozen();
|
2018-01-04 10:36:51 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setLastDeath(long time);
|
2018-01-04 10:36:51 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
int getKills();
|
2018-02-06 04:46:53 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
int getDeaths();
|
2019-02-11 05:57:45 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Access getAccess(Permissable permissable, PermissableAction permissableAction);
|
2018-07-20 18:42:47 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Access getAccess(FPlayer player, PermissableAction permissableAction);
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean setPermission(Permissable permissable, PermissableAction permissableAction, Access access);
|
2018-05-12 00:47:58 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void resetPerms();
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setDefaultPerms();
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void disband(Player disbander);
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void disband(Player disbander, PlayerDisbandReason reason);
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
// -------------------------------
|
|
|
|
// Relation and relation colors
|
|
|
|
// -------------------------------
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Map<Permissable, Map<PermissableAction, Access>> getPermissions();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
@Override
|
|
|
|
String describeTo(RelationParticipator that, boolean ucfirst);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
@Override
|
|
|
|
String describeTo(RelationParticipator that);
|
2015-01-27 16:33:47 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
@Override
|
|
|
|
Relation getRelationTo(RelationParticipator rp);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
@Override
|
|
|
|
Relation getRelationTo(RelationParticipator rp, boolean ignorePeaceful);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
@Override
|
|
|
|
ChatColor getColorTo(RelationParticipator rp);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Relation getRelationWish(Faction otherFaction);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setRelationWish(Faction otherFaction, Relation relation);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
int getRelationCount(Relation relation);
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
// ----------------------------------------------//
|
|
|
|
// Power
|
|
|
|
// ----------------------------------------------//
|
|
|
|
double getPower();
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
double getPowerMax();
|
2018-05-12 00:47:58 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
int getPowerRounded();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
int getPowerMaxRounded();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
int getLandRounded();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
int getLandRoundedInWorld(String worldName);
|
2015-01-03 01:33:34 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
// -------------------------------
|
|
|
|
// FPlayers
|
|
|
|
// -------------------------------
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean hasLandInflation();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
// maintain the reference list of FPlayers in this faction
|
|
|
|
void refreshFPlayers();
|
2018-03-05 02:40:36 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean addFPlayer(FPlayer fplayer);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean removeFPlayer(FPlayer fplayer);
|
2018-12-24 01:20:54 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
int getSize();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Set<FPlayer> getFPlayers();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Set<FPlayer> getFPlayersWhereOnline(boolean online);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Set<FPlayer> getFPlayersWhereOnline(boolean online, FPlayer viewer);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
FPlayer getFPlayerAdmin();
|
2019-02-11 05:57:45 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
FPlayer getFPlayerLeader();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
ArrayList<FPlayer> getFPlayersWhereRole(Role role);
|
2018-01-05 02:37:21 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
ArrayList<Player> getOnlinePlayers();
|
2018-01-05 02:37:21 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
// slightly faster check than getOnlinePlayers() if you just want to see if
|
|
|
|
// there are any players online
|
|
|
|
boolean hasPlayersOnline();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void memberLoggedOff();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
// used when current leader is about to be removed from the faction;
|
|
|
|
// promotes new leader, or disbands faction if no other members left
|
|
|
|
void promoteNewLeader();
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void promoteNewLeader(boolean autoLeave);
|
2018-05-12 00:47:58 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Role getDefaultRole();
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setDefaultRole(Role role);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
// ----------------------------------------------//
|
|
|
|
// Messages
|
|
|
|
// ----------------------------------------------//
|
|
|
|
void msg(String message, Object... args);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void sendMessage(String message);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
// ----------------------------------------------//
|
|
|
|
// Ownership of specific claims
|
|
|
|
// ----------------------------------------------//
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void sendMessage(List<String> messages);
|
2014-04-04 20:55:21 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Map<FLocation, Set<String>> getClaimOwnership();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void clearAllClaimOwnership();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void clearClaimOwnership(FLocation loc);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void clearClaimOwnership(FPlayer player);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
int getCountOfClaimsWithOwners();
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean doesLocationHaveOwnersSet(FLocation loc);
|
2014-10-19 07:37:25 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean isPlayerInOwnerList(FPlayer player, FLocation loc);
|
2015-04-26 07:02:30 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void setPlayerAsOwner(FPlayer player, FLocation loc);
|
2018-09-21 08:29:28 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void removePlayerAsOwner(FPlayer player, FLocation loc);
|
2018-09-21 08:29:28 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Set<String> getOwnerList(FLocation loc);
|
2019-03-03 04:51:21 +01:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
String getOwnerListString(FLocation loc);
|
2019-08-24 19:18:50 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
boolean playerHasOwnershipRights(FPlayer fplayer, FLocation loc);
|
2019-08-24 19:18:50 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
// ----------------------------------------------//
|
|
|
|
// Persistance and entity management
|
|
|
|
// ----------------------------------------------//
|
|
|
|
void remove();
|
2019-08-24 19:18:50 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
Set<FLocation> getAllClaims();
|
2019-08-24 19:18:50 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
String getPaypal();
|
2019-08-24 19:18:50 +02:00
|
|
|
|
2019-09-15 11:19:06 +02:00
|
|
|
void paypalSet(String paypal);
|
2019-11-24 04:33:49 +01:00
|
|
|
|
2020-01-05 00:29:49 +01:00
|
|
|
// -------------------------------
|
|
|
|
// Shields
|
|
|
|
// -------------------------------
|
2011-02-06 13:36:11 +01:00
|
|
|
}
|