Add character creation screen with race/class/appearance customization

Implements a full character creation UI integrated into the existing flow.
In single-player mode, auth screen now goes to character creation before
entering the world. In online mode, a "Create Character" button on the
character selection screen sends CMSG_CHAR_CREATE to the server. Includes
WoW 3.3.5a race/class combo validation and appearance range limits.
This commit is contained in:
Kelsi 2026-02-05 14:13:48 -08:00
parent 129bbac9b3
commit 0605d1522d
16 changed files with 611 additions and 30 deletions

View file

@ -15,6 +15,7 @@ UIManager::UIManager() {
// Create screen instances
authScreen = std::make_unique<AuthScreen>();
realmScreen = std::make_unique<RealmScreen>();
characterCreateScreen = std::make_unique<CharacterCreateScreen>();
characterScreen = std::make_unique<CharacterScreen>();
gameScreen = std::make_unique<GameScreen>();
}
@ -101,6 +102,12 @@ void UIManager::render(core::AppState appState, auth::AuthHandler* authHandler,
}
break;
case core::AppState::CHARACTER_CREATION:
if (gameHandler) {
characterCreateScreen->render(*gameHandler);
}
break;
case core::AppState::CHARACTER_SELECTION:
if (gameHandler) {
characterScreen->render(*gameHandler);