mirror of
https://github.com/BlackMATov/evolved.lua.git
synced 2025-12-15 04:15:28 +07:00
execute returns chunk entity count now
This commit is contained in:
@@ -82,7 +82,7 @@ chunk :: fragment... -> chunk?, entity[]?
|
||||
select :: chunk, fragment... -> component[]...
|
||||
|
||||
each :: entity -> {each_state? -> fragment?, component?}, each_state?
|
||||
execute :: query -> {execute_state? -> chunk?, entity[]?}, execute_state?
|
||||
execute :: query -> {execute_state? -> chunk?, entity[]?, integer?}, execute_state?
|
||||
```
|
||||
|
||||
```
|
||||
|
||||
@@ -2524,7 +2524,8 @@ do
|
||||
---@return evolved.entity[]
|
||||
local function collect_entities(q)
|
||||
local entities = {}
|
||||
for _, es in evo.execute(q) do
|
||||
for _, es, es_count in evo.execute(q) do
|
||||
assert(#es == es_count)
|
||||
for _, e in ipairs(es) do
|
||||
entities[#entities + 1] = e
|
||||
end
|
||||
|
||||
@@ -77,7 +77,7 @@ local evolved = {
|
||||
---@field package [3] table<evolved.fragment, boolean> exclude_set
|
||||
|
||||
---@alias evolved.each_iterator fun(state: evolved.each_state?): evolved.fragment?, evolved.component?
|
||||
---@alias evolved.execute_iterator fun(state: evolved.execute_state?): evolved.chunk?, evolved.entity[]?
|
||||
---@alias evolved.execute_iterator fun(state: evolved.execute_state?): evolved.chunk?, evolved.entity[]?, integer?
|
||||
|
||||
---
|
||||
---
|
||||
@@ -376,7 +376,7 @@ local function __execute_iterator(execute_state)
|
||||
local chunk_entity_count = chunk.__entity_count
|
||||
|
||||
if chunk_entity_count > 0 then
|
||||
return chunk, chunk_entities
|
||||
return chunk, chunk_entities, chunk_entity_count
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user