perf: hyper node creator skips redundant aspect rewrites #30

Merged
layue13 merged 1 commits from perf/hyper-node-creator into main 2026-11-07 06:20:36 +00:00
Owner

Requested by Ethyn · project thread

Closes #16

TileHyperNodeCreator.updateEntity 每 tick 为上方节点新建一份约 50 项的 AspectList 并 setAspects 覆写。现在先用 holdsExactly 无分配地核对节点当前数量,只有被抽干、库存变化或模式切换时才重新构建并覆写;结果与原来逐 tick 覆写一致(被抽干的节点下一 tick 仍会回满)。同时上方方块实体由 3 次查询降为 1 次。造物节点“不消耗物品”的设计未改动,仍是创造页专用。
测试 4 个:各种 total / primalsOnly 下新建列表被识别为当前;形状不变;被抽干、数量变化、模式不同、空节点都会触发重写。

🤖 Generated with Claude Code

<!-- claude-projects-attribution --> _Requested by **Ethyn** · [project thread](https://claude.ai/code/project/chan_01DUNCDJLEksDHKpX5X5cThi?thread=cmsg_01DUNCDJLEksDHKpX5X5cThiWWzw9g2ZbURExfCGHZcnLC)_ Closes #16 `TileHyperNodeCreator.updateEntity` 每 tick 为上方节点新建一份约 50 项的 AspectList 并 `setAspects` 覆写。现在先用 `holdsExactly` 无分配地核对节点当前数量,只有被抽干、库存变化或模式切换时才重新构建并覆写;结果与原来逐 tick 覆写一致(被抽干的节点下一 tick 仍会回满)。同时上方方块实体由 3 次查询降为 1 次。造物节点“不消耗物品”的设计未改动,仍是创造页专用。 测试 4 个:各种 total / primalsOnly 下新建列表被识别为当前;形状不变;被抽干、数量变化、模式不同、空节点都会触发重写。 🤖 Generated with [Claude Code](https://claude.com/claude-code)
layue13 added 1 commit 2026-11-07 06:19:46 +00:00
perf: hyper node creator rewrites the node only when it no longer holds the wanted aspects
Build / build (push) Skipped
Build / publish (push) Skipped
Build / build (pull_request) Successful in 43s
Build / publish (pull_request) Skipped
34f98ad930
Closes TDLM/thaumicadditions#16

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
layue13 merged commit 206d7579ae into main 2026-11-07 06:20:36 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: TDLM/thaumicadditions#30