Slice 1: combat readability + HUD declutter (DR-038)
Four playtest do-now wins: - Enemy health bars: pooled world-space Canvas, on-damage-sticky + fade, always-on <25% HP (CombatFeedbackSystem; no new replication). - Telegraph fix: new baked client-safe EnemyTelegraph sizes the danger-cone ramp per enemy (0->1 ending at impact, fixes the Charger plateau); windup 18->22; a windup scale-pulse. - Build-mode toggle: BuildPaletteState.PaletteOpen hides the palette by default, Tab / gamepad-Y toggles, with a discovery chip (HudSystem/BuildSendSystem). - Charger committed-lunge tell: [GhostEnabledBit] IsLunging derived once/tick from LungeState (the Dead idiom); the danger cone persists through the lunge. 345/345 EditMode (+3 IsLunging derive tests); Play-validated: ghost-hash change did not break the handshake, bake correct (telegraph on all enemies, IsLunging baked-disabled on the Charger, replicated to client), no runtime errors. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -74,6 +74,10 @@ namespace ProjectM.Client
|
||||
/// <summary>Tether line width (world units).</summary>
|
||||
public static float LockOnLineWidth;
|
||||
|
||||
// ---- Feature B: enemy health bars (Slice 1) ----
|
||||
/// <summary>Squared world-distance beyond which a bar is hidden when the pool cap is reached (default 400 = 20m).</summary>
|
||||
public static float HealthBarMaxDistSq;
|
||||
|
||||
// ---- Feature 5 (MC-1): dash juice ----
|
||||
/// <summary>Camera shake on the local player's dash start.</summary>
|
||||
public static float DashShake;
|
||||
@@ -124,6 +128,9 @@ namespace ProjectM.Client
|
||||
LockOnLineColor = new Color(0.55f, 0.9f, 1f, 0.35f);
|
||||
LockOnLineWidth = 0.05f;
|
||||
|
||||
// Feature B health bars (Slice 1)
|
||||
HealthBarMaxDistSq = 400f; // 20 m radius
|
||||
|
||||
// Feature 5 dash (MC-1)
|
||||
DashShake = 0.18f;
|
||||
DashFovKick = 1.2f;
|
||||
|
||||
Reference in New Issue
Block a user