mirror of
https://github.com/BlackMATov/evolved.lua.git
synced 2025-12-13 11:38:15 +07:00
remove exception from assign function
This commit is contained in:
@@ -33,7 +33,7 @@ registry.get_or -> entity -> entity -> any -> (any)
|
||||
registry.has -> entity -> entity -> (boolean)
|
||||
registry.has_all -> entity -> entity... -> (boolean)
|
||||
registry.has_any -> entity -> entity... -> (boolean)
|
||||
registry.assign -> entity -> entity -> any -> ()
|
||||
registry.assign -> entity -> entity -> any -> (boolean)
|
||||
registry.insert -> entity -> entity -> any -> (boolean)
|
||||
registry.remove -> entity -> entity... -> (boolean)
|
||||
registry.query -> entity -> entity... -> (query)
|
||||
@@ -54,7 +54,7 @@ entity:get_or -> entity -> any -> (any)
|
||||
entity:has -> entity -> (boolean)
|
||||
entity:has_all -> entity... -> (boolean)
|
||||
entity:has_any -> entity... -> (boolean)
|
||||
entity:assign -> entity -> any -> ()
|
||||
entity:assign -> entity -> any -> (boolean)
|
||||
entity:insert -> entity -> any -> (boolean)
|
||||
entity:remove -> entity... -> (boolean)
|
||||
```
|
||||
|
||||
@@ -57,9 +57,10 @@ do
|
||||
|
||||
if not os.getenv("LOCAL_LUA_DEBUGGER_VSCODE") then
|
||||
assert(not pcall(e.get, e, f))
|
||||
assert(not pcall(e.assign, e, f, 42))
|
||||
end
|
||||
|
||||
assert(not e:assign(f, 42))
|
||||
|
||||
assert(e:get_or(f) == nil)
|
||||
assert(e:get_or(f, 42) == 42)
|
||||
|
||||
@@ -72,7 +73,7 @@ do
|
||||
assert(not e:insert(f, 42))
|
||||
assert(e:get(f) == 42)
|
||||
|
||||
e:assign(f)
|
||||
assert(e:assign(f))
|
||||
assert(e:get(f) == true)
|
||||
|
||||
e:assign(f, 21)
|
||||
|
||||
@@ -359,16 +359,15 @@ end
|
||||
---@param entity evolved.entity
|
||||
---@param fragment evolved.entity
|
||||
---@param component any
|
||||
---@return boolean is_assigned
|
||||
function registry.assign(entity, fragment, component)
|
||||
component = component == nil and true or component
|
||||
|
||||
local chunk_components = entity.__chunk and entity.__chunk.__components[fragment]
|
||||
|
||||
if chunk_components == nil then
|
||||
error(string.format('entity %s does not have fragment %s', entity, fragment), 2)
|
||||
end
|
||||
if chunk_components == nil then return false end
|
||||
|
||||
chunk_components[entity.__index_in_chunk] = component
|
||||
return true
|
||||
end
|
||||
|
||||
---@param entity evolved.entity
|
||||
|
||||
Reference in New Issue
Block a user