Class MapleGuildAlliance

java.lang.Object
handling.world.guild.MapleGuildAlliance
All Implemented Interfaces:
Serializable

public class MapleGuildAlliance extends Object implements Serializable
公會聯盟的記憶體模型,管理最多五個成員公會及其聯盟排名與公告。

對應資料庫 alliances 資料表,儲存聯盟 ID、名稱、公告、容量、 聯盟會長 ID(leaderid)及最多五個成員公會 ID(guilds[])與排名頭銜(ranks[])。

  • loadAll() — 啟動時讀取所有聯盟並由 World.Alliance 快取。
  • createToDb — 建立新聯盟並寫入資料庫,回傳新聯盟 ID。
  • deleteAlliance — 解散聯盟並重設所有成員角色的 alliancerank
  • broadcast — 向聯盟內所有線上成員廣播封包, 以 World.Alliance.setOldAlliance(int, boolean, int) 處理解散與退出事件。
  • 擴增容量需消耗 CHANGE_CAPACITY_COST(1,000 萬楓幣)。

封包組裝委由 AlliancePacketCWvsContext 處理。

See Also:
  • Field Details

  • Constructor Details

    • MapleGuildAlliance

      public MapleGuildAlliance(int id)
  • Method Details

    • loadAll

      public static final Collection<MapleGuildAlliance> loadAll()
    • getNoGuilds

      public int getNoGuilds()
    • createToDb

      public static final int createToDb(int leaderId, String name, int guild1, int guild2)
    • deleteAlliance

      public final boolean deleteAlliance()
    • broadcast

      public final void broadcast(byte[] packet)
    • broadcast

      public final void broadcast(byte[] packet, int exception)
    • broadcast

      public final void broadcast(byte[] packet, int exceptionId, handling.world.guild.MapleGuildAlliance.GAOp op, boolean expelled)
    • disband

      public final boolean disband()
    • saveToDb

      public final void saveToDb()
    • setRank

      public void setRank(String[] ranks)
    • getRank

      public String getRank(int rank)
    • getRanks

      public String[] getRanks()
    • getNotice

      public String getNotice()
    • setNotice

      public void setNotice(String newNotice)
    • getGuildId

      public int getGuildId(int i)
    • getId

      public int getId()
    • getName

      public String getName()
    • getCapacity

      public int getCapacity()
    • setCapacity

      public boolean setCapacity()
    • addGuild

      public boolean addGuild(int guildid)
    • removeGuild

      public boolean removeGuild(int guildid, boolean expelled)
    • removeGuild

      public boolean removeGuild(int guildid, boolean expelled, boolean isNull)
    • getLeaderId

      public int getLeaderId()
    • setLeaderId

      public boolean setLeaderId(int c)
    • setLeaderId

      public boolean setLeaderId(int c, boolean sameGuild)
    • changeAllianceRank

      public boolean changeAllianceRank(int cid, int change)