EntityMagneticStorm(SA/entity/EntityMagneticStorm.java:281-329,485 行)等 Drive 族实体每 tick 两次 getEntitiesWithinAABBExcludingEntity(Destructable+Attackable selector),alreadyHitEntity 为 ArrayList,removeAll/contains 线性 O(n²);命中后每实体 10 次 spawnParticle。SA_9.java 一次释放多个 EntityMagneticStorm(:111/:120),成本成倍。 建议:alreadyHitEntity 换按 EntityId 的 Set;粒子循环改用 worldObj.spawnParticle 批量或削减数量。
Archive 组织仓已过时(Daniel 2026-09-23),整组织 issue 统一关闭。
No dependencies set.
The note is not visible to the blocked user.
问题描述
EntityMagneticStorm(SA/entity/EntityMagneticStorm.java:281-329,485 行)等 Drive 族实体每 tick 两次 getEntitiesWithinAABBExcludingEntity(Destructable+Attackable selector),alreadyHitEntity 为 ArrayList,removeAll/contains 线性 O(n²);命中后每实体 10 次 spawnParticle。SA_9.java 一次释放多个 EntityMagneticStorm(:111/:120),成本成倍。
建议:alreadyHitEntity 换按 EntityId 的 Set;粒子循环改用 worldObj.spawnParticle 批量或削减数量。
Archive 组织仓已过时(Daniel 2026-09-23),整组织 issue 统一关闭。
[性能][中] SA 实体每 tick 双 selector AABB 扫描 + ArrayList 已命中列表 O(n²)(多实体连发放大)to SA 实体每 tick 双 selector AABB 扫描 + ArrayList 已命中列表 O(n²)(多实体连发放大)