aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Entities/Object
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2016-03-28 15:23:41 +0200
committerShauren <shauren.trinity@gmail.com>2016-03-28 15:23:41 +0200
commit619669c6209441fc2fb5b483d553badee8c30ad5 (patch)
tree0de39b1fb45b244c2d3d437780d28324a92d3b4e /src/server/game/Entities/Object
parent13db756f9d88e7fa9e43e1c93e65e7059ce71deb (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.cpp112
-rw-r--r--src/server/game/Entities/Object/ObjectGuid.h88
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)