78 lines
2.3 KiB
Lua
78 lines
2.3 KiB
Lua
local TutorialConst = require "app/module/tutorial/tutorial_const"
|
|
|
|
local TutorialAction = {}
|
|
|
|
function TutorialAction:init()
|
|
end
|
|
|
|
function TutorialAction:clear()
|
|
end
|
|
|
|
function TutorialAction:doTutorial(tutorialId)
|
|
local tutorialType = DataManager.TutorialData:getTutorialTypeById(tutorialId)
|
|
local func = TutorialAction._doTutorial[tutorialType]
|
|
if func then
|
|
func(tutorialId)
|
|
else
|
|
ModuleManager.TutorialManager:stopTutorial()
|
|
end
|
|
end
|
|
|
|
function TutorialAction:doStepOver(tutorialId)
|
|
local tutorialType = DataManager.TutorialData:getTutorialTypeById(tutorialId)
|
|
local func = TutorialAction._doStepOver[tutorialType]
|
|
if func then
|
|
func(tutorialId)
|
|
end
|
|
end
|
|
|
|
-- 任意位置点击
|
|
local function _tutorialClick(tutorialId)
|
|
ModuleManager.TutorialManager:showTalk()
|
|
|
|
ModuleManager.TutorialManager:registerClickScreenListener(function()
|
|
ModuleManager.TutorialManager:checkAndNextTutorial(tutorialId)
|
|
end)
|
|
end
|
|
|
|
-- 点击指定按钮
|
|
local function _tutorialClickBtn(tutorialId)
|
|
local typeParameter = DataManager.TutorialData:getTypeParameter()
|
|
ModuleManager.TutorialManager:registerClickBtnListener(function()
|
|
ModuleManager.TutorialManager:checkAndNextTutorial(tutorialId)
|
|
end, nil, typeParameter)
|
|
end
|
|
|
|
-- 剧情对话
|
|
local function _tutorialTalk(tutorialId)
|
|
ModuleManager.TutorialManager:showTalk()
|
|
|
|
local typeParameter = DataManager.TutorialData:getTypeParameter()
|
|
ModuleManager.TutorialManager:registerClickBtnListener(function()
|
|
ModuleManager.TutorialManager:checkAndNextTutorial(tutorialId)
|
|
end, nil, typeParameter)
|
|
end
|
|
|
|
-- 空步骤,什么也不做,一般搭配完成条件使用
|
|
local function _tutorialEmpty(tutorialId)
|
|
ModuleManager.TutorialManager:checkAndNextTutorial(tutorialId)
|
|
end
|
|
|
|
local function _tutorialEmptyCancelBlock(tutorialId)
|
|
ModuleManager.TutorialManager:setBlockTouchEnabled(false)
|
|
ModuleManager.TutorialManager:checkAndNextTutorial(tutorialId)
|
|
end
|
|
|
|
TutorialAction._doTutorial = {
|
|
[TutorialConst.TUTORIAL_TYPE.CLICK] = _tutorialClick,
|
|
[TutorialConst.TUTORIAL_TYPE.CLICK_BTN] = _tutorialClickBtn,
|
|
[TutorialConst.TUTORIAL_TYPE.TALK] = _tutorialTalk,
|
|
[TutorialConst.TUTORIAL_TYPE.DO_NOTHING] = _tutorialEmpty,
|
|
[TutorialConst.TUTORIAL_TYPE.EMPTY_CANCEL_BLOCK] = _tutorialEmptyCancelBlock,
|
|
}
|
|
|
|
-- 此步引导结束的时候
|
|
TutorialAction._doStepOver = {
|
|
}
|
|
|
|
return TutorialAction |