1. spells.json: modifier_homing 的 description 补一空格对齐到第 72 列, 与相邻 type 1 条目一致,避免错位被复制传播。 2. cast_stats.gd: homing_add 注释改用全角括号与相邻行统一;措辞明确为 「最大转向角速度」——按 spec §2.1 该值是 clampf 上界而非实际角速度, 原措辞可能误导调平衡的人设错值。 3. spell_evaluator.gd: 分支快照注释点明 pierce_add 是已知 pre-existing 遗漏而非笔误,防止后来人把「10 字段」误读为「全部字段」。 4. spell_evaluator.gd: 归航冷数据块加注 homing_range 同 bounce_range/ bounce_decay 仅从 ACTION meta 读取,MODIFIER 覆盖静默失效(一致行为, 非回归),省掉后来人一次 debug。 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
30 lines
1.3 KiB
GDScript
30 lines
1.3 KiB
GDScript
## CastStats — 单次施法的可修改弹道参数负载
|
||
## 由 MODIFIER 节点在执行间修改;每次 execute_compiled 开始时从 SpellContext 隶新
|
||
extends RefCounted
|
||
class_name CastStats
|
||
|
||
var damage_add: float = 0.0 # 加法伤害加成
|
||
var damage_mult: float = 1.0 # 乘法伤害倍率
|
||
var spread_count: int = 1 # 单 ACTION 同时发射数量(扩散)
|
||
var multicast_count: int = 0 # S3:额外可执行的 ACTION 数(0=仅执行1个)
|
||
var lifetime: float = 0.0 # 对默认 lifetime 的差値(<0 缩短)
|
||
var speed_mult: float = 1.0 # 弹速倍率
|
||
var radius_mult: float = 1.0 # 弹体半径倍率
|
||
var crit_chance: float = 0.0 # 暴击概率
|
||
var pierce_add: int = 0 # MODIFIER 累加的穿透次数(叠加到 ACTION 自带 pierce)
|
||
var bounce_add: int = 0 # MODIFIER 累加的弹跳次数(叠加到 ACTION 自带 bounce)
|
||
var homing_add: float = 0.0 # MODIFIER 累加的归航最大转向角速度(弧度/秒,叠加到 ACTION 自带 homing)
|
||
|
||
func reset() -> void:
|
||
damage_add = 0.0
|
||
damage_mult = 1.0
|
||
spread_count = 1
|
||
multicast_count = 0
|
||
lifetime = 0.0
|
||
speed_mult = 1.0
|
||
radius_mult = 1.0
|
||
crit_chance = 0.0
|
||
pierce_add = 0
|
||
bounce_add = 0
|
||
homing_add = 0.0
|