GSServer-CBT/soggy_resources/lua/Actor/Quest/AQ306.lua
Akbar Yahya e0d4d8040c melon
2022-11-21 16:30:31 +08:00

178 lines
5.6 KiB
Lua

require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest306 = class("Quest306", questActorProxy)
Quest306.defaultAlias = "Quest306"
local q306Cfg = require('Quest/Client/Q306ClientConfig')
local q359Cfg = require('Quest/Client/Q359ClientConfig')
local amborData = q306Cfg.AmborData
-- Generated
function Quest306:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["30600"] = self.OnSubStart30600
self.subStartHandlers["30601"] = self.OnSubStart30601
self.subStartHandlers["30602"] = self.OnSubStart30602
self.subStartHandlers["30603"] = self.OnSubStart30603
self.subStartHandlers["30604"] = self.OnSubStart30604
-- self.subStartHandlers["30605"] = self.OnSubStart30605
-- self.subStartHandlers["30606"] = self.OnSubStart30606
self.subStartHandlers["30607"] = self.OnSubStart30607
self.subStartHandlers["30608"] = self.OnSubStart30608
self.subStartHandlers["30609"] = self.OnSubStart30609
self.subStartHandlers["30610"] = self.OnSubStart30610
self.subStartHandlers["30611"] = self.OnSubStart30611
self.subStartHandlers["30612"] = self.OnSubStart30612
end
function Quest306:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["30600"] = self.OnSubFinish30600
self.subFinishHandlers["30601"] = self.OnSubFinish30601
self.subFinishHandlers["30602"] = self.OnSubFinish30602
self.subFinishHandlers["30603"] = self.OnSubFinish30603
self.subFinishHandlers["30604"] = self.OnSubFinish30604
-- self.subFinishHandlers["30605"] = self.OnSubFinish30605
-- self.subFinishHandlers["30606"] = self.OnSubFinish30606
self.subFinishHandlers["30607"] = self.OnSubFinish30607
self.subFinishHandlers["30608"] = self.OnSubFinish30608
self.subFinishHandlers["30609"] = self.OnSubFinish30609
self.subFinishHandlers["30610"] = self.OnSubFinish30610
self.subFinishHandlers["30611"] = self.OnSubFinish30611
self.subFinishHandlers["30612"] = self.OnSubFinish30612
end
---sub start & finish 内调用的函数
function Quest306:AmborIntoDungeon()
local ambor = actorMgr:GetActor(self.clientData.AmborData.Ambor)
ambor:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
ambor:RunToTask(self.clientData.AmborData.DoorPos,
function(actor, task)
actor:ClearFollowTask()
actor:ClearPriorityInter(InterTimingType.BTN)
actor:Standby()
actor:TurnTo(M.Euler2DirXZ(self.clientData.AmborData.DoorDir))
end
)
end
function Quest306:ShowTutorial1(actor)
self:ShowTutorialDialog(103)
end
function Quest306:ShowTutorial2(actor)
self:ShowTutorialDialog(104)
end
function Quest306:ShowTutorial3(actor)
self:ShowTutorialDialog(105)
end
--@region sub start & finish handlers
---按流程触发顺序
function Quest306:OnSubFinish30600(quest)
actorMgr:CreateActorWithPos(amborData.Ambor, amborData.AmborScript, amborData.AmborID, 0, amborData.DungeonPos, amborData.DungeonDir, true, false)
end
function Quest306:OnSubStart30602(quest)
print("30601 Start : Creat Ambor & Environment")
--self:ActionSafeCall(AmborIntoDungeon)
local ambor = actorMgr:GetActor(self.clientData.AmborData.Ambor)
ambor:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
ambor:RunToTask(self.clientData.AmborData.DoorPos,
function(actor, task)
actor:ClearFollowTask()
actor:ClearPriorityInter(InterTimingType.BTN)
actor:Standby()
actor:TurnTo(M.Euler2DirXZ(self.clientData.AmborData.DoorDir))
end
)
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
end
function Quest306:OnSubStart30610(quest)
print("30610 Start : talk to NPC")
self:ShowBlackScreen(0.5, 1, 0.5,
function (self)
actorMgr:CreateActorWithPos(amborData.Ambor, amborData.AmborScript, amborData.AmborID, 0, amborData.BornPos, amborData.BornDir, true, false, 20009)
self:CallDelay(0.5,
function (self)
self:RequestInteraction(amborData.Ambor)
end
)
end
)
end
function Quest306:OnSubFinish30604(quest)
local quest = actorMgr:GetActor(q359Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuestID(false, 35902)
end
end
function Quest306:OnSubFinish30607(quest)
print("30607 Finish: Tutorial 1")
--self:ActionSafeCall(ShowTutorial1)
self:ShowTutorialDialog(103)
end
function Quest306:OnSubFinish30608(quest)
print("30607 Finish: Tutorial 2")
--self:ActionSafeCall(ShowTutorial2)
self:ShowTutorialDialog(104,
function ()
globalActor:StartGuide("EnterFocusModeGuidePC")
end
)
end
function Quest306:OnSubFinish30609(quest)
print("30607 Finish: Tutorial 3")
--self:ActionSafeCall(ShowTutorial3)
self:ShowTutorialDialog(105)
end
function Quest306:OnSubFinish30610(quest)
print("30610 Finish: Destroy Ambor")
self:ActionSafeCall(
self:ShowBlackScreen(0.5, 1, 0.5,
function(self)
local ambor = actorMgr:GetActor(amborData.Ambor)
local paimon = actorMgr:GetActor("Paimon")
if ambor ~= nil then
ambor:Destroy(false)
end
if paimon ~= nil then
paimon:Destroy(false)
end
end
)
)
end
function Quest306:OnSubFinish30612(quest)
print("30612 Finish: FlyGuide")
globalActor:StartGuide("GuideAvatarFlyInWind")
end
--@endregion
function Quest306:Start()
end
function Quest306:OnDestroy()
end
return Quest306