From 04e8cf9c09bcd9c656183303b1fef6a8436f591d Mon Sep 17 00:00:00 2001 From: Joywayer Date: Fri, 24 Jul 2026 15:28:31 +0800 Subject: [PATCH] =?UTF-8?q?docs(spec):=20=E6=98=8E=E7=A1=AE=20bounce+pierc?= =?UTF-8?q?e=20=E7=BB=84=E5=90=88=E8=AF=AD=E4=B9=89=E2=80=94=E2=80=94visit?= =?UTF-8?q?ed=20=E6=8C=81=E7=BB=AD=E4=BD=BF=E6=AF=8F=E6=95=8C=E8=87=B3?= =?UTF-8?q?=E5=A4=9A=E5=91=BD=E4=B8=AD=E4=B8=80=E6=AC=A1=EF=BC=88=E5=88=BB?= =?UTF-8?q?=E6=84=8F=EF=BC=8C=E9=9D=9Ebug=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.8 (1M context) --- docs_dev/specs/2026-07-24-bullet-bounce-design.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs_dev/specs/2026-07-24-bullet-bounce-design.md b/docs_dev/specs/2026-07-24-bullet-bounce-design.md index f9672fa..6ad3d3b 100644 --- a/docs_dev/specs/2026-07-24-bullet-bounce-design.md +++ b/docs_dev/specs/2026-07-24-bullet-bounce-design.md @@ -122,7 +122,7 @@ func _find_nearest_unvisited(origin: Vector2, radius: float, visited: Array) -> ## 5. 非目标(YAGNI) -- bounce + pierce 组合叠加(bounce 优先,二选一)。 +- bounce + pierce 组合叠加(bounce 优先,二选一)。**已明确语义**:`visited_targets` 在 bounce 耗尽后仍保留,命中循环的跳过守卫据此使「已被弹跳命中过的敌人」在后续 pierce 阶段**不再被重复命中**——即同一子弹对每个敌人至多命中一次(避免双重扣血)。此为刻意的合理行为,非 bug(纯 bounce 子弹末次命中后即回收,不受影响;纯 pierce / 普通子弹无 `visited_targets`,完全不受影响)。 - 归航 homing(子计划 ③)。 - 弹跳光束/连线 VFX(仅命中火花,沿用现有 `hit_spark`)。 - C# 热路径(GDScript 足够,500 敌 3.6% 预算)。