TrinityCore
Loading...
Searching...
No Matches
CharacterPackets.cpp
Go to the documentation of this file.
1/*
2 * This file is part of the TrinityCore Project. See AUTHORS file for Copyright information
3 *
4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License as published by the
6 * Free Software Foundation; either version 2 of the License, or (at your
7 * option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12 * more details.
13 *
14 * You should have received a copy of the GNU General Public License along
15 * with this program. If not, see <http://www.gnu.org/licenses/>.
16 */
17
18#include "CharacterPackets.h"
19
21{
22 CreateInfo = std::make_shared<CharacterCreateInfo>();
23
24 _worldPacket >> CreateInfo->Name;
25 _worldPacket >> CreateInfo->Race;
26 _worldPacket >> CreateInfo->Class;
28 _worldPacket >> CreateInfo->Skin;
29 _worldPacket >> CreateInfo->Face;
30 _worldPacket >> CreateInfo->HairStyle;
31 _worldPacket >> CreateInfo->HairColor;
32 _worldPacket >> CreateInfo->FacialHairStyle;
33 _worldPacket >> CreateInfo->OutfitId;
34}
35
37{
38 _worldPacket << uint8(Code);
39
40 return &_worldPacket;
41}
42
44{
45 _worldPacket >> Guid;
46}
47
49{
50 _worldPacket << uint8(Code);
51
52 return &_worldPacket;
53}
54
56{
57 RenameInfo = std::make_shared<CharacterRenameInfo>();
58
59 _worldPacket >> RenameInfo->Guid;
60 _worldPacket >> RenameInfo->NewName;
61}
62
64{
65 _worldPacket << uint8(Result);
66 if (Result == RESPONSE_SUCCESS)
67 {
68 _worldPacket << Guid;
69 _worldPacket << Name;
70 }
71
72 return &_worldPacket;
73}
74
76{
77 CustomizeInfo = std::make_shared<CharCustomizeInfo>();
78
79 _worldPacket >> CustomizeInfo->CharGUID;
80 _worldPacket >> CustomizeInfo->CharName;
81 _worldPacket >> CustomizeInfo->SexID;
82 _worldPacket >> CustomizeInfo->SkinID;
83 _worldPacket >> CustomizeInfo->HairColorID;
84 _worldPacket >> CustomizeInfo->HairStyleID;
85 _worldPacket >> CustomizeInfo->FacialHairStyleID;
86 _worldPacket >> CustomizeInfo->FaceID;
87}
88
90{
91 _worldPacket << uint8(Code);
92 if (Code == RESPONSE_SUCCESS)
93 {
94 _worldPacket << CustomizeInfo->CharGUID;
95 _worldPacket << CustomizeInfo->CharName;
96 _worldPacket << uint8(CustomizeInfo->SexID);
97 _worldPacket << uint8(CustomizeInfo->SkinID);
98 _worldPacket << uint8(CustomizeInfo->FaceID);
99 _worldPacket << uint8(CustomizeInfo->HairStyleID);
100 _worldPacket << uint8(CustomizeInfo->HairColorID);
101 _worldPacket << uint8(CustomizeInfo->FacialHairStyleID);
102 }
103
104 return &_worldPacket;
105}
106
108{
109 RaceOrFactionChangeInfo = std::make_shared<CharRaceOrFactionChangeInfo>();
110
111 _worldPacket >> RaceOrFactionChangeInfo->Guid;
112 _worldPacket >> RaceOrFactionChangeInfo->Name;
113 _worldPacket >> RaceOrFactionChangeInfo->SexID;
114 _worldPacket >> RaceOrFactionChangeInfo->SkinID;
115 _worldPacket >> RaceOrFactionChangeInfo->HairColorID;
116 _worldPacket >> RaceOrFactionChangeInfo->HairStyleID;
117 _worldPacket >> RaceOrFactionChangeInfo->FacialHairStyleID;
118 _worldPacket >> RaceOrFactionChangeInfo->FaceID;
119 _worldPacket >> RaceOrFactionChangeInfo->RaceID;
120 RaceOrFactionChangeInfo->FactionChange = GetOpcode() == CMSG_CHAR_FACTION_CHANGE;
121}
122
124{
125 _worldPacket << uint8(Result);
126 if (Result == RESPONSE_SUCCESS)
127 {
128 _worldPacket << RaceOrFactionChangeInfo->Guid;
129 _worldPacket << RaceOrFactionChangeInfo->Name;
130 _worldPacket << uint8(RaceOrFactionChangeInfo->SexID);
131 _worldPacket << uint8(RaceOrFactionChangeInfo->SkinID);
132 _worldPacket << uint8(RaceOrFactionChangeInfo->FaceID);
133 _worldPacket << uint8(RaceOrFactionChangeInfo->HairStyleID);
134 _worldPacket << uint8(RaceOrFactionChangeInfo->HairColorID);
135 _worldPacket << uint8(RaceOrFactionChangeInfo->FacialHairStyleID);
136 _worldPacket << uint8(RaceOrFactionChangeInfo->RaceID);
137 }
138
139 return &_worldPacket;
140}
141
143{
144 _worldPacket >> ShowCloak;
145}
146
148{
149 _worldPacket >> ShowHelm;
150}
151
153{
154 _worldPacket << int32(MapID);
155 _worldPacket << Pos;
156 return &_worldPacket;
157}
158
160{
161 _worldPacket << uint32(LogoutResult);
162 _worldPacket << uint8(Instant);
163 return &_worldPacket;
164}
165
167{
168 _worldPacket >> TriggerScriptEvent;
169}
170
172{
173 _worldPacket << uint32(TotalTime);
174 _worldPacket << uint32(LevelTime);
175 _worldPacket << uint8(TriggerScriptEvent);
176
177 return &_worldPacket;
178}
uint8_t uint8
Definition Define.h:135
int32_t int32
Definition Define.h:129
uint32_t uint32
Definition Define.h:133
@ RESPONSE_SUCCESS
WorldPacket const * Write() override
std::shared_ptr< CharacterCreateInfo > CreateInfo
WorldPacket const * Write() override
WorldPacket const * Write() override
WorldPacket const * Write() override
WorldPacket _worldPacket
Definition Packet.h:42
@ CMSG_CHAR_FACTION_CHANGE
Definition Opcodes.h:1270