GSServer-CBT/soggy_resources/lua/Actor/Quest/AQ355.lua

137 lines
4.6 KiB
Lua
Raw Normal View History

2022-11-21 11:30:31 +03:00
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest355 = class("Quest355", questActorProxy)
Quest355.defaultAlias = "Quest355"
local q355Cfg = require('Quest/Client/Q355ClientConfig')
-- Generated
function Quest355:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["35501"] = self.OnSubStart35501
self.subStartHandlers["35502"] = self.OnSubStart35502
self.subStartHandlers["35503"] = self.OnSubStart35503
self.subStartHandlers["35504"] = self.OnSubStart35504
self.subStartHandlers["35505"] = self.OnSubStart35505
end
function Quest355:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["35501"] = self.OnSubFinish35501
self.subFinishHandlers["35502"] = self.OnSubFinish35502
self.subFinishHandlers["35503"] = self.OnSubFinish35503
self.subFinishHandlers["35504"] = self.OnSubFinish35504
self.subFinishHandlers["35505"] = self.OnSubFinish35505
end
---sub start & finish 内调用的函数
function Quest355:PaimonVanish()
--self:ShowTutorialDialog(113)
local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
paimon:AirModeOff()
--paimon:VanishKeep()
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
function Quest355:On35502CutsceneFinish()
self:ShowBlackScreen(0.5, 1.0, 0.5, self.Tear)
--[[ local PaimonData = self.clientData.PaimonData
self:RequestInteraction(PaimonData.Paimon)
local TearData = self.clientData.TearData
globalActor:UnSpawn("Tear")
globalActor:SpawnItem(TearData.TearID, TearData.TearPos,nil,"Tear") ]]
end
function Quest355:Tear()
local PaimonData = self.clientData.PaimonData
self:RequestInteraction(PaimonData.Paimon)
local TearData = self.clientData.TearData
globalActor:UnSpawn("Tear")
globalActor:SpawnItem(TearData.TearID, TearData.TearPos,nil,"Tear")
end
function Quest355:Story1()
self:NarratorOnlyTask(self.clientData.NarratorData.Story1)
end
--@region sub start & finish handlers
---按流程触发顺序
---当OnSubFinish当前环和OnSubStart下一环等效时写在OnSubFinish内否则断线重连流程可能和OnSubStart流程重复执行
function Quest355:OnSubFinish35502(quest)
print("35502 Finish : Play Cutscene & Creat Paimon")
self:PlayCutscene(self.clientData.InterData.Cutscene1, self.On35502CutsceneFinish)
local PaimonData = self.clientData.PaimonData
actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, PaimonData.Pos1, PaimonData.Dir1, true, false)
end
--[[ function Quest355:OnSubStart35503(quest)
print("35503 Start : Creat Paimon")
local PaimonData = self.clientData.PaimonData
actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, PaimonData.Pos1, PaimonData.Dir1, true, false)
end ]]
function Quest355:OnSubFinish35503(quest)
print("35503 Finish : Paimon to Paimon2 & Spawn Tears")
--[[ local TearData = self.clientData.TearData
globalActor:UnSpawn("Tear")
globalActor:SpawnItem(TearData.TearID, TearData.TearPos,nil,"Tear") ]]
--self:NarratorOnlyTask(self.clientData.NarratorData.Story1)
self:ActionSafeCall(self.Story1)
local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
paimon:AirModeOn()
paimon:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
paimon:RunToTask(self.clientData.PaimonData.Pos2,
function(actor, task)
actor:ClearFollowTask()
actor:ClearPriorityInter(InterTimingType.BTN)
actor:DoFreeStyle(1200)
actor:TurnTo(M.Euler2DirXZ(self.clientData.PaimonData.Dir2))
end
)
--[[ local TearData = self.clientData.TearData
globalActor:UnSpawn("Tear")
globalActor:SpawnItem(TearData.TearID, TearData.TearPos,nil,"Tear") ]]
end
function Quest355:OnSubStart35504(quest)
print("35504 Start : Spawn Tears")
-- local TearData = self.clientData.TearData
-- globalActor:UnSpawn("Tear")
-- globalActor:SpawnItem(TearData.TearID, TearData.TearPos,nil,"Tear")
end
function Quest355:OnSubFinish35504(quest)
print("35504 Start : Spawn Tears")
end
function Quest355:OnSubStart35505(quest)
local PaimonData = self.clientData.PaimonData
self:RequestInteraction(PaimonData.Paimon)
end
function Quest355:OnSubFinish35505(quest)
print("35505 Finish : Paimon Vanish")
self:ActionSafeCall(self.PaimonVanish)
end
function Quest355:InvokeOnInteraction(param)
if param == 1 then
--[[ print("Now Spawn Tears")
local TearData = self.clientData.TearData
globalActor:UnSpawn("Tear")
globalActor:SpawnItem(TearData.TearID, TearData.TearPos,nil,"Tear") ]]
end
end
--@endregion
function Quest355:Start()
end
function Quest355:OnDestroy()
end
return Quest355