Pace combat resolution across phases instead of resolving instantly
Convert CombatManager's phase state machine to coroutines so drawing, interpreter-queue cards, and enemy actions each resolve one at a time with visible delays, instead of an entire phase mutating state in a single synchronous frame. Delays are skipped when UIPreferences.ReducedMotion is set. Also drops the UI's old artificial cascade stagger for queued-card animations since real per-card timing now provides the spacing.
This commit is contained in:
@@ -41,5 +41,14 @@ namespace KernelPanic.Combat
|
||||
public const int StatUpgradeHeal = 5;
|
||||
public const int StatUpgradeRam = 1;
|
||||
public const int UpgradeMagnitudeBonus = 2;
|
||||
|
||||
// Combat pacing: gaps between phase transitions and per-item resolution steps so
|
||||
// players can follow drawing/queue/enemy resolution instead of seeing it all at once.
|
||||
// Skipped entirely when UIPreferences.ReducedMotion is set.
|
||||
public const float PhaseTransitionDelaySeconds = 0.35f;
|
||||
public const float CardDrawDelaySeconds = 0.12f;
|
||||
public const float QueueCardResolveDelaySeconds = 0.45f;
|
||||
public const float EnemyTelegraphDelaySeconds = 0.35f;
|
||||
public const float EnemyActionDelaySeconds = 0.45f;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user