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

70 lines
1.7 KiB
Lua

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