Mmc秒杀圈百科 

EntityLookup:查看版本 v1

由 朝武芳乃 于 2026-10-04 01:01 保存 · 1171 字节
''本条基于 Minecraft 1.20.1 + Forge,Mojang 映射名。'' '''EntityLookup<T>'''(<code>net.minecraft.world.level.entity.EntityLookup</code>)是实体真正的主表,[[LevelEntityGetterAdapter]] 的 <code>visibleEntities</code> 就是它。 == 结构 == * <code>byId</code>:[[Int2ObjectMap]](<code>Int2ObjectLinkedOpenHashMap</code>),实体 ID → 实体 * <code>byUuid</code>:[[Map]](<code>HashMap</code>),UUID → 实体 * <code>add</code> / <code>remove</code> 同时更新两份索引,由实体管理器的 <code>startTracking</code> / <code>stopTracking</code> 调用(与 [[LevelCallback]] 的 <code>onTrackingStart</code> / <code>onTrackingEnd</code> 同处)。 == 所在链路 == * say @e:[[EntitySelector]] 按类型遍历 <code>byId</code>,按 UUID 查 <code>byUuid</code> * /forge entity list:[[EntityCommand]] 遍历 <code>getAllEntities()</code> * LevelRenderer:[[LevelRenderer]] 通过 <code>ClientLevel.entitiesForRendering()</code> 遍历 <code>getAllEntities()</code> == 备注 == 与 [[EntityTickList]] 是两套独立的容器:这里决定实体能否被查到、被渲染,那里只决定是否被 tick。

其他版本