NS-23: allow ground pick on bump slopes (fix stuck departure)

MIN_WALKABLE_NORMAL_DOT_UP 0.82 is stricter than NS-19 frustum slopes
(~45° / dot 0.71 on Bump A, ~39° / 0.78 on B). Clicks off the plateau
often hit the slope first; the pick was dropped with no MoveCommand.
Lower to 0.64 so ramps register; vertical walls remain ~0.
pull/23/head
VinPropane 2026-04-05 01:03:51 -04:00
parent 4b9e30c624
commit 725bef1133
1 changed files with 3 additions and 3 deletions

View File

@ -1,14 +1,14 @@
extends Node3D
## NS-16: walkable ground ray pick. Emits world target for MoveCommand; camera wired from main.
## NS-19: ignores hits on **steep** surfaces (e.g. pedestal **walls**) so players cannot chain small
## vertical steps up a vertical face; only **floor-like** normals (high dot with UP) count.
## NS-19: reject vertical faces (pedestal). Bump slopes ~3945° (dot UP ~0.710.78).
## 0.82 rejected slope-first picks when leaving plateau; use 0.64. Walls stay ~0.
## (No `class_name` so headless/CI can load the project before `.godot` import exists.)
signal target_chosen(world: Vector3)
## Minimum `hit_normal.dot(Vector3.UP)` to accept a pick (0 = vertical wall, 1 = flat floor).
const MIN_WALKABLE_NORMAL_DOT_UP: float = 0.82
const MIN_WALKABLE_NORMAL_DOT_UP: float = 0.64
## Fallback when `Viewport.get_camera_3d()` is null (e.g. some editor setups). Set from `main.gd`
## in `_ready`.