Fix celestial audio and forging view 修复天体演化音效与锻造界面恢复 - #5132
PigeonNian merged 1 commit into
Conversation
WhereisFff
commented
Oct 2, 2026
- 将演化音乐归入唱片音量分类,并以单声道音源实现 64 格原生距离衰减。
- 保持音效与字幕的听距一致。
- 通过实时同步入口恢复锻造状态,避免重开界面时丢失正在锻造的进度。
- fixed [Bug] 锻星砧演化时播放的音乐走的类型不对,锻造天体时退出UI重进没有保持锻造UI #5131
- 将演化音乐归入唱片音量分类,并以单声道音源实现 64 格原生距离衰减。 - 保持音效与字幕的听距一致。 - 通过实时同步入口恢复锻造状态,避免重开界面时丢失正在锻造的进度。
Reason: script execution via -e/-c flag Reply |
Reason: script execution via -e/-c flag Reply |
Reason: script execution via -e/-c flag Reply |
代码审查摘要 — PR #5132操作: 📋 声称验证(3 条 + fix #5131 全部核实)
根因补充(建议写进 PR 描述,对维护者价值高): 🔴 关键问题无。
|
| 被测目标 | 推荐场景 | 优先级 |
|---|---|---|
CelestialForgingAnvilBlockEntity.onDataPacket/handleUpdateTag |
起搜索 → 投递数据包 → 断言客户端 isSearching()/getSearchTicksRemaining() 保持;再断言重开 UI 状态不回退 |
🔴 |
CfaSearchController.loadPersistent |
传入「不含 searchCapturedSeed/searchSeedStateKnown 的同步 tag」→ 断言不触发 stop()(或状态未被清零) |
🔴 |
QuenchedOutSound + sounds.json |
断言音源为 RECORDS、Attenuation.LINEAR、attenuation_distance=64;/stopsound records 能停;音量滑块归「唱片」 |
🟡 |
ModSoundDefinitionsProvider |
runData 幂等(重跑无 diff) |
🟢 |
结论: 建议合并(无阻塞项) —— 三处改动定位准确、有据可查,两条
由 Hermes Agent 审查(离线取证:本地 1.21.1 client jar + Mojang mappings 反汇编、原版 sounds.json 镜像、ogg 头解析与 PCM 对账)
|
⏳ Retrying in 2.1s (attempt 1/3)... |
|
⏳ Retrying in 4.1s (attempt 2/3)... |
|
❌ API failed after 3 retries — HTTP 503: Service temporarily unavailable |
|
API call failed after 3 retries: HTTP 503: Service temporarily unavailable |
|
⏳ Retrying in 2.2s (attempt 1/3)... |
|
⏳ Retrying in 4.3s (attempt 2/3)... |
|
❌ API failed after 3 retries — HTTP 503: Service temporarily unavailable |
|
API call failed after 3 retries: HTTP 503: Service temporarily unavailable |
|
PR #5132 已 closed(由 @PigeonNian 合并入 按 webhook 约定, 由 Hermes Agent 处理 |
…修复到26.1 (#5143) * The text regarding celestial death has been corrected, and some progress has been made. 修正了天体死亡文本,增加了一些进度 (#5129) * feat(advancement): 添加天体进化挑战成就及触发器 - 新增 CelestialEvolutionTrigger 用于天体质量进化判定 - 在触发 util 中添加 celestialEvolution 方法,触发成就判定 - 在加速器逻辑中调用触发方法进行成就检测 - 添加无残留(no_remnant)挑战成就,要求64质量铁砧的天体进化至终局 - 将成就文本翻译添加至英文语言文件和特殊字符文件 - 在成就数据中注册无残留成就及其触发条件 * feat(advancement): 添加行星毁灭成就及触发器支持 - 新增PlanetDetonationTrigger用于行星毁灭事件的判定 - 在ExcavatorHandler中增加触发行星毁灭触发器的逻辑 - 在AdvancementLineHelper中集成planetDetonation方法方便创建该成就 - 在AnvilCraftAdvancement中添加efficiency成就分支,绑定行星毁灭触发器 - 更新语言文件,添加行星毁灭成就的标题与描述 - 注册PlanetDetonationTrigger触发器并完善其触发实现 - 新增efficiency成就JSON配置文件,定义触发条件及显示信息 * feat(advancement): 新增因行星坍缩死亡的成就触发器 - 添加了 PlanetaryCollapseDeathTrigger 触发器类及其数据结构 - 在 ModCriterionTriggers 中注册 planetary_collapse_death 触发器 - 在 AdvancementLineHelper 中新增 planetaryCollapseDeath 方法便于调用 - 在 AnvilCraftAdvancement 中添加 Cannon Fodder 成就,绑定行星坍缩死亡触发器 - 在语言文件中添加 Cannon Fodder 成就标题与描述的多语言支持 - 在 OverworldLikeEventListener 中监听行星坍缩死亡事件并触发相应成就 - 在 TriggerUtil 中实现 planetaryCollapseDeath 方法来触发成就判定 - 新增 Cannon Fodder 成就的 JSON 配置文件,包含父级与图标等信息 - 修改效率成就添加隐藏属性,改善游戏内成就展示体验 * feat(advancement): 新增黑洞和中子星终局星体成就 - TriggerUtil新增支持根据StellarTerminal.Kind触发星体演化成就 - CelestialEvolutionTrigger增加对终局类型的判定和对应触发方法 - AdvancementLineHelper新增celestialEvolution重载方法支持终局类型参数 - AnvilCraftAdvancement中增加黑洞和中子星分支成就定义和保存 - AdvancementLang添加黑洞与中子星成就名称及描述多语言支持 - 语言文件(en_us, en_ud)增加对应成就的描述和标题 - 新增黑洞和中子星成就JSON数据文件,定义触发条件和显示信息 * feat(damage): 新增天体接触伤害类型及独立标签支持 - 添加黑洞接触、恒星接触及行星接触三种新伤害类型 - 天体接触伤害采用独立类型以实现专属死亡提示 - 更新伤害标签,支持新伤害类型绕过护甲、抗性、击退等效果 - 修改重力控制器中伤害来源,替换为对应新天体接触伤害类型 - 保持星体及行星接触伤害原版燃烧和摔落效果表现不变 - 增加对应的语言文本显示新伤害的死亡描述信息 - 修正玩家攻击混入对行星接触伤害的判定,保持原摔落伤害一致性 - 新增相关资源数据文件,完善伤害类型和标签配置 * feat(advancement): 添加“夜晚来访”星接触死亡进度条件 - 新增 StarContactDeathTrigger 实现星接触死亡触发器 - 注册并初始化星接触死亡触发条件 ModCriterionTriggers.STAR_CONTACT_DEATH - AdvancementLineHelper 新增 starContactDeath 方法支持该触发器 - AnvilCraftAdvancement 新增“come_at_night”任务,使用星接触死亡触发器 - AdvancementLang 中添加“come_at_night”进度名称及描述文本 - OverworldLikeEventListener 监听星接触死亡事件触发进度 - TriggerUtil 新增 starContactDeath 方法简化触发调用 * feat(locale): 添加“come_at_night”成就的中英文描述 - 新增“advancements.anvilcraft.come_at_night”标题的本地化文本 - 新增“advancements.anvilcraft.come_at_night”描述的本地化文本 - 中文描述内容为“被星光笼罩” - 英文标题内容为“Showdown at Night”倒转样式 * feat(advancement): 添加“come_at_night”隐藏成就 - 创建新的隐藏成就“come_at_night” - 设置成就触发器为“star_contact_death” - 指定成就图标为“celestial_forging_anvil” - 定义成就的父级为“the_start” - 启用成就的遥测事件发送 --------- Co-authored-by: Pigeon_Nian <adove2005@163.com> * fix(celestial): 修复演化音效衰减与锻造界面恢复 (#5131) (#5132) - 将演化音乐归入唱片音量分类,并以单声道音源实现 64 格原生距离衰减。 - 保持音效与字幕的听距一致。 - 通过实时同步入口恢复锻造状态,避免重开界面时丢失正在锻造的进度。 * fix(building): 修复幻灵铁砧虚影撤销时重复返还物品 (#5134) - 撤销无掉落幻灵铁砧虚影时不再结算基础物品 - 保留实体铁砧与其他下落方块的资源结算 fixed #5133 * fix(item-splitter): 修复物品分配器掉落物超出堆叠上限 (#5136) 按物品实际堆叠上限拆分每个目标位置的掉落物,保留均分份额、余数、零动量和拾取延迟。 修复 #5135 * fix(button): 修复大红按钮遮挡边缘交互与按压动画 (#5141) - 使用实际命中位置进行服务端射线校验,修复按钮可见但底座中心被遮挡时无法按下的问题。 - 按住按钮后等待服务端确认再播放手部动画,并忽略已释放或已切换目标的过期确认。 - fixed #5138 * fix(storage-port): 修复服务端扫描仓储端口时崩溃 (#5140) - 优先使用原版 includeData 标志控制数据复制,避免服务端扫描读取客户端按键状态 - 保留 26.1 服务端中键克隆时的缓存、标记与流体数据 (cherry picked from commit d7c2f74) --------- Co-authored-by: PigeonNian <78527064+PigeonNian@users.noreply.github.com> Co-authored-by: Pigeon_Nian <adove2005@163.com>