MissionLogic
訪問源文檔
返回目錄
MissionLogic 是一個繼承 MissionBehaviour 的抽象類,除了幾個額外的回調外,任務邏輯還有可複寫的方法會影響任務的邏輯。
回調
- AccelerateHorseKeyPressAnswer() - 似乎不太贊成使用這一回調函數。
- OnBattleEnded() - 在戰鬥自然結束前玩家選擇離開時調用。
- OnMissionResultReady(MissionResult) - 任務結束調用並且創建 MissionResult ,注意這個調用在 ShowBattleResults 前進行。
- MissionResult - 計算的結果數據。
- OnRetreatMission() - 玩家從任務中撤退時調用,當前,競技場和帶戰鬥的任務似乎是玩家可以撤退的。
- ShowBattleResults() - 當任務完成並且結束倒計時啟動時調用,這在任務回調結束前調用。
複寫
- bool IsAgentInteractionAllowed() - 調用來確定Agent是否可交互。返回true即允許交互,注意所有的任務邏輯都需要返回true才能得到正確的結果。
- bool IsOrderShoutingAllowed() - 調用來確定是否命令語音可以使用。返回true即允許使用,注意所有的任務邏輯都需要返回true才能得到正確的結果。
- bool MissionEnded(ref MissionResult) - 可被複寫來決定任務的結束。除了基礎檢查外每個任務Tick都會調用。返回true觸發任務結束。注意只有一個任務邏輯返回true就足夠了,這一個返回的true將決定MissionResult。
- MissionResult - MissionResult 實例用於存儲結果數據。這個參數通過 ref 關鍵字傳遞。
- InquiryData OnEndMissionRequest(out bool) - 玩家想離開任務時調用。InquiryData能返回顯示確認框。 注意將顯示任務邏輯返回的第一個非空InquiryData,其它部分將不調用此回調。
- bool - 決定玩家是否能離開任務。這個參數通過 out 關鍵字傳遞。如果玩家可以離開傳入true。注意當首次設置為false時將阻止玩家離開並不會再調用。