mirror of
https://github.com/Ukendio/jecs.git
synced 2025-08-04 11:19:17 +00:00
Compare commits
2 commits
6ebc513a79
...
267e30acfc
Author | SHA1 | Date | |
---|---|---|---|
|
267e30acfc | ||
|
95a9fecbd0 |
2 changed files with 13 additions and 9 deletions
12
jecs.luau
12
jecs.luau
|
@ -2034,18 +2034,16 @@ local function ecs_bulk_insert(world: World, entity: Entity, ids: { Entity }, va
|
|||
local value = values[i] :: any
|
||||
|
||||
local on_add = idr.hooks.on_add
|
||||
local on_change = idr.hooks.on_change
|
||||
|
||||
if value then
|
||||
if value ~= nil then
|
||||
columns_map[id][row] = value
|
||||
local on_change = idr.hooks.on_change
|
||||
local hook = if set then on_change else on_add
|
||||
if hook then
|
||||
hook(entity, id, value :: any)
|
||||
end
|
||||
else
|
||||
if on_add then
|
||||
on_add(entity, id, value)
|
||||
end
|
||||
elseif on_add then
|
||||
on_add(entity, id)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -2812,7 +2810,7 @@ local function world_new()
|
|||
if value == NULL then
|
||||
inner_world_add(world, i, ty)
|
||||
else
|
||||
inner_world_add(world, i, ty, value)
|
||||
inner_world_set(world, i, ty, value)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -93,7 +93,10 @@ TEST("bulk", function()
|
|||
CHECK(world:get(e, B) == 2)
|
||||
CHECK(world:get(e, C) == 3)
|
||||
|
||||
jecs.bulk_insert(world, e, { D, E, F }, { 4, nil, 5 })
|
||||
jecs.bulk_insert(world, e,
|
||||
{ D, E, F },
|
||||
{ 4, nil, 5 }
|
||||
)
|
||||
CHECK(world:get(e, A) == 1)
|
||||
CHECK(world:get(e, B) == 2)
|
||||
CHECK(world:get(e, C) == 3)
|
||||
|
@ -102,7 +105,10 @@ TEST("bulk", function()
|
|||
CHECK(world:get(e, E) == nil and world:has(e, E))
|
||||
CHECK(world:get(e, F) == 5)
|
||||
|
||||
jecs.bulk_insert(world, e, { A, D, E, F, C }, { 10, 40, nil, 50, 30 })
|
||||
jecs.bulk_insert(world, e,
|
||||
{ A, D, E, F, C },
|
||||
{ 10, 40, nil, 50, 30 }
|
||||
)
|
||||
|
||||
CHECK(world:get(e, A) == 10)
|
||||
CHECK(world:get(e, B) == 2)
|
||||
|
|
Loading…
Reference in a new issue