Implement scene-based chapter quest progression
Some checks failed
CI / verify (push) Has been cancelled

This commit is contained in:
2026-04-08 11:58:47 +08:00
parent 9d2fc9e4b8
commit bd9fdcbe31
170 changed files with 18259 additions and 1049 deletions

View File

@@ -1,6 +1,12 @@
import { CustomWorldProfile, WorldTemplateType, WorldType } from '../types';
export type CustomWorldThemeMode = 'martial' | 'arcane' | 'machina' | 'tide' | 'rift';
export type CustomWorldThemeMode =
| 'martial'
| 'arcane'
| 'machina'
| 'tide'
| 'rift'
| 'mythic';
export function detectCustomWorldThemeMode(
profile: Pick<CustomWorldProfile, 'settingText' | 'summary' | 'tone' | 'playerGoal' | 'templateWorldType'>,
@@ -13,12 +19,12 @@ export function detectCustomWorldThemeMode(
if (/[]/u.test(source)) return 'arcane';
if (/[]/u.test(source)) return 'martial';
return profile.templateWorldType === WorldType.XIANXIA ? 'arcane' : 'martial';
return 'mythic';
}
export function resolveCustomWorldAnchorWorldType(
profile: Pick<CustomWorldProfile, 'settingText' | 'summary' | 'tone' | 'playerGoal' | 'templateWorldType'>,
): WorldTemplateType {
const themeMode = detectCustomWorldThemeMode(profile);
return themeMode === 'arcane' || themeMode === 'rift' ? WorldType.XIANXIA : WorldType.WUXIA;
return themeMode === 'arcane' ? WorldType.XIANXIA : WorldType.WUXIA;
}