|
|
|
|
--[[@------------------------------------------------------------------
|
|
说明: 源操作包基类, 用于在需要的时候产生当前操作包(NowOperate)
|
|
作者: deadline
|
|
----------------------------------------------------------------------]]
|
|
SourceOperate = SourceOperate or BaseClass()
|
|
local SourceOperate = SourceOperate
|
|
function SourceOperate:__init()
|
|
self.is_finish = false
|
|
self.is_init_finish = false
|
|
self.type = OperateManager.SourceOperateType.Unknown
|
|
self.next_target = nil
|
|
end
|
|
|
|
function SourceOperate:GetOper()
|
|
if not self.is_init_finish then
|
|
self.is_init_finish = true
|
|
if not self:Init() then
|
|
self.is_finish = true
|
|
return nil
|
|
end
|
|
end
|
|
|
|
return self:GetOperImpl()
|
|
end
|
|
|
|
function SourceOperate:IsFinish()
|
|
return self.is_finish
|
|
end
|
|
|
|
function SourceOperate:GetNextTarget()
|
|
return self.next_target
|
|
end
|
|
|
|
function SourceOperate:GetCrossScene()
|
|
return self.cross_scene
|
|
end
|
|
|
|
function SourceOperate:GetSrcType()
|
|
return self.type
|
|
end
|
|
|
|
function SourceOperate:Init()
|
|
return false
|
|
end
|
|
|
|
function SourceOperate:GetOperImpl()
|
|
return nil
|
|
end
|
|
|
|
function SourceOperate:GenerateNop(delta_time)
|
|
local nop = NowOperateNop.New(delta_time)
|
|
return nop
|
|
end
|