Add knight health, boss attack patterns, chases, and music

Knight now has a hit-bar (pirates deal 1, bosses deal 3 damage) with
a new vitality upgrade. Bosses grow bigger/scarier and cycle through
melee/missile/bomb/laser attack patterns; boss HP is now exactly 3x
the local pirate's. Zones 20 and 40 replace their boss with a unique
chase (Pirate Cruiser laser dodge + fuel cell collection; Black Swarm
plasma dodge with a tap-to-escape engulf event). Pirates spawn 5x
faster and got a bandana/eyepatch redesign. Added a procedural music
engine, a visible destination galaxy in the supernova cutscene, and
expanded the Data Archive lore to trigger at zones 10/20/40/60/80/100.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01D5SuZW1XGCkahPX7cHMoRP
This commit is contained in:
azykov@mail.ru
2026-09-05 16:05:43 +03:00
co-authored by Claude Sonnet 5
parent 0788f42699
commit 799d595e7c
9 changed files with 1177 additions and 58 deletions
+25
View File
@@ -0,0 +1,25 @@
import type { GameSnapshot } from '../game/types';
export function ChaseBanner({ snapshot }: { snapshot: GameSnapshot }) {
if (!snapshot.chaseActive) return null;
if (snapshot.chaseKind === 'cruiser') {
return (
<div className="chase-banner">
<div className="chase-title">Погоня: Пиратский Крейсер</div>
<div className="chase-sub">
Топливных ячеек: {snapshot.chaseFuelCells}/{snapshot.chaseFuelRequired}
</div>
<div className="chase-hint">Уворачивайтесь от лазеров и астероидов</div>
</div>
);
}
return (
<div className="chase-banner">
<div className="chase-title">Погоня: Чёрный Рой</div>
<div className="chase-sub">Осталось: {Math.ceil(snapshot.chaseTimeRemaining)} с</div>
<div className="chase-hint">Уворачивайтесь от плазмы</div>
</div>
);
}