63 lines
1.5 KiB
Lua
63 lines
1.5 KiB
Lua
flow={
|
|
level=1,
|
|
step={0},
|
|
paths={ {flow_safe} },
|
|
registre={ }
|
|
-- sub_path_enable = false,
|
|
-- sub_step = 0,
|
|
-- sub_path={}
|
|
}
|
|
|
|
function flow_safe()
|
|
print("FLOW SAFE")
|
|
end
|
|
|
|
function flow:print()
|
|
print("> STEP= "..self.step.." / "..#self.path)
|
|
if self.sub_path_enable then
|
|
print("> SUB_PATH_ENABLE= TRUE")
|
|
else
|
|
print("> SUB_PATH_ENABLE= FALSE")
|
|
end
|
|
print("> SUB_STEP= "..self.sub_step.." / "..#self.sub_path)
|
|
print("")
|
|
end
|
|
|
|
function flow:next()
|
|
local level_step = self.step[self.level]
|
|
local level_path = self.paths[self.level]
|
|
-- print("LEVEL= "..self.level)
|
|
-- print("LEVEL_STEP= "..level_step)
|
|
if level_step+1 > #level_path then
|
|
-- Si s'ha acabat la llista pujar de nivell
|
|
if self.level>1 then self.level=self.level-1 end
|
|
level_step = self.step[self.level]
|
|
-- level_path = self.paths[self.level]
|
|
end
|
|
|
|
-- següent pas
|
|
level_step = level_step+1
|
|
game_update = self.paths[self.level][level_step]
|
|
|
|
-- result = self.step[self.level]
|
|
self.step[self.level] = level_step
|
|
end
|
|
|
|
function flow:restore()
|
|
local level_step = self.step[self.level]
|
|
game_update = self.paths[self.level][level_step]
|
|
end
|
|
|
|
function flow:call(nom)
|
|
game_update = self.registre[nom]
|
|
end
|
|
|
|
function flow:add_path( path )
|
|
self.level = self.level+1
|
|
self.step[self.level] = 0
|
|
self.paths[self.level] = path
|
|
end
|
|
|
|
function flow:add(name, fn)
|
|
self.registre[name] = fn
|
|
end |