По ARCHITECTURE.md: реестр независимых секций, JSON с ключом на секцию. Ключи — явные строковые константы, а не имена классов: релизная сборка минифицирует имена и молча потеряла бы все сохранения. - ISaveSection, SaveManager, IStorage + MemoryStorage - CocosStorage: единственный файл модуля, знающий про движок; при отказе хранилища уходит в память, а не роняет игру - StatsSection: сыграно/побед/поражений/ничьих, текущая и лучшая серия - терпимая загрузка: битый JSON, чужая версия, сломанная секция или отвалившееся хранилище не ломают остальное - проверка чистоты расширена на modules/ со списком адаптеров Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
24 lines
678 B
JSON
24 lines
678 B
JSON
{
|
|
/* Strict type-check for the engine-independent layers. Not used by Cocos. */
|
|
"compilerOptions": {
|
|
"target": "ES2020",
|
|
"module": "ESNext",
|
|
"moduleResolution": "bundler",
|
|
"strict": true,
|
|
"noEmit": true,
|
|
"skipLibCheck": true,
|
|
"types": ["vitest/globals"],
|
|
"baseUrl": ".",
|
|
"paths": {
|
|
"@core/*": ["assets/scripts/core/*"],
|
|
"@modules/*": ["assets/scripts/modules/*"]
|
|
}
|
|
},
|
|
"include": [
|
|
"assets/scripts/core/**/*.ts",
|
|
"assets/scripts/modules/**/*.ts",
|
|
"tests/**/*.ts"
|
|
],
|
|
"exclude": ["assets/scripts/modules/save/CocosStorage.ts"]
|
|
}
|