diff options
| author | Shauren <shauren.trinity@gmail.com> | 2016-03-28 15:23:41 +0200 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2016-03-28 15:23:41 +0200 |
| commit | 619669c6209441fc2fb5b483d553badee8c30ad5 (patch) | |
| tree | 0de39b1fb45b244c2d3d437780d28324a92d3b4e /src/server/game/Entities/Object | |
| parent | 13db756f9d88e7fa9e43e1c93e65e7059ce71deb (diff) | |
Core/PacketIO: Updated remaining packet structures and enums appearing in packets
Diffstat (limited to 'src/server/game/Entities/Object')
| -rw-r--r-- | src/server/game/Entities/Object/ObjectGuid.cpp | 112 | ||||
| -rw-r--r-- | src/server/game/Entities/Object/ObjectGuid.h | 88 |
2 files changed, 112 insertions, 88 deletions
diff --git a/src/server/game/Entities/Object/ObjectGuid.cpp b/src/server/game/Entities/Object/ObjectGuid.cpp index 6d063a901bd..55151f576dd 100644 --- a/src/server/game/Entities/Object/ObjectGuid.cpp +++ b/src/server/game/Entities/Object/ObjectGuid.cpp @@ -22,60 +22,78 @@ #include <sstream> #include <iomanip> -char const* TypeNames[] = +namespace { - "Null", - "Uniq", - "Player", - "Item", - "StaticDoor", - "Transport", - "Conversation", - "Creature", - "Vehicle", - "Pet", - "GameObject", - "DynamicObject", - "AreaTrigger", - "Corpse", - "LootObject", - "SceneObject", - "Scenario", - "AIGroup", - "DynamicDoor", - "ClientActor", - "Vignette", - "CallForHelp", - "AIResource", - "AILock", - "AILockTicket", - "ChatChannel", - "Party", - "Guild", - "WowAccount", - "BNetAccount", - "GMTask", - "MobileSession", - "RaidGroup", - "Spell", - "Mail", - "WebObj", - "LFGObject", - "LFGList", - "UserRouter", - "PVPQueueGroup", - "UserClient", - "PetBattle", - "UniqueUserClient", - "BattlePet", -}; + struct GuidTypeNames + { + char const* Values[uint32(HighGuid::Count)]; + + GuidTypeNames(); + } Names; + + GuidTypeNames::GuidTypeNames() + { +#define SET_GUID_NAME(type) Values[uint32(HighGuid::type)] = #type; + + SET_GUID_NAME(Null); + SET_GUID_NAME(Uniq); + SET_GUID_NAME(Player); + SET_GUID_NAME(Item); + SET_GUID_NAME(WorldTransaction); + SET_GUID_NAME(StaticDoor); + SET_GUID_NAME(Transport); + SET_GUID_NAME(Conversation); + SET_GUID_NAME(Creature); + SET_GUID_NAME(Vehicle); + SET_GUID_NAME(Pet); + SET_GUID_NAME(GameObject); + SET_GUID_NAME(DynamicObject); + SET_GUID_NAME(AreaTrigger); + SET_GUID_NAME(Corpse); + SET_GUID_NAME(LootObject); + SET_GUID_NAME(SceneObject); + SET_GUID_NAME(Scenario); + SET_GUID_NAME(AIGroup); + SET_GUID_NAME(DynamicDoor); + SET_GUID_NAME(ClientActor); + SET_GUID_NAME(Vignette); + SET_GUID_NAME(CallForHelp); + SET_GUID_NAME(AIResource); + SET_GUID_NAME(AILock); + SET_GUID_NAME(AILockTicket); + SET_GUID_NAME(ChatChannel); + SET_GUID_NAME(Party); + SET_GUID_NAME(Guild); + SET_GUID_NAME(WowAccount); + SET_GUID_NAME(BNetAccount); + SET_GUID_NAME(GMTask); + SET_GUID_NAME(MobileSession); + SET_GUID_NAME(RaidGroup); + SET_GUID_NAME(Spell); + SET_GUID_NAME(Mail); + SET_GUID_NAME(WebObj); + SET_GUID_NAME(LFGObject); + SET_GUID_NAME(LFGList); + SET_GUID_NAME(UserRouter); + SET_GUID_NAME(PVPQueueGroup); + SET_GUID_NAME(UserClient); + SET_GUID_NAME(PetBattle); + SET_GUID_NAME(UniqUserClient); + SET_GUID_NAME(BattlePet); + SET_GUID_NAME(CommerceObj); + SET_GUID_NAME(ClientSession); + +#undef SET_GUID_NAME + } + +} char const* ObjectGuid::GetTypeName(HighGuid high) { if (high >= HighGuid::Count) return "<unknown>"; - return TypeNames[uint32(high)]; + return Names.Values[uint32(high)]; } std::string ObjectGuid::ToString() const diff --git a/src/server/game/Entities/Object/ObjectGuid.h b/src/server/game/Entities/Object/ObjectGuid.h index 8bc2ee4df28..505170a2663 100644 --- a/src/server/game/Entities/Object/ObjectGuid.h +++ b/src/server/game/Entities/Object/ObjectGuid.h @@ -63,46 +63,49 @@ enum class HighGuid Uniq = 1, Player = 2, Item = 3, - StaticDoor = 4, //NYI - Transport = 5, - Conversation = 6, - Creature = 7, - Vehicle = 8, - Pet = 9, - GameObject = 10, - DynamicObject = 11, - AreaTrigger = 12, - Corpse = 13, - LootObject = 14, - SceneObject = 15, - Scenario = 16, - AIGroup = 17, - DynamicDoor = 18, - ClientActor = 19, //NYI - Vignette = 20, - CallForHelp = 21, - AIResource = 22, - AILock = 23, - AILockTicket = 24, - ChatChannel = 25, - Party = 26, - Guild = 27, - WowAccount = 28, - BNetAccount = 29, - GMTask = 30, - MobileSession = 31, //NYI - RaidGroup = 32, - Spell = 33, - Mail = 34, - WebObj = 35, //NYI - LFGObject = 36, //NYI - LFGList = 37, //NYI - UserRouter = 38, - PVPQueueGroup = 39, - UserClient = 40, - PetBattle = 41, //NYI - UniqueUserClient = 42, - BattlePet = 43, + WorldTransaction = 4, + StaticDoor = 5, //NYI + Transport = 6, + Conversation = 7, + Creature = 8, + Vehicle = 9, + Pet = 10, + GameObject = 11, + DynamicObject = 12, + AreaTrigger = 13, + Corpse = 14, + LootObject = 15, + SceneObject = 16, + Scenario = 17, + AIGroup = 18, + DynamicDoor = 19, + ClientActor = 20, //NYI + Vignette = 21, + CallForHelp = 22, + AIResource = 23, + AILock = 24, + AILockTicket = 25, + ChatChannel = 26, + Party = 27, + Guild = 28, + WowAccount = 29, + BNetAccount = 30, + GMTask = 31, + MobileSession = 32, //NYI + RaidGroup = 33, + Spell = 34, + Mail = 35, + WebObj = 36, //NYI + LFGObject = 37, //NYI + LFGList = 38, //NYI + UserRouter = 39, + PVPQueueGroup = 40, + UserClient = 41, + PetBattle = 42, //NYI + UniqUserClient = 43, + BattlePet = 44, + CommerceObj = 45, + ClientSession = 46, Count, }; @@ -150,12 +153,15 @@ GUID_TRAIT_GLOBAL(HighGuid::Mail) GUID_TRAIT_GLOBAL(HighGuid::UserRouter) GUID_TRAIT_GLOBAL(HighGuid::PVPQueueGroup) GUID_TRAIT_GLOBAL(HighGuid::UserClient) -GUID_TRAIT_GLOBAL(HighGuid::UniqueUserClient) +GUID_TRAIT_GLOBAL(HighGuid::UniqUserClient) GUID_TRAIT_GLOBAL(HighGuid::BattlePet) +GUID_TRAIT_GLOBAL(HighGuid::CommerceObj) +GUID_TRAIT_GLOBAL(HighGuid::ClientSession) GUID_TRAIT_REALM_SPECIFIC(HighGuid::Player) GUID_TRAIT_REALM_SPECIFIC(HighGuid::Item) // This is not exactly correct, there are 2 more unknown parts in highguid: (high >> 10 & 0xFF), (high >> 18 & 0xFFFFFF) GUID_TRAIT_REALM_SPECIFIC(HighGuid::Transport) GUID_TRAIT_REALM_SPECIFIC(HighGuid::Guild) +GUID_TRAIT_MAP_SPECIFIC(HighGuid::WorldTransaction) GUID_TRAIT_MAP_SPECIFIC(HighGuid::Conversation) GUID_TRAIT_MAP_SPECIFIC(HighGuid::Creature) GUID_TRAIT_MAP_SPECIFIC(HighGuid::Vehicle) |
