aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Server
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2016-01-05 00:03:18 +0100
committerShauren <shauren.trinity@gmail.com>2016-01-05 00:03:18 +0100
commit2a6f65fddcdbe074ace6cd08ab27ec73a64ffe76 (patch)
treebfdf74766ce2c104a78ffd6b7f2a77ab11334098 /src/server/game/Server
parent6b529fcd43dd394a96a5441ab95523bdce3d58d3 (diff)
Core/Players: Split playerBytes fields in characters table
Diffstat (limited to 'src/server/game/Server')
-rw-r--r--src/server/game/Server/Packets/CharacterPackets.cpp58
1 files changed, 30 insertions, 28 deletions
diff --git a/src/server/game/Server/Packets/CharacterPackets.cpp b/src/server/game/Server/Packets/CharacterPackets.cpp
index 7541bb8de70..ef41d16c2b2 100644
--- a/src/server/game/Server/Packets/CharacterPackets.cpp
+++ b/src/server/game/Server/Packets/CharacterPackets.cpp
@@ -22,35 +22,37 @@
WorldPackets::Character::EnumCharactersResult::CharacterInfo::CharacterInfo(Field* fields)
{
- // 0 1 2 3 4 5 6 7
- // "SELECT characters.guid, characters.name, characters.race, characters.class, characters.gender, characters.playerBytes, characters.playerBytes2, characters.level, "
- // 8 9 10 11 12 13 14
- // "characters.zone, characters.map, characters.position_x, characters.position_y, characters.position_z, guild_member.guildid, characters.playerFlags, "
- // 15 16 17 18 19 20 21 22
- // "characters.at_login, character_pet.entry, character_pet.modelid, character_pet.level, characters.data, character_banned.guid, characters.slot, character_declinedname.genitive"
+ // 0 1 2 3 4 5 6 7
+ // "SELECT characters.guid, characters.name, characters.race, characters.class, characters.gender, characters.skin, characters.face, characters.hairStyle, "
+ // 8 9 10 11 12 13 14 15
+ // "characters.hairColor, characters.facialStyle, characters.level, characters.zone, characters.map, characters.position_x, characters.position_y, characters.position_z, "
+ // 16 17 18 19 20 21 22
+ // "guild_member.guildid, characters.playerFlags, characters.at_login, character_pet.entry, character_pet.modelid, character_pet.level, characters.equipmentCache, "
+ // 23 24 25
+ // "character_banned.guid, characters.slot, character_declinedname.genitive"
Guid = ObjectGuid::Create<HighGuid::Player>(fields[0].GetUInt64());
Name = fields[1].GetString();
Race = fields[2].GetUInt8();
Class = fields[3].GetUInt8();
Sex = fields[4].GetUInt8();
- Skin = uint8(fields[5].GetUInt32() & 0xFF);
- Face = uint8((fields[5].GetUInt32() >> 8) & 0xFF);
- HairStyle = uint8((fields[5].GetUInt32() >> 16) & 0xFF);
- HairColor = uint8((fields[5].GetUInt32() >> 24) & 0xFF);
- FacialHair = uint8(fields[6].GetUInt32() & 0xFF);
- Level = fields[7].GetUInt8();
- ZoneId = int32(fields[8].GetUInt16());
- MapId = int32(fields[9].GetUInt16());
- PreLoadPosition.x = fields[10].GetFloat();
- PreLoadPosition.y = fields[11].GetFloat();
- PreLoadPosition.z = fields[12].GetFloat();
-
- if (ObjectGuid::LowType guildId = fields[13].GetUInt64())
+ Skin = fields[5].GetUInt8();
+ Face = fields[6].GetUInt8();
+ HairStyle = fields[7].GetUInt8();
+ HairColor = fields[8].GetUInt8();
+ FacialHair = fields[9].GetUInt8();
+ Level = fields[10].GetUInt8();
+ ZoneId = int32(fields[11].GetUInt16());
+ MapId = int32(fields[12].GetUInt16());
+ PreLoadPosition.x = fields[13].GetFloat();
+ PreLoadPosition.y = fields[14].GetFloat();
+ PreLoadPosition.z = fields[15].GetFloat();
+
+ if (ObjectGuid::LowType guildId = fields[16].GetUInt64())
GuildGuid = ObjectGuid::Create<HighGuid::Guild>(guildId);
- uint32 playerFlags = fields[14].GetUInt32();
- uint32 atLoginFlags = fields[15].GetUInt16();
+ uint32 playerFlags = fields[17].GetUInt32();
+ uint32 atLoginFlags = fields[18].GetUInt16();
if (atLoginFlags & AT_LOGIN_RESURRECT)
playerFlags &= ~PLAYER_FLAGS_GHOST;
@@ -67,10 +69,10 @@ WorldPackets::Character::EnumCharactersResult::CharacterInfo::CharacterInfo(Fiel
if (atLoginFlags & AT_LOGIN_RENAME)
Flags |= CHARACTER_FLAG_RENAME;
- if (fields[20].GetUInt32())
+ if (fields[23].GetUInt64())
Flags |= CHARACTER_FLAG_LOCKED_BY_BILLING;
- if (sWorld->getBoolConfig(CONFIG_DECLINED_NAMES_USED) && !fields[22].GetString().empty())
+ if (sWorld->getBoolConfig(CONFIG_DECLINED_NAMES_USED) && !fields[25].GetString().empty())
Flags |= CHARACTER_FLAG_DECLINED;
if (atLoginFlags & AT_LOGIN_CUSTOMIZE)
@@ -86,10 +88,10 @@ WorldPackets::Character::EnumCharactersResult::CharacterInfo::CharacterInfo(Fiel
// show pet at selection character in character list only for non-ghost character
if (!(playerFlags & PLAYER_FLAGS_GHOST) && (Class == CLASS_WARLOCK || Class == CLASS_HUNTER || Class == CLASS_DEATH_KNIGHT))
{
- if (CreatureTemplate const* creatureInfo = sObjectMgr->GetCreatureTemplate(fields[16].GetUInt32()))
+ if (CreatureTemplate const* creatureInfo = sObjectMgr->GetCreatureTemplate(fields[19].GetUInt32()))
{
- Pet.CreatureDisplayId = fields[17].GetUInt32();
- Pet.Level = fields[18].GetUInt16();
+ Pet.CreatureDisplayId = fields[20].GetUInt32();
+ Pet.Level = fields[21].GetUInt16();
Pet.CreatureFamily = creatureInfo->family;
}
}
@@ -98,8 +100,8 @@ WorldPackets::Character::EnumCharactersResult::CharacterInfo::CharacterInfo(Fiel
ProfessionIds[0] = 0;
ProfessionIds[1] = 0;
- Tokenizer equipment(fields[19].GetString(), ' ');
- ListPosition = fields[21].GetUInt8();
+ Tokenizer equipment(fields[22].GetString(), ' ');
+ ListPosition = fields[24].GetUInt8();
for (uint8 slot = 0; slot < INVENTORY_SLOT_BAG_END; ++slot)
{