ECS Framework API / EntityList
Class: EntityList
Defined in: ECS/Utils/EntityList.ts:8
高性能实体列表管理器 管理场景中的所有实体,支持快速查找和批量操作
Constructors
Constructor
new EntityList(
scene
):EntityList
Defined in: ECS/Utils/EntityList.ts:28
Parameters
scene
any
Returns
EntityList
Properties
buffer
buffer:
Entity
[] =[]
Defined in: ECS/Utils/EntityList.ts:9
Accessors
count
Get Signature
get count():
number
Defined in: ECS/Utils/EntityList.ts:24
Returns
number
Methods
setEnableEntityDirectUpdate()
setEnableEntityDirectUpdate(
enabled
):void
Defined in: ECS/Utils/EntityList.ts:35
设置是否启用实体直接更新
Parameters
enabled
boolean
Returns
void
add()
add(
entity
):void
Defined in: ECS/Utils/EntityList.ts:43
添加实体(立即添加或延迟添加)
Parameters
entity
要添加的实体
Returns
void
remove()
remove(
entity
):void
Defined in: ECS/Utils/EntityList.ts:73
移除实体(立即移除或延迟移除)
Parameters
entity
要移除的实体
Returns
void
removeAllEntities()
removeAllEntities():
void
Defined in: ECS/Utils/EntityList.ts:105
移除所有实体
Returns
void
updateLists()
updateLists():
void
Defined in: ECS/Utils/EntityList.ts:131
更新实体列表,处理延迟操作
Returns
void
update()
update():
void
Defined in: ECS/Utils/EntityList.ts:152
更新实体列表和实体
Returns
void
findEntity()
findEntity(
name
):null
|Entity
Defined in: ECS/Utils/EntityList.ts:178
根据名称查找实体(使用索引,O(1)复杂度)
Parameters
name
string
实体名称
Returns
null
| Entity
找到的第一个实体或null
findEntitiesByName()
findEntitiesByName(
name
):Entity
[]
Defined in: ECS/Utils/EntityList.ts:188
根据名称查找所有实体
Parameters
name
string
实体名称
Returns
Entity
[]
找到的所有实体数组
findEntityById()
findEntityById(
id
):null
|Entity
Defined in: ECS/Utils/EntityList.ts:197
根据ID查找实体(使用索引,O(1)复杂度)
Parameters
id
number
实体ID
Returns
null
| Entity
找到的实体或null
findEntitiesByTag()
findEntitiesByTag(
tag
):Entity
[]
Defined in: ECS/Utils/EntityList.ts:206
根据标签查找实体
Parameters
tag
number
标签
Returns
Entity
[]
找到的所有实体数组
findEntitiesWithComponent()
findEntitiesWithComponent<
T
>(componentType
):Entity
[]
Defined in: ECS/Utils/EntityList.ts:223
根据组件类型查找实体
Type Parameters
T
T
extends Component
Parameters
componentType
(...args
) => T
组件类型
Returns
Entity
[]
找到的所有实体数组
forEach()
forEach(
action
):void
Defined in: ECS/Utils/EntityList.ts:239
批量操作:对所有实体执行指定操作
Parameters
action
(entity
) => void
要执行的操作
Returns
void
forEachWhere()
forEachWhere(
predicate
,action
):void
Defined in: ECS/Utils/EntityList.ts:250
批量操作:对符合条件的实体执行指定操作
Parameters
predicate
(entity
) => boolean
筛选条件
action
(entity
) => void
要执行的操作
Returns
void
getStats()
getStats():
object
Defined in: ECS/Utils/EntityList.ts:295
获取实体列表的统计信息
Returns
object
统计信息
totalEntities
totalEntities:
number
activeEntities
activeEntities:
number
pendingAdd
pendingAdd:
number
pendingRemove
pendingRemove:
number
nameIndexSize
nameIndexSize:
number