Class MapleQuest
java.lang.Object
server.quest.MapleQuest
- All Implemented Interfaces:
Serializable
任務系統的核心資料模型,代表一個完整的楓之谷任務定義(接取條件、完成條件與獎勵動作)。
啟動時由 initQuests() 從 MySQL 批次載入所有任務後快取於靜態 quests Map;
外部透過 getInstance(int) 以任務 ID 取得對應實例。每個任務持有:
MapleQuestRequirement列表(接取前置條件startReqs、完成前置條件completeReqs)。MapleQuestAction列表(接取獎勵startActs、完成獎勵completeActs)。- 自動接取/自動完成/可重複等旗標,以及組隊任務排行資訊
partyQuestInfo。
start(MapleCharacter, int) 與 complete(MapleCharacter, int) 分別驗證條件後執行對應動作,並更新角色的
MapleQuestStatus;完成有腳本 (customend) 的任務時轉交
NPCScriptManager 執行 JS 腳本。
- See Also:
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final List<MapleQuestAction> protected final List<MapleQuestRequirement> protected intprotected Stringprotected final List<MapleQuestAction> protected final List<MapleQuestRequirement> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleancanComplete(MapleCharacter c, Integer npcid) booleancanStart(MapleCharacter c, Integer npcid) static voidvoidcomplete(MapleCharacter c, int npc) voidcomplete(MapleCharacter c, int npc, Integer selection) voidforceComplete(MapleCharacter c, int npc) voidforceStart(MapleCharacter c, int npc, String customData) voidstatic Collection<MapleQuest> final List<MapleQuestAction> intgetId()getInfoByRank(String rank) static MapleQuestgetInstance(int id) intfinal StringgetName()final intbooleanbooleanstatic voidbooleanbooleanfinal voidRestoreLostItem(MapleCharacter c, int itemid) voidstart(MapleCharacter c, int npc)
-
Field Details
-
id
protected int id -
startReqs
-
completeReqs
-
startActs
-
completeActs
-
partyQuestInfo
-
relevantMobs
-
name
-
-
Constructor Details
-
MapleQuest
protected MapleQuest(int id)
-
-
Method Details
-
getInfoByRank
-
isPartyQuest
public boolean isPartyQuest() -
getSkillID
public final int getSkillID() -
getName
-
getCompleteActs
-
initQuests
public static void initQuests() -
getInstance
-
getAllInstances
-
canStart
-
canComplete
-
RestoreLostItem
-
start
-
complete
-
complete
-
forfeit
-
forceStart
-
forceComplete
-
getId
public int getId() -
getRelevantMobs
-
getMedalItem
public int getMedalItem() -
isBlocked
public boolean isBlocked() -
hasStartScript
public boolean hasStartScript() -
hasEndScript
public boolean hasEndScript() -
clearQuests
public static void clearQuests()
-