Class MapleSquad
java.lang.Object
server.MapleSquad
遠征隊(Boss Squad)的執行時狀態管理器,支援多人 Boss 挑戰的報名與排隊系統。
一個 MapleSquad 實例對應一次特定頻道上的遠征隊,持有:
- 隊長(
MapleCharacter弱參照)與成員/封禁成員的有序名稱映射; MapleSquad.MapleSquadType列舉,定義支援的 Boss 類型(扎昆、角頭龍、粉豆、CWKPQ 等) 及各頻道的排隊佇列;- 到期時間與
Timer.EtcTimer排程移除任務(scheduleRemoval()); - 狀態機:
0=未活躍、1=招募中、2=進行中。
ChannelServer 以 MapleSquad.MapleSquadType 為鍵管理;
copy() 在現任遠征隊結束後自動從佇列升任下一組隊長並廣播通知。-
Nested Class Summary
Nested Classes -
Constructor Summary
ConstructorsConstructorDescriptionMapleSquad(int ch, String type, MapleCharacter leader, int expiration, String toSay) -
Method Summary
Modifier and TypeMethodDescriptionvoidacceptMember(int pos) intaddMember(MapleCharacter member, boolean join) voidbanMember(int pos) voidclear()booleancontainsMember(MapleCharacter member) voidcopy()intgetJobs()getSquadMemberString(byte type) intintlonggetType()booleanisBanned(MapleCharacter member) voidvoidvoidremoveMember(String chr) voidvoidvoidsetStatus(byte status)
-
Constructor Details
-
MapleSquad
-
-
Method Details
-
copy
public void copy() -
getBeginMap
-
clear
public void clear() -
getChar
-
getTimeLeft
public long getTimeLeft() -
scheduleRemoval
public void scheduleRemoval() -
getLeaderName
-
getAllNextPlayer
-
getNextPlayer
-
setNextPlayer
-
getLeader
-
containsMember
-
getMembers
-
getBannedMembers
-
getSquadSize
public int getSquadSize() -
isBanned
-
addMember
-
acceptMember
public void acceptMember(int pos) -
reAddMember
-
removeMember
-
removeMember
-
banMember
public void banMember(int pos) -
setStatus
public void setStatus(byte status) -
getStatus
public int getStatus() -
getBannedMemberSize
public int getBannedMemberSize() -
getSquadMemberString
-
getType
-
getJobs
-