Class CivilWarManager

java.lang.Object
net.chen.legacyLand.war.civilwar.CivilWarManager

public class CivilWarManager extends Object
内战管理器 - 负责独立投票、首都占领计时、胜负处理
  • Method Details

    • getInstance

      public static CivilWarManager getInstance()
    • calculateDissatisfaction

      public int calculateDissatisfaction(com.palmergames.bukkit.towny.object.Nation nation, com.palmergames.bukkit.towny.object.Town town)
      计算某国家对某城镇的不满值 压迫性法令各贡献 20 分;国家正在进行对外战争贡献 30 分
    • getDissatisfactionLabel

      public String getDissatisfactionLabel(int score)
      获取不满值描述
    • canDeclare

      public boolean canDeclare(org.bukkit.entity.Player player, com.palmergames.bukkit.towny.object.Town town, StringBuilder reason)
      检查是否满足发起独立投票的条件
    • startVote

      public boolean startVote(org.bukkit.entity.Player mayor, com.palmergames.bukkit.towny.object.Town town, String newNationName)
      发起独立投票
    • submitVote

      public void submitVote(org.bukkit.entity.Player player, boolean support)
      居民投票
    • processExpiredVotes

      public void processExpiredVotes()
      检查并处理所有过期投票(由定时器调用)
    • getVoteForPlayer

      public CivilWarVote getVoteForPlayer(org.bukkit.entity.Player player)
      获取玩家所在城镇的当前投票(如果有)
    • tickCapitalOccupation

      public void tickCapitalOccupation()
      检测所有进行中内战的首都占领情况(由定时器每分钟调用)
    • getOccupationMinutes

      public int getOccupationMinutes(String warName)
    • processRebelVictory

      public void processRebelVictory(War war)
      叛军胜:旧首都全部属性移交新首都(叛军城镇),国家首都变更
    • processSuppressionVictory

      public void processSuppressionVictory(War war)
      镇压胜:叛军城镇被踢出国家,丧失一切国家权益
    • getActiveCivilWars

      public Collection<War> getActiveCivilWars()
    • getActiveVotes

      public Map<String, CivilWarVote> getActiveVotes()