This commit is contained in:
Akbar Yahya
2022-11-21 16:30:31 +08:00
commit e0d4d8040c
3326 changed files with 683000 additions and 0 deletions

View File

@@ -0,0 +1,178 @@
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

View File

@@ -0,0 +1,207 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest307 = class("Quest307", questActorProxy)
Quest307.defaultAlias = "Quest307"
local q307Cfg = require('Quest/Client/Q307ClientConfig')
local q359Cfg = require('Quest/Client/Q359ClientConfig')
local gaiaData = q307Cfg.GaiaData
-- Generated
function Quest307:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["30700"] = self.OnSubStart30700
self.subStartHandlers["30701"] = self.OnSubStart30701
self.subStartHandlers["30702"] = self.OnSubStart30702
self.subStartHandlers["30703"] = self.OnSubStart30703
self.subStartHandlers["30704"] = self.OnSubStart30704
-- self.subStartHandlers["30705"] = self.OnSubStart30705
-- self.subStartHandlers["30706"] = self.OnSubStart30706
self.subStartHandlers["30707"] = self.OnSubStart30707
self.subStartHandlers["30708"] = self.OnSubStart30708
self.subStartHandlers["30709"] = self.OnSubStart30709
self.subStartHandlers["30710"] = self.OnSubStart30710
self.subStartHandlers["30711"] = self.OnSubStart30711
self.subStartHandlers["30712"] = self.OnSubStart30712
self.subStartHandlers["30713"] = self.OnSubStart30713
self.subStartHandlers["30715"] = self.OnSubStart30715
end
function Quest307:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["30700"] = self.OnSubFinish30700
self.subFinishHandlers["30701"] = self.OnSubFinish30701
self.subFinishHandlers["30702"] = self.OnSubFinish30702
self.subFinishHandlers["30703"] = self.OnSubFinish30703
self.subFinishHandlers["30704"] = self.OnSubFinish30704
-- self.subFinishHandlers["30705"] = self.OnSubFinish30705
-- self.subFinishHandlers["30706"] = self.OnSubFinish30706
self.subFinishHandlers["30707"] = self.OnSubFinish30707
self.subFinishHandlers["30708"] = self.OnSubFinish30708
self.subFinishHandlers["30709"] = self.OnSubFinish30709
self.subFinishHandlers["30710"] = self.OnSubFinish30710
self.subFinishHandlers["30711"] = self.OnSubFinish30711
self.subFinishHandlers["30712"] = self.OnSubFinish30712
self.subFinishHandlers["30713"] = self.OnSubFinish30713
self.subFinishHandlers["30715"] = self.OnSubFinish30715
end
---sub start & finish 内调用的函数
function Quest307:GaiaIntoDungeon()
local GaiaData = self.clientData.GaiaData
local gaia = actorMgr:GetActor(self.clientData.GaiaData.Gaia)
gaia:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
gaia:RunToTask(sceneData:GetDummyPoint(3,"Q307DungeonDoor").pos,
function(actor, task)
actor:ClearFollowTask()
actor:ClearPriorityInter(InterTimingType.BTN)
end
)
end
function Quest307:ShowTutorial1(actor)
self:ShowTutorialDialog(106)
end
function Quest307:ShowTutorial2(actor)
self:ShowTutorialDialog(107)
end
function Quest307:ShowTutorial3(actor)
self:ShowTutorialDialog(108)
end
function Quest307:On30713CutsceneFinish()
local quest = actorMgr:GetActor(q307Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
function Quest307:GaiaDestroy()
local gaia = actorMgr:GetActor(self.clientData.GaiaData.Gaia)
gaia:EnableHeadCtrl(true)
if gaia ~= nil then
gaia:Destroy(false)
end
end
--@region sub start & finish handlers
---按流程触发顺序
function Quest307:OnSubFinish30700(quest)
local GaiaData = self.clientData.GaiaData
actorMgr:CreateActorWithPos(GaiaData.Gaia, GaiaData.GaiaScript, GaiaData.GaiaID, 0, GaiaData.DungeonPos, GaiaData.DungeonDir, true, false)
end
function Quest307:OnSubStart30702(quest)
print("30701 Start : Creat Gaia & Environment")
local gaia = actorMgr:GetActor(self.clientData.GaiaData.Gaia)
gaia:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
gaia:RunToTask(self.clientData.GaiaData.DoorPos,
function(actor, task)
actor:ClearFollowTask()
actor:ClearPriorityInter(InterTimingType.BTN)
actor:Standby()
actor:TurnTo(M.Euler2DirXZ(self.clientData.GaiaData.DoorDir))
end
)
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
end
function Quest307:OnSubStart30704(quest)
-- self:CallDelay(5,
-- function (self)
self:TransmitPlayer(3,sceneData:GetDummyPoint(3,"Q307DungeonDoor").pos, sceneData:GetDummyPoint(3,"Q307DungeonDoor").rot,
function ()
local quest = actorMgr:GetActor(q307Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
)
-- end
-- )
end
function Quest307:OnSubStart30710(quest)
print("30710 Start : Creat Gaia In Dungeon")
local GaiaData = self.clientData.GaiaData
actorMgr:CreateActorWithPos(GaiaData.Gaia, GaiaData.GaiaScript, GaiaData.GaiaID, 0, GaiaData.Pos1, GaiaData.Dir1, true, false, 20008)
local gaia = actorMgr:GetActor(self.clientData.GaiaData.Gaia)
gaia:EnableHeadCtrl(false)
end
function Quest307:OnSubStart30713(quest)
self:ActionSafeCall(
function (self)
self:PlayCutscene(self.clientData.InterData.Cutscene1, self.On30713CutsceneFinish)
end
)
end
function Quest307:OnSubStart30715(quest)
print("30715 Start : talk to NPC")
self:ShowBlackScreen(0.5, 1, 0.5,
function (self)
actorMgr:CreateActorWithPos(gaiaData.Gaia, gaiaData.GaiaScript, gaiaData.GaiaID, 0, gaiaData.BornPos, gaiaData.BornDir, true, false, 20008)
self:CallDelay(0.5,
function (self)
self:RequestInteraction(gaiaData.Gaia)
end
)
end
)
end
function Quest307:OnSubFinish30704(quest)
local quest = actorMgr:GetActor(q359Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuestID(false, 35903)
end
end
function Quest307:OnSubFinish30710(quest)
print("30710 Finish : Destroy Gaia")
self:ActionSafeCall(self.GaiaDestroy)
end
function Quest307:OnSubFinish30707(quest)
print("30707 Finish: Tutorial 1")
self:ShowTutorialDialog(106)
end
function Quest307:OnSubFinish30708(quest)
print("30707 Finish: Tutorial 2")
self:ShowTutorialDialog(107)
end
function Quest307:OnSubFinish30709(quest)
print("30707 Finish: Tutorial 3")
self:ShowTutorialDialog(108)
end
function Quest307:OnSubFinish30712(quest)
print("30712 Finish: Tutorial 4")
self:ShowTutorialDialog(183)
end
function Quest307:OnSubFinish30713(quest)
print("30713 Finish : Cutscene")
end
--@endregion
function Quest307:Start()
end
function Quest307:OnDestroy()
end
return Quest307

View File

@@ -0,0 +1,185 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest308 = class("Quest308", questActorProxy)
Quest308.defaultAlias = "Quest308"
local q308Cfg = require('Quest/Client/Q308ClientConfig')
local q359Cfg = require('Quest/Client/Q359ClientConfig')
local lisaData = q308Cfg.LisaData
local bookData = q308Cfg.BookData
-- Generated
function Quest308:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["30800"] = self.OnSubStart30800
self.subStartHandlers["30801"] = self.OnSubStart30801
self.subStartHandlers["30802"] = self.OnSubStart30802
self.subStartHandlers["30803"] = self.OnSubStart30803
self.subStartHandlers["30804"] = self.OnSubStart30804
-- self.subStartHandlers["30805"] = self.OnSubStart30805
-- self.subStartHandlers["30806"] = self.OnSubStart30806
self.subStartHandlers["30807"] = self.OnSubStart30807
self.subStartHandlers["30808"] = self.OnSubStart30808
self.subStartHandlers["30809"] = self.OnSubStart30809
self.subStartHandlers["30810"] = self.OnSubStart30810
self.subStartHandlers["30811"] = self.OnSubStart30811
self.subStartHandlers["30812"] = self.OnSubStart30812
self.subStartHandlers["30814"] = self.OnSubStart30814
end
function Quest308:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["30800"] = self.OnSubFinish30800
self.subFinishHandlers["30801"] = self.OnSubFinish30801
self.subFinishHandlers["30802"] = self.OnSubFinish30802
self.subFinishHandlers["30803"] = self.OnSubFinish30803
self.subFinishHandlers["30804"] = self.OnSubFinish30804
-- self.subFinishHandlers["30805"] = self.OnSubFinish30805
-- self.subFinishHandlers["30806"] = self.OnSubFinish30806
self.subFinishHandlers["30807"] = self.OnSubFinish30807
self.subFinishHandlers["30808"] = self.OnSubFinish30808
self.subFinishHandlers["30809"] = self.OnSubFinish30809
self.subFinishHandlers["30810"] = self.OnSubFinish30810
self.subFinishHandlers["30811"] = self.OnSubFinish30811
self.subFinishHandlers["30812"] = self.OnSubFinish30812
self.subFinishHandlers["30814"] = self.OnSubFinish30814
end
---sub start & finish 内调用的函数
function Quest308:LisaIntoDungeon()
local LisaData = self.clientData.LisaData
local lisa = actorMgr:GetActor(self.clientData.LisaData.Lisa)
lisa:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
lisa:RunToTask(sceneData:GetDummyPoint(3,"Q308DungeonDoor").pos,
function(actor, task)
actor:ClearFollowTask()
actor:ClearPriorityInter(InterTimingType.BTN)
end
)
end
function Quest308:LisaDestroy(actor)
local lisa = actorMgr:GetActor(self.clientData.LisaData.Lisa)
lisa:EnableHeadCtrl(true)
if lisa ~= nil then
lisa:Destroy(false)
end
end
--@region sub start & finish handlers
---按流程触发顺序
function Quest308:OnSubFinish30800(quest)
local LisaData = self.clientData.LisaData
actorMgr:CreateActorWithPos(LisaData.Lisa, LisaData.LisaScript, LisaData.LisaID, 0, LisaData.DungeonPos, LisaData.DungeonDir, true, false)
end
function Quest308:OnSubStart30802(quest)
print("30801 Start : Creat Lisa & Environment")
local lisa = actorMgr:GetActor(self.clientData.LisaData.Lisa)
lisa:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
lisa:RunToRouteTask(q308Cfg.RoutePoints,
function(actor, task)
actor:ClearFollowTask()
actor:ClearPriorityInter(InterTimingType.BTN)
actor:Standby()
actor:TurnTo(M.Euler2DirXZ(self.clientData.LisaData.DoorDir))
end
)
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
end
function Quest308:OnSubStart30810(quest)
print("30810 Start : Creat Lisa In Dungeon")
local LisaData = self.clientData.LisaData
actorMgr:CreateActorWithPos(LisaData.Lisa, LisaData.LisaScript, LisaData.LisaID, 0, LisaData.Pos1, LisaData.Dir1, true, false, 20011)
local lisa = actorMgr:GetActor(self.clientData.LisaData.Lisa)
lisa:EnableHeadCtrl(false)
end
function Quest308:OnSubStart30814(quest)
print("30814 Start : talk to NPC")
self:ShowBlackScreen(0.5, 1, 0.5,
function (self)
actorMgr:CreateActorWithPos(lisaData.Lisa, lisaData.LisaScript, lisaData.LisaID, 0, lisaData.BornPos, lisaData.BornDir, true, false, 20011)
self:CallDelay(0.5,
function (self)
self:RequestInteraction(lisaData.Lisa)
end
)
end
)
end
function Quest308:OnSubFinish30804(quest)
local quest = actorMgr:GetActor(q359Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuestID(false, 35904)
end
end
function Quest308:OnSubFinish30810(quest)
print("30810 Finish : Destroy Lisa")
self:ActionSafeCall(self.LisaDestroy)
end
function Quest308:OnSubFinish30807(quest)
print("30807 Finish: Tutorial 1")
self:ShowTutorialDialog(109)
end
function Quest308:OnSubFinish30808(quest)
print("30807 Finish: Tutorial 2")
self:ShowTutorialDialog(110)
end
function Quest308:OnSubFinish30809(quest)
print("30807 Finish: Tutorial 3")
self:ShowTutorialDialog(111)
end
function Quest308:OnSubFinish30812(quest)
print("30812 Finish: Tutorial 4")
self:ShowTutorialDialog(149)
end
function Quest308:OnSubFinish30814(quest)
print("30814 Finish: Destroy Lisa")
self:ActionSafeCall(
self:ShowBlackScreen(0.5, 1, 0.5,
function(self)
local lisa = actorMgr:GetActor(lisaData.Lisa)
local paimon = actorMgr:GetActor("Paimon")
if lisa ~= nil then
lisa:Destroy(false)
end
if paimon ~= nil then
paimon:Destroy(false)
end
end
)
)
end
--@endregion
function Quest308:Start()
end
function Quest308:OnDestroy()
end
return Quest308

View File

@@ -0,0 +1,83 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest309 = class("Quest309", questActorProxy)
Quest309.defaultAlias = "Quest309"
local q309Cfg = require('Quest/Client/Q309ClientConfig')
local q359Cfg = require('Quest/Client/Q359ClientConfig')
-- Generated
function Quest309:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["30901"] = self.OnSubStart30901
-- self.subStartHandlers["30902"] = self.OnSubStart30902
self.subStartHandlers["30903"] = self.OnSubStart30903
self.subStartHandlers["30904"] = self.OnSubStart30904
end
function Quest309:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["30901"] = self.OnSubFinish30901
-- self.subFinishHandlers["30902"] = self.OnSubFinish30902
self.subFinishHandlers["30903"] = self.OnSubFinish30903
self.subFinishHandlers["30904"] = self.OnSubFinish30904
end
---sub start & finish 内调用的函数
function Quest309:PaimonVanish()
--local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
--paimon:AirModeOff()
--paimon:VanishKeep()
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
--@region sub start & finish handlers
---按流程触发顺序
function Quest309:OnSubStart30902(quest)
print("30902 Start : Creat Paimon")
local PaimonData = self.clientData.PaimonData
local paimonPos = actorUtils.GetAvatarPos()
paimonPos.z = paimonPos.z+1.2
local paimonRot = {x=0,y=0,z=-1}
actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, paimonPos, M.Dir2Euler(paimonRot), true, false)
end
function Quest309:OnSubStart30904(quest)
self:ActionSafeCall(
function (self)
self:PlayCutscene(q309Cfg.CutsceneData,
function (self)
local quest = actorMgr:GetActor(q309Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
)
local quest = actorMgr:GetActor(q359Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuestID(false, 35901)
end
end
)
end
function Quest309:OnSubFinish30902(quest)
print("30902 Finish : Paimon Vanish")
end
--@endregion
function Quest309:Start()
end
function Quest309:OnDestroy()
end
return Quest309

View File

@@ -0,0 +1,68 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest311 = class("Quest311", questActorProxy)
Quest311.defaultAlias = "Quest311"
local q311Cfg = require('Quest/Client/Q311ClientConfig')
local paimonData = q311Cfg.PaimonData
-- Generated
function Quest311:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["31101"] = self.OnSubStart31101
self.subStartHandlers["31102"] = self.OnSubStart31102
self.subStartHandlers["31103"] = self.OnSubStart31103
self.subStartHandlers["31104"] = self.OnSubStart31104
end
function Quest311:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["31101"] = self.OnSubFinish31101
self.subFinishHandlers["31102"] = self.OnSubFinish31102
self.subFinishHandlers["31103"] = self.OnSubFinish31103
self.subFinishHandlers["31104"] = self.OnSubFinish31104
end
---sub start & finish 内调用的函数
--@region sub start & finish handlers
---按流程触发顺序
function Quest311:OnSubStart31101(quest)
print("31101 Start : Creat Paimon")
local PaimonData = self.clientData.PaimonData
local paimonPos = actorUtils.GetAvatarPos()
paimonPos.z = paimonPos.z+1.2
local paimonRot = {x=0,y=0,z=-1}
actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, paimonPos, M.Dir2Euler(paimonRot), true, false)
self:CallDelay(1,
function (self)
self:RequestInteraction(paimonData.Paimon)
end
)
end
function Quest311:OnSubFinish31101(quest)
print("31101 Finish : Paimon Vanish")
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
self:CallDelay(3,
function (self)
globalActor:StartGuide("GuideViewHelp")
end
)
end
--@endregion
function Quest311:Start()
end
function Quest311:OnDestroy()
end
return Quest311

View File

@@ -0,0 +1,54 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest350 = class("Quest350", questActorProxy)
Quest350.defaultAlias = "Quest350"
local q350Cfg = require('Quest/Client/Q350ClientConfig')
-- Generated
function Quest350:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["35001"] = self.OnSubStart35001
end
function Quest350:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["35001"] = self.OnSubFinish35001
end
---sub start & finish 内调用的函数
--@region sub start & finish handlers
---按流程触发顺序
function Quest350:OnSubStart35001(quest)
print("35001 Start : Creat Limit Region")
local limitRegionGlobal = actorMgr:GetActor("LimitRegionGlobal")
limitRegionGlobal:UseFreshmeatRegion()
--actorMgr:RegisteSubGlobal("LimitRegionGlobal", "Actor/SubGlobal/LimitRegionGlobalActor")
end
function Quest350:OnSubFinish35001(quest)
print("35001 Finish : Destroy Limit Region")
self:ActionSafeCall(
function(self)
local regionActor = actorMgr:GetActorInternal("LimitRegionGlobal")
if regionActor == nil then
return
end
regionActor:FinishLimitRegion()
actorMgr:UnregisteSubGlobal("LimitRegionGlobal")
end
)
end
--@endregion
function Quest350:Start()
end
function Quest350:OnDestroy()
end
return Quest350

View File

@@ -0,0 +1,266 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest351 = class("Quest351", questActorProxy)
Quest351.defaultAlias = "Quest351"
local q351Cfg = require('Quest/Client/Q351ClientConfig')
local warningTask = nil
local stayWarningTask = nil
-- Generated
function Quest351:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["35100"] = self.OnSubStart35100
self.subStartHandlers["35101"] = self.OnSubStart35101
self.subStartHandlers["35102"] = self.OnSubStart35102
self.subStartHandlers["35103"] = self.OnSubStart35103
self.subStartHandlers["35104"] = self.OnSubStart35104
self.subStartHandlers["35105"] = self.OnSubStart35105
self.subStartHandlers["35106"] = self.OnSubStart35106
self.subStartHandlers["35107"] = self.OnSubStart35107
end
function Quest351:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["35100"] = self.OnSubFinish35100
self.subFinishHandlers["35101"] = self.OnSubFinish35101
self.subFinishHandlers["35102"] = self.OnSubFinish35102
self.subFinishHandlers["35103"] = self.OnSubFinish35103
self.subFinishHandlers["35104"] = self.OnSubFinish35104
self.subFinishHandlers["35105"] = self.OnSubFinish35105
self.subFinishHandlers["35106"] = self.OnSubFinish35106
self.subFinishHandlers["35107"] = self.OnSubFinish35107
end
---sub start & finish 内调用的函数
function Quest351:PaimonVanish()
local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
paimon:StopPerformNarrator()
paimon:VanishKeep(
function(actor)
self.uActor:AvatarPaimonAppear()
end)
end
--@region sub start & finish handlers
---按流程触发顺序
function Quest351:OnSubStart35104(quest)
print("35104 Start : Play mp4 and Cs_Opening_CutScene1")
local PaimonData = self.clientData.PaimonData
actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, PaimonData.Pos1, PaimonData.Dir1, true, false)
local HeroSex = globalActor:IsHeroMale()
if HeroSex == true then
print("Play Boy mp4")
self:TryPlayVideo("OpeningSequence_Rough_Boy_batch.mp4", 300003, true, self.PlayAwakeCutscene)
else
print("Play Girl mp4")
self:TryPlayVideo("OpeningSequence_Rough_Girl_batch.mp4", 300004, true, self.PlayAwakeCutscene)
end
globalActor:EndGuide("GuideCameraMove")
globalActor:EndGuide("GuideCameraScale")
globalActor:EndGuide("GuideAvatarMove")
globalActor:EndGuide("GuideAvatarSprint")
globalActor:EndGuide("GuideAvatarJump")
globalActor:EndGuide("GuideCameraMovePC")
globalActor:EndGuide("GuideCameraScalePC")
globalActor:EndGuide("GuideAvatarMovePC")
globalActor:EndGuide("GuideAvatarSprintPC")
globalActor:EndGuide("GuideAvatarJumpPC")
end
function Quest351:PlayAwakeCutscene()
self:PlayCutscene(self.clientData.InterData.Cutscene1, self.On35104CutsceneFinish)
end
function Quest351:StartAllTutorial()
globalActor:StartGuide("GuideCameraMove")
end
function Quest351:On35104CutsceneFinish()
print("35104 Finish : Tutorial1")
self:StartAllTutorial()
--教程:镜头+移动
local quest = actorMgr:GetActor(q351Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
--[[ function Quest351:OnSubFinish35104(quest)
print("35104 Finish : Tutorial1")
--教程:镜头+移动
end ]]
function Quest351:OnSubStart35101(quest)
print("35101 Start : To Trans")
--开车提示
--self:NarratorOnlyTask(self.clientData.NarratorData.Story2)
--派蒙移动
local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
paimon:Standby()
paimon:RunToRouteTask(q351Cfg.RoutePoints2,
function(actor, task)
actor:ClearFollowTask()
actor:ClearPriorityInter(InterTimingType.BTN)
actor:Standby()
actor:TurnTo(M.Euler2DirXZ(sceneData:GetDummyPoint(3,"Q351Trans").rot))
end
)
--临时传送点
local TempTransData = self.clientData.TempTransData
--globalActor:SpawnItem(TempTransData.TempTransID, TempTransData.TempTransPos,nil,"TempTrans")
--creat trigger
--local avatarPos = actorUtils.GetAvatarPos()
--actorMgr:CreateActorWithPos("Q351Trigger1", "Actor/Gadget/Q351Trigger1", 70900002, 0, avatarPos, sceneData:GetDummyPoint(3,"Q361DragonTriggerCenter").rot, true, false)
end
function Quest351:OnSubStart35106(quest)
print("StartGuideInteraction")
globalActor:StartGuide("GuideInteraction")
end
function Quest351:OnSubFinish35106(quest)
print("35105 Finish : To Climb")
--教程:传送点
--派蒙移动
local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
paimon:Standby()
paimon:RunToRouteTask(q351Cfg.RoutePoints,
function(actor, task)
actor:ClearFollowTask()
actor:ClearPriorityInter(InterTimingType.BTN)
actor:Standby()
actor:TurnTo(M.Euler2DirXZ(sceneData:GetDummyPoint(3,"Q351FirstClimb").rot))
end
)
self:CallDelay(3, self.AfterAni)
--self:ShowTutorialDialog(232, self.TotorialContent)
--self:ShowTutorialDialog(232)
--[[ self:CallDelay(3,
function()
globalActor:StartGuide("GuideRadar")
end
) ]]
end
function Quest351:AfterAni()
self:ShowTutorialDialog(232, self.TotorialContent)
end
function Quest351:TotorialContent(quest)
globalActor:CallDelay(3,
function()
globalActor:StartGuide("GuideRadar")
end
)
end
function Quest351:OnSubFinish35107(quest)
print("35103 Finish : Tutorial1")
globalActor:StartGuide("GuideAvatarAttack")
--教程:普攻
end
--[[ function Quest351:OnSubStart35101(quest)
local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
paimon:Standby()
paimon:NarratorTask(q351Cfg.NarratorFlow, q351Cfg.FollowLen, q351Cfg.FollowLen, nil, "Story")
paimon:BeFollowTaskByRoutePoints(q351Cfg.RoutePoints, q351Cfg.FollowLen, -1,
function(paimon, task)
if paimon.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(q351Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(true, nil)
end
paimon:StopPerformNarrator()
elseif paimon.BeFollowState == BeFollowState.SUCCESS then
paimon:DoFreeStyle(0)
paimon:TurnTo(M.Euler2DirXZ(q351Cfg.PaimonData.Dir2))
paimon:ClearBeLockTask()
local quest = actorMgr:GetActor(q351Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
--quest:FinishQuestID(false, 35101)
end
end
end,
function(paimon, task)
paimon:Standby()
end
)
paimon:BeLockTask(q351Cfg.FollowTransLen, 1,
function(paimon)
paimon:TransFinishCallBack(q351Cfg)
end,
function(paimon)
paimon:TransPreCallBack(q351Cfg)
end
)
stayWarningTask = paimon:WarningNarratorTask(0, q351Cfg.NarratorStayWarning, function(paimon)
local selfPos = paimon:GetPos()
local avatarPos = actorUtils.GetAvatarPos()
local currLen = M.Dist(selfPos, avatarPos)
return currLen > q351Cfg.FollowLen + 5 and currLen <= q351Cfg.FollowLen + 15 and paimon:IsInIdle()
end, nil, "StoryWarning")
warningTask = paimon:WarningNarratorTask(1, q351Cfg.NarratorWarning, function(paimon)
local selfPos = paimon:GetPos()
local avatarPos = actorUtils.GetAvatarPos()
local currLen = M.Dist(selfPos, avatarPos)
return currLen > q351Cfg.FollowLen + 15 and currLen <= q351Cfg.FollowLen + 1000
end, nil, "StoryWarning")
end ]]
function Quest351:OnSubFinish35101(quest)
--[[ print("35101 Finish : Warning Off")
if warningTask ~= nil then
warningTask:FinishTask()
end
if stayWarningTask ~= nil then
stayWarningTask:FinishTask()
end
local Paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
Paimon:ClearBeLockTask() ]]
end
function Quest351:OnSubStart35103(quest)
--[[ print("35103 Start : Lock Off")
local Paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
Paimon:ClearBeLockTask() ]]
end
function Quest351:OnSubFinish35103(quest)
--[[ print("35103 Finish : Lock Off")
local Paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
Paimon:ClearBeLockTask() ]]
end
function Quest351:OnSubStart35102(quest)
print("35102 Start : Paimon NPC to Shimo")
self:CallDelay(1, self.PaimonVanish)
self:NarratorOnlyTask(self.clientData.NarratorData.Story1, nil, "Story")
end
function Quest351:OnSubFinish35102(quest)
print("35102 Finish : Warning Off")
if warningTask ~= nil then
warningTask:FinishTask()
end
if stayWarningTask ~= nil then
stayWarningTask:FinishTask()
end
--self:NarratorOnlyTask(self.clientData.NarratorData.Story2)
end
--@endregion
function Quest351:Start()
end
function Quest351:OnDestroy()
end
return Quest351

View File

@@ -0,0 +1,222 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest352 = class("Quest352", questActorProxy)
Quest352.defaultAlias = "Quest352"
local q352Cfg = require('Quest/Client/Q352ClientConfig')
local warningTask = nil
local stayWarningTask = nil
-- Generated
function Quest352:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["35200"] = self.OnSubStart35200
self.subStartHandlers["35201"] = self.OnSubStart35201
self.subStartHandlers["35202"] = self.OnSubStart35202
self.subStartHandlers["35203"] = self.OnSubStart35203
self.subStartHandlers["35204"] = self.OnSubStart35204
self.subStartHandlers["35205"] = self.OnSubStart35205
end
function Quest352:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["35200"] = self.OnSubFinish35200
self.subFinishHandlers["35201"] = self.OnSubFinish35201
self.subFinishHandlers["35202"] = self.OnSubFinish35202
self.subFinishHandlers["35203"] = self.OnSubFinish35203
self.subFinishHandlers["35204"] = self.OnSubFinish35204
self.subFinishHandlers["35205"] = self.OnSubFinish35205
end
---sub start & finish 内调用的函数
function Quest352:PaimonCreat()
local PaimonData = self.clientData.PaimonData
actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, PaimonData.Pos1, PaimonData.Dir1, true, false)
self:NarratorOnlyTask(self.clientData.NarratorData.Story1)
end
function Quest352:On35201CutsceneFinish()
local PaimonData = self.clientData.PaimonData
self:RequestInteraction(PaimonData.Paimon)
end
---隐藏女神像写法待程序换处理方式后可干掉
local goddessActor;
local goddessInitPos;
function Quest352:ShowGoddess()
if goddessActor ~= nil then
goddessActor:SetPos(goddessInitPos)
goddessActor = nil
end
end
function Quest352:HideGoddess()
goddessActor = actorMgr:GetActor("Goddess_3003")
if goddessActor == nil or goddessActor == actorMgr.dummyActor then
goddessActor = nil
print("can not find Goddess_3003")
else
goddessInitPos = goddessActor:GetPos()
goddessActor:SetPos(M.Pos(goddessInitPos.x, goddessInitPos.y + 100, goddessInitPos.z))
end
end
---
function Quest352:On35204CutsceneDestroy()
print("On35204CutsceneDestroy")
self:ShowGoddess() --还原女神像
end
function Quest352:On35204CutsceneFinish()
self:ShowGoddess() --还原女神像
--完成任务35309开地图
local quest = actorMgr:GetActor(q352Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuestID(false, 35205)
end
self:CallDelay(1, self.Actionsafe)
--self:ActionSafeCall(self.InteractPaimon)
--[[ local PaimonData = self.clientData.PaimonData
self:RequestInteraction(PaimonData.Paimon) ]]
end
function Quest352:Actionsafe()
self:ActionSafeCall(self.InteractPaimon)
end
function Quest352:InteractPaimon()
local PaimonData = self.clientData.PaimonData
self:RequestInteraction(PaimonData.Paimon)
end
--@region sub start & finish handlers
---按流程触发顺序
---当OnSubFinish当前环和OnSubStart下一环等效时写在OnSubFinish内否则断线重连流程可能和OnSubStart流程重复执行
function Quest352:OnSubFinish35200(quest)
print("35200 Finish: Paimon shimo to NPC")
self.uActor:AvatarPaimonDisappear(nil, false)
self:CallDelay(2, self.PaimonCreat)
end
function Quest352:OnSubFinish35201(quest)
print("35201 Finish : Cs_BigWorldShow_Cutscene")
self:PlayCutscene(self.clientData.InterData.Cutscene1, self.On35201CutsceneFinish)
self:CallDelay(3,
function()
globalActor:ChangeDay24Time(9, true)
end
)
if stayWarningTask ~= nil then
stayWarningTask:FinishTask()
end
if warningTask ~= nil then
warningTask:FinishTask()
end
end
function Quest352:OnSubStart35202(quest)
globalActor:ChangeDay24Time(9, true)
globalActor:PlayerBackButtonOn(1, 3, "Q352View", 40, 9)
end
function Quest352:OnSubStart35203(quest)
print("35203 Start: Follow Paimon")
globalActor:PlayerBackButtonOff(1)
local Paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
self:CallDelay(5,
function()
Paimon:NarratorTask(q352Cfg.NarratorFlow, q352Cfg.FollowLen, q352Cfg.FollowLen, nil, "Story")
end
)
Paimon:BeFollowTaskByRoutePoints(q352Cfg.RoutePoints, q352Cfg.FollowLen, q352Cfg.FollowTransLen,
function(Paimon, task)
if Paimon.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(q352Cfg.ActorAlias)
if quest ~= nil then
print("35203 failed1111111")
quest:FinishQuestID(true, 35203)
end
Paimon:StopPerformNarrator()
elseif Paimon.BeFollowState == BeFollowState.SUCCESS then
Paimon:Standby()
Paimon:TurnTo(M.Euler2DirXZ(self.clientData.PaimonData.Dir5))
local quest = actorMgr:GetActor(q352Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuestID(false, 35203)
end
end
end,
function(Paimon, task)
Paimon:Standby(false)
end
-- ,nil,nil,nil,
-- function(Paimon, task)
-- local quest = actorMgr:GetActor(q352Cfg.ActorAlias)
-- if quest ~= nil then
-- print("35203 failed22222222")
-- quest:FinishQuest(true, nil)
-- end
-- end
)
-- Paimon:BeLockTask(q352Cfg.FollowTransLen, 1,
-- function(Paimon)
-- Paimon:TransFinishCallBack(q352Cfg)
-- end,
-- function(Paimon)
-- Paimon:TransPreCallBack(q352Cfg)
-- end
-- )
stayWarningTask = Paimon:WarningNarratorTask(0, q352Cfg.NarratorStayWarning, function(Paimon)
local selfPos = Paimon:GetPos()
local avatarPos = actorUtils.GetAvatarPos()
local currLen = M.Dist(selfPos, avatarPos)
return currLen > q352Cfg.FollowLen + 5 and currLen <= q352Cfg.FollowLen + 15 and Paimon:IsInIdle()
end, nil, "StoryWarning")
warningTask = Paimon:WarningNarratorTask(1, q352Cfg.NarratorWarning, function(Paimon)
local selfPos = Paimon:GetPos()
local avatarPos = actorUtils.GetAvatarPos()
local currLen = M.Dist(selfPos, avatarPos)
return currLen > q352Cfg.FollowLen + 15 and currLen < q352Cfg.FollowLen + 1000
end, nil, "StoryWarning")
end
function Quest352:OnSubFinish35203(quest)
print("35203 Finish : Clear Task")
if stayWarningTask ~= nil then
stayWarningTask:FinishTask()
end
if warningTask ~= nil then
warningTask:FinishTask()
end
local Paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
-- Paimon:ClearBeLockTask()
end
function Quest352:OnSubStart35204(quest)
print("35204 Start: ByQueen")
local Paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
Paimon:NarratorTask(q352Cfg.NarratorFlow2, 20, 20, nil)
Paimon:AirModeOn()
Paimon:ByQueen()
end
function Quest352:On35204CutsceneStart()
self:HideGoddess() --隐藏女神像,用导演自己的
end
function Quest352:OnSubFinish35204(quest)
print("35204 Finish: Cs_MDAQ010_UnlockSkill")
self:PlayCutscene(self.clientData.InterData.Cutscene2, self.On35204CutsceneFinish, self.On35204CutsceneStart, self.On35204CutsceneDestroy)
end
--@endregion
function Quest352:Start()
end
function Quest352:OnDestroy()
end
return Quest352

View File

@@ -0,0 +1,362 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest353 = class("Quest353", questActorProxy)
Quest353.defaultAlias = "Quest353"
local q353Cfg = require('Quest/Client/Q353ClientConfig')
-- Generated
function Quest353:OnSubStartHandlerBuild()
self.subStartHandlers = {}
--self.subStartHandlers["35300"] = self.OnSubStart35300
self.subStartHandlers["35301"] = self.OnSubStart35301
self.subStartHandlers["35302"] = self.OnSubStart35302
self.subStartHandlers["35303"] = self.OnSubStart35303
self.subStartHandlers["35304"] = self.OnSubStart35304
--self.subStartHandlers["35305"] = self.OnSubStart35305
--self.subStartHandlers["35306"] = self.OnSubStart35306
--self.subStartHandlers["35307"] = self.OnSubStart35307
--self.subStartHandlers["35308"] = self.OnSubStart35308
self.subStartHandlers["35309"] = self.OnSubStart35309
self.subStartHandlers["35310"] = self.OnSubStart35310
self.subStartHandlers["35311"] = self.OnSubStart35311
self.subStartHandlers["35312"] = self.OnSubStart35312
end
function Quest353:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
--self.subFinishHandlers["35300"] = self.OnSubFinish35300
self.subFinishHandlers["35301"] = self.OnSubFinish35301
self.subFinishHandlers["35302"] = self.OnSubFinish35302
self.subFinishHandlers["35303"] = self.OnSubFinish35303
self.subFinishHandlers["35304"] = self.OnSubFinish35304
--self.subFinishHandlers["35305"] = self.OnSubFinish35305
--self.subFinishHandlers["35306"] = self.OnSubFinish35306
--self.subFinishHandlers["35307"] = self.OnSubFinish35307
--self.subFinishHandlers["35308"] = self.OnSubFinish35308
self.subFinishHandlers["35309"] = self.OnSubFinish35309
self.subFinishHandlers["35310"] = self.OnSubFinish35310
self.subFinishHandlers["35311"] = self.OnSubFinish35311
self.subFinishHandlers["35312"] = self.OnSubFinish35312
end
---sub start & finish 内调用的函数
function Quest353:ShowTutorial(actor)
--[[ self:ShowTutorialDialog(102)
self:NarratorOnlyTask(self.clientData.NarratorData.Story1) ]]
end
local goddessActor;
local goddessInitPos;
function Quest353:ShowGoddess()
if goddessActor ~= nil then
goddessActor:SetPos(goddessInitPos)
goddessActor = nil
end
end
function Quest353:HideGoddess()
goddessActor = actorMgr:GetActor("Goddess_3003")
if goddessActor == nil or goddessActor == actorMgr.dummyActor then
goddessActor = nil
print("can not find Goddess_3003")
else
goddessInitPos = goddessActor:GetPos()
goddessActor:SetPos(M.Pos(goddessInitPos.x, goddessInitPos.y + 100, goddessInitPos.z))
end
end
function Quest353:On35309CutsceneFinish()
local PaimonData = self.clientData.PaimonData
actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, PaimonData.Pos4, PaimonData.Dir4, true, false)
self:RequestInteraction(PaimonData.Paimon)
self:ShowGoddess() --还原女神像
print("Finish quest to unlock Goddess")
local quest = actorMgr:GetActor(q353Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
--show paimon
local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
if paimon ~= nil then
paimon:SetVisible(true)
end
--spawn MengdeEff
self:SpawnGadget(70300051, sceneData:GetDummyPoint(3,"Q357Gaia1").pos, sceneData:GetDummyPoint(3,"Q357Gaia1").rot, "MengdeEff", 3)
end
function Quest353:On35309CutsceneDestroy()
print("On35309CutsceneDestroy")
self:ShowGoddess() --还原女神像
end
function Quest353:On35309CutsceneStart()
self:HideGoddess() --隐藏女神像,用导演自己的
--hide paimon
local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
if paimon ~= nil then
paimon:SetVisible(false)
end
end
function Quest353:PlayerName()
--[[ local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
if paimon ~= nil then
paimon:SetVisible(false)
end ]]
local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
paimon:VanishKeep()
self:ShowNameDialog(
function()
print("Finish Name Task")
local quest = actorMgr:GetActor(q353Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
)
end
function Quest353:PaimonVanish()
local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
paimon:CallDelay(1, paimon.VanishKeep)
--self:NarratorOnlyTask(self.clientData.NarratorData.Story4)
--self:SetOpenState(OpenStateType.OPEN_STATE_PAIMON, true)
end
function Quest353:Cutscene35309()
self:PlayCutscene(self.clientData.InterData.Cutscene1, self.On35309CutsceneFinish, self.On35309CutsceneStart, self.On35309CutsceneDestroy)
end
--@region sub start & finish handlers
---按流程触发顺序
function Quest353:OnSubStart35301(quest)
print("35301 start: Paimon Create")
local PaimonData = self.clientData.PaimonData
actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, PaimonData.Pos1, PaimonData.Dir1, true, false)
globalActor:PlayerBackButtonOn(2, 3, "Q353Center", 30, 9)
end
function Quest353:OnSubFinish35301(quest)
print("35301 Finish: Tutorial")
self:ActionSafeCall(self.ShowTutorial)
self:ActionSafeCall(self.PaimonVanish)
end
function Quest353:OnSubStart35302(quest)
print("35302 start: Create questarea")
local TargetData = self.clientData.TargetData
globalActor:UnSpawn(TargetData.Target1)
globalActor:SpawnGadget(TargetData.TargetID, TargetData.Pos1, TargetData.Dir1, TargetData.Target1)
self:CallDelay(5, self.TargetDes1)
--self:ActionSafeCall(self.SkillTurorial)
self:CallDelay(1,self.Skill)
--[[ local PaimonData = self.clientData.PaimonData
local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
paimon:RunToTask(self.clientData.PaimonData.Pos2,
function(actor, task)
actor:DoFreeStyle(1291)
actor:TurnTo(M.Euler2DirXZ(self.clientData.PaimonData.Dir2))
end
) ]]
--self:ActionSafeCall(self.ShowTutorial)
--self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q353Monster1").pos, 1, 2, true)
globalActor:PlayerBackButtonOff(2)
--[[ local questArea = gadgetFactory.CreateQuestArea("QuestCenter1", 0, sceneData:GetDummyPoint(3, "Q353Center").pos, 50, 10,
function(area)
print("ImIn")
end,
function(area)
print("ImOut")
actorUtils.ShowMessage("正在离开任务区域,请尽快返回")
end,
function(area)
print("ImDelayOut")
actorUtils.ShowMessage("已离开任务区域,任务失败")
local quest = actorMgr:GetActor(q353Cfg.ActorAlias)
if quest ~= nil then
quest:UnFinishQuest(true, nil)
end
end) ]]
end
function Quest353:TargetDes1(quest)
local TargetData = self.clientData.TargetData
globalActor:UnSpawn(TargetData.Target1)
end
function Quest353:Skill(quest)
print("Skill")
self:ActionSafeCall(self.SkillTurorial)
end
function Quest353:SkillTurorial(quest)
print("SkillTurorial")
self:TransmitPlayer(3, sceneData:GetDummyPoint(3, "Q353SetAvatar").pos, sceneData:GetDummyPoint(3, "Q353SetAvatar").rot)
globalActor:StartGuide("GuideElementSkill")
end
function Quest353:OnSubStart35303(quest)
print("35303 start: Paimon to Act2")
--self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q353Monster2").pos, 1, 2, true)
--[[ local PaimonData = self.clientData.PaimonData
local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
paimon:RunToTask(self.clientData.PaimonData.Pos3,
function(actor, task)
actor:DoFreeStyle(1291)
actor:TurnTo(M.Euler2DirXZ(self.clientData.PaimonData.Dir3))
end
) ]]
--self:NarratorOnlyTask(self.clientData.NarratorData.Story2)
local TargetData = self.clientData.TargetData
globalActor:UnSpawn(TargetData.Target2)
globalActor:SpawnGadget(TargetData.TargetID, TargetData.Pos2, TargetData.Dir2, TargetData.Target2)
self:CallDelay(5, self.TargetDes2)
self:CallDelay(1,
function()
globalActor:EndGuide("GuideElementSkill")
globalActor:EndGuide("GuideElementSkillPC")
globalActor:StartGuide("GuideElementSkillHold")
end
)
end
function Quest353:TargetDes2(quest)
local TargetData = self.clientData.TargetData
globalActor:UnSpawn(TargetData.Target2)
end
function Quest353:OnSubStart35304(quest)
print("35304 start: Paimon to Act3")
--[[ local PaimonData = self.clientData.PaimonData
local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
paimon:RunToTask(self.clientData.PaimonData.Pos5,
function(actor, task)
actor:DoFreeStyle(1291)
actor:TurnTo(M.Euler2DirXZ(self.clientData.PaimonData.Dir5))
end
) ]]
--self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q353Monster3").pos, 1, 2, true)
--self:NarratorOnlyTask(self.clientData.NarratorData.Story3)
local BallData = self.clientData.BallData
globalActor:SpawnItem(BallData.BallID, BallData.BallPos,nil,"Ball")
globalActor:SpawnItem(BallData.BallID, BallData.BallPos,nil,"Ball")
globalActor:SpawnItem(BallData.BallID, BallData.BallPos,nil,"Ball")
local TargetData = self.clientData.TargetData
globalActor:UnSpawn(TargetData.Target3)
globalActor:SpawnGadget(TargetData.TargetID, TargetData.Pos3, TargetData.Dir3, TargetData.Target3)
self:CallDelay(5, self.TargetDes3)
self:CallDelay(1,
function()
globalActor:EndGuide("GuideElementSkillHold")
globalActor:EndGuide("GuideElementSkillHoldPC")
globalActor:StartGuide("GuideElementSkillBurst")
end
)
end
function Quest353:TargetDes3(quest)
local TargetData = self.clientData.TargetData
globalActor:UnSpawn(TargetData.Target3)
end
function Quest353:OnSubFinish35304(quest)
print("35304 Finish: Endguide")
globalActor:EndGuide("GuideElementSkillBurst")
globalActor:EndGuide("GuideElementSkillBurstPC")
end
-- function Quest353:OnSubStart35308(quest)
-- print("35308 start: Show Paimon")
-- --[[ local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
-- if paimon ~= nil then
-- paimon:SetVisible(true)
-- end ]]
-- local PaimonData = self.clientData.PaimonData
-- actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, PaimonData.Pos5, PaimonData.Dir5, true, false)
-- self:RequestInteraction(PaimonData.Paimon)
-- end
--[[ function Quest353:OnSubStart35309(quest)
print("35309 Start : Cs_MdGoddess_Lite01_CamMove")
self:ActionSafeCall(self.Cutscene35309)
--self:PlayCutscene(self.clientData.InterData.Cutscene1, self.On35309CutsceneFinish, self.On35309CutsceneStart)
end ]]
--[[ function Quest353:OnSubFinish35308(quest)
print("35308 Finish : Paimon Vanish")
self:ActionSafeCall(self.PaimonVanish)
end ]]
function Quest353:OnSubStart35312(quest)
print("35312 start: Questarea")
actorMgr:CreateActorWithPos("Q353Trigger1", "Actor/Gadget/Q353Trigger1", 70900002, 0, sceneData:GetDummyPoint(3,"Q353Center").pos, sceneData:GetDummyPoint(3,"Q353Center").rot, true, false)
actorMgr:CreateActorWithPos("Q353Trigger2", "Actor/Gadget/Q353Trigger2", 70900002, 0, sceneData:GetDummyPoint(3,"Q353Center").pos, sceneData:GetDummyPoint(3,"Q353Center").rot, true, false)
--[[ local PaimonData = self.clientData.PaimonData
local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
paimon:RunToTask(self.clientData.PaimonData.Pos2,
function(actor, task)
actor:DoFreeStyle(1291)
actor:TurnTo(M.Euler2DirXZ(self.clientData.PaimonData.Dir2))
end
) ]]
--self:ActionSafeCall(self.ShowTutorial)
--[[ local questArea = gadgetFactory.CreateQuestArea("QuestCenter1", 0, sceneData:GetDummyPoint(3, "Q353Center").pos, 50, 10,
function(area)
print("ImIn")
end,
function(area)
print("ImOut")
actorUtils.ShowMessage("正在离开任务区域,请尽快返回")
end,
function(area)
print("ImDelayOut")
actorUtils.ShowMessage("已离开任务区域,任务失败")
local quest = actorMgr:GetActor(q353Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuestID(true, 35312)
end
end) ]]
local TargetData = self.clientData.TargetData
globalActor:UnSpawn(TargetData.Target1)
globalActor:UnSpawn(TargetData.Target2)
globalActor:UnSpawn(TargetData.Target3)
end
function Quest353:OnSubFinish35312(quest)
print("35312 Finish: Questarea Des")
globalActor:UnSpawn("Q353Trigger1")
globalActor:UnSpawn("Q353Trigger2")
local Q353Trigger1Actor = actorMgr:GetActor("Q353Trigger1")
Q353Trigger1Actor:DestroySelf()
local Q353Trigger2Actor = actorMgr:GetActor("Q353Trigger2")
Q353Trigger2Actor:DestroySelf()
end
function Quest353:OnSubFinish35311(quest)
print("35311 Finish: Story5")
self:NarratorOnlyTask(self.clientData.NarratorData.Story5, self.OnNarratorFinish)
globalActor:EndGuide("GuideElementSkillBurst")
globalActor:EndGuide("GuideElementSkillBurstPC")
end
function Quest353:OnNarratorFinish()
globalActor:StartGuide("GuideViewHotkey")
end
function Quest353:InvokeOnInteraction(param)
if param == 1 then
print("Now Spawn Tears")
--[[ local MonsterData = self.clientData.MonsterData
self:SpawnMonster(MonsterData.MonsterID, 1, MonsterData.Pos1) ]]
elseif param == 2 then
print("Show Name Dialog")
self:PlayerName()
--self:ActionSafeCall(self.PlayerName)
end
end
--@endregion
function Quest353:Start()
end
function Quest353:OnDestroy()
end
return Quest353

View File

@@ -0,0 +1,127 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest354 = class("Quest354", questActorProxy)
Quest354.defaultAlias = "Quest354"
local q354Cfg = require('Quest/Client/Q354ClientConfig')
-- Generated
function Quest354:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["35401"] = self.OnSubStart35401
self.subStartHandlers["35402"] = self.OnSubStart35402
self.subStartHandlers["35403"] = self.OnSubStart35403
self.subStartHandlers["35404"] = self.OnSubStart35404
self.subStartHandlers["35405"] = self.OnSubStart35405
end
function Quest354:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["35401"] = self.OnSubFinish35401
self.subFinishHandlers["35402"] = self.OnSubFinish35402
self.subFinishHandlers["35403"] = self.OnSubFinish35403
self.subFinishHandlers["35404"] = self.OnSubFinish35404
self.subFinishHandlers["35405"] = self.OnSubFinish35405
end
---sub start & finish 内调用的函数
function Quest354:On35401CutsceneFinish()
local AmborData = self.clientData.AmborData
self:RequestInteraction(AmborData.Ambor)
end
function Quest354:AmborHide()
self:ShowBlackScreen(1.0, 1.0, 1.0,
function(self)
--完成任务刷史莱姆
--[[ local quest = actorMgr:GetActor(q354Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuestID(false, 35402)
end ]]
local AmborData = self.clientData.AmborData
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos2, AmborData.Dir2, true, false)
local PaimonData = self.clientData.PaimonData
actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, PaimonData.Pos1, PaimonData.Dir1, true)
--开始教程
--globalActor:StartGuide("GuideChooseAmbor")
--转镜头看目标
globalActor:StopLocalAvatar()
globalActor:EnablePlayerInput(false)
self:CallDelay(3, self.OnEnableInputAndStartGuide)
self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q354Center").pos, 0, 3, true)
actorUtils.SetAvatarEuler(sceneData:GetDummyPoint(3,"Q354SetAvatar").rot)
end
)
end
function Quest354:OnEnableInputAndStartGuide()
print("354 Finish: Enable Player Input")
globalActor:EnablePlayerInput(true)
--开始教程
globalActor:StartGuide("GuideChooseAmbor")
end
function Quest354:On35403CutsceneFinish()
local AmborData = self.clientData.AmborData
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos3, AmborData.Dir3, true, false)
end
--@region sub start & finish handlers
---按流程触发顺序
function Quest354:OnSubFinish35401(quest)
print("35401 Finish : Cs_AM_FirstArrive_CutScene2")
globalActor:StopLocalAvatar()
local AmborData = self.clientData.AmborData
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos1, AmborData.Dir1, true, false)
self:PlayCutscene(self.clientData.InterData.Cutscene1, self.On35401CutsceneFinish)
end
--[[ function Quest354:OnSubStart35402(quest)
print("35402 Start : Creat Ambor")
local AmborData = self.clientData.AmborData
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos1, AmborData.Dir1, true, false)
end ]]
function Quest354:OnSubFinish35402(quest)
print("35402 Finish: Ambor VanishDirect Show TeamPage")
self:ActionSafeCall(self.AmborHide)
end
function Quest354:OnSubFinish35403(quest)
print("35403 Finish: Cs_MDAQ018_MDCityShow")
local Q354Trigger1Actor = actorMgr:GetActor("Q354Trigger1")
Q354Trigger1Actor:DestroySelf()
self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q360qqLook1").pos, 1, 2, true)
self:NarratorOnlyTask(self.clientData.NarratorData.Story3)
globalActor:StopLocalAvatar()
globalActor:EnablePlayerInput(false)
self:CallDelay(2, self.OnEnableInput)
--globalActor:PlayAudioState("StateGroup_musicEmotion", "State_musicNormal")
--[[ globalActor:FinishAllNarrator()
self:PlayCutscene(self.clientData.InterData.Cutscene2, self.On35403CutsceneFinish) ]]
end
function Quest354:OnEnableInput()
print("354 Finish: Enable Player Input")
globalActor:EnablePlayerInput(true)
end
function Quest354:OnSubFinish35404(quest)
print("35404 Finish: trigger1")
--self:NarratorOnlyTask(q354Cfg.NarratorData.Story2, nil, "Story")
actorMgr:CreateActorWithPos("Q354Trigger1", "Actor/Gadget/Q354Trigger1", 70900002, 0, sceneData:GetDummyPoint(3,"Q354SetAvatar").pos, sceneData:GetDummyPoint(3,"Q354SetAvatar").rot, true, false)
end
function Quest354:OnSubFinish35405(quest)
print("35405 Finish: Story4")
self:NarratorOnlyTask(q354Cfg.NarratorData.Story2, nil, "Story")
end
--@endregion
function Quest354:Start()
end
function Quest354:OnDestroy()
end
return Quest354

View File

@@ -0,0 +1,137 @@
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

View File

@@ -0,0 +1,265 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest356 = class("Quest356", questActorProxy)
Quest356.defaultAlias = "Quest356"
local q356Cfg = require('Quest/Client/Q356ClientConfig')
local amborData = q356Cfg.AmborData
-- Generated
function Quest356:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["35601"] = self.OnSubStart35601
self.subStartHandlers["35602"] = self.OnSubStart35602
self.subStartHandlers["35603"] = self.OnSubStart35603
self.subStartHandlers["35604"] = self.OnSubStart35604
self.subStartHandlers["35605"] = self.OnSubStart35605
self.subStartHandlers["35606"] = self.OnSubStart35606
end
function Quest356:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["35601"] = self.OnSubFinish35601
self.subFinishHandlers["35602"] = self.OnSubFinish35602
self.subFinishHandlers["35603"] = self.OnSubFinish35603
self.subFinishHandlers["35604"] = self.OnSubFinish35604
self.subFinishHandlers["35605"] = self.OnSubFinish35605
self.subFinishHandlers["35606"] = self.OnSubFinish35606
end
---sub start & finish 内调用的函数
--@region sub start & finish handlers
function Quest356:AmborRoute()
print("Ambor run to godless")
local ambor = actorMgr:GetActor(self.clientData.AmborData.Ambor)
ambor:BeFollowTaskByRoutePoints(self.clientData.AmborRouteData.routeConfig, self.clientData.AmborRouteData.beFollowLen, self.clientData.AmborRouteData.beFollowFailed)
end
function Quest356:Story1()
--self:NarratorOnlyTask(self.clientData.NarratorData.Story1, nil, "Story")
local AmborData = self.clientData.AmborData
--actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos3, AmborData.Dir3, true, false)
local ambor = actorMgr:GetActor(self.clientData.AmborData.Ambor)
ambor:NarratorTaskByData(self.clientData.NarratorData.Story1, nil)
ambor:ClearFollowTask()
--[[ ambor:BeFollowTaskByData(self.clientData.FollowData.Follow1,
function(ambor, task)
if ambor.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(self.clientData.ActorAlias)
if quest ~= nil then
quest:FinishQuest(true, nil)
end
ambor:StopNarrator()
elseif ambor.BeFollowState == BeFollowState.SUCCESS then
ambor:Standby()
ambor:TurnTo(M.Euler2DirXZ(self.clientData.AmborData.Dir3))
local quest = actorMgr:GetActor(self.clientData.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
end,
function(ambor, task)
ambor:Standby()
end
) ]]
--ambor:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
ambor:RunToTask(self.clientData.AmborData.born4Pos,
function(actor, task)
actor:ClearFollowTask()
actor:ClearPriorityInter(InterTimingType.BTN)
actor:TurnTo(M.Euler2DirXZ(self.clientData.AmborData.born4Dir))
end
)
--[[ local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
paimon:DestroyWithDisappear(false) ]]
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
--[[ function Quest356:On35602CutsceneFinish()
local AmborData = self.clientData.AmborData
self:RequestInteraction(AmborData.Ambor)
local StoneData = self.clientData.StoneData
globalActor:UnSpawn("Stone")
globalActor:SpawnGadget(StoneData.StoneID, StoneData.StonePos,StoneData.StoneDir,"Stone")
end ]]
function Quest356:OnBright()
local AmborData = self.clientData.AmborData
--globalActor:CreateActorWithPos(self.clientData.AmborData.Ambor, self.clientData.AmborData.AmborScript, self.clientData.AmborData.AmborID, 0, self.clientData.AmborData.Pos2, self.clientData.AmborData.Dir2, true, false)
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos2, AmborData.Dir2, true, false)
end
-- function Quest356:On35601CutsceneFinish()
-- local AmborData = self.clientData.AmborData
-- actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos2, AmborData.Dir2, true, false)
-- end
function Quest356:OnEnableInput()
globalActor:EnablePlayerInput(true)
end
--@endregion
--@region sub start & finish handlers
---按流程触发顺序
function Quest356:OnSubStart35601(quest)
print("35601 Start : ......")
globalActor:PlayAudioState("StateGroup_musicEmotion", "State_musicNormal")
-- print("35601 Start : Creat Ambor")
-- local AmborData = self.clientData.AmborData
-- actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos2, AmborData.Dir2, true, false)
--[[ globalActor:StopLocalAvatar()
globalActor:EnablePlayerInput(false)
self:CallDelay(2, self.OnEnableInput)
self:ShowBlackScreen(1.0, 1.0, 2.0, self.OnBright) ]]
--[[ local AmborData = self.clientData.AmborData
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos1, AmborData.Dir1, true, false)
local ambor = actorMgr:GetActor(self.clientData.AmborData.Ambor)
ambor:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
ambor:RunToTask(self.clientData.AmborData.Pos2,
function(actor, task)
actor:ClearFollowTask()
actor:ClearPriorityInter(InterTimingType.BTN)
actor:Standby()
actor:TurnTo(M.Euler2DirXZ(self.clientData.AmborData.Dir2))
end
) ]]
end
function Quest356:OnSubStart35602(quest)
print("35602 Start : Follow Ambor")
--self:NarratorOnlyTask(self.clientData.NarratorData.Story1, nil, "Story")
-- globalActor:PlayAudioState("StateGroup_musicEmotion", "State_musicNormal")
-- self:ActionSafeCall(self.Story1)
--[[ local ambor = actorMgr:GetActor(self.clientData.AmborData.Ambor)
ambor:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
ambor:RunToTask(self.clientData.AmborData.Pos3,
function(actor, task)
actor:ClearFollowTask()
actor:ClearPriorityInter(InterTimingType.BTN)
actor:TurnTo(M.Euler2DirXZ(self.clientData.AmborData.Dir3))
end
) ]]
end
function Quest356:OnSubStart35603(quest)
print("35603 Start : Ambor Route")
end
function Quest356:OnSubStart35604(quest)
print("35604 Start : ...")
end
function Quest356:OnSubStart35605(quest)
print("35605 Start : ...")
local quest = actorMgr:GetActor(q356Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
function Quest356:OnSubStart35606(quest)
print("35606 Start : ...")
self:ActionSafeCall(
function (self)
self:TransmitPlayer(3, self.clientData.FlyTrainData.StartPos, self.clientData.FlyTrainData.StartDir, function ()
globalActor:StartGuide("GuideAvatarFly")
globalActor:StartGuide("GuideAvatarFlyPC")
globalActor:StartGuide("GuideAvatarFlyWarningInfo")
end,
function ()
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:Destroy(false)
end
globalActor:ChangeToHero()
actorMgr:CreateActorWithPos(amborData.Ambor, amborData.AmborScript, amborData.AmborID, 0, amborData.born5Pos, amborData.born5Dir, true)
end
)
end
)
end
function Quest356:OnSubFinish35601(quest)
print("35601 Finish : ...")
self:ActionSafeCall(
function (self)
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
)
self:CallDelay(3,
function (self)
self:NarratorOnlyTask(q356Cfg.NarratorData.Story1.dialogList,
function (self)
globalActor:StartGuide("GuideQuestGuide")
end,
"Story")
end
)
end
)
end
function Quest356:OnSubFinish35602(quest)
print("35602 Finish : Play Cutscene & Creat Stone")
--self:PlayCutscene(self.clientData.InterData.Cutscene1)
--self:PlayCutscene(self.clientData.InterData.Cutscene1, self.On35602CutsceneFinish)
--[[ local StoneData = self.clientData.StoneData
globalActor:UnSpawn("Stone")
globalActor:SpawnGadget(StoneData.StoneID, StoneData.StonePos,StoneData.StoneDir,"Stone") ]]
end
function Quest356:OnSubFinish35603(quest)
print("35603 Finish : ...")
self:ShowBlackScreen(0.5, 1.0, 0.5,
function (self)
actorMgr:CreateActorWithPos(amborData.Ambor, amborData.AmborScript, amborData.AmborID, 0, amborData.born4Pos, amborData.born4Dir, true)
self:CallDelay(0.5,
function (slef)
self:RequestInteraction(amborData.Ambor)
end
)
end
)
end
function Quest356:OnSubFinish35604(quest)
print("35604 Finish : ...")
end
function Quest356:OnSubFinish35605(quest)
print("35605 Finish : ...")
end
function Quest356:OnSubFinish35606(quest)
print("35606 Finish : ...")
end
--@endregion
function Quest356:Start()
end
function Quest356:OnDestroy()
end
return Quest356

View File

@@ -0,0 +1,678 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest357 = class("Quest357", questActorProxy)
Quest357.defaultAlias = "Quest357"
local DailyNpcManager = require('Actor/DailyNPCManager')
local q357Cfg = require('Quest/Client/Q357ClientConfig')
local AmborData = q357Cfg.AmborData
local GaiaData = q357Cfg.GaiaData
local Q357NPC1Data = q357Cfg.Q357NPC1Data
local Q357NPC2Data = q357Cfg.Q357NPC2Data
local Q357NPC3Data = q357Cfg.Q357NPC3Data
local Q357NPC4Data = q357Cfg.Q357NPC4Data
local Q357NPC5Data = q357Cfg.Q357NPC5Data
local Q357NPC6Data = q357Cfg.Q357NPC6Data
-- Generated
function Quest357:OnSubStartHandlerBuild()
self.subStartHandlers = {}
-- self.subStartHandlers["35701"] = self.OnSubStart35701
-- self.subStartHandlers["35702"] = self.OnSubStart35702
-- self.subStartHandlers["35703"] = self.OnSubStart35703
-- self.subStartHandlers["35704"] = self.OnSubStart35704
-- self.subStartHandlers["35705"] = self.OnSubStart35705
-- self.subStartHandlers["35706"] = self.OnSubStart35706
-- self.subStartHandlers["35707"] = self.OnSubStart35707
-- self.subStartHandlers["35708"] = self.OnSubStart35708
-- self.subStartHandlers["35709"] = self.OnSubStart35709
-- self.subStartHandlers["35710"] = self.OnSubStart35710
self.subStartHandlers["35711"] = self.OnSubStart35711
self.subStartHandlers["35721"] = self.OnSubStart35721
self.subStartHandlers["35722"] = self.OnSubStart35722
self.subStartHandlers["35723"] = self.OnSubStart35723
self.subStartHandlers["35724"] = self.OnSubStart35724
self.subStartHandlers["35725"] = self.OnSubStart35725
end
function Quest357:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
-- self.subFinishHandlers["35701"] = self.OnSubFinish35701
-- self.subFinishHandlers["35702"] = self.OnSubFinish35702
-- self.subFinishHandlers["35703"] = self.OnSubFinish35703
-- self.subFinishHandlers["35704"] = self.OnSubFinish35704
-- self.subFinishHandlers["35705"] = self.OnSubFinish35705
-- self.subFinishHandlers["35706"] = self.OnSubFinish35706
-- self.subFinishHandlers["35707"] = self.OnSubFinish35707
-- self.subFinishHandlers["35708"] = self.OnSubFinish35708
-- self.subFinishHandlers["35709"] = self.OnSubFinish35709
-- self.subFinishHandlers["35710"] = self.OnSubFinish35710
self.subFinishHandlers["35711"] = self.OnSubFinish35711
self.subFinishHandlers["35721"] = self.OnSubFinish35721
self.subFinishHandlers["35722"] = self.OnSubFinish35722
self.subFinishHandlers["35723"] = self.OnSubFinish35723
self.subFinishHandlers["35724"] = self.OnSubFinish35724
self.subFinishHandlers["35725"] = self.OnSubFinish35725
end
---sub start & finish 内调用的函数
--@region sub start & finish
function Quest357:GaiaVanish()
local gaia = actorMgr:GetActor(GaiaData.Gaia)
if gaia ~= nil then
gaia:SetVisible(false)
end
local ambor = actorMgr:GetActor(AmborData.Ambor)
if ambor ~= nil then
ambor:SetVisible(false)
end
end
function Quest357:AmborVanish()
self:ShowBlackScreen(0.5, 1.0, 0.5,
function(self)
local ambor = actorMgr:GetActor(AmborData.Ambor)
if ambor ~= nil then
ambor:Destroy(false)
end
end
)
end
function Quest357:TotorialContent()
local ambor = actorMgr:GetActor("Ambor")
ambor:NarratorOnlyTask(q357Cfg.NarratorData.FlyTutorial)
end
function Quest357:NarratorFly()
local AmborData = self.clientData.AmborData
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos3, AmborData.Dir3, true, false)
self:ShowTutorialDialog(150)
--self:ShowTutorialDialog(150, self.TotorialContent)
--self:NarratorOnlyTask(self.clientData.NarratorData.FlyTutorial)
--[[ local TargetData = self.clientData.TargetData
globalActor:UnSpawn(TargetData.Target4)
globalActor:SpawnGadget(TargetData.TargetID, TargetData.Pos4, TargetData.Dir4, TargetData.Target4) ]]
end
function Quest357:FlyTutorial()
self:ShowBlackScreen(1.0, 1.0, 2.0, self.NarratorFly, nil)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
--[[ local AmborData = self.clientData.AmborData
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos3, AmborData.Dir3, true, false)
self:NarratorOnlyTask(self.clientData.NarratorData.FlyTutorial)
local TargetData = self.clientData.TargetData
--globalActor:UnSpawn(TargetData.Target4)
globalActor:SpawnGadget(TargetData.TargetID, TargetData.Pos4, TargetData.Dir4, TargetData.Target4) ]]
end
function Quest357:BeforeShoot()
self:ShowBlackScreen(1.0, 1.0, 2.0, self.ShootTutorial, nil)
end
function Quest357:ShootTutorial()
local TargetData = self.clientData.TargetData
globalActor:UnSpawn(TargetData.Target1)
globalActor:UnSpawn(TargetData.Target2)
globalActor:SpawnGadget(TargetData.TargetID, TargetData.Pos1, TargetData.Dir1, TargetData.Target1)
globalActor:SpawnGadget(TargetData.TargetID, TargetData.Pos2, TargetData.Dir2, TargetData.Target2)
--Temp Hide Paimon
local PaimonData = self.clientData.PaimonData
actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, PaimonData.hiddenPos, PaimonData.hiddenDir, true, false)
local AmborData = self.clientData.AmborData
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.hiddenPos, AmborData.hiddenDir, true, false)
self:NarratorOnlyTask(self.clientData.NarratorData.ShootTutorial)
end
function Quest357:Story1()
self:NarratorOnlyTask(self.clientData.NarratorData.Story1, nil, "Story")
end
function Quest357:Story2()
self:NarratorOnlyTask(self.clientData.NarratorData.Story2, nil, "Story")
end
function Quest357:On35701CutsceneFinish()
local AmborData = self.clientData.AmborData
self:RequestInteraction(AmborData.Ambor)
local Stone3Data = self.clientData.Stone3Data
globalActor:UnSpawn(Stone3Data.Stone3)
globalActor:SpawnGadget(Stone3Data.StoneID, Stone3Data.Pos3, Stone3Data.Dir3, Stone3Data.Stone3)
local TargetData = self.clientData.TargetData
globalActor:UnSpawn(TargetData.Target3)
globalActor:SpawnGadget(TargetData.TargetID, TargetData.Pos3, TargetData.Dir3, TargetData.Target3)
--dragon fly
self:PlayFreeCutscene(self.clientData.InterData.DragonCutScene,nil, nil)
end
function Quest357:On35722CutsceneFinish()
local AmborData = self.clientData.AmborData
self:TransmitPlayer(3, sceneData:GetDummyPoint(3,"Q35707Player").pos, sceneData:GetDummyPoint(3,"Q35707Player").rot, nil,
function (self)
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos4, AmborData.Dir4, true, false)
self:PlayCutscene(self.clientData.InterData.Cutscene3,
function (self)
self:RequestInteraction(AmborData.Ambor)
end
)
end
)
end
function Quest357:DesStone4()
local StoneData = self.clientData.SpecialStoneData
globalActor:UnSpawn(StoneData.Stone4)
end
--@endregion
--老的一阶段脚本
--@region old quest sub start & finish handlers
---按流程触发顺序
--[[ function Quest357:OnSubStart35701(quest)
print("35701 Start : Creat Ambor")
local AmborData = self.clientData.AmborData
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos1, AmborData.Dir1, true, false)
local StoneData = self.clientData.StoneData
globalActor:UnSpawn("Stone")
globalActor:SpawnGadget(StoneData.StoneID, StoneData.Pos1,StoneData.Dir1,"Stone")
end ]]
function Quest357:OnSubStart35701(quest)
print("35701 Start : Creat Ambor & Environment")
--[[ -- creat stone
local StoneData = self.clientData.StoneData
globalActor:UnSpawn(StoneData.Stone3)
globalActor:SpawnGadget(StoneData.StoneID, StoneData.Pos3, StoneData.Dir3, StoneData.Stone3) ]]
local AmborData = self.clientData.AmborData
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos1, AmborData.Dir1, true, false)
--play cutscene
self:PlayCutscene(self.clientData.InterData.Cutscene2, self.On35701CutsceneFinish)
--ambor run to first wind
--creat wind
local WindData = self.clientData.WindData
local RiseDir = {x=0,y=0,z=0}
globalActor:SpawnGadget(WindData.WindID, WindData.Pos1,M.Dir2Euler(RiseDir),WindData.Wind1)
globalActor:SpawnGadget(WindData.WindID, WindData.Pos2,M.Dir2Euler(RiseDir),WindData.Wind2)
globalActor:SpawnGadget(WindData.WindID, WindData.Pos3,M.Dir2Euler(RiseDir),WindData.Wind3)
globalActor:SpawnGadget(WindData.WindID, WindData.Pos4,M.Dir2Euler(RiseDir),WindData.Wind4)
globalActor:SpawnGadget(WindData.WindID, WindData.Pos5,M.Dir2Euler(RiseDir),WindData.Wind5)
globalActor:SpawnGadget(WindData.WindID, WindData.Pos6,M.Dir2Euler(RiseDir),WindData.Wind6)
globalActor:SpawnGadget(WindData.WindID, WindData.Pos7,M.Dir2Euler(RiseDir),WindData.Wind7)
--creat skybox
--local SkyboxData = self.clientData.SkyboxData
--globalActor:SpawnLocalGadget("Skybox", SkyboxData.SkyboxID, SkyboxData.SkyboxPos, M.Dir2Euler(RiseDir))
--change weather
globalActor:ChangeWeather ("Blustery")
--creat wall
local WallData = self.clientData.WallData
--globalActor:SpawnLocalGadget("Wall", WallData.WallID, WallData.WallPos, WallData.WallDir)
globalActor:SpawnGadget(WallData.WallID, WallData.WallPos, WallData.WallDir,"Wall")
--change music
globalActor:PlayAudioState("StateGroup_musicEmotion", "State_musicAgitated")
--dragon fly
--self:PlayFreeCutscene(self.clientData.InterData.DragonCutScene,nil, nil)
--creat Q357NPC
actorMgr:CreateActorWithPos(Q357NPC1Data.Q357NPC1, Q357NPC1Data.Q357NPC1Script, Q357NPC1Data.Q357NPC1ID, 0, Q357NPC1Data.Pos1, Q357NPC1Data.Dir1, true, false)
--local Q357NPC1 = actorMgr:GetActor("Q357NPC1")
--Q357NPC1:DoFreeStyle(362)
actorMgr:CreateActorWithPos(Q357NPC2Data.Q357NPC2, Q357NPC2Data.Q357NPC2Script, Q357NPC2Data.Q357NPC2ID, 0, Q357NPC2Data.Pos1, Q357NPC2Data.Dir1, true, false)
--local Q357NPC2 = actorMgr:GetActor("Q357NPC2")
--Q357NPC2:DoFreeStyle(362)
actorMgr:CreateActorWithPos(Q357NPC3Data.Q357NPC3, Q357NPC3Data.Q357NPC3Script, Q357NPC3Data.Q357NPC3ID, 0, Q357NPC3Data.Pos1, Q357NPC3Data.Dir1, true, false)
--local Q357NPC3 = actorMgr:GetActor("Q357NPC3")
--Q357NPC3:DoFreeStyle(362)
actorMgr:CreateActorWithPos(Q357NPC4Data.Q357NPC4, Q357NPC4Data.Q357NPC4Script, Q357NPC4Data.Q357NPC4ID, 0, Q357NPC4Data.Pos1, Q357NPC4Data.Dir1, true, false)
--local Q357NPC4 = actorMgr:GetActor("Q357NPC4")
--Q357NPC4:DoFreeStyle(362)
actorMgr:CreateActorWithPos(Q357NPC5Data.Q357NPC5, Q357NPC5Data.Q357NPC5Script, Q357NPC5Data.Q357NPC5ID, 0, Q357NPC5Data.Pos1, Q357NPC5Data.Dir1, true, false)
--local Q357NPC5 = actorMgr:GetActor("Q357NPC5")
--Q357NPC5:DoFreeStyle(362)
actorMgr:CreateActorWithPos(Q357NPC6Data.Q357NPC6, Q357NPC6Data.Q357NPC6Script, Q357NPC6Data.Q357NPC6ID, 0, Q357NPC6Data.Pos1, Q357NPC6Data.Dir1, true, false)
--local Q357NPC6 = actorMgr:GetActor("Q357NPC6")
--Q357NPC6:DoFreeStyle(362)
print("-----------Notify NPC to Panic-----------")
local MengdeNpcList=DailyNpcManager.GetMengdeNpcListSpecial()
for i=1, #MengdeNpcList do
self:NotifyTo(MengdeNpcList[i], DailyNpcManager.NpcEventType.HIDESELF, true)
end
end
function Quest357:OnSubFinish35701(quest)
print("35701 Finish : Hide Paimon")
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
end
function Quest357:OnSubFinish35702(quest)
print("35702 Finish : Ambor Run")
--dragon fly
self:PlayFreeCutscene(self.clientData.InterData.DragonCutScene,nil, nil)
--ambor run to first wind
local ambor = actorMgr:GetActor(self.clientData.AmborData.Ambor)
ambor:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
ambor:RunToTask(self.clientData.AmborData.Pos2,
function(actor, task)
actor:ClearFollowTask()
actor:ClearPriorityInter(InterTimingType.BTN)
actor:Standby()
actor:TurnTo(M.Euler2DirXZ(self.clientData.AmborData.Dir2))
end
)
local TargetData = self.clientData.TargetData
globalActor:UnSpawn(TargetData.Target3)
end
function Quest357:OnSubFinish35703(quest)
print("35703 Finish : Creat Ambor & FlyTutorial")
--local AmborData = self.clientData.AmborData
--actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos3, AmborData.Dir3, true, false)
--self:NarratorOnlyTask(self.clientData.NarratorData.FlyTutorial)
self:ActionSafeCall(self.FlyTutorial)
end
function Quest357:OnSubFinish35704(quest)
print("35704 Finish : Creat Stone")
--[[ local StoneData = self.clientData.StoneData
globalActor:UnSpawn(StoneData.Stone1)
globalActor:UnSpawn(StoneData.Stone2)
globalActor:SpawnGadget(StoneData.StoneID, StoneData.Pos1, StoneData.Dir1, StoneData.Stone1)
globalActor:SpawnGadget(StoneData.StoneID, StoneData.Pos2, StoneData.Dir2, StoneData.Stone2) ]]
--[[ local TargetData = self.clientData.TargetData
globalActor:UnSpawn(TargetData.Target4) ]]
end
function Quest357:OnSubFinish35705(quest)
print("35705 Finish : ShootTutorial")
--local AmborData = self.clientData.AmborData
--actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.hiddenPos, AmborData.hiddenDir, true, false)
--self:NarratorOnlyTask(self.clientData.NarratorData.ShootTutorial)
self:ActionSafeCall(self.BeforeShoot)
--self:ActionSafeCall(self.ShootTutorial)
--[[ local TargetData = self.clientData.TargetData
--globalActor:UnSpawn(TargetData.Target1)
globalActor:SpawnGadget(TargetData.TargetID, TargetData.Pos1, TargetData.Dir1, TargetData.Target1)
--Temp Hide Paimon
local PaimonData = self.clientData.PaimonData
actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, PaimonData.hiddenPos, PaimonData.hiddenDir, true, false)
]]
end
function Quest357:OnSubFinish35706(quest)
print("35706 Finish : Story1")
--self:NarratorOnlyTask(self.clientData.NarratorData.Story1, nil, "Story")
self:ActionSafeCall(self.Story1)
--local StoneData = self.clientData.StoneData
--globalActor:UnSpawn(StoneData.Stone2)
--globalActor:SpawnGadget(StoneData.StoneID, StoneData.Pos2, StoneData.Dir2, StoneData.Stone2)
local TargetData = self.clientData.TargetData
globalActor:UnSpawn(TargetData.Target1)
--globalActor:SpawnGadget(TargetData.TargetID, TargetData.Pos2, TargetData.Dir2, TargetData.Target2)
end
function Quest357:OnSubFinish35707(quest)
print("35707 Finish : Creat Stone 4th")
local TargetData = self.clientData.TargetData
globalActor:UnSpawn(TargetData.Target2)
--globalActor:SpawnGadget(TargetData.TargetID, TargetData.Pos5, TargetData.Dir5, TargetData.Target5)
--[[ local StoneData = self.clientData.SpecialStoneData
globalActor:UnSpawn(StoneData.Stone4)
globalActor:SpawnGadget(StoneData.StoneID, StoneData.Pos4, StoneData.Dir4, StoneData.Stone4)
self:NarratorOnlyTask(self.clientData.NarratorData.Story3, nil, "Story3") ]]
end
function Quest357:OnSubStart35709(quest)
print("35709 Start : ")
local Q357NPC1 = actorMgr:GetActor("Q357NPC1")
if Q357NPC1 ~= nil then
Q357NPC1:DestroyWithDisappear(false)
end
--actorMgr:CreateActorWithPos(Q357NPC2Data.Q357NPC2, Q357NPC2Data.Q357NPC2Script, Q357NPC2Data.Q357NPC2ID, 0, Q357NPC2Data.Pos1, Q357NPC2Data.Dir1, true, false)
local Q357NPC2 = actorMgr:GetActor("Q357NPC2")
if Q357NPC2 ~= nil then
Q357NPC2:DestroyWithDisappear(false)
end
--actorMgr:CreateActorWithPos(Q357NPC3Data.Q357NPC3, Q357NPC3Data.Q357NPC3Script, Q357NPC3Data.Q357NPC3ID, 0, Q357NPC3Data.Pos1, Q357NPC3Data.Dir1, true, false)
local Q357NPC3 = actorMgr:GetActor("Q357NPC3")
if Q357NPC3 ~= nil then
Q357NPC3:DestroyWithDisappear(false)
end
--actorMgr:CreateActorWithPos(Q357NPC4Data.Q357NPC4, Q357NPC4Data.Q357NPC4Script, Q357NPC4Data.Q357NPC4ID, 0, Q357NPC4Data.Pos1, Q357NPC4Data.Dir1, true, false)
local Q357NPC4 = actorMgr:GetActor("Q357NPC4")
if Q357NPC4 ~= nil then
Q357NPC4:DestroyWithDisappear(false)
end
--actorMgr:CreateActorWithPos(Q357NPC5Data.Q357NPC5, Q357NPC5Data.Q357NPC5Script, Q357NPC5Data.Q357NPC5ID, 0, Q357NPC5Data.Pos1, Q357NPC5Data.Dir1, true, false)
local Q357NPC5 = actorMgr:GetActor("Q357NPC5")
if Q357NPC5 ~= nil then
Q357NPC5:DestroyWithDisappear(false)
end
--actorMgr:CreateActorWithPos(Q357NPC6Data.Q357NPC6, Q357NPC6Data.Q357NPC6Script, Q357NPC6Data.Q357NPC6ID, 0, Q357NPC6Data.Pos1, Q357NPC6Data.Dir1, true, false)
local Q357NPC6 = actorMgr:GetActor("Q357NPC6")
if Q357NPC6 ~= nil then
Q357NPC6:DestroyWithDisappear(false)
end
print("-----------Notify NPC to Daily-----------")
local MengdeNpcList=DailyNpcManager.GetMengdeNpcListSpecial()
for i=1, #MengdeNpcList do
self:NotifyTo(MengdeNpcList[i], DailyNpcManager.NpcEventType.STARTDAILY, true)
end
end
function Quest357:OnSubStart35711(quest)
print("35711 Finish : Creat Stone 4th")
local TargetData = self.clientData.TargetData
globalActor:SpawnGadget(TargetData.TargetID, TargetData.Pos5, TargetData.Dir5, TargetData.Target5)
local StoneData = self.clientData.SpecialStoneData
globalActor:UnSpawn(StoneData.Stone4)
globalActor:SpawnGadget(StoneData.StoneID, StoneData.Pos4, StoneData.Dir4, StoneData.Stone4)
local HitSphereData = self.clientData.HitSphereData
globalActor:UnSpawn("HitSphere")
globalActor:SpawnGadget(70300047, sceneData:GetDummyPoint(3,"Q357Stone3").pos, sceneData:GetDummyPoint(3,"Q357Stone3").rot, "HitSphere")
--globalActor:SpawnGadget(HitSphereData.HitSphereID, HitSphereData.Pos, HitSphereData.Dir, HitSphereData.HitSphere)
self:NarratorOnlyTask(self.clientData.NarratorData.Story3, nil, "Story3")
end
function Quest357:OnSubFinish35711(quest)
print("35711 Finish : Cutscene")
--destroy target5
local TargetData = self.clientData.TargetData
globalActor:UnSpawn(TargetData.Target5)
--destroy wind
globalActor:UnSpawn("Wind1")
globalActor:UnSpawn("Wind2")
globalActor:UnSpawn("Wind3")
globalActor:UnSpawn("Wind4")
globalActor:UnSpawn("Wind5")
globalActor:UnSpawn("Wind6")
globalActor:UnSpawn("Wind7")
globalActor:UnSpawn("Wall")
--globalActor:UnSpawn("Skybox")
--stop dragon
self:StopFreeCutscene(self.clientData.InterData.DragonCutScene, false)
--change weather
--globalActor:ChangeWeather ("ClearSky")
globalActor:LeaveWeather()
--change music
--globalActor:PlayAudioState("StateGroup_musicEmotion", "State_musicNormal")
--creat ambor temp
local AmborData = self.clientData.AmborData
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos4, AmborData.Dir4, true, false)
--creat gaia temp
local GaiaData = self.clientData.GaiaData
actorMgr:CreateActorWithPos(GaiaData.Gaia, GaiaData.GaiaScript, GaiaData.GaiaID, 0, GaiaData.Pos2, GaiaData.Dir2, true, false)
--[[ actorMgr:CreateActorWithPos(GaiaData.Gaia, GaiaData.GaiaScript, GaiaData.GaiaID, 0, GaiaData.Pos1, GaiaData.Dir1, true, false)
local gaia = actorMgr:GetActor(self.clientData.GaiaData.Gaia)
gaia:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
gaia:RunToTask(self.clientData.GaiaData.Pos2,
function(actor, task)
actor:ClearFollowTask()
actor:ClearPriorityInter(InterTimingType.BTN)
actor:Standby()
actor:TurnTo(M.Euler2DirXZ(self.clientData.GaiaData.Dir2))
end
) ]]
--play cutscene
self:PlayCutscene(self.clientData.InterData.Cutscene1, self.On35722CutsceneFinish)
--destroy stone4
self:CallDelay(2, self.DesStone4)
--local StoneData = self.clientData.SpecialStoneData
--globalActor:UnSpawn(StoneData.Stone4)
--Destroy NPC
--actorMgr:CreateActorWithPos(Q357NPC1Data.Q357NPC1, Q357NPC1Data.Q357NPC1Script, Q357NPC1Data.Q357NPC1ID, 0, Q357NPC1Data.Pos1, Q357NPC1Data.Dir1, true, false)
local Q357NPC1 = actorMgr:GetActor("Q357NPC1")
if Q357NPC1 ~= nil then
Q357NPC1:DestroyWithDisappear(false)
end
--actorMgr:CreateActorWithPos(Q357NPC2Data.Q357NPC2, Q357NPC2Data.Q357NPC2Script, Q357NPC2Data.Q357NPC2ID, 0, Q357NPC2Data.Pos1, Q357NPC2Data.Dir1, true, false)
local Q357NPC2 = actorMgr:GetActor("Q357NPC2")
if Q357NPC2 ~= nil then
Q357NPC2:DestroyWithDisappear(false)
end
--actorMgr:CreateActorWithPos(Q357NPC3Data.Q357NPC3, Q357NPC3Data.Q357NPC3Script, Q357NPC3Data.Q357NPC3ID, 0, Q357NPC3Data.Pos1, Q357NPC3Data.Dir1, true, false)
local Q357NPC3 = actorMgr:GetActor("Q357NPC3")
if Q357NPC3 ~= nil then
Q357NPC3:DestroyWithDisappear(false)
end
--actorMgr:CreateActorWithPos(Q357NPC4Data.Q357NPC4, Q357NPC4Data.Q357NPC4Script, Q357NPC4Data.Q357NPC4ID, 0, Q357NPC4Data.Pos1, Q357NPC4Data.Dir1, true, false)
local Q357NPC4 = actorMgr:GetActor("Q357NPC4")
if Q357NPC4 ~= nil then
Q357NPC4:DestroyWithDisappear(false)
end
--actorMgr:CreateActorWithPos(Q357NPC5Data.Q357NPC5, Q357NPC5Data.Q357NPC5Script, Q357NPC5Data.Q357NPC5ID, 0, Q357NPC5Data.Pos1, Q357NPC5Data.Dir1, true, false)
local Q357NPC5 = actorMgr:GetActor("Q357NPC5")
if Q357NPC5 ~= nil then
Q357NPC5:DestroyWithDisappear(false)
end
--actorMgr:CreateActorWithPos(Q357NPC6Data.Q357NPC6, Q357NPC6Data.Q357NPC6Script, Q357NPC6Data.Q357NPC6ID, 0, Q357NPC6Data.Pos1, Q357NPC6Data.Dir1, true, false)
local Q357NPC6 = actorMgr:GetActor("Q357NPC6")
if Q357NPC6 ~= nil then
Q357NPC6:DestroyWithDisappear(false)
end
--Notify NPC
--[[print("-----------Notify NPC to Daily-----------")
for i=1, #CfgMengdeDayPatrol.DummyPointData.NpcID do
self:NotifyTo("MengdeDayPatrol" .. '_' .. tostring(i), 35702, false)
end
for i=1, #CfgMengdeInsomniaPatrol.DummyPointData.NpcID do
self:NotifyTo("MengdeInsomniaPatrol" .. '_' .. tostring(i), 35702, false)
end
for i=1, #CfgMengdeDayStand.DummyPointData.NpcID do
self:NotifyTo("MengdeDayStand" .. '_' .. tostring(i), 35702, false)
end
for i=1, #CfgMengdeNightStand.DummyPointData.NpcID do
self:NotifyTo("MengdeNightStand" .. '_' .. tostring(i), 35702, false)
end
for i=1, #CfgMengdeNightSit.DummyPointData.NpcID do
self:NotifyTo("MengdeNightSit" .. '_' .. tostring(i), 35702, false)
end
for i=1, #CfgMengdeInsomniaStand.DummyPointData.NpcID do
self:NotifyTo("MengdeInsomniaStand" .. '_' .. tostring(i), 35702, false)
end
for i=1, #CfgMengdeDaySit.DummyPointData.NpcID do
self:NotifyTo("MengdeDaySit" .. '_' .. tostring(i), 35702, true)
end--]]
end
function Quest357:OnSubFinish35708(quest)
print("35708 Finish : NPC Hide")
--[[ local AmborData = self.clientData.AmborData
local ambor = actorMgr:GetActor(self.clientData.AmborData.Ambor)
ambor:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
ambor:RunToTask(self.clientData.AmborData.Pos5,
function(actor, task)
actor:ClearFollowTask()
actor:ClearPriorityInter(InterTimingType.BTN)
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.hiddenPos, AmborData.hiddenDir, true, false)
end
)
local GaiaData = self.clientData.GaiaData
local gaia = actorMgr:GetActor(self.clientData.GaiaData.Gaia)
gaia:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
gaia:RunToTask(self.clientData.GaiaData.Pos3,
function(actor, task)
actor:ClearFollowTask()
actor:ClearPriorityInter(InterTimingType.BTN)
actorMgr:CreateActorWithPos(GaiaData.Gaia, GaiaData.GaiaScript, GaiaData.GaiaID, 0, GaiaData.hiddenPos, GaiaData.hiddenDir, true, false)
end
) ]]
local AmborData = self.clientData.AmborData
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.hiddenPos, AmborData.hiddenDir, true, false)
local GaiaData = self.clientData.GaiaData
actorMgr:CreateActorWithPos(GaiaData.Gaia, GaiaData.GaiaScript, GaiaData.GaiaID, 0, GaiaData.hiddenPos, GaiaData.hiddenDir, true, false)
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
end
function Quest357:OnSubFinish35709(quest)
print("35709 Finish : Creat Paimon")
local PaimonData = self.clientData.PaimonData
actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, PaimonData.Pos1, PaimonData.Dir1, true, false)
local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
paimon:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
paimon:RunToTask(self.clientData.PaimonData.Pos2,
function(actor, task)
actor:ClearFollowTask()
actor:ClearPriorityInter(InterTimingType.BTN)
--actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, PaimonData.hiddenPos, PaimonData.hiddenDir, true, false)
end
)
--self:NarratorOnlyTask(self.clientData.NarratorData.Story2)
self:ActionSafeCall(self.Story2)
end
--@endregion
function Quest357:OnSubStart35721(quest)
print("35721 Start : Cutscene")
-- self:PlayFreeCutscene(self.clientData.InterData.DragonCutScene)
self:ActionSafeCall(
function (self)
local MengdeNpcList=DailyNpcManager.GetMengdeNpcListSpecial()
for i=1, #MengdeNpcList do
self:NotifyTo(MengdeNpcList[i], DailyNpcManager.NpcEventType.HIDESELF, true)
end
self:PlayCutscene(self.clientData.InterData.Cutscene2,
function (self)
globalActor:PlayerEnterDungeon(67, 2004)
end
)
end
)
end
function Quest357:OnSubStart35722(quest)
print("35722 Start : ...")
end
function Quest357:OnSubStart35723(quest)
print("35723 Start : ...")
local AmborData = self.clientData.AmborData
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos4, AmborData.Dir4, true, false)
self:PlayCutscene(self.clientData.InterData.Cutscene3,
function (self)
self:RequestInteraction(AmborData.Ambor)
end
)
end
function Quest357:OnSubStart35724(quest)
print("35724 Start : ...")
end
function Quest357:OnSubStart35725(quest)
print("35724 Start : ...")
self:PlayCutscene(q357Cfg.InterData.Cutscene1,
function (self)
self:TransmitPlayer(3, sceneData:GetDummyPoint(3,"Q35707Player").pos, sceneData:GetDummyPoint(3,"Q35707Player").rot)
end
)
end
function Quest357:OnSubFinish35721(quest)
print("35721 Finish : ...")
end
function Quest357:OnSubFinish35722(quest)
print("35722 Finish : ...")
end
function Quest357:OnSubFinish35723(quest)
print("35723 Finish : ...")
self:ActionSafeCall(
function(self)
self:ShowBlackScreen(0.5, 1.0, 0.5,
function(self)
local ambor = actorMgr:GetActor(AmborData.Ambor)
if ambor ~= nil then
ambor:Destroy(false)
end
local gaia = actorMgr:GetActor(GaiaData.Gaia)
if gaia ~= nil then
gaia:Destroy(false)
end
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:Destroy(false)
end
end
)
end
)
end
function Quest357:OnSubFinish35724(quest)
print("35724 Finish : Creat Paimon")
end
function Quest357:OnSubFinish35725(quest)
end
function Quest357:InvokeOnInteraction(param)
if param == 1 then
print("Ambor & Kaeya Hide")
local GaiaData = self.clientData.GaiaData
local AmborData = self.clientData.AmborData
local gaia = actorMgr:GetActor(self.clientData.GaiaData.Gaia)
if gaia ~= nil then
gaia:ClearFollowTask()
gaia:WalkToTask(GaiaData.Pos4)
end
local ambor = actorMgr:GetActor(self.clientData.AmborData.Ambor)
if ambor ~= nil then
ambor:ClearFollowTask()
ambor:WalkToTask(AmborData.Pos6)
end
self:CallDelay(3,self.GaiaVanish)
-- elseif param == 2 then
-- print("Creat Stone")
-- local StoneData = self.clientData.StoneData
-- globalActor:UnSpawn(StoneData.Stone1)
-- globalActor:SpawnGadget(StoneData.StoneID, StoneData.Pos1, StoneData.Dir1, StoneData.Stone1)
-- local Stone2Data = self.clientData.Stone2Data
-- globalActor:UnSpawn(Stone2Data.Stone2)
-- globalActor:SpawnGadget(Stone2Data.StoneID, Stone2Data.Pos2, Stone2Data.Dir2, Stone2Data.Stone2)
-- elseif param == 3 then
-- print("Ambor Hide")
-- local AmborData = self.clientData.AmborData
-- local ambor = actorMgr:GetActor(self.clientData.AmborData.Ambor)
-- if ambor ~= nil then
-- ambor:ClearFollowTask()
-- ambor:WalkToTask(AmborData.Pos7, Quest357.AmborVanish)
-- end
end
end
function Quest357:Start()
end
function Quest357:OnDestroy()
end
return Quest357

View File

@@ -0,0 +1,79 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest358 = class("Quest358", questActorProxy)
Quest358.defaultAlias = "Quest358"
local q358Cfg = require('Quest/Client/Q358ClientConfig')
-- Generated
function Quest358:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["35801"] = self.OnSubStart35801
self.subStartHandlers["35802"] = self.OnSubStart35802
end
function Quest358:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["35801"] = self.OnSubFinish35801
self.subFinishHandlers["35802"] = self.OnSubFinish35802
end
---sub start & finish 内调用的函数
function Quest358:PaimonVanish()
--self:ShowTutorialDialog(114)
local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
--paimon:VanishKeep()
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
function Quest358:On35801CutsceneFinish()
--[[ local QinData = self.clientData.QinData
actorMgr:CreateActorWithPos(QinData.Qin, QinData.QinScript, QinData.QinID, 0, QinData.Pos1, QinData.Dir1, true, false, 1004,true,100402)
local AmborData = self.clientData.AmborData
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos1, AmborData.Dir1, true, false, 1004,true,100402)
local GaiaData = self.clientData.GaiaData
actorMgr:CreateActorWithPos(GaiaData.Gaia, GaiaData.GaiaScript, GaiaData.GaiaID, 0, GaiaData.Pos1, GaiaData.Dir1, true, false, 1004,true,100402)
local LisaData = self.clientData.LisaData
actorMgr:CreateActorWithPos(LisaData.Lisa, LisaData.LisaScript, LisaData.LisaID, 0, LisaData.Pos1, LisaData.Dir1, true, false, 1004,true,100402)
local PaimonData = self.clientData.PaimonData
actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, PaimonData.Pos1, PaimonData.Dir1, true, false, 1004,true,100402) ]]
local GaiaData = self.clientData.GaiaData
self:RequestInteraction(GaiaData.Gaia)
end
--@region sub start & finish handlers
---按流程触发顺序
function Quest358:OnSubFinish35801(quest)
print("35801 Finish : Creat NPC")
--self:PlayCutscene(self.clientData.InterData.Cutscene1)
local QinData = self.clientData.QinData
actorMgr:CreateActorWithPos(QinData.Qin, QinData.QinScript, QinData.QinID, 0, QinData.Pos1, QinData.Dir1, true, false, 1004,true,100402)
local AmborData = self.clientData.AmborData
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos1, AmborData.Dir1, true, false, 1004,true,100402)
local GaiaData = self.clientData.GaiaData
actorMgr:CreateActorWithPos(GaiaData.Gaia, GaiaData.GaiaScript, GaiaData.GaiaID, 0, GaiaData.Pos1, GaiaData.Dir1, true, false, 1004,true,100402)
local LisaData = self.clientData.LisaData
actorMgr:CreateActorWithPos(LisaData.Lisa, LisaData.LisaScript, LisaData.LisaID, 0, LisaData.Pos1, LisaData.Dir1, true, false, 1004,true,100402)
local PaimonData = self.clientData.PaimonData
actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, PaimonData.Pos1, PaimonData.Dir1, true, false, 1004,true,100402)
self:PlayCutscene(self.clientData.InterData.Cutscene1, self.On35801CutsceneFinish)
end
function Quest358:OnSubFinish35802(quest)
print("35802 Finish : Paimon Vanish")
self:ActionSafeCall(self.PaimonVanish)
end
--@endregion
function Quest358:Start()
end
function Quest358:OnDestroy()
end
return Quest358

View File

@@ -0,0 +1,121 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest359 = class("Quest359", questActorProxy)
Quest359.defaultAlias = "Quest359"
local DailyNpcManager = require('Actor/DailyNPCManager')
local q359Cfg = require('Quest/Client/Q359ClientConfig')
local Q359NPC1Data = q359Cfg.Q359NPC1Data
local Q359NPC2Data = q359Cfg.Q359NPC2Data
local Q359NPC3Data = q359Cfg.Q359NPC3Data
local Q359NPC4Data = q359Cfg.Q359NPC4Data
local Q359NPC5Data = q359Cfg.Q359NPC5Data
local Q359NPC6Data = q359Cfg.Q359NPC6Data
local DungEffectData = q359Cfg.DungEffectData
-- Generated
function Quest359:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["35901"] = self.OnSubStart35901
self.subStartHandlers["35902"] = self.OnSubStart35902
self.subStartHandlers["35903"] = self.OnSubStart35903
self.subStartHandlers["35904"] = self.OnSubStart35904
end
function Quest359:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["35901"] = self.OnSubFinish35901
self.subFinishHandlers["35902"] = self.OnSubFinish35902
self.subFinishHandlers["35903"] = self.OnSubFinish35903
self.subFinishHandlers["35904"] = self.OnSubFinish35904
end
-- local param begin
-- local param end
---sub start & finish 内调用的函数
-- end
-- local method begin
--@region sub start handlers
function Quest359:OnSubStart35901(quest)
print("35901 start ")
self:ActionSafeCall(
function (self)
globalActor:SpawnGadget(70700004, sceneData:GetDummyPoint(3,"Q359MengdeWindDragon").pos, sceneData:GetDummyPoint(3,"Q359MengdeWindDragon").rot, "MengdeWindDragon")
-- globalActor:ChangeWeather ("Blustery")
actorMgr:CreateActorWithPos(Q359NPC1Data.Q359NPC1, Q359NPC1Data.Q359NPC1Script, Q359NPC1Data.Q359NPC1ID, 0, Q359NPC1Data.Pos1, Q359NPC1Data.Dir1, true, false)
actorMgr:CreateActorWithPos(Q359NPC2Data.Q359NPC2, Q359NPC2Data.Q359NPC2Script, Q359NPC2Data.Q359NPC2ID, 0, Q359NPC2Data.Pos1, Q359NPC2Data.Dir1, true, false)
actorMgr:CreateActorWithPos(Q359NPC3Data.Q359NPC3, Q359NPC3Data.Q359NPC3Script, Q359NPC3Data.Q359NPC3ID, 0, Q359NPC3Data.Pos1, Q359NPC3Data.Dir1, true, false)
actorMgr:CreateActorWithPos(Q359NPC4Data.Q359NPC4, Q359NPC4Data.Q359NPC4Script, Q359NPC4Data.Q359NPC4ID, 0, Q359NPC4Data.Pos1, Q359NPC4Data.Dir1, true, false)
actorMgr:CreateActorWithPos(Q359NPC5Data.Q359NPC5, Q359NPC5Data.Q359NPC5Script, Q359NPC5Data.Q359NPC5ID, 0, Q359NPC5Data.Pos1, Q359NPC5Data.Dir1, true, false)
actorMgr:CreateActorWithPos(Q359NPC6Data.Q359NPC6, Q359NPC6Data.Q359NPC6Script, Q359NPC6Data.Q359NPC6ID, 0, Q359NPC6Data.Pos1, Q359NPC6Data.Dir1, true, false)
print("-----------Notify NPC to Panic-----------")
local MengdeNpcList = DailyNpcManager.GetMengdeNpcListSpecial()
for i=1, #MengdeNpcList do
self:NotifyTo(MengdeNpcList[i], DailyNpcManager.NpcEventType.HIDESELF, true)
end
end
)
end
function Quest359:OnSubStart35902(quest)
print("35902 start ")
globalActor:SpawnGadget(DungEffectData.EffectID, DungEffectData.BornPos1, DungEffectData.BornDir1, DungEffectData.AmborDungeon)
end
function Quest359:OnSubStart35903(quest)
print("35903 start ")
globalActor:SpawnGadget(DungEffectData.EffectID, DungEffectData.BornPos2, DungEffectData.BornDir2, DungEffectData.GaiaDungeon)
end
function Quest359:OnSubStart35904(quest)
print("35904 start ")
globalActor:SpawnGadget(DungEffectData.EffectID, DungEffectData.BornPos3, DungEffectData.BornDir3, DungEffectData.LisaDungeon)
end
--@endregion
--@region sub finish handlers
function Quest359:OnSubFinish35901(quest)
print("OnFinished 35901")
globalActor:UnSpawn("MengdeWindDragon")
-- globalActor:LeaveWeather()
actorMgr:DestroyEntityActor("Q357NPC1")
actorMgr:DestroyEntityActor("Q357NPC2")
actorMgr:DestroyEntityActor("Q357NPC3")
actorMgr:DestroyEntityActor("Q357NPC4")
actorMgr:DestroyEntityActor("Q357NPC5")
actorMgr:DestroyEntityActor("Q357NPC6")
print("-----------Notify NPC to Daily-----------")
local MengdeNpcList=DailyNpcManager.GetMengdeNpcListSpecial()
for i=1, #MengdeNpcList do
self:NotifyTo(MengdeNpcList[i], DailyNpcManager.NpcEventType.STARTDAILY, true)
end
end
function Quest359:OnSubFinish35902(quest)
print("OnFinished 35902")
globalActor:UnSpawn(DungEffectData.AmborDungeon)
end
function Quest359:OnSubFinish35903(quest)
print("OnFinished 35903")
globalActor:UnSpawn(DungEffectData.GaiaDungeon)
end
function Quest359:OnSubFinish35904(quest)
print("OnFinished 35904")
globalActor:UnSpawn(DungEffectData.LisaDungeon)
end
--@endregion
function Quest359:Start()
end
function Quest359:OnDestroy()
end
return Quest359

View File

@@ -0,0 +1,106 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest360 = class("Quest360", questActorProxy)
Quest360.defaultAlias = "Quest360"
local q360Cfg = require('Quest/Client/Q360ClientConfig')
-- Generated
function Quest360:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["36001"] = self.OnSubStart36001
--self.subStartHandlers["36002"] = self.OnSubStart36002
self.subStartHandlers["36003"] = self.OnSubStart36003
self.subStartHandlers["36004"] = self.OnSubStart36004
self.subStartHandlers["36005"] = self.OnSubStart36005
end
function Quest360:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["36001"] = self.OnSubFinish36001
--self.subFinishHandlers["36002"] = self.OnSubFinish36002
self.subFinishHandlers["36003"] = self.OnSubFinish36003
self.subFinishHandlers["36004"] = self.OnSubFinish36004
self.subFinishHandlers["36005"] = self.OnSubFinish36005
end
---sub start & finish 内调用的函数
function Quest360:OnEnableInput()
print("360 Finish: Enable Player Input")
globalActor:EnablePlayerInput(true)
end
--@region sub start & finish handlers
---按流程触发顺序
---当OnSubFinish当前环和OnSubStart下一环等效时写在OnSubFinish内否则断线重连流程可能和OnSubStart流程重复执行
function Quest360:OnSubStart36001(quest)
print("36001 Start : Story1")
-- self:NarratorOnlyTask(self.clientData.NarratorData.Story1)
-- self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q360qqLook1").pos, 1, 2, true)
-- globalActor:StopLocalAvatar()
-- globalActor:EnablePlayerInput(false)
-- self:CallDelay(2, self.OnEnableInput)
end
function Quest360:OnSubFinish36001(quest)
print("36001 Finish : Story2")
self:NarratorOnlyTask(self.clientData.NarratorData.Story2)
--self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q360qq2").pos, 7, 3, true)
-- globalActor:StopLocalAvatar()
-- globalActor:EnablePlayerInput(false)
-- self:CallDelay(3, self.OnEnableInput)
end
--[[ function Quest360:OnSubFinish36002(quest)
print("36002 Finish : Story3")
self:NarratorOnlyTask(self.clientData.NarratorData.Story3)
end ]]
function Quest360:OnSubFinish36003(quest)
print("36003 Finish : Creat NPC")
end
function Quest360:Interact()
local AmborData = self.clientData.AmborData
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos1, AmborData.Dir1, true, false)
self:RequestInteraction(AmborData.Ambor)
end
function Quest360:OnSubStart36004(quest)
print("36004 Start : interact")
self:ShowBlackScreen(0.5, 1.0, 0.5, self.Interact)
end
function Quest360:OnSubFinish36004(quest)
print("36004 Finish : Ambor Vanish")
self:ActionPreSafeCall(self.Finish36004Do)
end
function Quest360:Finish36004Do(quest)
local AmborData = self.clientData.AmborData
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos2, AmborData.Dir2, true, false)
local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
paimon:VanishKeep()
end
function Quest360:OnSubFinish36005(quest)
print("36005 Finish : Cs_AM_FirstArrive_CutScene2")
globalActor:StopLocalAvatar()
globalActor:FinishAllNarrator()
self:PlayCutscene(self.clientData.InterData.Cutscene1, self.On36005CutsceneFinish)
end
function Quest360:On36005CutsceneFinish()
local AmborData = self.clientData.AmborData
actorMgr:CreateActorWithPos(AmborData.Ambor, AmborData.AmborScript, AmborData.AmborID, 0, AmborData.Pos3, AmborData.Dir3, true, false)
end
--@endregion
function Quest360:Start()
end
function Quest360:OnDestroy()
end
return Quest360

View File

@@ -0,0 +1,92 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest361 = class("Quest361", questActorProxy)
Quest361.defaultAlias = "Quest361"
local q361Cfg = require('Quest/Client/Q361ClientConfig')
-- Generated
function Quest361:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["36100"] = self.OnSubStart36100
self.subStartHandlers["36101"] = self.OnSubStart36101
end
function Quest361:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["36100"] = self.OnSubFinish36100
self.subFinishHandlers["36101"] = self.OnSubFinish36101
end
---sub start & finish 内调用的函数
function Quest361:CameraMove()
self:EnterSceneLookCameraByAlias("LookAt_Dragon", 0, 3, true, false)
globalActor:StopLocalAvatar()
globalActor:EnablePlayerInput(false)
self:CallDelay(2, self.OnEnableInput)
end
function Quest361:OnEnableInput()
print("361 Finish: Enable Player Input")
globalActor:EnablePlayerInput(true)
end
function Quest361:PaimonQ361Narrator()
self:NarratorOnlyTask(q361Cfg.PaimonNarrator, nil, "Story")
end
function Quest361:AutoFinishQuest()
local quest = actorMgr:GetActor(q361Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
--@region sub start & finish handlers
---按流程触发顺序
function Quest361:OnSubStart36100(quest)
print("36100 Start: Trigger Create")
actorMgr:CreateActorWithPos("DragonTrigger", "Actor/Gadget/DragonTrigger", 70900002, 0, sceneData:GetDummyPoint(3,"Q361DragonTriggerCenter").pos, sceneData:GetDummyPoint(3,"Q361DragonTriggerCenter").rot, true, false)
end
function Quest361:OnSubFinish36100(quest)
print("36100 Finish: Ca_Quest_MQ361_DragonFlyT_Test")
local avatarPos = actorUtils.GetAvatarPos()
self:PlayFreeCutscene(
{
type = CutsceneType.TIME_LINE_PREFAB,
roleSheetPath = "",
resPath = "ART/CameraAni/Quest/Ca_Quest_MQ361_DragonFlyT_Test",
startPosType = CutsceneInitPosType.FREE,
--startOffset = {0, 0, 0}
startOffset = { x = avatarPos.x , y = avatarPos.y + 15, z = avatarPos.z + 10},
useTargetPos = true,
--大世界平移后修正坐标
targetPos = {2450, 200, -1174},
syncLoad = true
},
self,
function(self)
self:ExitSceneLookCamera()
end
)
self:CallDelay(6, self.CameraMove)
self:CallDelay(8, self.PaimonQ361Narrator)
end
function Quest361:OnSubStart36101(quest)
print("36101 Start: Auto Finish Quest After Period")
self:CallDelay(10, self.AutoFinishQuest)
end
--@endregion
function Quest361:Start()
end
function Quest361:OnDestroy()
end
return Quest361

View File

@@ -0,0 +1,223 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest501 = class("Quest501", questActorProxy)
Quest501.defaultAlias = "Quest501"
local this = nil
local super = nil
local uActor = nil
local questID = 0
function Quest501:OnPreInit()
this = self
super = self.__super
questID = this.mainQuestID
super:OnPreInit()
end
function Quest501:OnPostInit()
uActor = self.uActor
super:OnPostInit()
end
-- local config begin
local q501Cfg = require('Actor/Quest/Q501/Q501Config')
local subIDs = q501Cfg.SubIDs
local clueID = q501Cfg.ClueID
local cluePos1 = q501Cfg.CluePos1
local cluePos2 = q501Cfg.CluePos2
local cluePos3 = q501Cfg.CluePos3
local sealPos = q501Cfg.SealPos
local clueGadgetID = q501Cfg.ClueGadgetID
local q504Cfg = require('Actor/Quest/Q504/Q504Config')
local wendyData = q504Cfg.WendyData
local qinData = q504Cfg.QinData
local dilucData = q504Cfg.DilucData
-- local config end
function Quest501:CreateUActor(alias)
local uActor = actorUtils.CreateActor(self, ActorType.QUEST_ACTOR, alias)
uActor = actorUtils.CreateQuestActor(questID, uActor)
return uActor
end
function Quest501:ClueaNarrtor()
local q50101state = this:GetSubQuestState(50101)
local q50102state = this:GetSubQuestState(50102)
local q50103state = this:GetSubQuestState(50103)
local q501state = q50101state + q50102state + q50103state
if q501state == 7 then
return this:NarratorOnlyTask(q501Cfg.NarratorData.Storyclue1)
elseif q501state == 8 then
return this:NarratorOnlyTask(q501Cfg.NarratorData.Storyclue2)
-- elseif q501state == 9 then
-- return this:NarratorOnlyTask(q501Cfg.NarratorData.Storyclue3)
end
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
local function OnStart50101()
print("50101 start: Clue1 Create")
--globalActor:SpawnItem(q501Cfg.Clue1ID, q501Cfg.CluePos1, 0, "q501Clue1")
end
local function OnStart50102()
print("50102 start: Clue2 Create")
--globalActor:SpawnItem(q501Cfg.Clue2ID, q501Cfg.CluePos2, 0, "q501Clue2")
end
local function OnStart50103()
print("50103 start: Clue3 Create")
--globalActor:SpawnItem(q501Cfg.Clue3ID, q501Cfg.CluePos3, 0, "q501Clue3")
end
local function OnStart50104()
print("50104 Start:......")
end
local function OnStart50105()
print("50105 Start: Finish Quest & Play CutScene 1")
this:PlayCutscene(q501Cfg.SealAppearTimeCfg,this:NarratorOnlyTask(q501Cfg.NarratorData.Storyclue3))
local quest = actorMgr:GetActor(q501Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
local function OnStart50106()
print("50106 Start: Finish Quest & Play CutScene2")
this:PlayCutscene(q501Cfg.SealOpenTimeCfg,
function (this)
local quest = actorMgr:GetActor(q501Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
)
end
--@endregion
--@region sub finish handlers
local function OnFinished50101()
print("50101 finish: Clue1 UnSpawn")
--globalActor:UnSpawn("q501Clue1")
this:ClueNarrator()
end
local function OnFinished50102()
print("50102 finish: Clue2 UnSpawn")
--globalActor:UnSpawn("q501Clue2")
this:ClueNarrator()
end
local function OnFinished50103()
print("50103 finish: Clue3 UnSpawn")
--globalActor:UnSpawn("q501Clue3")
this:ClueNarrator()
end
local function OnFinished50104()
print("50104 finish:......")
end
local function OnFinished50105()
print("50105 finish:......")
-- this:PlayCutscene(q501Cfg.SealAppearTimeCfg)
end
local function OnFinished50106()
print("50106 finish:......")
end
--@endregion
--@region sub rewind handlers
local function OnRewind50104()
print("50104 rewind: Creat NPC")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
end
local function OnRewind50105()
print("50105 rewind: Creat NPC")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
end
local function OnRewind50106()
print("50106 rewind: Creat NPC")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
end
--@endregion
-- local method end
function Quest501:OnMainStart(quest)
end
function Quest501:OnSubStart(quest)
local questID = quest.QuestId
if questID == subIDs.q50101 then
OnStart50101()
elseif questID == subIDs.q50102 then
OnStart50102()
elseif questID == subIDs.q50103 then
OnStart50103()
elseif questID == subIDs.q50104 then
OnStart50104()
elseif questID == subIDs.q50105 then
OnStart50105()
elseif questID == subIDs.q50106 then
OnStart50106()
end
end
function Quest501:OnSubFinished(quest)
local questID = quest.QuestId
if questID == subIDs.q50101 then
OnFinished50101()
elseif questID == subIDs.q50102 then
OnFinished50102()
elseif questID == subIDs.q50103 then
OnFinished50103()
elseif questID == subIDs.q50104 then
OnFinished50104()
elseif questID == subIDs.q50105 then
OnFinished50105()
elseif questID == subIDs.q50106 then
OnFinished50106()
end
end
function Quest501:OnRewind(quest)
local questID = quest.QuestId
if questID == subIDs.q50104 then
OnRewind50104()
elseif questID == subIDs.q50105 then
OnRewind50105()
elseif questID == subIDs.q50106 then
OnRewind50106()
end
end
function Quest501:OnMainFinished(quest)
print("50104 finish: Seal Opened")
end
function Quest501:Start()
end
function Quest501:OnDestroy()
end
return Quest501

View File

@@ -0,0 +1,205 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest502 = class("Quest502", questActorProxy)
Quest502.defaultAlias = "Quest502"
local this = nil
local super = nil
local uActor = nil
local questID = 0
function Quest502:OnPreInit()
this = self
super = self.__super
questID = this.mainQuestID
super:OnPreInit()
end
function Quest502:OnPostInit()
uActor = self.uActor
super:OnPostInit()
end
-- local config begin
local q502Cfg = require('Actor/Quest/Q502/Q502Config')
local subIDs = q502Cfg.SubIDs
local clueID = q502Cfg.ClueID
local cluePos1 = q502Cfg.CluePos1
local cluePos2 = q502Cfg.CluePos2
local cluePos3 = q502Cfg.CluePos3
local sealPos = q502Cfg.SealPos
local clueGadgetID = q502Cfg.ClueGadgetID
local q504Cfg = require('Actor/Quest/Q504/Q504Config')
local wendyData = q504Cfg.WendyData
local qinData = q504Cfg.QinData
local dilucData = q504Cfg.DilucData
-- local config end
function Quest502: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
--@region sub start handlers
local function OnStart50201()
print("50201 start: Clue1 Create")
globalActor:SpawnItem(q502Cfg.Clue1ID, q502Cfg.CluePos1, 0, "q502Clue1")
end
local function OnStart50202()
print("50202 start: Clue2 Create")
globalActor:SpawnItem(q502Cfg.Clue2ID, q502Cfg.CluePos2, 0, "q502Clue2")
end
local function OnStart50203()
print("50203 start: Clue3 Create")
globalActor:SpawnItem(q502Cfg.Clue3ID, q502Cfg.CluePos3, 0, "q502Clue3")
end
local function OnStart50204()
print("50204 Start:......")
end
local function OnStart50205()
print("50205 Start: Finish Quest & Play CutScene 1")
this:PlayCutscene(q502Cfg.SealAppearTimeCfg)
local quest = actorMgr:GetActor(q502Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
local function OnStart50206()
print("50206 Start: Finish Quest & Play CutScene2")
this:PlayCutscene(q502Cfg.SealOpenTimeCfg,
function (this)
local quest = actorMgr:GetActor(q502Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
)
end
--@endregion
--@region sub finish handlers
local function OnFinished50201()
print("50201 finish: Clue1 UnSpawn")
globalActor:UnSpawn("q502Clue1")
end
local function OnFinished50202()
print("50202 finish: Clue2 UnSpawn")
globalActor:UnSpawn("q502Clue2")
end
local function OnFinished50203()
print("50203 finish: Clue3 UnSpawn")
globalActor:UnSpawn("q502Clue3")
end
local function OnFinished50204()
print("50204 finish: Play CutScene2")
-- this:PlayCutscene(q502Cfg.SealOpenTimeCfg)
end
local function OnFinished50205()
print("50205 finish: Play CutScene1")
-- this:PlayCutscene(q502Cfg.SealAppearTimeCfg)
end
local function OnFinished50206()
print("50206 finish:......")
end
--@endregion
--@region sub rewind handlers
local function OnRewind50204()
print("50204 rewind: Creat NPC")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
end
local function OnRewind50205()
print("50205 rewind: Creat NPC")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
end
local function OnRewind50206()
print("50206 rewind: Creat NPC")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
end
--@endregion
-- local method end
function Quest502:OnMainStart(quest)
end
function Quest502:OnSubStart(quest)
local questID = quest.QuestId
if questID == subIDs.q50201 then
OnStart50201()
elseif questID == subIDs.q50202 then
OnStart50202()
elseif questID == subIDs.q50203 then
OnStart50203()
elseif questID == subIDs.q50204 then
OnStart50204()
elseif questID == subIDs.q50205 then
OnStart50205()
elseif questID == subIDs.q50206 then
OnStart50206()
end
end
function Quest502:OnSubFinished(quest)
local questID = quest.QuestId
if questID == subIDs.q50201 then
OnFinished50201()
elseif questID == subIDs.q50202 then
OnFinished50202()
elseif questID == subIDs.q50203 then
OnFinished50203()
elseif questID == subIDs.q50204 then
OnFinished50204()
elseif questID == subIDs.q50205 then
OnFinished50205()
elseif questID == subIDs.q50206 then
OnFinished50206()
end
end
function Quest502:OnRewind(quest)
local questID = quest.QuestId
if questID == subIDs.q50204 then
OnRewind50204()
elseif questID == subIDs.q50205 then
OnRewind50205()
elseif questID == subIDs.q50206 then
OnRewind50206()
end
end
function Quest502:OnMainFinished(quest)
print("50204 finish: Seal Opened")
end
function Quest502:Start()
end
function Quest502:OnDestroy()
end
return Quest502

View File

@@ -0,0 +1,210 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest503 = class("Quest503", questActorProxy)
Quest503.defaultAlias = "Quest503"
local this = nil
local super = nil
local uActor = nil
local questID = 0
function Quest503:OnPreInit()
this = self
super = self.__super
questID = this.mainQuestID
super:OnPreInit()
end
function Quest503:OnPostInit()
uActor = self.uActor
super:OnPostInit()
end
-- local config begin
local q503Cfg = require('Actor/Quest/Q503/Q503Config')
local subIDs = q503Cfg.SubIDs
local clueID = q503Cfg.ClueID
local cluePos1 = q503Cfg.CluePos1
local cluePos2 = q503Cfg.CluePos2
local cluePos3 = q503Cfg.CluePos3
local sealPos = q503Cfg.SealPos
local clueGadgetID = q503Cfg.ClueGadgetID
local q504Cfg = require('Actor/Quest/Q504/Q504Config')
local wendyData = q504Cfg.WendyData
local qinData = q504Cfg.QinData
local dilucData = q504Cfg.DilucData
-- local config end
function Quest503: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
--@region sub start handlers
local function OnStart50301()
print("50301 start: Clue7 Create")
globalActor:SpawnItem(q503Cfg.Clue1ID, q503Cfg.CluePos1, 0, "q503Clue1")
end
local function OnStart50302()
print("50302 start: Clue8 Create")
globalActor:SpawnItem(q503Cfg.Clue2ID, q503Cfg.CluePos2, 0, "q503Clue2")
end
local function OnStart50303()
print("50303 start: Clue9 Create")
globalActor:SpawnItem(q503Cfg.Clue3ID, q503Cfg.CluePos3, 0, "q503Clue3")
end
local function OnStart50304()
print("50304 start:......")
end
local function OnStart50305()
print("50305 start: Finish Quest")
local quest = actorMgr:GetActor(q503Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
local function OnStart50306()
print("50306 Start: Finish Quest & Play CutScene2")
this:PlayCutscene(q5032Cfg.SealOpenTimeCfg,
function (this)
local quest = actorMgr:GetActor(q503Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
)
end
--@endregion
--@region sub finish handlers
local function OnFinished50301()
print("50301 finish: Clue1 UnSpawn")
globalActor:UnSpawn("q503Clue1")
end
local function OnFinished50302()
print("50302 finish: Clue2 UnSpawn")
globalActor:UnSpawn("q503Clue2")
end
local function OnFinished50303()
print("50303 finish: Clue3 UnSpawn")
globalActor:UnSpawn("q503Clue3")
end
local function OnFinished50304()
print("50304 finish: Play Cutscene 2")
-- this:PlayCutscene(q503Cfg.SealOpenTimeCfg)
end
local function OnFinished50305()
print("50305 Start: Finish Quest & Play CutScene 1")
this:PlayCutscene(q503Cfg.SealAppearTimeCfg)
local quest = actorMgr:GetActor(q503Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
local function OnFinished50306()
print("50306 finish:......")
end
--@endregion
--@region sub rewind handlers
local function OnRewind50304()
print("50304 rewind: Creat NPC")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
end
local function OnRewind50305()
print("50305 rewind: Creat NPC")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
end
local function OnRewind50306()
print("50305 rewind: Creat NPC")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
end
--@endregion
-- local method end
function Quest503:OnMainStart(quest)
end
function Quest503:OnSubStart(quest)
local questID = quest.QuestId
if questID == subIDs.q50301 then
OnStart50301()
elseif questID == subIDs.q50302 then
OnStart50302()
elseif questID == subIDs.q50303 then
OnStart50303()
elseif questID == subIDs.q50304 then
OnStart50304()
elseif questID == subIDs.q50305 then
OnStart50305()
elseif questID == subIDs.q50306 then
OnStart50306()
end
end
function Quest503:OnSubFinished(quest)
local questID = quest.QuestId
if questID == subIDs.q50301 then
OnFinished50301()
elseif questID == subIDs.q50302 then
OnFinished50302()
elseif questID == subIDs.q50303 then
OnFinished50303()
elseif questID == subIDs.q50304 then
OnFinished50304()
elseif questID == subIDs.q50305 then
OnFinished50305()
elseif questID == subIDs.q50306 then
OnFinished50306()
end
end
function Quest503:OnRewind(quest)
local questID = quest.QuestId
if questID == subIDs.q50304 then
OnRewind50304()
elseif questID == subIDs.q50305 then
OnRewind50305()
elseif questID == subIDs.q50306 then
OnRewind50306()
end
end
function Quest503:OnMainFinished(quest)
print("50304 finish: Seal Opened")
end
function Quest503:Start()
end
function Quest503:OnDestroy()
end
return Quest503

View File

@@ -0,0 +1,302 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest504 = class("Quest504", questActorProxy)
Quest504.defaultAlias = "Quest504"
local this = nil
local super = nil
local uActor = nil
local questID = 0
function Quest504:OnPreInit()
this = self
super = self.__super
questID = this.mainQuestID
super:OnPreInit()
end
function Quest504:OnPostInit()
uActor = self.uActor
super:OnPostInit()
end
-- local config begin
local q504Cfg = require('Actor/Quest/Q504/Q504Config')
local subIDs = q504Cfg.SubIDs
local seal1ID = q504Cfg.Seal1ID
local seal2ID = q504Cfg.Seal2ID
local sealPos = q504Cfg.SealPos
local wendyData = q504Cfg.WendyData
local qinData = q504Cfg.QinData
local dilucData = q504Cfg.DilucData
-- local config end
function Quest504:CreateUActor(alias)
local uActor = actorUtils.CreateActor(self, ActorType.QUEST_ACTOR, alias)
uActor = actorUtils.CreateQuestActor(questID, uActor)
return uActor
end
function Quest504:On50402CutsceneFinish()
this:CallDelay(3,
function (this)
this:NarratorOnlyTask(q504Cfg.Story2)
end
)
end
-- local param begin
-- local param end
-- local method begin
local function OnStart50401()
print("50401 start:......")
-- actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos2, wendyData.bornDir2, true)
-- actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos2, dilucData.bornDir2, true)
-- actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos2, qinData.bornDir2, true)
end
local function OnStart50402()
print("50402 start:......")
end
local function OnStart50403()
print("50403 start:......")
-- this:SpawnGadget(70900201, wendyData.bornPos, wendyData.bornDir, "Quest50403Target")
-- this:ShowBlackScreen(0.5, 1.0, 0.5,
-- function (this)
-- local qin = actorMgr:GetActor(qinData.Qin)
-- local diluc = actorMgr:GetActor(dilucData.Diluc)
-- local wendy = actorMgr:GetActor(wendyData.Wendy)
-- local paimon = actorMgr:GetActor("Paimon")
-- if qin ~= nil then
-- qin:Destroy(false)
-- end
-- if diluc ~= nil then
-- diluc:Destroy(false)
-- end
-- if wendy ~= nil then
-- wendy:Destroy(false)
-- end
-- if paimon ~= nil then
-- paimon:Destroy(false)
-- end
-- end
-- )
end
local function OnStart50404()
print("50404 start:......")
end
-- local function OnStart50405()
-- globalActor:UnSpawn("Seal1")
-- print("50404 start: Seal1 Create")
-- globalActor:SpawnItem(q504Cfg.Seal1ID, q504Cfg.SealPos, 0, "Seal1")
-- end
-- local function OnStart50406()
-- end
local function OnStart50407()
print("50407 start:......")
end
local function OnFinished50401()
print("50401 finishi:......")
this:NarratorOnlyTask(q504Cfg.Story1)
this:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q504Target1").pos, 0, 3, true)
end
local function OnFinished50402()
print("50402 finishi: Play CutScene1")
this:ActionSafeCall(
this:TransmitPlayer(3, sceneData:GetDummyPoint(3,"Q504Target1").pos, sceneData:GetDummyPoint(3,"Q504Target1").rot, nil,
function (this)
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos2, wendyData.bornDir2, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos2, dilucData.bornDir2, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos2, qinData.bornDir2, true)
end
)
)
-- this:ActionSafeCall(
-- function (this)
-- this:PlayCutscene(q504Cfg.LairDisplay02TimeCfg,this.On50402CutsceneFinish,nil)
-- local paimon = actorMgr:GetActor("Paimon")
-- if paimon ~= nil then
-- paimon:DestroyWithDisappear(false)
-- end
-- end
-- )
end
local function OnFinished50403()
print("50403 finishi: Creat Wendy, Diluc, Qin")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
end
local function OnFinished50404()
print("50404 finishi:......")
this:UnSpawn("Quest50403Target")
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
-- local function OnFinished50405()
-- print("50404 finish: Seal1 Destroy")
-- globalActor:UnSpawn("Seal1")
-- end
-- local function OnFinished50406()
-- this:ActionSafeCall(
-- function(self)
-- local diluc = actorMgr:GetActor(dilucData.Diluc)
-- if diluc ~= nil then
-- diluc:Destroy(false)
-- end
-- end
-- )
-- this:ActionSafeCall(
-- function(self)
-- local wendy = actorMgr:GetActor(wendyData.Wendy)
-- if wendy ~= nil then
-- wendy:Destroy(false)
-- end
-- end
-- )
-- this:ActionSafeCall(
-- function(self)
-- local qin = actorMgr:GetActor(qinData.Qin)
-- if qin ~= nil then
-- qin:Destroy(false)
-- end
-- end
-- )
-- end
local function OnFinished50407()
this:SpawnGadget(70900201, wendyData.bornPos, wendyData.bornDir, "Quest50403Target")
this:ShowBlackScreen(0.5, 1.0, 0.5,
function (this)
local qin = actorMgr:GetActor(qinData.Qin)
local diluc = actorMgr:GetActor(dilucData.Diluc)
local wendy = actorMgr:GetActor(wendyData.Wendy)
local paimon = actorMgr:GetActor("Paimon")
if qin ~= nil then
qin:Destroy(false)
end
if diluc ~= nil then
diluc:Destroy(false)
end
if wendy ~= nil then
wendy:Destroy(false)
end
if paimon ~= nil then
paimon:Destroy(false)
end
end
)
end
local function OnRewind50404()
print("50404 Rewind: Creat Wendy, Diluc, Qin")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
end
-- local function OnRewind50405()
-- actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
-- actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
-- actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
-- end
-- local function OnRewind50406()
-- actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
-- actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
-- actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
-- end
-- local method end
function Quest504:OnMainStart(quest)
end
function Quest504:OnSubStart(quest)
local questID = quest.QuestId
if questID == subIDs.q50401 then
OnStart50401()
elseif questID == subIDs.q50402 then
OnStart50402()
elseif questID == subIDs.q50403 then
OnStart50403()
elseif questID == subIDs.q50404 then
OnStart50404()
-- elseif questID == subIDs.q50405 then
-- OnStart50405()
-- elseif questID == subIDs.q50406 then
-- OnStart50406()
elseif questID == subIDs.q50407 then
OnStart50407()
end
end
function Quest504:OnSubFinished(quest)
local questID = quest.QuestId
if questID == subIDs.q50401 then
OnFinished50401()
elseif questID == subIDs.q50402 then
OnFinished50402()
elseif questID == subIDs.q50403 then
OnFinished50403()
elseif questID == subIDs.q50404 then
OnFinished50404()
-- elseif questID == subIDs.q50405 then
-- OnFinished50405()
-- elseif questID == subIDs.q50406 then
-- OnFinished50406()
elseif questID == subIDs.q50407 then
OnFinished50407()
end
end
function Quest504:OnRewind(quest)
local questID = quest.QuestId
if questID == subIDs.q50404 then
OnRewind50404()
-- elseif questID == subIDs.q50405 then
-- OnRewind50405()
-- elseif questID == subIDs.q50406 then
-- OnRewind50406()
end
end
function Quest504:OnMainFinished(quest)
end
function Quest504:Start()
end
function Quest504:OnDestroy()
end
return Quest504

View File

@@ -0,0 +1,115 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest505 = class("Quest505", questActorProxy)
Quest505.defaultAlias = "Quest505"
local this = nil
local super = nil
local uActor = nil
local questID = 0
function Quest505:OnPreInit()
this = self
super = self.__super
questID = this.mainQuestID
super:OnPreInit()
end
function Quest505:OnPostInit()
uActor = self.uActor
super:OnPostInit()
end
-- local config begin
local q505Cfg = require('Actor/Quest/Q505/Q505Config')
local subIDs = q505Cfg.SubIDs
local wendyData = q505Cfg.WendyData
local qinData = q505Cfg.QinData
local dilucData = q505Cfg.DilucData
-- local config end
function Quest505: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 OnStart50501()
print("50505 finish: Seal2 Create")
-- globalActor:SpawnItem(q505Cfg.SealID, q505Cfg.SealPos, 0, "Seal2")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
end
function PaimonDisappear()
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
print("paimengdis")
paimon:DestroyWithDisappear(false)
end
end
local function OnFinished50501()
print("50501 finish: Dungeon Open")
this:ActionSafeCall(PaimonDisappear)
-- local qin = actorMgr:GetActor(qinData.Qin)
-- local diluc = actorMgr:GetActor(dilucData.Diluc)
-- local wendy = actorMgr:GetActor(wendyData.Wendy)
-- if qin ~= nil then
-- qin:Destroy(false)
-- end
-- if diluc ~= nil then
-- diluc:Destroy(false)
-- end
-- if wendy ~= nil then
-- wendy:Destroy(false)
-- end
-- globalActor:UnSpawn("Seal2")
end
-- local method end
function Quest505:OnMainStart(quest)
end
function Quest505:OnSubStart(quest)
local questID = quest.QuestId
if questID == subIDs.q50501 then
OnStart50501()
end
end
function Quest505:OnSubFinished(quest)
local questID = quest.QuestId
if questID == subIDs.q50501 then
OnFinished50501()
end
end
function Quest505:OnRewind(quest)
end
function Quest505:OnMainFinished(quest)
end
function Quest505:Start()
end
function Quest505:OnDestroy()
end
return Quest505

View File

@@ -0,0 +1,60 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest467 = class("Quest467", questActorProxy)
Quest467.defaultAlias = "Quest467"
local q467Cfg = require('Quest/Client/Q467ClientConfig')
local LynnData = q467Cfg.LynnData
local guardData = q467Cfg.GuardData
-- Generated
function Quest467:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["46701"] = self.OnSubStart46701
self.subStartHandlers["46702"] = self.OnSubStart46702
self.subStartHandlers["46703"] = self.OnSubStart46703
end
function Quest467:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["46701"] = self.OnSubFinish46701
self.subFinishHandlers["46702"] = self.OnSubFinish46702
self.subFinishHandlers["46703"] = self.OnSubFinish46703
end
---sub start & finish 内调用的函数
function Quest467:PaimonVanish()
end
--@region sub start & finish handlers
---按流程触发顺序
function Quest467:OnSubStart46701(quest)
print("46701 Start : Creat Lynn")
--actorMgr:CreateActorWithPos(LynnData.Lynn, LynnData.LynnScript, LynnData.LynnID, 0, LynnData.Pos1, LynnData.Dir1, true, false, 3)
--actorMgr:CreateActorWithPos(guardData.Guard, guardData.GuardScript, guardData.GuardID, 0, guardData.Pos1, guardData.Dir1, true, false, 3)
end
function Quest467:OnSubFinish46701(quest)
print("46701 Start : Creat Lynn")
self:NarratorOnlyTask(self.clientData.NarratorData.Story1)
self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q467Lynn1").pos, 1.5, 1.5, true)
globalActor:StopLocalAvatar()
globalActor:EnablePlayerInput(false)
self:CallDelay(1.5, self.OnEnableInput)
end
function Quest467:OnEnableInput()
print("467 Finish: Enable Player Input")
globalActor:EnablePlayerInput(true)
end
--@endregion
function Quest467:Start()
end
function Quest467:OnDestroy()
end
return Quest467

View File

@@ -0,0 +1,60 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest468 = class("Quest468", questActorProxy)
Quest468.defaultAlias = "Quest468"
local q468Cfg = require('Quest/Client/Q468ClientConfig')
local LynnData = q468Cfg.LynnData
local guardData = q468Cfg.GuardData
-- Generated
function Quest468:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["46801"] = self.OnSubStart46801
self.subStartHandlers["46802"] = self.OnSubStart46802
self.subStartHandlers["46803"] = self.OnSubStart46803
end
function Quest468:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["46801"] = self.OnSubFinish46801
self.subFinishHandlers["46802"] = self.OnSubFinish46802
self.subFinishHandlers["46803"] = self.OnSubFinish46803
end
---sub start & finish 内调用的函数
function Quest468:PaimonVanish()
end
--@region sub start & finish handlers
---按流程触发顺序
function Quest468:OnSubStart46801(quest)
print("46801 Start : Creat Lynn")
--actorMgr:CreateActorWithPos(LynnData.Lynn, LynnData.LynnScript, LynnData.LynnID, 0, LynnData.Pos1, LynnData.Dir1, true, false, 3)
--actorMgr:CreateActorWithPos(guardData.Guard, guardData.GuardScript, guardData.GuardID, 0, guardData.Pos1, guardData.Dir1, true, false, 3)
end
function Quest468:OnSubFinish46801(quest)
print("46801 Start : Creat Lynn")
self:NarratorOnlyTask(self.clientData.NarratorData.Story1)
self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q468Lynn1").pos, 1.5, 3, true)
globalActor:StopLocalAvatar()
globalActor:EnablePlayerInput(false)
self:CallDelay(3, self.OnEnableInput)
end
function Quest468:OnEnableInput()
print("468 Finish: Enable Player Input")
globalActor:EnablePlayerInput(true)
end
--@endregion
function Quest468:Start()
end
function Quest468:OnDestroy()
end
return Quest468

View File

@@ -0,0 +1,77 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest469 = class("Quest469", questActorProxy)
Quest469.defaultAlias = "Quest469"
local q469Cfg = require('Quest/Client/Q469ClientConfig')
local PaimonData=q469Cfg.PaimonData
-- Generated
function Quest469:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["46901"] = self.OnSubStart46901
self.subStartHandlers["46902"] = self.OnSubStart46902
self.subStartHandlers["46903"] = self.OnSubStart46903
self.subStartHandlers["46904"] = self.OnSubStart46904
end
function Quest469:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["46901"] = self.OnSubFinish46901
self.subFinishHandlers["46902"] = self.OnSubFinish46902
self.subFinishHandlers["46903"] = self.OnSubFinish46903
self.subFinishHandlers["46904"] = self.OnSubFinish46904
end
---sub start & finish 内调用的函数
function Quest469:PaimonVanish()
end
--@region sub start & finish handlers
---按流程触发顺序
function Quest469:OnSubFinish46904(quest)
print("46904 Finish : Story")
self:NarratorOnlyTask(self.clientData.NarratorData.Story2)
end
function Quest469:OnSubStart46901(quest)
end
function Quest469:OnSubFinish46901(quest)
print("46901 Finish : Story")
self:NarratorOnlyTask(self.clientData.NarratorData.Story1)
self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q469Statue").pos, 1, 3, true)
globalActor:StopLocalAvatar()
globalActor:EnablePlayerInput(false)
self:CallDelay(3, self.OnEnableInput)
end
function Quest469:OnEnableInput()
print("469 Finish: Enable Player Input")
globalActor:EnablePlayerInput(true)
end
function Quest469:OnSubFinish46902(quest)
print("46902 Finish : Creat Paimon")
actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, PaimonData.Pos1, PaimonData.Dir1, true, false, 3)
end
function Quest469:OnSubFinish46903(quest)
print("46903 Finish : Paimon Vanish")
self:ActionSafeCall(self.Finish46903Do)
end
function Quest469:Finish46903Do(quest)
local paimon = actorMgr:GetActor(self.clientData.PaimonData.Paimon)
paimon:VanishKeep()
end
--@endregion
function Quest469:Start()
end
function Quest469:OnDestroy()
end
return Quest469

View File

@@ -0,0 +1,94 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest470 = class("Quest470", questActorProxy)
Quest470.defaultAlias = "Quest470"
local q470Cfg = require('Quest/Client/Q470ClientConfig')
local SaraData = q470Cfg.SaraData
-- Generated
function Quest470:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["47001"] = self.OnSubStart47001
self.subStartHandlers["47002"] = self.OnSubStart47002
self.subStartHandlers["47003"] = self.OnSubStart47003
self.subStartHandlers["47004"] = self.OnSubStart47004
end
function Quest470:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["47001"] = self.OnSubFinish47001
self.subFinishHandlers["47002"] = self.OnSubFinish47002
self.subFinishHandlers["47003"] = self.OnSubFinish47003
self.subFinishHandlers["47004"] = self.OnSubFinish47004
end
---sub start & finish 内调用的函数
function Quest470:PaimonVanish()
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
end
function Quest470:PaimonAppearTalk()
local PaimonData = self.clientData.PaimonData
local paimonPos = actorUtils.GetAvatarPos()
paimonPos.z = paimonPos.z+1.2
local paimonRot = {x=0,y=0,z=-1}
actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, paimonPos, M.Dir2Euler(paimonRot), true, false)
self:RequestInteraction(PaimonData.Paimon)
end
function Quest470:PaimonAppearTalkAfterBuy()
local PaimonData = self.clientData.PaimonData
local paimonPos = actorUtils.GetAvatarPos()
-- paimonPos.z = paimonPos.z+0.8
paimonPos.x = paimonPos.x+1.2
local paimonRot = {x=-1,y=0,z=0}
actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, paimonPos, M.Dir2Euler(paimonRot), true, false)
self:RequestInteraction(PaimonData.Paimon)
end
--@region sub start & finish handlers
---按流程触发顺序
function Quest470:OnSubStart47002(quest)
print("47002 Start : Creat Paimon and Talk")
self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q470ShopLookAt").pos, 0.2, 1.5, true)
self:CallDelay(2, self.PaimonAppearTalk)
end
function Quest470:OnSubFinish47002(quest)
print("47002 Finish : PaimonVanish")
self:PaimonVanish()
end
function Quest470:OnSubStart47004(quest)
print("47004 Start : Creat Paimon and Talk")
self:ActionSafeCall(
function(self)
self:CallDelay(2, self.PaimonAppearTalk)
end
)
end
function Quest470:OnSubFinish47004(quest)
print("47004 Finish : PaimonVanish")
self:PaimonVanish()
end
--@endregion
function Quest470:Start()
end
function Quest470:OnDestroy()
end
return Quest470

View File

@@ -0,0 +1,104 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest451 = class("Quest451", questActorProxy)
Quest451.defaultAlias = "Quest451"
local q451Cfg = require('Quest/Client/Q451ClientConfig')
local subIDs = q451Cfg.SubIDs
local paimonData = q451Cfg.PaimonData
local razorData = q451Cfg.RazorData
-- Generated
function Quest451:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["45101"] = self.OnSubStart45101
self.subStartHandlers["45102"] = self.OnSubStart45102
self.subStartHandlers["45103"] = self.OnSubStart45103
self.subStartHandlers["45104"] = self.OnSubStart45104
end
function Quest451:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["45101"] = self.OnSubFinish45101
self.subFinishHandlers["45102"] = self.OnSubFinish45102
self.subFinishHandlers["45103"] = self.OnSubFinish45103
self.subFinishHandlers["45104"] = self.OnSubFinish45104
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest451:PaimonDis()
local paimon = actorMgr:GetActor(paimonData.Alias)
if paimon ~= nil then
paimon:Destroy(false)
end
end
function Quest451:PaimonDelay()
self:CallDelay(3, self.PaimonDis)
end
function Quest451:OnSubStart45101(quest)
-- self:NarratorOnlyTask(q451Cfg.NarratorFlow1)
end
function Quest451:OnSubStart45102(quest)
print("45102 start:...")
actorMgr:CreateActorWithPos(paimonData.Alias, paimonData.Script, paimonData.ID, 0, paimonData.BornPos, paimonData.BornDir, true, false)
end
function Quest451:OnSubStart45103(quest)
end
function Quest451:OnSubStart45104(quest)
print("45104 start:...")
self.uActor:AvatarPaimonAppear()
actorMgr:CreateActorWithPos(razorData.Alias, razorData.Script, razorData.ID, 0, razorData.BornPos, razorData.BornDir, true, false)
end
--@endregion
--@region sub finish handlers
function Quest451:OnSubFinish45101(quest)
print("OnFinished 45101")
end
function Quest451:OnSubFinish45102(quest)
print("OnFinished 45102")
self:ActionSafeCall(self.PaimonDelay)
end
function Quest451:OnSubFinish45103(quest)
print("OnFinished 45103")
self:NarratorOnlyTask(q451Cfg.NarratorFlow2)
end
function Quest451:OnSubFinish45104(quest)
local razor = actorMgr:GetActor(razorData.Alias)
if razor ~= nil then
self:ActionSafeCall(
function(self)
razor:Destroy(false)
end
)
end
end
--@endregion
function Quest451:Start()
end
function Quest451:OnDestroy()
end
return Quest451

View File

@@ -0,0 +1,107 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest452 = class("Quest452", questActorProxy)
Quest452.defaultAlias = "Quest452"
local q452Cfg = require('Quest/Client/Q452ClientConfig')
local subIDs = q452Cfg.SubIDs
local paimonData = q452Cfg.PaimonData
local amborData = q452Cfg.AmborData
local farmerData = q452Cfg.FarmerData
-- Generated
function Quest452:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["45201"] = self.OnSubStart45201
self.subStartHandlers["45202"] = self.OnSubStart45202
self.subStartHandlers["45203"] = self.OnSubStart45203
self.subStartHandlers["45204"] = self.OnSubStart45204
self.subStartHandlers["45205"] = self.OnSubStart45205
end
function Quest452:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["45201"] = self.OnSubFinish45201
self.subFinishHandlers["45202"] = self.OnSubFinish45202
self.subFinishHandlers["45203"] = self.OnSubFinish45203
self.subFinishHandlers["45204"] = self.OnSubFinish45204
self.subFinishHandlers["45205"] = self.OnSubFinish45205
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest452:PaimonDis()
local paimon = actorMgr:GetActor(paimonData.Alias)
if paimon ~= nil then
paimon:Destroy(false)
end
end
function Quest452:PaimonDelay()
self:CallDelay(3, self.PaimonDis)
end
function Quest452:AmborToFight(quest)
actorMgr:CreateActorWithPos(amborData.Alias, amborData.Script, amborData.ID, 0, amborData.FightPos, amborData.FightDir, true, false)
end
function Quest452:OnSubStart45201(quest)
actorMgr:CreateActorWithPos(amborData.Alias, amborData.Script, amborData.ID, 0, amborData.BornPos, amborData.BornDir, true, false)
end
function Quest452:OnSubStart45202(quest)
print("45202 start:...")
self:ActionSafeCall(self.AmborToFight)
end
function Quest452:OnSubStart45203(quest)
actorMgr:CreateActorWithPos(farmerData.Alias, farmerData.Script, farmerData.ID, 0, farmerData.BornPos, farmerData.BornDir, true, false)
self:EnterSceneLookCamera(farmerData.BornPos, 2, 3, true)
end
function Quest452:OnSubStart45204(quest)
end
function Quest452:OnSubStart45205(quest)
end
--@endregion
--@region sub finish handlers
function Quest452:OnSubFinish45201(quest)
end
function Quest452:OnSubFinish45202(quest)
end
function Quest452:OnSubFinish45203(quest)
end
function Quest452:OnSubFinish45204(quest)
local ambor = actorMgr:GetActor(amborData.Alias)
if ambor ~= nil then
ambor:Destroy(false)
end
end
function Quest452:OnSubFinish45205(quest)
end
--@endregion
function Quest452:Start()
end
function Quest452:OnDestroy()
end
return Quest452

View File

@@ -0,0 +1,169 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest453 = class("Quest453", questActorProxy)
Quest453.defaultAlias = "Quest453"
local q453Cfg = require('Quest/Client/Q453ClientConfig')
local subIDs = q453Cfg.SubIDs
local paimonData = q453Cfg.PaimonData
local amborData = q453Cfg.AmborData
local farmerOldData = q453Cfg.FarmerOldData
local farmerAngryData = q453Cfg.FarmerAngryData
local farmer2Data = q453Cfg.Farmer2Data
local farmer3Data = q453Cfg.Farmer3Data
local farmerWound1Data = q453Cfg.FarmerWound1Data
local farmerWound2Data = q453Cfg.FarmerWound2Data
local farmerWound3Data = q453Cfg.FarmerWound3Data
local farmerAngry1Data = q453Cfg.FarmerAngry1Data
local farmerAngry2Data = q453Cfg.FarmerAngry2Data
local pawHintData = q453Cfg.PawHintData
local shitHintData = q453Cfg.ShitHintData
local hairHintData = q453Cfg.HairHintData
-- Generated
function Quest453:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["45301"] = self.OnSubStart45301
self.subStartHandlers["45302"] = self.OnSubStart45302
self.subStartHandlers["45303"] = self.OnSubStart45303
self.subStartHandlers["45304"] = self.OnSubStart45304
self.subStartHandlers["45305"] = self.OnSubStart45305
self.subStartHandlers["45306"] = self.OnSubStart45306
end
function Quest453:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["45301"] = self.OnSubFinish45301
self.subFinishHandlers["45302"] = self.OnSubFinish45302
self.subFinishHandlers["45303"] = self.OnSubFinish45303
self.subFinishHandlers["45304"] = self.OnSubFinish45304
self.subFinishHandlers["45305"] = self.OnSubFinish45305
self.subFinishHandlers["45306"] = self.OnSubFinish45306
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest453:PaimonDis()
local paimon = actorMgr:GetActor(paimonData.Alias)
if paimon ~= nil then
paimon:Destroy(false)
end
end
function Quest453:PaimonDelay()
self:CallDelay(3, self.PaimonDis)
end
function Quest453:FarmersPrepare()
local farmerOld = actorMgr:CreateActorWithPos(farmerOldData.Alias, farmerOldData.Script, farmerOldData.ID, 0, farmerOldData.BornPos, farmerOldData.BornDir, true, false)
farmerOld:DoFreeStyle(311)
local farmerAngry = actorMgr:CreateActorWithPos(farmerAngryData.Alias, farmerAngryData.Script, farmerAngryData.ID, 0, farmerAngryData.BornPos, farmerAngryData.BornDir, true, false)
farmerAngry:DoFreeStyle(371)
local farmer2 = actorMgr:CreateActorWithPos(farmer2Data.Alias, farmer2Data.Script, farmer2Data.ID, 0, farmer2Data.BornPos, farmer2Data.BornDir, true, false)
farmer2:DoFreeStyle(311)
local farmer3 = actorMgr:CreateActorWithPos(farmer3Data.Alias, farmer3Data.Script, farmer3Data.ID, 0, farmer3Data.BornPos, farmer3Data.BornDir, true, false)
farmer3:DoFreeStyle(311)
local farmerWound1 = actorMgr:CreateActorWithPos(farmerWound1Data.Alias, farmerWound1Data.Script, farmerWound1Data.ID, 0, farmerWound1Data.BornPos, farmerWound1Data.BornDir, true, false)
farmerWound1:DoFreeStyle(301)
local farmerWound2 = actorMgr:CreateActorWithPos(farmerWound2Data.Alias, farmerWound2Data.Script, farmerWound2Data.ID, 0, farmerWound2Data.BornPos, farmerWound2Data.BornDir, true, false)
farmerWound2:DoFreeStyle(301)
local farmerWound3 = actorMgr:CreateActorWithPos(farmerWound3Data.Alias, farmerWound3Data.Script, farmerWound3Data.ID, 0, farmerWound3Data.BornPos, farmerWound3Data.BornDir, true, false)
farmerWound3:DoFreeStyle(301)
end
function Quest453:OnSubStart45301(quest)
actorMgr:CreateActorWithPos(amborData.Alias, amborData.Script, amborData.ID, 0, amborData.BornPos, amborData.BornDir, true, false)
self:FarmersPrepare()
-- self.uActor:AvatarPaimonAppear()
end
function Quest453:OnSubStart45302(quest)
print("45302 start:...")
self:SpawnItem(pawHintData.ID, pawHintData.BornPos, nil, pawHintData.Alias, 3)
end
function Quest453:OnSubStart45303(quest)
self:SpawnItem(shitHintData.ID, shitHintData.BornPos, nil, shitHintData.Alias, 3)
end
function Quest453:OnSubStart45304(quest)
self:SpawnItem(hairHintData.ID, hairHintData.BornPos, nil, hairHintData.Alias, 3)
end
function Quest453:OnSubStart45305(quest)
local farmerAngry1 = actorMgr:CreateActorWithPos(farmerAngry1Data.Alias, farmerAngry1Data.Script, farmerAngry1Data.ID, 0, farmerAngry1Data.BornPos, farmerAngry1Data.BornDir, true, false)
farmerAngry1:DoFreeStyle(371)
local farmerAngry2 = actorMgr:CreateActorWithPos(farmerAngry2Data.Alias, farmerAngry2Data.Script, farmerAngry2Data.ID, 0, farmerAngry2Data.BornPos, farmerAngry2Data.BornDir, true, false)
farmerAngry2:DoFreeStyle(371)
end
function Quest453:OnSubStart45306(quest)
self:NarratorOnlyTask(q453Cfg.NarratorFlow1)
end
--@endregion
--@region sub finish handlers
function Quest453:OnSubFinish45301(quest)
end
function Quest453:OnSubFinish45302(quest)
self:NarratorOnlyTask(q453Cfg.NarratorFlow2)
end
function Quest453:OnSubFinish45303(quest)
self:NarratorOnlyTask(q453Cfg.NarratorFlow3)
end
function Quest453:OnSubFinish45304(quest)
self:NarratorOnlyTask(q453Cfg.NarratorFlow4)
end
function Quest453:OnSubFinish45305(quest)
local farmerAngry1 = actorMgr:GetActor(farmerAngry1Data.Alias)
if farmerAngry1 ~= nil then
farmerAngry1:RunToTask(sceneData:GetDummyPoint(3, "Q453FarmerAngeryRun").pos,
function(farmerAngry1, task)
farmerAngry1:Destroy(false)
end
)
end
local farmerAngry2 = actorMgr:GetActor(farmerAngry2Data.Alias)
if farmerAngry2 ~= nil then
farmerAngry2:RunToTask(sceneData:GetDummyPoint(3, "Q453FarmerAngeryRun").pos,
function(farmerAngry2, task)
farmerAngry2:Destroy(false)
end
)
end
end
function Quest453:OnSubFinish45306(quest)
end
--@endregion
function Quest453:Start()
end
function Quest453:OnDestroy()
end
return Quest453

View File

@@ -0,0 +1,175 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest454 = class("Quest454", questActorProxy)
Quest454.defaultAlias = "Quest454"
local q454Cfg = require('Quest/Client/Q454ClientConfig')
local subIDs = q454Cfg.SubIDs
local paimonData = q454Cfg.PaimonData
local amborData = q454Cfg.AmborData
local razorData = q454Cfg.RazorData
local wolfWoundData = q454Cfg.WolfWoundData
local wolfBossData = q454Cfg.WolfBossData
local farmer1Data = q454Cfg.Farmer1Data
local farmer2Data = q454Cfg.Farmer2Data
local herbData = q454Cfg.HerbData
-- Generated
function Quest454:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["45401"] = self.OnSubStart45401
self.subStartHandlers["45402"] = self.OnSubStart45402
self.subStartHandlers["45403"] = self.OnSubStart45403
self.subStartHandlers["45404"] = self.OnSubStart45404
self.subStartHandlers["45405"] = self.OnSubStart45405
self.subStartHandlers["45406"] = self.OnSubStart45406
end
function Quest454:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["45401"] = self.OnSubFinish45401
self.subFinishHandlers["45402"] = self.OnSubFinish45402
self.subFinishHandlers["45403"] = self.OnSubFinish45403
self.subFinishHandlers["45404"] = self.OnSubFinish45404
self.subFinishHandlers["45405"] = self.OnSubFinish45405
self.subFinishHandlers["45406"] = self.OnSubFinish45406
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest454:PaimonDis()
local paimon = actorMgr:GetActor(paimonData.Alias)
if paimon ~= nil then
paimon:Destroy(false)
end
end
function Quest454:PaimonDelay()
self:CallDelay(3, self.PaimonDis)
end
function Quest454:OnSubStart45401(quest)
actorMgr:CreateActorWithPos(razorData.Alias, razorData.Script, razorData.ID, 0, razorData.BornPos, razorData.BornDir, true, false)
actorMgr:CreateActorWithPos(wolfWoundData.Alias, wolfWoundData.Script, wolfWoundData.ID, 0, wolfWoundData.BornPos, wolfWoundData.BornDir, true, false)
self:ActionSafeCall(
function(self)
actorMgr:CreateActorWithPos(amborData.Alias, amborData.Script, amborData.ID, 0, amborData.BornPos, amborData.BornDir, true, false)
end
)
-- self.uActor:AvatarPaimonAppear()
end
function Quest454:OnSubStart45402(quest)
print("45402 start:...")
self:SpawnItem(herbData.ID, herbData.BornPos, nil, herbData.Alias, 3)
end
function Quest454:OnSubStart45403(quest)
local farmer1 = actorMgr:CreateActorWithPos(farmer1Data.Alias, farmer1Data.Script, farmer1Data.ID, 0, farmer1Data.BornPos, farmer1Data.BornDir, true, false)
farmer1:RunToTask(farmer1Data.TalkPos,
function(farmer1, task)
farmer1:Standby()
farmer1:DoFreeStyle(371)
end
)
local farmer2 = actorMgr:CreateActorWithPos(farmer2Data.Alias, farmer2Data.Script, farmer2Data.ID, 0, farmer2Data.BornPos, farmer2Data.BornDir, true, false)
farmer2:RunToTask(farmer2Data.TalkPos,
function(farmer2, task)
farmer2:Standby()
farmer2:DoFreeStyle(371)
end
)
end
function Quest454:OnSubStart45404(quest)
end
function Quest454:OnSubStart45405(quest)
self:SpawnMonster(21010101, 1, wolfBossData.BornPos, nil, nil, nil, "WolfBoss")
end
function Quest454:OnSubStart45406(quest)
actorMgr:CreateActorWithPos(wolfBossData.Alias, wolfBossData.Script, wolfBossData.ID, 0, wolfBossData.BornPos, wolfBossData.BornDir, true, false)
end
--@endregion
--@region sub finish handlers
function Quest454:OnSubFinish45401(quest)
end
function Quest454:OnSubFinish45402(quest)
end
function Quest454:OnSubFinish45403(quest)
local farmer1 = actorMgr:GetActor(farmer1Data.Alias)
if farmer1 ~= nil then
farmer1:RunToTask(farmer1Data.BornPos,
function(farmer1, task)
farmer1:Destroy(false)
end
)
end
local farmer2 = actorMgr:GetActor(farmer2Data.Alias)
if farmer2 ~= nil then
farmer2:RunToTask(farmer2Data.BornPos,
function(farmer2, task)
farmer2:Destroy(false)
end
)
end
end
function Quest454:OnSubFinish45404(quest)
end
function Quest454:OnSubFinish45405(quest)
end
function Quest454:OnSubFinish45406(quest)
local wolfBoss = actorMgr:GetActor(wolfBossData.Alias)
if wolfBoss ~= nil then
self:ActionSafeCall(
function(self)
wolfBoss:Destroy(false)
end
)
end
local razor = actorMgr:GetActor(razorData.Alias)
if razor ~= nil then
self:ActionSafeCall(
function(self)
razor:Destroy(false)
end
)
end
local ambor = actorMgr:GetActor(amborData.Alias)
if ambor ~= nil then
self:ActionSafeCall(
function(self)
ambor:Destroy(false)
end
)
end
end
--@endregion
function Quest454:Start()
end
function Quest454:OnDestroy()
end
return Quest454

View File

@@ -0,0 +1,323 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest461 = class("Quest461", questActorProxy)
Quest461.defaultAlias = "Quest461"
local q461Cfg = require('Quest/Client/Q461ClientConfig')
local DailyNpcManager = require('Actor/DailyNPCManager')
local count =0
--local KaeyaData = Quest461.clientData.KaeyaData
local KaeyaData = q461Cfg.KaeyaData
local PaimonData=q461Cfg.PaimonData
local KaeyaNPCBossData = q461Cfg.KaeyaNPCBossData
--local NPCData=Quest461.clientData.NPCData
local NPCData=q461Cfg.NPCData
---sub start & finish 内调用的函数
function Quest461:PaimonVanish()
print("paimon vanish")
local paimon = actorMgr:GetActor(PaimonData.Alias)
paimon:AirModeOff()
--paimon:VanishKeep()
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
-- Generated
function Quest461:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["46101"] = self.OnSubStart46101
self.subStartHandlers["46102"] = self.OnSubStart46102
self.subStartHandlers["46103"] = self.OnSubStart46103
self.subStartHandlers["46104"] = self.OnSubStart46104
self.subStartHandlers["46105"] = self.OnSubStart46105
self.subStartHandlers["46106"] = self.OnSubStart46106
self.subStartHandlers["46107"] = self.OnSubStart46107
self.subStartHandlers["46109"] = self.OnSubStart46109
end
function Quest461:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["46101"] = self.OnSubFinish46101
self.subFinishHandlers["46102"] = self.OnSubFinish46102
self.subFinishHandlers["46103"] = self.OnSubFinish46103
self.subFinishHandlers["46104"] = self.OnSubFinish46104
self.subFinishHandlers["46105"] = self.OnSubFinish46105
self.subFinishHandlers["46106"] = self.OnSubFinish46106
self.subFinishHandlers["46107"] = self.OnSubFinish46107
self.subFinishHandlers["46109"] = self.OnSubFinish46109
end
--开车对话的回调
function Quest461:DestroyNpc()
local npc = actorMgr:GetActor(KaeyaNPCBossData.NpcBoss)
npc:Destroy(false)
end
function Quest461:MoveKaeya()
local kaeya = actorMgr:GetActor(KaeyaData.Kaeya)
kaeya:Destroy(false)
actorMgr:CreateActorWithPos(KaeyaData.Kaeya, KaeyaData.KaeyaScript, KaeyaData.KaeyaID, 0, KaeyaData.OutPos, KaeyaData.OutDir, true, false,3)
end
function Quest461:DestroyKaeya()
local kaeya = actorMgr:GetActor(KaeyaData.Kaeya)
kaeya:Destroy(false)
end
function Quest461:InvokeOnInteraction(param)
print("461 Invoke : ")
if param == 0 then
print("Invoke 0")
self:KaeyaTask2()
elseif param == 1 then
print("Invoke 1")
--self:NPCTask()
self:CallDelay(1,self.NPCTask)
end
end
function Quest461:KaeyaTask()
local kaeya = actorMgr:GetActor(KaeyaData.Kaeya)
--kaeya:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
kaeya:EnableInteraction(false)
print("46101 RunToStart")
kaeya:RunToTask(KaeyaData.InPos2,
function(actor, task)
print("46101 RunToEnd")
actor:ClearFollowTask()
--actor:ClearPriorityInter(InterTimingType.BTN)
actor:EnableInteraction(true)
actor:PerformDither(false,1,self.MoveKaeya)
--actorMgr:CreateActorWithPos(KaeyaData.Kaeya, KaeyaData.KaeyaScript, KaeyaData.KaeyaID, 0, KaeyaData.OutPos, KaeyaData.OutDir, true, false,3)
--actor:Destroy(false)
--actor:Standby()
--actor:TurnTo(M.Euler2DirXZ(self.clientData.AmborData.DoorDir))
end
)
end
function Quest461:KaeyaTask2()
local kaeya = actorMgr:GetActor(KaeyaData.Kaeya)
--kaeya:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
--kaeya:EnableInteraction(false)
print("46102 RunToStart")
kaeya:WalkToTask(KaeyaData.LeavePos,
function(actor, task)
print("46102 RunToEnd")
actor:ClearFollowTask()
--actor:ClearPriorityInter(InterTimingType.BTN)
--actor:EnableInteraction(true)
--actor:PerformDither(false,1,self.DestroyKaeya)
actor:SetVisible(false)
--actorMgr:CreateActorWithPos(KaeyaData.Kaeya, KaeyaData.KaeyaScript, KaeyaData.KaeyaID, 0, KaeyaData.InPos, KaeyaData.InDir, true, false,1004)
--actor:Destroy(false)
--actor:Standby()
--actor:TurnTo(M.Euler2DirXZ(self.clientData.AmborData.DoorDir))
end
)
end
function Quest461:KaeyaTask3()
local kaeya = actorMgr:GetActor(KaeyaData.Kaeya)
--kaeya:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
kaeya:EnableInteraction(false)
print("46107 RunToStart")
kaeya:WalkToTask(KaeyaData.LeavePos2,
function(actor, task)
print("46102 RunToEnd")
actor:ClearFollowTask()
--actor:ClearPriorityInter(InterTimingType.BTN)
actor:EnableInteraction(true)
actor:PerformDither(false,1,self.DestroyKaeya)
--actor:SetVisible(false)
--actorMgr:CreateActorWithPos(KaeyaData.Kaeya, KaeyaData.KaeyaScript, KaeyaData.KaeyaID, 0, KaeyaData.InPos, KaeyaData.InDir, true, false,1004)
--actor:Destroy(false)
--actor:Standby()
--actor:TurnTo(M.Euler2DirXZ(self.clientData.AmborData.DoorDir))
end
)
end
function Quest461:NPCTask()
local npc = actorMgr:GetActor(KaeyaNPCBossData.NpcBoss)
--npc:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
npc:EnableInteraction(false)
print("46102 RunToStart")
npc:RunToTask(KaeyaNPCBossData.ToPos,
function(actor, task)
print("46104 RunToEnd")
--actor:ClearPriorityInter(InterTimingType.BTN)
actor:EnableInteraction(true)
actor:PerformDither(false, 2,self.DestroyNpc)
--actor:SetVisible(false)
--actorMgr:CreateActorWithPos(KaeyaData.Kaeya, KaeyaData.KaeyaScript, KaeyaData.KaeyaID, 0, KaeyaData.InPos, KaeyaData.InDir, true, false,1004)
--actor:Destroy(false)
--actor:Standby()
--actor:TurnTo(M.Euler2DirXZ(self.clientData.AmborData.DoorDir))
end
)
end
--@region sub start & finish handlers
---按流程触发顺序
function Quest461:OnSubStart46101(quest)
print("46101 Start : Creat Kaeya")
actorMgr:CreateActorWithPos(KaeyaData.Kaeya, KaeyaData.KaeyaScript, KaeyaData.KaeyaID, 0, KaeyaData.InPos, KaeyaData.InDir, true, false,1004)
end
function Quest461:OnSubFinish46101(quest)
print("46101 Finish : Kaeya Leave")
self:ActionSafeCall(self:KaeyaTask())
self:PaimonVanish()
end
function Quest461:OnSubStart46102(quest)
print("46102 Start : ")
--actorMgr:CreateActorWithPos(KaeyaData.Kaeya, KaeyaData.KaeyaScript, KaeyaData.KaeyaID, 0, KaeyaData.OutPos, KaeyaData.OutDir, true, false,3)
--[[self:ActionSafeCall(
function(self)
actorMgr:CreateActorWithPos(KaeyaData.Kaeya, KaeyaData.KaeyaScript, KaeyaData.KaeyaID, 0, KaeyaData.OutPos, KaeyaData.OutDir, true, false,3)
end
)]]
end
function Quest461:OnSubFinish46102(quest)
print("46102 Finish : ")
self:PaimonVanish()
end
function Quest461:OnSubStart46109(quest)
print("46109 Start : ")
--actorMgr:CreateActorWithPos(NPCData.Invisible, NPCData.NpcScript, NPCData.InvisibleID, 0, NPCData.InvisiblePos, NPCData.InvisibleDir, true, false,3)
self:ShowBlackScreen(0.5,0.5,0.5, self.StartTalk)
end
function Quest461:StartTalk()
print("46302 Start : ")
actorMgr:CreateActorWithPos(KaeyaData.Kaeya, KaeyaData.KaeyaScript, KaeyaData.KaeyaID, 0, KaeyaData.OutPos, KaeyaData.OutDir, true, false,3)
self:ActionSafeCall(
function(self)
self:RequestInteraction(KaeyaData.Kaeya)
end
)
-- self:CallDelay(0.2,
-- function(self)
-- self:RequestInteraction(KaeyaData.Kaeya)
-- end
-- )
end
function Quest461:OnSubFinish46109(quest)
print("46109 Finish : ")
local Invisible = actorMgr:GetActor(NPCData.Invisible)
local Kaeya = actorMgr:GetActor(KaeyaData.Kaeya)
local Paimon = actorMgr:GetActor(PaimonData.Alias)
self:ActionSafeCall(
function(self)
Invisible:Destroy(false)
self:DestroyKaeya()
self:PaimonVanish()
end
)
end
function Quest461:OnSubStart46103(quest)
print("46103 Start : ")
count=0
self:NotifyTo("MengdeDayStand_4", DailyNpcManager.NpcEventType.BANDAILY, true)
self:NotifyTo("MengdeDayStand_5", DailyNpcManager.NpcEventType.BANDAILY, true)
self:NotifyTo("MengdeDayStand_6", DailyNpcManager.NpcEventType.BANDAILY, true)
end
function Quest461:OnSubStart46104(quest)
print("46104 Start : ")
self:ActionSafeCall(
function(self)
actorMgr:CreateActorWithPos(KaeyaData.Kaeya, KaeyaData.KaeyaScript, KaeyaData.KaeyaID, 0, KaeyaData.InPos, KaeyaData.InDir, true, false,1004)
end
)
end
function Quest461:CountTalk()
count=count+1
if count ==3 then
local quest = actorMgr:GetActor(q461Cfg.ActorAlias)
if quest ~= nil then
print("46103 finish quest ")
--quest:FinishQuestID(false, 46103)
end
end
end
function Quest461:OnSubFinish46104(quest)
print("46104 Finish : ")
local npc = actorMgr:GetActor(KaeyaNPCBossData.NpcBoss)
--npc:SetPos(KaeyaNPCBossData.To0Pos)
--self:NPCTask()
self:PaimonVanish()
self:CountTalk()
end
function Quest461:OnSubFinish46105(quest)
print("46105 Finish : ")
self:PaimonVanish()
self:CountTalk()
end
function Quest461:OnSubFinish46106(quest)
print("46106 Finish : ")
self:PaimonVanish()
self:CountTalk()
end
function Quest461:OnSubFinish46107(quest)
print("46107 Finish : ")
self:NotifyTo("MengdeDayStand_4", DailyNpcManager.NpcEventType.STARTDAILY, true)
self:NotifyTo("MengdeDayStand_5", DailyNpcManager.NpcEventType.STARTDAILY, true)
self:NotifyTo("MengdeDayStand_6", DailyNpcManager.NpcEventType.STARTDAILY, true)
self:PaimonVanish()
self:KaeyaTask3()
end
function Quest461:OnSubStart46107(quest)
print("46107 Start : ")
actorMgr:CreateActorWithPos(KaeyaData.Kaeya, KaeyaData.KaeyaScript, KaeyaData.KaeyaID, 0, KaeyaData.Out2Pos, KaeyaData.Out2Dir, true, false,3)
--local quest = actorMgr:GetActor(q461Cfg.ActorAlias)
--if quest ~= nil then
--print("46107 finish quest ")
--quest:FinishQuest(false, nil)
--end
self:NarratorOnlyTask(self.clientData.NarratorData.Story1,self.OnNarratorFinish)
end
--@endregion
function Quest461:Start()
end
function Quest461:OnDestroy()
end
return Quest461

View File

@@ -0,0 +1,217 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest462 = class("Quest462", questActorProxy)
Quest462.defaultAlias = "Quest462"
local q462Cfg = require('Quest/Client/Q462ClientConfig')
local PaimonData=q462Cfg.PaimonData
local KaeyaData = q462Cfg.KaeyaData
local TreasureData = q462Cfg.TreasureData
local NPCData=q462Cfg.NPCData
--local KaeyaNPC = actorMgr:GetActor(NPCData.Npc)
--local NPCData=Quest462.clientData.NPCData
---sub start & finish 内调用的函数
function Quest462:PaimonVanish()
--self:ShowTutorialDialog(113)
local paimon = actorMgr:GetActor(PaimonData.Alias)
paimon:AirModeOff()
--paimon:VanishKeep()
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
-- Generated
function Quest462:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["46201"] = self.OnSubStart46201
self.subStartHandlers["46202"] = self.OnSubStart46202
self.subStartHandlers["46203"] = self.OnSubStart46203
self.subStartHandlers["46204"] = self.OnSubStart46204
self.subStartHandlers["46205"] = self.OnSubStart46205
self.subStartHandlers["46206"] = self.OnSubStart46206
self.subStartHandlers["46207"] = self.OnSubStart46207
self.subStartHandlers["46208"] = self.OnSubStart46208
self.subStartHandlers["46209"] = self.OnSubStart46209
self.subStartHandlers["46210"] = self.OnSubStart46210
end
function Quest462:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["46201"] = self.OnSubFinish46201
self.subFinishHandlers["46202"] = self.OnSubFinish46202
self.subFinishHandlers["46203"] = self.OnSubFinish46203
self.subFinishHandlers["46204"] = self.OnSubFinish46204
self.subFinishHandlers["46205"] = self.OnSubFinish46205
self.subFinishHandlers["46206"] = self.OnSubFinish46206
self.subFinishHandlers["46207"] = self.OnSubFinish46207
self.subFinishHandlers["46208"] = self.OnSubFinish46208
self.subFinishHandlers["46209"] = self.OnSubFinish46209
self.subFinishHandlers["46210"] = self.OnSubFinish46210
end
--@region sub start & finish handlers
---按流程触发顺序
function Quest462:OnSubStart46201(quest)
print("46201 Start : Creat Kaeya")
actorMgr:CreateActorWithPos(NPCData.Npc, NPCData.NPCScript, NPCData.NpcID, 0, NPCData.NPCBornPos, NPCData.NPCBornDir, true, false,3)
end
function Quest462:OnSubStart46202(quest)
print("46202 Start : ")
actorMgr:CreateActorWithPos(NPCData.Npc, NPCData.NPCScript, NPCData.NpcID, 0, NPCData.NPCBornPos, NPCData.NPCBornDir, true, false,3)
local KaeyaNPC = actorMgr:GetActor(NPCData.Npc)
--KaeyaNPC:AddPriorityInter(InterTimingType.BTN, q462Cfg.InterData.NoReplyInter)
--KaeyaNPC:TriggerNpcSpeechBubble(NPCData.Npc,NPCData.bubble)
KaeyaNPC:EnableInteraction(false)
KaeyaNPC:RunToRouteTask(q462Cfg.RoutePoints,
function(actor, task)
actor:ClearFollowTask()
--actor:ClearPriorityInter(InterTimingType.BTN)
actor:EnableInteraction(true)
actor:Standby()
KaeyaNPC:ClearNpcSpeechBubble(NPCData.Npc)
actor:DoFreeStyle(1070)
--actor:TurnTo(M.Euler2DirXZ(NPCData.NPCToDir))
end
)
self:CallDelay(0,self.SceneLookCamera)
self:CallDelay(2,self.PaimonNarrator)
self:CallDelay(4,self.PlayerInputOn)
--self:EnterSceneLookCamera(NPCData.cameraPos, 2, 3, true)
end
function Quest462:SceneLookCamera(quest)
print("PaimonNarrator Start : ")
self:EnablePlayerInput(false)
self:EnterSceneLookCamera(NPCData.cameraPos, 1, 3, true)
--self:NarratorOnlyTask(q462Cfg.NarratorData.Story4)
--self:EnablePlayerInput(true)
end
function Quest462:PaimonNarrator(quest)
print("PaimonNarrator Start : ")
--self:EnablePlayerInput(false)
--self:EnterSceneLookCamera(NPCData.cameraPos, 3, 3, true)
self:NarratorOnlyTask(q462Cfg.NarratorData.Story4)
--self:EnablePlayerInput(true)
end
function Quest462:PlayerInputOn()
print("PaimonNarrator Start : ")
self:EnablePlayerInput(true)
end
function Quest462:OnSubStart46203(quest)
print("46203 Start : ")
local KaeyaNPC = actorMgr:GetActor(NPCData.Npc)
KaeyaNPC:DoFreeStyle(363)
KaeyaNPC:Standby(true)
KaeyaNPC:Standby()
KaeyaNPC:TurnTo(M.Euler2DirXZ(NPCData.NPCToDir))
--actorMgr:CreateActorWithPos(NPCData.Npc, NPCData.NPCScript, NPCData.NpcID, 0, NPCData.NPCToPos, NPCData.NPCToDir, true, false,3)
end
function Quest462:OnSubFinish46203(quest)
print("46203 Finish : ")
self:PaimonVanish()
end
function Quest462:OnSubStart46204(quest)
print("46204 Start : ")
--[[self:ActionSafeCall(
function(self)
self:NarratorOnlyTask(q462Cfg.NarratorData.Story1)
end
)]]
--self:SpawnItem(TreasureData.Treasure1ID, TreasureData.Treasure1Pos, nil, TreasureData.Alias1, 3)
actorMgr:CreateActorWithPos(KaeyaData.Kaeya, KaeyaData.KaeyaScript, KaeyaData.KaeyaID, 0, KaeyaData.InPos, KaeyaData.InDir, true, false,1004)
end
function Quest462:StartTalk46204()
print("46302 Start : ")
actorMgr:CreateActorWithPos(PaimonData.Alias, PaimonData.Script, PaimonData.ID, 0, PaimonData.Pos, PaimonData.Dir, true, false,3)
self:CallDelay(0.2,
function(self)
self:RequestInteraction(PaimonData.Alias)
end
)
end
function Quest462:OnSubFinish46204(quest)
print("46204 Finish : ")
--self:ShowBlackScreen(0.3,0.4,0.3, self.StartTalk46204)
--self:RequestInteraction(PaimonData.Alias)
--self:ActionSafeCall(
--function(self)
--self:RequestInteraction(PaimonData.Alias)
--end
--)
end
function Quest462:InvokeOnInteraction(param)
print("462 Invoke : ")
if param == 0 then
print("Invoke 0")
self:ShowTutorialDialog(180)
elseif param == 1 then
self:ShowTutorialDialog(181)
elseif param == 2 then
self:ShowTutorialDialog(182)
end
end
function Quest462:OnSubStart46206(quest)
print("46206 Start : ")
--self:SpawnItem(TreasureData.Treasure2ID, TreasureData.Treasure2Pos, nil, TreasureData.Alias2, 3)
actorMgr:CreateActorWithPos(KaeyaData.Kaeya, KaeyaData.KaeyaScript, KaeyaData.KaeyaID, 0, KaeyaData.InPos, KaeyaData.InDir, true, false,1004)
end
function Quest462:OnSubFinish46206(quest)
print("46206 Finish : ")
--self:NarratorOnlyTask(q462Cfg.NarratorData.Story3)
end
function Quest462:OnSubFinish46205(quest)
print("46205 Finish : ")
self:PaimonVanish()
end
function Quest462:OnSubFinish46207(quest)
print("46207 Finish : ")
self:PaimonVanish()
end
function Quest462:OnSubStart46210(quest)
print("46210 Start : ")
self:ShowBlackScreen(0.5,0.5,0.5, self.StartTalk46204)
end
function Quest462:OnSubFinish46210(quest)
print("46210 Finish : ")
self:ActionSafeCall(
function(self)
self:PaimonVanish()
end
)
end
--@endregion
function Quest462:Start()
end
function Quest462:OnDestroy()
end
return Quest462

View File

@@ -0,0 +1,450 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest463 = class("Quest463", questActorProxy)
Quest463.defaultAlias = "Quest463"
local q463Cfg = require('Quest/Client/Q463ClientConfig')
--local KaeyaData = Quest463.clientData.KaeyaData
local kaeyaData = q463Cfg.KaeyaData
local paimonData = q463Cfg.PaimonData
local npcBossData=q463Cfg.KaeyaNPCBossData
local DungeonData = q463Cfg.DungeonData
local Invisible=q463Cfg.Invisible
local SoldierData=q463Cfg.SoldierData
--local kaeya = actorMgr:GetActor(KaeyaData.kaeya)
--local NPCData=Quest463.clientData.NPCData
function Quest463:PaimonVanish()
--self:ShowTutorialDialog(113)
print("463 PaimonVanish")
local paimon = actorMgr:GetActor(paimonData.Alias)
paimon:AirModeOff()
--paimon:VanishKeep()
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
-- Generated
function Quest463:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["46300"] = self.OnSubStart46300
self.subStartHandlers["46301"] = self.OnSubStart46301
self.subStartHandlers["46302"] = self.OnSubStart46302
self.subStartHandlers["46303"] = self.OnSubStart46303
self.subStartHandlers["46304"] = self.OnSubStart46304
self.subStartHandlers["46305"] = self.OnSubStart46305
self.subStartHandlers["46306"] = self.OnSubStart46306
self.subStartHandlers["46307"] = self.OnSubStart46307
self.subStartHandlers["46308"] = self.OnSubStart46308
end
function Quest463:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["46300"] = self.OnSubFinish46300
self.subFinishHandlers["46301"] = self.OnSubFinish46301
self.subFinishHandlers["46302"] = self.OnSubFinish46302
self.subFinishHandlers["46303"] = self.OnSubFinish46303
self.subFinishHandlers["46304"] = self.OnSubFinish46304
self.subFinishHandlers["46305"] = self.OnSubFinish46305
self.subFinishHandlers["46306"] = self.OnSubFinish46306
self.subFinishHandlers["46307"] = self.OnSubFinish46307
self.subFinishHandlers["46308"] = self.OnSubFinish46308
end
function Quest463:PaimonEnter()
--actorMgr:CreateActorWithPos(paimonData.Alias, paimonData.Script, paimonData.ID, 0, paimonData.BornPos, paimonData.BornDir, true, false,3)
local paimon = actorMgr:GetActor(paimonData.Alias)
paimon:SetVisible(true)
--kaeya:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
print("463 PaimonEnter")
paimon:WalkToTask(paimonData.Pos3,
function(actor, task)
--actor:ClearFollowTask()
--actor:ClearPriorityInter(InterTimingType.BTN)
--actorMgr:CreateActorWithPos(paimonData.Alias, paimonData.Script, paimonData.ID, 0, paimonData.Pos3, paimonData.Dir3, true, false,3)
actor:Standby()
print("463 PaimonEnter TurnTo")
actor:TurnTo(M.Euler2DirXZ(paimonData.Dir3))
end
)
end
function Quest463:KaeyaLeave()
local kaeya = actorMgr:GetActor(kaeyaData.Kaeya)
kaeya:SetVisible(true)
--kaeya:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
kaeya:EnableInteraction(false)
print("463 KaeyaLeave")
kaeya:WalkToTask(paimonData.BornPos,
function(actor, task)
--actor:ClearFollowTask()
--actor:ClearPriorityInter(InterTimingType.BTN)
actor:EnableInteraction(true)
--actorMgr:CreateActorWithPos(paimonData.Alias, paimonData.Script, paimonData.ID, 0, paimonData.Pos3, paimonData.Dir3, true, false,3)
--actor:Destroy(false)
actor:Standby()
actor:SetVisible(false)
end
)
end
function Quest463:Soldier1Enter()
local soldier1 = actorMgr:GetActor(SoldierData.Alias1)
soldier1:SetVisible(true)
soldier1:WalkToTask(SoldierData.Pos1,
function(actor, task)
--actor:ClearFollowTask()
--actor:ClearPriorityInter(InterTimingType.BTN)
--actorMgr:CreateActorWithPos(paimonData.Alias, paimonData.Script, paimonData.ID, 0, paimonData.Pos3, paimonData.Dir3, true, false,3)
--actor:Destroy(false)
actor:Standby()
actor:TurnTo(M.Euler2DirXZ(SoldierData.Dir1))
end
)
end
function Quest463:Soldier2Enter()
local soldier2 = actorMgr:GetActor(SoldierData.Alias2)
soldier2:SetVisible(true)
soldier2:WalkToTask(SoldierData.Pos2,
function(actor, task)
--actor:ClearFollowTask()
--actor:ClearPriorityInter(InterTimingType.BTN)
--actorMgr:CreateActorWithPos(paimonData.Alias, paimonData.Script, paimonData.ID, 0, paimonData.Pos3, paimonData.Dir3, true, false,3)
--actor:Destroy(false)
--actor:Standby()
actor:TurnTo(M.Euler2DirXZ(SoldierData.Dir2))
end
)
end
function Quest463:KaeyaEnter()
local kaeya = actorMgr:GetActor(kaeyaData.Kaeya)
kaeya:SetVisible(true)
--kaeya:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
print("463 KaeyaEnter")
kaeya:WalkToTask(kaeyaData.InPos,
function(actor, task)
--actor:ClearFollowTask()
--actor:ClearPriorityInter(InterTimingType.BTN)
--actorMgr:CreateActorWithPos(paimonData.Alias, paimonData.Script, paimonData.ID, 0, paimonData.Pos3, paimonData.Dir3, true, false,3)
--actor:Destroy(false)
actor:Standby()
actor:TurnTo(M.Euler2DirXZ(kaeyaData.InDir))
end
)
self:CallDelay(0.1,self.Soldier1Enter)
self:CallDelay(0.2,self.Soldier2Enter)
end
function Quest463:NPCEnter()
local npc = actorMgr:GetActor(npcBossData.NpcBoss)
npc:SetVisible(true)
--kaeya:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
print("463 NPCEnter")
npc:WalkToTask(npcBossData.NpcBossPos,
function(actor, task)
--actor:ClearFollowTask()
--actor:ClearPriorityInter(InterTimingType.BTN)
--actorMgr:CreateActorWithPos(paimonData.Alias, paimonData.Script, paimonData.ID, 0, paimonData.Pos3, paimonData.Dir3, true, false,3)
--actor:Destroy(false)
actor:Standby()
print("463 NPCEnter TurnTo")
actor:TurnTo(M.Euler2DirXZ(npcBossData.NpcBossDir))
end
)
end
function Quest463:NPCRun()
local npc = actorMgr:GetActor(npcBossData.NpcBoss)
--kaeya:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
print("463 NPCRun")
npc:RunToTask(npcBossData.TrapPos,
function(actor, task)
--actor:ClearFollowTask()
--actor:ClearPriorityInter(InterTimingType.BTN)
--actorMgr:CreateActorWithPos(paimonData.Alias, paimonData.Script, paimonData.ID, 0, paimonData.Pos3, paimonData.Dir3, true, false,3)
--actor:Destroy(false)
actor:Standby()
actor:TurnTo(M.Euler2DirXZ(npcBossData.TrapDir))
print("Invoke 0 finish quest")
local quest = actorMgr:GetActor(q463Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
)
end
function Quest463:NPCRun2()
local npc = actorMgr:GetActor(npcBossData.NpcBoss)
--kaeya:AddPriorityInter(InterTimingType.BTN, self.clientData.InterData.NoReplyInter)
print("463 NPCRun")
npc:RunToTask(npcBossData.LastPos,
function(actor, task)
--actor:ClearFollowTask()
--actor:ClearPriorityInter(InterTimingType.BTN)
--actorMgr:CreateActorWithPos(paimonData.Alias, paimonData.Script, paimonData.ID, 0, paimonData.Pos3, paimonData.Dir3, true, false,3)
--actor:Destroy(false)
actor:Standby()
actor:PerformDither(false,2)
end
)
end
function Quest463:NPCTrans()
local npc = actorMgr:GetActor(npcBossData.NpcBoss)
print("463 NPCTrans")
npc:ClearAllTask()
npc:SetPosAndTurnTo(npcBossData.NpcBossPos,M.Euler2DirXZ(npcBossData.NpcBossDir),true)
--actorMgr:CreateActorWithPos(npcBossData.NpcBoss, npcBossData.NpcBossScript, npcBossData.NpcBossID, 0, npcBossData.NpcBossPos, npcBossData.NpcBossDir, true, false,20016)
end
function Quest463:PaiMonTrans()
local paimon = actorMgr:GetActor(paimonData.Alias)
print("463 PaiMonTrans")
paimon:ClearAllTask()
paimon:SetPosAndTurnTo(paimonData.Pos3,M.Euler2DirXZ(paimonData.Dir3),true)
end
function Quest463:KaeyaTrans()
local kaeya = actorMgr:GetActor(kaeyaData.Kaeya)
local soldier1 = actorMgr:GetActor(SoldierData.Alias1)
local soldier2 = actorMgr:GetActor(SoldierData.Alias2)
print("463 KaeyaTrans")
kaeya:ClearAllTask()
soldier1:ClearAllTask()
soldier2:ClearAllTask()
kaeya:SetPosAndTurnTo(kaeyaData.InPos,M.Euler2DirXZ(kaeyaData.InDir),true)
soldier1:SetPosAndTurnTo(SoldierData.Pos1,M.Euler2DirXZ(SoldierData.Dir1),true)
soldier2:SetPosAndTurnTo(SoldierData.Pos2,M.Euler2DirXZ(SoldierData.Dir2),true)
end
function Quest463:InvokeOnInteraction(param)
print("463 Invoke : ")
if param == 0 then
print("Invoke 0 finish quest")
local quest = actorMgr:GetActor(q463Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
elseif param == 1 then
print("Invoke 1 paimon born")
self:PaimonEnter()
elseif param == 2 then
self:NPCEnter()
elseif param == 3 then
self:KaeyaEnter()
elseif param == 4 then
self:CallDelay(0.5,self.NPCRun)
elseif param == 5 then
print("Invoke 5 kaeya leave")
self:KaeyaLeave()
elseif param == 6 then
print("Invoke 6 npc trans")
--self:CallDelay(0,self.NPCTrans)
self:NPCTrans()
elseif param == 7 then
print("Invoke 7 PaiMonTrans")
--self:CallDelay(0,self.PaiMonTrans)
self:PaiMonTrans()
elseif param == 8 then
print("Invoke 8 KaeyaTrans")
--self:CallDelay(0,self.KaeyaTrans)
self:KaeyaTrans()
elseif param == 10 then
print("Invoke 10 treasure")
self:ShowTutorialDialog(182)
elseif param == 11 then
print("Invoke 11 treasure")
self:NPCDisappear()
elseif param == 12 then
print("Invoke 12 treasure")
--self:NPCRun2()
self:CallDelay(3,self.NPCRun2)
end
end
function Quest463:NPCDisappear()
local npc = actorMgr:GetActor(npcBossData.NpcBoss)
local soldier1 = actorMgr:GetActor(SoldierData.Alias1)
local soldier2 = actorMgr:GetActor(SoldierData.Alias2)
npc:SetVisible(false)
soldier1:SetVisible(false)
soldier2:SetVisible(false)
end
function Quest463:OnSubFinish46306(quest)
print("46306 Finish : Creat Kaeya")
-- actorMgr:CreateActorWithPos(npcBossData.NpcBoss, npcBossData.NpcBossScript, npcBossData.NpcBossID, 0, npcBossData.TrapPos, npcBossData.TrapDir, true, false,20016)
--self:NPCEnter()
--self:NPCRun()
end
--@region sub start & finish handlers
---按流程触发顺序
function Quest463:StartTalk46300()
print("46302 Start : ")
actorMgr:CreateActorWithPos(paimonData.Alias, paimonData.Script, paimonData.ID, 0, paimonData.Pos1, paimonData.Dir1, true, false,3)
self:CallDelay(0.2,
function(self)
self:RequestInteraction(paimonData.Alias)
end
)
end
function Quest463:StartTalk46301()
print("46302 Start : ")
actorMgr:CreateActorWithPos(paimonData.Alias, paimonData.Script, paimonData.ID, 0, paimonData.Pos2, paimonData.Dir2, true, false,3)
self:CallDelay(0.2,
function(self)
print("46307 RequestInteraction : ")
self:RequestInteraction(paimonData.Alias)
end
)
end
function Quest463:OnSubStart46300(quest)
print("46300 Start : Creat paimon")
self:ShowBlackScreen(0.5,0.5,0.5, self.StartTalk46300)
end
function Quest463:OnSubFinish46300(quest)
print("46300 Finish : ")
self:ActionSafeCall(
function(self)
self:PaimonVanish()
end
)
end
function Quest463:OnSubStart46301(quest)
print("46301 Start : Creat door")
--self:SpawnGadget(DungeonData.DoorID, DungeonData.Pos, DungeonData.Dir, DungeonData.Alias, 3)
end
function Quest463:OnSubFinish46301(quest)
print("46301 Start : Creat Kaeya")
end
function Quest463:OnSubStart46302(quest)
print("46302 Start : ")
actorMgr:CreateActorWithPos(Invisible.Invisible, Invisible.NpcScript, Invisible.InvisibleID, 0, Invisible.InvisiblePos, Invisible.InvisibleDir, true, false,20016)
end
function Quest463:StartTalk()
print("46302 Start : ")
actorMgr:CreateActorWithPos(paimonData.Alias, paimonData.Script, paimonData.ID, 0, paimonData.BornPos, paimonData.BornDir, true, false,20016)
self:CallDelay(0.2,
function(self)
self:RequestInteraction(paimonData.Alias)
end
)
end
function Quest463:OnSubStart46303(quest)
print("46303 Start : ")
--actorMgr:CreateActorWithPos(Invisible.Invisible, Invisible.NpcScript, Invisible.InvisibleID, 0, Invisible.InvisiblePos, Invisible.InvisibleDir, true, false,20016)
self:ShowBlackScreen(0.5,0.5,0.5, self.StartTalk)
--[[self:CallDelay(0.5,
function(self)
self:RequestInteraction(Invisible.Invisible)
end
)]]--
-- actorMgr:CreateActorWithPos(paimonData.Alias, paimonData.Script, paimonData.ID, 0, paimonData.Pos3, paimonData.Dir3, true,false,20016)
end
function Quest463:OnSubStart46304(quest)
print("46304 Start : ")
self:ActionSafeCall(
function(self)
local npc = actorMgr:GetActor(npcBossData.NpcBoss)
local kaeya = actorMgr:GetActor(kaeyaData.Kaeya)
local soldier1 = actorMgr:GetActor(SoldierData.Alias1)
local soldier2 = actorMgr:GetActor(SoldierData.Alias2)
local paimon = actorMgr:GetActor(paimonData.Alias)
npc:Destroy(false)
kaeya:Destroy(false)
soldier1:Destroy(false)
soldier2:Destroy(false)
paimon:Destroy(false)
end
)
self:NarratorOnlyTask(q463Cfg.NarratorData.Story1)
end
function Quest463:OnSubStart46307(quest)
print("46307 Start : ")
self:ShowBlackScreen(0.5,0.5,0.5, self.StartTalk46301)
end
function Quest463:OnSubFinish46307(quest)
print("46307 Finish : ")
self:PaimonVanish()
end
function Quest463:OnSubStart46305(quest)
print("46305 Start : ")
--actorMgr:CreateActorWithPos(kaeyaData.Kaeya, kaeyaData.KaeyaScript, kaeyaData.KaeyaID, 0, kaeyaData.InPos, kaeyaData.InDir, true, false,20016)
--[[actorMgr:CreateActorWithPos(Invisible.Invisible, Invisible.NpcScript, Invisible.InvisibleID, 0, Invisible.InvisiblePos, Invisible.InvisibleDir, true, false,20016)
self:CallDelay(2,
function()
self:RequestInteraction(Invisible.Invisible)
end
)]]--
self:CallDelay(6,
function(self)
self:ShowBlackScreen(0.5,0.5,0.5,self.StartTalk)
end
)
--self:ShowBlackScreen(0.3, 0.3, 0.3, self.StartTalk)
end
function Quest463:OnSubFinish46305(quest)
print("46305 Finish : ")
self:ActionSafeCall(
function(self)
local npc = actorMgr:GetActor(npcBossData.NpcBoss)
local kaeya = actorMgr:GetActor(kaeyaData.Kaeya)
local soldier1 = actorMgr:GetActor(SoldierData.Alias1)
local soldier2 = actorMgr:GetActor(SoldierData.Alias2)
local paimon = actorMgr:GetActor(paimonData.Alias)
npc:Destroy(false)
kaeya:Destroy(false)
soldier1:Destroy(false)
soldier2:Destroy(false)
paimon:Destroy(false)
end
)
--self:PaimonVanish()
end
--@endregion
function Quest463:Start()
end
function Quest463:OnDestroy()
end
return Quest463

View File

@@ -0,0 +1,74 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest464 = class("Quest464", questActorProxy)
Quest464.defaultAlias = "Quest464"
local q464Cfg = require('Quest/Client/Q464ClientConfig')
local subIDs = q464Cfg.SubIDs
local dilucData = q464Cfg.DilucData
local hoffmanData = q464Cfg.HoffmanData
local PaimonData=q464Cfg.PaimonData
-- Generated
function Quest464:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["46401"] = self.OnSubStart46401
self.subStartHandlers["46402"] = self.OnSubStart46402
self.subStartHandlers["46403"] = self.OnSubStart46403
self.subStartHandlers["46404"] = self.OnSubStart46404
self.subStartHandlers["46405"] = self.OnSubStart46405
self.subStartHandlers["46406"] = self.OnSubStart46406
self.subStartHandlers["46407"] = self.OnSubStart46407
end
function Quest464:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["46401"] = self.OnSubFinish46401
self.subFinishHandlers["46402"] = self.OnSubFinish46402
self.subFinishHandlers["46403"] = self.OnSubFinish46403
self.subFinishHandlers["46404"] = self.OnSubFinish46404
self.subFinishHandlers["46405"] = self.OnSubFinish46405
self.subFinishHandlers["46406"] = self.OnSubFinish46406
self.subFinishHandlers["46407"] = self.OnSubFinish46407
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest464:OnSubFinish46406(quest)
print("46406 Finish:Cutscene & Creat NPC")
self:NarratorOnlyTask(self.clientData.NarratorData.CutsceneTemp)
--actorMgr:CreateActorWithPos(PaimonData.Paimon, PaimonData.PaimonScript, PaimonData.PaimonID, 0, PaimonData.Pos1, PaimonData.Dir1, true, false)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.Pos1, dilucData.Dir1, true)
actorMgr:CreateActorWithPos(hoffmanData.Hoffman, hoffmanData.HoffmanScript, hoffmanData.HoffmanID, 0, hoffmanData.Pos1, hoffmanData.Dir1, true)
end
function Quest464:OnSubFinish46407(quest)
print("46407 Finish:Cutscene & Creat NPC")
self:ActionSafeCall(self.Finish46407Do)
--actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.hiddenPos, dilucData.hiddenDir, true)
--actorMgr:CreateActorWithPos(hoffmanData.Hoffman, hoffmanData.HoffmanScript, hoffmanData.HoffmanID, 0, hoffmanData.hiddenPos, hoffmanData.hiddenDir, true)
end
function Quest464:Finish46407Do(quest)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.hiddenPos, dilucData.hiddenDir, true)
actorMgr:CreateActorWithPos(hoffmanData.Hoffman, hoffmanData.HoffmanScript, hoffmanData.HoffmanID, 0, hoffmanData.hiddenPos, hoffmanData.hiddenDir, true)
--[[ local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end ]]
end
--@endregion
function Quest464:Start()
end
function Quest464:OnDestroy()
end
return Quest464

View File

@@ -0,0 +1,252 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest465 = class("Quest465", questActorProxy)
Quest465.defaultAlias = "Quest465"
local q465Cfg = require('Quest/Client/Q465ClientConfig')
local dilucData = q465Cfg.DilucData
local hoffmanData = q465Cfg.HoffmanData
local kaeyaData = q465Cfg.KaeyaData
local abyssWaterData = q465Cfg.AbyssWaterData
local SAN = 100
local ESCAPE = 0
local WIN = 0
-- Generated
function Quest465:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["46501"] = self.OnSubStart46501
self.subStartHandlers["46502"] = self.OnSubStart46502
self.subStartHandlers["46503"] = self.OnSubStart46503
self.subStartHandlers["46504"] = self.OnSubStart46504
self.subStartHandlers["46505"] = self.OnSubStart46505
self.subStartHandlers["46506"] = self.OnSubStart46506
self.subStartHandlers["46507"] = self.OnSubStart46507
self.subStartHandlers["46508"] = self.OnSubStart46508
self.subStartHandlers["46509"] = self.OnSubStart46509
self.subStartHandlers["46510"] = self.OnSubStart46510
self.subStartHandlers["46511"] = self.OnSubStart46511
self.subStartHandlers["46512"] = self.OnSubStart46512
self.subStartHandlers["46513"] = self.OnSubStart46513
self.subStartHandlers["46514"] = self.OnSubStart46514
self.subStartHandlers["46515"] = self.OnSubStart46515
end
function Quest465:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["46501"] = self.OnSubFinish46501
self.subFinishHandlers["46502"] = self.OnSubFinish46502
self.subFinishHandlers["46503"] = self.OnSubFinish46503
self.subFinishHandlers["46504"] = self.OnSubFinish46504
self.subFinishHandlers["46505"] = self.OnSubFinish46505
self.subFinishHandlers["46506"] = self.OnSubFinish46506
self.subFinishHandlers["46507"] = self.OnSubFinish46507
self.subFinishHandlers["46508"] = self.OnSubFinish46508
self.subFinishHandlers["46509"] = self.OnSubFinish46509
self.subFinishHandlers["46510"] = self.OnSubFinish46510
self.subFinishHandlers["46511"] = self.OnSubFinish46511
self.subFinishHandlers["46512"] = self.OnSubFinish46512
self.subFinishHandlers["46513"] = self.OnSubFinish46513
self.subFinishHandlers["46514"] = self.OnSubFinish46514
self.subFinishHandlers["46515"] = self.OnSubFinish46515
self.subFinishHandlers["46516"] = self.OnSubFinish46516
self.subFinishHandlers["46517"] = self.OnSubFinish46517
self.subFinishHandlers["46518"] = self.OnSubFinish46518
self.subFinishHandlers["46519"] = self.OnSubFinish46519
end
-- local method begin
-- local method end
--@region sub start & finish handlers
function Quest465:OnSubFinish46502(quest)
print("46502 Finish: Creat NPC")
self:NarratorOnlyTask(self.clientData.NarratorData.Story1)
actorMgr:CreateActorWithPos(hoffmanData.Hoffman, hoffmanData.HoffmanScript, hoffmanData.HoffmanID, 0, hoffmanData.Pos1, hoffmanData.Dir1, true, false, 1004)
end
function Quest465:OnSubFinish46503(quest)
print("46503 Finish: Creat NPC")
self:NarratorOnlyTask(self.clientData.NarratorData.Story2)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.Pos1, dilucData.Dir1, true)
end
function Quest465:OnSubFinish46505(quest)
print("46505 Finish: Move NPC")
self:ActionSafeCall(self.Finish46505Do)
--actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.Pos2, dilucData.Dir2, true)
end
function Quest465:Finish46505Do(quest)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.Pos2, dilucData.Dir2, true)
end
function Quest465:OnSubFinish46507(quest)
print("46507 Finish: TempDungeon")
local TempDungeonData = self.clientData.TempDungeonData
globalActor:SpawnItem(TempDungeonData.TempDungeonID, TempDungeonData.TempDungeonPos,nil,"TempDungeonData")
end
function Quest465:OnSubFinish46508(quest)
print("46508 Finish: Monster")
self:SpawnMonster(22010201, 1, sceneData:GetDummyPoint(3,"Q465DilucDungeon").pos)
end
function Quest465:OnSubFinish46509(quest)
print("46509 Finish: NPC")
actorMgr:CreateActorWithPos(abyssWaterData.AbyssWater, abyssWaterData.AbyssWaterScript, abyssWaterData.AbyssWaterID, 0, abyssWaterData.Pos1, abyssWaterData.Dir1, true, false, 3)
end
function Quest465:InvokeOnInteraction(param)
if param == 1 then
print("SAN-10/30,ESCAPE+20")
self:SANMinusi()
-- self:ShowMessage("SAN" .. SAN)
-- self:ShowMessage("ESCAPE" .. ESCAPE)
elseif param == 2 then
print("SAN-30/60,ESCAPE+20")
self:SANMinusj()
-- self:ShowMessage("SAN" .. SAN)
-- self:ShowMessage("ESCAPE" .. ESCAPE)
elseif param == 3 then
print("SAN-0,ESCAPE+20")
self:SANMinusk()
-- self:ShowMessage("SAN" .. SAN)
-- self:ShowMessage("ESCAPE" .. ESCAPE)
end
end
function Quest465:SANMinusi()
local i = math.random(10,30)
SAN = SAN-i
ESCAPE = ESCAPE+20
WIN = 100 - SAN
self:PlayEffect("Eff_Diluc_FireCross_Aoe", abyssWaterData.Pos1)
local quest = actorMgr:GetActor(q465Cfg.ActorAlias)
if quest ~= nil and SAN<=0 then
quest:FinishQuestID(false, 46517)
local AbyssWater = actorMgr:GetActor("AbyssWater")
AbyssWater:DoFreeStyle(302)
self:ShowMessage("犯人晕过去了!")
elseif quest ~= nil and SAN>0 then
self:ESC()
end
end
function Quest465:SANMinusj()
local j = math.random(30,60)
SAN = SAN-j
ESCAPE = ESCAPE+20
WIN = 100 - SAN
self:PlayEffect("Eff_Diluc_FireCross_Aoe", abyssWaterData.Pos1)
local quest = actorMgr:GetActor(q465Cfg.ActorAlias)
if quest ~= nil and SAN<=0 then
quest:FinishQuestID(false, 46517)
local AbyssWater = actorMgr:GetActor("AbyssWater")
AbyssWater:DoFreeStyle(302)
self:ShowMessage("犯人晕过去了!")
elseif quest ~= nil and SAN>0 then
self:ESC()
end
end
function Quest465:SANMinusk()
SAN = SAN
ESCAPE = ESCAPE+20
WIN = 100 - SAN
local quest = actorMgr:GetActor(q465Cfg.ActorAlias)
if quest ~= nil and SAN<=0 then
quest:FinishQuestID(false, 46517)
local AbyssWater = actorMgr:GetActor("AbyssWater")
AbyssWater:DoFreeStyle(302)
self:ShowMessage("犯人晕过去了!")
elseif quest ~= nil and SAN>0 then
self:SUC()
end
end
function Quest465:ESC()
local esc = math.random(1,100)
local quest = actorMgr:GetActor(q465Cfg.ActorAlias)
if quest ~= nil and esc < ESCAPE then
self:ShowMessage("犯人要逃走了!" .. esc..ESCAPE)
quest:FinishQuestID(false, 46516)
else
self:ShowMessage("犯人尝试逃走,但失败了!")
self:ShowMessage("犯人坚强度%" .. SAN)
self:ShowMessage("犯人逃跑概率%" .. ESCAPE)
self:ShowMessage("拷问成功概率%" .. WIN)
end
end
function Quest465:SUC()
local suc = math.random(1,100)
local quest = actorMgr:GetActor(q465Cfg.ActorAlias)
if quest ~= nil and suc > SAN then
self:ShowMessage("拷问成功!" .. suc)
quest:FinishQuestID(false, 46515)
else
self:ESC()
end
end
function Quest465:OnSubStart46510(quest)
print("46510 Start: Clear data")
actorMgr:CreateActorWithPos(abyssWaterData.AbyssWater, abyssWaterData.AbyssWaterScript, abyssWaterData.AbyssWaterID, 0, abyssWaterData.Pos1, abyssWaterData.Dir1, true, false, 3)
SAN = 100
ESCAPE = 0
WIN = 0
end
function Quest465:OnSubStart46514(quest)
print("46514 Start: Show UI")
self:ShowMessage("犯人坚强度%" .. SAN)
self:ShowMessage("犯人逃跑概率%" .. ESCAPE)
self:ShowMessage("拷问成功概率%" .. WIN)
end
function Quest465:OnSubFinish46518(quest)
print("46516 Finish: prisoner disappear")
self:ActionSafeCall(
function(self)
local AbyssWater = actorMgr:GetActor("AbyssWater")
if AbyssWater ~= nil then
AbyssWater:Destroy(false)
end
end
)
end
function Quest465:OnSubFinish46514(quest)
print("46514 Finish: Hide NPC")
self:ActionSafeCall(self.Finish46514Do)
--actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.hiddenPos, dilucData.hiddenDir, true)
end
function Quest465:Finish46514Do(quest)
actorMgr:CreateActorWithPos(abyssWaterData.AbyssWater, abyssWaterData.AbyssWaterScript, abyssWaterData.AbyssWaterID, 0, abyssWaterData.hiddenPos, abyssWaterData.hiddenDir, true, false, 3)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.hiddenPos, dilucData.hiddenDir, true)
local TempDungeonData = self.clientData.TempDungeonData
globalActor:SpawnItem(TempDungeonData.TempDungeonID, TempDungeonData.TempDungeonPos,nil,"TempDungeonData")
end
function Quest465:OnSubFinish46512(quest)
print("46512 Finish: Creat NPC")
actorMgr:CreateActorWithPos(hoffmanData.Hoffman, hoffmanData.HoffmanScript, hoffmanData.HoffmanID, 0, hoffmanData.Pos1, hoffmanData.Dir1, true, false, 1004)
end
function Quest465:OnSubFinish46513(quest)
print("46513 Finish: Hide NPC")
self:ActionSafeCall(self.Finish46513Do)
--actorMgr:CreateActorWithPos(hoffmanData.Hoffman, hoffmanData.HoffmanScript, hoffmanData.HoffmanID, 0, hoffmanData.hiddenPos, hoffmanData.hiddenDir, true)
end
function Quest465:Finish46513Do(quest)
actorMgr:CreateActorWithPos(hoffmanData.Hoffman, hoffmanData.HoffmanScript, hoffmanData.HoffmanID, 0, hoffmanData.hiddenPos, hoffmanData.hiddenDir, true)
end
--@endregion
function Quest465:Start()
end
function Quest465:OnDestroy()
end
return Quest465

View File

@@ -0,0 +1,320 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest466 = class("Quest466", questActorProxy)
Quest466.defaultAlias = "Quest466"
local q466Cfg = require('Quest/Client/Q466ClientConfig')
local dilucData = q466Cfg.DilucData
local hoffmanData = q466Cfg.HoffmanData
local kaeyaData = q466Cfg.KaeyaData
local lureData = q466Cfg.LureData
local baitData = q466Cfg.BaitData
local guardData = q466Cfg.GuardData
local FailNum = 0
local EscapeTime = 50
-- Generated
function Quest466:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["46601"] = self.OnSubStart46601
self.subStartHandlers["46602"] = self.OnSubStart46602
self.subStartHandlers["46603"] = self.OnSubStart46603
self.subStartHandlers["46604"] = self.OnSubStart46604
self.subStartHandlers["46605"] = self.OnSubStart46605
self.subStartHandlers["46606"] = self.OnSubStart46606
self.subStartHandlers["46607"] = self.OnSubStart46607
self.subStartHandlers["46608"] = self.OnSubStart46608
self.subStartHandlers["46609"] = self.OnSubStart46609
self.subStartHandlers["46610"] = self.OnSubStart46610
self.subStartHandlers["46611"] = self.OnSubStart46611
--self.subStartHandlers["46612"] = self.OnSubStart46612
self.subStartHandlers["46613"] = self.OnSubStart46613
--self.subStartHandlers["46614"] = self.OnSubStart46614
self.subStartHandlers["46615"] = self.OnSubStart46615
self.subStartHandlers["46616"] = self.OnSubStart46616
self.subStartHandlers["46617"] = self.OnSubStart46617
self.subStartHandlers["46618"] = self.OnSubStart46618
self.subStartHandlers["46619"] = self.OnSubStart46619
self.subStartHandlers["46620"] = self.OnSubStart46620
self.subStartHandlers["46621"] = self.OnSubStart46621
self.subStartHandlers["46622"] = self.OnSubStart46622
end
function Quest466:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["46601"] = self.OnSubFinish46601
self.subFinishHandlers["46602"] = self.OnSubFinish46602
self.subFinishHandlers["46603"] = self.OnSubFinish46603
self.subFinishHandlers["46604"] = self.OnSubFinish46604
self.subFinishHandlers["46605"] = self.OnSubFinish46605
self.subFinishHandlers["46606"] = self.OnSubFinish46606
self.subFinishHandlers["46607"] = self.OnSubFinish46607
self.subFinishHandlers["46608"] = self.OnSubFinish46608
self.subFinishHandlers["46609"] = self.OnSubFinish46609
self.subFinishHandlers["46610"] = self.OnSubFinish46610
self.subFinishHandlers["46611"] = self.OnSubFinish46611
--self.subFinishHandlers["46612"] = self.OnSubFinish46612
self.subFinishHandlers["46613"] = self.OnSubFinish46613
--self.subFinishHandlers["46614"] = self.OnSubFinish46614
self.subFinishHandlers["46615"] = self.OnSubFinish46615
self.subFinishHandlers["46616"] = self.OnSubFinish46616
self.subFinishHandlers["46617"] = self.OnSubFinish46617
self.subFinishHandlers["46618"] = self.OnSubFinish46618
self.subFinishHandlers["46619"] = self.OnSubFinish46619
self.subFinishHandlers["46620"] = self.OnSubFinish46620
self.subFinishHandlers["46621"] = self.OnSubFinish46621
self.subFinishHandlers["46622"] = self.OnSubFinish46622
end
-- local method begin
-- local method end
--@region sub start & finish handlers
function Quest466:OnSubStart46601(quest)
print("46601 Start: Creat NPC")
self:NarratorOnlyTask(self.clientData.NarratorData.Story1)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.Pos1, dilucData.Dir1, true)
end
function Quest466:OnSubFinish46601(quest)
print("46601 Finish: Creat NPC")
self:NarratorOnlyTask(self.clientData.NarratorData.Story1)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.Pos1, dilucData.Dir1, true)
end
function Quest466:OnSubFinish46602(quest)
print("46602 Finish: Hide NPC")
self:ActionSafeCall(self.Finish46602Do)
end
function Quest466:Finish46602Do(quest)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.hiddenPos, dilucData.hiddenDir, true)
end
function Quest466:OnSubFinish46603(quest)
print("46603 Finish: Creat NPC")
self:ActionSafeCall(self.Finish46603Do)
end
function Quest466:Finish46603Do(quest)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.Pos2, dilucData.Dir2, true)
globalActor:SpawnItem(lureData.LureID, lureData.Pos1,nil,"Lure")
end
function Quest466:OnSubFinish46604(quest)
print("46604 Finish: Creat NPC")
globalActor:SpawnGadget(baitData.BaitID, baitData.Pos1, baitData.Dir1, "Bait")
end
function Quest466:OnSubFinish46605(quest)
print("46605 Finish: Creat Monster")
self:ActionSafeCall(self.Finish46605Do)
end
function Quest466:Finish46605Do(quest)
globalActor:UnSpawn("Bait")
--[[ self:SpawnMonster(20010101, 1, sceneData:GetDummyPoint(3,"Q466Monster1").pos)
self:SpawnMonster(20010101, 1, sceneData:GetDummyPoint(3,"Q466Monster1").pos)
self:SpawnMonster(20010201, 1, sceneData:GetDummyPoint(3,"Q466Monster2").pos)
self:SpawnMonster(20010901, 1, sceneData:GetDummyPoint(3,"Q466Monster3").pos) ]]
end
function Quest466:OnSubStart46601(quest)
print("46608 Start: clear bait")
globalActor:UnSpawn("Bait")
globalActor:UnSpawn("Lure")
end
function Quest466:OnSubFinish46608(quest)
print("46608 Finish: Creat NPC & Trigger1")
self:NarratorOnlyTask(self.clientData.NarratorData.Story2)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.Pos3, dilucData.Dir3, true, false, 1009)
actorMgr:CreateActorWithPos(hoffmanData.Hoffman, hoffmanData.HoffmanScript, hoffmanData.HoffmanID, 0, hoffmanData.Pos1, hoffmanData.Dir1, true, false, 1009)
--creat trigger1&3
actorMgr:CreateActorWithPos("Q466Trigger1", "Actor/Gadget/Q466Trigger1", 70900002, 0, sceneData:GetDummyPoint(3,"Q466Trigger1").pos, sceneData:GetDummyPoint(3,"Q466Trigger1").rot, true, false)
actorMgr:CreateActorWithPos("Q466Trigger3", "Actor/Gadget/Q466Trigger3", 70900002, 0, sceneData:GetDummyPoint(3,"Q466Trigger1").pos, sceneData:GetDummyPoint(3,"Q466Trigger1").rot, true, false)
end
function Quest466:OnSubFinish46610(quest)
print("46610 Finish: Creat Lure")
globalActor:SpawnItem(lureData.LureID, lureData.Pos2,nil,"Lure")
end
function Quest466:OnSubStart46611(quest)
self:ActionSafeCall(self.StartCount)
end
function Quest466:StartCount()
if FailNum < 2 then
EscapeTime = 50
else
EscapeTime = 60
end
self:CountDownUIStart(EscapeTime, 10, 3)
self:CallDelay(EscapeTime+4,self.CountDown)
end
function Quest466:CountDown()
print("CountDown Finished")
if q466Cfg.EscapeFlag == false then
FailNum = FailNum + 1
print("escape fail time is ",FailNum )
if FailNum < 3 then
local quest = actorMgr:GetActor(q466Cfg.ActorAlias)
if quest ~= nil then
print("escape fail")
quest:FinishQuest(true, nil)
end
else
local quest = actorMgr:GetActor(q466Cfg.ActorAlias)
if quest ~= nil then
print("escape fail omg")
quest:FinishQuest(true, nil)
end
end
end
end
function Quest466:OnSubStart46619(quest)
print("46619 start:...")
self:CountDownUITerminate()
self:UnCallFunc(self.CountDown)
self:AdvanceQuest()
end
function Quest466:AdvanceQuest()
local quest = actorMgr:GetActor(q466Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
function Quest466:OnSubFinish46620(quest)
print("46620 Finish: Story")
self:NarratorOnlyTask(self.clientData.NarratorData.Story7)
end
function Quest466:OnSubFinish46611(quest)
print("46611 Finish: Creat NPC")
self:NarratorOnlyTask(self.clientData.NarratorData.Story3)
globalActor:SpawnGadget(baitData.BaitID, baitData.Pos2, baitData.Dir2, "Bait")
--
print("46611 Finish: Creat Lure")
globalActor:UnSpawn("Bait")
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.Pos3, dilucData.Dir3, true, false, 1009)
actorMgr:CreateActorWithPos(hoffmanData.Hoffman, hoffmanData.HoffmanScript, hoffmanData.HoffmanID, 0, hoffmanData.Pos1, hoffmanData.Dir1, true, false, 1009)
actorMgr:CreateActorWithPos(guardData.Guard, guardData.GuardScript, guardData.GuardID, 0, guardData.Pos1, guardData.Dir1, true, false, 1009)
globalActor:UnSpawn("Slime1")
globalActor:UnSpawn("Slime2")
globalActor:UnSpawn("Slime3")
globalActor:UnSpawn("Slime4")
--
self:CountDownUITerminate()
self:UnCallFunc(self.CountDown)
--
self:SpawnMonster(20010101, 1, sceneData:GetDummyPoint(3,"Q466Slime").pos,nil,nil,nil,"Slime1")
self:SpawnMonster(20010101, 1, sceneData:GetDummyPoint(3,"Q466Slime").pos,nil,nil,nil,"Slime2")
self:SpawnMonster(20010201, 1, sceneData:GetDummyPoint(3,"Q466Slime").pos,nil,nil,nil,"Slime3")
self:SpawnMonster(20010901, 1, sceneData:GetDummyPoint(3,"Q466Slime").pos,nil,nil,nil,"Slime4")
self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q466Slime").pos, 3, 3, true)
globalActor:StopLocalAvatar()
globalActor:EnablePlayerInput(false)
self:CallDelay(3, self.OnEnableInput)
end
function Quest466:OnEnableInput()
print("466 Finish: Enable Player Input")
globalActor:EnablePlayerInput(true)
self:TransmitPlayer(3, sceneData:GetDummyPoint(3,"Q466Player1").pos, sceneData:GetDummyPoint(3,"Q466Player1").dir, nil,
function (self)
self:CallDelay(0.5,
function (self)
self:RequestInteraction(dilucData.Diluc)
end
)
end
)
end
--[[ function Quest466:OnSubFinish46612(quest)
print("46612 Finish: Creat Lure")
globalActor:UnSpawn("Bait")
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.Pos3, dilucData.Dir3, true, false, 1009)
actorMgr:CreateActorWithPos(hoffmanData.Hoffman, hoffmanData.HoffmanScript, hoffmanData.HoffmanID, 0, hoffmanData.Pos1, hoffmanData.Dir1, true, false, 1009)
actorMgr:CreateActorWithPos(guardData.Guard, guardData.GuardScript, guardData.GuardID, 0, guardData.Pos1, guardData.Dir1, true, false, 1009)
globalActor:UnSpawn("Slime1")
globalActor:UnSpawn("Slime2")
globalActor:UnSpawn("Slime3")
globalActor:UnSpawn("Slime4")
end ]]
function Quest466:OnSubFinish46613(quest)
print("46613 Finish: Creat Trigger2")
--creat trigger2&4
globalActor:UnSpawn("Q466Trigger1")
globalActor:UnSpawn("Q466Trigger3")
actorMgr:CreateActorWithPos("Q466Trigger2", "Actor/Gadget/Q466Trigger2", 70900002, 0, sceneData:GetDummyPoint(3,"Q466Trigger2").pos, sceneData:GetDummyPoint(3,"Q466Trigger2").rot, true, false)
actorMgr:CreateActorWithPos("Q466Trigger4", "Actor/Gadget/Q466Trigger4", 70900002, 0, sceneData:GetDummyPoint(3,"Q466Trigger2").pos, sceneData:GetDummyPoint(3,"Q466Trigger2").rot, true, false)
--
--self:NarratorOnlyTask(self.clientData.NarratorData.Story4)
--self:SpawnMonster(22010201, 1, sceneData:GetDummyPoint(3,"Q466Monster4").pos)
local guard = actorMgr:GetActor(guardData.Guard)
if guard ~= nil then
self:ActionSafeCall(
function(self)
guard:Destroy(false)
end
)
end
end
--[[ function Quest466:OnSubFinish46614(quest)
print("46614 Finish: Creat Monster")
self:NarratorOnlyTask(self.clientData.NarratorData.Story4)
--self:SpawnMonster(22010201, 1, sceneData:GetDummyPoint(3,"Q466Monster4").pos)
local guard = actorMgr:GetActor(guardData.Guard)
if guard ~= nil then
self:ActionSafeCall(
function(self)
guard:Destroy(false)
end
)
end
end ]]
function Quest466:OnSubFinish46615(quest)
print("46615 Finish: Creat NPC")
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.Pos4, dilucData.Dir4, true)
end
function Quest466:OnSubFinish46616(quest)
print("46616 Finish: Creat NPC")
self:NarratorOnlyTask(self.clientData.NarratorData.Story5)
self:ActionSafeCall(self.Finish46616Do)
end
function Quest466:Finish46616Do(quest)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.hiddenPos, dilucData.hiddenDir, true)
end
function Quest466:OnSubFinish46617(quest)
print("46617 Finish: Creat NPC")
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.Pos3, dilucData.Dir3, true, false, 1009)
actorMgr:CreateActorWithPos(hoffmanData.Hoffman, hoffmanData.HoffmanScript, hoffmanData.HoffmanID, 0, hoffmanData.Pos1, hoffmanData.Dir1, true, false, 1009)
end
function Quest466:OnSubFinish46618(quest)
print("46618 Finish: Hide NPC")
self:ActionSafeCall(self.Finish46618Do)
end
function Quest466:Finish46618Do(quest)
globalActor:UnSpawn("Q466Trigger2")
globalActor:UnSpawn("Q466Trigger4")
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.hiddenPos, dilucData.hiddenDir, true)
actorMgr:CreateActorWithPos(hoffmanData.Hoffman, hoffmanData.HoffmanScript, hoffmanData.HoffmanID, 0, hoffmanData.hiddenPos, hoffmanData.hiddenDir, true)
end
--@endregion
function Quest466:Start()
end
function Quest466:OnDestroy()
end
return Quest466

View File

@@ -0,0 +1,254 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest301 = class("Quest301", questActorProxy)
Quest301.defaultAlias = "Quest301"
local this = nil
local super = nil
local uActor = nil
local questID = 0
function Quest301:OnPreInit()
this = self
super = self.__super
questID = this.mainQuestID
super:OnPreInit()
end
function Quest301:OnPostInit()
uActor = self.uActor
super:OnPostInit()
end
-- local config begin
local q301Cfg = require('Actor/Quest/Q301/Config/Q301Config')
local subIDs = q301Cfg.SubIDs
local wendyData = q301Cfg.WendyData
local gaiaData = q301Cfg.GaiaData
local robamData = q301Cfg.RobamData
local amborData = q301Cfg.AmborData
local extrasData = q301Cfg.ExtrasData
local monsterData = q301Cfg.MonsterData
local meiData = q301Cfg.MeiData
local testData = q301Cfg.TestData
-- local config end
function Quest301: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 OnStart30100()
--print("30101 start: show begin")
local wendy = actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true, false)
local robam = actorMgr:CreateActorWithPos(robamData.Robam, robamData.RobamScript, robamData.RobamID, 0, robamData.arguePos, robamData.argueDir, true, false)
robam:UnregisterSelfDayTime(robam.StartDay)
robam:UnregisterSelfNightTime(robam.StartNight)
for i=1, #extrasData.ExtrasIDs do
local extras = actorMgr:CreateActorWithPos(extrasData.Extras .. tostring(i), extrasData.ExtrasAudience, extrasData.ExtrasIDs[i], i, extrasData.ExtrasSeatPos[i], extrasData.ExtrasSeatDir[i], true, false)
extras:UnregisterSelfDayTime(extras.StartDay)
extras:UnregisterSelfNightTime(extras.StartNight)
extras:UnregisterSelfWeatherChange(extras.OnWeather)
-- extras.seatPos = extrasData.ExtrasSeatPos[i]
-- extras.seatDir = extrasData.ExtrasSeatDir[i]
-- extras.bornPos = extrasData.ExtrasOriginPos[i]
-- extras.bornDir = extrasData.ExtrasOriginDir[i]
-- extras.returnCallback = extrasData.ExtrasReturnCallback[i]
-- extras.extrasIndex = i
end
end
local function OnFinished30100()
-- globalActor:StopLocalAvatar()
-- this:PlayCutscene(q301Cfg.Mq1TimeCfg)
end
local function OnStart30101()
--print("30101 start: show begin")
local wendy = actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true, false)
wendy:StartDance()
wendy:CallDelay(10, wendy.FinishDance)
-- local robam = actorMgr:CreateActorWithPos(robamData.Robam, robamData.RobamScript, robamData.RobamID, 0, robamData.arguePos, robamData.argueDir, true, false)
-- robam:ShowStart()
local ambor = actorMgr:CreateActorWithPos(amborData.Ambor, amborData.AmborScript, amborData.AmborID, 0, amborData.bornPos, amborData.bornDir, true, false)
ambor:ShowStart()
-- for i=1, #extrasData.ExtrasIDs do
-- local extras = actorMgr:CreateActorWithPos(extrasData.Extras .. tostring(i), extrasData.ExtrasAudience, extrasData.ExtrasIDs[i], i, extrasData.ExtrasOriginPos[i], extrasData.ExtrasOriginDir[i], true, false)
-- extras:ShowStart()
-- -- extras.seatPos = extrasData.ExtrasSeatPos[i]
-- -- extras.seatDir = extrasData.ExtrasSeatDir[i]
-- -- extras.bornPos = extrasData.ExtrasOriginPos[i]
-- -- extras.bornDir = extrasData.ExtrasOriginDir[i]
-- -- extras.returnCallback = extrasData.ExtrasReturnCallback[i]
-- -- extras.extrasIndex = i
-- end
end
local function OnFinished30101()
--print("30101 finish: show begin")
for i=1, #extrasData.ExtrasIDs do
local extras = actorMgr:GetActor(extrasData.Extras .. tostring(i))
extras:StartDaily()
end
end
local function OnStart30105()
--print("30105 start: Wendy escape")
local wendy = actorMgr:GetActor(wendyData.Wendy)
wendy:Escape()
end
local function OnStart30107()
--print("30107 start: Gaia appear")
local gaia = actorMgr:CreateActorWithPos(gaiaData.Gaia, gaiaData.GaiaScript, gaiaData.GaiaID, 0, gaiaData.bornPos, gaiaData.bornDir, true, false)
gaia:Show()
-- globalActor:ChangeWeather ("Storm")
end
local function OnStart30109()
--print("30109 start: Gaia follow")
local gaia = actorMgr:GetActor(gaiaData.Gaia)
gaia:StartBeFollow1()
local robam = actorMgr:GetActor(robamData.Robam)
robam:StartDaily()
end
local function OnStart30111()
--print("30111 start: Gaia follow")
local gaia = actorMgr:GetActor(gaiaData.Gaia)
gaia:StartBeFollow2()
end
local function OnStart30113()
--print("30113 start: Gaia follow")
local gaia = actorMgr:GetActor(gaiaData.Gaia)
gaia:StartBeFollow5()
end
local function OnStart30115()
--print("30115 start: Spawn Monsters")
local avatarPos = actorUtils.GetAvatarPos()
for i=1, #monsterData.MonsterIDs do
local monsterID = monsterData.MonsterIDs[i]
local xRand = math.random(-2, 2)
local zRand = math.random(-2, 2)
local bornPos = avatarPos
bornPos.x = bornPos.x + xRand;
bornPos.z = bornPos.z + zRand;
this:SpawnMonster(monsterID, 1, bornPos)
end
end
local function OnStart30117()
--print("30117 start: Gaia follow")
local gaia = actorMgr:GetActor(gaiaData.Gaia)
gaia:StartBeFollow6()
end
local function OnRewind30101()
print("30104 rewind: Show Start")
local wendy = actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true, false)
local robam = actorMgr:CreateActorWithPos(robamData.Robam, robamData.RobamScript, robamData.RobamID, 0, robamData.arguePos, robamData.argueDir, true, false)
robam:UnregisterSelfDayTime(robam.StartDay)
robam:UnregisterSelfNightTime(robam.StartNight)
for i=1, #extrasData.ExtrasIDs do
local extras = actorMgr:CreateActorWithPos(extrasData.Extras .. tostring(i), extrasData.ExtrasAudience, extrasData.ExtrasIDs[i], i, extrasData.ExtrasSeatPos[i], extrasData.ExtrasSeatDir[i], true, false)
extras:UnregisterSelfDayTime(extras.StartDay)
extras:UnregisterSelfNightTime(extras.StartNight)
extras:UnregisterSelfWeatherChange(extras.OnWeather)
end
end
local function OnRewind30104()
print("30104 rewind: before Wendy run")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true, false)
actorMgr:CreateActorWithPos(robamData.Robam, robamData.RobamScript, robamData.RobamID, 0, robamData.arguePos, robamData.argueDir, true, false)
actorMgr:CreateActorWithPos(amborData.Ambor, amborData.AmborScript, amborData.AmborID, 0, amborData.arguePos, amborData.argueDir, true,false)
end
local function OnRewind30108()
print("30108 rewind: before follow Gaia")
actorMgr:CreateActorWithPos(robamData.Robam, robamData.RobamScript, robamData.RobamID, 0, robamData.arguePos, robamData.argueDir, true, false)
actorMgr:CreateActorWithPos(gaiaData.Gaia, gaiaData.GaiaScript, gaiaData.GaiaID, 0, gaiaData.showPos, gaiaData.showDir, true, false)
-- globalActor:ChangeWeather ("Storm")
end
-- local method end
function Quest301:OnMainStart(quest)
end
function Quest301:OnSubStart(quest)
--print("sub start 301 " .. tostring(quest.QuestId))
local questID = quest.QuestId
if questID == subIDs.q30101 then
OnStart30101()
elseif questID == subIDs.q30105 then
OnStart30105()
elseif questID == subIDs.q30107 then
OnStart30107()
elseif questID == subIDs.q30109 then
OnStart30109()
elseif questID == subIDs.q30111 then
OnStart30111()
elseif questID == subIDs.q30113 then
OnStart30113()
elseif questID == subIDs.q30115 then
OnStart30115()
elseif questID == subIDs.q30117 then
OnStart30117()
elseif questID == subIDs.q30119 then
OnStart30119()
elseif questID == subIDs.q30100 then
OnStart30100()
end
end
function Quest301:OnSubFinished(quest)
--print("sub finished 31 " .. tostring(quest.QuestId))
local questID = quest.QuestId
if questID == subIDs.q30100 then
OnFinished30100()
elseif questID == subIDs.q30101 then
OnFinished30101()
end
end
function Quest301:OnRewind(quest)
--print("sub rewind 301 " .. tostring(quest.QuestId))
local questID = quest.QuestId
if questID == subIDs.q30104 then
OnRewind30104()
elseif questID == subIDs.q30108 then
OnRewind30108()
elseif questID == subIDs.q30101 then
OnRewind30101()
end
end
function Quest301:OnMainFinished(quest)
--print("main finished 301 " .. tostring(quest.QuestMainId))
end
function Quest301:Start()
--print("here 301 quest start")
end
function Quest301:OnDestroy()
-- local wendy = actorMgr:GetActor(wendyData.Wendy)
-- if wendy ~= nil then
-- wendy:Destroy(false)
-- end
-- local gaia = actorMgr:GetActor(gaiaData.Gaia)
-- if gaia ~= nil then
-- gaia:Destroy(false)
-- end
-- local robam = actorMgr:GetActor(robamData.Robam)
-- if robam ~= nil then
-- robam:Destroy(false)
-- end
-- local amber = actorMgr:GetActor(amborData.Ambor)
-- if amber ~= nil then
-- amber:Destroy(false)
-- end
end
return Quest301

View File

@@ -0,0 +1,73 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest303 = class("Quest303", questActorProxy)
Quest303.defaultAlias = "Quest303"
local this = nil
local super = nil
local uActor = nil
local questID = 0
function Quest303:OnPreInit()
this = self
super = self.__super
questID = this.mainQuestID
super:OnPreInit()
end
function Quest303:OnPostInit()
uActor = self.uActor
super:OnPostInit()
end
-- local config begin
local q303Cfg = require('Actor/Quest/Q303/Q303Config')
local subIDs = q303Cfg.SubIDs
-- local config end
function Quest303: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 OnFinished30301()
print("Goddess unlock timeline")
this:PlayCutscene(q303Cfg.TestTimeCfg)
end ]]
-- local method end
function Quest303:OnMainStart(quest)
--print("main start 303 " .. tostring(quest.QuestMainId))
end
function Quest303:OnSubStart(quest)
end
function Quest303:OnSubFinished(quest)
--[[ print("sub start 303 " .. tostring(quest.QuestId))
local questID = quest.QuestId
if questID == subIDs.q30301 then
OnFinished30301()
end ]]
end
function Quest303:OnMainFinished(quest)
--print("main finished 303 " .. tostring(quest.QuestMainId))
end
function Quest303:Start()
--print("here 303 quest start")
end
function Quest303:OnDestroy()
end
return Quest303

View File

@@ -0,0 +1,261 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest304 = class("Quest304", questActorProxy)
Quest304.defaultAlias = "Quest304"
local this = nil
local super = nil
local uActor = nil
local questID = 0
function Quest304:OnPreInit()
this = self
super = self.__super
questID = this.mainQuestID
super:OnPreInit()
end
function Quest304:OnPostInit()
uActor = self.uActor
super:OnPostInit()
end
-- local config begin
local q304Cfg = require('Actor/Quest/Q304/Q304Config')
local subIDs = q304Cfg.SubIDs
local amborData = q304Cfg.AmborData
local windData = q304Cfg.WindData
local featherData = q304Cfg.FeatherData
local dragonData = q304Cfg.DragonData
-- local config end
function Quest304: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 FlyByCutscene()
this:PlayFreeCutscene(q304Cfg.DragonCircleCutScene,nil, nil)
end
local function MengdeWindPrepare()
print("MengdeFeahterPrepare")
local RiseDir = {x=0,y=0,z=0}
this:SpawnGadget(windData.WindGadgetID, windData.wind1Pos, M.Dir2Euler(RiseDir), "Wind1")
this:SpawnGadget(windData.WindGadgetID, windData.wind2Pos, M.Dir2Euler(RiseDir), "Wind2")
this:SpawnGadget(windData.WindGadgetID, windData.wind3Pos, M.Dir2Euler(RiseDir), "Wind3")
this:SpawnGadget(windData.WindGadgetID, windData.wind4Pos, M.Dir2Euler(RiseDir), "Wind4")
this:SpawnGadget(windData.WindGadgetID, windData.wind5Pos, M.Dir2Euler(RiseDir), "Wind5")
this:SpawnGadget(windData.WindGadgetID, windData.wind6Pos, M.Dir2Euler(RiseDir), "Wind6")
this:SpawnGadget(windData.WindGadgetID, windData.wind7Pos, M.Dir2Euler(RiseDir), "Wind7")
this:SpawnGadget(windData.WindGadgetID, windData.wind8Pos, M.Dir2Euler(RiseDir), "Wind8")
this:SpawnGadget(windData.WindGadgetID, windData.wind9Pos, M.Dir2Euler(RiseDir), "Wind9")
this:SpawnGadget(windData.WindGadgetID, windData.wind10Pos, M.Dir2Euler(RiseDir), "Wind10")
this:SpawnGadget(windData.WindGadgetID, windData.wind11Pos, M.Dir2Euler(RiseDir), "Wind11")
this:SpawnGadget(windData.WindGadgetID, windData.wind12Pos, M.Dir2Euler(RiseDir), "Wind12")
this:SpawnGadget(windData.WindGadgetID, windData.wind13Pos, M.Dir2Euler(RiseDir), "Wind13")
-- this:SpawnGadget(windData.WallGadgetID, windData.WallPos, M.Dir2Euler(RiseDir), "Wall")
this:SpawnLocalGadget("Wall", windData.WallGadgetID, windData.WallPos, M.Dir2Euler(RiseDir))
this:SpawnLocalGadget("Skybox", windData.SkyboxGadgetID, windData.SkyboxPos, M.Dir2Euler(RiseDir))
--local Dragon = actorMgr:CreateActorWithPos(dragonData.Dragon, dragonData.DragonScript, dragonData.DragonID, 0, dragonData.DragonPos[1], dragonData.DragonDir[1], true, false)
--Dragon:FlyCircle()
--Dragon:FlyByCutscene()
FlyByCutscene()
globalActor:ChangeWeather ("Blustery")
end
local function MengdeWindDestroy()
print("MengdeFeahterDestroy")
globalActor:UnSpawn("Wind1")
globalActor:UnSpawn("Wind2")
globalActor:UnSpawn("Wind3")
globalActor:UnSpawn("Wind4")
globalActor:UnSpawn("Wind5")
globalActor:UnSpawn("Wind6")
globalActor:UnSpawn("Wind7")
globalActor:UnSpawn("Wind8")
globalActor:UnSpawn("Wind9")
globalActor:UnSpawn("Wind10")
globalActor:UnSpawn("Wind11")
globalActor:UnSpawn("Wind12")
globalActor:UnSpawn("Wind13")
globalActor:UnSpawn("Wall")
globalActor:UnSpawn("Skybox")
this:StopFreeCutscene(q304Cfg.DragonCircleCutScene, false)
-- local Dragon = actorMgr:GetActor(dragonData.Dragon)
-- if Dragon ~= nil then
-- Dragon:Destroy(false)
-- end
globalActor:ChangeWeather ("ClearSky")
end
local function AmborHide(actor)
actorMgr:CreateActorWithPos(amborData.Ambor, amborData.AmborScript, amborData.AmborID, 0, amborData.hiddenPos, amborData.hiddenDir,
true, false, nil, false)
end
local function AmborFeather1(actor)
local Ambor = actorMgr:GetActor(amborData.Ambor)
-- local Ambor = actorMgr:CreateActorWithPos(amborData.Ambor, amborData.AmborScript, amborData.AmborID, 0, amborData.arguePos, amborData.argueDir, true, false)
-- actorMgr:CreateActorWithPos(amborData.Ambor, amborData.AmborScript, amborData.AmborID, 0, amborData.feather1Pos, amborData.feather1Dir, true, false)
Ambor:AddPriorityInter(InterTimingType.BTN, q304Cfg.AmborNoReplyInter)
Ambor:RunToTask(amborData.feather1Pos,
function(self, task)
self:ClearFollowTask()
self:ClearPriorityInter(InterTimingType.BTN)
-- actorMgr:CreateActorWithPos(amborData.Ambor, amborData.AmborScript, amborData.AmborID, 0, amborData.feather1Pos, amborData.feather1Dir, true, false)
end
)
end
local function OnStart30400()
MengdeWindPrepare()
end
local function OnFinished30400(quest)
this:ActionSafeCall(AmborFeather1)
end
local function OnStart30401(quest)
end
local function OnStart30402(quest)
this:ActionSafeCall(AmborHide)
this:SpawnGadget(featherData.FeatherGadgetID, featherData.feather1Pos, featherData.feather1Dir, "Feather1")
end
local function OnStart30403()
this:NarratorOnlyTask(q304Cfg.AmborNarratorFlow1)
local quest = actorMgr:GetActor(q304Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
local function OnStart30404(quest)
this:SpawnGadget(featherData.FeatherGadgetID, featherData.feather2Pos, featherData.feather2Dir, "Feather2")
end
local function OnStart30405()
this:NarratorOnlyTask(q304Cfg.AmborNarratorFlow2)
local quest = actorMgr:GetActor(q304Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
local function OnStart30406(quest)
this:SpawnGadget(featherData.FeatherGadgetID, featherData.feather3Pos, featherData.feather3Dir, "Feather3")
end
local function OnStart30407()
this:NarratorOnlyTask(q304Cfg.AmborNarratorFlow3)
local quest = actorMgr:GetActor(q304Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
local function OnStart30408(quest)
this:SpawnGadget(featherData.FeatherGadgetID, featherData.feather4Pos, featherData.feather4Dir, "Feather4")
end
local function OnStart30409()
actorMgr:CreateActorWithPos(amborData.Ambor, amborData.AmborScript, amborData.AmborID, 0, amborData.feather4Pos, amborData.feather4Dir, true, false)
MengdeWindDestroy()
end
local function OnRewind30401()
actorMgr:CreateActorWithPos(amborData.Ambor, amborData.AmborScript, amborData.AmborID, 0, amborData.feather1Pos, amborData.feather1Dir, true, false)
MengdeWindPrepare()
end
local function OnRewind30403()
MengdeWindPrepare()
end
local function OnRewind30405()
MengdeWindPrepare()
end
local function OnRewind30407()
MengdeWindPrepare()
end
-- local method end
function Quest304:OnMainStart(quest)
end
function Quest304:OnSubStart(quest)
local questID = quest.QuestId
if questID == subIDs.q30401 then
OnStart30401(quest)
elseif questID == subIDs.q30402 then
OnStart30402(quest)
elseif questID == subIDs.q30403 then
OnStart30403()
elseif questID == subIDs.q30404 then
OnStart30404(quest)
elseif questID == subIDs.q30405 then
OnStart30405()
elseif questID == subIDs.q30406 then
OnStart30406(quest)
elseif questID == subIDs.q30407 then
OnStart30407()
elseif questID == subIDs.q30408 then
OnStart30408(quest)
elseif questID == subIDs.q30409 then
OnStart30409()
elseif questID == subIDs.q30400 then
OnStart30400()
end
end
function Quest304:OnSubFinished(quest)
local questID = quest.QuestId
if questID == subIDs.q30400 then
OnFinished30400(quest)
end
end
function Quest304:OnRewind30403(quest)
local questID = quest.QuestId
if questID == subIDs.q30403 then
OnRewind30403()
elseif questID == subIDs.q30405 then
OnRewind30405()
elseif questID == subIDs.q30407 then
OnRewind30407()
elseif questID == subIDs.q30401 then
OnRewind30401()
end
end
function Quest304:OnMainFinished(quest)
end
function Quest304:Start()
end
function Quest304:OnDestroy()
end
return Quest304

View File

@@ -0,0 +1,146 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest305 = class("Quest305", questActorProxy)
Quest305.defaultAlias = "Quest305"
local this = nil
local super = nil
local uActor = nil
local questID = 0
function Quest305:OnPreInit()
this = self
super = self.__super
questID = this.mainQuestID
super:OnPreInit()
end
function Quest305:OnPostInit()
uActor = self.uActor
super:OnPostInit()
end
-- local config begin
local q305Cfg = require('Actor/Quest/Q305/Q305Config')
local subIDs = q305Cfg.SubIDs
local amborData = q305Cfg.AmborData
local wendyData = q305Cfg.WendyData
local lisaData = q305Cfg.LisaData
local gaiaData = q305Cfg.GaiaData
local qinData = q305Cfg.QinData
local blackData = q305Cfg.BlackData
-- local config end
function Quest305: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 AllMoveKnight(actor)
actorMgr:CreateActorWithPos(amborData.Ambor, amborData.AmborScript, amborData.AmborID, 0, amborData.KnightPos, amborData.KnightDir, true, false)
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.KnightPos, wendyData.KnightDir, true, false)
actorMgr:CreateActorWithPos(gaiaData.Gaia, gaiaData.GaiaScript, gaiaData.GaiaID, 0, gaiaData.KnightPos, gaiaData.KnightDir, true, false)
actorMgr:CreateActorWithPos(lisaData.Lisa, lisaData.LisaScript, lisaData.LisaID, 0, lisaData.KnightPos, lisaData.KnightDir, true, false)
end
local function OnStart30502()
-- actorMgr:CreateActorWithPos(amborData.Ambor, amborData.AmborScript, amborData.AmborID, 0, amborData.StartPos, amborData.StartDir, true, false)
local wendy = actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.RoofPos, wendyData.RoofDir, true, false)
wendy:DoFreeStyle(3)
this:SpawnMonster(blackData.MonsterID, 1, blackData.Black1Pos, nil, nil, nil, "Black1")
this:SpawnMonster(blackData.MonsterID, 1, blackData.Black2Pos, nil, nil, nil, "Black2")
end
local function OnStart30503()
local wendy = actorMgr:GetActor(wendyData.Wendy)
wendy:Standby()
actorMgr:CreateActorWithPos(amborData.Ambor, amborData.AmborScript, amborData.AmborID, 0, amborData.RoofPos, amborData.RoofDir, true, false)
end
local function OnStart30504()
local gaia = actorMgr:CreateActorWithPos(gaiaData.Gaia, gaiaData.GaiaScript, gaiaData.GaiaID, 0, gaiaData.RoofShowPos, gaiaData.RoofShowDir, true, false)
gaia:ClearFollowTask()
gaia:WalkToTask(gaiaData.RoofTalkPos,
function(gaia, task)
local quest = actorMgr:GetActor(q305Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
gaia:TurnTo(M.Euler2DirXZ(gaiaData.RoofTalkDir))
gaia:Standby()
end
)
end
local function OnStart30506(quest)
this:ActionSafeCall(AllMoveKnight)
end
local function OnRewind30501()
actorMgr:CreateActorWithPos(amborData.Ambor, amborData.AmborScript, amborData.AmborID, 0, amborData.StartPos, amborData.StartDir, true, false)
end
local function OnRewind30502()
-- local wendy = actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.RoofPos, wendyData.RoofDir, true, false)
-- wendy:DoFreeStyle(3)
-- this:UnSpawn("Black1")
-- this:SpawnMonster(blackData.MonsterID, 1, blackData.Black1Pos)
-- this:UnSpawn("Black2")
-- this:SpawnMonster(blackData.MonsterID, 1, blackData.Black2Pos)
end
local function OnRewind30505()
end
local function OnRewind30507()
end
-- local method end
function Quest305:OnMainStart(quest)
end
function Quest305:OnSubStart(quest)
local questID = quest.QuestId
if questID == subIDs.q30502 then
OnStart30502()
elseif questID == subIDs.q30503 then
OnStart30503()
elseif questID == subIDs.q30504 then
OnStart30504()
elseif questID == subIDs.q30506 then
OnStart30506(quest)
end
end
function Quest305:OnSubFinished(quest)
end
function Quest305:OnRewind(quest)
local questID = quest.QuestId
if questID == subIDs.q30502 then
OnRewind30502()
elseif questID == subIDs.q30501 then
OnRewind30501()
end
end
function Quest305:OnMainFinished(quest)
end
function Quest305:Start()
end
function Quest305:OnDestroy()
end
return Quest305

View File

@@ -0,0 +1,96 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest362 = class("Quest362", questActorProxy)
Quest362.defaultAlias = "Quest362"
local this = nil
local super = nil
local uActor = nil
local questID = 0
function Quest362:OnPreInit()
this = self
super = self.__super
questID = this.mainQuestID
super:OnPreInit()
end
function Quest362:OnPostInit()
uActor = self.uActor
super:OnPostInit()
end
-- local config begin
local q362Cfg = require('Actor/Quest/Q362/Q362Config')
local subIDs = q362Cfg.SubIDs
local warningTask = nil
-- local config end
function Quest362: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 OnStart36201()
this:NarratorOnlyTask(q362Cfg.PaimonStamina)
end ]]
local function OnFinished36203()
-- print("362 Finish: Stop Avatar")
-- this:NarratorOnlyTask(q362Cfg.PaimonApple)
-- globalActor:StopLocalAvatar()
-- globalActor:EnablePlayerInput(false)
-- this:CallDelay(4, this.OnEnableInput)
end
function Quest362:OnEnableInput()
print("363 Finish: Enable Player Input")
globalActor:EnablePlayerInput(true)
end
-- local method end
function Quest362:OnMainStart(quest)
--print("main start 362 " .. tostring(quest.QuestMainId))
end
function Quest362:OnSubStart(quest)
--[[ local questID = quest.QuestId
if questID == subIDs.q36201 then
OnStart36201()
elseif questID == subIDs.q36203 then
OnStart36203()
end ]]
end
function Quest362:OnSubFinished(quest)
local questID = quest.QuestId
if questID == subIDs.q36203 then
OnFinished36203()
end
end
function Quest362:OnRewind(quest)
end
function Quest362:OnMainFinished(quest)
end
function Quest362:Start()
--print("here 362 quest start")
end
function Quest362:OnDestroy()
end
return Quest362

View File

@@ -0,0 +1,108 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest370 = class("Quest370", questActorProxy)
Quest370.defaultAlias = "Quest370"
local q370Cfg = require('Quest/Client/Q370ClientConfig')
local subIDs = q370Cfg.SubIDs
local qinData = q370Cfg.QinData
local lisaData = q370Cfg.LisaData
local amborData = q370Cfg.AmborData
local gaiaData = q370Cfg.GaiaData
local paimonData = q370Cfg.PaimonData
-- Generated
function Quest370:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["37001"] = self.OnSubStart37001
self.subStartHandlers["37002"] = self.OnSubStart37002
self.subStartHandlers["37003"] = self.OnSubStart37003
end
function Quest370:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["37001"] = self.OnSubFinish37001
self.subFinishHandlers["37002"] = self.OnSubFinish37002
self.subFinishHandlers["37003"] = self.OnSubFinish37003
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest370:OnSubStart37001(quest)
print("37001 start:...")
self:ActionSafeCall(
function(self)
actorMgr:CreateActorWithPos(amborData.Ambor, amborData.AmborScript, amborData.AmborID, 0, amborData.bornPos, amborData.bornDir, true, false,1004,true,100402)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true, false,1004,true,100402)
actorMgr:CreateActorWithPos(gaiaData.Gaia, gaiaData.GaiaScript, gaiaData.GaiaID, 0, gaiaData.bornPos, gaiaData.bornDir, true, false,1004,true,100402)
actorMgr:CreateActorWithPos(lisaData.Lisa, lisaData.LisaScript, lisaData.LisaID, 0, lisaData.bornPos, lisaData.bornDir, true, false,1004,true,100402)
-- actorMgr:CreateActorWithPos(paimonData.Paimon, paimonData.PaimonScript, paimonData.PaimonID, 0, paimonData.bornPos, paimonData.bornDir, true, false,1004,true,100402)
end
)
end
function Quest370:OnSubStart37002(quest)
print("37002 start:...")
-- TODO: Do sth on sub quest 37002 start
end
function Quest370:OnSubStart37003(quest)
print("37003 start:...")
-- TODO: Do sth on sub quest 37002 start
end
--@endregion
--@region sub finish handlers
function Quest370:OnSubFinish37001(quest)
print("OnFinished 37001")
end
function Quest370:OnSubFinish37002(quest)
print("OnFinished 37002")
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
-- self:ActionSafeCall(
-- function(self)
-- self.uActor:AvatarPaimonAppear()
-- end
-- )
end
function Quest370:OnSubFinish37003(quest)
print("OnFinished 37003")
self:RequestInteraction(qinData.Qin)
end
function Quest370:InvokeOnInteraction(param)
if param == 3 then
print("Now Spawn Tears")
self:SpawnGadget(70300059, sceneData:GetDummyPoint(1004,"Q370Tears").pos, sceneData:GetDummyPoint(1004,"Q370Tears").rot, "Tears", 1004)
elseif param == 5 then
print("Now Destroy Tears")
self:UnSpawn("Tears")
end
end
--@endregion
function Quest370:Start()
end
function Quest370:OnDestroy()
end
return Quest370

View File

@@ -0,0 +1,287 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest371 = class("Quest371", questActorProxy)
Quest371.defaultAlias = "Quest371"
local q371Cfg = require('Quest/Client/Q371ClientConfig')
local subIDs = q371Cfg.SubIDs
local paimonData = q371Cfg.PaimonData
local wendyData = q371Cfg.WendyData
-- Generated
function Quest371:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["37101"] = self.OnSubStart37101
self.subStartHandlers["37102"] = self.OnSubStart37102
self.subStartHandlers["37103"] = self.OnSubStart37103
self.subStartHandlers["37104"] = self.OnSubStart37104
self.subStartHandlers["37105"] = self.OnSubStart37105
self.subStartHandlers["37106"] = self.OnSubStart37106
self.subStartHandlers["37107"] = self.OnSubStart37107
self.subStartHandlers["37108"] = self.OnSubStart37108
self.subStartHandlers["37109"] = self.OnSubStart37109
self.subStartHandlers["37110"] = self.OnSubStart37110
self.subStartHandlers["37111"] = self.OnSubStart37111
self.subStartHandlers["37112"] = self.OnSubStart37112
self.subStartHandlers["37113"] = self.OnSubStart37113
self.subStartHandlers["37114"] = self.OnSubStart37114
self.subStartHandlers["37115"] = self.OnSubStart37115
end
function Quest371:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["37101"] = self.OnSubFinish37101
self.subFinishHandlers["37102"] = self.OnSubFinish37102
self.subFinishHandlers["37103"] = self.OnSubFinish37103
self.subFinishHandlers["37104"] = self.OnSubFinish37104
self.subFinishHandlers["37105"] = self.OnSubFinish37105
self.subFinishHandlers["37106"] = self.OnSubFinish37106
self.subFinishHandlers["37107"] = self.OnSubFinish37107
self.subFinishHandlers["37108"] = self.OnSubFinish37108
self.subFinishHandlers["37109"] = self.OnSubFinish37109
self.subFinishHandlers["37110"] = self.OnSubFinish37110
self.subFinishHandlers["37111"] = self.OnSubFinish37111
self.subFinishHandlers["37112"] = self.OnSubFinish37112
self.subFinishHandlers["37113"] = self.OnSubFinish37113
self.subFinishHandlers["37114"] = self.OnSubFinish37114
self.subFinishHandlers["37115"] = self.OnSubFinish37115
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest371:PaimonDis()
local paimon = actorMgr:GetActor(paimonData.Paimon)
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
function Quest371:PaimonDelay()
self:CallDelay(0.5, self.PaimonDis)
end
function Quest371:OnSubStart37101(quest)
--创建使魔派蒙
print("37101 start : Create Shimo Paimon")
-- self.uActor:AvatarPaimonAppear()
end
function Quest371:OnSubStart37102(quest)
--使魔派蒙切换为NPC
print("37102 start:...")
-- self.uActor:AvatarPaimonDisappear(nil, true)
actorMgr:CreateActorWithPos(paimonData.Paimon, paimonData.PaimonScript, paimonData.PaimonID, 0, paimonData.bornPos, paimonData.bornDir, true)
end
function Quest371:OnSubStart37103(quest)
print("37103 start:...")
self:ActionSafeCall(self.PaimonDelay)
actorMgr:CreateActorWithPos("WendyTrackTrigger", "Actor/Gadget/WendyTrackTrigger", 70900002, 0, sceneData:GetDummyPoint(3,"Q371WendyFootPrint1").pos, sceneData:GetDummyPoint(3,"Q371WendyFootPrint1").rot, true, false)
end
function Quest371:OnSubStart37104(quest)
print("37104 start:...")
actorMgr:CreateActorWithPos(paimonData.Paimon, paimonData.PaimonScript, paimonData.PaimonID, 0, sceneData:GetDummyPoint(3,"Q371WendyFootPrint1").pos, sceneData:GetDummyPoint(3,"Q371WendyFootPrint1").rot, true, false)
end
function Quest371:OnSubStart37105(quest)
print("37105 start:...")
-- self:ActionSafeCall(self.PaimonDelay)
self:UnSpawn("FootPrint")
self:SpawnGadget(70300037, sceneData:GetDummyPoint(3,"Q371WendyFootPrint1").pos, sceneData:GetDummyPoint(3,"Q371WendyFootPrint1").rot, "FootPrint")
self:SpawnGadget(70300037, sceneData:GetDummyPoint(3,"Q371WendyTrigger1").pos, sceneData:GetDummyPoint(3,"Q371WendyTrigger1").rot, "FootPrint2")
--add one more footprint here
actorMgr:CreateActorWithPos("WendyTrackTrigger", "Actor/Gadget/WendyTrackTrigger", 70900002, 0, sceneData:GetDummyPoint(3,"Q371WendyTrigger1").pos, sceneData:GetDummyPoint(3,"Q371WendyTrigger1").rot, true, false)
end
function Quest371:OnSubStart37106(quest)
print("37106 start:...")
self:UnSpawn("FootPrint")
self:SpawnGadget(70300037, sceneData:GetDummyPoint(3,"Q371WendyFootPrint2").pos, sceneData:GetDummyPoint(3,"Q371WendyFootPrint2").rot, "FootPrint")
self:SpawnGadget(70300037, sceneData:GetDummyPoint(3,"Q371WendyFootPrint3x1").pos, sceneData:GetDummyPoint(3,"Q371WendyFootPrint3x1").rot, "FootPrint3")
--add one more footprint here
actorMgr:CreateActorWithPos("WendyTrackTrigger", "Actor/Gadget/WendyTrackTrigger", 70900002, 0, sceneData:GetDummyPoint(3,"Q371WendyTrigger2").pos, sceneData:GetDummyPoint(3,"Q371WendyTrigger2").rot, true, false)
end
function Quest371:OnSubStart37107(quest)
print("37107 start:...")
self:UnSpawn("FootPrint")
self:UnSpawn("FootPrint2")
self:SpawnGadget(70300037, sceneData:GetDummyPoint(3,"Q371WendyFootPrint3").pos, sceneData:GetDummyPoint(3,"Q371WendyFootPrint3").rot, "FootPrint071")
actorMgr:CreateActorWithPos("WendyTrackTrigger", "Actor/Gadget/WendyTrackTrigger", 70900002, 0, sceneData:GetDummyPoint(3,"Q371WendyTrigger3").pos, sceneData:GetDummyPoint(3,"Q371WendyTrigger3").rot, true, false)
end
function Quest371:OnSubStart37108(quest)
-- self:UnSpawn("FootPrint")
self:UnSpawn("FootPrint3")
self:SpawnGadget(70300037, sceneData:GetDummyPoint(3,"Q371WendyFootPrint4").pos, sceneData:GetDummyPoint(3,"Q371WendyFootPrint4").rot, "FootPrint")
self:SpawnGadget(70300037, sceneData:GetDummyPoint(3,"Q371WendyFootPrint4x1").pos, sceneData:GetDummyPoint(3,"Q371WendyFootPrint4x1").rot, "FootPrint2")
self:SpawnGadget(70300037, sceneData:GetDummyPoint(3,"Q371WendyTrigger4").pos, sceneData:GetDummyPoint(3,"Q371WendyTrigger4").rot, "FootPrint3")
--add 2 more footprint here
actorMgr:CreateActorWithPos("WendyTrackTrigger", "Actor/Gadget/WendyTrackTrigger", 70900002, 0, sceneData:GetDummyPoint(3,"Q371WendyTrigger4").pos, sceneData:GetDummyPoint(3,"Q371WendyTrigger4").rot, true, false)
end
function Quest371:OnSubStart37109(quest)
self:UnSpawn("FootPrint")
self:UnSpawn("FootPrint2")
self:UnSpawn("FootPrint071")
self:SpawnGadget(70300037, sceneData:GetDummyPoint(3,"Q371WendyFootPrint5").pos, sceneData:GetDummyPoint(3,"Q371WendyFootPrint5").rot, "FootPrint")
self:SpawnGadget(70300037, sceneData:GetDummyPoint(3,"Q371WendyFootPrint5x1").pos, sceneData:GetDummyPoint(3,"Q371WendyFootPrint5x1").rot, "FootPrint2")
--add 1 more footprint here
actorMgr:CreateActorWithPos("WendyTrackTriggersp", "Actor/Gadget/WendyTrackTriggersp", 70900002, 0, sceneData:GetDummyPoint(3,"Q371WendyTrigger5").pos, sceneData:GetDummyPoint(3,"Q371WendyTrigger5").rot, true, false)
end
function Quest371:OnSubStart37110(quest)
self:UnSpawn("FootPrint")
self:UnSpawn("FootPrint3")
self:SpawnGadget(70300037, sceneData:GetDummyPoint(3,"Q371WendyFootPrint6").pos, sceneData:GetDummyPoint(3,"Q371WendyFootPrint6").rot, "FootPrint")
actorMgr:CreateActorWithPos("WendyTrackTriggersp1", "Actor/Gadget/WendyTrackTriggersp1", 70900002, 0, sceneData:GetDummyPoint(3,"Q371WendyTrigger6").pos, sceneData:GetDummyPoint(3,"Q371WendyTrigger6").rot, true, false)
end
function Quest371:OnSubStart37111(quest)
self:UnSpawn("FootPrint")
self:UnSpawn("FootPrint2")
self:SpawnGadget(70300037, sceneData:GetDummyPoint(3,"Q371WendyFootPrint7").pos, sceneData:GetDummyPoint(3,"Q371WendyFootPrint7").rot, "FootPrint")
self:SpawnGadget(70300037, sceneData:GetDummyPoint(3,"Q371WendyFootPrint7x1").pos, sceneData:GetDummyPoint(3,"Q371WendyFootPrint7x1").rot, "FootPrint4")
actorMgr:CreateActorWithPos("WendyTrackTriggersp2", "Actor/Gadget/WendyTrackTriggersp2", 70900002, 0, sceneData:GetDummyPoint(3,"Q371WendyTrigger7").pos, sceneData:GetDummyPoint(3,"Q371WendyTrigger7").rot, true, false)
end
function Quest371:OnSubStart37112(quest)
self:UnSpawn("FootPrint")
self:SpawnGadget(70300037, sceneData:GetDummyPoint(3,"Q371WendyFootPrint8").pos, sceneData:GetDummyPoint(3,"Q371WendyFootPrint8").rot, "FootPrint")
self:SpawnGadget(70300037, sceneData:GetDummyPoint(3,"Q371WendyFootPrint8x1").pos, sceneData:GetDummyPoint(3,"Q371WendyFootPrint8x1").rot, "FootPrint2")
--add 1 more footprint here
actorMgr:CreateActorWithPos("WendyTrackTriggersp3", "Actor/Gadget/WendyTrackTriggersp3", 70900002, 0, sceneData:GetDummyPoint(3,"Q371WendyTrigger8").pos, sceneData:GetDummyPoint(3,"Q371WendyTrigger8").rot, true, false)
end
function Quest371:OnSubStart37113(quest)
self:UnSpawn("FootPrint")
self:UnSpawn("FootPrint4")
self:SpawnGadget(70300037, sceneData:GetDummyPoint(3,"Q371WendyFootPrint9").pos, sceneData:GetDummyPoint(3,"Q371WendyFootPrint9").rot, "FootPrint")
actorMgr:CreateActorWithPos("WendyTrackTriggersp4", "Actor/Gadget/WendyTrackTriggersp4", 70900002, 0, sceneData:GetDummyPoint(3,"Q371WendyTrigger9").pos, sceneData:GetDummyPoint(3,"Q371WendyTrigger9").rot, true, false)
end
function Quest371:OnSubStart37114(quest)
print("37114 start:...")
-- actorMgr:CreateActorWithPos("Q371Trigger", "Actor/Gadget/Q371Trigger", 70900002, 0, sceneData:GetDummyPoint(3,"Q371WendyFootPrint5").pos, sceneData:GetDummyPoint(3,"Q371WendyFootPrint5").rot, true, false)
end
function Quest371:OnSubStart37115(quest)
print("37115 start:...")
actorMgr:CreateActorWithPos(paimonData.Paimon, paimonData.PaimonScript, paimonData.PaimonID, 0, sceneData:GetDummyPoint(3,"Q371WendyFootPrint5").pos, sceneData:GetDummyPoint(3,"Q371WendyFootPrint5").rot, true, false)
self:CallDelay(1, self.RequestPaimon)
end
function Quest371:RequestPaimon(quest)
self:RequestInteraction(paimonData.Paimon)
end
--@endregion
--@region sub finish handlers
function Quest371:OnSubFinish37101(quest)
print("OnFinished 37101")
local qin = actorMgr:GetActor("Qin")
if qin ~= nil then
qin:Destroy(false)
end
local ambor = actorMgr:GetActor("Ambor")
if ambor ~= nil then
ambor:Destroy(false)
end
local lisa = actorMgr:GetActor("Lisa")
if lisa ~= nil then
lisa:Destroy(false)
end
local gaia = actorMgr:GetActor("Gaia")
if gaia ~= nil then
gaia:Destroy(false)
end
end
function Quest371:OnSubFinish37102(quest)
print("OnFinished 37102")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.run1Pos, wendyData.run1Dir, true)
self:CallDelay(1,self.WendyRun)
end
function Quest371:WendyRun()
local wendy = actorMgr:GetActor(wendyData.Wendy)
if wendy ~= nil then
wendy:ClearFollowTask()
wendy:RunToTask(wendyData.run2Pos,
function(wendy, task)
wendy:Destroy(false)
end
)
self:EnterSceneLookCamera(wendyData.cameraPos, 3.5, 3, true)
print("Rush Wendy ***")
end
end
function Quest371:OnSubFinish37103(quest)
print("OnFinished 37103")
end
function Quest371:OnSubFinish37104(quest)
-- actorMgr:CreateActorWithPos("Q371Trigger", "Actor/Gadget/Q371Trigger", 70900002, 0, sceneData:GetDummyPoint(3,"Q371WendyFootPrint1").pos, sceneData:GetDummyPoint(3,"Q371WendyFootPrint1").rot, true, false)
self:ActionSafeCall(self.PaimonDis)
self:ActionSafeCall(self.ShowTutorial)
end
function Quest371:ShowTutorial(quest)
self:ShowTutorialDialog(112,
function ()
globalActor:StartGuide("EnterFocusModeGuidePC")
end
)
end
function Quest371:OnSubFinish37105(quest)
end
function Quest371:OnSubFinish37106(quest)
end
function Quest371:OnSubFinish37107(quest)
end
function Quest371:OnSubFinish37108(quest)
end
function Quest371:OnSubFinish37109(quest)
end
function Quest371:OnSubFinish37110(quest)
end
function Quest371:OnSubFinish37111(quest)
end
function Quest371:OnSubFinish37112(quest)
end
function Quest371:OnSubFinish37113(quest)
--self:UnSpawn("FootPrint")
self:UnSpawn("FootPrint2")
end
function Quest371:OnSubFinish37114(quest)
end
function Quest371:OnSubFinish37115(quest)
self:ActionSafeCall(self.PaimonDis)
end
--@endregion
function Quest371:Start()
end
function Quest371:OnDestroy()
end
return Quest371

View File

@@ -0,0 +1,179 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local DailyNpcManager = require('Actor/DailyNPCManager')
local Quest372 = class("Quest372", questActorProxy)
Quest372.defaultAlias = "Quest372"
local q372Cfg = require('Quest/Client/Q372ClientConfig')
local subIDs = q372Cfg.SubIDs
local paimonData = q372Cfg.PaimonData
local wendyData = q372Cfg.WendyData
-- Generated
function Quest372:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["37201"] = self.OnSubStart37201
self.subStartHandlers["37202"] = self.OnSubStart37202
self.subStartHandlers["37203"] = self.OnSubStart37203
self.subStartHandlers["37204"] = self.OnSubStart37204
end
function Quest372:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["37201"] = self.OnSubFinish37201
self.subFinishHandlers["37202"] = self.OnSubFinish37202
self.subFinishHandlers["37203"] = self.OnSubFinish37203
self.subFinishHandlers["37204"] = self.OnSubFinish37204
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest372:OnSubStart37201(quest)
print("37201 start ")
self:NotifyTo("MengdeInsomniaStand_10", DailyNpcManager.NpcEventType.HIDESELF, true)
-- actorMgr:CreateActorWithPos(paimonData.Paimon, paimonData.PaimonScript, paimonData.PaimonID, 0, paimonData.bornPos, paimonData.bornDir, true)
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
end
function Quest372:OnSubStart37202(quest)
print("37202 start:...")
self:NotifyTo("MengdeInsomniaStand_10", DailyNpcManager.NpcEventType.HIDESELF, true)
-- self:ActionSafeCall(self.Play372Cutscene)
-- self:ActionSafeCall(self.RequestWendy)
local quest = actorMgr:GetActor(q372Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
function Quest372:OnSubStart37203(quest)
print("37203 start:...")
self:NotifyTo("MengdeInsomniaStand_10", DailyNpcManager.NpcEventType.HIDESELF, true)
-- self:ActionSafeCall(self.Play372Cutscene)
self:ActionSafeCall(self.RequestWendy)
end
function Quest372:OnSubStart37204(quest)
print("37204 start:...")
self:NotifyTo("MengdeInsomniaStand_10", DailyNpcManager.NpcEventType.HIDESELF, true)
-- self:ActionSafeCall(self.Play372Cutscene)
end
function Quest372:Play372Cutscene(quest)
self:PlayCutscene(q372Cfg.PurifyTearCfg, self.On372CutsceneFinish)
end
function Quest372:RequestPaimon(quest)
self:RequestInteraction(paimonData.Paimon)
end
function Quest372:RequestWendy(quest)
self:RequestInteraction(wendyData.Wendy)
end
--@endregion
--@region sub finish handlers
function Quest372:OnSubFinish37201(quest)
print("OnFinished 37201")
end
function Quest372:OnSubFinish37202(quest)
print("OnFinished 37202")
end
function Quest372:OnSubFinish37203(quest)
print("OnFinished 37203")
-- self:ActionSafeCall(self.BlackDoSth)
self:ActionSafeCall(
function(self)
local wendy = actorMgr:GetActor(wendyData.Wendy)
if wendy ~= nil then
wendy:Destroy(false)
end
end
)
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
end
function Quest372:OnSubFinish37204(quest)
print("OnFinished 37204")
end
function Quest372:BlackDoSth(quest)
print("OnFinished 37203")
self:ShowBlackScreen(1.0, 1.0, 1.0, self.DestroyNPC)
end
function Quest372:DestroyNPC(quest)
self:ActionSafeCall(
function(self)
local wendy = actorMgr:GetActor(wendyData.Wendy)
if wendy ~= nil then
wendy:Destroy(false)
end
end
)
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
end
function Quest372:InvokeOnInteraction(param)
if param == 3 then
print("Now Spawn Tears")
self:SpawnGadget(70300042, sceneData:GetDummyPoint(3,"Q372Tears").pos, sceneData:GetDummyPoint(3,"Q372Tears").rot, "Tears", 3)
elseif param == 4 then
print("Now Destroy Tears")
self:UnSpawn("Tears")
elseif param == 6 then
local wendy = actorMgr:GetActor(wendyData.Wendy)
if wendy ~= nil then
wendy:ClearFollowTask()
wendy:WalkToTask(wendyData.desPos, Quest372.wendyVanish)
end
end
end
function Quest372:wendyVanish()
-- self:ShowBlackScreen(0.5, 1.0, 0.5,
-- function(self)
local wendy = actorMgr:GetActor(wendyData.Wendy)
if wendy ~= nil then
wendy:SetVisible(false)
end
-- end
-- )
end
--@endregion
function Quest372:Start()
end
function Quest372:OnDestroy()
end
return Quest372

View File

@@ -0,0 +1,76 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest373 = class("Quest373", questActorProxy)
Quest373.defaultAlias = "Quest373"
local q373Cfg = require('Quest/Client/Q373ClientConfig')
local subIDs = q373Cfg.SubIDs
local paimonData = q373Cfg.PaimonData
local wendyData = q373Cfg.WendyData
local maidData = q373Cfg.MaidData
local guardData = q373Cfg.GuardData
-- Generated
function Quest373:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["37301"] = self.OnSubStart37301
self.subStartHandlers["37302"] = self.OnSubStart37302
self.subStartHandlers["37303"] = self.OnSubStart37303
end
function Quest373:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["37301"] = self.OnSubFinish37301
self.subFinishHandlers["37302"] = self.OnSubFinish37302
self.subFinishHandlers["37303"] = self.OnSubFinish37303
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest373:OnSubStart37301(quest)
print("37301 start ")
actorMgr:CreateActorWithPos(guardData.Guard, guardData.GuardScript, guardData.GuardID, 0, guardData.bornPos, guardData.bornDir, true, false,1008)
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true, false,1008,true,1)
actorMgr:CreateActorWithPos(maidData.Maid, maidData.MaidScript, maidData.MaidID, 0, maidData.bornPos, maidData.bornDir, true, false,1008)
end
function Quest373:OnSubStart37302(quest)
print("37302 start:...")
actorMgr:CreateActorWithPos(paimonData.Paimon, paimonData.PaimonScript, paimonData.PaimonID, 0, paimonData.bornPos, paimonData.bornDir, true, false,1008,true,1)
end
function Quest373:OnSubStart37303(quest)
print("37303 start:...")
end
--@endregion
--@region sub finish handlers
function Quest373:OnSubFinish37301(quest)
print("OnFinished 37301")
end
function Quest373:OnSubFinish37302(quest)
print("OnFinished 37302")
end
function Quest373:OnSubFinish37303(quest)
print("OnFinished 37303")
end
--@endregion
function Quest373:Start()
end
function Quest373:OnDestroy()
end
return Quest373

View File

@@ -0,0 +1,173 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest374 = class("Quest374", questActorProxy)
Quest374.defaultAlias = "Quest374"
local q374Cfg = require('Quest/Client/Q374ClientConfig')
local subIDs = q374Cfg.SubIDs
local paimonData = q374Cfg.PaimonData
local wendyData = q374Cfg.WendyData
local maidData = q374Cfg.MaidData
local guardData = q374Cfg.GuardData
-- Generated
function Quest374:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["37401"] = self.OnSubStart37401
self.subStartHandlers["37402"] = self.OnSubStart37402
self.subStartHandlers["37403"] = self.OnSubStart37403
self.subStartHandlers["37404"] = self.OnSubStart37404
self.subStartHandlers["37405"] = self.OnSubStart37405
self.subStartHandlers["37406"] = self.OnSubStart37406
end
function Quest374:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["37401"] = self.OnSubFinish37401
self.subFinishHandlers["37402"] = self.OnSubFinish37402
self.subFinishHandlers["37403"] = self.OnSubFinish37403
self.subFinishHandlers["37404"] = self.OnSubFinish37404
self.subFinishHandlers["37405"] = self.OnSubFinish37405
self.subFinishHandlers["37406"] = self.OnSubFinish37406
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest374:OnSubStart37401(quest)
print("37401 start ")
actorMgr:CreateActorWithPos(guardData.Guard, guardData.GuardScript, guardData.GuardID, 0, guardData.bornPos, guardData.bornDir, true, true,1008)
actorMgr:CreateActorWithPos(maidData.Maid, maidData.MaidScript, maidData.MaidID, 0, maidData.bornPos1, maidData.bornDir1, true, false,1008)
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos2, wendyData.bornDir2, true, false,1008)
-- wendy:ClearFollowTask()
-- wendy:RunToTask(wendyData.bornPos2,
-- function(wendy, task)
-- local quest = actorMgr:GetActor(q374Cfg.ActorAlias)
-- if quest ~= nil then
-- quest:FinishQuest(false, nil)
-- end
-- wendy:Standby()
-- wendy:TurnTo(M.Euler2DirXZ(wendyData.bornDir2))
-- end
-- )
end
function Quest374:OnSubStart37402(quest)
print("37402 start:...")
-- actorMgr:CreateActorWithPos(paimonData.Paimon, paimonData.PaimonScript, paimonData.PaimonID, 0, paimonData.bornPos1, paimonData.bornDir1, true, false,1008)
end
function Quest374:OnSubStart37403(quest)
print("37403 start:...")
local maid = actorMgr:GetActor(maidData.Maid)
if maid ~= nil then
maid:ClearFollowTask()
maid:WalkToTask(maidData.bornPos2,
function(maid, task)
local quest = actorMgr:GetActor(q374Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
maid:Standby()
maid:TurnTo(M.Euler2DirXZ(maidData.bornDir2))
end
)
end
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
end
function Quest374:OnSubStart37404(quest)
print("37404 start:...")
end
function Quest374:OnSubStart37405(quest)
print("37405 start:...")
local quest = actorMgr:GetActor(q374Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
function Quest374:OnSubStart37406(quest)
print("37406 start:...")
-- actorMgr:CreateActorWithPos(paimonData.Paimon, paimonData.PaimonScript, paimonData.PaimonID, 0, paimonData.bornPos2, paimonData.bornDir2, true, false,1008)
local wendy = actorMgr:GetActor(wendyData.Wendy)
wendy:Standby()
wendy:TurnTo(M.Euler2DirXZ(paimonData.bornDir1))
end
--@endregion
--@region sub finish handlers
function Quest374:OnSubFinish37401(quest)
print("OnFinished 37401")
end
function Quest374:OnSubFinish37402(quest)
print("OnFinished 37402")
end
function Quest374:OnSubFinish37403(quest)
print("OnFinished 37403")
end
function Quest374:OnSubFinish37404(quest)
print("OnFinished 37404")
end
function Quest374:OnSubFinish37405(quest)
print("OnFinished 37405")
end
function Quest374:OnSubFinish37406(quest)
print("OnFinished 37406")
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
-- self:ActionSafeCall(
-- function(self)
-- local maid = actorMgr:GetActor(maidData.Maid)
-- if maid ~= nil then
-- maid:ClearFollowTask()
-- maid:WalkToTask(maidData.missPos,
-- function(maid, task)
-- maid:Destroy(false)
-- end
-- )
-- end
-- end
-- )
end
--@endregion
function Quest374:Start()
end
function Quest374:OnDestroy()
end
return Quest374

View File

@@ -0,0 +1,320 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest375 = class("Quest375", questActorProxy)
Quest375.defaultAlias = "Quest375"
local q375Cfg = require('Quest/Client/Q375ClientConfig')
local wendyData = q375Cfg.WendyData
local guardData = q375Cfg.GuardData
local sneakAIData =
{
q375Cfg.SneakAI1Data,
q375Cfg.SneakAI2Data,
q375Cfg.SneakAI3Data,
q375Cfg.SneakAI4Data,
q375Cfg.SneakAI5Data,
q375Cfg.SneakAI6Data,
q375Cfg.SneakAI7Data,
q375Cfg.SneakAI8Data,
q375Cfg.SneakAI9Data,
q375Cfg.SneakAI10Data,
q375Cfg.SneakAI11Data,
q375Cfg.SneakAI12Data,
q375Cfg.SneakAI13Data,
q375Cfg.SneakAI14Data,
}
local FailNum = 0
-- Generated
function Quest375:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["37501"] = self.OnSubStart37501
self.subStartHandlers["37502"] = self.OnSubStart37502
self.subStartHandlers["37503"] = self.OnSubStart37503
self.subStartHandlers["37504"] = self.OnSubStart37504
self.subStartHandlers["37505"] = self.OnSubStart37505
self.subStartHandlers["37506"] = self.OnSubStart37506
self.subStartHandlers["37507"] = self.OnSubStart37507
end
function Quest375:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["37501"] = self.OnSubFinish37501
self.subFinishHandlers["37502"] = self.OnSubFinish37502
self.subFinishHandlers["37503"] = self.OnSubFinish37503
self.subFinishHandlers["37504"] = self.OnSubFinish37504
self.subFinishHandlers["37505"] = self.OnSubFinish37505
self.subFinishHandlers["37506"] = self.OnSubFinish37506
self.subFinishHandlers["37507"] = self.OnSubFinish37507
end
-- local param begin
function Quest375:FailMovePlayer()
print("fail move player ")
self:TransmitPlayer(1008,sceneData:GetDummyPoint(1008,"Q375Fail").pos, sceneData:GetDummyPoint(1008,"Q375Fail").rot, self.FinishSneak)
self:ExitSneakMode()
self:TriggerLevelAbility("Level_Remove_Switch_SneakBtn")
end
function Quest375:SuccessMovePlayer()
print("success move player ")
-- self:UnSpawn("Harp")
self:PlayFirstCutscene()
self:ExitSneakMode()
self:TriggerLevelAbility("Level_Remove_Switch_SneakBtn")
-- local gurad = actorMgr:GetActor(guardData.Guard)
-- if gurad ~= nil then
-- gurad:Destroy(false)
-- end
end
function Quest375:PlayFirstCutscene(quest)
self:PlayCutscene(q375Cfg.Runaway01Cfg, self.FinishSneak)
print("PlayFirstCutscene")
end
function Quest375:SuccTrans(quest)
self:TransmitPlayer(3,sceneData:GetDummyPoint(3,"Q372Venti").pos, sceneData:GetDummyPoint(3,"Q372Venti").rot)
print("SuccTrans")
end
function Quest375:FinishSneak()
local quest = actorMgr:GetActor(q375Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
function Quest375:PlaySecondCutscene(quest)
self:PlayCutscene(q375Cfg.Runaway02Cfg, self.FinishSneak)
print("PlaySecondCutscene")
end
function Quest375:SneakAIPrepare()
print("FailNum is", FailNum)
if FailNum < 2 then
sneakAIData =
{
-- q375Cfg.SneakAI1Data,
q375Cfg.SneakAI2Data,
q375Cfg.SneakAI3Data,
q375Cfg.SneakAI4Data,
q375Cfg.SneakAI5Data,
q375Cfg.SneakAI6Data,
q375Cfg.SneakAI7Data,
q375Cfg.SneakAI8Data,
q375Cfg.SneakAI9Data,
q375Cfg.SneakAI10Data,
q375Cfg.SneakAI11Data,
q375Cfg.SneakAI12Data,
q375Cfg.SneakAI13Data,
q375Cfg.SneakAI14Data,
}
q375Cfg.SneakAINum = 13
print("SneakAINum is", q375Cfg.SneakAINum)
else sneakAIData =
{
q375Cfg.SneakAI2Data,
q375Cfg.SneakAI3Data,
q375Cfg.SneakAI4Data,
q375Cfg.SneakAI6Data,
q375Cfg.SneakAI8Data,
q375Cfg.SneakAI9Data,
q375Cfg.SneakAI10Data,
q375Cfg.SneakAI12Data,
q375Cfg.SneakAI14Data,
}
q375Cfg.SneakAINum = 9
print("SneakAINum is", q375Cfg.SneakAINum)
end
for i=1, q375Cfg.SneakAINum do
local SneakAI = actorMgr:CreateActorWithPos(sneakAIData[i].alias, sneakAIData[i].metaPath, sneakAIData[i].configID, sneakAIData[i].dataIndex, sneakAIData[i].bornPos, sneakAIData[i].bornDir, true, true, 1005)
SneakAI.PatrolPosNum = sneakAIData[i].PatrolPosNum
SneakAI.PatrolPos = sneakAIData[i].PatrolPos
SneakAI.PatrolDir = sneakAIData[i].PatrolDir
SneakAI.PatrolNext = 1
-- SneakAI:Start()
-- SneakAI:ThreatTask(SneakAI.Discover, SneakAI.Aware, SneakAI.ReturnToPatrol)
end
-- for i=1, #q375Cfg.TreasurePos do
-- self:SpawnItem(q375Cfg.TreasureID, q375Cfg.TreasurePos[i], nil, "Treasure" .. tostring(i), 1005)
-- end
end
function Quest375:SneakAIDestroy()
for i=1, q375Cfg.SneakAINum do
local SneakAI = actorMgr:GetActor(sneakAIData[i].alias)
if SneakAI ~= nil then
SneakAI:Destroy(false)
end
end
for i=1, #q375Cfg.TreasurePos do
self:UnSpawn("Treasure" .. tostring(i))
end
end
-- local param end
-- local method begin
--@region sub start handlers
function Quest375:OnSubStart37501(quest)
print("37501 start xxx ")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true, false,1008)
-- actorMgr:CreateActorWithPos(guardData.Guard, guardData.GuardScript, guardData.GuardID, 0, guardData.bornPos, guardData.bornDir, true, false,1008)
end
function Quest375:OnSubStart37502(quest)
print("37502 start:...")
end
function Quest375:OnSubStart37503(quest)
print("37503 start:...")
self:SneakAIDestroy()
self:UnSpawn("Harp")
self:UnSpawn("Goal")
q375Cfg.gotKey = false
self:SneakAIPrepare()
-- self:SpawnItem(q375Cfg.KeyID, q375Cfg.KeyPos, nil, "Harp", 1005)
self:SpawnGadget(70300040, q375Cfg.KeyPos, q375Cfg.KeyDir, "Harp", 1005)
self:CallDelay(2.5,self.SneakStart)
self:EnterSneakMode(11)
self:TriggerLevelAbility("Level_Apply_Switch_SneakBtn")
-- self:EnterSceneLookCamera(q375Cfg.KeyPos, 1.5, 2, true)
end
function Quest375:OnSubStart37504(quest)
print("37504 start:...")
FailNum = FailNum + 1
self:CallDelay(1,self.FailMovePlayer)
self:CallDelay(1,self.SneakAIDestroy)
self:UnSpawn("Harp")
self:UnSpawn("Goal")
-- local quest = actorMgr:GetActor(q375Cfg.ActorAlias)
-- if quest ~= nil then
-- quest:FinishQuest(false, nil)
-- end
end
function Quest375:OnSubStart37505(quest)
print("37505 start:...")
self:CallDelay(0.5,self.SuccessMovePlayer)
self:CallDelay(0.5,self.SneakAIDestroy)
end
function Quest375:OnSubStart37506(quest)
print("37506 start:...")
self:SuccTrans()
end
function Quest375:OnSubStart37507(quest)
print("37507 start:...")
self:PlaySecondCutscene()
end
function Quest375:SneakStart()
-- self:EnterSneakMode(11)
-- self:TriggerLevelAbility("Level_Apply_Switch_SneakBtn")
self:EnterSceneLookCamera(q375Cfg.KeyPos, 1.5, 2, true)
-- globalActor:SpawnGadget(70900201, q375Cfg.KeyPos, q375Cfg.KeyDir, "Goal", 1005)
end
function Quest375:ShowTutorial(quest)
self:ShowTutorialDialog(160,
function ()
globalActor:StartGuide("ChangeTimeGuidePC")
end
)
end
-- function Quest375:OnSubStart37507(quest)
-- print("37507 start:...")
-- end
-- function Quest375:OnSubStart37507(quest)
-- print("37507 start:...")
-- self:ActionSafeCall(self.Trans)
-- end
-- function Quest375:Trans()
-- self:TransmitPlayer(0, M.Pos(-0.4, 0.025, -3), M.Euler(0, 0, 0),
-- function(self)
-- local quest = actorMgr:GetActor(q375Cfg.ActorAlias)
-- if quest ~= nil then
-- quest:FinishQuest(false, nil)
-- end
-- end
-- )
-- end
--@endregion
--@region sub finish handlers
function Quest375:OnSubFinish37501(quest)
print("OnFinished 37501")
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
self:ActionSafeCall(self.ShowTutorial)
end
function Quest375:OnSubFinish37502(quest)
print("OnFinished 37502")
self:ActionSafeCall(
function(self)
local wendy = actorMgr:GetActor(wendyData.Wendy)
if wendy ~= nil then
wendy:Destroy(false)
end
end
)
self:ActionSafeCall(
function(self)
local maid = actorMgr:GetActor("Maid")
if maid ~= nil then
maid:Destroy(false)
end
end
)
end
function Quest375:OnSubFinish37503(quest)
print("OnFinished 37503")
end
function Quest375:OnSubFinish37504(quest)
print("OnFinished 37504")
end
function Quest375:OnSubFinish37505(quest)
print("OnFinished 37505")
end
function Quest375:OnSubFinish37506(quest)
print("OnFinished 37506")
end
function Quest375:OnSubFinish37507(quest)
print("OnFinished 37507")
end
--@endregion
function Quest375:Start()
end
function Quest375:OnDestroy()
end
return Quest375

View File

@@ -0,0 +1,326 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest376 = class("Quest376", questActorProxy)
Quest376.defaultAlias = "Quest376"
local q376Cfg = require('Quest/Client/Q376ClientConfig')
local wendyData = q376Cfg.WendyData
local dilucData = q376Cfg.DilucData
local soldier1Data = q376Cfg.Soldier1Data
local soldier2Data = q376Cfg.Soldier2Data
local FailNum = 0
local EscapeTime = 50
-- Generated
function Quest376:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["37601"] = self.OnSubStart37601
self.subStartHandlers["37602"] = self.OnSubStart37602
self.subStartHandlers["37603"] = self.OnSubStart37603
self.subStartHandlers["37604"] = self.OnSubStart37604
self.subStartHandlers["37605"] = self.OnSubStart37605
self.subStartHandlers["37606"] = self.OnSubStart37606
self.subStartHandlers["37607"] = self.OnSubStart37607
self.subStartHandlers["37608"] = self.OnSubStart37608
end
function Quest376:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["37601"] = self.OnSubFinish37601
self.subFinishHandlers["37602"] = self.OnSubFinish37602
self.subFinishHandlers["37603"] = self.OnSubFinish37603
self.subFinishHandlers["37604"] = self.OnSubFinish37604
self.subFinishHandlers["37605"] = self.OnSubFinish37605
self.subFinishHandlers["37606"] = self.OnSubFinish37606
self.subFinishHandlers["37607"] = self.OnSubFinish37607
self.subFinishHandlers["37608"] = self.OnSubFinish37608
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest376:WendyDis()
local wendy = actorMgr:GetActor(wendyData.Wendy)
if wendy ~= nil then
wendy:Destroy(false)
end
end
function Quest376:WendyDelay()
self:CallDelay(1, self.WendyDis)
end
function Quest376:EscapePrepare()
for i=1, #q376Cfg.EscapeRoute1-1 do
local AccDir = { x = q376Cfg.EscapeRoute1[i+1].x-q376Cfg.EscapeRoute1[i].x, y = q376Cfg.EscapeRoute1[i+1].y-q376Cfg.EscapeRoute1[i].y, z = q376Cfg.EscapeRoute1[i+1].z-q376Cfg.EscapeRoute1[i].z }
self:SpawnGadget(70690001, q376Cfg.EscapeRoute1[i], M.Dir2Euler(AccDir), "Acc1" .. tostring(i))
end
-- for i=1, #q376Cfg.EscapeRoute2-1 do
-- local AccDir = { x = q376Cfg.EscapeRoute2[i+1].x-q376Cfg.EscapeRoute2[i].x, y = q376Cfg.EscapeRoute2[i+1].y-q376Cfg.EscapeRoute2[i].y, z = q376Cfg.EscapeRoute2[i+1].z-q376Cfg.EscapeRoute2[i].z }
-- self:SpawnGadget(70690001, q376Cfg.EscapeRoute2[i], M.Dir2Euler(AccDir), "Acc2" .. tostring(i))
-- end
-- for i=1, #q376Cfg.EscapeRoute3-1 do
-- local AccDir = { x = q376Cfg.EscapeRoute3[i+1].x-q376Cfg.EscapeRoute3[i].x, y = q376Cfg.EscapeRoute3[i+1].y-q376Cfg.EscapeRoute3[i].y, z = q376Cfg.EscapeRoute3[i+1].z-q376Cfg.EscapeRoute3[i].z }
-- self:SpawnGadget(70690001, q376Cfg.EscapeRoute3[i], M.Dir2Euler(AccDir), "Acc3" .. tostring(i))
-- end
for i=1, #q376Cfg.EscapeRoute4-1 do
local AccDir = { x = q376Cfg.EscapeRoute4[i+1].x-q376Cfg.EscapeRoute4[i].x, y = q376Cfg.EscapeRoute4[i+1].y-q376Cfg.EscapeRoute4[i].y, z = q376Cfg.EscapeRoute4[i+1].z-q376Cfg.EscapeRoute4[i].z }
self:SpawnGadget(70690001, q376Cfg.EscapeRoute4[i], M.Dir2Euler(AccDir), "Acc4" .. tostring(i))
end
for i=1, #q376Cfg.EscapeRoute5-1 do
local AccDir = { x = q376Cfg.EscapeRoute5[i+1].x-q376Cfg.EscapeRoute5[i].x, y = q376Cfg.EscapeRoute5[i+1].y-q376Cfg.EscapeRoute5[i].y, z = q376Cfg.EscapeRoute5[i+1].z-q376Cfg.EscapeRoute5[i].z }
self:SpawnGadget(70690001, q376Cfg.EscapeRoute5[i], M.Dir2Euler(AccDir), "Acc5" .. tostring(i))
end
for i=1, #q376Cfg.EscapeRoute6-1 do
local AccDir = { x = q376Cfg.EscapeRoute6[i+1].x-q376Cfg.EscapeRoute6[i].x, y = q376Cfg.EscapeRoute6[i+1].y-q376Cfg.EscapeRoute6[i].y, z = q376Cfg.EscapeRoute6[i+1].z-q376Cfg.EscapeRoute6[i].z }
self:SpawnGadget(70690001, q376Cfg.EscapeRoute6[i], M.Dir2Euler(AccDir), "Acc6" .. tostring(i))
end
end
function Quest376:EscapeDestroy()
print("OnFinished 37602")
for i=1, #q376Cfg.EscapeRoute1-1 do
self:UnSpawn("Acc1" .. tostring(i))
end
-- for i=1, #q376Cfg.EscapeRoute2-1 do
-- self:UnSpawn("Acc2" .. tostring(i))
-- end
-- for i=1, #q376Cfg.EscapeRoute3-1 do
-- self:UnSpawn("Acc3" .. tostring(i))
-- end
for i=1, #q376Cfg.EscapeRoute4-1 do
self:UnSpawn("Acc4" .. tostring(i))
end
for i=1, #q376Cfg.EscapeRoute5-1 do
self:UnSpawn("Acc5" .. tostring(i))
end
for i=1, #q376Cfg.EscapeRoute6 do
self:UnSpawn("Acc6" .. tostring(i))
end
end
function Quest376:StartCount()
if FailNum < 2 then
EscapeTime = 50
else
EscapeTime = 60
end
self:CountDownUIStart(EscapeTime, 10, 3)
self:CallDelay(EscapeTime+4,self.CountDown)
end
function Quest376:CountDown()
print("CountDown Finished")
if q376Cfg.EscapeFlag == false then
FailNum = FailNum + 1
print("escape fail time is ",FailNum )
if FailNum < 3 then
local quest = actorMgr:GetActor(q376Cfg.ActorAlias)
if quest ~= nil then
print("escape fail")
quest:FinishQuest(true, nil)
end
else
local quest = actorMgr:GetActor(q376Cfg.ActorAlias)
if quest ~= nil then
print("escape fail omg")
quest:FinishQuest(true, nil)
end
end
end
end
function Quest376:AdvanceQuest()
local quest = actorMgr:GetActor(q376Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
function Quest376:OnSubStart37601(quest)
print("37601 start ")
local quest = actorMgr:GetActor(q376Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
function Quest376:OnSubStart37602(quest)
q376Cfg.EscapeFlag = false
self:EscapeDestroy()
self:EscapePrepare()
self:ActionSafeCall(self.StartCount)
globalActor:SpawnGadget(70900201, sceneData:GetDummyPoint(3,"QuestBarUI").pos, sceneData:GetDummyPoint(3,"QuestBarUI").rot , "Goal1", 3)
end
function Quest376:OnSubStart37603(quest)
print("37603 start:...")
self:EscapeDestroy()
self:CountDownUITerminate()
self:UnCallFunc(self.CountDown)
self:UnSpawn("Goal1")
-- local quest = actorMgr:GetActor(q376Cfg.ActorAlias)
-- if quest ~= nil then
-- quest:FinishQuest(false, nil)
-- end
-- self:TransmitPlayer(3, sceneData:GetDummyPoint(3,"Q375RunStart").pos, sceneData:GetDummyPoint(3,"Q375RunStart").rot, self.AdvanceQuest)
self:AdvanceQuest()
-- actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos1, wendyData.bornDir1, true)
end
function Quest376:OnSubStart37604(quest)
print("37604 start:...")
-- self:ActionSafeCall(self.WendyDelay)
self:UnSpawn("Goal1")
q376Cfg.EscapeFlag = true
self:CountDownUITerminate()
self:UnCallFunc(self.CountDown)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true, false,1009)
self:TransmitPlayer(1009, sceneData:GetDummyPoint(1009,"Q376SoldierDes").pos, sceneData:GetDummyPoint(1009,"Q376SoldierDes").rot)
end
function Quest376:OnSubStart37605(quest)
print("37605 start:...")
self:RequestInteraction(dilucData.Diluc)
end
function Quest376:OnSubStart37606(quest)
print("37606 start:...")
-- globalActor:SpawnGadget(70900201, sceneData:GetDummyPoint(1009,"Q376Hide").pos, sceneData:GetDummyPoint(1009,"Q376Hide").rot , "Goal2", 1009)
end
function Quest376:OnSubStart37607(quest)
print("37607 start:...")
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true, false,1009)
actorMgr:CreateActorWithPos(soldier1Data.Soldier, soldier1Data.SoldierScript, soldier1Data.SoldierID, 0, soldier1Data.bornPos, soldier1Data.bornDir, true, false,1009)
actorMgr:CreateActorWithPos(soldier2Data.Soldier, soldier2Data.SoldierScript, soldier2Data.SoldierID, 0, soldier2Data.bornPos, soldier2Data.bornDir, true, false,1009)
self:RequestInteraction(dilucData.Diluc)
end
function Quest376:OnSubStart37608(quest)
print("37608 start:...")
end
--@endregion
--@region sub finish handlers
function Quest376:OnSubFinish37601(quest)
print("OnFinished 37601")
end
function Quest376:OnSubFinish37602(quest)
print("OnFinished 37602")
self:EscapeDestroy()
end
function Quest376:OnSubFinish37603(quest)
print("OnFinished 37603")
end
function Quest376:OnSubFinish37604(quest)
print("OnFinished 37604")
end
function Quest376:OnSubFinish37605(quest)
print("OnFinished 37605")
self:ActionSafeCall(
function(self)
local wendy = actorMgr:GetActor("Wendy")
if wendy ~= nil then
wendy:Destroy(false)
end
end
)
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:Destroy(false)
end
end
)
end
function Quest376:OnSubFinish37606(quest)
print("OnFinished 37606")
-- self:UnSpawn("Goal2")
end
function Quest376:OnSubFinish37607(quest)
print("OnFinished 37607")
self:ActionSafeCall(
function(self)
local soldier1 = actorMgr:GetActor(soldier1Data.Soldier)
if soldier1 ~= nil then
soldier1:ClearFollowTask()
soldier1:WalkToTask(soldier1Data.desPos,
function(soldier1, task)
soldier1:Destroy(false)
end
)
end
end
)
self:ActionSafeCall(
function(self)
local soldier2 = actorMgr:GetActor(soldier2Data.Soldier)
if soldier2 ~= nil then
soldier2:ClearFollowTask()
soldier2:WalkToTask(soldier1Data.desPos,
function(soldier2, task)
soldier2:Destroy(false)
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos2, wendyData.bornDir2, true, false,1009)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos2, dilucData.bornDir2, true, false,1009)
end
)
end
end
)
end
function Quest376:OnSubFinish37608(quest)
print("OnFinished 37608")
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
end
function Quest376:InvokeOnInteraction(param)
if param == 101 then
print("Now Stop Talking")
BubbleCtrl_NpcMengdeInsomniaStand[13] = -1
elseif param == 102 then
print("Now Start Talking")
BubbleCtrl_NpcMengdeInsomniaStand[13] = 1
end
end
--@endregion
function Quest376:Start()
end
function Quest376:OnDestroy()
end
return Quest376

View File

@@ -0,0 +1,183 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest377 = class("Quest377", questActorProxy)
Quest377.defaultAlias = "Quest377"
local q377Cfg = require('Quest/Client/Q377ClientConfig')
local wendyData = q377Cfg.WendyData
local dilucData = q377Cfg.DilucData
local qinData = q377Cfg.QinData
-- Generated
function Quest377:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["37701"] = self.OnSubStart37701
self.subStartHandlers["37702"] = self.OnSubStart37702
self.subStartHandlers["37703"] = self.OnSubStart37703
self.subStartHandlers["37704"] = self.OnSubStart37704
self.subStartHandlers["37705"] = self.OnSubStart37705
end
function Quest377:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["37701"] = self.OnSubFinish37701
self.subFinishHandlers["37702"] = self.OnSubFinish37702
self.subFinishHandlers["37703"] = self.OnSubFinish37703
self.subFinishHandlers["37704"] = self.OnSubFinish37704
self.subFinishHandlers["37705"] = self.OnSubFinish37705
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest377:OnSubStart37701(quest)
print("37701 start:...")
end
function Quest377:OnSubStart37702(quest)
print("37702 start ")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true, false,1009)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true, false,1009)
self:ActionSafeCall(
function(self)
local qin = actorMgr:GetActor(qinData.Qin)
if qin ~= nil then
qin:ClearFollowTask()
qin:WalkToTask(qinData.desPos,
function(qin, task)
qin:Destroy(false)
end
)
end
end
)
end
function Quest377:OnSubStart37703(quest)
print("37703 start:...")
self:ActionSafeCall(
function(self)
local qin = actorMgr:GetActor(qinData.Qin)
if qin ~= nil then
qin:ClearFollowTask()
qin:WalkToTask(qinData.desPos,
function(qin, task)
qin:Destroy(false)
end
)
end
end
)
end
function Quest377:OnSubStart37704(quest)
print("37704 start:...")
local q377Trigger = actorMgr:CreateActorWithPos("Q377Trigger", "Actor/Gadget/Q377Trigger", 70900002, 0, dilucData.bornPos, dilucData.bornDir, true, false,1009)
end
function Quest377:OnSubStart37705(quest)
print("37705 start:...")
end
--@endregion
--@region sub finish handlers
function Quest377:OnSubFinish37701(quest)
print("OnFinished 37701")
end
function Quest377:OnSubFinish37702(quest)
print("OnFinished 37702")
end
function Quest377:OnSubFinish37703(quest)
print("OnFinished 37703")
end
function Quest377:OnSubFinish37704(quest)
print("OnFinished 37704")
self:ShowBlackScreen(0.5, 1.0, 0.5,
function(self)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true, false,1009)
end, self.Interaction
)
-- self:CallDelay(3.5,self.Interaction)
local q377Trigger = actorMgr:GetActor("Q377Trigger")
if q377Trigger ~= nil then
q377Trigger:Destroy(false)
end
end
function Quest377:OnSubFinish37705(quest)
print("OnFinished 37705")
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
self:ActionSafeCall(
function(self)
local qin = actorMgr:GetActor(qinData.Qin)
if qin ~= nil then
qin:Destroy(false)
end
end
)
end
function Quest377:InvokeOnInteraction(param)
if param == 3 then
print("Now Qin Leave")
local qin = actorMgr:GetActor(qinData.Qin)
if qin ~= nil then
qin:ClearFollowTask()
qin:WalkToTask(qinData.desPos, Quest377.QinVanish)
end
elseif param == 101 then
print("Now Stop Talking")
BubbleCtrl_NpcMengdeInsomniaStand[13] = -1
elseif param == 102 then
print("Now Start Talking")
BubbleCtrl_NpcMengdeInsomniaStand[13] = 1
end
end
function Quest377:Interaction()
self:RequestInteraction(dilucData.Diluc)
end
function Quest377:QinVanish()
self:ShowBlackScreen(0.5, 1.0, 0.5,
function(self)
local qin = actorMgr:GetActor(qinData.Qin)
if qin ~= nil then
qin:SetVisible(false)
end
end
)
end
--@endregion
function Quest377:Start()
end
function Quest377:OnDestroy()
end
return Quest377

View File

@@ -0,0 +1,196 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest378 = class("Quest378", questActorProxy)
Quest378.defaultAlias = "Quest378"
local q378Cfg = require('Quest/Client/Q378ClientConfig')
local bbrData = q378Cfg.BarbaraData
local qinData = q378Cfg.QinData
-- Generated
function Quest378:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["37801"] = self.OnSubStart37801
self.subStartHandlers["37802"] = self.OnSubStart37802
self.subStartHandlers["37803"] = self.OnSubStart37803
self.subStartHandlers["37804"] = self.OnSubStart37804
self.subStartHandlers["37805"] = self.OnSubStart37805
end
function Quest378:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["37801"] = self.OnSubFinish37801
self.subFinishHandlers["37802"] = self.OnSubFinish37802
self.subFinishHandlers["37803"] = self.OnSubFinish37803
self.subFinishHandlers["37804"] = self.OnSubFinish37804
self.subFinishHandlers["37805"] = self.OnSubFinish37805
end
-- local param begin
Quest378.warningTask = nil
Quest378.stayWarningTask = nil
-- local param end
-- local method begin
--@region sub start handlers
function Quest378:OnSubStart37801(quest)
print("37801 start")
end
function Quest378:OnSubStart37802(quest)
print("37802 start")
actorMgr:CreateActorWithPos("Q378Trigger", "Actor/Gadget/Q378Trigger", 70900002, 0, qinData.bornPos1, qinData.bornDir1, true)
end
function Quest378:OnSubStart37803(quest)
print("37803 start ")
if self.warningTask ~= nil then
self.warningTask:FinishTask()
end
if self.stayWarningTask ~= nil then
self.stayWarningTask:FinishTask()
end
end
function Quest378:OnSubStart37804(quest)
actorMgr:CreateActorWithPos(bbrData.Barbara, bbrData.BarbaraScript, bbrData.BarbaraID, 0, bbrData.bornPos, bbrData.bornDir, true)
print("37804 start:...")
local qin = actorMgr:GetActor(qinData.Qin)
if qin ~= nil then
qin:NarratorTask(q378Cfg.NarratorFlow, q378Cfg.FollowLen, q378Cfg.FollowLen, nil)
-------------------------------------------------------------------------------------------------
qin:BeFollowTaskByRoutePoints(q378Cfg.RoutePoints, q378Cfg.FollowLen, q378Cfg.FailLen,
function(self, task)
if self.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(q378Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(true, nil)
print("37804 Follow UnFinish...")
end
self:StopPerformNarrator()
elseif self.BeFollowState == BeFollowState.SUCCESS then
self:Standby()
self:TurnTo(M.Euler2DirXZ(q378Cfg.QinData.bornDir2))
local quest = actorMgr:GetActor(q378Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
print("37804 Follow Success...")
end
end
end,
function(self, task)
self:Standby()
end,
nil, nil, nil,
function(self, task)
local quest = actorMgr:GetActor(q378Cfg.ActorAlias)
if quest ~= nil then
print("37804 Follow Failed...")
quest:FinishQuest(true, nil)
end
end
)
self.stayWarningTask = qin:WarningNarratorTask(0, q378Cfg.NarratorStayWarning, function(self)
local selfPos = self:GetPos()
local avatarPos = actorUtils.GetAvatarPos()
local currLen = M.Dist(selfPos, avatarPos)
return currLen > q378Cfg.FollowLen + 5 and currLen <= q378Cfg.FollowLen + 15 and qin:IsInIdle()
end, nil, "StoryWarning")
self.warningTask = qin:WarningNarratorTask(1, q378Cfg.NarratorWarning, function(self)
local selfPos = self:GetPos()
local avatarPos = actorUtils.GetAvatarPos()
local currLen = M.Dist(selfPos, avatarPos)
return currLen > q378Cfg.FollowLen + 15 and currLen <= q378Cfg.FollowLen + 1000
end, nil, "StoryWarning")
end
end
function Quest378:OnSubStart37805(quest)
print("37805 start:...")
end
--@endregion
--@region sub finish handlers
function Quest378:OnSubFinish37801(quest)
print("OnFinished 37801")
end
function Quest378:OnSubFinish37802(quest)
print("OnFinished 37802")
self:ShowBlackScreen(1.0, 0.5, 0.0, self.CreateQin, self.Interaction)
local q378Trigger = actorMgr:GetActor("Q378Trigger")
if q378Trigger ~= nil then
q378Trigger:Destroy(false)
end
end
function Quest378:OnSubFinish37803(quest)
print("OnFinished 37803")
end
function Quest378:OnSubFinish37804(quest)
print("OnFinished 37804")
if self.warningTask ~= nil then
self.warningTask:FinishTask()
end
if self.stayWarningTask ~= nil then
self.stayWarningTask:FinishTask()
end
end
function Quest378:OnSubFinish37805(quest)
print("OnFinished 37805")
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(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 bbr = actorMgr:GetActor(bbrData.Barbara)
-- if bbr ~= nil then
-- bbr:Destroy(false)
-- end
-- end
-- )
end
function Quest378:CreateQin()
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos1, qinData.bornDir1, true)
print("Qin Born")
end
function Quest378:Interaction()
self:RequestInteraction(qinData.Qin)
print("Black Callback NOW")
end
--@endregion
function Quest378:Start()
end
function Quest378:OnDestroy()
end
return Quest378

View File

@@ -0,0 +1,151 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest379 = class("Quest379", questActorProxy)
Quest379.defaultAlias = "Quest379"
local q379Cfg = require('Quest/Client/Q379ClientConfig')
local wendyData = q379Cfg.WendyData
local dilucData = q379Cfg.DilucData
local qinData = q379Cfg.QinData
-- Generated
function Quest379:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["37901"] = self.OnSubStart37901
self.subStartHandlers["37902"] = self.OnSubStart37902
self.subStartHandlers["37903"] = self.OnSubStart37903
self.subStartHandlers["37904"] = self.OnSubStart37904
end
function Quest379:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["37901"] = self.OnSubFinish37901
self.subFinishHandlers["37902"] = self.OnSubFinish37902
self.subFinishHandlers["37903"] = self.OnSubFinish37903
self.subFinishHandlers["37904"] = self.OnSubFinish37904
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest379:OnSubStart37901(quest)
print("37901 start ")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true, false,1009)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true, false,1009)
end
function Quest379:OnSubStart37902(quest)
print("37902 start:...")
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true, false,1009)
self:RequestInteraction(wendyData.Wendy)
end
function Quest379:OnSubStart37903(quest)
print("37903 start:...")
-- local quest = actorMgr:GetActor(q379Cfg.ActorAlias)
-- if quest ~= nil then
-- quest:FinishQuest(false, nil)
-- end
self:RequestInteraction(wendyData.Wendy)
end
function Quest379:OnSubStart37904(quest)
print("37904 start:...")
self:RequestInteraction(qinData.Qin)
end
function Quest379:InvokeOnInteraction(param)
if param == 3 then
print("Test!!!!!!!!!!!!!!!!")
self.uActor:AvatarPaimonAppear()
elseif param == 4 then
self.uActor:AvatarPaimonDisappear(nil, true)
elseif param == 101 then
print("Now Stop Talking")
BubbleCtrl_NpcMengdeInsomniaStand[13] = -1
elseif param == 102 then
print("Now Start Talking")
BubbleCtrl_NpcMengdeInsomniaStand[13] = 1
end
end
--@endregion
--@region sub finish handlers
function Quest379:OnSubFinish37901(quest)
print("OnFinished 37901")
end
function Quest379:OnSubFinish37902(quest)
print("OnFinished 37902")
end
function Quest379:OnSubFinish37903(quest)
print("OnFinished 37903")
end
function Quest379:OnSubFinish37904(quest)
print("OnFinished 37904")
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
self:ShowBlackScreen(0.5, 1.5, 0.5, self.DestroyNPC, self.TellStory)
end
function Quest379:DestroyNPC(quest)
self:ActionSafeCall(
function(self)
local wendy = actorMgr:GetActor(wendyData.Wendy)
if wendy ~= nil then
wendy: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 Quest379:TellStory(quest)
self:CallDelay(1.5, self.StartStory)
end
function Quest379:StartStory(quest)
self:NarratorOnlyTask(q379Cfg.StoryNarrator, nil, "Story")
end
--@endregion
function Quest379:Start()
end
function Quest379:OnDestroy()
end
return Quest379

View File

@@ -0,0 +1,146 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest380 = class("Quest380", questActorProxy)
Quest380.defaultAlias = "Quest380"
local q380Cfg = require('Quest/Client/Q380ClientConfig')
local subIDs = q380Cfg.SubIDs
local qinData = q380Cfg.QinData
local dilucData = q380Cfg.DilucData
local paimonData = q380Cfg.PaimonData
local treasureData = q380Cfg.TreasureData
-- Generated
function Quest380:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["38001"] = self.OnSubStart38001
self.subStartHandlers["38002"] = self.OnSubStart38002
self.subStartHandlers["38003"] = self.OnSubStart38003
self.subStartHandlers["38004"] = self.OnSubStart38004
end
function Quest380:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["38001"] = self.OnSubFinish38001
self.subFinishHandlers["38002"] = self.OnSubFinish38002
self.subFinishHandlers["38003"] = self.OnSubFinish38003
self.subFinishHandlers["38004"] = self.OnSubFinish38004
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest380:OnSubStart38001(quest)
print("38001 start:...")
-- local quest = actorMgr:GetActor(q380Cfg.ActorAlias)
-- if quest ~= nil then
-- quest:FinishQuest(false, nil)
-- end
actorMgr:CreateActorWithPos("Q380Trigger", "Actor/Gadget/Q380TriggerArea", 70900002, 0, sceneData:GetDummyPoint(3,"DUMMY_POS 3003390").pos, sceneData:GetDummyPoint(3,"DUMMY_POS 3003390").rot, true, false)
end
function Quest380:OnSubStart38002(quest)
print("38002 start:...")
-- TODO: Do sth on sub quest 38002 start
end
function Quest380:OnSubStart38003(quest)
print("38003 start:...")
-- TODO: Do sth on sub quest 38002 start
self:SpawnChest(treasureData.GadgetID, treasureData.bornPos, treasureData.bornDir, "Chest380", 3, treasureData.DropId ,treasureData.ShowCutscene)
end
function Quest380:OnSubStart38004(quest)
print("38004 start:...")
-- TODO: Do sth on sub quest 38002 start
self:CallDelay(1, self.EnterDialog)
end
function Quest380:CreateNPC()
actorMgr:CreateActorWithPos(paimonData.Paimon, paimonData.PaimonScript, paimonData.PaimonID, 0, paimonData.bornPos, paimonData.bornDir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
end
function Quest380:StartDialog()
self:RequestInteraction(qinData.Qin)
end
function Quest380:EnterDialog()
self:ShowBlackScreen(0.5, 1.0, 0.5, self.CreateNPC, self.StartDialog)
end
--@endregion
--@region sub finish handlers
function Quest380:OnSubFinish38001(quest)
print("OnFinished 38001")
end
function Quest380:OnSubFinish38002(quest)
print("OnFinished 38002")
end
function Quest380:OnSubFinish38003(quest)
print("OnFinished 38002")
end
function Quest380:OnSubFinish38004(quest)
print("OnFinished 38004")
self:ActionSafeCall(self.ExitDialog)
end
function Quest380: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 Quest380:TellStory(quest)
self:CallDelay(1.5, self.StartStory)
end
function Quest380:StartStory(quest)
self:NarratorOnlyTask(q380Cfg.StoryNarrator, nil, "Story")
end
function Quest380:ExitDialog()
self:ShowBlackScreen(0.5, 1.0, 0.5, self.DestroyNPC, self.TellStory)
end
--@endregion
function Quest380:Start()
end
function Quest380:OnDestroy()
end
return Quest380

View File

@@ -0,0 +1,154 @@
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

View File

@@ -0,0 +1,85 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest382 = class("Quest382", questActorProxy)
Quest382.defaultAlias = "Quest382"
local q382Cfg = require('Quest/Client/Q382ClientConfig')
local subIDs = q382Cfg.SubIDs
-- Generated
function Quest382:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["38201"] = self.OnSubStart38201
self.subStartHandlers["38202"] = self.OnSubStart38202
self.subStartHandlers["38203"] = self.OnSubStart38203
end
function Quest382:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["38201"] = self.OnSubFinish38201
self.subFinishHandlers["38202"] = self.OnSubFinish38202
self.subFinishHandlers["38203"] = self.OnSubFinish38203
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest382:OnSubStart38201(quest)
print("38201 start:...")
-- local quest = actorMgr:GetActor(q382Cfg.ActorAlias)
-- if quest ~= nil then
-- quest:FinishQuest(false, nil)
-- end
actorMgr:CreateActorWithPos("Q382Trigger", "Actor/Gadget/Q382Trigger", 70900002, 0, sceneData:GetDummyPoint(3,"Q382DragonTill").pos, sceneData:GetDummyPoint(3,"Q382DragonTill").rot, true, false)
end
function Quest382:OnSubStart38202(quest)
print("38202 start:...")
self:CallDelay(20,self.DestroyMark)
end
function Quest382:OnSubStart38203(quest)
print("38203 start:...")
-- TODO: Do sth on sub quest 38202 start
local quest = actorMgr:GetActor(q382Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
--@endregion
--@region sub finish handlers
function Quest382:OnSubFinish38201(quest)
print("OnFinished 38201")
self:NarratorOnlyTask(q382Cfg.PaimonNarrator, nil, "Story")
self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q382DragonTillChest").pos, 4.5, 3, true)
-- globalActor:SpawnGadget(70900201, sceneData:GetDummyPoint(3,"Q382DragonTillChest").pos, sceneData:GetDummyPoint(3,"Q382DragonTillChest").rot, "Tearchest", 3)
end
function Quest382:OnSubFinish38202(quest)
print("OnFinished 38202")
self:UnSpawn("Tearchest")
-- self:NarratorOnlyTask(q382Cfg.StoryNarrator, nil, "Story")
end
function Quest382:DestroyMark()
self:UnSpawn("Tearchest")
end
function Quest382:OnSubFinish38203(quest)
print("OnFinished 38202")
end
--@endregion
function Quest382:Start()
end
function Quest382:OnDestroy()
end
return Quest382

View File

@@ -0,0 +1,135 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest383 = class("Quest383", questActorProxy)
Quest383.defaultAlias = "Quest383"
local q383Cfg = require('Quest/Client/Q383ClientConfig')
local wendyData = q383Cfg.WendyData
local dilucData = q383Cfg.DilucData
local qinData = q383Cfg.QinData
-- Generated
function Quest383:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["38301"] = self.OnSubStart38301
self.subStartHandlers["38302"] = self.OnSubStart38302
self.subStartHandlers["38303"] = self.OnSubStart38303
self.subStartHandlers["38304"] = self.OnSubStart38304
end
function Quest383:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["38301"] = self.OnSubFinish38301
self.subFinishHandlers["38302"] = self.OnSubFinish38302
self.subFinishHandlers["38303"] = self.OnSubFinish38303
self.subFinishHandlers["38304"] = self.OnSubFinish38304
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest383:OnSubStart38301(quest)
print("38301 start ")
end
function Quest383:OnSubStart38302(quest)
print("38302 start:...")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
end
function Quest383:OnSubStart38303(quest)
print("38303 start:...")
self:RequestInteraction(wendyData.Wendy)
end
function Quest383:OnSubStart38304(quest)
print("38304 start:...")
self:RequestInteraction(qinData.Qin)
end
function Quest383:InvokeOnInteraction(param)
if param == 3 then
print("Test!!!!!!!!!!!!!!!!")
self.uActor:AvatarPaimonAppear()
elseif param == 4 then
self.uActor:AvatarPaimonDisappear(nil, true)
end
end
--@endregion
--@region sub finish handlers
function Quest383:OnSubFinish38301(quest)
print("OnFinished 38301")
end
function Quest383:OnSubFinish38302(quest)
print("OnFinished 38302")
end
function Quest383:OnSubFinish38303(quest)
print("OnFinished 38303")
end
function Quest383:OnSubFinish38304(quest)
print("OnFinished 38304")
-- self:ActionSafeCall(
-- function(self)
-- local wendy = actorMgr:GetActor(wendyData.Wendy)
-- if wendy ~= nil then
-- wendy:Destroy(false)
-- end
-- -- actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos2, wendyData.bornDir2, true)
-- end
-- )
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
-- self:ActionSafeCall(
-- function(self)
-- local diluc = actorMgr:GetActor(dilucData.Diluc)
-- if diluc ~= nil then
-- diluc:Destroy(false)
-- end
-- -- actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos2, dilucData.bornDir2, true)
-- end
-- )
-- self:ActionSafeCall(
-- function(self)
-- local qin = actorMgr:GetActor(qinData.Qin)
-- if qin ~= nil then
-- qin:Destroy(false)
-- end
-- -- actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos2, qinData.bornDir2, true)
-- end
-- )
end
--@endregion
function Quest383:Start()
end
function Quest383:OnDestroy()
end
return Quest383

View File

@@ -0,0 +1,310 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest384 = class("Quest384", questActorProxy)
Quest384.defaultAlias = "Quest384"
local q384Cfg = require('Quest/Client/Q384ClientConfig')
local wendyData = q384Cfg.WendyData
local dilucData = q384Cfg.DilucData
local qinData = q384Cfg.QinData
-- Generated
function Quest384:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["38401"] = self.OnSubStart38401
self.subStartHandlers["38402"] = self.OnSubStart38402
self.subStartHandlers["38403"] = self.OnSubStart38403
self.subStartHandlers["38404"] = self.OnSubStart38404
self.subStartHandlers["38405"] = self.OnSubStart38405
self.subStartHandlers["38406"] = self.OnSubStart38406
self.subStartHandlers["38407"] = self.OnSubStart38407
self.subStartHandlers["38408"] = self.OnSubStart38408
self.subStartHandlers["38409"] = self.OnSubStart38409
self.subStartHandlers["38410"] = self.OnSubStart38410
end
function Quest384:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["38401"] = self.OnSubFinish38401
self.subFinishHandlers["38402"] = self.OnSubFinish38402
self.subFinishHandlers["38403"] = self.OnSubFinish38403
self.subFinishHandlers["38404"] = self.OnSubFinish38404
self.subFinishHandlers["38405"] = self.OnSubFinish38405
self.subFinishHandlers["38406"] = self.OnSubFinish38406
self.subFinishHandlers["38407"] = self.OnSubFinish38407
self.subFinishHandlers["38408"] = self.OnSubFinish38408
self.subFinishHandlers["38409"] = self.OnSubFinish38409
self.subFinishHandlers["38410"] = self.OnSubFinish38410
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest384:OnSubStart38401(quest)
print("38401 start ")
end
function Quest384:OnSubStart38402(quest)
print("38402 start ")
actorMgr:CreateActorWithPos("Q384TriggerSP", "Actor/Gadget/Q384TriggerSP", 70900002, 0, sceneData:GetDummyPoint(3,"Q384Trigger").pos, sceneData:GetDummyPoint(3,"Q384Trigger").rot, true, false)
end
function Quest384:OnSubStart38403(quest)
print("38403 start:...")
-- actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos1, wendyData.bornDir1, true)
-- actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos1, dilucData.bornDir1, true)
-- actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos1, qinData.bornDir1, true)
end
function Quest384:OnSubStart38404(quest)
print("38404 start:...")
local quest = actorMgr:GetActor(q384Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
print("CS finish")
end
end
function Quest384:Play384Cutscene(quest)
self:PlayCutscene(q384Cfg.ZhaiXingYaCfg, self.FinishCS)
end
function Quest384:OnSubStart38405(quest)
print("38405 start:...")
self:InteractionWendy()
end
function Quest384:OnSubStart38406(quest)
print("38406 start:...")
end
function Quest384:OnSubStart38407(quest)
print("38407 start: Trans")
self:ActionSafeCall(self.Trans)
end
function Quest384:OnSubStart38408(quest)
print("38408 start: Update monster")
-- local quest = actorMgr:GetActor(q384Cfg.ActorAlias)
-- if quest ~= nil then
-- quest:FinishQuest(false, nil)
-- end
actorMgr:CreateActorWithPos("Q384Trigger", "Actor/Gadget/Q384Trigger", 70900002, 0, sceneData:GetDummyPoint(3,"Q384WizardTrigger").pos, sceneData:GetDummyPoint(3,"Q384WizardTrigger").rot, true, false)
end
function Quest384:OnSubStart38409(quest)
print("38409 start:...")
self:CallDelay(1,self.BeginNarrator)
-- actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos2, wendyData.bornDir2, true)
-- actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos2, dilucData.bornDir2, true)
-- actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos2, qinData.bornDir2, true)
end
function Quest384:OnSubStart38410(quest)
print("38410 start:...")
self:ShowBlackScreen(0.5, 1.0, 0.5, self.CreateNPC, self.Interaction)
end
--@endregion
--@region sub finish handlers
function Quest384:OnSubFinish38401(quest)
print("OnFinished 38401")
end
function Quest384:OnSubFinish38402(quest)
print("OnFinished 38402")
self:ShowBlackScreen(0.5, 1.0, 0.5,
function(self)
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos1, wendyData.bornDir1, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos1, dilucData.bornDir1, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos1, qinData.bornDir1, true)
end, self.InteractionWendy
)
local q384Trigger = actorMgr:GetActor("Q384TriggerSP")
if q384Trigger ~= nil then
q384Trigger:Destroy(false)
end
end
function Quest384:OnSubFinish38403(quest)
print("OnFinished 38403")
end
function Quest384:OnSubFinish38404(quest)
print("OnFinished 38404")
end
function Quest384:OnSubFinish38405(quest)
print("OnFinished 38405")
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
self:ActionSafeCall(
function(self)
local abyss = actorMgr:GetActor("AbyssWater")
if abyss ~= nil then
abyss:DestroyWithDisappear(false)
end
end
)
end
function Quest384:OnSubFinish38406(quest)
print("OnFinished 38406")
-- self:ActionSafeCall(
-- function(self)
-- local wendy = actorMgr:GetActor(wendyData.Wendy)
-- if wendy ~= nil then
-- wendy:Destroy(false)
-- end
-- actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos2, wendyData.bornDir2, true)
-- end
-- )
end
function Quest384:OnSubFinish38407(quest)
print("OnFinished 38407")
end
function Quest384:OnSubFinish38408(quest)
print("OnFinished 38408")
end
function Quest384:OnSubFinish38409(quest)
print("OnFinished 38409")
end
function Quest384:OnSubFinish38410(quest)
print("OnFinished 38410")
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
end
function Quest384:Interaction()
self:RequestInteraction(dilucData.Diluc)
print("Before CS Talk")
end
function Quest384:InteractionWendy()
self:RequestInteraction(wendyData.Wendy)
print("After CS Talk")
end
function Quest384:Trans()
self:TransmitPlayer(3, sceneData:GetDummyPoint(3,"Q384Wizard").pos, sceneData:GetDummyPoint(3,"Q384Wizard").rot, self.DeleteNPC)
end
function Quest384:FinishCS()
local quest = actorMgr:GetActor(q384Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
print("CS finish")
end
end
function Quest384:CreateNPC()
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos2, wendyData.bornDir2, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos2, dilucData.bornDir2, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos2, qinData.bornDir2, true)
end
function Quest384:DeleteNPC()
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
)
self:ActionSafeCall(
function(self)
local wendy = actorMgr:GetActor(wendyData.Wendy)
if wendy ~= nil then
wendy:Destroy(false)
end
end
)
local quest = actorMgr:GetActor(q384Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
function Quest384:BeginNarrator()
self:NarratorOnlyTask(q384Cfg.FightNarrator, nil, "Story")
self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q384WizardMark").pos, 3.5, 3, true)
end
function Quest384:InvokeOnInteraction(param)
if param == 4 then
print("Now Wizard Leave")
self:PlayBSEffect()
self:CallDelay(0.5,self.PlayEffect)
self:CallDelay(2,self.PlayASEffect)
self:CallDelay(2.1,self.AbyssHide)
end
end
function Quest384:PlayBSEffect()
self:SpawnGadget(70300060, sceneData:GetDummyPoint(3,"Q38404CasterEffect").pos, sceneData:GetDummyPoint(3,"Q38404CasterEffect").rot, "BS")
end
function Quest384:PlayEffect()
self:SpawnGadget(70300061, sceneData:GetDummyPoint(3,"Q38404Cater").pos, sceneData:GetDummyPoint(3,"Q38404Cater").rot, "Self")
end
function Quest384:PlayASEffect()
self:SpawnGadget(70300062, sceneData:GetDummyPoint(3,"Q38404Cater").pos, sceneData:GetDummyPoint(3,"Q38404Cater").rot, "AS")
end
function Quest384:AbyssHide()
local abyss = actorMgr:GetActor("AbyssWater")
if abyss ~= nil then
abyss:SetVisible(false)
end
end
--@endregion
function Quest384:Start()
end
function Quest384:OnDestroy()
end
return Quest384

View File

@@ -0,0 +1,46 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest385 = class("Quest385", questActorProxy)
Quest385.defaultAlias = "Quest385"
local q385Cfg = require('Quest/Client/Q385ClientConfig')
-- Generated
function Quest385:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["38501"] = self.OnSubStart38501
end
function Quest385:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["38501"] = self.OnSubFinish38501
end
-- local param begin
-- local param end
---sub start & finish 内调用的函数
-- end
-- local method begin
--@region sub start handlers
function Quest385:OnSubStart38501(quest)
print("38501 start ")
end
--@endregion
--@region sub finish handlers
function Quest385:OnSubFinish38501(quest)
print("OnFinished 38501")
end
--@endregion
function Quest385:Start()
end
function Quest385:OnDestroy()
end
return Quest385

View File

@@ -0,0 +1,308 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest388 = class("Quest388", questActorProxy)
Quest388.defaultAlias = "Quest388"
local q388Cfg = require('Quest/Client/Q388ClientConfig')
local wendyData = q388Cfg.WendyData
local qinData = q388Cfg.QinData
local dilucData = q388Cfg.DilucData
-- Generated
function Quest388:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["38801"] = self.OnSubStart38801
self.subStartHandlers["38802"] = self.OnSubStart38802
self.subStartHandlers["38803"] = self.OnSubStart38803
self.subStartHandlers["38804"] = self.OnSubStart38804
self.subStartHandlers["38805"] = self.OnSubStart38805
self.subStartHandlers["38806"] = self.OnSubStart38806
end
function Quest388:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["38801"] = self.OnSubFinish38801
self.subFinishHandlers["38802"] = self.OnSubFinish38802
self.subFinishHandlers["38803"] = self.OnSubFinish38803
self.subFinishHandlers["38804"] = self.OnSubFinish38804
self.subFinishHandlers["38805"] = self.OnSubFinish38805
self.subFinishHandlers["38806"] = self.OnSubFinish38806
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest388:Narrator38802()
self:NarratorOnlyTask(self.clientData.NarratorData.Story1,nil,"Story")
end
function Quest388:NPCdis38802()
local qin = actorMgr:GetActor(qinData.Qin)
local diluc = actorMgr:GetActor(dilucData.Diluc)
local wendy = actorMgr:GetActor(wendyData.Wendy)
local paimon = actorMgr:GetActor("Paimon")
if qin ~= nil then
qin:Destroy(false)
end
if diluc ~= nil then
diluc:Destroy(false)
end
if wendy ~= nil then
wendy:Destroy(false)
end
if paimon ~= nil then
paimon:Destroy(false)
end
end
function Quest388:OnSubStart38801(quest)
print("38801 start:...")
end
function Quest388:OnSubStart38802(quest)
print("38802 start: BlackScreen & Destroy NPC & Narrator")
self:ActionSafeCall(
function(self)
self:TransmitPlayer(3, sceneData:GetDummyPoint(3,"Q38802Player").pos, sceneData:GetDummyPoint(3,"Q38802Player").rot, self.Narrator38802,self.NPCdis38802)
end
)
end
function Quest388:OnSubStart38803(quest)
print("38803 start:...")
self:TransmitPlayer(3, sceneData:GetDummyPoint(3,"Q38802Player").pos, sceneData:GetDummyPoint(3,"Q38802Player").rot, nil,
function (self)
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.born2Pos, wendyData.born2Dir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.born2Pos, dilucData.born2Dir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.born2Pos, qinData.born2Dir, true)
self:CallDelay(1,
function (slef)
self:RequestInteraction(wendyData.Wendy)
end
)
end
)
end
function Quest388:OnSubStart38804(quest)
print("38804 start:...")
self:ActionSafeCall(
function (slef)
self:RequestInteraction(wendyData.Wendy)
end
)
end
function Quest388:OnSubStart38805(quest)
print("38804 start:...")
local quest = actorMgr:GetActor(q388Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
function Quest388:OnSubStart38806(quest)
print("38806 start:...")
end
--@endregion
--@region sub finish handlers
function Quest388:OnSubFinish38801(quest)
print("38801 finish:...")
end
function Quest388:OnSubFinish38802(quest)
print("38802 finish: CreatNPC")
-- self:TransmitPlayer(3, sceneData:GetDummyPoint(3,"Q38802Player").pos, sceneData:GetDummyPoint(3,"Q38802Player").rot, nil,
-- function (self)
-- actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.born2Pos, wendyData.born2Dir, true)
-- actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.born2Pos, dilucData.born2Dir, true)
-- actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.born2Pos, qinData.born2Dir, true)
-- self:CallDelay(1,
-- function (slef)
-- self:RequestInteraction(wendyData.Wendy)
-- end
-- )
-- end
-- )
end
function Quest388:OnSubFinish38803(quest)
print("OnFinished 38803")
end
function Quest388:OnSubFinish38804(quest)
print("OnFinished 38804")
self:ActionSafeCall(
function (self)
local paimon = actorMgr:GetActor("Paimon")
-- local wendy = actorMgr:GetActor(wendyData.Wendy)
-- local diluc = actorMgr:GetActor(dilucData.Diluc)
-- local qin = actorMgr:GetActor(qinData.Qin)
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
-- if wendy ~= nil then
-- wendy:ClearFollowTask()
-- wendy:RunToTask(wendyData.dis1Pos,
-- function(wendy, task)
-- wendy:Destroy(false)
-- end
-- )
-- end
-- if diluc ~= nil then
-- diluc:ClearFollowTask()
-- diluc:RunToTask(dilucData.dis1Pos,
-- function(diluc, task)
-- diluc:Destroy(false)
-- end
-- )
-- end
-- if qin ~= nil then
-- qin:ClearFollowTask()
-- qin:RunToTask(qinData.dis1Pos,
-- function(qin, task)
-- qin:Destroy(false)
-- end
-- )
-- end
end
)
-- self:ActionSafeCall(
-- self:ShowBlackScreen(0.5, 1, 0.5,
-- function(self)
-- local wendy = actorMgr:GetActor(wendyData.Wendy)
-- local diluc = actorMgr:GetActor(dilucData.Diluc)
-- local qin = actorMgr:GetActor(qinData.Qin)
-- local paimon = actorMgr:GetActor("Paimon")
-- if wendy ~= nil then
-- wendy:Destroy(false)
-- end
-- if diluc ~= nil then
-- diluc:Destroy(false)
-- end
-- if qin ~= nil then
-- qin:Destroy(false)
-- end
-- if paimon ~= nil then
-- paimon:Destroy(false)
-- end
-- end
-- )
-- )
end
function Quest388:OnSubFinish38805(quest)
print("OnFinished 38805")
end
function Quest388:OnSubFinish38806(quest)
print("OnFinished 38806:Creat NPC")
self:TransmitPlayer(3, sceneData:GetDummyPoint(3,"Q38804Player").pos, sceneData:GetDummyPoint(3,"Q38804Player").rot, nil,
function (self)
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.born2Pos, wendyData.born2Dir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.born2Pos, dilucData.born2Dir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.born2Pos, qinData.born2Dir, true)
self:CallDelay(1,
function (slef)
self:RequestInteraction(wendyData.Wendy)
end
)
end
)
end
function Quest388:InvokeOnInteraction(param)
if param == 1 then
print("Talk38801:Finishi Quest 38801")
local quest = actorMgr:GetActor(q388Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
elseif param == 2 then
print("Talk38803:Finishi Quest 38803")
local quest = actorMgr:GetActor(q388Cfg.ActorAlias)
if quest ~= nil then
self:CallDelay(5.5,
function (self)
quest:FinishQuest(false, nil)
end
)
end
elseif param == 3 then
print("Talk38803 Finish2:NPC walk & dis")
local quest = actorMgr:GetActor(q388Cfg.ActorAlias)
local wendy = actorMgr:GetActor(wendyData.Wendy)
local diluc = actorMgr:GetActor(dilucData.Diluc)
local qin = actorMgr:GetActor(qinData.Qin)
if qin ~= nil then
qin:WalkTo(qinData.dis1Pos)
self:CallDelay(2.0,
function (self)
qin:Destroy(false)
end
)
end
if wendy ~= nil then
wendy:WalkTo(wendyData.dis1Pos)
self:CallDelay(2.0,
function (self)
wendy:Destroy(false)
end
)
end
if diluc ~= nil then
diluc:WalkTo(dilucData.dis1Pos)
self:CallDelay(2.0,
function (self)
diluc:Destroy(false)
end
)
end
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
end
--@endregion
function Quest388:Start()
end
function Quest388:OnDestroy()
end
return Quest388

View File

@@ -0,0 +1,174 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest389 = class("Quest389", questActorProxy)
Quest389.defaultAlias = "Quest389"
local q389Cfg = require('Quest/Client/Q389ClientConfig')
local wendyData = q389Cfg.WendyData
local qinData = q389Cfg.QinData
local dilucData = q389Cfg.DilucData
-- Generated
function Quest389:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["38901"] = self.OnSubStart38901
self.subStartHandlers["38902"] = self.OnSubStart38902
self.subStartHandlers["38903"] = self.OnSubStart38903
self.subStartHandlers["38904"] = self.OnSubStart38904
self.subStartHandlers["38905"] = self.OnSubStart38905
self.subStartHandlers["38906"] = self.OnSubStart38906
end
function Quest389:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["38901"] = self.OnSubFinish38901
self.subFinishHandlers["38902"] = self.OnSubFinish38902
self.subFinishHandlers["38903"] = self.OnSubFinish38903
self.subFinishHandlers["38904"] = self.OnSubFinish38904
self.subFinishHandlers["38905"] = self.OnSubFinish38905
self.subFinishHandlers["38906"] = self.OnSubFinish38906
end
-- local param begin
-- local param end
--@region sub start & finish 内调用的函数
function Quest389:DestroyNPC()
self:ShowBlackScreen(0.5, 1, 0.5,
function(self)
local wendy = actorMgr:GetActor(wendyData.Wendy)
local diluc = actorMgr:GetActor(dilucData.Diluc)
local qin = actorMgr:GetActor(qinData.Qin)
local paimon = actorMgr:GetActor("Paimon")
if wendy ~= nil then
wendy:Destroy(false)
end
if diluc ~= nil then
diluc:Destroy(false)
end
if qin ~= nil then
qin:Destroy(false)
end
if paimon ~= nil then
paimon:Destroy(false)
end
end
)
end
--@endregion
-- local method begin
--@region sub start handlers
function Quest389:OnSubStart38901(quest)
print("38901 start:...")
end
function Quest389:OnSubStart38902(quest)
print("38902 start:...")
end
function Quest389:OnSubStart38903(quest)
print("38903 start:...")
end
function Quest389:OnSubStart38904(quest)
print("38904 start:...")
end
function Quest389:OnSubStart38905(quest)
print("38905 start:...")
end
function Quest389:OnSubStart38906(quest)
print("38906 start:...")
end
--@endregion
--@region sub finish handlers
function Quest389:OnSubFinish38901(quest)
print("38901 finish:...")
self:NarratorOnlyTask(q389Cfg.NarratorData.Story1)
self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q389Target1").pos, 0, 3, true)
end
function Quest389:OnSubFinish38902(quest)
print("38902 finish:...")
self:TransmitPlayer(3, wendyData.bornPos1, wendyData.bornDir1, nil,
function (self)
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos1, wendyData.bornDir1, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos1, dilucData.bornDir1, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos1, qinData.bornDir1, true)
self:CallDelay(0.5,
function (slef)
self:RequestInteraction(wendyData.Wendy)
end
)
end
)
end
function Quest389:OnSubFinish38903(quest)
print("38903 finish:...")
self:ActionSafeCall(self.DestroyNPC)
self:ActionSafeCall(
function (self)
self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q389Target3").pos, 0, 0.1, true)
self:CallDelay(5,
function (self)
self:NarratorOnlyTask(q389Cfg.NarratorData.Story2)
end
)
end
)
-- globalActor:SpawnGadget(70900201, wendyData.bornPos2, wendyData.bornDir2, "Q38903Target", 3)
end
function Quest389:OnSubFinish38904(quest)
print("38904 finish:...")
self:NarratorOnlyTask(q389Cfg.NarratorData.Story3)
self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q389Target2").pos, 0, 2, true)
end
function Quest389:OnSubFinish38905(quest)
print("38905 finish:...")
-- self:UnSpawn("Q38903Target")
self:TransmitPlayer(3, wendyData.bornPos2, wendyData.bornDir2, nil,
function (self)
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos2, wendyData.bornDir2, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos2, dilucData.bornDir2, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos2, qinData.bornDir2, true)
self:CallDelay(0.5,
function (slef)
self:RequestInteraction(wendyData.Wendy)
end
)
end
)
end
function Quest389:OnSubFinish38906(quest)
print("38906 finish:...")
self:ActionSafeCall(self.DestroyNPC)
end
--@endregion
function Quest389:Start()
end
function Quest389:OnDestroy()
end
return Quest389

View File

@@ -0,0 +1,379 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest390 = class("Quest390", questActorProxy)
Quest390.defaultAlias = "Quest390"
local q390Cfg = require('Quest/Client/Q390ClientConfig')
local wendyData = q390Cfg.WendyData
local dilucData = q390Cfg.DilucData
local qinData = q390Cfg.QinData
local paimonData = q390Cfg.PaimonData
local organData = q390Cfg.OrganData
--@region Generated
function Quest390:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["39001"] = self.OnSubStart39001
self.subStartHandlers["39002"] = self.OnSubStart39002
self.subStartHandlers["39003"] = self.OnSubStart39003
self.subStartHandlers["39004"] = self.OnSubStart39004
self.subStartHandlers["39005"] = self.OnSubStart39005
self.subStartHandlers["39006"] = self.OnSubStart39006
self.subStartHandlers["39007"] = self.OnSubStart39007
self.subStartHandlers["39008"] = self.OnSubStart39008
self.subStartHandlers["39009"] = self.OnSubStart39009
self.subStartHandlers["39010"] = self.OnSubStart39010
self.subStartHandlers["39011"] = self.OnSubStart39011
end
function Quest390:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["39001"] = self.OnSubFinish39001
self.subFinishHandlers["39002"] = self.OnSubFinish39002
self.subFinishHandlers["39003"] = self.OnSubFinish39003
self.subFinishHandlers["39004"] = self.OnSubFinish39004
self.subFinishHandlers["39005"] = self.OnSubFinish39005
self.subFinishHandlers["39006"] = self.OnSubFinish39006
self.subFinishHandlers["39007"] = self.OnSubFinish39007
self.subFinishHandlers["39008"] = self.OnSubFinish39008
self.subFinishHandlers["39009"] = self.OnSubFinish39009
self.subFinishHandlers["39010"] = self.OnSubFinish39010
self.subFinishHandlers["39011"] = self.OnSubFinish39011
end
--@endregion
-- local param begin
-- local param end
--@region sub start & finish 内调用的函数
-- 发现机关的开车
-- 已发现机关光束的数量(任务完成数量),进行不同的开车对话
function Quest390:FindOrganNarrator()
local firstorganstate = self:GetSubQuestState(39001)
local secondorganstate = self:GetSubQuestState(39101)
local thirdorganstate = self:GetSubQuestState(39201)
local organstate = firstorganstate + secondorganstate + thirdorganstate
print(firstorganstate.."|"..secondorganstate.."|"..thirdorganstate)
if organstate == 7 then
self:NarratorOnlyTask(q390Cfg.NarratorData.FindOrgan1)
self:EnterSceneLookCamera(organData.bornPos, 0, 3, true)
-- elseif organstate == 8 then
-- self:NarratorOnlyTask(q390Cfg.NarratorData.FindOrgan2)
-- elseif organstate == 9 then
-- self:NarratorOnlyTask(q390Cfg.NarratorData.FindOrgan3)
end
end
-- 第一次发现机关的talk
-- 根据玩家找到的机关数量不同进行不同的talk
-- 通过与不同npc对话实现
-- 没找到机关:与温迪对话
-- 找到一个机关:与琴对话
-- 找到两个机关:与迪卢克对话
function Quest390:FindOrganTalk()
-- 生成众多NPC
local task = curtainUtils.CreateEntityCreateTask({wendyData.Wendy, qinData.Qin, dilucData.Diluc, paimonData.Paimon})
self:TransmitPlayer(3, sceneData:GetDummyPoint(3,"Q390Player").pos, sceneData:GetDummyPoint(3,"Q390Player").rot,
self.RequestTalk,
function (self)
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
actorMgr:CreateActorWithPos(paimonData.Paimon, paimonData.PaimonScript, paimonData.PaimonID, 0, paimonData.bornPos, paimonData.bornDir, true)
end,
task
)
end
function Quest390:RequestTalk()
-- 获取任务状态 未完成 = 2, 已完成 = 3
local firstorganstate = self:GetSubQuestState(39003)
local secondorganstate = self:GetSubQuestState(39103)
local thirdorganstate = self:GetSubQuestState(39203)
print(firstorganstate.."|"..secondorganstate.."|"..thirdorganstate)
-- 修正,未领取的状态 = 未完成
if firstorganstate == 0 then
firstorganstate = 2
end
if secondorganstate == 0 then
secondorganstate = 2
end
if thirdorganstate == 0 then
thirdorganstate = 2
end
local organstate = firstorganstate + secondorganstate + thirdorganstate
print(firstorganstate.."|"..secondorganstate.."|"..thirdorganstate.."|"..organstate)
-- 根据任务状态的和判断玩家完成了几个任务对应不同的talk
if organstate == 6 then
self:RequestInteraction(wendyData.Wendy)
elseif organstate == 7 then
self:RequestInteraction(qinData.Qin)
elseif organstate == 8 then
self:RequestInteraction(dilucData.Diluc)
end
end
-- 采集光束的开车
-- 根据玩家采集光束的数量(任务完成数量),进行不同的开车对话
function Quest390:FindClueNarrator()
-- 获取任务状态 未完成 = 2, 已完成 = 3
local firstcluestate = self:GetSubQuestState(39004)
local secondcluestate = self:GetSubQuestState(39005)
local thirdcluestate = self:GetSubQuestState(39006)
local cluestate = firstcluestate + secondcluestate + thirdcluestate
print("光束数量"..firstcluestate.."|"..secondcluestate.."|"..thirdcluestate.."|"..cluestate)
local firstorganstate = self:GetSubQuestState(39007)
local secondorganstate = self:GetSubQuestState(39107)
local thirdorganstate = self:GetSubQuestState(39207)
-- 修正,未领取的状态 = 未完成
if firstorganstate == 0 then
firstorganstate = 2
end
if secondorganstate == 0 then
secondorganstate = 2
end
if thirdorganstate == 0 then
thirdorganstate = 2
end
local organstate = firstorganstate + secondorganstate + thirdorganstate
print("机关数量"..firstorganstate.."|"..secondorganstate.."|"..thirdorganstate.."|"..organstate)
-- 根据任务状态的和,判断玩家完成了几个任务,对应不同的开车
if organstate == 6 then
if cluestate == 7 then
self:NarratorOnlyTask(q390Cfg.NarratorData.FindClue1_1)
elseif cluestate == 9 then
self:PlayCutscene(q390Cfg.SealAppearTimeCfg,
function (self)
self:NarratorOnlyTask(q390Cfg.NarratorData.FindClue1_3)
end
)
end
elseif organstate == 7 then
if cluestate == 8 then
self:NarratorOnlyTask(q390Cfg.NarratorData.FindClue2_2)
elseif cluestate == 9 then
self:PlayCutscene(q390Cfg.SealAppearTimeCfg)
end
elseif organstate == 8 then
if cluestate == 9 then
self:PlayCutscene(q390Cfg.SealAppearTimeCfg,
function (self)
self:NarratorOnlyTask(q390Cfg.NarratorData.FindClue3_3)
end
)
end
end
end
-- 开启封印的开车
-- 判断封印解开的数量,对应不同开车和镜头表现
function Quest390:SealOpenCutscene()
-- 获取任务状态 未完成 = 2, 已完成 = 3
local firstorganstate = self:GetSubQuestState(39008)
local secondorganstate = self:GetSubQuestState(39108)
local thirdorganstate = self:GetSubQuestState(39208)
print(firstorganstate.."|"..secondorganstate.."|"..thirdorganstate)
-- 修正,未领取的状态 = 未完成
if firstorganstate == 0 then
firstorganstate = 2
end
if secondorganstate == 0 then
secondorganstate = 2
end
if thirdorganstate == 0 then
thirdorganstate = 2
end
local organstate = firstorganstate + secondorganstate + thirdorganstate
print(firstorganstate.."|"..secondorganstate.."|"..thirdorganstate.."|"..organstate)
-- 根据任务状态的和,判断玩家完成了几个任务
if organstate == 7 then
self:PlayCutscene(q390Cfg.SealOpenTimeCfg1,
function (self)
self:NarratorOnlyTask(q390Cfg.NarratorData.OpenOrgan1)
end
)
elseif organstate == 8 then
self:PlayCutscene(q390Cfg.SealOpenTimeCfg2,
function (self)
self:NarratorOnlyTask(q390Cfg.NarratorData.OpenOrgan2)
end
)
elseif organstate == 9 then
self:PlayCutscene(q390Cfg.SealOpenTimeCfg3,
function (self)
self:CallDelay(1,
function (self)
self:NarratorOnlyTask(q390Cfg.NarratorData.OpenOrgan3)
self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q389VentiPos2").pos, 0, 3, true)
end
)
end
)
end
end
function Quest390:DestroyNPC()
self:ShowBlackScreen(0.5, 1, 0.5,
function(self)
local wendy = actorMgr:GetActor(wendyData.Wendy)
local diluc = actorMgr:GetActor(dilucData.Diluc)
local qin = actorMgr:GetActor(qinData.Qin)
local paimon = actorMgr:GetActor(paimonData.Paimon)
if wendy ~= nil then
wendy:Destroy(false)
end
if diluc ~= nil then
diluc:Destroy(false)
end
if qin ~= nil then
qin:Destroy(false)
end
if paimon ~= nil then
paimon:Destroy(false)
end
end
)
end
--@endregion
-- local method begin
--@region sub start handlers
function Quest390:OnSubStart39001(quest)
print("39001 start ")
end
function Quest390:OnSubStart39002(quest)
print("39002 start:...")
end
function Quest390:OnSubStart39003(quest)
print("39003 start:...")
end
function Quest390:OnSubStart39004(quest)
print("39004 start:...")
end
function Quest390:OnSubStart39005(quest)
print("39005 start:...")
end
function Quest390:OnSubStart39006(quest)
print("39006 start:...")
end
function Quest390:OnSubStart39007(quest)
print("39007 start:play cutscene & finish quest")
local quest = actorMgr:GetActor(q390Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuestID(false, 39010)
quest:FinishQuestID(false, 39011)
quest:FinishQuest(false, nil)
end
end
function Quest390:OnSubStart39008(quest)
print("39008 start:...")
end
function Quest390:OnSubStart39009(quest)
print("39009 start:...")
local quest = actorMgr:GetActor(q390Cfg.ActorAlias)
if quest ~= nil then
self:CallDelay(1.5,
function (self)
quest:FinishQuest(false, nil)
end
)
end
end
function Quest390:OnSubStart39010(quest)
print("39010 start:...")
end
--@endregion
--@region sub finish handlers
function Quest390:OnSubFinish39001(quest)
print("39001 Finish:Focus Camera & Narrator")
self:FindOrganNarrator()
end
function Quest390:OnSubFinish39002(quest)
print("39002 Finish:...")
self:FindOrganTalk()
end
function Quest390:OnSubFinish39003(quest)
print("39003 Finish:...")
self:ActionSafeCall(self.DestroyNPC)
end
function Quest390:OnSubFinish39004(quest)
print("39004 Finish:...")
self:FindClueNarrator()
end
function Quest390:OnSubFinish39005(quest)
print("39005 Finish:...")
self:FindClueNarrator()
end
function Quest390:OnSubFinish39006(quest)
print("39006 Finish:...")
self:FindClueNarrator()
end
function Quest390:OnSubFinish39007(quest)
print("39007 Finish:...")
end
function Quest390:OnSubFinish39008(quest)
print("39008 Finish:...")
self:SealOpenCutscene()
end
function Quest390:OnSubFinish39009(quest)
print("39009 Finish:...")
end
function Quest390:OnSubFinish39010(quest)
print("39010 Finish:...")
end
--@endregion
function Quest390:Start()
end
function Quest390:OnDestroy()
end
return Quest390

View File

@@ -0,0 +1,380 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest391 = class("Quest391", questActorProxy)
Quest391.defaultAlias = "Quest391"
local q391Cfg = require('Quest/Client/Q391ClientConfig')
local wendyData = q391Cfg.WendyData
local dilucData = q391Cfg.DilucData
local qinData = q391Cfg.QinData
local paimonData = q391Cfg.PaimonData
local organData = q391Cfg.OrganData
--@region Generated
function Quest391:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["39101"] = self.OnSubStart39101
self.subStartHandlers["39102"] = self.OnSubStart39102
self.subStartHandlers["39103"] = self.OnSubStart39103
self.subStartHandlers["39104"] = self.OnSubStart39104
self.subStartHandlers["39105"] = self.OnSubStart39105
self.subStartHandlers["39106"] = self.OnSubStart39106
self.subStartHandlers["39107"] = self.OnSubStart39107
self.subStartHandlers["39108"] = self.OnSubStart39108
self.subStartHandlers["39109"] = self.OnSubStart39109
self.subStartHandlers["39110"] = self.OnSubStart39110
self.subStartHandlers["39111"] = self.OnSubStart39111
end
function Quest391:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["39101"] = self.OnSubFinish39101
self.subFinishHandlers["39102"] = self.OnSubFinish39102
self.subFinishHandlers["39103"] = self.OnSubFinish39103
self.subFinishHandlers["39104"] = self.OnSubFinish39104
self.subFinishHandlers["39105"] = self.OnSubFinish39105
self.subFinishHandlers["39106"] = self.OnSubFinish39106
self.subFinishHandlers["39107"] = self.OnSubFinish39107
self.subFinishHandlers["39108"] = self.OnSubFinish39108
self.subFinishHandlers["39109"] = self.OnSubFinish39109
self.subFinishHandlers["39110"] = self.OnSubFinish39110
self.subFinishHandlers["39111"] = self.OnSubFinish39111
end
--@endregion
-- local param begin
-- local param end
--@region sub start & finish 内调用的函数
-- 发现机关的开车
-- 已发现机关光束的数量(任务完成数量),进行不同的开车对话
function Quest391:FindOrganNarrator()
local firstorganstate = self:GetSubQuestState(39001)
local secondorganstate = self:GetSubQuestState(39101)
local thirdorganstate = self:GetSubQuestState(39201)
local organstate = firstorganstate + secondorganstate + thirdorganstate
print(firstorganstate.."|"..secondorganstate.."|"..thirdorganstate)
if organstate == 7 then
self:NarratorOnlyTask(q391Cfg.NarratorData.FindOrgan1)
self:EnterSceneLookCamera(organData.bornPos, 0, 3, true)
-- elseif organstate == 8 then
-- self:NarratorOnlyTask(q391Cfg.NarratorData.FindOrgan2)
-- elseif organstate == 9 then
-- self:NarratorOnlyTask(q391Cfg.NarratorData.FindOrgan3)
end
end
-- 第一次发现机关的talk
-- 根据玩家找到的机关数量不同进行不同的talk
-- 通过与不同npc对话实现
-- 没找到机关:与温迪对话
-- 找到一个机关:与琴对话
-- 找到两个机关:与迪卢克对话
function Quest391:FindOrganTalk()
-- 生成众多NPC
local task = curtainUtils.CreateEntityCreateTask({wendyData.Wendy, qinData.Qin, dilucData.Diluc, paimonData.Paimon})
self:TransmitPlayer(3, sceneData:GetDummyPoint(3,"Q391Player").pos, sceneData:GetDummyPoint(3,"Q391Player").rot,
self.RequestTalk,
function (self)
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
actorMgr:CreateActorWithPos(paimonData.Paimon, paimonData.PaimonScript, paimonData.PaimonID, 0, paimonData.bornPos, paimonData.bornDir, true)
end,
task
)
end
function Quest391:RequestTalk()
-- 获取任务状态 未完成 = 2, 已完成 = 3
local firstorganstate = self:GetSubQuestState(39003)
local secondorganstate = self:GetSubQuestState(39103)
local thirdorganstate = self:GetSubQuestState(39203)
print(firstorganstate.."|"..secondorganstate.."|"..thirdorganstate)
-- 修正,未领取的状态 = 未完成
if firstorganstate == 0 then
firstorganstate = 2
end
if secondorganstate == 0 then
secondorganstate = 2
end
if thirdorganstate == 0 then
thirdorganstate = 2
end
local organstate = firstorganstate + secondorganstate + thirdorganstate
print(firstorganstate.."|"..secondorganstate.."|"..thirdorganstate.."|"..organstate)
-- 根据任务状态的和判断玩家完成了几个任务对应不同的talk
if organstate == 6 then
self:RequestInteraction(wendyData.Wendy)
elseif organstate == 7 then
self:RequestInteraction(qinData.Qin)
elseif organstate == 8 then
self:RequestInteraction(dilucData.Diluc)
end
end
-- 采集光束的开车
-- 根据玩家采集光束的数量(任务完成数量),进行不同的开车对话
function Quest391:FindClueNarrator()
-- 获取任务状态 未完成 = 2, 已完成 = 3
local firstcluestate = self:GetSubQuestState(39104)
local secondcluestate = self:GetSubQuestState(39105)
local thirdcluestate = self:GetSubQuestState(39106)
local cluestate = firstcluestate + secondcluestate + thirdcluestate
print("光束数量"..firstcluestate.."|"..secondcluestate.."|"..thirdcluestate.."|"..cluestate)
local firstorganstate = self:GetSubQuestState(39007)
local secondorganstate = self:GetSubQuestState(39107)
local thirdorganstate = self:GetSubQuestState(39207)
-- 修正,未领取的状态 = 未完成
if firstorganstate == 0 then
firstorganstate = 2
end
if secondorganstate == 0 then
secondorganstate = 2
end
if thirdorganstate == 0 then
thirdorganstate = 2
end
local organstate = firstorganstate + secondorganstate + thirdorganstate
print("机关数量"..firstorganstate.."|"..secondorganstate.."|"..thirdorganstate.."|"..organstate)
-- 根据任务状态的和,判断玩家完成了几个任务,对应不同的开车
if organstate == 6 then
if cluestate == 7 then
self:NarratorOnlyTask(q391Cfg.NarratorData.FindClue1_1)
elseif cluestate == 9 then
self:PlayCutscene(q391Cfg.SealAppearTimeCfg,
function (self)
self:NarratorOnlyTask(q391Cfg.NarratorData.FindClue1_3)
end
)
end
elseif organstate == 7 then
if cluestate == 8 then
self:NarratorOnlyTask(q391Cfg.NarratorData.FindClue2_2)
elseif cluestate == 9 then
self:PlayCutscene(q391Cfg.SealAppearTimeCfg)
end
elseif organstate == 8 then
if cluestate == 9 then
self:PlayCutscene(q391Cfg.SealAppearTimeCfg,
function (self)
self:NarratorOnlyTask(q391Cfg.NarratorData.FindClue3_3)
end
)
end
end
end
-- 开启封印的开车
-- 判断封印解开的数量,对应不同开车和镜头表现
function Quest391:SealOpenCutscene()
-- 获取任务状态 未完成 = 2, 已完成 = 3
local firstorganstate = self:GetSubQuestState(39008)
local secondorganstate = self:GetSubQuestState(39108)
local thirdorganstate = self:GetSubQuestState(39208)
print(firstorganstate.."|"..secondorganstate.."|"..thirdorganstate)
-- 修正,未领取的状态 = 未完成
if firstorganstate == 0 then
firstorganstate = 2
end
if secondorganstate == 0 then
secondorganstate = 2
end
if thirdorganstate == 0 then
thirdorganstate = 2
end
local organstate = firstorganstate + secondorganstate + thirdorganstate
print(firstorganstate.."|"..secondorganstate.."|"..thirdorganstate.."|"..organstate)
-- 根据任务状态的和,判断玩家完成了几个任务
if organstate == 7 then
self:PlayCutscene(q391Cfg.SealOpenTimeCfg1,
function (self)
self:NarratorOnlyTask(q391Cfg.NarratorData.OpenOrgan1)
end
)
elseif organstate == 8 then
self:PlayCutscene(q391Cfg.SealOpenTimeCfg2,
function (self)
self:NarratorOnlyTask(q391Cfg.NarratorData.OpenOrgan2)
end
)
elseif organstate == 9 then
self:PlayCutscene(q391Cfg.SealOpenTimeCfg3,
function (self)
self:CallDelay(1,
function (self)
self:NarratorOnlyTask(q391Cfg.NarratorData.OpenOrgan3)
self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q389VentiPos2").pos, 0, 3, true)
end
)
end
)
end
end
function Quest391:DestroyNPC()
self:ShowBlackScreen(0.5, 1, 0.5,
function(self)
local wendy = actorMgr:GetActor(wendyData.Wendy)
local diluc = actorMgr:GetActor(dilucData.Diluc)
local qin = actorMgr:GetActor(qinData.Qin)
local paimon = actorMgr:GetActor(paimonData.Paimon)
if wendy ~= nil then
wendy:Destroy(false)
end
if diluc ~= nil then
diluc:Destroy(false)
end
if qin ~= nil then
qin:Destroy(false)
end
if paimon ~= nil then
paimon:Destroy(false)
end
end
)
end
--@endregion
-- local method begin
--@region sub start handlers
function Quest391:OnSubStart39101(quest)
print("39101 start ")
end
function Quest391:OnSubStart39102(quest)
print("39102 start:...")
end
function Quest391:OnSubStart39103(quest)
print("39103 start:...")
end
function Quest391:OnSubStart39104(quest)
print("39104 start:...")
end
function Quest391:OnSubStart39105(quest)
print("39105 start:...")
end
function Quest391:OnSubStart39106(quest)
print("39106 start:...")
end
function Quest391:OnSubStart39107(quest)
print("39107 start:play cutscene & finish quest")
local quest = actorMgr:GetActor(q391Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuestID(false, 39110)
quest:FinishQuestID(false, 39111)
quest:FinishQuest(false, nil)
end
end
function Quest391:OnSubStart39108(quest)
print("39108 start:...")
end
function Quest391:OnSubStart39109(quest)
print("39109 start:...")
local quest = actorMgr:GetActor(q391Cfg.ActorAlias)
if quest ~= nil then
self:CallDelay(1.5,
function (self)
quest:FinishQuest(false, nil)
end
)
end
end
function Quest391:OnSubStart39110(quest)
print("39110 start:...")
end
--@endregion
--@region sub finish handlers
function Quest391:OnSubFinish39101(quest)
print("39101 Finish:Focus Camera & Narrator")
self:FindOrganNarrator()
end
function Quest391:OnSubFinish39102(quest)
print("39102 Finish:...")
self:FindOrganTalk()
end
function Quest391:OnSubFinish39103(quest)
print("39103 Finish:...")
self:ActionSafeCall(self.DestroyNPC)
end
function Quest391:OnSubFinish39104(quest)
print("39104 Finish:...")
self:FindClueNarrator()
end
function Quest391:OnSubFinish39105(quest)
print("39105 Finish:...")
self:FindClueNarrator()
end
function Quest391:OnSubFinish39106(quest)
print("39106 Finish:...")
self:FindClueNarrator()
end
function Quest391:OnSubFinish39107(quest)
print("39107 Finish:...")
end
function Quest391:OnSubFinish39108(quest)
print("39108 Finish:...")
self:SealOpenCutscene()
end
function Quest391:OnSubFinish39109(quest)
print("39109 Finish:...")
end
function Quest391:OnSubFinish39110(quest)
print("39110 Finish:...")
end
--@endregion
function Quest391:Start()
end
function Quest391:OnDestroy()
end
return Quest391

View File

@@ -0,0 +1,380 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest392 = class("Quest392", questActorProxy)
Quest392.defaultAlias = "Quest392"
local q392Cfg = require('Quest/Client/Q392ClientConfig')
local wendyData = q392Cfg.WendyData
local dilucData = q392Cfg.DilucData
local qinData = q392Cfg.QinData
local paimonData = q392Cfg.PaimonData
local organData = q392Cfg.OrganData
--@region Generated
function Quest392:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["39201"] = self.OnSubStart39201
self.subStartHandlers["39202"] = self.OnSubStart39202
self.subStartHandlers["39203"] = self.OnSubStart39203
self.subStartHandlers["39204"] = self.OnSubStart39204
self.subStartHandlers["39205"] = self.OnSubStart39205
self.subStartHandlers["39206"] = self.OnSubStart39206
self.subStartHandlers["39207"] = self.OnSubStart39207
self.subStartHandlers["39208"] = self.OnSubStart39208
self.subStartHandlers["39209"] = self.OnSubStart39209
self.subStartHandlers["39210"] = self.OnSubStart39210
self.subStartHandlers["39211"] = self.OnSubStart39211
end
function Quest392:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["39201"] = self.OnSubFinish39201
self.subFinishHandlers["39202"] = self.OnSubFinish39202
self.subFinishHandlers["39203"] = self.OnSubFinish39203
self.subFinishHandlers["39204"] = self.OnSubFinish39204
self.subFinishHandlers["39205"] = self.OnSubFinish39205
self.subFinishHandlers["39206"] = self.OnSubFinish39206
self.subFinishHandlers["39207"] = self.OnSubFinish39207
self.subFinishHandlers["39208"] = self.OnSubFinish39208
self.subFinishHandlers["39209"] = self.OnSubFinish39209
self.subFinishHandlers["39210"] = self.OnSubFinish39210
self.subFinishHandlers["39211"] = self.OnSubFinish39211
end
--@endregion
-- local param begin
-- local param end
--@region sub start & finish 内调用的函数
-- 发现机关的开车
-- 已发现机关光束的数量(任务完成数量),进行不同的开车对话
function Quest392:FindOrganNarrator()
local firstorganstate = self:GetSubQuestState(39001)
local secondorganstate = self:GetSubQuestState(39101)
local thirdorganstate = self:GetSubQuestState(39201)
local organstate = firstorganstate + secondorganstate + thirdorganstate
print(firstorganstate.."|"..secondorganstate.."|"..thirdorganstate)
if organstate == 7 then
self:NarratorOnlyTask(q392Cfg.NarratorData.FindOrgan1)
self:EnterSceneLookCamera(organData.bornPos, 0, 3, true)
-- elseif organstate == 8 then
-- self:NarratorOnlyTask(q392Cfg.NarratorData.FindOrgan2)
-- elseif organstate == 9 then
-- self:NarratorOnlyTask(q392Cfg.NarratorData.FindOrgan3)
end
end
-- 第一次发现机关的talk
-- 根据玩家找到的机关数量不同进行不同的talk
-- 通过与不同npc对话实现
-- 没找到机关:与温迪对话
-- 找到一个机关:与琴对话
-- 找到两个机关:与迪卢克对话
function Quest392:FindOrganTalk()
-- 生成众多NPC
local task = curtainUtils.CreateEntityCreateTask({wendyData.Wendy, qinData.Qin, dilucData.Diluc, paimonData.Paimon})
self:TransmitPlayer(3, sceneData:GetDummyPoint(3,"Q392Player").pos, sceneData:GetDummyPoint(3,"Q392Player").rot,
self.RequestTalk,
function (self)
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
actorMgr:CreateActorWithPos(paimonData.Paimon, paimonData.PaimonScript, paimonData.PaimonID, 0, paimonData.bornPos, paimonData.bornDir, true)
end,
task
)
end
function Quest392:RequestTalk()
-- 获取任务状态 未完成 = 2, 已完成 = 3
local firstorganstate = self:GetSubQuestState(39003)
local secondorganstate = self:GetSubQuestState(39103)
local thirdorganstate = self:GetSubQuestState(39203)
print(firstorganstate.."|"..secondorganstate.."|"..thirdorganstate)
-- 修正,未领取的状态 = 未完成
if firstorganstate == 0 then
firstorganstate = 2
end
if secondorganstate == 0 then
secondorganstate = 2
end
if thirdorganstate == 0 then
thirdorganstate = 2
end
local organstate = firstorganstate + secondorganstate + thirdorganstate
print(firstorganstate.."|"..secondorganstate.."|"..thirdorganstate.."|"..organstate)
-- 根据任务状态的和判断玩家完成了几个任务对应不同的talk
if organstate == 6 then
self:RequestInteraction(wendyData.Wendy)
elseif organstate == 7 then
self:RequestInteraction(qinData.Qin)
elseif organstate == 8 then
self:RequestInteraction(dilucData.Diluc)
end
end
-- 采集光束的开车
-- 根据玩家采集光束的数量(任务完成数量),进行不同的开车对话
function Quest392:FindClueNarrator()
-- 获取任务状态 未完成 = 2, 已完成 = 3
local firstcluestate = self:GetSubQuestState(39204)
local secondcluestate = self:GetSubQuestState(39205)
local thirdcluestate = self:GetSubQuestState(39206)
local cluestate = firstcluestate + secondcluestate + thirdcluestate
print("光束数量"..firstcluestate.."|"..secondcluestate.."|"..thirdcluestate.."|"..cluestate)
local firstorganstate = self:GetSubQuestState(39007)
local secondorganstate = self:GetSubQuestState(39107)
local thirdorganstate = self:GetSubQuestState(39207)
-- 修正,未领取的状态 = 未完成
if firstorganstate == 0 then
firstorganstate = 2
end
if secondorganstate == 0 then
secondorganstate = 2
end
if thirdorganstate == 0 then
thirdorganstate = 2
end
local organstate = firstorganstate + secondorganstate + thirdorganstate
print("机关数量"..firstorganstate.."|"..secondorganstate.."|"..thirdorganstate.."|"..organstate)
-- 根据任务状态的和,判断玩家完成了几个任务,对应不同的开车
if organstate == 6 then
if cluestate == 7 then
self:NarratorOnlyTask(q392Cfg.NarratorData.FindClue1_1)
elseif cluestate == 9 then
self:PlayCutscene(q392Cfg.SealAppearTimeCfg,
function (self)
self:NarratorOnlyTask(q392Cfg.NarratorData.FindClue1_3)
end
)
end
elseif organstate == 7 then
if cluestate == 8 then
self:NarratorOnlyTask(q392Cfg.NarratorData.FindClue2_2)
elseif cluestate == 9 then
self:PlayCutscene(q392Cfg.SealAppearTimeCfg)
end
elseif organstate == 8 then
if cluestate == 9 then
self:PlayCutscene(q392Cfg.SealAppearTimeCfg,
function (self)
self:NarratorOnlyTask(q392Cfg.NarratorData.FindClue3_3)
end
)
end
end
end
-- 开启封印的开车
-- 判断封印解开的数量,对应不同开车和镜头表现
function Quest392:SealOpenCutscene()
-- 获取任务状态 未完成 = 2, 已完成 = 3
local firstorganstate = self:GetSubQuestState(39008)
local secondorganstate = self:GetSubQuestState(39108)
local thirdorganstate = self:GetSubQuestState(39208)
print(firstorganstate.."|"..secondorganstate.."|"..thirdorganstate)
-- 修正,未领取的状态 = 未完成
if firstorganstate == 0 then
firstorganstate = 2
end
if secondorganstate == 0 then
secondorganstate = 2
end
if thirdorganstate == 0 then
thirdorganstate = 2
end
local organstate = firstorganstate + secondorganstate + thirdorganstate
print(firstorganstate.."|"..secondorganstate.."|"..thirdorganstate.."|"..organstate)
-- 根据任务状态的和,判断玩家完成了几个任务
if organstate == 7 then
self:PlayCutscene(q392Cfg.SealOpenTimeCfg1,
function (self)
self:NarratorOnlyTask(q392Cfg.NarratorData.OpenOrgan1)
end
)
elseif organstate == 8 then
self:PlayCutscene(q392Cfg.SealOpenTimeCfg2,
function (self)
self:NarratorOnlyTask(q392Cfg.NarratorData.OpenOrgan2)
end
)
elseif organstate == 9 then
self:PlayCutscene(q392Cfg.SealOpenTimeCfg3,
function (self)
self:CallDelay(1,
function (self)
self:NarratorOnlyTask(q392Cfg.NarratorData.OpenOrgan3)
self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q389VentiPos2").pos, 0, 3, true)
end
)
end
)
end
end
function Quest392:DestroyNPC()
self:ShowBlackScreen(0.5, 1, 0.5,
function(self)
local wendy = actorMgr:GetActor(wendyData.Wendy)
local diluc = actorMgr:GetActor(dilucData.Diluc)
local qin = actorMgr:GetActor(qinData.Qin)
local paimon = actorMgr:GetActor(paimonData.Paimon)
if wendy ~= nil then
wendy:Destroy(false)
end
if diluc ~= nil then
diluc:Destroy(false)
end
if qin ~= nil then
qin:Destroy(false)
end
if paimon ~= nil then
paimon:Destroy(false)
end
end
)
end
--@endregion
-- local method begin
--@region sub start handlers
function Quest392:OnSubStart39201(quest)
print("39201 start ")
end
function Quest392:OnSubStart39202(quest)
print("39202 start:...")
end
function Quest392:OnSubStart39203(quest)
print("39203 start:...")
end
function Quest392:OnSubStart39204(quest)
print("39204 start:...")
end
function Quest392:OnSubStart39205(quest)
print("39205 start:...")
end
function Quest392:OnSubStart39206(quest)
print("39206 start:...")
end
function Quest392:OnSubStart39207(quest)
print("39207 start:play cutscene & finish quest")
local quest = actorMgr:GetActor(q392Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuestID(false, 39210)
quest:FinishQuestID(false, 39211)
quest:FinishQuest(false, nil)
end
end
function Quest392:OnSubStart39208(quest)
print("39208 start:...")
end
function Quest392:OnSubStart39209(quest)
print("39209 start:...")
local quest = actorMgr:GetActor(q392Cfg.ActorAlias)
if quest ~= nil then
self:CallDelay(1.5,
function (self)
quest:FinishQuest(false, nil)
end
)
end
end
function Quest392:OnSubStart39210(quest)
print("39210 start:...")
end
--@endregion
--@region sub finish handlers
function Quest392:OnSubFinish39201(quest)
print("39201 Finish:Focus Camera & Narrator")
self:FindOrganNarrator()
end
function Quest392:OnSubFinish39202(quest)
print("39202 Finish:...")
self:FindOrganTalk()
end
function Quest392:OnSubFinish39203(quest)
print("39203 Finish:...")
self:ActionSafeCall(self.DestroyNPC)
end
function Quest392:OnSubFinish39204(quest)
print("39204 Finish:...")
self:FindClueNarrator()
end
function Quest392:OnSubFinish39205(quest)
print("39205 Finish:...")
self:FindClueNarrator()
end
function Quest392:OnSubFinish39206(quest)
print("39206 Finish:...")
self:FindClueNarrator()
end
function Quest392:OnSubFinish39207(quest)
print("39207 Finish:...")
end
function Quest392:OnSubFinish39208(quest)
print("39208 Finish:...")
self:SealOpenCutscene()
end
function Quest392:OnSubFinish39209(quest)
print("39209 Finish:...")
end
function Quest392:OnSubFinish39210(quest)
print("39210 Finish:...")
end
--@endregion
function Quest392:Start()
end
function Quest392:OnDestroy()
end
return Quest392

View File

@@ -0,0 +1,136 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest393 = class("Quest393", questActorProxy)
Quest393.defaultAlias = "Quest393"
local q393Cfg = require('Quest/Client/Q393ClientConfig')
local wendyData = q393Cfg.WendyData
local qinData = q393Cfg.QinData
local dilucData = q393Cfg.DilucData
local paimonData = q393Cfg.PaimonData
-- Generated
function Quest393:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["39301"] = self.OnSubStart39301
self.subStartHandlers["39302"] = self.OnSubStart39302
self.subStartHandlers["39303"] = self.OnSubStart39303
end
function Quest393:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["39301"] = self.OnSubFinish39301
self.subFinishHandlers["39302"] = self.OnSubFinish39302
self.subFinishHandlers["39303"] = self.OnSubFinish39303
end
-- local param begin
-- local param end
---sub start & finish 内调用的函数
-- end
-- local method begin
--@region sub start handlers
function Quest393:OnSubStart39301(quest)
print("39301 start:......")
local quest = actorMgr:GetActor(q393Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
function Quest393:OnSubStart39302(quest)
print("39302 start:......")
end
function Quest393:OnSubStart39303(quest)
print("39303 start:......")
end
--@endregion
--@region sub finish handlers
function Quest393:OnSubFinish39301(quest)
print("OnFinished 39301")
self:NarratorOnlyTask(self.clientData.NarratorData.Story1)
-- self:EnterSceneLookCamera(sceneData:GetDummyPoint(3,"Q389VentiPos2").pos, 0, 3, true)
end
function Quest393:OnSubFinish39302(quest)
print("OnFinished 39302")
self:TransmitPlayer(3, wendyData.bornPos, wendyData.bornDir, nil,
function (self)
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true)
actorMgr:CreateActorWithPos(dilucData.Diluc, dilucData.DilucScript, dilucData.DilucID, 0, dilucData.bornPos, dilucData.bornDir, true)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true)
self:CallDelay(0.5,
function (slef)
self:RequestInteraction(wendyData.Wendy)
end
)
end
)
end
function Quest393:OnSubFinish39303(quest)
print("OnFinished 39303")
self:ActionSafeCall(
function(self)
local wendy = actorMgr:GetActor(wendyData.Wendy)
local diluc = actorMgr:GetActor(dilucData.Diluc)
local qin = actorMgr:GetActor(qinData.Qin)
local paimon = actorMgr:GetActor("Paimon")
if wendy ~= nil then
wendy:ClearFollowTask()
wendy:RunToTask(wendyData.bornPos2,
function (wendy, task)
wendy:Standby()
wendy:TurnTo(M.Euler2DirXZ(wendyData.bornDir2))
end
)
end
if diluc ~= nil then
diluc:ClearFollowTask()
diluc:RunToTask(dilucData.bornPos2,
function (diluc, task)
diluc:Standby()
diluc:TurnTo(M.Euler2DirXZ(dilucData.bornDir2))
end
)
end
if qin ~= nil then
qin:ClearFollowTask()
qin:RunToTask(qinData.bornPos2,
function (qin, task)
qin:Standby()
qin:TurnTo(M.Euler2DirXZ(qinData.bornDir2))
end
)
end
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
end
--@endregion
function Quest393:Start()
end
function Quest393:OnDestroy()
-- if ScriptLib.GetEntityType(evt.target_eid) == EntityType.AVATAR and ScriptLib.GetQuestState(evt.target_eid, 39302) == QuestState.UNFINISHED and evt.param1 == 178 then
-- return true
-- end
-- return false
end
return Quest393

View File

@@ -0,0 +1,99 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest394 = class("Quest394", questActorProxy)
Quest394.defaultAlias = "Quest394"
local q394Cfg = require('Quest/Client/Q394ClientConfig')
local wendyData = q394Cfg.WendyData
local bbrData = q394Cfg.BarbaraData
local qinData = q394Cfg.QinData
-- Generated
function Quest394:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["39401"] = self.OnSubStart39401
self.subStartHandlers["39402"] = self.OnSubStart39402
self.subStartHandlers["39403"] = self.OnSubStart39403
end
function Quest394:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["39401"] = self.OnSubFinish39401
self.subFinishHandlers["39402"] = self.OnSubFinish39402
self.subFinishHandlers["39403"] = self.OnSubFinish39403
end
-- local param begin
--@region sub start handlers
function Quest394:On39403CutSceneFinish()
local quest = actorMgr:GetActor(q394Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
self:CallDelay(5,
function(self)
self:TransmitPlayer(3, sceneData:GetDummyPoint(3,"Q39601TransPos").pos, sceneData:GetDummyPoint(3,"Q39601TransPos").rot,
function (self)
globalActor:ChangeWeather ("ClearSky")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true, false, 1008)
actorMgr:CreateActorWithPos(bbrData.Barbara, bbrData.BarbaraScript, bbrData.BarbaraID, 0, bbrData.bornPos, bbrData.bornDir, true, false, 1008)
actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true, false, 1008)
end
)
end
)
end
--@endregion
-- local param end
---sub start & finish 内调用的函数
-- end
-- local method begin
--@region sub start handlers
function Quest394:OnSubStart39401(quest)
print("39401 start ")
end
function Quest394:OnSubStart39402(quest)
print("39402 start:...")
end
function Quest394:OnSubStart39403(quest)
print("39403 start:...")
self:CallDelay(7,
function (self)
self:ShowBlackScreen(0.5, 1, 0.5,
function (self)
self:TryPlayVideo("Cs_MDAQ071_Davalin.mp4", 300005, true, self.On39403CutSceneFinish)
end
)
end
)
end
--@endregion
--@region sub finish handlers
function Quest394:OnSubFinish39401(quest)
print("OnFinished 39401")
end
function Quest394:OnSubFinish39402(quest)
print("OnFinished 39402")
end
function Quest394:OnSubFinish39403(quest)
print("OnFinished 39403")
end
--@endregion
function Quest394:Start()
end
function Quest394:OnDestroy()
end
return Quest394

View File

@@ -0,0 +1,104 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest395 = class("Quest395", questActorProxy)
Quest395.defaultAlias = "Quest395"
local q395Cfg = require('Quest/Client/Q395ClientConfig')
local bbrData = q395Cfg.BarbaraData
-- Generated
function Quest395:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["39501"] = self.OnSubStart39501
self.subStartHandlers["39502"] = self.OnSubStart39502
self.subStartHandlers["39503"] = self.OnSubStart39503
end
function Quest395:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["39501"] = self.OnSubFinish39501
self.subFinishHandlers["39502"] = self.OnSubFinish39502
self.subFinishHandlers["39503"] = self.OnSubFinish39503
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest395:OnSubStart39501(quest)
print("39501 start")
end
function Quest395:OnSubStart39502(quest)
print("39502 start")
actorMgr:CreateActorWithPos("Q395Trigger", "Actor/Gadget/Q395Trigger", 70900002, 0, bbrData.bornPos, bbrData.bornDir, true)
end
function Quest395:OnSubStart39503(quest)
print("39503 start ")
end
--@endregion
--@region sub finish handlers
function Quest395:OnSubFinish39501(quest)
print("OnFinished 39501")
end
function Quest395:OnSubFinish39502(quest)
print("OnFinished 39502")
self:ShowBlackScreen(1.0, 1.0, 0, self.CreateBBR)
local q395Trigger = actorMgr:GetActor("Q395Trigger")
if q395Trigger ~= nil then
q395Trigger:Destroy(false)
end
end
function Quest395:OnSubFinish39503(quest)
print("OnFinished 39503")
self:ActionSafeCall(
function(self)
local paimon = actorMgr:GetActor("Paimon")
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
-- self:ActionSafeCall(
-- function(self)
-- local qin = actorMgr:GetActor("1006")
-- if qin ~= nil then
-- qin:DestroyWithDisappear(false)
-- end
-- end
-- )
end
function Quest395:CreateBBR()
actorMgr:CreateActorWithPos(bbrData.Barbara, bbrData.BarbaraScript, bbrData.BarbaraID, 0, bbrData.bornPos, bbrData.bornDir, true)
print("BBR Born")
end
function Quest395:Interaction()
self:RequestInteraction(bbrData.Barbara)
print("Black Callback NOW")
end
--@endregion
function Quest395:Start()
end
function Quest395:OnDestroy()
end
return Quest395

View File

@@ -0,0 +1,211 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest396 = class("Quest396", questActorProxy)
Quest396.defaultAlias = "Quest396"
local q396Cfg = require('Quest/Client/Q396ClientConfig')
local wendyData = q396Cfg.WendyData
local bbrData = q396Cfg.BarbaraData
local qinData = q396Cfg.QinData
-- Generated
function Quest396:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["39601"] = self.OnSubStart39601
self.subStartHandlers["39602"] = self.OnSubStart39602
self.subStartHandlers["39603"] = self.OnSubStart39603
self.subStartHandlers["39604"] = self.OnSubStart39604
self.subStartHandlers["39605"] = self.OnSubStart39605
self.subStartHandlers["39606"] = self.OnSubStart39606
end
function Quest396:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["39601"] = self.OnSubFinish39601
self.subFinishHandlers["39602"] = self.OnSubFinish39602
self.subFinishHandlers["39603"] = self.OnSubFinish39603
self.subFinishHandlers["39604"] = self.OnSubFinish39604
self.subFinishHandlers["39605"] = self.OnSubFinish39605
self.subFinishHandlers["39606"] = self.OnSubFinish39606
end
-- local param begin
-- local param end
---sub start & finish 内调用的函数
-- function Quest396:PlayerBackMengde
-- self:TransmitPlayer(0,dummyPoint.pos, dummyPoint.rot)
-- end
-- function Quest396:On39601CutSceneFinish()
-- self:ShowBlackScreen(0.0, 1.0, 0.0)
-- self:TransmitPlayer(3, sceneData:GetDummyPoint(3,"Q39601TransPos").pos, sceneData:GetDummyPoint(3,"Q39601TransPos").rot,
-- function (self)
-- globalActor:ChangeWeather ("ClearSky")
-- actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true, false, 1008)
-- actorMgr:CreateActorWithPos(bbrData.Barbara, bbrData.BarbaraScript, bbrData.BarbaraID, 0, bbrData.bornPos, bbrData.bornDir, true, false, 1008)
-- actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true, false, 1008)
-- end
-- )
-- local quest = actorMgr:GetActor(q396Cfg.ActorAlias)
-- if quest ~= nil then
-- quest:FinishQuest(false, nil)
-- end
-- end
-- local method begin
--@region sub start handlers
function Quest396:OnSubStart39601(quest)
print("39601 start ")
local quest = actorMgr:GetActor(q396Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
-- self:CallDelay(3,
-- function (self)
-- self:ShowBlackScreen(0.5, 1.0, 0.5,
-- function (self)
-- self:TryPlayVideo("Cs_MDAQ071_Davalin.mp4", nil, true, self.On39601CutSceneFinish)
-- end
-- )
-- end
-- )
-- self:ShowBlackScreen(1.0, 1.0, 1.0, nil, nil)
end
function Quest396:OnSubStart39602(quest)
print("39602 start:...")
-- actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.bornPos, wendyData.bornDir, true, false, 1008)
-- actorMgr:CreateActorWithPos(bbrData.Barbara, bbrData.BarbaraScript, bbrData.BarbaraID, 0, bbrData.bornPos, bbrData.bornDir, true, false, 1008)
-- actorMgr:CreateActorWithPos(qinData.Qin, qinData.QinScript, qinData.QinID, 0, qinData.bornPos, qinData.bornDir, true, false, 1008)
end
function Quest396:OnSubStart39603(quest)
print("39603 start:...")
local quest = actorMgr:GetActor(q396Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
function Quest396:OnSubStart39604(quest)
print("39604 start:...")
end
function Quest396:OnSubStart39605(quest)
print("39605 start:...")
end
function Quest396:OnSubStart39606(quest)
print("39606 start:...")
actorMgr:CreateActorWithPos(wendyData.Wendy, wendyData.WendyScript, wendyData.WendyID, 0, wendyData.born2Pos, wendyData.born2Dir, true)
end
--@endregion
--@region sub finish handlers
function Quest396:OnSubFinish39601(quest)
print("OnFinished 39601")
end
function Quest396:OnSubFinish39602(quest)
print("OnFinished 39602")
-- self:ActionSafeCall(
-- function(self)
-- local bbr = actorMgr:GetActor(bbrData.Barbara)
-- if bbr ~= nil then
-- bbr:ClearFollowTask()
-- bbr:RunToTask(bbrData.disPos,
-- function(bbr, task)
-- bbr:Destroy(false)
-- end
-- )
-- end
-- end
-- )
end
function Quest396:OnSubFinish39603(quest)
-- print("OnFinished 39603")
-- self:ActionSafeCall(
-- function(self)
-- local bbr = actorMgr:GetActor(bbrData.Barbara)
-- if bbr ~= nil then
-- bbr:ClearFollowTask()
-- bbr:WalkToTask(bbrData.disPos,
-- function(bbr, task)
-- bbr:Destroy(false)
-- end
-- )
-- end
-- end
-- )
end
function Quest396:OnSubFinish39604(quest)
print("OnFinished 39604")
self:ActionSafeCall(
function(self)
local wendy = actorMgr:GetActor(wendyData.Wendy)
local paimon = actorMgr:GetActor("Paimon")
if wendy ~= nil then
wendy:ClearFollowTask()
wendy:RunToTask(wendyData.disPos,
function(wendy, task)
wendy:Destroy(false)
end
)
end
if paimon ~= nil then
paimon:DestroyWithDisappear(false)
end
end
)
end
function Quest396:OnSubFinish39605(quest)
print("OnFinished 39605")
end
function Quest396:OnSubFinish39606(quest)
print("OnFinished 39606")
end
function Quest396:InvokeOnInteraction(param)
if param == 1 then
print("Talk39602:BBR Disappear")
local bbr = actorMgr:GetActor(bbrData.Barbara)
if bbr ~= nil then
print("BBR Run")
bbr:ClearFollowTask()
bbr:RunToTask(bbrData.disPos, Quest396.BBRdisappear)
end
end
end
function Quest396:BBRdisappear()
local bbr = actorMgr:GetActor(bbrData.Barbara)
if bbr ~= nil then
bbr:SetVisible(false)
end
end
--@endregion
function Quest396:Start()
end
function Quest396:OnDestroy()
end
return Quest396

View File

@@ -0,0 +1,46 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest419 = class("Quest419", questActorProxy)
Quest419.defaultAlias = "Quest419"
local q419Cfg = require('Quest/Client/Q419ClientConfig')
local subIDs = q419Cfg.SubIDs
-- Generated
function Quest419:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["41901"] = self.OnSubStart41901
-- self.subStartHandlers["38203"] = self.OnSubStart38203
end
function Quest419:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["41901"] = self.OnSubFinish41901
-- self.subFinishHandlers["38203"] = self.OnSubFinish38203
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest419:OnSubFinish41901(quest)
print("41901 finish: Play CutScene")
self:PlayCutscene(q419Cfg.SwordBreak)
end
-- function Quest382:OnSubFinish38203(quest)
-- print("OnFinished 38202")
-- end
--@endregion
function Quest419:Start()
end
function Quest419:OnDestroy()
end
return Quest419

View File

@@ -0,0 +1,46 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest420 = class("Quest420", questActorProxy)
Quest420.defaultAlias = "Quest420"
local q420Cfg = require('Quest/Client/Q420ClientConfig')
local subIDs = q420Cfg.SubIDs
-- Generated
function Quest420:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["42001"] = self.OnSubStart42001
-- self.subStartHandlers["38203"] = self.OnSubStart38203
end
function Quest420:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["42001"] = self.OnSubFinish42001
-- self.subFinishHandlers["38203"] = self.OnSubFinish38203
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest420:OnSubFinish42001(quest)
print("42001 finish: Play CutScene")
self:PlayCutscene(q420Cfg.SwordBreak)
end
-- function Quest382:OnSubFinish38203(quest)
-- print("OnFinished 38202")
-- end
--@endregion
function Quest420:Start()
end
function Quest420:OnDestroy()
end
return Quest420

View File

@@ -0,0 +1,108 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest421 = class("Quest421", questActorProxy)
Quest421.defaultAlias = "Quest421"
local q421Cfg = require('Quest/Client/Q421ClientConfig')
local subIDs = q421Cfg.SubIDs
local guardData = q421Cfg.GuardData
-- Generated
function Quest421:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["42101"] = self.OnSubStart42101
self.subStartHandlers["42102"] = self.OnSubStart42102
self.subStartHandlers["42103"] = self.OnSubStart42103
self.subStartHandlers["42104"] = self.OnSubStart42104
end
function Quest421:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["42101"] = self.OnSubFinish42101
self.subFinishHandlers["42102"] = self.OnSubFinish42102
self.subFinishHandlers["42103"] = self.OnSubFinish42103
self.subFinishHandlers["42104"] = self.OnSubFinish42104
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest421:OnSubStart42101(quest)
print("42101 start ")
end
function Quest421:OnSubStart42102(quest)
print("42102 start xyz")
self:ActionSafeCall(self.Trans)
end
function Quest421:Trans()
print("Trans start xyz")
self:TransmitPlayer(1008, sceneData:GetDummyPoint(1008,"Q375Fail").pos, sceneData:GetDummyPoint(1008,"Q375Fail").rot,
function(self)
local quest = actorMgr:GetActor(q421Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
)
end
function Quest421:OnSubStart42103(quest)
print("42103 start xyz")
end
function Quest421:OnSubStart42104(quest)
print("42104 start xyz")
actorMgr:CreateActorWithPos(guardData.Guard, guardData.GuardScript, guardData.GuardID, 0, guardData.bornPos, guardData.bornDir, true, false,1008)
self:CallDelay(5,self.Clean)
end
function Quest421:Clean()
local guard = actorMgr:GetActor(guardData.Guard)
if guard ~= nil then
guard:Destroy(false)
end
local quest = actorMgr:GetActor(q421Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
--@endregion
--@region sub finish handlers
function Quest421:OnSubFinish42101(quest)
print("OnFinished 42101")
end
function Quest421:OnSubFinish42102(quest)
print("OnFinished 42102")
end
function Quest421:OnSubFinish42103(quest)
print("OnFinished 42103")
end
function Quest421:OnSubFinish42104(quest)
print("OnFinished 42104")
end
--@endregion
function Quest421:Start()
end
function Quest421:OnDestroy()
end
return Quest421

View File

@@ -0,0 +1,46 @@
require('Actor/ActorCommon')
local questActorProxy = require('Actor/Quest/QuestActorProxy')
local Quest422 = class("Quest422", questActorProxy)
Quest422.defaultAlias = "Quest422"
local q422Cfg = require('Quest/Client/Q422ClientConfig')
local subIDs = q422Cfg.SubIDs
-- Generated
function Quest422:OnSubStartHandlerBuild()
self.subStartHandlers = {}
self.subStartHandlers["42201"] = self.OnSubStart42201
-- self.subStartHandlers["38203"] = self.OnSubStart38203
end
function Quest422:OnSubFinishHandlerBuild()
self.subFinishHandlers = {}
self.subFinishHandlers["42201"] = self.OnSubFinish42201
-- self.subFinishHandlers["38203"] = self.OnSubFinish38203
end
-- local param begin
-- local param end
-- local method begin
--@region sub start handlers
function Quest422:OnSubFinish42201(quest)
print("42201 finish: Play CutScene")
self:PlayCutscene(q422Cfg.SwordBreak)
end
-- function Quest382:OnSubFinish38203(quest)
-- print("OnFinished 38202")
-- end
--@endregion
function Quest422:Start()
end
function Quest422:OnDestroy()
end
return Quest422

View File

@@ -0,0 +1,38 @@
require('Actor/ActorCommon')
local npcActorProxy = require('Actor/Npc/NpcActorProxy')
local Gaia22003 = class("Gaia22003", npcActorProxy)
local q220Cfg = require('Actor/Quest/Q220/Config/Q220Config')
local gaiaData = q220Cfg.GaiaData
Gaia22003.defaultAlias = "Gaia22003"
-- local method
function Gaia22003:StartBeFollow()
self:BeFollowTask(gaiaData.FirstPos, gaiaData.BeFollowLen, gaiaData.BeFollowFailedLen,
function(self, task)
if self.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(q220Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(true, nil)
end
self:Destroy(false)
elseif self.BeFollowState == BeFollowState.SUCCESS then
self:TurnTo(M.Euler2DirXZ(gaiaData.bornDir))
self:Standby()
end
end,
function(self, task)
self:Standby()
end
)
end
-- local method end
function Gaia22003:Start()
print("start!gaia22003")
self:StartBeFollow()
--self:SetPos(M.Pos(1428, 56.4, 176))
end
return Gaia22003

View File

@@ -0,0 +1,44 @@
require('Actor/ActorCommon')
local quest001 = require('Actor/Quest/Quest001Test')
local npcActorProxy = require('Actor/Npc/NpcActorProxy')
local Wendy22003 = class("Wendy22003", npcActorProxy)
Wendy22003.defaultAlias = "Wendy22003"
-- local config begin
local q220Cfg = require('Actor/Quest/Q220/Config/Q220Config')
local wendyData = q220Cfg.WendyData
local audienceInter = q220Cfg.AudienceInter
local extrasData = q220Cfg.ExtrasData
-- local config end
-- local param begin
-- local param end
-- local method
function Wendy22003:StartDance()
self:TurnTo(M.Euler2DirXZ(self.bornDir))
self:DoFreeStyle(1)
end
function Wendy22003:FinishDance(...)
print("finish dance))))))))))))))))))")
for i=1, #extrasData.ExtrasIDs do
local alias = extrasData.Extras .. tostring(i)
self:NotifyTo(alias, wendyData.EvtFinishDance)
end
self:Destroy(false)
end
-- local method end
function Wendy22003:Start()
print("start!wendy22003")
self:StartDance()
self:CallDelay(10, self.FinishDance)
end
function Wendy22003:OnDestroy()
print("wendy " .. self.configID .. " destroied")
end
return Wendy22003

View File

@@ -0,0 +1,70 @@
require('Actor/ActorCommon')
local npcActorProxy = require('Actor/Npc/NpcActorProxy')
local WendyAudience = class("WendyAudience", npcActorProxy)
WendyAudience.defaultAlias = "WendyAudience"
WendyAudience.seatPos = nil
WendyAudience.seatDir = nil
WendyAudience.returnCallback = nil
-- local config begin
local q220Cfg = require('Actor/Quest/Q220/Config/Q220Config')
local wendyData = q220Cfg.WendyData
local audienceInter = q220Cfg.AudienceInter
local extrasData = q220Cfg.ExtrasData
-- local config end
function WendyAudience:MoveToSeat()
print("move to seat ")
print(self.seatPos)
self:AddPriorityInter(InterTimingType.BTN, audienceInter)
self:WalkToTask(self.seatPos,
function(self, task)
self:TurnTo(M.Euler2DirXZ(self.seatDir))
self:Standby()
end,
function(self, task)
self:Standby()
end
)
end
function WendyAudience:ReturnToNormal()
print("ai return " .. tostring(self.configID))
self:ClearPriorityInter(InterTimingType.BTN)
self:WalkToTask(extrasData.ExtrasOriginPos[self.extrasIndex],
function(self, task)
self:TurnTo(M.Euler2DirXZ(extrasData.ExtrasOriginDir[self.extrasIndex]))
self:Standby()
if self.returnCallback ~= nil then
self:returnCallback()
end
end,
function(self, task)
self:Standby()
end
)
end
-- local method begin
function WendyAudience:OnEvent(evt)
if evt.evtType == wendyData.EvtFinishDance then
self:ReturnToNormal()
end
end
-- local method end
function WendyAudience:Start()
print("start!wendy audience " .. self.configID)
self:RegisterActorEvent(self.OnEvent)
self:MoveToSeat()
end
function WendyAudience:OnDestroy()
print("wendy audience " .. self.configID .. " destroied")
end
return WendyAudience

View File

@@ -0,0 +1,143 @@
require('Actor/ActorCommon')
local Q220Config = {}
Q220Config.MainID = 220
Q220Config.ActorAlias = "220"
Q220Config.SubIDs =
{
q22002 = 22002,
q22003 = 22003,
q22004 = 22004,
q22005 = 22005,
}
Q220Config.WendyData =
{
Wendy = "Wendy",
WendyScript = "Actor/Quest/Q220/Wendy22003",
WendyID = 102,
bornPos = M.Pos(1426, 56.4, 176),
bornDir = M.Dir(0, -36, 0),
EvtFinishDance = 10079
}
Q220Config.ExtrasData =
{
Extras = "Extras",
ExtrasAudience = "Actor/Quest/Q220/WendyAudience",
ExtrasIDs =
{
5,
37,
},
ExtrasOriginPos =
{
M.Pos(1429.2, 56.8, 184),
M.Pos(1425.79, 56.38, 178.15),
},
ExtrasOriginDir =
{
M.Dir(0, 0, 0),
M.Dir(0, 0, 0),
},
ExtrasSeatPos =
{
M.Pos(1424, 56.4, 177),
M.Pos(1425.79, 56.38, 178.15),
},
ExtrasSeatDir =
{
M.Dir(0, 150, 0),
M.Dir(0, 160, 0),
},
ExtrasReturnCallback =
{
nil,
function(self)
self:Destroy(false)
end
},
}
Q220Config.GaiaData =
{
Gaia = "Gaia",
GaiaScript = "Actor/Quest/Q220/Gaia22003",
GaiaID = 103,
bornPos = M.Pos(1403, 57.4, 195),
bornDir = M.Dir(0, -36, 0),
FirstPos = M.Pos(1397.4, 60, 363),
BeFollowLen = 10,
BeFollowFailedLen = 20,
}
Q220Config.AudienceInter =
{
{
{
type = InteractionType.STEER_TO,
steerType = DialogSteerType.TO_LOCAL_AVATAR,
duration = 1.0
},
{
type = InteractionType.CAMERA_MOVE,
cameraPosType = StoryCameraPosType.RELATIVE_TO_INTER,
camPosOffset = {x = 0, y = 0.5, z = 0},
nearLength = 2,
camTargetType = StoryCameraTargetType.TO_INTEE,
camForwardTargetOffset = {x = 0, y = 0.5, z = 0},
duration = 1.0,
lerpRatio = 5.0,
lerpPattern = 0
},
{
type = InteractionType.DIALOG,
dialogType = DialogType.LOCK_FRAME,
talkerName = "观众",
content = "跳舞跳得挺好啊"
}
},
{
{
type = InteractionType.DIALOG_FINISH,
},
{
type = InteractionType.STEER_TO,
steerType = DialogSteerType.RETURN,
duration = 1.0
},
{
type = InteractionType.CAMERA_MOVE,
cameraPosType = StoryCameraPosType.EXIT,
camPosOffset = {x = 0, y = 0, z = 0},
nearLength = 0,
camTargetType = StoryCameraTargetType.TO_INTEE,
camForwardTargetOffset = {x = 0, y = 0, z = 0},
duration = 1.0,
lerpRatio = 5.0,
lerpPattern = 1
}
}
}
Q220Config.MonsterData =
{
MonsterIDs = {20103026, 20105101},
}
Q220Config.CutsceneData =
{
Test1 = {
type = CutsceneType.TIME_LINE_PREFAB,
roleSheetPath = "",
resPath = "ART/Cutscene/Cs_UnlockCityCutScene",
startPosType = CutsceneInitPosType.RELATIVE_TO_LOCAL_AVATAR,
startOffset = {x = 0, y = 3, z = 0}
}
}
return Q220Config

View File

@@ -0,0 +1,48 @@
require('Actor/ActorCommon')
local quest301 = require('Actor/Quest/MQ301')
local npcActorProxy = require('Actor/Npc/NpcActorProxy')
local Ambor301 = class("Ambor301", npcActorProxy)
Ambor301.defaultAlias = "Ambor"
-- local config begin
local q301Cfg = require('Actor/Quest/Q301/Config/Q301Config')
local amborData = q301Cfg.AmborData
-- local config end
function Ambor301:Start()
print("start!Ambor301")
end
function Ambor301:ShowStart()
print("Ambor301:ShowStart")
self:SetPos(amborData.bornPos)
self:RunToTask(amborData.arguePos,
function(self, task)
self:TurnTo(M.Euler2DirXZ(amborData.argueDir))
self:Standby()
end
)
end
function Ambor301:Vanish()
print("Ambor301:Vanish()")
self:RunToTask(amborData.vanishPos,
function(self, task)
self:Destroy(false)
end
)
end
function Ambor301:VanishDirect(task)
print("Ambor301:VanishDirect()")
self:Destroy(false)
end
function Ambor301:OnDestroy()
print("ambor " .. self.configID .. " destroied")
end
return Ambor301

View File

@@ -0,0 +1,185 @@
require('Actor/ActorCommon')
local npcActorProxy = require('Actor/Npc/NpcActorProxy')
local Gaia301 = class("Gaia301", npcActorProxy)
local q301Cfg = require('Actor/Quest/Q301/Config/Q301Config')
local gaiaData = q301Cfg.GaiaData
Gaia301.defaultAlias = "Gaia"
-- local method
function Gaia301:StartBeFollow1()
self:ClearFollowTask()
self:BeFollowTask(gaiaData.firstPos, gaiaData.BeFollowLen, gaiaData.BeFollowFailedLen,
function(self, task)
if self.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(q301Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(true, nil)
end
--self:Destroy(false)
elseif self.BeFollowState == BeFollowState.SUCCESS then
self:TurnTo(M.Euler2DirXZ(gaiaData.bornDir))
self:Standby()
local quest = actorMgr:GetActor(q301Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
self:CheckNpcTalk()
end
end,
function(self, task)
self:Standby()
end
)
end
function Gaia301:Sleep()
self:DoFreeStyle(1)
end
function Gaia301:OnSleep()
print("OnSleep")
self:ClearFollowTask()
local task = self:CreateTask(TaskID.MOVE_TASK_ID, LuaTaskType.NORMAL)
task:StartEvent('+',self.Sleep)
task:PauseEvent('+', self.Sleep)
task:ResumeEvent('+', self.Sleep)
task:FinishEvent('+', self.Sleep)
end
function Gaia301:StartBeFollow2()
self:ClearFollowTask()
self:BeFollowTask(gaiaData.secondPos, gaiaData.BeFollowLen, gaiaData.BeFollowFailedLen,
function(self, task)
if self.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(q301Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(true, nil)
end
--self:Destroy(false)
elseif self.BeFollowState == BeFollowState.SUCCESS then
self:TurnTo(M.Euler2DirXZ(gaiaData.bornDir))
self:OnSleep()
local quest = actorMgr:GetActor(q301Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
end,
function(self, task)
self:Standby()
end
)
end
function Gaia301:StartBeFollow5()
print("GaiaFollow5")
self:ClearFollowTask()
self:BeFollowTask(gaiaData.fifthPos, gaiaData.BeFollowLen, gaiaData.BeFollowFailedLen,
function(self, task)
if self.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(q301Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(true, nil)
end
elseif self.BeFollowState == BeFollowState.SUCCESS then
self:StartBeFollow3()
end
end,
function(self, task)
self:Standby()
end
)
end
function Gaia301:StartBeFollow3()
self:ClearFollowTask()
self:BeFollowTask(gaiaData.thirdPos, gaiaData.BeFollowLen, gaiaData.BeFollowFailedLen,
function(self, task)
if self.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(q301Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(true, nil)
end
--self:Destroy(false)
elseif self.BeFollowState == BeFollowState.SUCCESS then
self:TurnTo(M.Euler2DirXZ(gaiaData.bornDir))
self:Standby()
local quest = actorMgr:GetActor(q301Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
end,
function(self, task)
self:Standby()
end
)
end
function Gaia301:StartBeFollow6()
print("GaiaFollow5")
self:ClearFollowTask()
self:BeFollowTask(gaiaData.sixthPos, gaiaData.BeFollowLen, gaiaData.BeFollowFailedLen,
function(self, task)
if self.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(q301Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(true, nil)
end
elseif self.BeFollowState == BeFollowState.SUCCESS then
self:StartBeFollow4()
end
end,
function(self, task)
self:Standby()
end
)
end
function Gaia301:StartBeFollow4()
self:ClearFollowTask()
self:BeFollowTask(gaiaData.fourthPos, gaiaData.BeFollowLen, gaiaData.BeFollowFailedLen,
function(self, task)
if self.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(q301Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(true, nil)
end
--self:Destroy(false)
elseif self.BeFollowState == BeFollowState.SUCCESS then
self:TurnTo(M.Euler2DirXZ(gaiaData.bornDir))
self:Standby()
local quest = actorMgr:GetActor(q301Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
end,
function(self, task)
self:Standby()
end
)
end
function Gaia301:Show()
self:ClearFollowTask()
self:WalkToTask(gaiaData.showPos,
function(self, task)
local quest = actorMgr:GetActor(q301Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
self:TurnTo(M.Euler2DirXZ(gaiaData.showDir))
self:Standby()
end
)
end
-- local method end
function Gaia301:Start()
end
return Gaia301

View File

@@ -0,0 +1,80 @@
require('Actor/ActorCommon')
local quest301 = require('Actor/Quest/MQ301')
local npcActorProxy = require('Actor/Npc/NpcActorProxy')
local Robam301 = class("Robam301", npcActorProxy)
Robam301.defaultAlias = "Robam301"
-- local config begin
local q301Cfg = require('Actor/Quest/Q301/Config/Q301Config')
local robamData = q301Cfg.RobamData
function Robam301:PreGetAlias()
local robam = robamData.Robam
return robam
end
-- local config end
-- local param begin
-- local param end
-- function Robam301:CreateUActor(alias)
-- local uActor = actorUtils.CreateActor(self, ActorType.NPC_ACTOR, alias)
-- uActor = actorUtils.CreateNpcActor(self.configID, self.bornPos, uActor)
-- return uActor
-- end
-- local method
-- local method end
function Robam301:Start()
print("start!Robam301")
self:StartDaily()
end
function Robam301:ShowStart()
print("Robam301:ShowStart")
self:SetPos(robamData.bornPos)
self:RunToTask(robamData.arguePos,
function(self, task)
self:TurnTo(M.Euler2DirXZ(robamData.argueDir))
self:Standby()
end
)
end
function Robam301:StartDay()
self:RunToTask(robamData.bornPos,
function(self, task)
self:TurnTo(M.Euler2DirXZ(robamData.bornDir))
self:Standby()
end
)
end
function Robam301:StartNight()
self:RunToTask(sceneData:GetDummyPoint(3,"Q301Folk1Home").pos,
function(self, task)
self:Standby()
end
)
end
function Robam301:StartDaily()
print("Robam301:StartDaily()")
self:RegisterSelfDayTime(self.StartDay)
self:RegisterSelfNightTime(self.StartNight)
if globalActor.isDay then
self:StartDay()
else
self:StartNight()
end
end
function Robam301:OnDestroy()
--print("robam " .. self.configID .. " destroied")
end
return Robam301

View File

@@ -0,0 +1,33 @@
require('Actor/ActorCommon')
local quest301 = require('Actor/Quest/MQ301')
local npcActorProxy = require('Actor/Npc/NpcActorProxy')
local Test301 = class("Test301", npcActorProxy)
Test301.defaultAlias = "Test301"
-- local config begin
local q301Cfg = require('Actor/Quest/Q301/Config/Q301Config')
local testData = q301Cfg.TestData
-- local config end
-- local param begin
-- local param end
-- local method
-- local method end
function Test301:Start()
print("start!Test301")
self:SetPos(testData.bornPos)
print(testData.bornPos)
self:TurnTo(M.Euler2DirXZ(self.bornDir))
self:Standby()
end
function Test301:OnDestroy()
print("test " .. self.configID .. " destroied")
end
return Test301

View File

@@ -0,0 +1,72 @@
require('Actor/ActorCommon')
local quest301 = require('Actor/Quest/MQ301')
local npcActorProxy = require('Actor/Npc/NpcActorProxy')
local Wendy301 = class("Wendy301", npcActorProxy)
Wendy301.defaultAlias = "Wendy301"
-- local config begin
local q301Cfg = require('Actor/Quest/Q301/Config/Q301Config')
local wendyData = q301Cfg.WendyData
local audienceInter = q301Cfg.AudienceInter
local extrasData = q301Cfg.ExtrasData
function Wendy301:PreGetAlias()
local wendy = wendyData.Wendy
return wendy
end
-- local config end
-- local method
function Wendy301:StartDance()
self:TurnTo(M.Euler2DirXZ(wendyData.bornDir))
self:DoFreeStyle(1)
end
function Wendy301:FinishDance(...)
print("finish dance))))))))))))))))))")
for i=1, #extrasData.ExtrasIDs do
local alias = extrasData.Extras .. tostring(i)
self:NotifyTo(alias, wendyData.EvtFinishDance)
end
self:Standby()
local quest = actorMgr:GetActor(q301Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
--self:Destroy(false)
end
function Wendy301:Vanish()
print("Wendy Vanish")
local quest = actorMgr:GetActor(q301Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
globalActor:UnSpawn(wendyData.Wendy)
self:Destroy(false)
end
function Wendy301:Escape()
print("escape begin")
self:RunToTask(wendyData.vanishPos, nil)
self:CallDelay(5, self.Vanish)
for i=1, #extrasData.ExtrasIDs do
local alias = extrasData.Extras .. tostring(i)
self:NotifyTo(alias, wendyData.EvtFinishDance)
end
end
-- local method end
function Wendy301:Start()
print("start!wendy301")
--self:SetPos(wendyData.bornPos)
-- self:StartDance()
-- self:CallDelay(10, self.FinishDance)
end
function Wendy301:OnDestroy()
print("wendy " .. wendyData.WendyID .. " destroied")
end
return Wendy301

View File

@@ -0,0 +1,215 @@
require('Actor/ActorCommon')
local npcActorProxy = require('Actor/Npc/NpcActorProxy')
local WendyAudience = class("WendyAudience", npcActorProxy)
WendyAudience.defaultAlias = "WendyAudience"
WendyAudience.seatPos = nil
WendyAudience.seatDir = nil
WendyAudience.bornPos = nil
WendyAudience.bornDir = nil
WendyAudience.returnCallback = nil
WendyAudience.pointID = 1
WendyAudience.currWeather = WeatherType.ClearSky
-- local config begin
local q301Cfg = require('Actor/Quest/Q301/Config/Q301Config')
local q401Cfg = require('Actor/Quest/Q401/Q401Config')
local wendyData = q301Cfg.WendyData
local audienceInter = q301Cfg.AudienceInter
local extrasData = q301Cfg.ExtrasData
function WendyAudience:PreGetAlias()
local extraAlias = extrasData.Extras .. tostring(self.dataIndex)
return extraAlias
end
-- local config end
function WendyAudience:MoveToSeat()
print("move to seat ")
self:AddPriorityInter(InterTimingType.BTN, audienceInter)
self:RunToTask(self.seatPos,
function(self, task)
self:TurnTo(M.Euler2DirXZ(self.seatDir))
self:Standby()
end,
function(self, task)
self:Standby()
end
)
end
function WendyAudience:ReturnToNormal()
--print("ai return " .. tostring(self.configID))
self:ClearPriorityInter(InterTimingType.BTN)
self:WalkToTask(extrasData.ExtrasOriginPos[self.extrasIndex],
function(self, task)
self:TurnTo(M.Euler2DirXZ(extrasData.ExtrasOriginDir[self.extrasIndex]))
self:Standby()
if self.returnCallback ~= nil then
self:returnCallback()
end
end,
function(self, task)
self:Standby()
end
)
end
-- local method begin
function WendyAudience:OnEvent(evt)
if evt.evtType == wendyData.EvtFinishDance then
self:ReturnToNormal()
end
end
function WendyAudience:IsRaining()
if self.currWeather == WeatherType.Rain or
self.currWeather == WeatherType.Storm then
return true
end
return false
end
function WendyAudience:FinishBehave()
if self.pointID == 1 then
self.pointID = 2
self:ClearFollowTask()
self:WalkToTask(extrasData.ExtrasDaily2Pos[self.extrasIndex],self.Behave,self.Standby)
elseif self.pointID == 2 then
self.pointID =3
self:ClearFollowTask()
self:WalkToTask(extrasData.ExtrasDaily3Pos[self.extrasIndex],self.Behave,self.Standby)
elseif self.pointID == 3 then
self.pointID = 4
self:ClearFollowTask()
self:WalkToTask(extrasData.ExtrasDaily4Pos[self.extrasIndex],self.Behave,self.Standby)
elseif self.pointID == 4 then
self.pointID = 1
self:ClearFollowTask()
self:WalkToTask(extrasData.ExtrasDaily1Pos[self.extrasIndex],self.Behave,self.Standby)
end
end
function WendyAudience:Behave()
if self.pointID == 1 or self.pointID == 3 then
self:DoFreeStyle(1)
self:CallDelay(5,self.FinishBehave)
else
self:DoFreeStyle(0)
self:CallDelay(5,self.FinishBehave)
end
end
function WendyAudience:StartDay()
--print("audience StartDay")
-- if IsRaining() then
-- return
-- end
self.pointID = 1
self:ClearFollowTask()
self:WalkToTask(extrasData.ExtrasDaily1Pos[self.extrasIndex],self.Behave,self.Standby)
end
function WendyAudience:StartNight()
--print("audience StartNight")
-- if IsRaining() then
-- return
-- end
--print("天黑了,回家")
self:ClearFollowTask()
self:WalkToTask(extrasData.ExtrasHomePos[self.extrasIndex],self.Standby,self.Standby)
end
function WendyAudience:OnWeather(weatherType)
--print("OnWeather")
--本来就在下雨
if self:IsRaining() then
--现在不下了
if weatherType ~= WeatherType.Rain and
weatherType ~= WeatherType.Storm then
--是白天,就跑出来
if globalActor.isDay then
self.currWeather = weatherType
print("雨停了,是白天,跑出来")
self:StartDay()
end
end
self.currWeather = weatherType
return
end
self.currWeather = weatherType
--本来没下雨,现在也不下雨了
if weatherType ~= WeatherType.Rain and
weatherType ~= WeatherType.Storm then
return
end
--本来没下雨,现在下雨了,而且是白天
if globalActor.isDay then
--print("下雨了,躲雨")
self:ClearFollowTask()
self:WalkToTask(extrasData.ExtrasOriginPos[self.extrasIndex],self.Standby,self.Standby)
end
end
function WendyAudience:MoveHome()
--print("任务401回家")
self:ClearFollowTask()
self:WalkToTask(extrasData.ExtrasHomePos[self.extrasIndex],
function(self,task)
local quest = actorMgr:GetActor(q401Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
)
end
function WendyAudience:StartDaily()
--print("audience StartDaily")
self:RegisterSelfDayTime(self.StartDay)
self:RegisterSelfNightTime(self.StartNight)
self:RegisterSelfWeatherChange(self.OnWeather)
if globalActor.isDay then
self:StartDay()
else
self:StartNight()
end
end
function WendyAudience:ShowStart()
print("audience ShowStart")
self:SetPos(self.bornPos)
self:RegisterActorEvent(self.OnEvent)
self:MoveToSeat()
end
-- local method end
function WendyAudience:OnPostDataPrepare()
self.extrasIndex = self.dataIndex
self.seatPos = extrasData.ExtrasSeatPos[self.extrasIndex]
self.seatDir = extrasData.ExtrasSeatDir[self.extrasIndex]
self.bornPos = extrasData.ExtrasOriginPos[self.extrasIndex]
self.bornDir = extrasData.ExtrasOriginDir[self.extrasIndex]
self.returnCallback = extrasData.ExtrasReturnCallback[self.extrasIndex]
end
function WendyAudience:Start()
--print("start!wendy audience " .. self.configID)
self:StartDaily()
end
function WendyAudience:OnDestroy()
--print("wendy audience " .. self.configID .. " destroied")
-- self:UnregisterSelfNightTime(self.StartDay)
-- self:UnregisterSelfNightTime(self.StartNight)
-- self:UnregisterSelfWeatherChange(self.OnWeather)
end
return WendyAudience

View File

@@ -0,0 +1,306 @@
require('Actor/ActorCommon')
local Q301Config = {}
Q301Config.MainID = 301
Q301Config.ActorAlias = "301"
Q301Config.SubIDs =
{
q30100 = 30100,
q30101 = 30101,
q30102 = 30102,
q30103 = 30103,
q30104 = 30104,
q30105 = 30105,
q30106 = 30106,
q30107 = 30107,
q30108 = 30108,
q30109 = 30109,
q30110 = 30110,
q30111 = 30111,
q30112 = 30112,
q30113 = 30113,
q30114 = 30114,
q30115 = 30115,
q30116 = 30116,
q30117 = 30117,
q30118 = 30118,
}
Q301Config.WendyData =
{
Wendy = "Wendy",
WendyScript = "Actor/Quest/Q301/Wendy301",
WendyID = 1001,
-- bornPos = M.Pos(1444.513, 60.50317, 136.6221),
-- bornDir = M.Dir(0, 0, 0),
-- vanishPos = M.Pos(1449, 65, 116),
bornPos = sceneData:GetDummyPoint(3, "Q301WendyPlay").pos,
bornDir = sceneData:GetDummyPoint(3, "Q301WendyPlay").rot,
vanishPos = sceneData:GetDummyPoint(3,"Q301WendyVanish").pos,
EvtFinishDance = 10079,
}
Q301Config.RobamData =
{
Robam = "Robam",
RobamScript = "Actor/Quest/Q301/Robam301",
RobamID = 1003,
-- bornPos = M.Pos(1440, 60.3, 136),
-- bornDir = M.Dir(0, 76, 0),
-- arguePos = M.Pos(1440, 60.3, 136),
-- argueDir = M.Dir(0, 76, 0),
EvtFinishDance = 10079,
bornPos = sceneData:GetDummyPoint(3,"Q301RobamBorn").pos,
bornDir = sceneData:GetDummyPoint(3,"Q301RobamBorn").rot,
arguePos = sceneData:GetDummyPoint(3,"Q301RobamArgue").pos,
argueDir = sceneData:GetDummyPoint(3,"Q301RobamArgue").rot,
}
Q301Config.AmborData =
{
Ambor = "Ambor",
AmborScript = "Actor/Quest/Q301/Ambor301",
AmborID = 1002,
-- bornPos = M.Pos(1443, 59.4, 142.7),
-- bornDir = M.Dir(0, 170, 0),
-- arguePos = M.Pos(1443, 59.4, 142.7),
-- argueDir = M.Dir(0, 170, 0),
-- vanishPos = M.Pos(1449, 65, 116),
EvtFinishDance = 10079,
bornPos = sceneData:GetDummyPoint(3,"Q301AmborBorn").pos,
bornDir = sceneData:GetDummyPoint(3,"Q301AmborBorn").rot,
arguePos = sceneData:GetDummyPoint(3,"Q301AmborArgue").pos,
argueDir = sceneData:GetDummyPoint(3,"Q301AmborArgue").rot,
vanishPos = sceneData:GetDummyPoint(3,"Q301AmborVanish").pos,
}
Q301Config.GaiaData =
{
Gaia = "Gaia",
GaiaScript = "Actor/Quest/Q301/Gaia301",
GaiaID = 1004,
-- bornPos = M.Pos(1455, 62.6, 156.5),
-- bornDir = M.Dir(0, 0, 0),
-- showPos = M.Pos(1448.2, 60.3, 139.9),
-- showDir = M.Dir(0, 0, 0),
-- firstPos = M.Pos(1433, 57, 169),
-- secondPos = M.Pos(1415, 56, 182),
-- thirdPos = M.Pos(1411, 56, 192),
-- fourthPos = M.Pos(1407, 55, 202),
BeFollowLen = 10,
BeFollowFailedLen = 50,
bornPos = sceneData:GetDummyPoint(3,"Q301GaiaBorn").pos,
bornDir = sceneData:GetDummyPoint(3,"Q301GaiaBorn").rot,
showPos = sceneData:GetDummyPoint(3,"Q301GaiaShow").pos,
showDir = sceneData:GetDummyPoint(3,"Q301GaiaShow").rot,
firstPos = sceneData:GetDummyPoint(3,"Q301GaiaFollow1").pos,
secondPos = sceneData:GetDummyPoint(3,"Q301GaiaFollow2").pos,
thirdPos = sceneData:GetDummyPoint(3,"Q301GaiaFollow3").pos,
fifthPos = sceneData:GetDummyPoint(3,"Q301GaiaFollow4").pos,
sixthPos = sceneData:GetDummyPoint(3,"Q301GaiaFollow5").pos,
fourthPos = sceneData:GetDummyPoint(3,"Q301GaiaFollowFinal").pos,
}
Q301Config.ExtrasData =
{
Extras = "Extras",
ExtrasAudience = "Actor/Quest/Q301/WendyAudience",
ExtrasIDs =
{
1101,
1102,
1103,
1104,
},
ExtrasOriginPos =
{
-- M.Pos(1463, 64, 141),
-- M.Pos(1436, 61, 131),
-- M.Pos(1429, 60, 136),
-- M.Pos(1436, 60, 143),
sceneData:GetDummyPoint(3,"Q301Folk1Born").pos,
sceneData:GetDummyPoint(3,"Q301Folk2Born").pos,
sceneData:GetDummyPoint(3,"Q301Folk3Born").pos,
sceneData:GetDummyPoint(3,"Q301Folk4Born").pos,
},
ExtrasOriginDir =
{
-- M.Dir(0, 219, 0),
-- M.Dir(0, 181, 0),
-- M.Dir(0, 147, 0),
-- M.Dir(0, 129, 0),
sceneData:GetDummyPoint(3,"Q301Folk1Born").rot,
sceneData:GetDummyPoint(3,"Q301Folk2Born").rot,
sceneData:GetDummyPoint(3,"Q301Folk3Born").rot,
sceneData:GetDummyPoint(3,"Q301Folk4Born").rot,
},
ExtrasSeatPos =
{
-- M.Pos(1448.2, 60.3, 139.9),
-- M.Pos(1445.1, 59.8, 140.9),
-- M.Pos(1441.9, 59.8, 140.7),
-- M.Pos(1439.5, 60.1, 139.5),
sceneData:GetDummyPoint(3,"Q301Audience1").pos,
sceneData:GetDummyPoint(3,"Q301Audience2").pos,
sceneData:GetDummyPoint(3,"Q301Audience3").pos,
sceneData:GetDummyPoint(3,"Q301Audience4").pos,
},
ExtrasSeatDir =
{
-- M.Dir(0, 219, 0),
-- M.Dir(0, 181, 0),
-- M.Dir(0, 147, 0),
-- M.Dir(0, 129, 0),
sceneData:GetDummyPoint(3,"Q301Audience1").rot,
sceneData:GetDummyPoint(3,"Q301Audience2").rot,
sceneData:GetDummyPoint(3,"Q301Audience3").rot,
sceneData:GetDummyPoint(3,"Q301Audience4").rot,
},
ExtrasDaily1Pos =
{
sceneData:GetDummyPoint(3,"Q301Folk1Pos1").pos,
sceneData:GetDummyPoint(3,"Q301Folk2Pos1").pos,
sceneData:GetDummyPoint(3,"Q301Folk3Pos1").pos,
sceneData:GetDummyPoint(3,"Q301Folk4Pos1").pos,
},
ExtrasDaily2Pos =
{
sceneData:GetDummyPoint(3,"Q301Folk1Pos2").pos,
sceneData:GetDummyPoint(3,"Q301Folk2Pos2").pos,
sceneData:GetDummyPoint(3,"Q301Folk3Pos2").pos,
sceneData:GetDummyPoint(3,"Q301Folk4Pos2").pos,
},
ExtrasDaily3Pos =
{
sceneData:GetDummyPoint(3,"Q301Folk1Pos3").pos,
sceneData:GetDummyPoint(3,"Q301Folk2Pos3").pos,
sceneData:GetDummyPoint(3,"Q301Folk3Pos3").pos,
sceneData:GetDummyPoint(3,"Q301Folk4Pos3").pos,
},
ExtrasDaily4Pos =
{
sceneData:GetDummyPoint(3,"Q301Folk1Pos4").pos,
sceneData:GetDummyPoint(3,"Q301Folk2Pos4").pos,
sceneData:GetDummyPoint(3,"Q301Folk3Pos4").pos,
sceneData:GetDummyPoint(3,"Q301Folk4Pos4").pos,
},
ExtrasHomePos =
{
sceneData:GetDummyPoint(3,"Q301Folk1Home").pos,
sceneData:GetDummyPoint(3,"Q301Folk2Home").pos,
sceneData:GetDummyPoint(3,"Q301Folk3Home").pos,
sceneData:GetDummyPoint(3,"Q301Folk4Home").pos,
},
ExtrasReturnCallback =
{
function(self)
self:StartDaily()
end,
function(self)
self:StartDaily()
end,
function(self)
self:StartDaily()
end,
function(self)
self:StartDaily()
end
},
}
Q301Config.MeiData =
{
Mei = "Mei",
MeiScript = "Actor/Npc/Npc101Test",
MeiID = 101,
bornPos = M.Pos(1460, 65, 152),
bornDir = M.Dir(0, 0, 0),
}
Q301Config.TestData =
{
Test = "Test",
TestScript = "Actor/Quest/Q301/Test301",
TestID = 1105,
bornPos = M.Pos(1443, 59.4, 162.7),
bornDir = M.Dir(0, 170, 0),
vanishPos = M.Pos(1449, 65, 116),
EvtFinishDance = 10079
}
Q301Config.AudienceInter =
{
{
{
type = InteractionType.STEER_TO,
steerType = DialogSteerType.TO_LOCAL_AVATAR,
duration = 1.0
},
{
type = InteractionType.CAMERA_MOVE,
cameraPosType = StoryCameraPosType.RELATIVE_TO_INTER,
camPosOffset = {x = 0, y = 0.5, z = 0},
nearLength = 2,
camTargetType = StoryCameraTargetType.TO_INTEE,
camForwardTargetOffset = {x = 0, y = 0.5, z = 0},
duration = 1.0,
lerpRatio = 5.0,
lerpPattern = 0
},
{
type = InteractionType.DIALOG,
dialogType = DialogType.LOCK_FRAME,
talkerName = "市民",
content = "唱的真好听啊,只是风魔龙已经不再守护我们了啊"
}
},
{
{
type = InteractionType.DIALOG_FINISH,
},
{
type = InteractionType.STEER_TO,
steerType = DialogSteerType.RETURN,
duration = 1.0
},
{
type = InteractionType.CAMERA_MOVE,
cameraPosType = StoryCameraPosType.EXIT,
camPosOffset = {x = 0, y = 0, z = 0},
nearLength = 0,
camTargetType = StoryCameraTargetType.TO_INTEE,
camForwardTargetOffset = {x = 0, y = 0, z = 0},
duration = 1.0,
lerpRatio = 5.0,
lerpPattern = 1
}
}
}
Q301Config.MonsterData =
{
MonsterIDs = {21010301, 21010301},
}
Q301Config.Mq1TimeCfg =
{
type = CutsceneType.TIME_LINE_PREFAB,
roleSheetPath = "",
resPath = "ART/Cutscene/Cs_MD_MQ1_Cutscene01",
startPosType = CutsceneInitPosType.FREE,
startOffset = {0, 0, 0}
}
return Q301Config

View File

@@ -0,0 +1,28 @@
require('Actor/ActorCommon')
local Q303Config = {}
Q303Config.MainID = 303
Q303Config.ActorAlias = "303"
Q303Config.SubIDs =
{
q30301 = 30301,
q30302 = 30302,
q30303 = 30303,
q30304 = 30304,
q30305 = 30305,
q30306 = 30306,
}
Q303Config.TestTimeCfg =
{
type = CutsceneType.TIME_LINE_PREFAB,
roleSheetPath = "",
resPath = "ART/Cutscene/Cs_MdGoddess_Lite01_CamMove",
canSkip = false,
startPosType = CutsceneInitPosType.FREE,
startOffset = {0, 0, 0}
}
return Q303Config

View File

@@ -0,0 +1,60 @@
require('Actor/ActorCommon')
local quest304 = require('Actor/Quest/MQ304')
local npcActorProxy = require('Actor/Npc/NpcActorProxy')
local Dragon = class("Dragon", npcActorProxy)
Dragon.defaultAlias = "Dragon"
Dragon.pointID = 1
-- local config begin
local q304Cfg = require('Actor/Quest/Q304/Q304Config')
local q361Cfg = require('Quest/Client/Q361ClientConfig')
local DragonData = q304Cfg.DragonData
function Dragon:PreGetAlias()
local Dragon = DragonData.Dragon
return Dragon
end
-- local config end
-- local param begin
-- local param end
-- local method
function Dragon:FlyCircle()
if self.pointID == DragonData.CircleNum then
self.pointID = 1
else
self.pointID = self.pointID + 1
end
print("DragonPos"..tostring(self.pointID))
self:ClearFollowTask()
self:SwitchAirMode(true)
self:WalkToTask(DragonData.DragonPos[self.pointID], self.Standby, self.Standby)
self:CallDelay(5, self.FlyCircle)
end
function Dragon:FlyCircle2()
if self.pointID == DragonData.CircleNum then
self.pointID = 1
else
self.pointID = self.pointID + 1
end
print("DragonPos"..tostring(self.pointID))
self:ClearFollowTask()
self:SwitchAirMode(true)
self:WalkToTask(DragonData.DragonPos[self.pointID], self.FlyCircle, self.Standby)
end
-- local method end
function Dragon:Start()
print("start!Dragon")
end
function Dragon:OnDestroy()
print("Dragon " .. DragonData.DragonID .. " destroied")
end
return Dragon

View File

@@ -0,0 +1,171 @@
require('Actor/ActorCommon')
local Q304Config = {}
Q304Config.MainID = 304
Q304Config.ActorAlias = "304"
Q304Config.SubIDs =
{
q30400 = 30400,
q30401 = 30401,
q30402 = 30402,
q30403 = 30403,
q30404 = 30404,
q30405 = 30405,
q30406 = 30406,
q30407 = 30407,
q30408 = 30408,
q30409 = 30409,
q30410 = 30410,
}
Q304Config.AmborData =
{
Ambor = "Ambor",
AmborScript = "Actor/Quest/Q301/Ambor301",
AmborID = 1002,
hiddenPos = sceneData:GetDummyPoint(3,"Q301Hidden").pos,
hiddenDir = sceneData:GetDummyPoint(3,"Q301Hidden").rot,
bornPos = sceneData:GetDummyPoint(3,"Q301AmborBorn").pos,
bornDir = sceneData:GetDummyPoint(3,"Q301AmborBorn").rot,
arguePos = sceneData:GetDummyPoint(3,"Q301AmborArgue").pos,
argueDir = sceneData:GetDummyPoint(3,"Q301AmborArgue").rot,
feather1Pos = sceneData:GetDummyPoint(3,"Q304Ambor1").pos,
feather1Dir = sceneData:GetDummyPoint(3,"Q304Ambor1").rot,
feather2Pos = sceneData:GetDummyPoint(3,"Q304Ambor2").pos,
feather2Dir = sceneData:GetDummyPoint(3,"Q304Ambor2").rot,
feather3Pos = sceneData:GetDummyPoint(3,"Q304Ambor3").pos,
feather3Dir = sceneData:GetDummyPoint(3,"Q304Ambor3").rot,
feather4Pos = sceneData:GetDummyPoint(3,"Q304Ambor4").pos,
feather4Dir = sceneData:GetDummyPoint(3,"Q304Ambor4").rot,
}
Q304Config.FeatherData =
{
Feather = "Feather",
FeatherGadgetID = 70300013,
feather1Pos = sceneData:GetDummyPoint(3,"Q304Feather1").pos,
feather1Dir = sceneData:GetDummyPoint(3,"Q304Feather1").rot,
feather2Pos = sceneData:GetDummyPoint(3,"Q304Feather2").pos,
feather2Dir = sceneData:GetDummyPoint(3,"Q304Feather2").rot,
feather3Pos = sceneData:GetDummyPoint(3,"Q304Feather3").pos,
feather3Dir = sceneData:GetDummyPoint(3,"Q304Feather3").rot,
feather4Pos = sceneData:GetDummyPoint(3,"Q304Feather4").pos,
feather4Dir = sceneData:GetDummyPoint(3,"Q304Feather4").rot,
}
Q304Config.WindData =
{
Wind = "Wind",
WindGadgetID = 40200020,
wind1Pos = sceneData:GetDummyPoint(3,"Q304WindRise1").pos,
wind1Dir = sceneData:GetDummyPoint(3,"Q304WindRise1").rot,
wind2Pos = sceneData:GetDummyPoint(3,"Q304WindRise2").pos,
wind2Dir = sceneData:GetDummyPoint(3,"Q304WindRise2").rot,
wind3Pos = sceneData:GetDummyPoint(3,"Q304WindRise3").pos,
wind3Dir = sceneData:GetDummyPoint(3,"Q304WindRise3").rot,
wind4Pos = sceneData:GetDummyPoint(3,"Q304WindRise4").pos,
wind4Dir = sceneData:GetDummyPoint(3,"Q304WindRise4").rot,
wind5Pos = sceneData:GetDummyPoint(3,"Q304WindRise5").pos,
wind5Dir = sceneData:GetDummyPoint(3,"Q304WindRise5").rot,
wind6Pos = sceneData:GetDummyPoint(3,"Q304WindRise6").pos,
wind6Dir = sceneData:GetDummyPoint(3,"Q304WindRise6").rot,
wind7Pos = sceneData:GetDummyPoint(3,"Q304WindRise7").pos,
wind7Dir = sceneData:GetDummyPoint(3,"Q304WindRise7").rot,
wind8Pos = sceneData:GetDummyPoint(3,"Q304WindRise8").pos,
wind8Dir = sceneData:GetDummyPoint(3,"Q304WindRise8").rot,
wind9Pos = sceneData:GetDummyPoint(3,"Q304WindRise9").pos,
wind9Dir = sceneData:GetDummyPoint(3,"Q304WindRise9").rot,
wind10Pos = sceneData:GetDummyPoint(3,"Q304WindRise10").pos,
wind10Dir = sceneData:GetDummyPoint(3,"Q304WindRise10").rot,
wind11Pos = sceneData:GetDummyPoint(3,"Q304WindRise11").pos,
wind11Dir = sceneData:GetDummyPoint(3,"Q304WindRise11").rot,
wind12Pos = sceneData:GetDummyPoint(3,"Q304WindRise12").pos,
wind12Dir = sceneData:GetDummyPoint(3,"Q304WindRise12").rot,
wind13Pos = sceneData:GetDummyPoint(3,"Q304WindRise13").pos,
wind13Dir = sceneData:GetDummyPoint(3,"Q304WindRise13").rot,
Wall = "Wall",
WallGadgetID = 70700001,
WallPos = { x = 2288, y = 220, z = -4970 },
WallDir = { x = 0.0, y = 0.0, z = 0.0 },
Skybox = "Skybox",
SkyboxGadgetID = 70700002,
SkyboxPos = { x = 2252, y = 209, z = -5002 },
-- SkyboxPos = { x = 0.0, y = 0.0, z = 0.0 },
SkyboxDir = { x = 0.0, y = 0.0, z = 0.0 },
}
Q304Config.DragonData =
{
Dragon = "Dragon",
DragonScript = "Actor/Quest/Q304/Dragon",
DragonID = 1010,
CircleNum = 6,
DragonPos =
{
sceneData:GetDummyPoint(3,"Q304Dragon1").pos,
sceneData:GetDummyPoint(3,"Q304Dragon2").pos,
sceneData:GetDummyPoint(3,"Q304Dragon3").pos,
sceneData:GetDummyPoint(3,"Q304Dragon4").pos,
sceneData:GetDummyPoint(3,"Q304Dragon5").pos,
sceneData:GetDummyPoint(3,"Q304Dragon6").pos,
},
DragonDir =
{
sceneData:GetDummyPoint(3,"Q304Dragon1").rot,
sceneData:GetDummyPoint(3,"Q304Dragon2").rot,
sceneData:GetDummyPoint(3,"Q304Dragon3").rot,
sceneData:GetDummyPoint(3,"Q304Dragon4").rot,
sceneData:GetDummyPoint(3,"Q304Dragon5").rot,
sceneData:GetDummyPoint(3,"Q304Dragon6").rot,
}
}
Q304Config.AmborNarratorFlow1 =
{
{dialogID = 3040201, audioEvtName = "", duration = 3},
{dialogID = 3040202, audioEvtName = "", duration = 3},
{dialogID = 3040203, audioEvtName = "", duration = 3},
}
Q304Config.AmborNarratorFlow2 =
{
{dialogID = 3040301, audioEvtName = "", duration = 3},
{dialogID = 3040302, audioEvtName = "", duration = 3},
{dialogID = 3040303, audioEvtName = "", duration = 3},
}
Q304Config.AmborNarratorFlow3 =
{
{dialogID = 3040401, audioEvtName = "", duration = 3},
{dialogID = 3040402, audioEvtName = "", duration = 3},
}
Q304Config.DragonCircleCutScene =
{
type = CutsceneType.TIME_LINE_PREFAB,
roleSheetPath = "",
resPath = "ART/CameraAni/Quest/Ca_DragonFly",
startPosType = CutsceneInitPosType.FREE,
startOffset = {x = 0, y = 0, z = 0}
}
Q304Config.AmborNoReplyInter =
{
{
{
type = InteractionType.DIALOG,
dialogType = DialogType.LOCK_FRAME,
talkerName = "安柏",
content = "快点跟上来"
}
},
}
return Q304Config

View File

@@ -0,0 +1,102 @@
require('Actor/ActorCommon')
local Q305Config = {}
Q305Config.MainID = 305
Q305Config.ActorAlias = "305"
Q305Config.SubIDs =
{
q30500 = 30500,
q30501 = 30501,
q30502 = 30502,
q30503 = 30503,
q30504 = 30504,
q30505 = 30505,
q30506 = 30506,
q30507 = 30507,
q30508 = 30508,
q30509 = 30509,
q30510 = 30510,
}
Q305Config.AmborData =
{
Ambor = "Ambor",
AmborScript = "Actor/Quest/Q301/Ambor301",
AmborID = 1002,
StartPos = sceneData:GetDummyPoint(3,"Q304Ambor4").pos,
StartDir = sceneData:GetDummyPoint(3,"Q304Ambor4").rot,
RoofPos = sceneData:GetDummyPoint(3,"Q305RoofAmbor").pos,
RoofDir = sceneData:GetDummyPoint(3,"Q305RoofAmbor").rot,
KnightPos = sceneData:GetDummyPoint(3,"Q305KnightAmbor").pos,
KnightDir = sceneData:GetDummyPoint(3,"Q305KnightAmbor").rot,
}
Q305Config.WendyData =
{
Wendy = "Wendy",
WendyScript = "Actor/Quest/Q301/Wendy301",
WendyID = 1001,
RoofPos = sceneData:GetDummyPoint(3, "Q305RoofWendy").pos,
RoofDir = sceneData:GetDummyPoint(3, "Q305RoofWendy").rot,
KnightPos = sceneData:GetDummyPoint(3,"Q305KnightWendy").pos,
KnightDir = sceneData:GetDummyPoint(3,"Q305KnightWendy").rot,
}
Q305Config.GaiaData =
{
Gaia = "Gaia",
GaiaScript = "Actor/Quest/Q301/Gaia301",
GaiaID = 1004,
RoofShowPos = sceneData:GetDummyPoint(3, "Q305RoofGaiaShow").pos,
RoofShowDir = sceneData:GetDummyPoint(3, "Q305RoofGaiaShow").rot,
RoofTalkPos = sceneData:GetDummyPoint(3, "Q305RoofGaiaTalk").pos,
RoofTalkDir = sceneData:GetDummyPoint(3, "Q305RoofGaiaTalk").rot,
KnightPos = sceneData:GetDummyPoint(3,"Q305KnightGaia").pos,
KnightDir = sceneData:GetDummyPoint(3,"Q305KnightGaia").rot,
}
Q305Config.QinData =
{
Qin = "Qin",
QinScript = "Actor/Quest/Q411/Qin",
QinID = 1006,
BornPos = sceneData:GetDummyPoint(3, "Q411QinBorn").pos,
BornDir = sceneData:GetDummyPoint(3, "Q411QinBorn").rot,
}
Q305Config.LisaData =
{
Lisa = "Lisa",
LisaScript = "Actor/Quest/Q411/Lisa",
LisaID = 1007,
KnightPos = sceneData:GetDummyPoint(3,"Q305KnightLisa").pos,
KnightDir = sceneData:GetDummyPoint(3,"Q305KnightLisa").rot,
}
Q305Config.BlackData =
{
MonsterID = 20103027,
Black1Pos = sceneData:GetDummyPoint(3,"Q305RoofBlack1").pos,
Black1Dir = sceneData:GetDummyPoint(3,"Q305RoofBlack1").rot,
Black2Pos = sceneData:GetDummyPoint(3,"Q305RoofBlack2").pos,
Black2Dir = sceneData:GetDummyPoint(3,"Q305RoofBlack2").rot,
}
Q305Config.AmborNoReplyInter =
{
{
{
type = InteractionType.DIALOG,
dialogType = DialogType.LOCK_FRAME,
talkerName = "安柏",
content = "我先去了,你也快来"
}
},
}
return Q305Config

View File

@@ -0,0 +1,316 @@
require('Actor/ActorCommon')
local quest352 = require('Actor/Quest/MQ352')
local npcActorProxy = require('Actor/Npc/NpcActorProxy')
local Paimon = class("Paimon", npcActorProxy)
Paimon.defaultAlias = "Paimon"
-- local config begin
--local q351Cfg = require('Actor/Quest/Q351/Q351Config')
--local q352Cfg = require('Quest/Client/Q352ClientConfig')
-- local config end
function Paimon:TransPreCallBack(qCfg)
print("TransPreCallBack")
local avatarEular = self:GetEuler()
self.uActor:SetAvatarEuler(avatarEular)
self:AddPriorityInter(InterTimingType.BTN, qCfg.PlayerBackInter)
local quest = actorMgr:GetActor(qCfg.ActorAlias)
quest:RequestInteraction(qCfg.PaimonData.Paimon)
self:ActionSafeCall(function (actor)
self:ClearPriorityInter(InterTimingType.BTN)
end)
end
function Paimon:TransFinishCallBack(qCfg)
print("TransFinishCallBack")
end
-- local method
--[[ function Paimon:FollowWater()
print("FollowWater")
self:ClearFollowTask()
self:BeFollowTask(q352Cfg.ByWaterPos, q352Cfg.FollowLen, -1,
function(self, task)
if self.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(q352Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(true, nil)
end
self:StopPerformNarrator()
elseif self.BeFollowState == BeFollowState.SUCCESS then
self:Standby()
self:TurnTo(M.Euler2DirXZ(q352Cfg.ByWaterDir))
local quest = actorMgr:GetActor(q352Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
end,
function(self, task)
self:Standby()
end
)
self:BeLockTask(q352Cfg.FollowTransLen, 1,
function(self)
self:TransFinishCallBack(q352Cfg)
end,
function(self)
self:TransPreCallBack(q352Cfg)
end
)
end
function Paimon:Follow3()
print("Follow3")
self:ClearFollowTask()
self:BeFollowTask(q352Cfg.PaimonFollow3Pos, q352Cfg.FollowLen,-1,
function(self, task)
if self.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(q352Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(true, nil)
end
self:StopPerformNarrator()
elseif self.BeFollowState == BeFollowState.SUCCESS then
self:FollowWater()
end
end,
function(self, task)
self:Standby()
end
)
self:BeLockTask(q352Cfg.FollowTransLen, 1,
function(self)
self:TransFinishCallBack(q352Cfg)
end,
function(self)
self:TransPreCallBack(q352Cfg)
end
)
end
function Paimon:Follow2()
print("Follow2")
self:ClearFollowTask()
self:BeFollowTask(q352Cfg.PaimonFollow2Pos, q352Cfg.FollowLen, -1,
function(self, task)
if self.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(q352Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(true, nil)
end
self:StopPerformNarrator()
elseif self.BeFollowState == BeFollowState.SUCCESS then
self:Follow3()
end
end,
function(self, task)
self:Standby()
end
)
self:BeLockTask(q352Cfg.FollowTransLen, 1,
function(self)
self:TransFinishCallBack(q352Cfg)
end,
function(self)
self:TransPreCallBack(q352Cfg)
end
)
end
function Paimon:Follow1()
print("Follow1")
self:ClearFollowTask()
self:BeFollowTask(q352Cfg.PaimonFollow1Pos, q352Cfg.FollowLen, -1,
function(self, task)
if self.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(q352Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(true, nil)
end
self:StopPerformNarrator()
elseif self.BeFollowState == BeFollowState.SUCCESS then
self:Follow2()
end
end,
function(self, task)
self:Standby()
end
)
self:BeLockTask(q352Cfg.FollowTransLen, 1,
function(self)
self:TransFinishCallBack(q352Cfg)
end,
function(self)
self:TransPreCallBack(q352Cfg)
end
)
end
function Paimon:FirstStartFollow1()
print("FirstStartFollow1")
self:ClearFollowTask()
--self:SwitchAirMode(true)
self:BeFollowTask(q351Cfg.FirstStartFollow1Pos, q351Cfg.FollowLen, -1,
function(self, task)
if self.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(q351Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(true, nil)
end
self:StopPerformNarrator()
elseif self.BeFollowState == BeFollowState.SUCCESS then
self:FirstStartFollow2()
end
end,
function(self, task)
self:Standby()
end
)
self:BeLockTask(q351Cfg.FollowTransLen, 1,
function(self)
self:TransFinishCallBack(q351Cfg)
end,
function(self)
self:TransPreCallBack(q351Cfg)
end
)
end
function Paimon:FirstStartFollow2()
print("FirstStartFollow2")
self:ClearFollowTask()
self:BeFollowTask(q351Cfg.FirstStartFollow2Pos, q351Cfg.FollowLen, -1,
function(self, task)
if self.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(q351Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(true, nil)
end
self:StopPerformNarrator()
elseif self.BeFollowState == BeFollowState.SUCCESS then
self:FirstStartFollow3()
end
end,
function(self, task)
self:Standby()
end
)
self:BeLockTask(q351Cfg.FollowTransLen, 1,
function(self)
self:TransFinishCallBack(q351Cfg)
end,
function(self)
self:TransPreCallBack(q351Cfg)
end
)
end
function Paimon:FirstStartFollow3()
print("FirstStartFollow3")
self:ClearFollowTask()
self:AirModeOff()
self:BeFollowTask(q351Cfg.FirstStartFollow3Pos, q351Cfg.FollowLen, -1,
function(self, task)
if self.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(q351Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(true, nil)
end
self:StopPerformNarrator()
elseif self.BeFollowState == BeFollowState.SUCCESS then
self:FirstStartFollowFinish()
end
end,
function(self, task)
self:Standby()
end,
nil
)
self:BeLockTask(q351Cfg.FollowTransLen, 1,
function(self)
self:TransFinishCallBack(q351Cfg)
end,
function(self)
self:TransPreCallBack(q351Cfg)
end
)
end
function Paimon:FirstStartFollowFinish()
print("FirstStartFollowFinish")
self:ClearFollowTask()
self:BeFollowTask(q351Cfg.FirstClimbPos, q351Cfg.FollowLen, -1,
function(self, task)
if self.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(q351Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(true, nil)
end
self:StopPerformNarrator()
elseif self.BeFollowState == BeFollowState.SUCCESS then
self:DoFreeStyle(0)
self:TurnTo(M.Euler2DirXZ(q351Cfg.FirstClimbDir))
local quest = actorMgr:GetActor(q351Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
end,
function(self, task)
self:Standby()
end
)
self:BeLockTask(q351Cfg.FollowTransLen, 1,
function(self)
self:TransFinishCallBack(q351Cfg)
end,
function(self)
self:TransPreCallBack(q351Cfg)
end
)
end ]]
function Paimon:Vanish(task)
self:Destroy(false)
end
function Paimon:VanishKeep(OnVanish)
self:Disappear(OnVanish)
end
function Paimon:ByQueen()
self:RunToTask(sceneData:GetDummyPoint(3,"Q352Queen").pos,
function(self)
self:AirModeOff()
self:Standby()
self:TurnTo(M.Euler2DirXZ(sceneData:GetDummyPoint(3,"Q352Queen").rot))
end
)
end
function Paimon:AirModeOn()
self:SwitchAirMode(true)
end
function Paimon:AirModeOff()
self:SwitchAirMode(false)
end
-- local method end
Paimon.TaskOnPauseReminder = 1001
Paimon.TaskOnResumeReminder = 1002
function Paimon:Start()
print("start!Paimon")
self:RegisterTaskCB()
end
function Paimon:OnDestroy()
print("Paimon destroied")
self:UnregisterTaskCB()
end
return Paimon

View File

@@ -0,0 +1,26 @@
require('Actor/ActorCommon')
local Q362Config = {}
Q362Config.MainID = 362
Q362Config.ActorAlias = "362"
Q362Config.SubIDs =
{
--[[ q36200 = 36200,
q36201 = 36201,
q36202 = 36202, ]]
q36203 = 36203,
}
--[[ Q362Config.PaimonStamina =
{
{dialogID = 3620000, audioEvtName = "", duration = 4},
} ]]
Q362Config.PaimonApple =
{
{dialogID = 3620001, audioEvtName = "", duration = 4},
}
return Q362Config

View File

@@ -0,0 +1,103 @@
require('Actor/ActorCommon')
local npcActorProxy = require('Actor/Npc/NpcActorProxy')
local Guard = class("Guard", npcActorProxy)
Guard.defaultAlias = "Guard"
local GuardData =
{
StayPos = sceneData:GetDummyPoint(1008, "Q374Guard").pos,
StayDir = sceneData:GetDummyPoint(1008, "Q374Guard").rot,
DisPos = sceneData:GetDummyPoint(1008, "Q374GuardDis").pos,
DisDir = sceneData:GetDummyPoint(1008, "Q374GuardDis").rot,
AprPos = sceneData:GetDummyPoint(1008, "Q374GuardApr").pos,
AprDir = sceneData:GetDummyPoint(1008, "Q374GuardApr").rot,
}
function Guard:Start()
self:StartDaily()
end
function Guard:StartDaily()
self:BornOnce()
self:RegisterSelfHour(self.HourBehave)
print("Guard StartDaily")
-- self:RegisterSelfDayTime(self.StartDay)
-- self:RegisterSelfNightTime(self.StartNight)
-- if globalActor.isDay then
-- self:StartDay()
-- else
-- self:StartNight()
-- end
end
function Guard:BornOnce()
local mHour = self:GetLevelTime()
print("Now Time is", mHour)
if mHour >= 5.985 and mHour < 17.985 then
self:StartDayNow()
else
self:StartNightNow()
end
end
function Guard:StartDay()
self:ClearFollowTask()
self:ShowSelf()
-- self:TurnTo(M.Euler2DirXZ(GuardData.AprDir))
self:PerformDither(true, 0.1, self.GoWork)
end
function Guard:GoWork()
self:WalkToTask(GuardData.StayPos,
function(Guard, task)
self:Standby()
self:TurnTo(M.Euler2DirXZ(GuardData.StayDir))
print("GoWork")
end
)
end
--=======
function Guard:StartNight()
self:ClearFollowTask()
self:GoHome()
end
function Guard:GoHome()
self:WalkToTask(GuardData.DisPos,
function(Guard, task)
self:Standby()
self:TurnTo(M.Euler2DirXZ(GuardData.DisDir))
self:PerformDither(false, 0.1, self.HideSelf)
print("GoHome")
end
)
end
--========
function Guard:HourBehave(Hour)
print("Each Time is", Hour)
if Hour == 6 then
self:StartDay()
print("StartDay")
elseif Hour == 18 then
self:StartNight()
print("StartNight")
end
end
function Guard:StartNightNow()
self:ClearFollowTask()
self:PerformDither(false, 0.1, self.HideSelf)
print("StartNightNow")
end
function Guard:StartDayNow()
self:Standby()
self:TurnTo(M.Euler2DirXZ(GuardData.StayDir))
print("StartDayNow")
end
return Guard

View File

@@ -0,0 +1,12 @@
require('Actor/ActorCommon')
local npcActorProxy = require('Actor/Npc/NpcActorProxy')
local Diluc = class("Diluc", npcActorProxy)
Diluc.defaultAlias = "Diluc"
function Diluc:Start()
end
return Diluc

View File

@@ -0,0 +1,12 @@
require('Actor/ActorCommon')
local npcActorProxy = require('Actor/Npc/NpcActorProxy')
local Soldier = class("Soldier", npcActorProxy)
Soldier.defaultAlias = "Soldier"
function Soldier:Start()
end
return Soldier

View File

@@ -0,0 +1,85 @@
require('Actor/ActorCommon')
local quest378 = require('Actor/Quest/MQ378')
local npcActorProxy = require('Actor/Npc/NpcActorProxy')
local Qin = class("Qin", npcActorProxy)
Qin.defaultAlias = "Qin"
-- local config begin
local q378Cfg = require('Quest/Client/Q378ClientConfig')
local QinData = q378Cfg.QinData
function Qin:PreGetAlias()
local Qin = QinData.Qin
return Qin
end
function Qin:TransPreCallBack(qCfg)
print("TransPreCallBack")
local avatarEular = self:GetEuler()
self.uActor:SetAvatarEuler(avatarEular)
self:AddPriorityInter(InterTimingType.BTN, qCfg.PlayerBackInter)
local quest = actorMgr:GetActor(qCfg.ActorAlias)
quest:RequestInteraction(qCfg.QinData.Qin)
self:ActionSafeCall(function (actor)
self:ClearPriorityInter(InterTimingType.BTN)
end)
end
function Qin:TransFinishCallBack(qCfg)
print("TransFinishCallBack")
end
-- local config end
-- local param begin
-- local param end
-- local method
function Qin:WalkFollow()
print("WalkFollow")
self:ClearFollowTask()
self:BeFollowTask(q378Cfg.QinData.bornPos2, q378Cfg.FollowLen, -1,
function(self, task)
if self.BeFollowState == BeFollowState.FAILED then
local quest = actorMgr:GetActor(q378Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(true, nil)
end
self:StopNarrator()
elseif self.BeFollowState == BeFollowState.SUCCESS then
self:TurnTo(M.Euler2DirXZ(q378Cfg.QinData.bornDir2))
local quest = actorMgr:GetActor(q378Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
end
end,
function(self, task)
self:Standby()
end
)
self:BeLockTask(q378Cfg.FollowTransLen, 1,
function(self)
self:TransFinishCallBack(q378Cfg)
end,
function(self)
self:TransPreCallBack(q378Cfg)
end
)
end
-- local method end
function Qin:Start()
print("start!Qin")
--self:SetPos(QinData.bornPos)
-- self:StartDance()
-- self:CallDelay(10, self.FinishDance)
end
function Qin:OnDestroy()
print("Qin " .. QinData.QinID .. " destroied")
end
return Qin

View File

@@ -0,0 +1,32 @@
require('Actor/ActorCommon')
local Q401Config = {}
Q401Config.MainID = 401
Q401Config.ActorAlias = "401"
Q401Config.SubIDs =
{
q40101 = 40101,
q40102 = 40102,
q40103 = 40103,
q40104 = 40104,
q40105 = 40105,
q40106 = 40106,
}
Q401Config.TreasureID = 100004
Q401Config.TreasurePos = sceneData:GetDummyPoint(3,"Q401Treasure").pos
Q401Config.Folk1Data =
{
Folk1 = "Extras1",
Folk1Script = "Actor/Quest/Q301/WendyAudience",
Folk1ID = 1101,
}
Q401Config.MonsterData =
{
MonsterIDs = {20103027, 21010201, 21010301, 21010401},
BossID = 20011301,
BossDropID = 201002,
}
return Q401Config

View File

@@ -0,0 +1,42 @@
require('Actor/ActorCommon')
local quest402 = require('Actor/Quest/SQ402')
local npcActorProxy = require('Actor/Npc/NpcActorProxy')
local Hostage = class("Hostage", npcActorProxy)
Hostage.defaultAlias = "Hostage"
-- local config begin
local q402Cfg = require('Actor/Quest/Q402/Q402Config')
-- local config end
-- local method
function Hostage:Escape()
print("escape Hostage")
self:RunToTask(q402Cfg.Follow1Pos,
function(self, task)
local quest = actorMgr:GetActor(q402Cfg.ActorAlias)
if quest ~= nil then
quest:FinishQuest(false, nil)
end
self:Destroy(false)
end
)
end
function Hostage:Rescue()
print("rescue Hostage")
self:DoFreeStyle(1)
end
-- local method end
function Hostage:Start()
print("start!Hostage")
self:SetPos(q402Cfg.HostagePos)
self:DoFreeStyle(3)
end
function Hostage:OnDestroy()
print("wendy " .. self.configID .. " destroied")
end
return Hostage

View File

@@ -0,0 +1,42 @@
require('Actor/ActorCommon')
local Q402Config = {}
Q402Config.MainID = 402
Q402Config.ActorAlias = "402"
Q402Config.SubIDs =
{
q40201 = 40201,
q40202 = 40202,
q40203 = 40203,
q40204 = 40204,
q40205 = 40205,
q40206 = 40206,
}
Q402Config.KeyID = 100006
Q402Config.KeyPos = sceneData:GetDummyPoint(3,"Q402Key").pos
Q402Config.Folk2Data =
{
Folk1 = "Extras2",
Folk1Script = "Actor/Quest/Q301/WendyAudience",
Folk1ID = 1102,
}
Q402Config.HostagePos = sceneData:GetDummyPoint(3,"Q402Hostage").pos
Q402Config.HostageDir = sceneData:GetDummyPoint(3,"Q402Hostage").rot
Q402Config.Follow1Pos = sceneData:GetDummyPoint(3,"Q402Follow1").pos
Q402Config.Follow2Pos = sceneData:GetDummyPoint(3,"Q402Follow2").pos
Q402Config.Follow3Pos = sceneData:GetDummyPoint(3,"Q402Follow3").pos
Q402Config.Follow4Pos = sceneData:GetDummyPoint(3,"Q402Follow4").pos
Q402Config.Hostage =
{
Hostage = "Hostage",
HostageScript = "Actor/Quest/Q402/Hostage",
HostageID = 1151,
}
Q402Config.MonsterData =
{
MonsterIDs = {21010301, 21010301, 21010301, 21010301},
}
return Q402Config

View File

@@ -0,0 +1,21 @@
require('Actor/ActorCommon')
local Q403Config = {}
Q403Config.MainID = 403
Q403Config.ActorAlias = "403"
Q403Config.SubIDs =
{
q40301 = 40301,
q40302 = 40302,
q40303 = 40303,
q40304 = 40304,
q40305 = 40305,
q40306 = 40306,
}
Q403Config.KeyID = 100007
Q403Config.KeyPos = sceneData:GetDummyPoint(3,"Q403Finish").pos
Q403Config.MatchTime = 30
return Q403Config

View File

@@ -0,0 +1,58 @@
require('Actor/ActorCommon')
local Q404Config = {}
Q404Config.MainID = 404
Q404Config.ActorAlias = "404"
Q404Config.SubIDs =
{
q40400 = 40400,
q40401 = 40401,
q40402 = 40402,
q40403 = 40403,
q40404 = 40404,
q40405 = 40405,
q40406 = 40406,
q40407 = 40407,
q40408 = 40408,
q40409 = 40409,
q40410 = 40410,
}
Q404Config.AmborData =
{
Ambor = "Ambor",
AmborScript = "Actor/Quest/Q301/Ambor301",
AmborID = 1002,
bornPos = sceneData:GetDummyPoint(3,"Q301AmborBorn").pos,
bornDir = sceneData:GetDummyPoint(3,"Q301AmborBorn").rot,
arguePos = sceneData:GetDummyPoint(3,"Q301AmborArgue").pos,
argueDir = sceneData:GetDummyPoint(3,"Q301AmborArgue").rot,
vanishPos = sceneData:GetDummyPoint(3,"Q301AmborVanish").pos,
judgePos = sceneData:GetDummyPoint(3,"Q404AmborStart").pos,
judgeDir = sceneData:GetDummyPoint(3,"Q404AmborStart").rot,
}
Q404Config.KeyID = 100008
-- Q404Config.KeyPos = { x = -508, y = 279, z = -481 }
Q404Config.KeyPos = { x = 1540, y = 279, z = -5601 }
Q404Config.KeyDir = { x = 0, y = 45, z = 0 }
Q404Config.MatchTime = 35
Q404Config.gotKey = false
Q404Config.AmborNoReplyInter =
{
{
{
type = InteractionType.DIALOG,
dialogType = DialogType.LOCK_FRAME,
talkerName = "安柏",
content = "我先去了,你也快来"
}
},
}
-- Q404Config.KeyPos2 = { x = -156, y = 208, z = -349 }
Q404Config.KeyPos2 = { x = 1892, y = 208, z = -5469 }
Q404Config.KeyDir2 = { x = 0, y = -36, z = 0 }
Q404Config.MatchTime2 = 40
return Q404Config

View File

@@ -0,0 +1,70 @@
require('Actor/ActorCommon')
local Q405Config = {}
Q405Config.MainID = 405
Q405Config.ActorAlias = "405"
Q405Config.SubIDs =
{
q40501 = 40501,
q40502 = 40502,
q40503 = 40503,
q40504 = 40504,
q40505 = 40505,
q40506 = 40506,
}
-- Q405Config.KeyPos = {x = -115.3, y = 458, z = 617.2}
Q405Config.KeyPos = {x = 1932.7, y = 458, z = -4502.8}
Q405Config.KeyDir = { x = 45, y = 0, z = 0 }
Q405Config.MatchTime = 80
Q405Config.gotKey = false
Q405Config.AccPos1 =
{
{x=1936, y=218, z=-4785.29},
{x=1945.02, y=225, z=-4764.21},
{x=1945, y=232, z=-4744.7},
{x=1942.4, y=240, z=-4723.8},
{x=1954.3, y=248, z=-4702.4},
{x=1957.6, y=256, z=-4680},
{x=1961, y=267, z=-4653.5},
{x=1959.5, y=274, z=-4620},
{x=1963.3, y=266, z=-4604.4},
{x=1958.12, y=248, z=-4582.48},
{x=1960.94, y=240, z=-4564.71},
{x=1947.76, y=246, z=-4549.14},
{x=1943.51, y=250, z=-4534.1},
{x=1943.95, y=258, z=-4519.11},
{x=1932.7, y=264, z=-4502.8},
}
Q405Config.AccPos2 =
{
{x=0, y=0, z=0},
{x=0, y=0, z=0},
{x=0, y=0, z=0},
{x=0, y=0, z=0},
{x=0, y=0, z=0},
{x=0, y=0, z=0},
{x=1961, y=260, z=-4653.5},
{x=1959.17, y=245, z=-4627.89},
{x=0, y=0, z=0},
{x=0, y=0, z=0},
{x=1964.35, y=240, z=-4563.45},
{x=1966.63, y=246, z=-4541.16},
{x=1956.15, y=250, z=-4527.4},
{x=0, y=0, z=0},
{x=0, y=0, z=0},
}
Q405Config.RisePos1 =
{
-- {x=-115.3, y=261, z=617.2},
{x=1932.7, y=261, z=-4502.8},
}
Q405Config.RisePos2 =
{
-- {x=-115.3, y=335, z=617.2},
{x=1932.7, y=335, z=-4502.8},
}
return Q405Config

View File

@@ -0,0 +1,23 @@
require('Actor/ActorCommon')
local quest406 = require('Actor/Quest/SQ406')
local npcActorProxy = require('Actor/Npc/NpcActorProxy')
local Judge406 = class("Judge406", npcActorProxy)
Judge406.defaultAlias = "Judge406"
-- local config begin
local q406Cfg = require('Actor/Quest/Q406/Q406Config')
local judgeData = q406Cfg.JudgeData
-- local config end
function Judge406:Start()
end
function Judge406:OnDestroy()
print("judge " .. self.configID .. " destroied")
end
return Judge406

View File

@@ -0,0 +1,128 @@
require('Actor/ActorCommon')
local Q406Config = {}
Q406Config.MainID = 406
Q406Config.ActorAlias = "406"
Q406Config.SubIDs =
{
q40600 = 40600,
q40601 = 40601,
q40602 = 40602,
q40603 = 40603,
q40604 = 40604,
q40605 = 40605,
q40606 = 40606,
}
Q406Config.AmborData =
{
Ambor = "Ambor",
AmborScript = "Actor/Quest/Q301/Ambor301",
AmborID = 1002,
judgePos = sceneData:GetDummyPoint(3,"Q406MengdeJudge").pos,
judgeDir = sceneData:GetDummyPoint(3,"Q406MengdeJudge").rot,
}
Q406Config.MatchTime = 60
Q406Config.MeatID = 100061
-- Q406Config.MeatPos = { x=140, y=211, z=39}
Q406Config.MeatPos = { x=2188, y=211, z=-5081}
Q406Config.CoinRequireNum = 30
Q406Config.CoinNum = 0
Q406Config.CoinDir = { x = 0.0, y = 0.0, z = 0.0 }
Q406Config.CoinPos =
{
{x=2201.28, y=240.09, z=-5086.23},
{x=2207.73, y=240.09, z=-5087.96},
{x=2214.17, y=240.09, z=-5089.69},
{x=2220.62, y=240.09, z=-5091.41},
{x=2227.06, y=238.94, z=-5093.14},
{x=2233.51, y=238.94, z=-5094.87},
{x=2239.95, y=238.94, z=-5096.59},
{x=2246.4, y=238.94, z=-5098.32},
{x=2252.85, y=237.78, z=-5100.04},
{x=2259.29, y=237.78, z=-5101.77},
{x=2265.74, y=237.78, z=-5103.5},
{x=2272.18, y=237.78, z=-5105.22},
{x=2278.63, y=237.78, z=-5106.95},
{x=2285.09, y=240.09, z=-5103.56},
{x=2291.08, y=242.4, z=-5099.29},
{x=2297.08, y=244.71, z=-5095.02},
{x=2303.08, y=247.02, z=-5090.75},
{x=2310, y=247.02, z=-5088.25},
{x=2316.93, y=244.71, z=-5085.75},
{x=2323.85, y=242.4, z=-5083.25},
{x=2330.78, y=240.09, z=-5080.75},
{x=2337.7, y=240.09, z=-5078.25},
{x=2343.93, y=240.09, z=-5074.42},
{x=2350.16, y=240.09, z=-5070.59},
{x=2356.39, y=240.09, z=-5066.76},
{x=2362.62, y=242.4, z=-5062.93},
{x=2366.27, y=240.09, z=-5056.98},
{x=2369.08, y=237.78, z=-5050.5},
{x=2371.89, y=235.48, z=-5044.02},
{x=2374.69, y=233.17, z=-5037.54},
{x=2377.5, y=230.86, z=-5031.06},
{x=2381.16, y=230.86, z=-5025.11},
{x=2384.82, y=230.86, z=-5019.15},
{x=2388.47, y=230.86, z=-5013.19},
{x=2392.98, y=228.55, z=-5007.76},
{x=2397.49, y=230.86, z=-5002.33},
{x=2402, y=233.17, z=-4996.9},
{x=2406.51, y=235.48, z=-4991.47},
{x=2410.17, y=237.78, z=-4985.51},
{x=2413.41, y=240.09, z=-4978.48},
{x=2414.84, y=237.78, z=-4970.61},
{x=2416.27, y=235.48, z=-4962.74},
{x=2417.69, y=233.17, z=-4954.87},
{x=2419.12, y=230.86, z=-4947},
{x=2424.17, y=233.17, z=-4940.81},
{x=2429.23, y=235.48, z=-4934.61},
{x=2434.29, y=237.78, z=-4928.42},
{x=2439.35, y=237.78, z=-4922.22},
{x=2443.5, y=233.17, z=-4915.61},
{x=2447.65, y=228.55, z=-4909},
{x=2451.8, y=223.94, z=-4902.38},
{x=2455.95, y=242.4, z=-4895.77},
{x=2454.26, y=240.09, z=-4886.06},
{x=2455.24, y=244.71, z=-4877.79},
{x=2456.22, y=249.32, z=-4869.52},
{x=2457.19, y=253.94, z=-4861.24},
{x=2460.11, y=256.25, z=-4853.44},
{x=2463.03, y=256.25, z=-4845.64},
{x=2465.95, y=256.25, z=-4837.84},
{x=2468.87, y=256.25, z=-4830.04},
{x=2471.79, y=256.25, z=-4822.24},
{x=2473.25, y=249.32, z=-4814.08},
{x=2474.72, y=242.4, z=-4805.93},
{x=2476.18, y=235.48, z=-4797.77},
{x=2477.64, y=228.55, z=-4789.62},
{x=2472.05, y=240.09, z=-4783.96},
{x=2465.75, y=235.48, z=-4779.01},
{x=2459.45, y=230.86, z=-4774.06},
{x=2453.15, y=226.25, z=-4769.1},
{x=2446.85, y=221.63, z=-4764.15},
{x=2441.26, y=217.02, z=-4758.5},
{x=2435.68, y=212.4, z=-4752.84},
{x=2430.09, y=207.78, z=-4747.18},
{x=2425.21, y=203.17, z=-4740.83},
{x=2420.33, y=207.78, z=-4734.47},
{x=2415.46, y=212.4, z=-4728.11},
{x=2410.58, y=217.02, z=-4721.75},
{x=2404.99, y=221.63, z=-4716.09},
{x=2397.4, y=240.09, z=-4718.55},
{x=2389.8, y=240.09, z=-4721.01},
{x=2382.21, y=240.09, z=-4723.47},
{x=2374.61, y=240.09, z=-4725.93},
{x=2367.63, y=230.86, z=-4730.3},
{x=2359.73, y=230.86, z=-4731.8},
{x=2351.83, y=230.86, z=-4733.31},
{x=2343.92, y=230.86, z=-4734.82},
{x=2336.02, y=221.63, z=-4736.33},
{x=2328.58, y=221.63, z=-4739.26},
{x=2321.14, y=221.63, z=-4742.2},
{x=2313.7, y=221.63, z=-4745.14},
{x=2306.26, y=221.63, z=-4748.07},
}
return Q406Config

View File

@@ -0,0 +1,34 @@
require('Actor/ActorCommon')
local quest407 = require('Actor/Quest/SQ407')
local npcActorProxy = require('Actor/Npc/NpcActorProxy')
local CricketJudge = class("CricketJudge", npcActorProxy)
CricketJudge.defaultAlias = "CricketJudge"
-- local config begin
local q407Cfg = require('Actor/Quest/Q407/Q407Config')
local CricketJudgeData = q407Cfg.JudgeData
function CricketJudge:PreGetAlias()
local CricketJudge = CricketJudgeData.Judge
return CricketJudge
end
-- local config end
-- local param begin
-- local param end
-- local method
-- local method end
function CricketJudge:Start()
print("start!CricketJudge")
end
function CricketJudge:OnDestroy()
print("CricketJudge " .. CricketJudgeData.JudgeID .. " destroied")
end
return CricketJudge

Some files were not shown because too many files have changed in this diff Show More