mirror of
https://github.com/BlackMATov/evolved.lua.git
synced 2026-03-22 12:55:31 +07:00
basic entity api
This commit is contained in:
15
README.md
15
README.md
@@ -1,3 +1,18 @@
|
||||
# evolved.lua
|
||||
|
||||
```
|
||||
id :: id
|
||||
alive :: id -> boolean
|
||||
destroy :: id -> ()
|
||||
get :: entity, fragment... -> component...
|
||||
has :: entity, fragment -> boolean
|
||||
has_all :: entity, fragment... -> boolean
|
||||
has_any :: entity, fragment... -> boolean
|
||||
set :: entity, fragment, component -> ()
|
||||
assign :: entity, fragment, component -> boolean
|
||||
insert :: entity, fragment, component -> boolean
|
||||
remove :: entity, fragment... -> ()
|
||||
clear :: entity -> ()
|
||||
```
|
||||
|
||||
## [License (MIT)](./LICENSE.md)
|
||||
|
||||
65
evolved.lua
65
evolved.lua
@@ -1,4 +1,69 @@
|
||||
---@class evolved
|
||||
local evolved = {}
|
||||
|
||||
---@alias evolved.id integer
|
||||
---@alias evolved.entity evolved.id
|
||||
---@alias evolved.fragment evolved.id
|
||||
---@alias evolved.component any
|
||||
|
||||
---@return evolved.id
|
||||
---@nodiscard
|
||||
function evolved.id() end
|
||||
|
||||
---@param id evolved.id
|
||||
---@return boolean
|
||||
---@nodiscard
|
||||
function evolved.alive(id) end
|
||||
|
||||
---@param id evolved.id
|
||||
function evolved.destroy(id) end
|
||||
|
||||
---@param entity evolved.entity
|
||||
---@param ... evolved.fragment fragments
|
||||
---@return evolved.component ... components
|
||||
---@nodiscard
|
||||
function evolved.get(entity, ...) end
|
||||
|
||||
---@param entity evolved.entity
|
||||
---@param fragment evolved.fragment
|
||||
---@return boolean
|
||||
---@nodiscard
|
||||
function evolved.has(entity, fragment) end
|
||||
|
||||
---@param entity evolved.entity
|
||||
---@param ... evolved.fragment fragments
|
||||
---@return boolean
|
||||
---@nodiscard
|
||||
function evolved.has_all(entity, ...) end
|
||||
|
||||
---@param entity evolved.entity
|
||||
---@param ... evolved.fragment fragments
|
||||
---@return boolean
|
||||
---@nodiscard
|
||||
function evolved.has_any(entity, ...) end
|
||||
|
||||
---@param entity evolved.entity
|
||||
---@param fragment evolved.fragment
|
||||
---@param component evolved.component
|
||||
function evolved.set(entity, fragment, component) end
|
||||
|
||||
---@param entity evolved.entity
|
||||
---@param fragment evolved.fragment
|
||||
---@param component evolved.component
|
||||
---@return boolean is_assigned
|
||||
function evolved.assign(entity, fragment, component) end
|
||||
|
||||
---@param entity evolved.entity
|
||||
---@param fragment evolved.fragment
|
||||
---@param component evolved.component
|
||||
---@return boolean is_inserted
|
||||
function evolved.insert(entity, fragment, component) end
|
||||
|
||||
---@param entity evolved.entity
|
||||
---@param ... evolved.fragment fragments
|
||||
function evolved.remove(entity, ...) end
|
||||
|
||||
---@param entity evolved.entity
|
||||
function evolved.clear(entity) end
|
||||
|
||||
return evolved
|
||||
|
||||
Reference in New Issue
Block a user