Add chase drift, main/pause menus, and unlockable skins

Zones 20 and 40 now push everything rightward for the first 20
seconds of their chase, forcing the player to tap left to stay on
screen. Added a main menu (new game / continue / skins), an in-game
pause menu, and a skins system that unlocks permanent stat bonuses
(speed, damage, HP, crystal/dark-matter/droid multipliers) as the
player's max zone reached increases.

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-07 10:16:46 +03:00
co-authored by Claude Sonnet 5
parent 86fd7b8e70
commit 6b638b84d0
9 changed files with 597 additions and 34 deletions
+19
View File
@@ -124,6 +124,19 @@ export interface LoreEntry {
text: string;
}
export type SkinBonusType = 'speed' | 'damage' | 'hp' | 'crystalMult' | 'darkMatterMult' | 'droidDamageMult';
export interface SkinDef {
id: string;
name: string;
unlockZone: number;
bonusType: SkinBonusType;
bonusValue: number;
primary: string;
secondary: string;
accent: string;
}
export interface GameSnapshot {
score: number;
zone: number;
@@ -155,4 +168,10 @@ export interface GameSnapshot {
chaseTimeRemaining: number;
chaseEngulfed: boolean;
chaseEscapeMeter: number;
chaseDriftActive: boolean;
chaseDriftRemaining: number;
paused: boolean;
maxZoneReached: number;
equippedSkin: string;
hasSave: boolean;
}