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,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