mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-28 09:33:52 +00:00
Handle SMSG_CHARACTER_LOGIN_FAILED (0x041) for AzerothCore/Playerbot compatibility
Previously this opcode was unrecognised and silently dropped, leaving the client stuck in ENTERING_WORLD with no feedback when the server rejected a login (duplicate session, world down, disabled race/class, etc.). Now we decode the LoginFailureReason byte, reset state to CHAR_LIST_RECEIVED so the player can retry, and surface a red error message on the character screen via the new CharLoginFailCallback. Also adds isError colour support to CharacterScreen::setStatus so failures show in red and successes in green.
This commit is contained in:
parent
36fc1df706
commit
7cf060a9f6
11 changed files with 61 additions and 4 deletions
|
|
@ -58,6 +58,7 @@ public:
|
|||
restoredLastCharacter = false;
|
||||
newlyCreatedCharacterName.clear();
|
||||
statusMessage.clear();
|
||||
statusIsError = false;
|
||||
deleteConfirmStage = 0;
|
||||
previewInitialized_ = false;
|
||||
previewGuid_ = 0;
|
||||
|
|
@ -80,7 +81,7 @@ public:
|
|||
/**
|
||||
* Update status message
|
||||
*/
|
||||
void setStatus(const std::string& message);
|
||||
void setStatus(const std::string& message, bool isError = false);
|
||||
|
||||
/**
|
||||
* Select character by name (used after character creation)
|
||||
|
|
@ -97,6 +98,7 @@ private:
|
|||
|
||||
// Status
|
||||
std::string statusMessage;
|
||||
bool statusIsError = false;
|
||||
|
||||
// Callbacks
|
||||
std::function<void(uint64_t)> onCharacterSelected;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue