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

165 lines
5.1 KiB
Lua

require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest413 = class("Quest413", questActorProxy)
Quest413.defaultAlias = "Quest413"
local this = nil
local super = nil
local uActor = nil
local questID = 0
function Quest413:OnPreInit()
this = self
super = self.__super
questID = this.mainQuestID
super:OnPreInit()
end
function Quest413:OnPostInit()
uActor = self.uActor
super:OnPostInit()
end
-- local config begin
local q413Cfg = require('Actor/Quest/Q413/Q413Config')
local subIDs = q413Cfg.SubIDs
local lisaData = q413Cfg.LisaData
local barbaraData = q413Cfg.BarbaraData
local pastorData = q413Cfg.PastorData
local paimonData = q413Cfg.PaimonData
local soldierData = q413Cfg.SoldierData
local captainData = q413Cfg.CaptainData
-- local config end
function Quest413:CreateUActor(alias)
local uActor = actorUtils.CreateActor(self, ActorType.QUEST_ACTOR, alias)
uActor = actorUtils.CreateQuestActor(questID, uActor)
return uActor
end
-- local param begin
-- local param end
-- local method begin
local function OnStart41301()
globalActor:SpawnItem(q413Cfg.ItemPoisonID, sceneData:GetDummyPoint(3,"Q413Poison").pos,nil,"Poison")
end
local function OnFinished41301()
local paimonPos = actorUtils.GetAvatarPos()
paimonPos.z = paimonPos.z+1
local paimonRot = {x=0,y=0,z=-1}
local paimon = actorMgr:CreateActorWithPos(paimonData.Paimon, paimonData.PaimonScript, paimonData.PaimonID, 0, paimonPos, M.Dir2Euler(paimonRot), true, false)
paimon:NarratorTask(q413Cfg.NarratorFlow1, -1, 30, paimon.Vanish)
end
local function OnStart41304()
local barbara = actorMgr:CreateActorWithPos(barbaraData.Barbara, barbaraData.BarbaraScript, barbaraData.BarbaraID, 0, barbaraData.bornPos, barbaraData.bornDir, true, false)
barbara:StartBeFollow()
end
local function OnStart41306()
local pastor = actorMgr:CreateActorWithPos(pastorData.Pastor, pastorData.PastorScript, pastorData.PastorID, 0, pastorData.bornPos, pastorData.bornDir, true, false)
pastor:Show()
end
local function OnFinished41307()
-- local pastor = actorMgr:CreateActorWithPos(pastorData.Pastor, pastorData.PastorScript, pastorData.PastorID, 0, pastorData.showPos, pastorData.showDir, true, false)
local pastor = actorMgr:GetActor(pastorData.Pastor)
pastor:Vanish()
end
local function OnStart41309()
-- local barbara = actorMgr:CreateActorWithPos(barbaraData.Barbara, barbaraData.BarbaraScript, barbaraData.BarbaraID, 0, barbaraData.hidePos, barbaraData.hideDir, true, false)
local barbara = actorMgr:GetActor(barbaraData.Barbara)
barbara:Vanish()
end
local function OnStart41310()
for i=1, #soldierData.SoldierIDs do
local soldier = actorMgr:CreateActorWithPos(soldierData.Soldier .. tostring(soldierData.SoldierIDs[i]), soldierData.SoldierScript, soldierData.SoldierIDs[i], i, soldierData.SoldierPos[i], soldierData.SoldierDir[i], true, false, 20006)
end
local captain = actorMgr:CreateActorWithPos(captainData.Captain, captainData.CaptainScript, captainData.CaptainID, 0, captainData.CaptainPos, captainData.CaptainDir, true, false, 20006)
end
local function OnStart41312()
local barbara = actorMgr:CreateActorWithPos(barbaraData.Barbara, barbaraData.BarbaraScript, barbaraData.BarbaraID, 0, barbaraData.livePos, barbaraData.liveDir, true, false, 20006)
barbara:CallDelay(1, barbara.StartLive)
barbara:CallDelay(10, barbara.FinishLive)
end
local function OnFinished41313()
local barbara = actorMgr:GetActor(barbaraData.Barbara)
barbara:VanishDungeon()
-- local barbara = actorMgr:CreateActorWithPos(barbaraData.Barbara, barbaraData.BarbaraScript, barbaraData.BarbaraID, 0, barbaraData.bornPos, barbaraData.bornDir, true, false)
-- barbara:NarratorTask(q413Cfg.NarratorFlow2, -1, -1, nil)
end
local function OnStart41315()
local barbara = actorMgr:CreateActorWithPos(barbaraData.Barbara, barbaraData.BarbaraScript, barbaraData.BarbaraID, 0, barbaraData.bornPos, barbaraData.bornDir, true, false)
end
-- local method end
function Quest413:OnMainStart(quest)
end
function Quest413:OnSubStart(quest)
local questID = quest.QuestId
if questID == subIDs.q41301 then
OnStart41301()
elseif questID == subIDs.q41304 then
OnStart41304()
elseif questID == subIDs.q41306 then
OnStart41306()
elseif questID == subIDs.q41309 then
OnStart41309()
elseif questID == subIDs.q41310 then
OnStart41310()
elseif questID == subIDs.q41312 then
OnStart41312()
elseif questID == subIDs.q41315 then
OnStart41315()
end
end
function Quest413:OnSubFinished(quest)
local questID = quest.QuestId
if questID == subIDs.q41307 then
OnFinished41307()
elseif questID == subIDs.q41301 then
OnFinished41301()
elseif questID == subIDs.q41313 then
OnFinished41313()
end
end
function Quest413:OnRewind(quest)
-- local questID = quest.QuestId
-- if questID == subIDs.q41308 then
-- OnRewind41308()
-- elseif questID == subIDs.q41314 then
-- OnRewind41314()
-- elseif questID == subIDs.q41315 then
-- OnRewind41315()
-- elseif questID == subIDs.q41316 then
-- OnRewind41316()
-- end
end
function Quest413:OnMainFinished(quest)
end
function Quest413:Start()
end
function Quest413:OnDestroy()
end
return Quest413