Mmc秒杀圈百科 

EntityLookup

由 朝武芳乃管理员 最后编辑于 2026-10-04 01:01 · 当前版本 v1
标签:技术正经内容forge
你尚未登录。登录后可编辑本页与创建新条目 —— 登录 或 注册账号。

本条基于 Minecraft 1.20.1 + Forge,Mojang 映射名。

EntityLookup<T>(net.minecraft.world.level.entity.EntityLookup)是实体真正的主表,LevelEntityGetterAdapter 的 visibleEntities 就是它。

结构

  • byId:Int2ObjectMap(Int2ObjectLinkedOpenHashMap),实体 ID → 实体
  • byUuid:Map(HashMap),UUID → 实体
  • add / remove 同时更新两份索引,由实体管理器的 startTracking / stopTracking 调用(与 LevelCallback 的 onTrackingStart / onTrackingEnd 同处)。

所在链路

  • say @e:EntitySelector 按类型遍历 byId,按 UUID 查 byUuid
  • /forge entity list:EntityCommand 遍历 getAllEntities()
  • LevelRenderer:LevelRenderer 通过 ClientLevel.entitiesForRendering() 遍历 getAllEntities()

备注

与 EntityTickList 是两套独立的容器:这里决定实体能否被查到、被渲染,那里只决定是否被 tick。

你对本条的回应 · 登录后可表态

讨论(0)

讨论不进入条目正文的版本历史,适合提出修改建议、指出问题或补充来源。
还没有人讨论这个条目。你可以提出修改建议、指出问题或补充来源。

发表话题

请先 登录 后再参与讨论。