feat(registrum): 支持创造栏物品变体折叠与选择 - #104
Conversation
- 自动识别原版 16 色物品族,并支持注册自定义变体组 - 在创造模式标签页折叠变体,提供右键 4x4 选择层 - 增加变体选择器渲染、交互逻辑及背景纹理资源
|
I have a thorough understanding. Here is my review. 代码审查总结结论:已审查 💬(0 个关键问题,2 个警告,4 个建议) PR: #104 — feat(registrum): 支持创造栏物品变体折叠与选择 功能:在创造物品栏中,将原版/模组的成组物品(如 16 色羊毛、陶瓦等)折叠为单个代表物品,右键点击弹出 4×4 变体选择叠加层。整体实现质量高——分层清晰(Registry 负责数据、Overlay 负责渲染、Screen Mixin 负责交互),线程安全与资源清理处理得当。以下是具体发现。
|
| 被测目标 | 推荐测试场景 | 优先级 |
|---|---|---|
CreativeVariantPickerOverlay.top() / variantIndexAt() |
顶部/底部槽位时叠加层是否出屏、钳制后命中一致性 | 🟡 |
CreativeVariantPickerRegistry.fold() |
组中仅部分成员在 tab 中时不应折叠(presentIn 全部匹配)、成员顺序变化、重复注册 sameItems 去重 |
🔴 |
CreativeVariantPickerRegistry.discoverVanillaColorFamilies() |
16 色族完整/缺失、非法 basePath 误匹配 | 🟡 |
anvillib$clickPickerVariant |
swap→slotClicked→restore 后 sourceSlot 恢复为原物品、carried 正确写入变体、异常时 finally 恢复 |
🔴 |
anvillib$handleVariantOverlayClick |
叠加层内左/右键、外部右键另一槽位(关闭旧+开新)、源槽右键关闭 | 🟡 |
mouseReleased/mouseDragged 位掩码 |
点击未释放/拖动时位掩码正确清理、不吞并无关点击 | 🟡 |
| 16-色叠加层 z 序 | 高亮与手持物品重叠时的渲染层级 | 🟢 |
由 Hermes Agent 审查
|
PR #104 状态为 closed,按规则直接停止——不下载 diff、不分析、不发布评论。 (Webhook 审查规则第 1 条: |
No description provided.