mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-23 07:40:14 +00:00
Add nonbinary gender support with pronoun system and server compatibility
Extends gender system beyond WoW's binary male/female to support nonbinary characters with proper they/them pronouns. Implements client-side gender mapping (nonbinary→male) for 3.3.5a server compatibility while preserving player identity through local config persistence. Adds pronoun placeholders ($p/$o/$s/$S) and three-option gender text parsing ($g<male>:<female>:<nonbinary>;) for inclusive quest and dialog text.
This commit is contained in:
parent
28aa88608f
commit
0071c24713
10 changed files with 421 additions and 32 deletions
|
|
@ -257,10 +257,13 @@ const char* getAuthResultString(AuthResult result) {
|
|||
network::Packet CharCreatePacket::build(const CharCreateData& data) {
|
||||
network::Packet packet(static_cast<uint16_t>(Opcode::CMSG_CHAR_CREATE));
|
||||
|
||||
// Convert nonbinary gender to server-compatible value (servers only support male/female)
|
||||
Gender serverGender = toServerGender(data.gender);
|
||||
|
||||
packet.writeString(data.name); // null-terminated name
|
||||
packet.writeUInt8(static_cast<uint8_t>(data.race));
|
||||
packet.writeUInt8(static_cast<uint8_t>(data.characterClass));
|
||||
packet.writeUInt8(static_cast<uint8_t>(data.gender));
|
||||
packet.writeUInt8(static_cast<uint8_t>(serverGender));
|
||||
packet.writeUInt8(data.skin);
|
||||
packet.writeUInt8(data.face);
|
||||
packet.writeUInt8(data.hairStyle);
|
||||
|
|
@ -272,6 +275,7 @@ network::Packet CharCreatePacket::build(const CharCreateData& data) {
|
|||
" race=", static_cast<int>(data.race),
|
||||
" class=", static_cast<int>(data.characterClass),
|
||||
" gender=", static_cast<int>(data.gender),
|
||||
" (server gender=", static_cast<int>(serverGender), ")",
|
||||
" skin=", static_cast<int>(data.skin),
|
||||
" face=", static_cast<int>(data.face),
|
||||
" hair=", static_cast<int>(data.hairStyle),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue