TrinityCore
enuminfo_Channel.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 "Channel.h"
19#include "Define.h"
20#include "SmartEnum.h"
21#include <stdexcept>
22
24{
25
26/************************************************************\
27|* data for enum 'ChatNotify' in 'Channel.h' auto-generated *|
28\************************************************************/
29template <>
31{
32 switch (value)
33 {
34 case CHAT_JOINED_NOTICE: return { "CHAT_JOINED_NOTICE", "CHAT_JOINED_NOTICE", "+ \042%s joined channel.\042;" };
35 case CHAT_LEFT_NOTICE: return { "CHAT_LEFT_NOTICE", "CHAT_LEFT_NOTICE", "+ \042%s left channel.\042;" };
36 case CHAT_YOU_JOINED_NOTICE: return { "CHAT_YOU_JOINED_NOTICE", "CHAT_YOU_JOINED_NOTICE", "+ \042Joined Channel: [%s]\042; -- You joined" };
37 case CHAT_YOU_LEFT_NOTICE: return { "CHAT_YOU_LEFT_NOTICE", "CHAT_YOU_LEFT_NOTICE", "+ \042Left Channel: [%s]\042; -- You left" };
38 case CHAT_WRONG_PASSWORD_NOTICE: return { "CHAT_WRONG_PASSWORD_NOTICE", "CHAT_WRONG_PASSWORD_NOTICE", "+ \042Wrong password for %s.\042;" };
39 case CHAT_NOT_MEMBER_NOTICE: return { "CHAT_NOT_MEMBER_NOTICE", "CHAT_NOT_MEMBER_NOTICE", "+ \042Not on channel %s.\042;" };
40 case CHAT_NOT_MODERATOR_NOTICE: return { "CHAT_NOT_MODERATOR_NOTICE", "CHAT_NOT_MODERATOR_NOTICE", "+ \042Not a moderator of %s.\042;" };
41 case CHAT_PASSWORD_CHANGED_NOTICE: return { "CHAT_PASSWORD_CHANGED_NOTICE", "CHAT_PASSWORD_CHANGED_NOTICE", "+ \042[%s] Password changed by %s.\042;" };
42 case CHAT_OWNER_CHANGED_NOTICE: return { "CHAT_OWNER_CHANGED_NOTICE", "CHAT_OWNER_CHANGED_NOTICE", "+ \042[%s] Owner changed to %s.\042;" };
43 case CHAT_PLAYER_NOT_FOUND_NOTICE: return { "CHAT_PLAYER_NOT_FOUND_NOTICE", "CHAT_PLAYER_NOT_FOUND_NOTICE", "+ \042[%s] Player %s was not found.\042;" };
44 case CHAT_NOT_OWNER_NOTICE: return { "CHAT_NOT_OWNER_NOTICE", "CHAT_NOT_OWNER_NOTICE", "+ \042[%s] You are not the channel owner.\042;" };
45 case CHAT_CHANNEL_OWNER_NOTICE: return { "CHAT_CHANNEL_OWNER_NOTICE", "CHAT_CHANNEL_OWNER_NOTICE", "+ \042[%s] Channel owner is %s.\042;" };
46 case CHAT_MODE_CHANGE_NOTICE: return { "CHAT_MODE_CHANGE_NOTICE", "CHAT_MODE_CHANGE_NOTICE", "?" };
47 case CHAT_ANNOUNCEMENTS_ON_NOTICE: return { "CHAT_ANNOUNCEMENTS_ON_NOTICE", "CHAT_ANNOUNCEMENTS_ON_NOTICE", "+ \042[%s] Channel announcements enabled by %s.\042;" };
48 case CHAT_ANNOUNCEMENTS_OFF_NOTICE: return { "CHAT_ANNOUNCEMENTS_OFF_NOTICE", "CHAT_ANNOUNCEMENTS_OFF_NOTICE", "+ \042[%s] Channel announcements disabled by %s.\042;" };
49 case CHAT_MODERATION_ON_NOTICE: return { "CHAT_MODERATION_ON_NOTICE", "CHAT_MODERATION_ON_NOTICE", "+ \042[%s] Channel moderation enabled by %s.\042;" };
50 case CHAT_MODERATION_OFF_NOTICE: return { "CHAT_MODERATION_OFF_NOTICE", "CHAT_MODERATION_OFF_NOTICE", "+ \042[%s] Channel moderation disabled by %s.\042;" };
51 case CHAT_MUTED_NOTICE: return { "CHAT_MUTED_NOTICE", "CHAT_MUTED_NOTICE", "+ \042[%s] You do not have permission to speak.\042;" };
52 case CHAT_PLAYER_KICKED_NOTICE: return { "CHAT_PLAYER_KICKED_NOTICE", "CHAT_PLAYER_KICKED_NOTICE", "? \042[%s] Player %s kicked by %s.\042;" };
53 case CHAT_BANNED_NOTICE: return { "CHAT_BANNED_NOTICE", "CHAT_BANNED_NOTICE", "+ \042[%s] You are banned from that channel.\042;" };
54 case CHAT_PLAYER_BANNED_NOTICE: return { "CHAT_PLAYER_BANNED_NOTICE", "CHAT_PLAYER_BANNED_NOTICE", "? \042[%s] Player %s banned by %s.\042;" };
55 case CHAT_PLAYER_UNBANNED_NOTICE: return { "CHAT_PLAYER_UNBANNED_NOTICE", "CHAT_PLAYER_UNBANNED_NOTICE", "? \042[%s] Player %s unbanned by %s.\042;" };
56 case CHAT_PLAYER_NOT_BANNED_NOTICE: return { "CHAT_PLAYER_NOT_BANNED_NOTICE", "CHAT_PLAYER_NOT_BANNED_NOTICE", "+ \042[%s] Player %s is not banned.\042;" };
57 case CHAT_PLAYER_ALREADY_MEMBER_NOTICE: return { "CHAT_PLAYER_ALREADY_MEMBER_NOTICE", "CHAT_PLAYER_ALREADY_MEMBER_NOTICE", "+ \042[%s] Player %s is already on the channel.\042;" };
58 case CHAT_INVITE_NOTICE: return { "CHAT_INVITE_NOTICE", "CHAT_INVITE_NOTICE", "+ \042%2$s has invited you to join the channel '%1$s'.\042;" };
59 case CHAT_INVITE_WRONG_FACTION_NOTICE: return { "CHAT_INVITE_WRONG_FACTION_NOTICE", "CHAT_INVITE_WRONG_FACTION_NOTICE", "+ \042Target is in the wrong alliance for %s.\042;" };
60 case CHAT_WRONG_FACTION_NOTICE: return { "CHAT_WRONG_FACTION_NOTICE", "CHAT_WRONG_FACTION_NOTICE", "+ \042Wrong alliance for %s.\042;" };
61 case CHAT_INVALID_NAME_NOTICE: return { "CHAT_INVALID_NAME_NOTICE", "CHAT_INVALID_NAME_NOTICE", "+ \042Invalid channel name\042;" };
62 case CHAT_NOT_MODERATED_NOTICE: return { "CHAT_NOT_MODERATED_NOTICE", "CHAT_NOT_MODERATED_NOTICE", "+ \042%s is not moderated\042;" };
63 case CHAT_PLAYER_INVITED_NOTICE: return { "CHAT_PLAYER_INVITED_NOTICE", "CHAT_PLAYER_INVITED_NOTICE", "+ \042[%s] You invited %s to join the channel\042;" };
64 case CHAT_PLAYER_INVITE_BANNED_NOTICE: return { "CHAT_PLAYER_INVITE_BANNED_NOTICE", "CHAT_PLAYER_INVITE_BANNED_NOTICE", "+ \042[%s] %s has been banned.\042;" };
65 case CHAT_THROTTLED_NOTICE: return { "CHAT_THROTTLED_NOTICE", "CHAT_THROTTLED_NOTICE", "+ \042[%s] The number of messages that can be sent to this channel is limited, please wait to send another message.\042;" };
66 case CHAT_NOT_IN_AREA_NOTICE: return { "CHAT_NOT_IN_AREA_NOTICE", "CHAT_NOT_IN_AREA_NOTICE", "+ \042[%s] You are not in the correct area for this channel.\042; -- The user is trying to send a chat to a zone specific channel, and they're not physically in that zone." };
67 case CHAT_NOT_IN_LFG_NOTICE: return { "CHAT_NOT_IN_LFG_NOTICE", "CHAT_NOT_IN_LFG_NOTICE", "+ \042[%s] You must be queued in looking for group before joining this channel.\042; -- The user must be in the looking for group system to join LFG chat channels." };
68 case CHAT_VOICE_ON_NOTICE: return { "CHAT_VOICE_ON_NOTICE", "CHAT_VOICE_ON_NOTICE", "+ \042[%s] Channel voice enabled by %s.\042;" };
69 case CHAT_VOICE_OFF_NOTICE: return { "CHAT_VOICE_OFF_NOTICE", "CHAT_VOICE_OFF_NOTICE", "+ \042[%s] Channel voice disabled by %s.\042;" };
70 case CHAT_TRIAL_RESTRICTED: return { "CHAT_TRIAL_RESTRICTED", "CHAT_TRIAL_RESTRICTED", "+ \042[%s] Free Trial accounts cannot send messages to this channel. |cffffd000|Hstorecategory:gametime|h[Click To Upgrade]|h|r\042" };
71 case CHAT_NOT_ALLOWED_IN_CHANNEL: return { "CHAT_NOT_ALLOWED_IN_CHANNEL", "CHAT_NOT_ALLOWED_IN_CHANNEL", "+ \042That operation is not permitted in this channel.\042" };
72 default: throw std::out_of_range("value");
73 }
74}
75
76template <>
78
79template <>
81{
82 switch (index)
83 {
84 case 0: return CHAT_JOINED_NOTICE;
85 case 1: return CHAT_LEFT_NOTICE;
86 case 2: return CHAT_YOU_JOINED_NOTICE;
87 case 3: return CHAT_YOU_LEFT_NOTICE;
88 case 4: return CHAT_WRONG_PASSWORD_NOTICE;
89 case 5: return CHAT_NOT_MEMBER_NOTICE;
90 case 6: return CHAT_NOT_MODERATOR_NOTICE;
91 case 7: return CHAT_PASSWORD_CHANGED_NOTICE;
92 case 8: return CHAT_OWNER_CHANGED_NOTICE;
93 case 9: return CHAT_PLAYER_NOT_FOUND_NOTICE;
94 case 10: return CHAT_NOT_OWNER_NOTICE;
95 case 11: return CHAT_CHANNEL_OWNER_NOTICE;
96 case 12: return CHAT_MODE_CHANGE_NOTICE;
97 case 13: return CHAT_ANNOUNCEMENTS_ON_NOTICE;
98 case 14: return CHAT_ANNOUNCEMENTS_OFF_NOTICE;
99 case 15: return CHAT_MODERATION_ON_NOTICE;
100 case 16: return CHAT_MODERATION_OFF_NOTICE;
101 case 17: return CHAT_MUTED_NOTICE;
102 case 18: return CHAT_PLAYER_KICKED_NOTICE;
103 case 19: return CHAT_BANNED_NOTICE;
104 case 20: return CHAT_PLAYER_BANNED_NOTICE;
105 case 21: return CHAT_PLAYER_UNBANNED_NOTICE;
106 case 22: return CHAT_PLAYER_NOT_BANNED_NOTICE;
107 case 23: return CHAT_PLAYER_ALREADY_MEMBER_NOTICE;
108 case 24: return CHAT_INVITE_NOTICE;
109 case 25: return CHAT_INVITE_WRONG_FACTION_NOTICE;
110 case 26: return CHAT_WRONG_FACTION_NOTICE;
111 case 27: return CHAT_INVALID_NAME_NOTICE;
112 case 28: return CHAT_NOT_MODERATED_NOTICE;
113 case 29: return CHAT_PLAYER_INVITED_NOTICE;
114 case 30: return CHAT_PLAYER_INVITE_BANNED_NOTICE;
115 case 31: return CHAT_THROTTLED_NOTICE;
116 case 32: return CHAT_NOT_IN_AREA_NOTICE;
117 case 33: return CHAT_NOT_IN_LFG_NOTICE;
118 case 34: return CHAT_VOICE_ON_NOTICE;
119 case 35: return CHAT_VOICE_OFF_NOTICE;
120 case 36: return CHAT_TRIAL_RESTRICTED;
121 case 37: return CHAT_NOT_ALLOWED_IN_CHANNEL;
122 default: throw std::out_of_range("index");
123 }
124}
125
126template <>
128{
129 switch (value)
130 {
131 case CHAT_JOINED_NOTICE: return 0;
132 case CHAT_LEFT_NOTICE: return 1;
133 case CHAT_YOU_JOINED_NOTICE: return 2;
134 case CHAT_YOU_LEFT_NOTICE: return 3;
135 case CHAT_WRONG_PASSWORD_NOTICE: return 4;
136 case CHAT_NOT_MEMBER_NOTICE: return 5;
137 case CHAT_NOT_MODERATOR_NOTICE: return 6;
138 case CHAT_PASSWORD_CHANGED_NOTICE: return 7;
139 case CHAT_OWNER_CHANGED_NOTICE: return 8;
140 case CHAT_PLAYER_NOT_FOUND_NOTICE: return 9;
141 case CHAT_NOT_OWNER_NOTICE: return 10;
142 case CHAT_CHANNEL_OWNER_NOTICE: return 11;
143 case CHAT_MODE_CHANGE_NOTICE: return 12;
144 case CHAT_ANNOUNCEMENTS_ON_NOTICE: return 13;
145 case CHAT_ANNOUNCEMENTS_OFF_NOTICE: return 14;
146 case CHAT_MODERATION_ON_NOTICE: return 15;
147 case CHAT_MODERATION_OFF_NOTICE: return 16;
148 case CHAT_MUTED_NOTICE: return 17;
149 case CHAT_PLAYER_KICKED_NOTICE: return 18;
150 case CHAT_BANNED_NOTICE: return 19;
151 case CHAT_PLAYER_BANNED_NOTICE: return 20;
152 case CHAT_PLAYER_UNBANNED_NOTICE: return 21;
153 case CHAT_PLAYER_NOT_BANNED_NOTICE: return 22;
154 case CHAT_PLAYER_ALREADY_MEMBER_NOTICE: return 23;
155 case CHAT_INVITE_NOTICE: return 24;
156 case CHAT_INVITE_WRONG_FACTION_NOTICE: return 25;
157 case CHAT_WRONG_FACTION_NOTICE: return 26;
158 case CHAT_INVALID_NAME_NOTICE: return 27;
159 case CHAT_NOT_MODERATED_NOTICE: return 28;
160 case CHAT_PLAYER_INVITED_NOTICE: return 29;
161 case CHAT_PLAYER_INVITE_BANNED_NOTICE: return 30;
162 case CHAT_THROTTLED_NOTICE: return 31;
163 case CHAT_NOT_IN_AREA_NOTICE: return 32;
164 case CHAT_NOT_IN_LFG_NOTICE: return 33;
165 case CHAT_VOICE_ON_NOTICE: return 34;
166 case CHAT_VOICE_OFF_NOTICE: return 35;
167 case CHAT_TRIAL_RESTRICTED: return 36;
168 case CHAT_NOT_ALLOWED_IN_CHANNEL: return 37;
169 default: throw std::out_of_range("value");
170 }
171}
172}
ChatNotify
Definition: Channel.h:40
@ CHAT_YOU_JOINED_NOTICE
Definition: Channel.h:44
@ CHAT_MODERATION_OFF_NOTICE
Definition: Channel.h:59
@ CHAT_WRONG_FACTION_NOTICE
Definition: Channel.h:69
@ CHAT_NOT_MODERATOR_NOTICE
Definition: Channel.h:49
@ CHAT_PLAYER_UNBANNED_NOTICE
Definition: Channel.h:64
@ CHAT_PLAYER_NOT_FOUND_NOTICE
Definition: Channel.h:52
@ CHAT_MUTED_NOTICE
Definition: Channel.h:60
@ CHAT_PLAYER_NOT_BANNED_NOTICE
Definition: Channel.h:65
@ CHAT_PLAYER_INVITED_NOTICE
Definition: Channel.h:72
@ CHAT_PLAYER_KICKED_NOTICE
Definition: Channel.h:61
@ CHAT_VOICE_OFF_NOTICE
Definition: Channel.h:78
@ CHAT_NOT_ALLOWED_IN_CHANNEL
Definition: Channel.h:80
@ CHAT_MODE_CHANGE_NOTICE
Definition: Channel.h:55
@ CHAT_NOT_MEMBER_NOTICE
Definition: Channel.h:48
@ CHAT_ANNOUNCEMENTS_ON_NOTICE
Definition: Channel.h:56
@ CHAT_JOINED_NOTICE
Definition: Channel.h:41
@ CHAT_LEFT_NOTICE
Definition: Channel.h:42
@ CHAT_INVITE_WRONG_FACTION_NOTICE
Definition: Channel.h:68
@ CHAT_BANNED_NOTICE
Definition: Channel.h:62
@ CHAT_PLAYER_BANNED_NOTICE
Definition: Channel.h:63
@ CHAT_PLAYER_ALREADY_MEMBER_NOTICE
Definition: Channel.h:66
@ CHAT_OWNER_CHANGED_NOTICE
Definition: Channel.h:51
@ CHAT_ANNOUNCEMENTS_OFF_NOTICE
Definition: Channel.h:57
@ CHAT_VOICE_ON_NOTICE
Definition: Channel.h:77
@ CHAT_NOT_IN_LFG_NOTICE
Definition: Channel.h:76
@ CHAT_NOT_IN_AREA_NOTICE
Definition: Channel.h:75
@ CHAT_NOT_MODERATED_NOTICE
Definition: Channel.h:71
@ CHAT_YOU_LEFT_NOTICE
Definition: Channel.h:46
@ CHAT_CHANNEL_OWNER_NOTICE
Definition: Channel.h:54
@ CHAT_WRONG_PASSWORD_NOTICE
Definition: Channel.h:47
@ CHAT_THROTTLED_NOTICE
Definition: Channel.h:74
@ CHAT_TRIAL_RESTRICTED
Definition: Channel.h:79
@ CHAT_PLAYER_INVITE_BANNED_NOTICE
Definition: Channel.h:73
@ CHAT_INVITE_NOTICE
Definition: Channel.h:67
@ CHAT_NOT_OWNER_NOTICE
Definition: Channel.h:53
@ CHAT_PASSWORD_CHANGED_NOTICE
Definition: Channel.h:50
@ CHAT_INVALID_NAME_NOTICE
Definition: Channel.h:70
@ CHAT_MODERATION_ON_NOTICE
Definition: Channel.h:58
#define TC_API_EXPORT
Definition: Define.h:92
static size_t ToIndex(Enum index)
static EnumText ToString(Enum value)
static Enum FromIndex(size_t index)