diff options
24 files changed, 78 insertions, 74 deletions
diff --git a/src/server/game/Achievements/AchievementMgr.cpp b/src/server/game/Achievements/AchievementMgr.cpp index d98c93ba7f9..46f7efcad84 100644 --- a/src/server/game/Achievements/AchievementMgr.cpp +++ b/src/server/game/Achievements/AchievementMgr.cpp @@ -546,7 +546,7 @@ void PlayerAchievementMgr::CompletedAchievement(AchievementEntry const* achievem //! Since no common attributes were found, (not even in titleRewardFlags field) //! we explicitly check by ID. Maybe in the future we could move the achievement_reward //! condition fields to the condition system. - if (uint32 titleId = reward->TitleId[achievement->ID == 1793 ? _owner->GetNativeSex() : (_owner->GetTeam() == ALLIANCE ? 0 : 1)]) + if (uint32 titleId = reward->TitleId[achievement->ID == 1793 ? _owner->GetNativeGender() : (_owner->GetTeam() == ALLIANCE ? 0 : 1)]) if (CharTitlesEntry const* titleEntry = sCharTitlesStore.LookupEntry(titleId)) _owner->SetTitle(titleEntry); @@ -656,7 +656,7 @@ void PlayerAchievementMgr::SendAchievementEarned(AchievementEntry const* achieve { if (Guild* guild = sGuildMgr->GetGuildById(_owner->GetGuildId())) { - Trinity::BroadcastTextBuilder _builder(_owner, CHAT_MSG_GUILD_ACHIEVEMENT, BROADCAST_TEXT_ACHIEVEMENT_EARNED, _owner->GetGender(), _owner, achievement->ID); + Trinity::BroadcastTextBuilder _builder(_owner, CHAT_MSG_GUILD_ACHIEVEMENT, BROADCAST_TEXT_ACHIEVEMENT_EARNED, _owner->GetNativeGender(), _owner, achievement->ID); Trinity::LocalizedDo<Trinity::BroadcastTextBuilder> _localizer(_builder); guild->BroadcastWorker(_localizer, _owner); } @@ -673,7 +673,7 @@ void PlayerAchievementMgr::SendAchievementEarned(AchievementEntry const* achieve // if player is in world he can tell his friends about new achievement else if (_owner->IsInWorld()) { - Trinity::BroadcastTextBuilder _builder(_owner, CHAT_MSG_ACHIEVEMENT, BROADCAST_TEXT_ACHIEVEMENT_EARNED, _owner->GetGender(), _owner, achievement->ID); + Trinity::BroadcastTextBuilder _builder(_owner, CHAT_MSG_ACHIEVEMENT, BROADCAST_TEXT_ACHIEVEMENT_EARNED, _owner->GetNativeGender(), _owner, achievement->ID); Trinity::LocalizedDo<Trinity::BroadcastTextBuilder> _localizer(_builder); Trinity::PlayerDistWorker<Trinity::LocalizedDo<Trinity::BroadcastTextBuilder>> _worker(_owner, sWorld->getFloatConfig(CONFIG_LISTEN_RANGE_SAY), _localizer); Cell::VisitWorldObjects(_owner, _worker, sWorld->getFloatConfig(CONFIG_LISTEN_RANGE_SAY)); diff --git a/src/server/game/Achievements/CriteriaHandler.cpp b/src/server/game/Achievements/CriteriaHandler.cpp index 247971b36bd..e9a7a36c684 100644 --- a/src/server/game/Achievements/CriteriaHandler.cpp +++ b/src/server/game/Achievements/CriteriaHandler.cpp @@ -349,7 +349,7 @@ bool CriteriaData::Meets(uint32 criteriaId, Player const* source, WorldObject co Unit const* unitTarget = target->ToUnit(); if (!unitTarget) return false; - return unitTarget->GetGender() == Gender.Gender; + return unitTarget->GetGender() == static_cast<::Gender>(Gender.Gender); } case CRITERIA_DATA_TYPE_SCRIPT: { @@ -2170,7 +2170,7 @@ bool CriteriaHandler::ModifierSatisfied(ModifierTreeEntry const* modifier, uint6 return false; break; case ModifierTreeType::PlayerNativeGender: // 98 - if (referencePlayer->GetNativeSex() != uint8(reqValue)) + if (referencePlayer->GetNativeGender() != uint8(reqValue)) return false; break; case ModifierTreeType::PlayerSkillEqualOrGreaterThan: // 99 @@ -3649,7 +3649,7 @@ bool CriteriaHandler::ModifierSatisfied(ModifierTreeEntry const* modifier, uint6 return false; case ModifierTreeType::PlayerSpellShapeshiftFormCreatureDisplayInfoSelection: // 308 { - ShapeshiftFormModelData const* formModelData = sDB2Manager.GetShapeshiftFormModelData(referencePlayer->GetRace(), referencePlayer->GetNativeSex(), secondaryAsset); + ShapeshiftFormModelData const* formModelData = sDB2Manager.GetShapeshiftFormModelData(referencePlayer->GetRace(), referencePlayer->GetNativeGender(), secondaryAsset); if (!formModelData) return false; uint32 formChoice = referencePlayer->GetCustomizationChoice(formModelData->OptionID); diff --git a/src/server/game/Conditions/ConditionMgr.cpp b/src/server/game/Conditions/ConditionMgr.cpp index d641f70fb6f..c0d1ac0f4a4 100644 --- a/src/server/game/Conditions/ConditionMgr.cpp +++ b/src/server/game/Conditions/ConditionMgr.cpp @@ -222,7 +222,7 @@ bool Condition::Meets(ConditionSourceInfo& sourceInfo) const case CONDITION_GENDER: { if (Player* player = object->ToPlayer()) - condMeets = player->GetGender() == ConditionValue1; + condMeets = player->GetNativeGender() == Gender(ConditionValue1); break; } case CONDITION_SKILL: @@ -2713,7 +2713,7 @@ bool ConditionMgr::IsPlayerMeetingCondition(Player const* player, PlayerConditio if (condition->Gender >= 0 && player->GetGender() != condition->Gender) return false; - if (condition->NativeGender >= 0 && player->GetNativeSex() != condition->NativeGender) + if (condition->NativeGender >= 0 && player->GetNativeGender() != condition->NativeGender) return false; if (condition->PowerType != -1 && condition->PowerTypeComp) diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 5f71d79df29..04555e758f9 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -482,7 +482,7 @@ bool Player::Create(ObjectGuid::LowType guidlow, WorldPackets::Character::Charac SetRace(createInfo->Race); SetClass(createInfo->Class); - SetGender(createInfo->Sex); + SetGender(Gender(createInfo->Sex)); SetPowerType(Powers(powertype)); InitDisplayIds(); UpdatePositionData(); @@ -500,7 +500,7 @@ bool Player::Create(ObjectGuid::LowType guidlow, WorldPackets::Character::Charac SetCustomizations(Trinity::Containers::MakeIteratorPair(createInfo->Customizations.begin(), createInfo->Customizations.end())); SetRestState(REST_TYPE_XP, (GetSession()->IsARecruiter() || GetSession()->GetRecruiterId() != 0) ? REST_STATE_RAF_LINKED : REST_STATE_NOT_RAF_LINKED); SetRestState(REST_TYPE_HONOR, REST_STATE_NOT_RAF_LINKED); - SetNativeSex(createInfo->Sex); + SetNativeGender(Gender(createInfo->Sex)); SetInventorySlotCount(INVENTORY_DEFAULT_SIZE); // set starting level @@ -4492,7 +4492,7 @@ Corpse* Player::CreateCorpse() flags |= CORPSE_FLAG_FFA_PVP; corpse->SetRace(GetRace()); - corpse->SetSex(GetNativeSex()); + corpse->SetSex(GetNativeGender()); corpse->SetClass(GetClass()); corpse->SetCustomizations(Trinity::Containers::MakeIteratorPair(m_playerData->Customizations.begin(), m_playerData->Customizations.end())); corpse->SetFlags(flags); @@ -18021,7 +18021,7 @@ bool Player::LoadFromDB(ObjectGuid guid, CharacterDatabaseQueryHolder* holder) SetCustomizations(Trinity::Containers::MakeIteratorPair(customizations.begin(), customizations.end()), false); SetInventorySlotCount(fields.inventorySlots); SetBankBagSlotCount(fields.bankSlots); - SetNativeSex(fields.gender); + SetNativeGender(fields.gender); SetUpdateFieldValue(m_values.ModifyValue(&Player::m_playerData).ModifyValue(&UF::PlayerData::Inebriation), fields.drunk); SetPlayerFlags(fields.playerFlags); SetPlayerFlagsEx(fields.playerFlagsEx); @@ -20437,7 +20437,7 @@ void Player::SaveToDB(LoginDatabaseTransaction loginTransaction, CharacterDataba stmt->setString(index++, GetName()); stmt->setUInt8(index++, GetRace()); stmt->setUInt8(index++, GetClass()); - stmt->setUInt8(index++, GetNativeSex()); // save gender from PLAYER_BYTES_3, UNIT_BYTES_0 changes with every transform effect + stmt->setUInt8(index++, GetNativeGender()); // save gender from PLAYER_BYTES_3, UNIT_BYTES_0 changes with every transform effect stmt->setUInt8(index++, GetLevel()); stmt->setUInt32(index++, m_activePlayerData->XP); stmt->setUInt64(index++, GetMoney()); @@ -20565,7 +20565,7 @@ void Player::SaveToDB(LoginDatabaseTransaction loginTransaction, CharacterDataba stmt->setString(index++, GetName()); stmt->setUInt8(index++, GetRace()); stmt->setUInt8(index++, GetClass()); - stmt->setUInt8(index++, GetNativeSex()); // save gender from PLAYER_BYTES_3, UNIT_BYTES_0 changes with every transform effect + stmt->setUInt8(index++, GetNativeGender()); // save gender from PLAYER_BYTES_3, UNIT_BYTES_0 changes with every transform effect stmt->setUInt8(index++, GetLevel()); stmt->setUInt32(index++, m_activePlayerData->XP); stmt->setUInt64(index++, GetMoney()); @@ -23042,7 +23042,7 @@ void Player::InitDataForForm(bool reapplyMods) void Player::InitDisplayIds() { - ChrModelEntry const* model = sDB2Manager.GetChrModel(GetRace(), GetNativeSex()); + ChrModelEntry const* model = sDB2Manager.GetChrModel(GetRace(), GetNativeGender()); if (!model) { TC_LOG_ERROR("entities.player", "Player::InitDisplayIds: Player '%s' (%s) has incorrect race/gender pair. Can't init display ids.", GetName().c_str(), GetGUID().ToString().c_str()); diff --git a/src/server/game/Entities/Player/Player.h b/src/server/game/Entities/Player/Player.h index 2f2925dffe9..e87777a042a 100644 --- a/src/server/game/Entities/Player/Player.h +++ b/src/server/game/Entities/Player/Player.h @@ -1196,6 +1196,9 @@ class TC_GAME_API Player : public Unit, public GridObject<Player> uint32 GetTotalPlayedTime() const { return m_Played_time[PLAYED_TIME_TOTAL]; } uint32 GetLevelPlayedTime() const { return m_Played_time[PLAYED_TIME_LEVEL]; } + Gender GetNativeGender() const override { return Gender(*m_playerData->NativeSex); } + void SetNativeGender(Gender gender) override { SetUpdateFieldValue(m_values.ModifyValue(&Player::m_playerData).ModifyValue(&UF::PlayerData::NativeSex), gender); } + void setDeathState(DeathState s) override; // overwrite Unit::setDeathState Pet* GetPet() const; @@ -2650,8 +2653,6 @@ class TC_GAME_API Player : public Unit, public GridObject<Player> newChoice.ChrCustomizationChoiceID = customization.ChrCustomizationChoiceID; } } - Gender GetNativeSex() const { return Gender(*m_playerData->NativeSex); } - void SetNativeSex(uint8 sex) { SetUpdateFieldValue(m_values.ModifyValue(&Player::m_playerData).ModifyValue(&UF::PlayerData::NativeSex), sex); } void SetPvpTitle(uint8 pvpTitle) { SetUpdateFieldValue(m_values.ModifyValue(&Player::m_playerData).ModifyValue(&UF::PlayerData::PvpTitle), pvpTitle); } void SetArenaFaction(uint8 arenaFaction) { SetUpdateFieldValue(m_values.ModifyValue(&Player::m_playerData).ModifyValue(&UF::PlayerData::ArenaFaction), arenaFaction); } void ApplyModFakeInebriation(int32 mod, bool apply) { ApplyModUpdateFieldValue(m_values.ModifyValue(&Player::m_playerData).ModifyValue(&UF::PlayerData::FakeInebriation), mod, apply); } diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index cd09b420779..78f0fad657c 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -9848,7 +9848,7 @@ void Unit::SetDisplayId(uint32 modelId, float displayScale /*= 1.f*/) // Set Gender by modelId if (CreatureModelInfo const* minfo = sObjectMgr->GetCreatureModelInfo(modelId)) - SetGender(minfo->gender); + SetGender(Gender(minfo->gender)); } void Unit::RestoreDisplayId(bool ignorePositiveAurasPreventingMounting /*= false*/) @@ -11499,7 +11499,7 @@ uint32 Unit::GetModelForForm(ShapeshiftForm form, uint32 spellId) const if (ShapeshiftForm(artifactAppearance->OverrideShapeshiftFormID) == form) return artifactAppearance->OverrideShapeshiftDisplayID; - if (ShapeshiftFormModelData const* formModelData = sDB2Manager.GetShapeshiftFormModelData(GetRace(), thisPlayer->GetNativeSex(), form)) + if (ShapeshiftFormModelData const* formModelData = sDB2Manager.GetShapeshiftFormModelData(GetRace(), thisPlayer->GetNativeGender(), form)) { bool useRandom = false; switch (form) diff --git a/src/server/game/Entities/Unit/Unit.h b/src/server/game/Entities/Unit/Unit.h index 0c7fc42742b..91d9884547e 100644 --- a/src/server/game/Entities/Unit/Unit.h +++ b/src/server/game/Entities/Unit/Unit.h @@ -860,8 +860,10 @@ class TC_GAME_API Unit : public WorldObject uint8 GetClass() const { return m_unitData->ClassId; } void SetClass(uint8 classId) { SetUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::ClassId), classId); } uint32 GetClassMask() const { return 1 << (GetClass()-1); } - uint8 GetGender() const { return m_unitData->Sex; } - void SetGender(uint8 sex) { SetUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::Sex), sex); } + Gender GetGender() const { return Gender(*m_unitData->Sex); } + void SetGender(Gender gender) { SetUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::Sex), gender); } + virtual Gender GetNativeGender() const { return GetGender(); } + virtual void SetNativeGender(Gender gender) { SetGender(gender); } float GetStat(Stats stat) const { return float(m_unitData->Stats[stat]); } void SetStat(Stats stat, int32 val) { SetUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::Stats, stat), val); } diff --git a/src/server/game/Guilds/Guild.cpp b/src/server/game/Guilds/Guild.cpp index c71ccdf050b..9afa6b4b388 100644 --- a/src/server/game/Guilds/Guild.cpp +++ b/src/server/game/Guilds/Guild.cpp @@ -517,7 +517,7 @@ Guild::Member::Member(ObjectGuid::LowType guildId, ObjectGuid guid, uint8 rankId m_zoneId(0), m_level(0), m_class(0), - _gender(0), + m_gender(0), m_flags(GUILDMEMBER_STATUS_NONE), m_logoutTime(GameTime::GetGameTime()), m_accountId(0), @@ -537,7 +537,7 @@ void Guild::Member::SetStats(Player* player) m_name = player->GetName(); m_level = player->GetLevel(); m_class = player->GetClass(); - _gender = player->GetNativeSex(); + m_gender = player->GetNativeGender(); m_zoneId = player->GetZoneId(); m_accountId = player->GetSession()->GetAccountId(); m_achievementPoints = player->GetAchievementPoints(); @@ -548,7 +548,7 @@ void Guild::Member::SetStats(std::string const& name, uint8 level, uint8 _class, m_name = name; m_level = level; m_class = _class; - _gender = gender; + m_gender = gender; m_zoneId = zoneId; m_accountId = accountId; m_totalReputation = reputation; diff --git a/src/server/game/Guilds/Guild.h b/src/server/game/Guilds/Guild.h index 2b2d1984a9a..d28aad1dd0e 100644 --- a/src/server/game/Guilds/Guild.h +++ b/src/server/game/Guilds/Guild.h @@ -337,7 +337,7 @@ class TC_GAME_API Guild std::string GetPublicNote() const { return m_publicNote; } std::string GetOfficerNote() const { return m_officerNote; } uint8 GetClass() const { return m_class; } - uint8 GetGender() const { return _gender; } + uint8 GetGender() const { return m_gender; } uint8 GetLevel() const { return m_level; } uint8 GetFlags() const { return m_flags; } uint32 GetZoneId() const { return m_zoneId; } @@ -377,7 +377,7 @@ class TC_GAME_API Guild uint32 m_zoneId; uint8 m_level; uint8 m_class; - uint8 _gender; + uint8 m_gender; uint8 m_flags; uint64 m_logoutTime; uint32 m_accountId; diff --git a/src/server/game/Handlers/CharacterHandler.cpp b/src/server/game/Handlers/CharacterHandler.cpp index ab2988ec982..f6f4976a0ef 100644 --- a/src/server/game/Handlers/CharacterHandler.cpp +++ b/src/server/game/Handlers/CharacterHandler.cpp @@ -880,7 +880,7 @@ void WorldSession::HandleCharCreateOpcode(WorldPackets::Character::CreateCharact { TC_LOG_INFO("entities.player.character", "Account: %u (IP: %s) Create Character: %s %s", GetAccountId(), GetRemoteAddress().c_str(), newChar->GetName().c_str(), newChar->GetGUID().ToString().c_str()); sScriptMgr->OnPlayerCreate(newChar.get()); - sCharacterCache->AddCharacterCacheEntry(newChar->GetGUID(), GetAccountId(), newChar->GetName(), newChar->GetNativeSex(), newChar->GetRace(), newChar->GetClass(), newChar->GetLevel(), false); + sCharacterCache->AddCharacterCacheEntry(newChar->GetGUID(), GetAccountId(), newChar->GetName(), newChar->GetNativeGender(), newChar->GetRace(), newChar->GetClass(), newChar->GetLevel(), false); SendCharCreate(CHAR_CREATE_SUCCESS, newChar->GetGUID()); } @@ -1714,9 +1714,9 @@ void WorldSession::HandleAlterAppearance(WorldPackets::Character::AlterApperance _player->ModifyMoney(-cost); // it isn't free _player->UpdateCriteria(CriteriaType::MoneySpentAtBarberShop, cost); - if (_player->GetNativeSex() != packet.NewSex) + if (_player->GetNativeGender() != packet.NewSex) { - _player->SetNativeSex(packet.NewSex); + _player->SetNativeGender(Gender(packet.NewSex)); _player->InitDisplayIds(); _player->RestoreDisplayId(false); } diff --git a/src/server/game/Server/Packets/InspectPackets.cpp b/src/server/game/Server/Packets/InspectPackets.cpp index 02c5b5cb9cb..570728134ef 100644 --- a/src/server/game/Server/Packets/InspectPackets.cpp +++ b/src/server/game/Server/Packets/InspectPackets.cpp @@ -77,7 +77,7 @@ void WorldPackets::Inspect::PlayerModelDisplayInfo::Initialize(Player const* pla GUID = player->GetGUID(); SpecializationID = player->GetPrimarySpecialization(); Name = player->GetName(); - GenderID = player->GetNativeSex(); + GenderID = player->GetNativeGender(); Race = player->GetRace(); ClassID = player->GetClass(); diff --git a/src/server/game/Server/Packets/QueryPackets.cpp b/src/server/game/Server/Packets/QueryPackets.cpp index 7aa2ea07f4b..a3bf98830f2 100644 --- a/src/server/game/Server/Packets/QueryPackets.cpp +++ b/src/server/game/Server/Packets/QueryPackets.cpp @@ -134,7 +134,7 @@ bool WorldPackets::Query::PlayerGuidLookupData::Initialize(ObjectGuid const& gui BnetAccountID = player->GetSession()->GetBattlenetAccountGUID(); Name = player->GetName(); Race = player->GetRace(); - Sex = player->GetNativeSex(); + Sex = player->GetNativeGender(); ClassID = player->GetClass(); Level = player->GetLevel(); diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp index e41713cba15..cc3f1a7a9b3 100644 --- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp +++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp @@ -1842,6 +1842,7 @@ void AuraEffect::HandleAuraTransform(AuraApplication const* aurApp, uint8 mode, // special case (spell specific functionality) if (GetMiscValue() == 0) { + Gender gender = target->GetNativeGender(); switch (GetId()) { // Orb of Deception @@ -1854,43 +1855,43 @@ void AuraEffect::HandleAuraTransform(AuraApplication const* aurApp, uint8 mode, { // Blood Elf case RACE_BLOODELF: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 17830 : 17829); + target->SetDisplayId(gender == GENDER_FEMALE ? 17830 : 17829); break; // Orc case RACE_ORC: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 10140 : 10139); + target->SetDisplayId(gender == GENDER_FEMALE ? 10140 : 10139); break; // Troll case RACE_TROLL: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 10134 : 10135); + target->SetDisplayId(gender == GENDER_FEMALE ? 10134 : 10135); break; // Tauren case RACE_TAUREN: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 10147 : 10136); + target->SetDisplayId(gender == GENDER_FEMALE ? 10147 : 10136); break; // Undead case RACE_UNDEAD_PLAYER: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 10145 : 10146); + target->SetDisplayId(gender == GENDER_FEMALE ? 10145 : 10146); break; // Draenei case RACE_DRAENEI: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 17828 : 17827); + target->SetDisplayId(gender == GENDER_FEMALE ? 17828 : 17827); break; // Dwarf case RACE_DWARF: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 10142 : 10141); + target->SetDisplayId(gender == GENDER_FEMALE ? 10142 : 10141); break; // Gnome case RACE_GNOME: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 10149 : 10148); + target->SetDisplayId(gender == GENDER_FEMALE ? 10149 : 10148); break; // Human case RACE_HUMAN: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 10138 : 10137); + target->SetDisplayId(gender == GENDER_FEMALE ? 10138 : 10137); break; // Night Elf case RACE_NIGHTELF: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 10144 : 10143); + target->SetDisplayId(gender == GENDER_FEMALE ? 10144 : 10143); break; default: break; @@ -1913,43 +1914,43 @@ void AuraEffect::HandleAuraTransform(AuraApplication const* aurApp, uint8 mode, { // Blood Elf case RACE_BLOODELF: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 25043 : 25032); + target->SetDisplayId(gender == GENDER_MALE ? 25032 : 25043); break; // Orc case RACE_ORC: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 25050 : 25039); + target->SetDisplayId(gender == GENDER_MALE ? 25039 : 25050); break; // Troll case RACE_TROLL: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 25052 : 25041); + target->SetDisplayId(gender == GENDER_MALE ? 25041 : 25052); break; // Tauren case RACE_TAUREN: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 25051 : 25040); + target->SetDisplayId(gender == GENDER_MALE ? 25040 : 25051); break; // Undead case RACE_UNDEAD_PLAYER: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 25053 : 25042); + target->SetDisplayId(gender == GENDER_MALE ? 25042 : 25053); break; // Draenei case RACE_DRAENEI: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 25044 : 25033); + target->SetDisplayId(gender == GENDER_MALE ? 25033 : 25044); break; // Dwarf case RACE_DWARF: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 25045 : 25034); + target->SetDisplayId(gender == GENDER_MALE ? 25034 : 25045); break; // Gnome case RACE_GNOME: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 25035 : 25046); + target->SetDisplayId(gender == GENDER_MALE ? 25035 : 25046); break; // Human case RACE_HUMAN: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 25037 : 25048); + target->SetDisplayId(gender == GENDER_MALE ? 25037 : 25048); break; // Night Elf case RACE_NIGHTELF: - target->SetDisplayId(target->GetGender() == GENDER_FEMALE ? 25038 : 25049); + target->SetDisplayId(gender == GENDER_MALE ? 25038 : 25049); break; default: break; @@ -1963,15 +1964,15 @@ void AuraEffect::HandleAuraTransform(AuraApplication const* aurApp, uint8 mode, // Honor the Dead case 65386: case 65495: - target->SetDisplayId(target->GetGender() == GENDER_MALE ? 29203 : 29204); + target->SetDisplayId(gender == GENDER_MALE ? 29203 : 29204); break; // Darkspear Pride case 75532: - target->SetDisplayId(target->GetGender() == GENDER_MALE ? 31737 : 31738); + target->SetDisplayId(gender == GENDER_MALE ? 31737 : 31738); break; // Gnomeregan Pride case 75531: - target->SetDisplayId(target->GetGender() == GENDER_MALE ? 31654 : 31655); + target->SetDisplayId(gender == GENDER_MALE ? 31654 : 31655); break; default: break; diff --git a/src/server/game/Spells/SpellMgr.cpp b/src/server/game/Spells/SpellMgr.cpp index 0f70ee71673..c5628924b1f 100644 --- a/src/server/game/Spells/SpellMgr.cpp +++ b/src/server/game/Spells/SpellMgr.cpp @@ -731,7 +731,7 @@ void SpellMgr::ForEachSpellInfoDifficulty(uint32 spellId, std::function<void(Spe bool SpellArea::IsFitToRequirements(Player const* player, uint32 newZone, uint32 newArea) const { if (gender != GENDER_NONE) // is not expected gender - if (!player || gender != player->GetGender()) + if (!player || gender != player->GetNativeGender()) return false; if (raceMask) // is not expected race diff --git a/src/server/game/Storages/WhoListStorage.cpp b/src/server/game/Storages/WhoListStorage.cpp index a32403391a0..8d9dd031323 100644 --- a/src/server/game/Storages/WhoListStorage.cpp +++ b/src/server/game/Storages/WhoListStorage.cpp @@ -62,7 +62,7 @@ void WhoListStorageMgr::Update() guildGuid = guild->GetGUID(); _whoListStorage.emplace_back(itr->second->GetGUID(), itr->second->GetTeam(), itr->second->GetSession()->GetSecurity(), itr->second->GetLevel(), - itr->second->GetClass(), itr->second->GetRace(), itr->second->GetZoneId(), itr->second->GetNativeSex(), itr->second->IsVisible(), + itr->second->GetClass(), itr->second->GetRace(), itr->second->GetZoneId(), itr->second->GetNativeGender(), itr->second->IsVisible(), itr->second->IsGameMaster(), widePlayerName, wideGuildName, playerName, guildName, guildGuid); } } diff --git a/src/server/scripts/Commands/cs_character.cpp b/src/server/scripts/Commands/cs_character.cpp index a00e96e82d0..35c3772cf28 100644 --- a/src/server/scripts/Commands/cs_character.cpp +++ b/src/server/scripts/Commands/cs_character.cpp @@ -279,7 +279,7 @@ public: if (titleInfo && target->HasTitle(titleInfo)) { - std::string name = (target->GetGender() == GENDER_MALE ? titleInfo->Name : titleInfo->Name1)[handler->GetSessionDbcLocale()]; + std::string name = (target->GetNativeGender() == GENDER_MALE ? titleInfo->Name : titleInfo->Name1)[handler->GetSessionDbcLocale()]; if (name.empty()) continue; diff --git a/src/server/scripts/Commands/cs_misc.cpp b/src/server/scripts/Commands/cs_misc.cpp index aa90509e128..b487a319a22 100644 --- a/src/server/scripts/Commands/cs_misc.cpp +++ b/src/server/scripts/Commands/cs_misc.cpp @@ -1706,7 +1706,7 @@ public: mapId = target->GetMapId(); areaId = target->GetAreaId(); alive = target->IsAlive() ? handler->GetTrinityString(LANG_YES) : handler->GetTrinityString(LANG_NO); - gender = target->GetNativeSex(); + gender = target->GetNativeGender(); } // get additional information from DB else diff --git a/src/server/scripts/Commands/cs_modify.cpp b/src/server/scripts/Commands/cs_modify.cpp index 85db49ba75f..84fbdd8cdfe 100644 --- a/src/server/scripts/Commands/cs_modify.cpp +++ b/src/server/scripts/Commands/cs_modify.cpp @@ -900,7 +900,7 @@ public: // Set gender target->SetGender(gender); - target->SetNativeSex(gender); + target->SetNativeGender(gender); // Change display ID target->InitDisplayIds(); diff --git a/src/server/scripts/Commands/cs_titles.cpp b/src/server/scripts/Commands/cs_titles.cpp index db69ce78f47..b5a5a2ee429 100644 --- a/src/server/scripts/Commands/cs_titles.cpp +++ b/src/server/scripts/Commands/cs_titles.cpp @@ -95,7 +95,7 @@ public: target->SetChosenTitle(titleInfo->MaskID); handler->PSendSysMessage(LANG_TITLE_CURRENT_RES, id, - (target->GetGender() == GENDER_MALE ? titleInfo->Name : titleInfo->Name1)[handler->GetSessionDbcLocale()], + (target->GetNativeGender() == GENDER_MALE ? titleInfo->Name : titleInfo->Name1)[handler->GetSessionDbcLocale()], tNameLink.c_str()); return true; } @@ -138,7 +138,7 @@ public: std::string tNameLink = handler->GetNameLink(target); std::string titleNameStr = Trinity::StringFormat( - (target->GetGender() == GENDER_MALE ? titleInfo->Name : titleInfo->Name1)[handler->GetSessionDbcLocale()], + (target->GetNativeGender() == GENDER_MALE ? titleInfo->Name : titleInfo->Name1)[handler->GetSessionDbcLocale()], target->GetName().c_str() ); @@ -188,7 +188,7 @@ public: std::string tNameLink = handler->GetNameLink(target); std::string titleNameStr = Trinity::StringFormat( - (target->GetGender() == GENDER_MALE ? titleInfo->Name : titleInfo->Name1)[handler->GetSessionDbcLocale()], + (target->GetNativeGender() == GENDER_MALE ? titleInfo->Name : titleInfo->Name1)[handler->GetSessionDbcLocale()], target->GetName().c_str() ); diff --git a/src/server/scripts/Spells/spell_generic.cpp b/src/server/scripts/Spells/spell_generic.cpp index 68bdcfe8696..f3945a64a43 100644 --- a/src/server/scripts/Spells/spell_generic.cpp +++ b/src/server/scripts/Spells/spell_generic.cpp @@ -415,7 +415,7 @@ class spell_gen_aura_service_uniform : public AuraScript Unit* target = GetTarget(); if (target->GetTypeId() == TYPEID_PLAYER) { - if (target->GetGender() == GENDER_MALE) + if (target->GetNativeGender() == GENDER_MALE) target->SetDisplayId(MODEL_GOBLIN_MALE); else target->SetDisplayId(MODEL_GOBLIN_FEMALE); @@ -1154,7 +1154,7 @@ class spell_gen_dalaran_disguise : public SpellScriptLoader { if (Player* player = GetHitPlayer()) { - uint8 gender = player->GetGender(); + uint8 gender = player->GetNativeGender(); uint32 spellId = GetSpellInfo()->Id; @@ -2382,7 +2382,7 @@ class spell_gen_orc_disguise : public SpellScript Unit* caster = GetCaster(); if (Player* target = GetHitPlayer()) { - uint8 gender = target->GetGender(); + uint8 gender = target->GetNativeGender(); if (!gender) caster->CastSpell(target, SPELL_ORC_DISGUISE_MALE, true); else diff --git a/src/server/scripts/Spells/spell_holiday.cpp b/src/server/scripts/Spells/spell_holiday.cpp index 1cc0abe6b46..061b93c10ef 100644 --- a/src/server/scripts/Spells/spell_holiday.cpp +++ b/src/server/scripts/Spells/spell_holiday.cpp @@ -189,13 +189,13 @@ class spell_hallow_end_candy_pirate : public SpellScriptLoader void HandleApply(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) { - uint32 spell = GetTarget()->GetGender() == GENDER_FEMALE ? SPELL_HALLOWS_END_CANDY_FEMALE_DEFIAS_PIRATE : SPELL_HALLOWS_END_CANDY_MALE_DEFIAS_PIRATE; + uint32 spell = GetTarget()->GetNativeGender() == GENDER_FEMALE ? SPELL_HALLOWS_END_CANDY_FEMALE_DEFIAS_PIRATE : SPELL_HALLOWS_END_CANDY_MALE_DEFIAS_PIRATE; GetTarget()->CastSpell(GetTarget(), spell, true); } void HandleRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) { - uint32 spell = GetTarget()->GetGender() == GENDER_FEMALE ? SPELL_HALLOWS_END_CANDY_FEMALE_DEFIAS_PIRATE : SPELL_HALLOWS_END_CANDY_MALE_DEFIAS_PIRATE; + uint32 spell = GetTarget()->GetNativeGender() == GENDER_FEMALE ? SPELL_HALLOWS_END_CANDY_FEMALE_DEFIAS_PIRATE : SPELL_HALLOWS_END_CANDY_MALE_DEFIAS_PIRATE; GetTarget()->RemoveAurasDueToSpell(spell); } @@ -258,7 +258,7 @@ class spell_hallow_end_trick : public SpellScriptLoader Unit* caster = GetCaster(); if (Player* target = GetHitPlayer()) { - uint8 gender = target->GetGender(); + uint8 gender = target->GetNativeGender(); uint32 spellId = SPELL_TRICK_BUFF; switch (urand(0, 5)) { @@ -426,7 +426,7 @@ public: Unit* target = GetHitUnit(); uint32 spellId = 0; - uint8 gender = target->GetGender(); + uint8 gender = target->GetNativeGender(); switch (GetSpellInfo()->Id) { diff --git a/src/server/scripts/Spells/spell_item.cpp b/src/server/scripts/Spells/spell_item.cpp index 2e7f034eefd..8d1f9e37fdf 100644 --- a/src/server/scripts/Spells/spell_item.cpp +++ b/src/server/scripts/Spells/spell_item.cpp @@ -1636,9 +1636,9 @@ class spell_item_savory_deviate_delight : public SpellScript switch (urand(1, 2)) { // Flip Out - ninja - case 1: spellId = (caster->GetGender() == GENDER_MALE ? SPELL_FLIP_OUT_MALE : SPELL_FLIP_OUT_FEMALE); break; + case 1: spellId = (caster->GetNativeGender() == GENDER_MALE ? SPELL_FLIP_OUT_MALE : SPELL_FLIP_OUT_FEMALE); break; // Yaaarrrr - pirate - case 2: spellId = (caster->GetGender() == GENDER_MALE ? SPELL_YAAARRRR_MALE : SPELL_YAAARRRR_FEMALE); break; + case 2: spellId = (caster->GetNativeGender() == GENDER_MALE ? SPELL_YAAARRRR_MALE : SPELL_YAAARRRR_FEMALE); break; } caster->CastSpell(caster, spellId, true); } @@ -3516,7 +3516,7 @@ class spell_item_toy_train_set_pulse : public SpellScript if (Player* target = GetHitUnit()->ToPlayer()) { target->HandleEmoteCommand(EMOTE_ONESHOT_TRAIN); - if (EmotesTextSoundEntry const* soundEntry = sDB2Manager.GetTextSoundEmoteFor(TEXT_EMOTE_TRAIN, target->GetRace(), target->GetGender(), target->GetClass())) + if (EmotesTextSoundEntry const* soundEntry = sDB2Manager.GetTextSoundEmoteFor(TEXT_EMOTE_TRAIN, target->GetRace(), target->GetNativeGender(), target->GetClass())) target->PlayDistanceSound(soundEntry->SoundID); } } diff --git a/src/server/scripts/Spells/spell_quest.cpp b/src/server/scripts/Spells/spell_quest.cpp index b0c62f349f0..e4551d33bb6 100644 --- a/src/server/scripts/Spells/spell_quest.cpp +++ b/src/server/scripts/Spells/spell_quest.cpp @@ -829,7 +829,7 @@ class spell_q10041_q10040_who_are_they : public SpellScriptLoader PreventHitDefaultEffect(effIndex); if (Player* target = GetHitPlayer()) { - target->CastSpell(target, target->GetGender() == GENDER_MALE ? SPELL_MALE_DISGUISE : SPELL_FEMALE_DISGUISE, true); + target->CastSpell(target, target->GetNativeGender() == GENDER_MALE ? SPELL_MALE_DISGUISE : SPELL_FEMALE_DISGUISE, true); target->CastSpell(target, SPELL_GENERIC_DISGUISE, true); } } diff --git a/src/server/scripts/World/go_scripts.cpp b/src/server/scripts/World/go_scripts.cpp index 178f3248a4e..15864bb7e8a 100644 --- a/src/server/scripts/World/go_scripts.cpp +++ b/src/server/scripts/World/go_scripts.cpp @@ -1170,7 +1170,7 @@ public: Creature* target = GetClosestCreatureWithEntry(player, NPC_OUTHOUSE_BUNNY, 3.0f); if (target) { - target->AI()->SetData(1, player->GetGender()); + target->AI()->SetData(1, player->GetNativeGender()); me->CastSpell(target, SPELL_INDISPOSED_III); } me->CastSpell(player, SPELL_INDISPOSED); |