Files
gplan-2/game/core/attunement.gd
T
DKChan 9a72394652 chore(代码卫生): 头注存量清偿批——82 文件按两类白名单改写为 ## 文档注释载体
按 code-conventions §1.4.1 第三轮定稿执行:core 22+schemas 18+presentation 根 14+views 28,全部头注 #→##、删日期/变更叙事/GDD 与架构反向链接/字段与域清单/机制描述,保留职责摘要+真实使用约束(防事故禁令/单一入口/信号契约每信号一行)。main.gd 31→5 行、save_manager 45→5 行、adventure_runner 37→5 行为最大单件。子代理分模块执行(波一 core+schemas、波二 presentation+views,并发≤2)。验收=tools/verify_comment_only_change.py 逐字节校验(82 文件头注区外逐行一致=零行为变更)+audit_file_headers 全绿;纯注释批免冒烟(先例 5843270)
2026-10-16 23:28:07 +08:00

18 lines
803 B
GDScript

## VERTICAL SLICE - NOT FOR PRODUCTION
## 同调位求值服务:槽位数与装配参数的纯函数读数面(垂直切片验证:营地装配同调件在战斗内生效)。
## 零 await、零 RNG、零写副作用——静态纯函数同输入恒同输出,呈现期可安全重复求值。
class_name Attunement
extends RefCounted
# 同调位实时求值(营地进冒险前求值一次 + 装配覆盖层实时呈现共用同一口径):
# 槽位数量 = att_socket1..3 树点亮数(tree_level>=1),未点亮=0。
# db 参数保留(调用面两处签名不变——当前判定源零表依赖,参数弃置)。
static func slots(db, save) -> int:
if save == null:
return 0
var n := 0
for i in range(1, 4):
if save.tree_level("att_socket%d" % i) >= 1:
n += 1
return n