mirror of
https://github.com/Reuh/ubiquitousse.git
synced 2025-10-27 17:19:31 +00:00
33 lines
1.4 KiB
Lua
33 lines
1.4 KiB
Lua
return { -- ./ecs/children.can:12
|
|
["name"] = "children", -- ./ecs/children.can:13
|
|
["filter"] = true, -- ./ecs/children.can:14
|
|
["onAdd"] = function(self, e) -- ./ecs/children.can:15
|
|
if not e["children"] then -- ./ecs/children.can:16
|
|
e["children"] = {} -- ./ecs/children.can:16
|
|
end -- ./ecs/children.can:16
|
|
if e["parent"] then -- ./ecs/children.can:17
|
|
local parentchildren -- ./ecs/children.can:18
|
|
parentchildren = e["parent"]["children"] -- ./ecs/children.can:18
|
|
table["insert"](parentchildren, e) -- ./ecs/children.can:19
|
|
end -- ./ecs/children.can:19
|
|
for _, o in ipairs(e["children"]) do -- ./ecs/children.can:21
|
|
o["parent"] = e -- ./ecs/children.can:22
|
|
self["world"]:add(o) -- ./ecs/children.can:23
|
|
end -- ./ecs/children.can:23
|
|
end, -- ./ecs/children.can:23
|
|
["onRemove"] = function(self, e) -- ./ecs/children.can:26
|
|
for i = # e["children"], 1, - 1 do -- ./ecs/children.can:27
|
|
self["world"]:remove(e["children"][i]) -- ./ecs/children.can:28
|
|
end -- ./ecs/children.can:28
|
|
if e["parent"] then -- ./ecs/children.can:30
|
|
local parentchildren -- ./ecs/children.can:31
|
|
parentchildren = e["parent"]["children"] -- ./ecs/children.can:31
|
|
for i = # parentchildren, 1, - 1 do -- ./ecs/children.can:32
|
|
if parentchildren[i] == e then -- ./ecs/children.can:33
|
|
table["remove"](parentchildren, i) -- ./ecs/children.can:34
|
|
break -- ./ecs/children.can:35
|
|
end -- ./ecs/children.can:35
|
|
end -- ./ecs/children.can:35
|
|
end -- ./ecs/children.can:35
|
|
end -- ./ecs/children.can:35
|
|
} -- ./ecs/children.can:35
|