mirror of
https://github.com/Ukendio/jecs.git
synced 2025-07-08 23:59:17 +00:00
Make iterators simple functions
Some checks are pending
Some checks are pending
This commit is contained in:
parent
169ec09ed5
commit
23540e5919
1 changed files with 25 additions and 14 deletions
|
@ -51,20 +51,18 @@ local function observers_new(world, query, callback)
|
||||||
world:changed(term, emplaced)
|
world:changed(term, emplaced)
|
||||||
end
|
end
|
||||||
|
|
||||||
return setmetatable({}, {
|
return function()
|
||||||
__iter = function()
|
local row = i
|
||||||
local row = i
|
return function()
|
||||||
return function()
|
if row == 0 then
|
||||||
if row == 0 then
|
i = 0
|
||||||
i = 0
|
table.clear(entities)
|
||||||
table.clear(entities)
|
end
|
||||||
end
|
local entity = entities[row]
|
||||||
local entity = entities[row]
|
row -= 1
|
||||||
row -= 1
|
return entity
|
||||||
return entity
|
end
|
||||||
end
|
end
|
||||||
end
|
|
||||||
})
|
|
||||||
end
|
end
|
||||||
|
|
||||||
local function join(world, component)
|
local function join(world, component)
|
||||||
|
@ -152,6 +150,19 @@ local function monitors_new(world, query, callback)
|
||||||
world:added(term, emplaced)
|
world:added(term, emplaced)
|
||||||
world:removed(term, removed)
|
world:removed(term, removed)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
return function()
|
||||||
|
local row = i
|
||||||
|
return function()
|
||||||
|
if row == 0 then
|
||||||
|
i = 0
|
||||||
|
table.clear(entities)
|
||||||
|
end
|
||||||
|
local entity = entities[row]
|
||||||
|
row -= 1
|
||||||
|
return entity
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
local function observers_add(world: jecs.World): PatchedWorld
|
local function observers_add(world: jecs.World): PatchedWorld
|
||||||
|
|
Loading…
Reference in a new issue