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

154 lines
4.2 KiB
Lua

require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest381 = class("Quest381", questActorProxy)
Quest381.defaultAlias = "Quest381"
local q381Cfg = require('Quest/Client/Q381ClientConfig')
local subIDs = q381Cfg.SubIDs
local qinData = q381Cfg.QinData
local dilucData = q381Cfg.DilucData
local paimonData = q381Cfg.PaimonData
-- Generated
function Quest381:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["38101"] = self.OnSubStart38101
self.subStartHandlers["38102"] = self.OnSubStart38102
self.subStartHandlers["38103"] = self.OnSubStart38103
self.subStartHandlers["38104"] = self.OnSubStart38104
self.subStartHandlers["38105"] = self.OnSubStart38105
end
function Quest381:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["38101"] = self.OnSubFinish38101
self.subFinishHandlers["38102"] = self.OnSubFinish38102
self.subFinishHandlers["38103"] = self.OnSubFinish38103
self.subFinishHandlers["38104"] = self.OnSubFinish38104
self.subFinishHandlers["38105"] = self.OnSubFinish38105
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest381:OnSubStart38101(quest)
print("38101 start:...")
-- local quest = actorMgr:GetActor(q381Cfg.ActorAlias)
-- if quest ~= nil then
-- quest:FinishQuest(false, nil)
-- end
actorMgr:CreateActorWithPos("Q381Trigger", "Actor/Gadget/Q381Trigger", 70900002, 0, sceneData:GetDummyPoint(3,"Q381DragonTill").pos, sceneData:GetDummyPoint(3,"Q381DragonTill").rot, true, false)
end
function Quest381:OnSubStart38102(quest)
print("38102 start:...")
-- TODO: Do sth on sub quest 38102 start
end
function Quest381:OnSubStart38103(quest)
print("38103 start:...")
-- TODO: Do sth on sub quest 38102 start
end
function Quest381:OnSubStart38104(quest)
print("38104 start:...")
-- TODO: Do sth on sub quest 38102 start
end
function Quest381:OnSubStart38105(quest)
print("38105 start:...")
self:CallDelay(1, self.EnterDialog)
end
function Quest381:CreateNPC()
actorMgr:CreateActorWithPos(paimonData.Paimon, paimonData.PaimonScript, paimonData.PaimonID, 0, paimonData.bornPos, paimonData.bornDir, true, false,1006 )
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true, false,1006 )
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true, false,1006 )
end
function Quest381:StartDialog()
self:RequestInteraction(qinData.Qin)
end
function Quest381:EnterDialog()
self:ShowBlackScreen(0.5, 1.0, 0.5, self.CreateNPC, self.StartDialog)
end
--@endregion
--@region sub finish handlers
function Quest381:OnSubFinish38101(quest)
print("OnFinished 38101")
end
function Quest381:OnSubFinish38102(quest)
print("OnFinished 38102")
end
function Quest381:OnSubFinish38103(quest)
print("OnFinished 38103")
end
function Quest381:OnSubFinish38104(quest)
print("OnFinished 38104")
end
function Quest381:OnSubFinish38105(quest)
print("OnFinished 38105")
self:ActionSafeCall(self.ExitDialog)
end
function Quest381:DestroyNPC()
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor(paimonData.Paimon)
if paimon ~= nil then
paimon:Destroy(false)
end
end
)
self:ActionSafeCall(
function(self)
local qin = actorMgr:GetActor(qinData.Qin)
if qin ~= nil then
qin:Destroy(false)
end
end
)
self:ActionSafeCall(
function(self)
local diluc = actorMgr:GetActor(dilucData.Diluc)
if diluc ~= nil then
diluc:Destroy(false)
end
end
)
end
function Quest381:TellStory(quest)
self:CallDelay(0.7, self.StartStory)
end
function Quest381:StartStory(quest)
self:NarratorOnlyTask(q381Cfg.StoryNarrator, nil, "Story")
end
function Quest381:ExitDialog()
self:ShowBlackScreen(0.5, 1.0, 0.5, self.DestroyNPC, self.TellStory)
end
--@endregion
function Quest381:Start()
end
function Quest381:OnDestroy()
end
return Quest381