TrinityCore
DB2Structure.h
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#ifndef TRINITY_DB2STRUCTURE_H
19#define TRINITY_DB2STRUCTURE_H
20
21#include "Common.h"
22#include "DBCEnums.h"
23#include "FlagsArray.h"
24#include "RaceMask.h"
25
26#pragma pack(push, 1)
27
29{
34 int16 InstanceID; // -1 = none
35 int8 Faction; // -1 = all, 0 = horde, 1 = alliance
36 int16 Supercedes; // its Achievement parent (can`t start while parent uncomplete, use its Criteria if don`t have own, use its progress on begin)
38 int8 MinimumCriteria; // need this count of completed criterias (own or referenced achievement criterias)
45 int16 SharesCriteria; // referenced achievement (counting of all completed criterias)
47};
48
50{
55};
56
58{
80 std::array<uint32, 2> BonusPlayerConditionID;
81 std::array<uint8, 2> BonusValue;
82};
83
85{
99};
100
102{
107 std::array<int32, 2> Flags;
108};
109
111{
116};
117
119{
123};
124
126{
128 char const* ZoneName;
149 std::array<int32, 2> Flags;
150 std::array<uint16, 4> LiquidTypeID;
151
152 // helpers
153 EnumFlag<AreaFlags> GetFlags() const { return static_cast<AreaFlags>(Flags[0]); }
154 EnumFlag<AreaFlags2> GetFlags2() const { return static_cast<AreaFlags2>(Flags[1]); }
156
157 bool IsSanctuary() const
158 {
159 return GetFlags().HasFlag(AreaFlags::NoPvP);
160 }
161};
162
164{
171 float Radius;
173 float BoxWidth;
175 float BoxYaw;
180};
181
183{
189 float Modifier;
190};
191
193{
205};
206
208{
225};
226
228{
238};
239
241{
245};
246
248{
256};
257
259{
263};
264
266{
269};
270
272{
279};
280
282{
284 std::array<uint32, 10> Difficulty;
285};
286
288{
295};
296
298{
305};
306
308{
311 uint16 FactionID; // id of faction.dbc for player factions associated with city
314};
315
317{
322};
323
325{
330};
331
333{
343};
344
346{
349};
350
352{
358};
359
361{
364};
365
367{
372};
373
375{
381};
382
384{
391};
392
394{
400};
401
403{
406};
407
409{
416};
417
419{
422};
423
425{
427 char const* Name;
428 char const* Version;
430};
431
433{
437 uint8 Type; // value 0 -> hair, value 2 -> facialhair
441 uint8 Data; // real ID to hair/facial hair
442};
443
445{
454};
455
457{
462};
463
465{
470};
471
473{
486
488};
489
491{
496};
497
499{
517 std::array<int16, 16> MapID;
518
520};
521
522#define MAX_BROADCAST_TEXT_EMOTES 3
523
525{
535 std::array<uint32, 2> SoundKitID;
536 std::array<uint16, MAX_BROADCAST_TEXT_EMOTES> EmoteID;
537 std::array<uint16, MAX_BROADCAST_TEXT_EMOTES> EmoteDelay;
538};
539
541{
546};
547
549{
557
561};
562
564{
566 char const* Tag;
568 uint32 Raidorigin; // Date of first raid reset, all other resets are calculated as this date plus interval
571};
572
574{
583};
584
586{
592};
593
595{
601
602 bool IsForNewCharacter() const { return Purpose == 9; }
603};
604
606{
610};
611
613{
620
622 ChatChannelRuleset GetRuleset() const { return static_cast<ChatChannelRuleset>(Ruleset); }
623};
624
626{
631};
632
634{
636 char const* Filename;
639 char const* PetNameToken;
674};
675
677{
681};
682
684{
695 std::array<int32, 2> SwatchColor;
696};
697
699{
706};
707
709{
724};
725
727{
741};
742
744{
752 int32 OverrideArchive; // -1: allow any, otherwise must match OverrideArchive cvar
754
756};
757
759{
763};
764
766{
767 std::array<float, 3> FaceCustomizationOffset;
768 std::array<float, 3> CustomizeOffset;
782 float BarberShopCameraHeightOffsetScale; // applied after BarberShopCameraOffsetScale
784};
785
787{
793};
794
796{
798 char const* ClientPrefix;
799 char const* ClientFileString;
826 std::array<int32, 3> AlteredFormStartVisualKitID;
827 std::array<int32, 3> AlteredFormFinishVisualKitID;
841 std::array<float, 3> Unknown910_1;
842 std::array<float, 3> Unknown910_2;
850
851 EnumFlag<ChrRacesFlag> GetFlags() const { return static_cast<ChrRacesFlag>(Flags); }
852};
853
854#define MAX_MASTERY_SPELLS 2
855
857{
870 std::array<int32, MAX_MASTERY_SPELLS> MasterySpellID;
871
873 ChrSpecializationRole GetRole() const { return static_cast<ChrSpecializationRole>(Role); }
874
876 {
877 return ClassID == 0;
878 }
879};
880
882{
884 DBCPosition3D Origin; // Position in map used for basis for M2 co-ordinates
885 uint32 SoundID; // Sound ID (voiceover for cinematic)
886 float OriginFacing; // Orientation in map used for basis for M2 co
889};
890
892{
895 std::array<uint16, 8> Camera;
896};
897
899{
906};
907
909{
915};
916
918{
932
934
936 {
938 if (flags.HasFlag(ContentTuningFlag::Horde))
939 return 5;
940
942 return 3;
943
944 return 0;
945 }
946};
947
949{
955};
956
958{
962};
963
965{
976};
977
979{
985};
986
987//struct CreatureDifficultyEntry
988//{
989// uint32 ID;
990// int32 LevelDeltaMin;
991// int32 LevelDeltaMax;
992// uint16 FactionID;
993// int32 ContentTuningID;
994// int32 Flags[8];
995// uint32 CreatureID;
996//};
997
999{
1017 float PetInstanceScale; // scale of not own player pets inside dungeons/raids/scenarios
1024 std::array<int32, 4> TextureVariationFileDataID;
1025};
1026
1028{
1036};
1037
1039{
1049 std::array<int16, 2> SkillLine;
1050};
1051
1053{
1055 std::array<float, 6> GeoBox;
1085 int8 Unknown820_1; // scale related
1086 float Unknown820_2; // scale related
1087 std::array<float, 2> Unknown820_3; // scale related
1088
1090};
1091
1093{
1097};
1098
1100{
1104 {
1106 // CriteriaType::KillCreature = 0
1107 // CriteriaType::KilledByCreature = 20
1108 // CriteriaType::AccountKnownPet = 96
1109 // CriteriaType::KillCreatureScenario = 208
1111
1112 // CriteriaType::WinBattleground = 1
1113 // CriteriaType::ParticipateInBattleground = 15
1114 // CriteriaType::DieOnMap = 16
1115 // CriteriaType::WinArena = 32
1116 // CriteriaType::ParticipateInArena = 33
1117 // CriteriaType::CompleteChallengeMode = 71
1119
1120 // CriteriaType::CompleteResearchProject = 2
1122
1123 // CriteriaType::FindResearchObject = 4
1124 // CriteriaType::UseGameobject = 68
1125 // CriteriaType::CatchFishInFishingHole = 72
1127
1128 // CriteriaType::SkillRaised = 7
1129 // CriteriaType::AchieveSkillStep = 40
1130 // CriteriaType::LearnSpellFromSkillLine = 75
1131 // CriteriaType::LearnTradeskillSkillLine = 112
1133
1134 // CriteriaType::EarnAchievement = 8
1136
1137 // CriteriaType::CompleteQuestsInZone = 11
1138 // CriteriaType::EnterTopLevelArea = 225
1139 // CriteriaType::LeaveTopLevelArea = 226
1141
1142 // CriteriaType::CurrencyGained = 12
1143 // CriteriaType::ObtainAnyItemWithCurrencyValue = 229
1145
1146 // CriteriaType::DieInInstance = 18
1147 // CriteriaType::RunInstance = 19
1149
1150 // CriteriaType::CompleteInternalCriteria = 21
1152
1153 // CriteriaType::DieFromEnviromentalDamage = 26
1155
1156 // CriteriaType::CompleteQuest = 27
1158
1159 // CriteriaType::BeSpellTarget = 28
1160 // CriteriaType::CastSpell = 29
1161 // CriteriaType::LearnOrKnowSpell = 34
1162 // CriteriaType::GainAura = 69
1163 // CriteriaType::LandTargetedSpellOnTarget = 110
1164 // CriteriaType::MemorizeSpell = 222
1166
1167 // CriteriaType::TrackedWorldStateUIModified = 30
1169
1170 // CriteriaType::PVPKillInArea = 31
1171 // CriteriaType::EnterArea = 163
1172 // CriteriaType::LeaveArea = 164
1174
1175 // CriteriaType::AcquireItem = 36
1176 // CriteriaType::UseItem = 41
1177 // CriteriaType::LootItem = 42
1178 // CriteriaType::EquipItem = 57
1179 // CriteriaType::LearnToy = 185
1180 // CriteriaType::LearnHeirloom = 188
1182
1183 // CriteriaType::EarnTeamArenaRating = 38
1184 // CriteriaType::EarnPersonalArenaRating = 39
1186
1187 // CriteriaType::RevealWorldMapOverlay = 43
1189
1190 // CriteriaType::ReputationGained = 46
1191 // CriteriaType::ParagonLevelIncreaseWithFaction = 206
1193
1194 // CriteriaType::EquipItemInSlot = 49
1195 // CriteriaType::LearnAnyTransmogInSlot = 199
1197
1198 // CriteriaType::RollNeed = 50
1199 // CriteriaType::RollGreed = 51
1200 // CriteriaType::RollDisenchant = 116
1202
1203 // CriteriaType::DeliverKillingBlowToClass = 52
1205
1206 // CriteriaType::DeliverKillingBlowToRace = 53
1208
1209 // CriteriaType::DoEmote = 54
1211
1212 // CriteriaType::CompleteQuestsInSort = 58
1214
1215 // CriteriaType::KilledAllUnitsInSpawnRegion = 64
1217
1218 // CriteriaType::PlayerTriggerGameEvent = 73
1219 // CriteriaType::AnyoneTriggerGameEventScenario = 92
1221
1222 // CriteriaType::DefeatDungeonEncounterWhileElegibleForLoot = 97
1223 // CriteriaType::DefeatDungeonEncounter = 165
1225
1226 // CriteriaType::GetLootByType = 109
1228
1229 // CriteriaType::CompleteGuildChallenge = 138
1231
1232 // CriteriaType::CompleteScenario = 152
1234
1235 // CriteriaType::EnterAreaTriggerWithActionSet = 153
1236 // CriteriaType::LeaveAreaTriggerWithActionSet = 154
1238
1239 // CriteriaType::BattlePetReachLevel = 160
1240 // CriteriaType::ActivelyEarnPetLevel = 162
1242
1243 // CriteriaType::PlaceGarrisonBuilding = 167
1244 // CriteriaType::ActivateGarrisonBuilding = 169
1245 // CriteriaType::LearnGarrisonBlueprint = 179
1247
1248 // CriteriaType::UpgradeGarrison = 170
1250
1251 // CriteriaType::StartAnyGarrisonMissionWithFollowerType = 171
1252 // CriteriaType::SucceedAnyGarrisonMissionWithFollowerType = 173
1254
1255 // CriteriaType::StartGarrisonMission = 172
1256 // CriteriaType::SucceedGarrisonMission = 174
1258
1259 // CriteriaType::RecruitGarrisonFollower = 176
1261
1262 // CriteriaType::LearnGarrisonSpecialization = 181
1264
1265 // CriteriaType::CollectGarrisonShipment = 182
1267
1268 // CriteriaType::LearnTransmog = 192
1270
1271 // CriteriaType::ActivelyReachLevel = 196
1273
1274 // CriteriaType::CompleteResearchGarrisonTalent = 198
1275 // CriteriaType::StartResearchGarrisonTalent = 202
1276 // CriteriaType::SocketGarrisonTalent = 227
1278
1279 // CriteriaType::EarnLicense = 204
1281
1282 // CriteriaType::CollectTransmogSetFromGroup = 205
1284
1285 // CriteriaType::ArtifactPowerRankPurchased = 209
1286 // CriteriaType::ChooseRelicTalent = 211
1288
1289 // CriteriaType::EarnExpansionLevel = 212
1291
1292 // CriteriaType::AccountHonorLevelReached = 213
1294
1295 // CriteriaType::AzeriteLevelReached = 215
1297
1298 // CriteriaType::MythicPlusRatingAttained = 230
1310
1311 EnumFlag<CriteriaFlags> GetFlags() const { return static_cast<CriteriaFlags>(Flags); }
1312};
1313
1315{
1324
1326};
1327
1329{
1339};
1340
1342{
1360 std::array<int32, 2> Flags;
1361
1364
1365 // Helpers
1367 {
1368 return GetFlags().HasFlag(CurrencyTypesFlags::_100_Scaler) ? 100 : 1;
1369 }
1370
1372 {
1374 }
1375
1376 bool HasMaxQuantity(bool onLoad = false, bool onUpdateVersion = false) const
1377 {
1378 if (onLoad && GetFlags().HasFlag(CurrencyTypesFlags::IgnoreMaxQtyOnLoad))
1379 return false;
1380
1381 if (onUpdateVersion && GetFlags().HasFlag(CurrencyTypesFlags::UpdateVersionIgnoreMax))
1382 return false;
1383
1385 }
1386
1387 bool HasTotalEarned() const
1388 {
1390 }
1391
1392 bool IsAlliance() const
1393 {
1395 }
1396
1397 bool IsHorde() const
1398 {
1399 return GetFlags().HasFlag(CurrencyTypesFlags::IsHordeOnly);
1400 }
1401
1402 bool IsSuppressingChatLog(bool onUpdateVersion = false) const
1403 {
1404 if ((onUpdateVersion && GetFlags().HasFlag(CurrencyTypesFlags::SuppressChatMessageOnVersionChange)) ||
1406 return true;
1407
1408 return false;
1409 }
1410
1412 {
1414 }
1415};
1416
1418{
1422};
1423
1425{
1431};
1432
1434{
1458};
1459
1461{
1476};
1477
1479{
1490};
1491
1493{
1495 std::array<uint16, 21> WeaponSubClassCost;
1496 std::array<uint16, 8> ArmorSubClassCost;
1497};
1498
1500{
1502 float Data;
1503};
1504
1506{
1517};
1518
1520{
1522 char const* Name;
1524};
1525
1527{
1534};
1535
1537{
1550};
1551
1553{
1564};
1565
1567{
1569 std::array<Trinity::RaceMask<int64>, 4> ReputationRaceMask;
1580 std::array<int16, 4> ReputationClassMask;
1581 std::array<uint16, 4> ReputationFlags;
1582 std::array<int32, 4> ReputationBase;
1583 std::array<int32, 4> ReputationMax;
1584 std::array<float, 2> ParentFactionMod; // Faction outputs rep * ParentFactionModOut as spillover reputation
1585 std::array<uint8, 2> ParentFactionCap; // The highest rank the faction will profit from incoming spillover
1586
1587 // helpers
1589 {
1590 return ReputationIndex >= 0;
1591 }
1592};
1593
1594#define MAX_FACTION_RELATIONS 8
1595
1597{
1604 std::array<uint16, MAX_FACTION_RELATIONS> Enemies;
1605 std::array<uint16, MAX_FACTION_RELATIONS> Friend;
1606
1607 //------------------------------------------------------- end structure
1608
1609 // helpers
1610 bool IsFriendlyTo(FactionTemplateEntry const* entry) const
1611 {
1612 if (this == entry)
1613 return true;
1614 if (entry->Faction)
1615 {
1616 for (int32 i = 0; i < MAX_FACTION_RELATIONS; ++i)
1617 if (Enemies[i] == entry->Faction)
1618 return false;
1619 for (int32 i = 0; i < MAX_FACTION_RELATIONS; ++i)
1620 if (Friend[i] == entry->Faction)
1621 return true;
1622 }
1623 return (FriendGroup & entry->FactionGroup) || (FactionGroup & entry->FriendGroup);
1624 }
1625 bool IsHostileTo(FactionTemplateEntry const* entry) const
1626 {
1627 if (this == entry)
1628 return false;
1629 if (entry->Faction)
1630 {
1631 for (int32 i = 0; i < MAX_FACTION_RELATIONS; ++i)
1632 if (Enemies[i] == entry->Faction)
1633 return true;
1634 for (int32 i = 0; i < MAX_FACTION_RELATIONS; ++i)
1635 if (Friend[i] == entry->Faction)
1636 return false;
1637 }
1638 return (EnemyGroup & entry->FactionGroup) != 0;
1639 }
1640 bool IsHostileToPlayers() const { return (EnemyGroup & FACTION_MASK_PLAYER) !=0; }
1641 bool IsNeutralToAll() const
1642 {
1643 for (int i = 0; i < MAX_FACTION_RELATIONS; ++i)
1644 if (Enemies[i] != 0)
1645 return false;
1646 return EnemyGroup == 0 && FriendGroup == 0;
1647 }
1649};
1650
1652{
1658};
1659
1661{
1669
1671};
1672
1674{
1677 std::array<int32, 3> TextureVariationFileID;
1678};
1679
1681{
1692};
1693
1695{
1698 std::array<float, 4> Rot;
1702 float Scale;
1707 std::array<int32, 8> PropValue;
1708};
1709
1711{
1720};
1721
1723{
1749};
1750
1752{
1758};
1759
1761{
1770};
1771
1773{
1808};
1809
1811{
1817};
1818
1820{
1853};
1854
1856{
1858 char const* Name;
1864 std::array<uint32, 2> UpgradeRequirement;
1865};
1866
1868{
1872};
1873
1875{
1877 char const* Name;
1879};
1880
1882{
1893};
1894
1896{
1902};
1903
1905{
1919};
1920
1922{
1926};
1927
1929{
1933};
1934
1936{
1940};
1941
1943{
1949};
1950
1952{
1956};
1957
1959{
1976};
1977
1979{
1984};
1985
1987{
1992};
1993
1995{
2000};
2001
2003{
2006};
2007
2009{
2018 std::array<int32, 6> UpgradeItemID;
2019 std::array<uint16, 6> UpgradeItemBonusListID;
2020};
2021
2022#define MAX_HOLIDAY_DURATIONS 10
2023#define MAX_HOLIDAY_DATES 26
2024#define MAX_HOLIDAY_FLAGS 10
2025
2027{
2036 std::array<uint16, MAX_HOLIDAY_DURATIONS> Duration;
2037 std::array<uint32, MAX_HOLIDAY_DATES> Date; // dates in unix time starting at January, 1, 2000
2038 std::array<uint8, MAX_HOLIDAY_DURATIONS> CalendarFlags;
2039 std::array<int32, 3> TextureFileDataID;
2040};
2041
2043{
2049};
2050
2052{
2054 float Data;
2055};
2056
2058{
2060 float Data;
2061};
2062
2064{
2066 float Data;
2067};
2068
2070{
2083};
2084
2086{
2093};
2094
2096{
2098 std::array<float, 7> Qualitymod;
2099};
2100
2102{
2104 std::array<float, 7> Quality;
2106};
2107
2109{
2112 float Cloth;
2113 float Leather;
2114 float Mail;
2115 float Plate;
2116};
2117
2119{
2122};
2123
2125{
2127 std::array<int32, 4> Value;
2131};
2132
2133// new item upgrade system
2135{
2145};
2146
2148{
2151};
2152
2153//struct ItemBonusSequenceSpellEntry
2154//{
2155// uint32 ID;
2156// int32 SpellID;
2157// int32 ItemID;
2158//};
2159
2161{
2165};
2166
2168{
2179};
2180
2182{
2187};
2188
2190{
2196};
2197
2199{
2208};
2209
2211{
2214};
2215
2217{
2220 std::array<float, 7> Quality;
2221};
2222
2224{
2227 std::array<float, 7> Quality;
2228};
2229
2231{
2234 std::array<float, 7> Quality;
2235};
2236
2238{
2241 std::array<float, 7> Quality;
2242};
2243
2245{
2248 std::array<float, 7> Quality;
2249};
2250
2252{
2261};
2262
2264{
2274};
2275
2276#define MAX_ITEM_EXT_COST_ITEMS 5
2277#define MAX_ITEM_EXT_COST_CURRENCIES 5
2278
2280{
2283 int8 ArenaBracket; // arena slot restrictions (min slot value)
2287 uint8 RequiredAchievement; // required personal arena rating
2288 std::array<int32, MAX_ITEM_EXT_COST_ITEMS> ItemID; // required item id
2289 std::array<uint16, MAX_ITEM_EXT_COST_ITEMS> ItemCount; // required count of 1st item
2290 std::array<uint16, MAX_ITEM_EXT_COST_CURRENCIES> CurrencyID; // required curency id
2291 std::array<uint32, MAX_ITEM_EXT_COST_CURRENCIES> CurrencyCount; // required curency count
2292};
2293
2295{
2300};
2301
2303{
2308};
2309
2311{
2315};
2316
2318{
2323};
2324
2326{
2331};
2332
2334{
2341};
2342
2344{
2351};
2352
2354{
2358};
2359
2361{
2364 float Armor;
2365 float Weapon;
2366};
2367
2369{
2383 std::array<int32, 4> Flags;
2384};
2385
2386#define MAX_ITEM_SET_ITEMS 17
2387
2389{
2395 std::array<uint32, MAX_ITEM_SET_ITEMS> ItemID;
2396};
2397
2399{
2405};
2406
2408{
2425 std::array<float, MAX_ITEM_PROTO_STATS> StatPercentageOfSocket;
2426 std::array<int32, MAX_ITEM_PROTO_STATS> StatPercentEditor;
2436 std::array<int32, MAX_ITEM_PROTO_FLAGS> Flags;
2448 std::array<uint16, MAX_ITEM_PROTO_ZONES> ZoneBound;
2461 std::array<uint8, MAX_ITEM_PROTO_SOCKETS> SocketType;
2467 std::array<int8, MAX_ITEM_PROTO_STATS> StatModifierBonusStat;
2474};
2475
2477{
2485};
2486
2488{
2492};
2493
2495{
2499};
2500
2502{
2506};
2507
2509{
2522};
2523
2525{
2542};
2543
2545{
2556};
2557
2559{
2563};
2564
2565#define KEYCHAIN_SIZE 32
2566
2568{
2570 std::array<uint8, KEYCHAIN_SIZE> Key;
2571};
2572
2574{
2579};
2580
2582{
2584 char const* Word;
2586};
2587
2589{
2596};
2597
2599{
2612 float MinGear;
2629 std::array<int32, 2> Flags;
2630
2631 // Helpers
2632 uint32 Entry() const { return ID + (TypeID << 24); }
2633};
2634
2636{
2642 std::array<uint16, 8> LightParamsID;
2643};
2644
2646{
2648 char const* Name;
2649 std::array<char const*, 6> Texture;
2651 uint8 SoundBank; // used to be "type", maybe needs fixing (works well for now)
2664 std::array<uint8, 6> FrameCountTexture;
2665 std::array<int32, 2> Color;
2666 std::array<float, 18> Float;
2667 std::array<uint32, 4> Int;
2668 std::array<float, 4> Coefficient;
2669};
2670
2671#define MAX_LOCK_CASE 8
2672
2674{
2677 std::array<int32, MAX_LOCK_CASE> Index;
2678 std::array<uint16, MAX_LOCK_CASE> Skill;
2679 std::array<uint8, MAX_LOCK_CASE> Type;
2680 std::array<uint8, MAX_LOCK_CASE> Action;
2681};
2682
2684{
2687};
2688
2690{
2692 char const* Directory;
2698 DBCPosition2D Corpse; // entrance coordinates in ghost mode (in most cases = normal entrance)
2709 int16 CorpseMapID; // map_id of entrance map in ghost mode (continent always and in most cases = normal entrance)
2715 std::array<int32, 3> Flags;
2716
2717 // Helpers
2718 uint8 Expansion() const { return ExpansionID; }
2719
2721 bool IsNonRaidDungeon() const { return InstanceType == MAP_INSTANCE; }
2723 bool IsRaid() const { return InstanceType == MAP_RAID; }
2725 bool IsBattleArena() const { return InstanceType == MAP_ARENA; }
2727 bool IsScenario() const { return InstanceType == MAP_SCENARIO; }
2728 bool IsWorldMap() const { return InstanceType == MAP_COMMON; }
2729
2730 bool GetEntrancePos(int32& mapid, float& x, float& y) const
2731 {
2732 if (CorpseMapID < 0)
2733 return false;
2734
2735 mapid = CorpseMapID;
2736 x = Corpse.X;
2737 y = Corpse.Y;
2738 return true;
2739 }
2740
2741 bool IsContinent() const
2742 {
2743 switch (ID)
2744 {
2745 case 0:
2746 case 1:
2747 case 530:
2748 case 571:
2749 case 870:
2750 case 1116:
2751 case 1220:
2752 case 1642:
2753 case 1643:
2754 case 2222:
2755 case 2444:
2756 return true;
2757 default:
2758 return false;
2759 }
2760 }
2761
2763 bool IsFlexLocking() const { return GetFlags().HasFlag(MapFlags::FlexibleRaidLocking); }
2764 bool IsGarrison() const { return GetFlags().HasFlag(MapFlags::Garrison); }
2765 bool IsSplitByFaction() const
2766 {
2767 return ID == 609 || // Acherus (DeathKnight Start)
2768 ID == 1265 || // Assault on the Dark Portal (WoD Intro)
2769 ID == 1481 || // Mardum (DH Start)
2770 ID == 2175 || // Exiles Reach - NPE
2771 ID == 2570; // Forbidden Reach (Dracthyr/Evoker Start)
2772 }
2773
2774 EnumFlag<MapFlags> GetFlags() const { return static_cast<MapFlags>(Flags[0]); }
2775 EnumFlag<MapFlags2> GetFlags2() const { return static_cast<MapFlags2>(Flags[1]); }
2776};
2777
2779{
2786 std::array<int16, 3> CriteriaCount;
2787};
2788
2790{
2792 LocalizedString Message; // m_message_lang (text showed when transfer to map failed)
2802
2807
2809 {
2811 return 86400;
2813 return 604800;
2814 return 0;
2815 }
2816
2818};
2819
2821{
2827};
2828
2830{
2834};
2835
2837{
2846};
2847
2849{
2863
2864 bool IsSelfMount() const { return (Flags & MOUNT_FLAG_SELF_MOUNT) != 0; }
2865};
2866
2868{
2879};
2880
2882{
2887};
2888
2890{
2895};
2896
2898{
2905};
2906
2908{
2913};
2914
2916{
2918 char const* Name;
2921};
2922
2924{
2926 char const* Name;
2928};
2929
2931{
2933 char const* Name;
2934};
2935
2937{
2939 char const* Name;
2941};
2942
2944{
2949};
2950
2951#define MAX_OVERRIDE_SPELL 10
2952
2954{
2956 std::array<int32, MAX_OVERRIDE_SPELL> Spells;
2959};
2960
2962{
2967};
2968
2970{
2973
2975};
2976
2978{
2982};
2983
2985{
3044 std::array<uint16, 4> SkillID;
3045 std::array<uint16, 4> MinSkill;
3046 std::array<uint16, 4> MaxSkill;
3047 std::array<uint32, 3> MinFactionID;
3048 std::array<uint8, 3> MinReputation;
3049 std::array<int32, 4> PrevQuestID;
3050 std::array<int32, 4> CurrQuestID;
3051 std::array<int32, 4> CurrentCompletedQuestID;
3052 std::array<int32, 4> SpellID;
3053 std::array<int32, 4> ItemID;
3054 std::array<uint32, 4> ItemCount;
3055 std::array<uint16, 2> Explored;
3056 std::array<uint32, 2> Time;
3057 std::array<int32, 4> AuraSpellID;
3058 std::array<uint8, 4> AuraStacks;
3059 std::array<uint16, 4> Achievement;
3060 std::array<uint16, 4> AreaID;
3061 std::array<uint8, 4> LfgStatus;
3062 std::array<uint8, 4> LfgCompare;
3063 std::array<uint32, 4> LfgValue;
3064 std::array<uint32, 4> CurrencyID;
3065 std::array<uint32, 4> CurrencyCount;
3066 std::array<uint32, 6> QuestKillMonster;
3067 std::array<int32, 2> MovementFlags;
3068 std::array<int32, 4> TraitNodeEntryID;
3069 std::array<uint16, 4> TraitNodeEntryMinRank;
3070 std::array<uint16, 4> TraitNodeEntryMaxRank;
3071};
3072
3074{
3081};
3082
3084{
3098
3099 EnumFlag<PowerTypeFlags> GetFlags() const { return static_cast<PowerTypeFlags>(Flags); }
3100};
3101
3103{
3110
3111 bool IsDisabled() const { return (Flags & PRESTIGE_FLAG_DISABLED) != 0; }
3112};
3113
3115{
3121
3122 // helpers
3124};
3125
3127{
3131};
3132
3134{
3138};
3139
3141{
3146};
3147
3149{
3160};
3161
3163{
3166};
3167
3169{
3175};
3176
3178{
3188};
3189
3191{
3193 std::array<int16, 10> Difficulty;
3194};
3195
3197{
3203};
3204
3206{
3212};
3213
3215{
3217 std::array<uint32, 10> Difficulty;
3218};
3219
3221{
3227};
3228
3230{
3234};
3235
3237{
3241};
3242
3244{
3246 std::array<uint16, 10> Difficulty;
3247};
3248
3250{
3256 std::array<float, 5> EpicF;
3257 std::array<float, 5> SuperiorF;
3258 std::array<float, 5> GoodF;
3259 std::array<uint32, 5> Epic;
3260 std::array<uint32, 5> Superior;
3261 std::array<uint32, 5> Good;
3262};
3263
3265{
3273};
3274
3276{
3281};
3282
3284{
3289};
3290
3292{
3299};
3300
3302{
3309 int32 RelatedStep; // Bonus step can only be completed if scenario is in the step specified in this field
3310 uint16 Supersedes; // Used in conjunction with Proving Grounds scenarios, when sequencing steps (Not using step order?)
3315
3316 // helpers
3317 bool IsBonusObjective() const
3318 {
3320 }
3321};
3322
3324{
3329};
3330
3332{
3334 char const* Name;
3335 char const* Script;
3336};
3337
3339{
3341 char const* Name;
3343};
3344
3346{
3348 char const* Name;
3349 char const* Script;
3350};
3351
3353{
3356};
3357
3359{
3375
3376 EnumFlag<SkillLineFlags> GetFlags() const { return static_cast<SkillLineFlags>(Flags); }
3377};
3378
3380{
3398
3400};
3401
3403{
3408};
3409
3411{
3420};
3421
3423{
3429};
3430
3432{
3450};
3451
3453{
3460};
3461
3463{
3467};
3468
3470{
3478 std::array<int32, 2> ProcTypeMask;
3480};
3481
3483{
3499};
3500
3502{
3506};
3507
3509{
3518};
3519
3521{
3532};
3533
3535{
3543};
3544
3546{
3552};
3553
3555{
3563};
3564
3566{
3570};
3571
3573{
3599 std::array<int32, 2> EffectMiscValue;
3600 std::array<uint32, 2> EffectRadiusIndex;
3602 std::array<int16, 2> ImplicitTarget;
3604
3606};
3607
3609{
3615};
3616
3618{
3621};
3622
3624{
3628 std::array<int32, MAX_SPELL_AURA_INTERRUPT_FLAGS> AuraInterruptFlags;
3629 std::array<int32, MAX_SPELL_AURA_INTERRUPT_FLAGS> ChannelInterruptFlags;
3631};
3632
3633#define MAX_ITEM_ENCHANTMENT_EFFECTS 3
3634
3636{
3641 std::array<uint32, MAX_ITEM_ENCHANTMENT_EFFECTS> EffectArg;
3642 std::array<float, MAX_ITEM_ENCHANTMENT_EFFECTS> EffectScalingPoints;
3648 std::array<int16, MAX_ITEM_ENCHANTMENT_EFFECTS> EffectPointsMin;
3655 std::array<uint8, MAX_ITEM_ENCHANTMENT_EFFECTS> Effect;
3661
3663};
3664
3666{
3668 std::array<uint8, 5> LtOperandType;
3669 std::array<uint32, 5> LtOperand;
3670 std::array<uint8, 5> Operator;
3671 std::array<uint8, 5> RtOperandType;
3672 std::array<uint8, 5> RtOperand;
3673 std::array<uint8, 5> Logic;
3674};
3675
3677{
3679 char const* Function;
3683};
3684
3686{
3690};
3691
3693{
3698};
3699
3701{
3709};
3710
3712{
3714 std::array<int32, 15> Attributes;
3720 float Speed;
3730};
3731
3733{
3734 uint32 ID; // SpellID
3736};
3737
3739{
3753 uint32 OptionalCost; // Spell uses [ManaCost, ManaCost+ManaCostAdditional] power - affects tooltip parsing as multiplier on SpellEffectEntry::EffectPointsPerResource
3754 // only SPELL_EFFECT_WEAPON_DAMAGE_NOSCHOOL, SPELL_EFFECT_WEAPON_PERCENT_DAMAGE, SPELL_EFFECT_WEAPON_DAMAGE, SPELL_EFFECT_NORMALIZED_WEAPON_DMG
3756};
3757
3759{
3763};
3764
3766{
3770};
3771
3773{
3777 float Coeff;
3779};
3780
3782{
3784 float Radius;
3788};
3789
3791{
3796 std::array<float, 2> RangeMin;
3797 std::array<float, 2> RangeMax;
3798};
3799
3800#define MAX_SPELL_REAGENTS 8
3801
3803{
3806 std::array<int32, MAX_SPELL_REAGENTS> Reagent;
3807 std::array<int16, MAX_SPELL_REAGENTS> ReagentCount;
3808 std::array<int16, MAX_SPELL_REAGENTS> ReagentRecraftCount;
3809 std::array<uint8, MAX_SPELL_REAGENTS> ReagentSource;
3810};
3811
3813{
3818};
3819
3821{
3827};
3828
3830{
3834 std::array<int32, 2> ShapeshiftExclude;
3835 std::array<int32, 2> ShapeshiftMask;
3836};
3837
3838#define MAX_SHAPESHIFT_SPELLS 8
3839
3841{
3852 std::array<uint32, MAX_SHAPESHIFT_SPELLS> PresetSpellID;
3853
3855};
3856
3858{
3866 float Width;
3868};
3869
3870#define MAX_SPELL_TOTEMS 2
3871
3873{
3876 std::array<uint16, MAX_SPELL_TOTEMS> RequiredTotemCategoryID;
3877 std::array<int32, MAX_SPELL_TOTEMS> Totem;
3878};
3879
3881{
3883 std::array<float, 3> MissileCastOffset;
3884 std::array<float, 3> MissileImpactOffset;
3899};
3900
3902{
3906 float Scale;
3909 float Alpha;
3919};
3920
3922{
3923 std::array<float, 3> CastOffset;
3924 std::array<float, 3> ImpactOffset;
3941};
3942
3944{
3950 std::array<int32, 2> Flags;
3951};
3952
3954{
3968};
3969
3971{
3977 std::array<int32, 2> Flags;
3978
3980};
3981
3982#define TACTKEY_SIZE 16
3983
3985{
3987 std::array<uint8, TACTKEY_SIZE> Key;
3988};
3989
3991{
4001 std::array<uint8, 2> CategoryMask;
4002};
4003
4005{
4017 float Facing;
4020 std::array<int32, 2> MountCreatureID;
4021
4022 EnumFlag<TaxiNodeFlags> GetFlags() const { return static_cast<TaxiNodeFlags>(Flags); }
4023
4025 {
4027 // manually whitelisted nodes
4028 || ID == 1985 // [Hidden] Argus Ground Points Hub (Ground TP out to here, TP to Vindicaar from here)
4029 || ID == 1986 // [Hidden] Argus Vindicaar Ground Hub (Vindicaar TP out to here, TP to ground from here)
4030 || ID == 1987 // [Hidden] Argus Vindicaar No Load Hub (Vindicaar No Load transition goes through here)
4031 || ID == 2627 // [Hidden] 9.0 Bastion Ground Points Hub (Ground TP out to here, TP to Sanctum from here)
4032 || ID == 2628 // [Hidden] 9.0 Bastion Ground Hub (Sanctum TP out to here, TP to ground from here)
4033 || ID == 2732 // [HIDDEN] 9.2 Resonant Peaks - Teleport Network - Hidden Hub (Connects all Nodes to each other without unique paths)
4034 || ID == 2835 // [Hidden] 10.0 Travel Network - Destination Input
4035 || ID == 2843 // [Hidden] 10.0 Travel Network - Destination Output
4036 ;
4037 }
4038};
4039
4041{
4046};
4047
4049{
4059};
4060
4062{
4067};
4068
4070{
4076};
4077
4079{
4082};
4083
4085{
4101
4103};
4104
4106{
4107 char const* InternalName;
4111};
4112
4114{
4120
4121 TraitCurrencyType GetType() const { return static_cast<TraitCurrencyType>(Type); }
4122};
4123
4125{
4135};
4136
4138{
4147};
4148
4150{
4156
4158};
4159
4161{
4167};
4168
4170{
4177
4178 TraitNodeType GetType() const { return static_cast<TraitNodeType>(Type); }
4179};
4180
4182{
4187
4189};
4190
4192{
4196};
4197
4199{
4203};
4204
4206{
4210};
4211
4213{
4217};
4218
4220{
4224};
4225
4227{
4232};
4233
4235{
4239};
4240
4242{
4246};
4247
4249{
4254};
4255
4257{
4266
4267 EnumFlag<TraitTreeFlag> GetFlags() const { return static_cast<TraitTreeFlag>(Flags); }
4268};
4269
4271{
4275};
4276
4278{
4285};
4286
4288{
4292};
4293
4295{
4300};
4301
4303{
4309
4311};
4312
4314{
4328};
4329
4331{
4334};
4335
4337{
4342};
4343
4345{
4351};
4352
4354{
4356 std::array<float, 4> Rot;
4359};
4360
4362{
4371 int32 VisibilityPlayerConditionID2; // if not met then map is skipped when evaluating UiMapAssignment
4372 int32 VisibilityPlayerConditionID; // if not met then client checks other maps with the same AlternateUiMapGroup, not re-evaluating UiMapAssignment for them
4377
4378 EnumFlag<UiMapFlag> GetFlags() const { return static_cast<UiMapFlag>(Flags); }
4379};
4380
4382{
4385 std::array<DBCPosition3D, 2> Region;
4393};
4394
4396{
4407};
4408
4410{
4415};
4416
4418{
4434 int32 RequiredTimeEventPassed; // serverside TimeEvent table, see ModifierTreeType::HasTimeEventPassed
4435};
4436
4437#define MAX_UNIT_CONDITION_VALUES 8
4438
4440{
4443 std::array<uint8, MAX_UNIT_CONDITION_VALUES> Variable;
4444 std::array<int8, MAX_UNIT_CONDITION_VALUES> Op;
4445 std::array<int32, MAX_UNIT_CONDITION_VALUES> Value;
4446
4448};
4449
4451{
4467 std::array<int32, 6> FileDataID;
4468 std::array<int32, 6> Color;
4469};
4470
4471#define MAX_VEHICLE_SEATS 8
4472
4474{
4492 std::array<uint16, 8> SeatID;
4493 std::array<uint16, 3> PowerDisplayID;
4494};
4495
4497{
4560
4561 inline bool HasFlag(VehicleSeatFlags flag) const { return !!(Flags & flag); }
4562 inline bool HasFlag(VehicleSeatFlagsB flag) const { return !!(FlagsB & flag); }
4563
4566 inline bool IsUsableByOverride() const {
4570 }
4571 inline bool IsEjectable() const { return HasFlag(VEHICLE_SEAT_FLAG_B_EJECTABLE); }
4572};
4573
4575{
4587
4588 EnumFlag<VignetteFlags> GetFlags() const { return static_cast<VignetteFlags>(Flags); }
4590};
4591
4593{
4596 uint16 WmoID; // used in root WMO
4597 uint8 NameSetID; // used in adt file
4598 int32 WmoGroupID; // used in group WMO
4609};
4610
4612{
4620};
4621
4622#define MAX_WORLD_MAP_OVERLAY_AREA_IDX 4
4623
4625{
4638 std::array<uint32, MAX_WORLD_MAP_OVERLAY_AREA_IDX> AreaID;
4639};
4640
4642{
4644 char const* Expression;
4645};
4646
4647#pragma pack(pop)
4648#endif
#define MAX_FACTION_RELATIONS
MapFlags
Definition: DBCEnums.h:1237
@ DynamicDifficulty
@ FlexibleRaidLocking
CreatureModelDataFlags
Definition: DBCEnums.h:425
ChrSpecializationFlag
Definition: DBCEnums.h:338
SkillLineFlags
Definition: DBCEnums.h:1872
VehicleSeatFlags
Definition: DBCEnums.h:2416
@ VEHICLE_SEAT_FLAG_SHOULD_USE_VEH_SEAT_EXIT_ANIM_ON_VOLUNTARY_EXIT
Definition: DBCEnums.h:2420
@ VEHICLE_SEAT_FLAG_CAN_SWITCH
Definition: DBCEnums.h:2443
@ VEHICLE_SEAT_FLAG_CAN_ENTER_OR_EXIT
Definition: DBCEnums.h:2442
@ VEHICLE_SEAT_FLAG_CAN_CONTROL
Definition: DBCEnums.h:2428
@ VEHICLE_SEAT_FLAG_UNCONTROLLED
Definition: DBCEnums.h:2430
@ VEHICLE_SEAT_FLAG_UNK18
Definition: DBCEnums.h:2434
CurrencyTypesFlags
Definition: DBCEnums.h:808
@ SuppressChatMessageOnVersionChange
@ MAP_DIFFICULTY_RESET_WEEKLY
Definition: DBCEnums.h:1316
@ MAP_DIFFICULTY_RESET_DAILY
Definition: DBCEnums.h:1315
@ MAP_DIFFICULTY_RESET_ANYTIME
Definition: DBCEnums.h:1314
TraitConditionType
Definition: DBCEnums.h:2177
@ MAP_COMMON
Definition: DBCEnums.h:1228
@ MAP_SCENARIO
Definition: DBCEnums.h:1233
@ MAP_BATTLEGROUND
Definition: DBCEnums.h:1231
@ MAP_ARENA
Definition: DBCEnums.h:1232
@ MAP_INSTANCE
Definition: DBCEnums.h:1229
@ MAP_RAID
Definition: DBCEnums.h:1230
SpellEffectAttributes
Definition: DBCEnums.h:1925
AreaMountFlags
Definition: DBCEnums.h:169
SpellShapeshiftFormFlags
Definition: DBCEnums.h:1988
ContentTuningFlag
Definition: DBCEnums.h:408
@ FACTION_MASK_PLAYER
Definition: DBCEnums.h:949
VehicleSeatFlagsB
Definition: DBCEnums.h:2452
@ VEHICLE_SEAT_FLAG_B_EJECTABLE
Definition: DBCEnums.h:2456
@ VEHICLE_SEAT_FLAG_B_USABLE_FORCED
Definition: DBCEnums.h:2454
@ VEHICLE_SEAT_FLAG_B_USABLE_FORCED_3
Definition: DBCEnums.h:2458
@ VEHICLE_SEAT_FLAG_B_USABLE_FORCED_2
Definition: DBCEnums.h:2457
@ VEHICLE_SEAT_FLAG_B_USABLE_FORCED_4
Definition: DBCEnums.h:2461
@ PRESTIGE_FLAG_DISABLED
Definition: DBCEnums.h:1854
TraitNodeEntryType
Definition: DBCEnums.h:2210
CurrencyTypesFlagsB
Definition: DBCEnums.h:846
PowerTypeFlags
Definition: DBCEnums.h:1835
PhaseEntryFlags
Definition: DBCEnums.h:1727
CriteriaFlags
Definition: DBCEnums.h:491
UiMapFlag
Definition: DBCEnums.h:2255
SpellItemEnchantmentFlags
Definition: DBCEnums.h:1959
CfgCategoriesFlags
Definition: DBCEnums.h:267
AreaFlags
Definition: DBCEnums.h:110
TaxiNodeFlags
Definition: DBCEnums.h:2137
TraitTreeFlag
Definition: DBCEnums.h:2246
CfgCategoriesCharsets
Definition: DBCEnums.h:255
UnitConditionFlags
Definition: DBCEnums.h:2298
ChatChannelFlags
Definition: DBCEnums.h:275
TraitPointsOperationType
Definition: DBCEnums.h:2239
@ SCENARIO_STEP_FLAG_BONUS_OBJECTIVE
Definition: DBCEnums.h:1867
TraitNodeType
Definition: DBCEnums.h:2232
ChatChannelRuleset
Definition: DBCEnums.h:294
AreaFlags2
Definition: DBCEnums.h:148
ChrSpecializationRole
Definition: DBCEnums.h:350
BattlegroundBracketId
Definition: DBCEnums.h:59
@ MOUNT_FLAG_SELF_MOUNT
Definition: DBCEnums.h:1719
VignetteFlags
Definition: DBCEnums.h:2467
TraitCurrencyType
Definition: DBCEnums.h:2193
MapFlags2
Definition: DBCEnums.h:1275
ChrCustomizationReqFlag
Definition: DBCEnums.h:793
MapDifficultyFlags
Definition: DBCEnums.h:1302
@ ResumeDungeonProgressBasedOnLockout
@ UseLootBasedLockInsteadOfInstanceLock
TransmogIllusionFlags
Definition: DBCEnums.h:2057
ChrRacesFlag
Definition: DBCEnums.h:307
BattlemasterListFlags
Definition: DBCEnums.h:241
FriendshipReputationFlags
Definition: DBCEnums.h:957
@ FACTION_TEMPLATE_FLAG_CONTESTED_GUARD
Definition: DBCEnums.h:943
SummonPropertiesFlags
Definition: DBCEnums.h:2094
BattlePetSpeciesFlags
Definition: DBCEnums.h:218
SkillLineAbilityFlags
Definition: DBCEnums.h:1901
CriteriaTreeFlags
Definition: DBCEnums.h:755
uint8_t uint8
Definition: Define.h:144
int16_t int16
Definition: Define.h:139
int8_t int8
Definition: Define.h:140
int32_t int32
Definition: Define.h:138
uint64_t uint64
Definition: Define.h:141
uint16_t uint16
Definition: Define.h:143
uint32_t uint32
Definition: Define.h:142
uint16 flags
Definition: DisableMgr.cpp:49
TypeID
Definition: ObjectGuid.h:34
Definition: Corpse.h:53
LocalizedString Description
Definition: DB2Structure.h:30
LocalizedString Title
Definition: DB2Structure.h:31
LocalizedString Reward
Definition: DB2Structure.h:32
LocalizedString Name
Definition: DB2Structure.h:51
LocalizedString Name
Definition: DB2Structure.h:60
LocalizedString Description
Definition: DB2Structure.h:61
LocalizedString RewardDescription
Definition: DB2Structure.h:63
std::array< uint8, 2 > BonusValue
Definition: DB2Structure.h:81
LocalizedString ContinueDescription
Definition: DB2Structure.h:64
LocalizedString ButtonText
Definition: DB2Structure.h:62
std::array< uint32, 2 > BonusPlayerConditionID
Definition: DB2Structure.h:80
uint32 UiTextureAtlasMemberID
Definition: DB2Structure.h:95
DBCPosition2D WorldPosition
Definition: DB2Structure.h:89
LocalizedString Title
Definition: DB2Structure.h:87
LocalizedString Description
Definition: DB2Structure.h:88
uint16 LowDefAnimKitID
Definition: DB2Structure.h:115
uint32 OneShotDuration
Definition: DB2Structure.h:113
uint16 OneShotStopAnimKitID
Definition: DB2Structure.h:114
std::array< int32, 2 > Flags
Definition: DB2Structure.h:107
uint16 ParentAreaID
Definition: DB2Structure.h:131
uint16 ContinentID
Definition: DB2Structure.h:130
float AmbientMultiplier
Definition: DB2Structure.h:142
std::array< int32, 2 > Flags
Definition: DB2Structure.h:149
EnumFlag< AreaMountFlags > GetMountFlags() const
Definition: DB2Structure.h:155
uint8 WildBattlePetLevelMin
Definition: DB2Structure.h:145
int16 PvpCombatWorldStateID
Definition: DB2Structure.h:144
EnumFlag< AreaFlags > GetFlags() const
Definition: DB2Structure.h:153
uint8 WindSettingsID
Definition: DB2Structure.h:147
uint32 UwIntroSound
Definition: DB2Structure.h:140
std::array< uint16, 4 > LiquidTypeID
Definition: DB2Structure.h:150
uint8 SoundProviderPrefUnderwater
Definition: DB2Structure.h:134
uint16 UwZoneMusic
Definition: DB2Structure.h:138
uint8 FactionGroupMask
Definition: DB2Structure.h:141
char const * ZoneName
Definition: DB2Structure.h:128
EnumFlag< AreaFlags2 > GetFlags2() const
Definition: DB2Structure.h:154
int32 ContentTuningID
Definition: DB2Structure.h:148
LocalizedString AreaName
Definition: DB2Structure.h:129
uint8 SoundProviderPref
Definition: DB2Structure.h:133
bool IsSanctuary() const
Definition: DB2Structure.h:157
uint8 WildBattlePetLevelMax
Definition: DB2Structure.h:146
DBCPosition3D Pos
Definition: DB2Structure.h:165
int32 AreaTriggerActionSetID
Definition: DB2Structure.h:178
LocalizedString Name
Definition: DB2Structure.h:209
LocalizedString Description
Definition: DB2Structure.h:230
int32 UiBarOverlayColor
Definition: DB2Structure.h:198
uint32 UiModelSceneID
Definition: DB2Structure.h:203
uint16 ChrSpecializationID
Definition: DB2Structure.h:200
uint16 UiTextureKitID
Definition: DB2Structure.h:196
int32 UiBarBackgroundColor
Definition: DB2Structure.h:199
LocalizedString Name
Definition: DB2Structure.h:194
uint32 SpellVisualKitID
Definition: DB2Structure.h:204
uint8 ArtifactCategoryID
Definition: DB2Structure.h:202
DBCPosition2D DisplayPos
Definition: DB2Structure.h:249
std::array< uint32, 10 > Difficulty
Definition: DB2Structure.h:284
uint32 MaxArtifactKnowledge
Definition: DB2Structure.h:292
uint32 KnowledgePlayerCondition
Definition: DB2Structure.h:293
uint32 MinimumEmpowerKnowledge
Definition: DB2Structure.h:294
LocalizedString Name
Definition: DB2Structure.h:310
LocalizedString Name
Definition: DB2Structure.h:327
LocalizedString Description
Definition: DB2Structure.h:328
LocalizedString SourceHorde
Definition: DB2Structure.h:336
LocalizedString SourceAlliance
Definition: DB2Structure.h:335
uint64 BaseExperienceToNextLevel
Definition: DB2Structure.h:369
uint64 MinimumExperienceToNextLevel
Definition: DB2Structure.h:370
char const * Name
Definition: DB2Structure.h:427
char const * Version
Definition: DB2Structure.h:428
LocalizedString DisplayName
Definition: DB2Structure.h:435
LocalizedString Description
Definition: DB2Structure.h:436
LocalizedString Name
Definition: DB2Structure.h:447
LocalizedString Description
Definition: DB2Structure.h:448
LocalizedString Description
Definition: DB2Structure.h:474
EnumFlag< BattlePetSpeciesFlags > GetFlags() const
Definition: DB2Structure.h:487
LocalizedString SourceText
Definition: DB2Structure.h:475
LocalizedString Name
Definition: DB2Structure.h:501
EnumFlag< BattlemasterListFlags > GetFlags() const
Definition: DB2Structure.h:519
LocalizedString GameType
Definition: DB2Structure.h:502
LocalizedString ShortDescription
Definition: DB2Structure.h:503
std::array< int16, 16 > MapID
Definition: DB2Structure.h:517
LocalizedString LongDescription
Definition: DB2Structure.h:504
LocalizedString Text
Definition: DB2Structure.h:526
std::array< uint32, 2 > SoundKitID
Definition: DB2Structure.h:535
std::array< uint16, MAX_BROADCAST_TEXT_EMOTES > EmoteDelay
Definition: DB2Structure.h:537
LocalizedString Text1
Definition: DB2Structure.h:527
std::array< uint16, MAX_BROADCAST_TEXT_EMOTES > EmoteID
Definition: DB2Structure.h:536
uint32 ChatBubbleDurationMs
Definition: DB2Structure.h:533
EnumFlag< CfgCategoriesCharsets > GetExistingCharsetMask() const
Definition: DB2Structure.h:559
LocalizedString Name
Definition: DB2Structure.h:551
EnumFlag< CfgCategoriesCharsets > GetCreateCharsetMask() const
Definition: DB2Structure.h:558
EnumFlag< CfgCategoriesFlags > GetFlags() const
Definition: DB2Structure.h:560
char const * Tag
Definition: DB2Structure.h:566
uint32 ChallengeOrigin
Definition: DB2Structure.h:570
LocalizedString Name1
Definition: DB2Structure.h:589
LocalizedString Name
Definition: DB2Structure.h:588
Trinity::RaceMask< int64 > RaceMask
Definition: DB2Structure.h:597
bool IsForNewCharacter() const
Definition: DB2Structure.h:602
ChatChannelRuleset GetRuleset() const
Definition: DB2Structure.h:622
LocalizedString Name
Definition: DB2Structure.h:615
EnumFlag< ChatChannelFlags > GetFlags() const
Definition: DB2Structure.h:621
LocalizedString Shortcut
Definition: DB2Structure.h:616
char const * Filename
Definition: DB2Structure.h:636
int32 CharStartKitUnknown901
Definition: DB2Structure.h:653
int32 FemaleCharacterCreationIdleVisualFallback
Definition: DB2Structure.h:657
uint32 SelectScreenFileDataID
Definition: DB2Structure.h:647
LocalizedString NameMale
Definition: DB2Structure.h:637
uint32 ArmorTypeMask
Definition: DB2Structure.h:652
int32 MaleCharacterCreationVisualFallback
Definition: DB2Structure.h:654
uint8 AttackPowerPerAgility
Definition: DB2Structure.h:667
LocalizedString HyphenatedNameFemale
Definition: DB2Structure.h:644
uint32 SpellTextureBlobFileDataID
Definition: DB2Structure.h:651
int32 CharacterCreationGroundVisualFallback
Definition: DB2Structure.h:659
uint32 LowResScreenFileDataID
Definition: DB2Structure.h:649
uint32 CreateScreenFileDataID
Definition: DB2Structure.h:646
int32 MaleCharacterCreationIdleVisualFallback
Definition: DB2Structure.h:655
char const * PetNameToken
Definition: DB2Structure.h:639
uint32 IconFileDataID
Definition: DB2Structure.h:648
LocalizedString RoleInfoString
Definition: DB2Structure.h:641
LocalizedString Name
Definition: DB2Structure.h:635
LocalizedString NameFemale
Definition: DB2Structure.h:638
int32 AlteredFormCharacterCreationIdleVisualFallback
Definition: DB2Structure.h:660
uint8 RangedAttackPowerPerAgility
Definition: DB2Structure.h:666
int32 FemaleCharacterCreationVisualFallback
Definition: DB2Structure.h:656
LocalizedString Description
Definition: DB2Structure.h:640
LocalizedString HyphenatedNameMale
Definition: DB2Structure.h:643
uint16 CinematicSequenceID
Definition: DB2Structure.h:662
uint8 PrimaryStatPriority
Definition: DB2Structure.h:664
uint8 AttackPowerPerStrength
Definition: DB2Structure.h:668
int32 CharacterCreationIdleGroundVisualFallback
Definition: DB2Structure.h:658
LocalizedString DisabledString
Definition: DB2Structure.h:642
int32 CharacterCreationAnimLoopWaitTimeMsFallback
Definition: DB2Structure.h:661
std::array< int32, 2 > SwatchColor
Definition: DB2Structure.h:695
LocalizedString ReqSource
Definition: DB2Structure.h:747
Trinity::RaceMask< int64 > RaceMask
Definition: DB2Structure.h:746
EnumFlag< ChrCustomizationReqFlag > GetFlags() const
Definition: DB2Structure.h:755
int32 TextureFallbackChrModelID
Definition: DB2Structure.h:776
float CameraDistanceOffset
Definition: DB2Structure.h:780
int32 SkeletonFileDataID
Definition: DB2Structure.h:774
float CustomizeFacing
Definition: DB2Structure.h:779
int32 ModelFallbackChrModelID
Definition: DB2Structure.h:775
std::array< float, 3 > FaceCustomizationOffset
Definition: DB2Structure.h:767
float BarberShopCameraOffsetScale
Definition: DB2Structure.h:781
std::array< float, 3 > CustomizeOffset
Definition: DB2Structure.h:768
float BarberShopCameraHeightOffsetScale
Definition: DB2Structure.h:782
int32 HelmVisFallbackChrModelID
Definition: DB2Structure.h:777
float CustomizeScale
Definition: DB2Structure.h:778
int32 CharComponentTextureLayoutID
Definition: DB2Structure.h:772
float BarberShopCameraRotationOffset
Definition: DB2Structure.h:783
int32 TransmogrifyDisabledSlotMask
Definition: DB2Structure.h:837
LocalizedString NameFemale
Definition: DB2Structure.h:801
int32 UnalteredVisualRaceID
Definition: DB2Structure.h:820
int32 StartingLevel
Definition: DB2Structure.h:829
char const * ClientPrefix
Definition: DB2Structure.h:798
int32 HelmetAnimScalingRaceID
Definition: DB2Structure.h:836
int32 UiDisplayOrder
Definition: DB2Structure.h:830
int32 MaleModelFallbackRaceID
Definition: DB2Structure.h:831
LocalizedString LoreDescription
Definition: DB2Structure.h:808
LocalizedString ShortNameLower
Definition: DB2Structure.h:811
int32 FemaleModelFallbackRaceID
Definition: DB2Structure.h:832
int32 SelectScreenFileDataID
Definition: DB2Structure.h:823
int32 NeutralRaceID
Definition: DB2Structure.h:824
int8 FemaleTextureFallbackSex
Definition: DB2Structure.h:849
int32 FemaleTextureFallbackRaceID
Definition: DB2Structure.h:834
LocalizedString NameLowercase
Definition: DB2Structure.h:802
char const * ClientFileString
Definition: DB2Structure.h:799
LocalizedString LoreNameLower
Definition: DB2Structure.h:806
int8 MaleTextureFallbackSex
Definition: DB2Structure.h:848
LocalizedString LoreName
Definition: DB2Structure.h:804
int32 UnalteredVisualCustomizationRaceID
Definition: DB2Structure.h:838
int32 CinematicSequenceID
Definition: DB2Structure.h:815
int32 MaleTextureFallbackRaceID
Definition: DB2Structure.h:833
LocalizedString NameFemaleLowercase
Definition: DB2Structure.h:803
int32 ResSicknessSpellID
Definition: DB2Structure.h:816
int32 SplashSoundID
Definition: DB2Structure.h:817
int32 LowResScreenFileDataID
Definition: DB2Structure.h:825
int32 DefaultClassID
Definition: DB2Structure.h:821
LocalizedString LoreNameLowerFemale
Definition: DB2Structure.h:807
int8 FemaleModelFallbackSex
Definition: DB2Structure.h:847
int8 MaleModelFallbackSex
Definition: DB2Structure.h:846
std::array< float, 3 > Unknown910_2
Definition: DB2Structure.h:842
LocalizedString ShortName
Definition: DB2Structure.h:809
std::array< int32, 3 > AlteredFormStartVisualKitID
Definition: DB2Structure.h:826
float AlteredFormCustomizeRotationFallback
Definition: DB2Structure.h:840
int32 HeritageArmorAchievementID
Definition: DB2Structure.h:828
std::array< float, 3 > AlteredFormCustomizeOffsetFallback
Definition: DB2Structure.h:839
LocalizedString Name
Definition: DB2Structure.h:800
std::array< int32, 3 > AlteredFormFinishVisualKitID
Definition: DB2Structure.h:827
LocalizedString LoreNameFemale
Definition: DB2Structure.h:805
int32 PlayableRaceBit
Definition: DB2Structure.h:835
int32 CreateScreenFileDataID
Definition: DB2Structure.h:822
EnumFlag< ChrRacesFlag > GetFlags() const
Definition: DB2Structure.h:851
std::array< float, 3 > Unknown910_1
Definition: DB2Structure.h:841
LocalizedString ShortNameFemale
Definition: DB2Structure.h:810
LocalizedString ShortNameLowerFemale
Definition: DB2Structure.h:812
EnumFlag< ChrSpecializationFlag > GetFlags() const
Definition: DB2Structure.h:872
ChrSpecializationRole GetRole() const
Definition: DB2Structure.h:873
LocalizedString Description
Definition: DB2Structure.h:860
LocalizedString Name
Definition: DB2Structure.h:858
bool IsPetSpecialization() const
Definition: DB2Structure.h:875
LocalizedString FemaleName
Definition: DB2Structure.h:859
std::array< int32, MAX_MASTERY_SPELLS > MasterySpellID
Definition: DB2Structure.h:870
DBCPosition3D Origin
Definition: DB2Structure.h:884
std::array< uint16, 8 > Camera
Definition: DB2Structure.h:895
int32 GetScalingFactionGroup() const
Definition: DB2Structure.h:935
EnumFlag< ContentTuningFlag > GetFlags() const
Definition: DB2Structure.h:933
std::array< int32, 4 > TextureVariationFileDataID
std::array< int16, 2 > SkillLine
LocalizedString Name
std::array< float, 6 > GeoBox
EnumFlag< CreatureModelDataFlags > GetFlags() const
std::array< float, 2 > Unknown820_3
LocalizedString Name
uint32 ModifierTreeId
int16 EligibilityWorldStateID
EnumFlag< CriteriaFlags > GetFlags() const
union CriteriaEntry::AssetNameAlias Asset
int8 EligibilityWorldStateValue
EnumFlag< CriteriaTreeFlags > GetFlags() const
LocalizedString Description
LocalizedString ContainerName
LocalizedString ContainerDescription
bool IsSuppressingChatLog(bool onUpdateVersion=false) const
bool HasTotalEarned() const
bool IsHorde() const
bool HasMaxEarnablePerWeek() const
int32 GetScaler() const
LocalizedString Description
bool HasMaxQuantity(bool onLoad=false, bool onUpdateVersion=false) const
LocalizedString Name
EnumFlag< CurrencyTypesFlags > GetFlags() const
EnumFlag< CurrencyTypesFlagsB > GetFlagsB() const
uint32 RechargingCycleDurationMS
bool IsTrackingQuantity() const
std::array< int32, 2 > Flags
bool IsAlliance() const
uint32 RechargingAmountPerCycle
DBCPosition2D Pos
DBCPosition2D PreSLSquishPos
uint32 GroupSizeHealthCurveID
uint8 FallbackDifficultyID
uint32 GroupSizeDmgCurveID
uint32 GroupSizeSpellPointsCurveID
uint8 ToggleDifficultyID
LocalizedString Name
LocalizedString Name
std::array< uint16, 8 > ArmorSubClassCost
std::array< uint16, 21 > WeaponSubClassCost
uint8 EmoteSpecProc
char const * EmoteSlashCommand
uint32 SpellVisualKitID
Trinity::RaceMask< int64 > RaceMask
uint32 EmoteFlags
uint32 EventSoundID
uint32 EmoteSpecProcParam
char const * Name
std::array< int32, 4 > ReputationBase
std::array< int32, 4 > ReputationMax
LocalizedString Description
uint16 ParagonFactionID
std::array< uint8, 2 > ParentFactionCap
uint32 FriendshipRepID
uint16 ParentFactionID
std::array< int16, 4 > ReputationClassMask
LocalizedString Name
int32 RenownFactionID
bool CanHaveReputation() const
std::array< float, 2 > ParentFactionMod
std::array< uint16, 4 > ReputationFlags
int32 RenownCurrencyID
int16 ReputationIndex
std::array< Trinity::RaceMask< int64 >, 4 > ReputationRaceMask
std::array< uint16, MAX_FACTION_RELATIONS > Friend
bool IsHostileToPlayers() const
bool IsContestedGuardFaction() const
bool IsNeutralToAll() const
bool IsFriendlyTo(FactionTemplateEntry const *entry) const
bool IsHostileTo(FactionTemplateEntry const *entry) const
std::array< uint16, MAX_FACTION_RELATIONS > Enemies
EnumFlag< FriendshipReputationFlags > GetFlags() const
LocalizedString StandingModified
LocalizedString StandingChanged
LocalizedString Description
std::array< int32, 3 > TextureVariationFileID
LocalizedString Name
std::array< float, 4 > Rot
std::array< int32, 8 > PropValue
DBCPosition3D Pos
LocalizedString Name
uint8 GarrAbilityCategoryID
uint16 FactionChangeGarrAbilityID
LocalizedString Description
LocalizedString Description
uint16 HordeSceneScriptPackageID
LocalizedString AllianceName
LocalizedString HordeName
uint16 AllianceSceneScriptPackageID
uint16 AllianceUiTextureKitID
uint16 HordeUiTextureKitID
LocalizedString Tooltip
LocalizedString ClassSpec
uint16 UiTextureAtlasMemberID
LocalizedString ClassSpecFemale
LocalizedString ClassSpecMale
int32 AllianceGarrClassSpecID
uint16 HordeGarrFollItemSetID
uint8 HordeFlavorGarrStringID
uint32 HordeSlottingBroadcastTextID
uint16 AllianceUITextureKitID
uint32 AllySlottingBroadcastTextID
LocalizedString HordeSourceText
uint16 HordeUITextureKitID
int32 AllianceIconFileDataID
uint16 AllianceGarrFollItemSetID
uint8 AllianceGarrFollRaceID
LocalizedString TitleName
uint8 AllianceFlavorGarrStringID
LocalizedString AllianceSourceText
uint16 MissionCostCurrencyTypesID
uint8 OfferedGarrMissionTextureID
int32 AutoMissionScalarCurveID
LocalizedString Location
DBCPosition2D MapPos
LocalizedString Description
int32 AutoCombatantEnvCasterID
LocalizedString Name
uint32 PlayerConditionID
uint8 BaseCompletionChance
uint32 OvermaxRewardPackID
int32 EnvGarrMechanicTypeID
uint32 EnvGarrMechanicID
DBCPosition2D WorldPos
int32 HordeConstructObjID
std::array< uint32, 2 > UpgradeRequirement
char const * Name
int32 AllianceConstructObjID
DBCPosition2D TownHallUiPos
LocalizedString Name
std::array< uint16, 6 > UpgradeItemBonusListID
int32 LegacyUpgradedItemID
int32 StaticUpgradedItemID
std::array< int32, 6 > UpgradeItemID
LocalizedString SourceText
std::array< uint8, MAX_HOLIDAY_DURATIONS > CalendarFlags
uint32 HolidayNameID
uint32 HolidayDescriptionID
int8 CalendarFilterType
std::array< int32, 3 > TextureFileDataID
std::array< uint32, MAX_HOLIDAY_DATES > Date
std::array< uint16, MAX_HOLIDAY_DURATIONS > Duration
std::array< float, 7 > Qualitymod
std::array< float, 7 > Quality
LocalizedString Name
uint16 ParentItemBonusListID
std::array< int32, 4 > Value
LocalizedString ClassName
std::array< float, 7 > Quality
std::array< float, 7 > Quality
std::array< float, 7 > Quality
std::array< float, 7 > Quality
std::array< float, 7 > Quality
uint16 ChrSpecializationID
uint16 SpellCategoryID
int32 CategoryCoolDownMSec
uint8 ItemGroupSoundsID
int8 SoundOverrideSubclassID
int32 CraftingQualityID
uint8 SheatheType
int32 ModifiedCraftingReagentItemID
int32 ContentTuningID
uint8 SubclassID
uint8 Material
uint8 ClassID
int32 IconFileDataID
int8 InventoryType
std::array< uint32, MAX_ITEM_EXT_COST_CURRENCIES > CurrencyCount
std::array< int32, MAX_ITEM_EXT_COST_ITEMS > ItemID
std::array< uint16, MAX_ITEM_EXT_COST_ITEMS > ItemCount
std::array< uint16, MAX_ITEM_EXT_COST_CURRENCIES > CurrencyID
uint16 ItemLevelSelectorQualitySetID
LocalizedString Name
LocalizedString Description
LocalizedString Display
std::array< int32, 4 > Flags
Trinity::RaceMask< int64 > AllowableRace
uint16 RequiredSkillRank
uint32 RequiredSkill
LocalizedString Name
std::array< uint32, MAX_ITEM_SET_ITEMS > ItemID
uint32 VendorStackCount
uint32 DurationInInventory
uint16 RequiredSkillRank
uint16 SocketMatchEnchantmentId
std::array< int32, MAX_ITEM_PROTO_FLAGS > Flags
std::array< int32, MAX_ITEM_PROTO_STATS > StatPercentEditor
std::array< uint16, MAX_ITEM_PROTO_ZONES > ZoneBound
int32 PlayerLevelToItemLevelCurveID
uint8 SpellWeightCategory
Trinity::RaceMask< int64 > AllowableRace
uint16 RequiredHoliday
int32 ModifiedCraftingReagentItemID
uint32 RequiredAbility
uint16 TotemCategoryID
std::array< float, MAX_ITEM_PROTO_STATS > StatPercentageOfSocket
LocalizedString Display3
LocalizedString Display
std::array< int8, MAX_ITEM_PROTO_STATS > StatModifierBonusStat
LocalizedString Description
uint16 ItemNameDescriptionID
LocalizedString Display2
uint16 RequiredTransmogHoliday
LocalizedString Display1
std::array< uint8, MAX_ITEM_PROTO_SOCKETS > SocketType
uint16 SpecializationID
LocalizedString Name
LocalizedString Description
LocalizedString Name
LocalizedString Description
LocalizedString Name
std::array< uint8, KEYCHAIN_SIZE > Key
LocalizedString Name
LocalizedString Description
int32 RewardsBgTextureFileID
std::array< int32, 2 > Flags
uint32 RequiredPlayerConditionId
int32 PopupBgTextureFileID
uint32 Entry() const
LocalizedString Description
LocalizedString Name
uint16 BonusReputationAmount
char const * Word
LocalizedString Name
int32 UiTextureKitElementCount
DBCPosition3D GameCoords
float GameFalloffEnd
int16 ContinentID
float GameFalloffStart
std::array< uint16, 8 > LightParamsID
std::array< uint8, 6 > FrameCountTexture
float DirDarkenIntensity
char const * Name
float AmbDarkenIntensity
std::array< float, 4 > Coefficient
float FogDarkenIntensity
std::array< char const *, 6 > Texture
std::array< uint32, 4 > Int
std::array< float, 18 > Float
std::array< int32, 2 > Color
std::array< uint8, MAX_LOCK_CASE > Type
std::array< uint16, MAX_LOCK_CASE > Skill
std::array< uint8, MAX_LOCK_CASE > Action
std::array< int32, MAX_LOCK_CASE > Index
LocalizedString Body
LocalizedString Name
std::array< int16, 3 > CriteriaCount
uint32 GetRaidDuration() const
bool IsExtendable() const
LocalizedString Message
bool IsUsingEncounterLocks() const
EnumFlag< MapDifficultyFlags > GetFlags() const
bool IsRestoringDungeonState() const
bool HasResetSchedule() const
LocalizedString FailureDescription
DBCPosition2D Corpse
LocalizedString MapDescription1
int32 WdtFileDataID
bool IsBattleground() const
bool IsScenario() const
bool GetEntrancePos(int32 &mapid, float &x, float &y) const
uint8 MapType
bool IsNonRaidDungeon() const
int16 TimeOfDayOverride
int16 CosmeticParentMapID
int16 LoadingScreenID
EnumFlag< MapFlags > GetFlags() const
int16 WindSettingsID
bool IsSplitByFaction() const
bool IsContinent() const
char const * Directory
float MinimapIconScale
bool IsFlexLocking() const
bool IsWorldMap() const
LocalizedString PvpLongDescription
std::array< int32, 3 > Flags
uint16 AreaTableID
uint8 TimeOffset
bool IsBattlegroundOrArena() const
EnumFlag< MapFlags2 > GetFlags2() const
LocalizedString MapName
int16 CorpseMapID
int8 InstanceType
int32 NavigationMaxDistance
bool IsGarrison() const
uint8 ExpansionID
uint8 Expansion() const
int16 ParentMapID
uint32 ID
bool IsDungeon() const
int32 ZmpFileDataID
bool IsRaid() const
bool IsBattleArena() const
bool IsDynamicDifficultyMap() const
LocalizedString MapDescription0
bool Instanceable() const
LocalizedString PvpShortDescription
uint8 MaxPlayers
int32 MawPowerRarityID
uint32 PlayerConditionID
int32 MountSpecialSpellVisualKitID
LocalizedString Description
bool IsSelfMount() const
int32 UiModelSceneID
int32 MountSpecialRiderAnimKitID
LocalizedString Name
int32 SourceSpellID
uint16 MountTypeID
float MountFlyRideHeight
LocalizedString SourceText
int8 SourceTypeEnum
uint32 AudioFileDataID
uint32 SubtitleFileFormat
uint32 SubtitleFileDataID
char const * Name
char const * Name
std::array< int32, MAX_OVERRIDE_SPELL > Spells
BattlegroundBracketId GetBracketId() const
uint8 ItemLevelDelta
LocalizedString Description
EnumFlag< PhaseEntryFlags > GetFlags() const
std::array< int32, 4 > AuraSpellID
std::array< int32, 4 > TraitNodeEntryID
std::array< uint32, 4 > ItemCount
std::array< uint32, 2 > Time
std::array< uint32, 4 > LfgValue
std::array< uint8, 4 > LfgCompare
std::array< uint16, 4 > MaxSkill
std::array< uint16, 4 > TraitNodeEntryMaxRank
std::array< uint16, 4 > Achievement
uint32 CurrentCompletedQuestLogic
std::array< int32, 4 > CurrentCompletedQuestID
std::array< uint8, 4 > LfgStatus
std::array< int32, 4 > PrevQuestID
std::array< int32, 4 > CurrQuestID
std::array< uint16, 4 > SkillID
std::array< int32, 2 > MovementFlags
std::array< uint16, 2 > Explored
std::array< uint32, 3 > MinFactionID
LocalizedString FailureDescription
std::array< uint32, 4 > CurrencyCount
std::array< uint8, 4 > AuraStacks
std::array< uint16, 4 > AreaID
std::array< uint32, 6 > QuestKillMonster
std::array< uint16, 4 > MinSkill
std::array< uint8, 3 > MinReputation
std::array< uint16, 4 > TraitNodeEntryMinRank
std::array< int32, 4 > ItemID
Trinity::RaceMask< int64 > RaceMask
std::array< int32, 4 > SpellID
std::array< uint32, 4 > CurrencyID
char const * GlobalStringBaseTag
int32 RegenInterruptTimeMS
EnumFlag< PowerTypeFlags > GetFlags() const
char const * CostGlobalStringTag
char const * NameGlobalStringTag
LocalizedString Name
int32 HordeAchievementID
int32 AllianceAchievementID
int32 ActionBarSpellID
LocalizedString Description
int32 OverridesSpellID
int32 PvpTalentCategoryID
int32 PlayerConditionID
int32 RankIconFileDataID
LocalizedString Name
std::array< int16, 10 > Difficulty
LocalizedString InfoName
std::array< uint32, 10 > Difficulty
LocalizedString SortName
uint16 UniqueBitFlag
int32 UiQuestDetailsTheme
std::array< uint16, 10 > Difficulty
std::array< float, 5 > SuperiorF
std::array< uint32, 5 > Epic
std::array< uint32, 5 > Superior
std::array< float, 5 > GoodF
std::array< uint32, 5 > Good
std::array< float, 5 > EpicF
uint8 ArtifactXPCategoryID
float ArtifactXPMultiplier
uint32 TreasurePickerID
LocalizedString Name
uint16 AreaTableID
uint32 UiTextureKitID
uint32 VisibilityPlayerConditionID
LocalizedString Title
bool IsBonusObjective() const
LocalizedString Description
uint16 NextSceneScriptID
uint16 FirstSceneScriptID
LocalizedString Text
LocalizedString AbilityAllVerb
Trinity::RaceMask< int64 > RaceMask
EnumFlag< SkillLineAbilityFlags > GetFlags() const
LocalizedString AbilityVerb
uint32 ParentSkillLineID
int32 SpellBookSpellID
LocalizedString HordeDisplayName
EnumFlag< SkillLineFlags > GetFlags() const
LocalizedString AlternateVerb
char const * OverrideSourceInfoDisplayName
int32 ExpansionNameSharedStringID
int32 HordeExpansionNameSharedStringID
LocalizedString DisplayName
LocalizedString Description
Trinity::RaceMask< int64 > RaceMask
float VolumeVariationMinus
float VolumeVariationPlus
float DistanceCutoff
float PitchVariationPlus
uint32 SoundKitAdvancedID
uint32 SoundMixGroupID
float PitchVariationMinus
uint16 BusOverwriteID
LocalizedString Description
std::array< int32, 2 > ProcTypeMask
LocalizedString Name
std::array< int32, 2 > EffectMiscValue
float EffectChainAmplitude
float EffectBonusCoefficient
std::array< int16, 2 > ImplicitTarget
float EffectRealPointsPerLevel
std::array< uint32, 2 > EffectRadiusIndex
float GroupSizeBasePointsCoefficient
flag128 EffectSpellClassMask
SpellEffectAttributes GetEffectAttributes() const
float BonusCoefficientFromAP
float EffectPointsPerResource
LocalizedString Name
std::array< int32, MAX_SPELL_AURA_INTERRUPT_FLAGS > AuraInterruptFlags
std::array< int32, MAX_SPELL_AURA_INTERRUPT_FLAGS > ChannelInterruptFlags
std::array< uint8, 5 > Logic
std::array< uint32, 5 > LtOperand
std::array< uint8, 5 > Operator
std::array< uint8, 5 > RtOperand
std::array< uint8, 5 > LtOperandType
std::array< uint8, 5 > RtOperandType
std::array< uint32, MAX_ITEM_ENCHANTMENT_EFFECTS > EffectArg
std::array< int16, MAX_ITEM_ENCHANTMENT_EFFECTS > EffectPointsMin
std::array< uint8, MAX_ITEM_ENCHANTMENT_EFFECTS > Effect
std::array< float, MAX_ITEM_ENCHANTMENT_EFFECTS > EffectScalingPoints
EnumFlag< SpellItemEnchantmentFlags > GetFlags() const
LocalizedString HordeName
std::array< int32, 15 > Attributes
uint16 DurationIndex
int32 ShowFutureSpellPlayerConditionID
uint16 CastingTimeIndex
int32 SpellVisualScript
int32 ActiveIconFileDataID
int32 SpellIconFileDataID
int32 ActiveSpellVisualScript
LocalizedString Name
int32 RequiredAuraSpellID
std::array< float, 2 > RangeMin
LocalizedString DisplayName
std::array< float, 2 > RangeMax
LocalizedString DisplayNameShort
std::array< int16, MAX_SPELL_REAGENTS > ReagentCount
std::array< int16, MAX_SPELL_REAGENTS > ReagentRecraftCount
std::array< int32, MAX_SPELL_REAGENTS > Reagent
std::array< uint8, MAX_SPELL_REAGENTS > ReagentSource
std::array< int32, 2 > ShapeshiftExclude
std::array< int32, 2 > ShapeshiftMask
std::array< uint32, MAX_SHAPESHIFT_SPELLS > PresetSpellID
EnumFlag< SpellShapeshiftFormFlags > GetFlags() const
std::array< int32, MAX_SPELL_TOTEMS > Totem
std::array< uint16, MAX_SPELL_TOTEMS > RequiredTotemCategoryID
uint32 CasterSpellVisualID
uint32 HostileSpellVisualID
uint32 MissileCastPositionerID
int8 MissileDestinationAttachment
uint32 MissileImpactPositionerID
uint32 LowViolenceSpellVisualID
uint16 DamageNumberDelay
std::array< float, 3 > MissileImpactOffset
int32 ReducedUnexpectedCameraMovementSpellVisualID
std::array< float, 3 > MissileCastOffset
uint32 RaidSpellVisualMissileSetID
uint16 SpellVisualMissileSetID
std::array< int32, 2 > Flags
std::array< float, 3 > CastOffset
std::array< float, 3 > ImpactOffset
std::array< int32, 2 > Flags
EnumFlag< SummonPropertiesFlags > GetFlags() const
std::array< uint8, TACTKEY_SIZE > Key
uint32 OverridesSpellID
LocalizedString Description
uint32 SpellID
uint8 ColumnIndex
std::array< uint8, 2 > CategoryMask
EnumFlag< TaxiNodeFlags > GetFlags() const
uint32 SpecialIconConditionID
uint32 VisibilityConditionID
uint16 CharacterBitNumber
DBCPosition2D FlightMapOffset
LocalizedString Name
DBCPosition3D Pos
DBCPosition2D MapOffset
std::array< int32, 2 > MountCreatureID
int32 MinimapAtlasMemberID
bool IsPartOfTaxiNetwork() const
uint16 FromTaxiNode
DBCPosition3D Loc
LocalizedString Name
int8 SourceTypeEnum
uint8 Flags
LocalizedString SourceText
int32 ItemID
uint32 ID
int32 FreeSharedStringID
int32 TraitNodeGroupID
int32 SpendMoreSharedStringID
TraitConditionType GetCondType() const
int32 SpentAmountRequired
char const * InternalName
TraitCurrencyType GetType() const
LocalizedString Requirement
TraitPointsOperationType GetOperationType() const
LocalizedString OverrideDescription
LocalizedString OverrideName
LocalizedString OverrideSubtext
int32 RightTraitNodeID
TraitNodeEntryType GetNodeEntryType() const
TraitNodeType GetType() const
int32 PlayerConditionID
int32 FirstTraitNodeID
EnumFlag< TraitTreeFlag > GetFlags() const
EnumFlag< TransmogIllusionFlags > GetFlags() const
uint16 ParentTransmogSetID
uint32 TransmogSetGroupID
int32 ItemNameDescriptionID
LocalizedString Name
LocalizedString Name
std::array< float, 4 > Rot
LocalizedString TopLeftFeatureDesc
LocalizedString BottomLeftFeatureTitle
LocalizedString BottomLeftFeatureDesc
LocalizedString RightFeatureTitle
LocalizedString RightFeatureDesc
LocalizedString Header
LocalizedString TopLeftFeatureTitle
DBCPosition2D UiMax
std::array< DBCPosition3D, 2 > Region
DBCPosition2D UiMin
int32 ParentUiMapID
int32 VisibilityPlayerConditionID2
int32 BountySetID
int8 HelpTextPosition
int32 VisibilityPlayerConditionID
int32 BkgAtlasID
int32 ContentTuningID
EnumFlag< UiMapFlag > GetFlags() const
uint32 BountyDisplayLocation
int32 AlternateUiMapGroup
LocalizedString Name
int32 OverrideHighlightFileDataID
int32 OverrideHighlightAtlasID
DBCPosition2D UiMax
int32 PlayerConditionID
DBCPosition2D UiMin
EnumFlag< UnitConditionFlags > GetFlags() const
std::array< int32, MAX_UNIT_CONDITION_VALUES > Value
std::array< int8, MAX_UNIT_CONDITION_VALUES > Op
std::array< uint8, MAX_UNIT_CONDITION_VALUES > Variable
LocalizedString OutOfError
std::array< int32, 6 > Color
LocalizedString Name
LocalizedString ToolTip
std::array< int32, 6 > FileDataID
LocalizedString Cost
uint16 VehiclePOITypeID
std::array< uint16, 8 > SeatID
float MouseLookOffsetPitch
float CameraYawOffset
float CameraFadeDistScalarMin
int32 MissileTargetingID
float FacingLimitRight
std::array< uint16, 3 > PowerDisplayID
float CameraFadeDistScalarMax
float CameraPitchOffset
uint16 VehicleUIIndicatorID
float FacingLimitLeft
bool HasFlag(VehicleSeatFlags flag) const
bool IsEjectable() const
bool CanEnterOrExit() const
int16 VehicleExitAnimKitID
float VehicleExitAnimDelay
int16 VehicleRideAnimKitID
float VehicleEnterAnimDelay
DBCPosition3D CameraOffset
bool HasFlag(VehicleSeatFlagsB flag) const
int8 VehicleRideAnimLoopBone
bool IsUsableByOverride() const
bool CanSwitchFromSeat() const
float CameraFacingChaseRate
float CameraExitingDuration
float CameraEnteringDuration
DBCPosition3D AttachmentOffset
int16 VehicleEnterAnimKitID
uint32 PlayerConditionID
uint32 VisibleTrackingQuestID
uint32 QuestFeedbackEffectID
EnumFlag< VignetteFlags > GetFlags() const
LocalizedString Name
bool IsInfiniteAOI() const
LocalizedString AreaName
uint8 SoundProviderPrefUnderwater
uint32 PlayerConditionID
uint32 QuestFeedbackEffectID
uint16 CombatConditionID
std::array< uint32, MAX_WORLD_MAP_OVERLAY_AREA_IDX > AreaID