ECS Framework API / EntityList
Class: EntityList
Defined in: packages/core/src/ECS/Utils/EntityList.ts:8
高性能实体列表管理器 管理场景中的所有实体,支持快速查找和批量操作
Constructors
Constructor
new EntityList(
scene):EntityList
Defined in: packages/core/src/ECS/Utils/EntityList.ts:24
Parameters
scene
any
Returns
EntityList
Properties
buffer
buffer:
Entity[] =[]
Defined in: packages/core/src/ECS/Utils/EntityList.ts:9
Accessors
count
Get Signature
get count():
number
Defined in: packages/core/src/ECS/Utils/EntityList.ts:20
Returns
number
Methods
add()
add(
entity):void
Defined in: packages/core/src/ECS/Utils/EntityList.ts:32
添加实体
Parameters
entity
要添加的实体
Returns
void
remove()
remove(
entity):void
Defined in: packages/core/src/ECS/Utils/EntityList.ts:57
移除实体
Parameters
entity
要移除的实体
Returns
void
removeAllEntities()
removeAllEntities():
void
Defined in: packages/core/src/ECS/Utils/EntityList.ts:84
移除所有实体
Returns
void
updateLists()
updateLists():
void
Defined in: packages/core/src/ECS/Utils/EntityList.ts:110
更新实体列表,处理延迟操作
Returns
void
update()
update():
void
Defined in: packages/core/src/ECS/Utils/EntityList.ts:133
更新实体列表
处理延迟操作(添加/删除实体)
Returns
void
findEntity()
findEntity(
name):null|Entity
Defined in: packages/core/src/ECS/Utils/EntityList.ts:143
根据名称查找实体(使用索引,O(1)复杂度)
Parameters
name
string
实体名称
Returns
null | Entity
找到的第一个实体或null
findEntitiesByName()
findEntitiesByName(
name):Entity[]
Defined in: packages/core/src/ECS/Utils/EntityList.ts:153
根据名称查找所有实体
Parameters
name
string
实体名称
Returns
Entity[]
找到的所有实体数组
findEntityById()
findEntityById(
id):null|Entity
Defined in: packages/core/src/ECS/Utils/EntityList.ts:162
根据ID查找实体(使用索引,O(1)复杂度)
Parameters
id
number
实体ID
Returns
null | Entity
找到的实体或null
findEntitiesByTag()
findEntitiesByTag(
tag):Entity[]
Defined in: packages/core/src/ECS/Utils/EntityList.ts:171
根据标签查找实体
Parameters
tag
number
标签
Returns
Entity[]
找到的所有实体数组
findEntitiesWithComponent()
findEntitiesWithComponent<
T>(componentType):Entity[]
Defined in: packages/core/src/ECS/Utils/EntityList.ts:188
根据组件类型查找实体
Type Parameters
T
T extends Component
Parameters
componentType
(...args) => T
组件类型
Returns
Entity[]
找到的所有实体数组
forEach()
forEach(
action):void
Defined in: packages/core/src/ECS/Utils/EntityList.ts:204
批量操作:对所有实体执行指定操作
Parameters
action
(entity) => void
要执行的操作
Returns
void
forEachWhere()
forEachWhere(
predicate,action):void
Defined in: packages/core/src/ECS/Utils/EntityList.ts:215
批量操作:对符合条件的实体执行指定操作
Parameters
predicate
(entity) => boolean
筛选条件
action
(entity) => void
要执行的操作
Returns
void
getStats()
getStats():
object
Defined in: packages/core/src/ECS/Utils/EntityList.ts:260
获取实体列表的统计信息
Returns
object
统计信息
totalEntities
totalEntities:
number
activeEntities
activeEntities:
number
pendingAdd
pendingAdd:
number
pendingRemove
pendingRemove:
number
nameIndexSize
nameIndexSize:
number