本条基于 Minecraft 1.20.1 + Forge,Mojang 映射名。
Map(java.util.Map)是 Java 标准的键值映射接口。在实体储存相关代码中主要出现在以下位置。
与实体储存的关系
- EntityLookup 的
byUuid:Map<UUID, T>(HashMap),按 UUID 索引实体。getEntity(UUID)以及 UUID 形式的 EntitySelector 都查这里。它与按 ID 索引的 Int2ObjectMap 同步增删。 - EntityCommand(/forge entity list):用
Map<ResourceLocation, MutablePair<Integer, Map<ChunkPos, Integer>>>临时统计每种实体的数量和所在区块。这只是统计结果,不是存储本身。
备注
byUuid 与 byId 是两份独立索引,只改其中一份会导致按 ID 和按 UUID 查询的结果不一致。