registry.guid, entity.guid

This commit is contained in:
BlackMATov
2024-11-24 08:39:38 +07:00
parent d75dcda3e4
commit 729b8423a8
2 changed files with 21 additions and 11 deletions

View File

@@ -25,6 +25,7 @@ idpool:is_alive -> id -> (boolean)
```
registry.entity -> (entity)
registry.guid -> entity -> (id)
registry.is_alive -> entity -> (boolean)
registry.destroy -> entity -> ()
registry.get -> entity -> entity -> (any)
@@ -45,16 +46,17 @@ registry.components -> chunk -> entity -> (any[])
### Instance `entity`
```
enity:is_alive -> (boolean)
enity:destroy -> ()
enity:get -> entity -> (any)
enity:get_or -> entity -> any -> (any)
enity:has -> entity -> (boolean)
enity:has_all -> entity -> entity... -> (boolean)
enity:has_any -> entity -> entity... -> (boolean)
enity:assign -> entity -> any -> ()
enity:insert -> entity -> any -> ()
enity:remove -> entity -> ()
entity:guid -> (id)
entity:is_alive -> (boolean)
entity:destroy -> ()
entity:get -> entity -> (any)
entity:get_or -> entity -> any -> (any)
entity:has -> entity -> (boolean)
entity:has_all -> entity -> entity... -> (boolean)
entity:has_any -> entity -> entity... -> (boolean)
entity:assign -> entity -> any -> ()
entity:insert -> entity -> any -> ()
entity:remove -> entity -> ()
```
### Instance `query`

View File

@@ -22,7 +22,7 @@ local __queries = {} ---@type table<evolved.entity, evolved.query[]>
---
---@class evolved.entity
---@field package __guid integer
---@field package __guid evolved.id
---@field package __chunk? evolved.chunk
---@field package __index_in_chunk integer
local evolved_entity_mt = {}
@@ -283,6 +283,13 @@ function registry.entity()
return setmetatable(entity, evolved_entity_mt)
end
---@param entity evolved.entity
---@return evolved.id
---@nodiscard
function registry.guid(entity)
return entity.__guid
end
---@param entity evolved.entity
---@return boolean
---@nodiscard
@@ -546,6 +553,7 @@ function evolved_entity_mt:__tostring()
return string.format('[%d;%d]', index, version)
end
evolved_entity_mt.guid = registry.guid
evolved_entity_mt.is_alive = registry.is_alive
evolved_entity_mt.destroy = registry.destroy
evolved_entity_mt.get = registry.get