Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
ObjectMgr.h
Go to the documentation of this file.
1/*
2* This file is part of Project SkyFire https://www.projectskyfire.org.
3* See LICENSE.md file for Copyright information
4*/
5
6#ifndef SF_OBJECTMGR_H
7#define SF_OBJECTMGR_H
8
9#include "Bag.h"
10#include "ConditionMgr.h"
11#include "Containers.h"
12#include "Corpse.h"
13#include "Creature.h"
14#include "DatabaseEnv.h"
15#include "DB2Stores.h"
16#include "DynamicObject.h"
17#include "GameObject.h"
18#include "ItemPrototype.h"
19#include "Log.h"
20#include "Mail.h"
21#include "Map.h"
22#include "NPCHandler.h"
23#include "Object.h"
24#include "ObjectAccessor.h"
25#include "ObjectDefines.h"
26#include "QuestDef.h"
27#include "TemporarySummon.h"
28#include "VehicleDefines.h"
29#include "Platform/Singleton.h"
30#include <functional>
31#include <limits>
32#include <map>
33#include <string>
34
35class Item;
36class PhaseMgr;
38struct PlayerInfo;
39struct PlayerLevelInfo;
40
41// GCC have alternative #pragma pack(N) syntax and old gcc version not support pack(push, N), also any gcc version not support it at some platform
42#if defined(__GNUC__)
43#pragma pack(1)
44#else
45#pragma pack(push, 1)
46#endif
47
49{
50 PageText() : NextPage(0) { }
51 std::string Text;
53};
54
57{
58 TempSummonGroupKey(uint32 summonerEntry, SummonerType summonerType, uint8 group)
59 : _summonerEntry(summonerEntry), _summonerType(summonerType), _summonGroup(group)
60 {
61 }
62
63 bool operator<(TempSummonGroupKey const& rhs) const
64 {
65 // memcmp is only reliable if struct doesn't have any padding (packed)
66 return memcmp(this, &rhs, sizeof(TempSummonGroupKey)) < 0;
67 }
68
69private:
73};
74
75// GCC have alternative #pragma pack() syntax and old gcc version not support pack(pop), also any gcc version not support it at some platform
76#if defined(__GNUC__)
77#pragma pack()
78#else
79#pragma pack(pop)
80#endif
81
82// DB scripting commands
84{
85 SCRIPT_COMMAND_TALK = 0, // source/target = Creature, target = any, datalong = talk type (0=say, 1=whisper, 2=yell, 3=emote text, 4=boss emote text), datalong2 & 1 = player talk (instead of creature), dataint = string_id
86 SCRIPT_COMMAND_EMOTE = 1, // source/target = Creature, datalong = emote id, datalong2 = 0: set emote state; > 0: play emote state
87 SCRIPT_COMMAND_FIELD_SET = 2, // source/target = Creature, datalong = field id, datalog2 = value
88 SCRIPT_COMMAND_MOVE_TO = 3, // source/target = Creature, datalong2 = time to reach, x/y/z = destination
89 SCRIPT_COMMAND_FLAG_SET = 4, // source/target = Creature, datalong = field id, datalog2 = bitmask
90 SCRIPT_COMMAND_FLAG_REMOVE = 5, // source/target = Creature, datalong = field id, datalog2 = bitmask
91 SCRIPT_COMMAND_TELEPORT_TO = 6, // source/target = Creature/Player (see datalong2), datalong = map_id, datalong2 = 0: Player; 1: Creature, x/y/z = destination, o = orientation
92 SCRIPT_COMMAND_QUEST_EXPLORED = 7, // target/source = Player, target/source = GO/Creature, datalong = quest id, datalong2 = distance or 0
93 SCRIPT_COMMAND_KILL_CREDIT = 8, // target/source = Player, datalong = creature entry, datalong2 = 0: personal credit, 1: group credit
94 SCRIPT_COMMAND_RESPAWN_GAMEOBJECT = 9, // source = WorldObject (summoner), datalong = GO guid, datalong2 = despawn delay
95 SCRIPT_COMMAND_TEMP_SUMMON_CREATURE = 10, // source = WorldObject (summoner), datalong = creature entry, datalong2 = despawn delay, x/y/z = summon position, o = orientation
96 SCRIPT_COMMAND_OPEN_DOOR = 11, // source = Unit, datalong = GO guid, datalong2 = reset delay (min 15)
97 SCRIPT_COMMAND_CLOSE_DOOR = 12, // source = Unit, datalong = GO guid, datalong2 = reset delay (min 15)
98 SCRIPT_COMMAND_ACTIVATE_OBJECT = 13, // source = Unit, target = GO
99 SCRIPT_COMMAND_REMOVE_AURA = 14, // source (datalong2 != 0) or target (datalong2 == 0) = Unit, datalong = spell id
100 SCRIPT_COMMAND_CAST_SPELL = 15, // source and/or target = Unit, datalong2 = cast direction (0: s->t 1: s->s 2: t->t 3: t->s 4: s->creature with dataint entry), dataint & 1 = triggered flag
101 SCRIPT_COMMAND_PLAY_SOUND = 16, // source = WorldObject, target = none/Player, datalong = sound id, datalong2 (bitmask: 0/1=anyone/player, 0/2=without/with distance dependency, so 1|2 = 3 is target with distance dependency)
102 SCRIPT_COMMAND_CREATE_ITEM = 17, // target/source = Player, datalong = item entry, datalong2 = amount
103 SCRIPT_COMMAND_DESPAWN_SELF = 18, // target/source = Creature, datalong = despawn delay
104
105 SCRIPT_COMMAND_LOAD_PATH = 20, // source = Unit, datalong = path id, datalong2 = is repeatable
106 SCRIPT_COMMAND_CALLSCRIPT_TO_UNIT = 21, // source = WorldObject (if present used as a search center), datalong = script id, datalong2 = unit lowguid, dataint = script table to use (see ScriptsType)
107 SCRIPT_COMMAND_KILL = 22, // source/target = Creature, dataint = remove corpse attribute
108
109 // Skyfire only
110 SCRIPT_COMMAND_ORIENTATION = 30, // source = Unit, target (datalong > 0) = Unit, datalong = > 0 turn source to face target, o = orientation
111 SCRIPT_COMMAND_EQUIP = 31, // soucre = Creature, datalong = equipment id
112 SCRIPT_COMMAND_MODEL = 32, // source = Creature, datalong = model id
113 SCRIPT_COMMAND_CLOSE_GOSSIP = 33, // source = Player
114 SCRIPT_COMMAND_PLAYMOVIE = 34 // source = Player, datalong = movie id
115};
116
117// Benchmarked: Faster than UNORDERED_MAP (insert/find)
118typedef std::map<uint32, PageText> PageTextContainer;
119
120// Benchmarked: Faster than std::map (insert/find)
122
124{
125 GameTele() : position_x(0.0f), position_y(0.0f), position_z(0.0f), orientation(0.0f), mapId(0) { }
131 std::string name;
132 std::wstring wnameLow;
133};
134
136
138{
141 float X = 0.0f;
142 float Y = 0.0f;
143 float Z = 0.0f;
144 float Radius = 0.0f;
145 float BoxX = 0.0f;
146 float BoxY = 0.0f;
147 float BoxZ = 0.0f;
148 float BoxOrientation = 0.0f;
149};
150
157
159{
160 // Talk Flags
162
163 // Emote flags
165
166 // TeleportTo flags
168
169 // KillCredit flags
171
172 // RemoveAura flags
174
175 // CastSpell flags
182
183 // PlaySound flags
186
187 // Orientation flags
189};
190
192{
197
198 union
199 {
200 struct
201 {
203 float fData[4];
205
206 struct // SCRIPT_COMMAND_TALK (0)
207 {
208 uint32 ChatType; // datalong
209 uint32 Flags; // datalong2
210 int32 TextID; // dataint
212
213 struct // SCRIPT_COMMAND_EMOTE (1)
214 {
215 uint32 EmoteID; // datalong
216 uint32 Flags; // datalong2
218
219 struct // SCRIPT_COMMAND_FIELD_SET (2)
220 {
221 uint32 FieldID; // datalong
222 uint32 FieldValue; // datalong2
224
225 struct // SCRIPT_COMMAND_MOVE_TO (3)
226 {
227 uint32 Unused1; // datalong
228 uint32 TravelTime; // datalong2
229 int32 Unused2; // dataint
230
231 float DestX;
232 float DestY;
233 float DestZ;
235
236 struct // SCRIPT_COMMAND_FLAG_SET (4)
237 // SCRIPT_COMMAND_FLAG_REMOVE (5)
238 {
239 uint32 FieldID; // datalong
240 uint32 FieldValue; // datalong2
242
243 struct // SCRIPT_COMMAND_TELEPORT_TO (6)
244 {
245 uint32 MapID; // datalong
246 uint32 Flags; // datalong2
247 int32 Unused1; // dataint
248
249 float DestX;
250 float DestY;
251 float DestZ;
254
255 struct // SCRIPT_COMMAND_QUEST_EXPLORED (7)
256 {
257 uint32 QuestID; // datalong
258 uint32 Distance; // datalong2
260
261 struct // SCRIPT_COMMAND_KILL_CREDIT (8)
262 {
264 uint32 Flags; // datalong2
266
267 struct // SCRIPT_COMMAND_RESPAWN_GAMEOBJECT (9)
268 {
269 uint32 GOGuid; // datalong
270 uint32 DespawnDelay; // datalong2
272
273 struct // SCRIPT_COMMAND_TEMP_SUMMON_CREATURE (10)
274 {
275 uint32 CreatureEntry; // datalong
276 uint32 DespawnDelay; // datalong2
277 int32 Unused1; // dataint
278
279 float PosX;
280 float PosY;
281 float PosZ;
282 float Orientation;
284
285 struct // SCRIPT_COMMAND_CLOSE_DOOR (12)
286 // SCRIPT_COMMAND_OPEN_DOOR (11)
287 {
288 uint32 GOGuid; // datalong
289 uint32 ResetDelay; // datalong2
291
292 // SCRIPT_COMMAND_ACTIVATE_OBJECT (13)
293
294 struct // SCRIPT_COMMAND_REMOVE_AURA (14)
295 {
296 uint32 SpellID; // datalong
297 uint32 Flags; // datalong2
299
300 struct // SCRIPT_COMMAND_CAST_SPELL (15)
301 {
302 uint32 SpellID; // datalong
303 uint32 Flags; // datalong2
305
308
309 struct // SCRIPT_COMMAND_PLAY_SOUND (16)
310 {
311 uint32 SoundID; // datalong
312 uint32 Flags; // datalong2
314
315 struct // SCRIPT_COMMAND_CREATE_ITEM (17)
316 {
317 uint32 ItemEntry; // datalong
318 uint32 Amount; // datalong2
320
321 struct // SCRIPT_COMMAND_DESPAWN_SELF (18)
322 {
323 uint32 DespawnDelay; // datalong
325
326 struct // SCRIPT_COMMAND_LOAD_PATH (20)
327 {
328 uint32 PathID; // datalong
329 uint32 IsRepeatable; // datalong2
331
332 struct // SCRIPT_COMMAND_CALLSCRIPT_TO_UNIT (21)
333 {
334 uint32 CreatureEntry; // datalong
335 uint32 ScriptID; // datalong2
336 uint32 ScriptType; // dataint
338
339 struct // SCRIPT_COMMAND_KILL (22)
340 {
341 uint32 Unused1; // datalong
342 uint32 Unused2; // datalong2
343 int32 RemoveCorpse; // dataint
345
346 struct // SCRIPT_COMMAND_ORIENTATION (30)
347 {
348 uint32 Flags; // datalong
349 uint32 Unused1; // datalong2
350 int32 Unused2; // dataint
351
352 float Unused3;
353 float Unused4;
354 float Unused5;
355 float Orientation;
357
358 struct // SCRIPT_COMMAND_EQUIP (31)
359 {
360 uint32 EquipmentID; // datalong
362
363 struct // SCRIPT_COMMAND_MODEL (32)
364 {
365 uint32 ModelID; // datalong
367
368 // SCRIPT_COMMAND_CLOSE_GOSSIP (33)
369
370 struct // SCRIPT_COMMAND_PLAYMOVIE (34)
371 {
372 uint32 MovieID; // datalong
374 };
375
376 std::string GetDebugInfo() const;
377};
378
379typedef std::multimap<uint32, ScriptInfo> ScriptMap;
380typedef std::map<uint32, ScriptMap > ScriptMapMap;
381typedef std::multimap<uint32, uint32> SpellScriptsContainer;
382typedef std::pair<SpellScriptsContainer::iterator, SpellScriptsContainer::iterator> SpellScriptsBounds;
386
387std::string GetScriptsTableNameByType(ScriptsType type);
389std::string GetScriptCommandName(ScriptCommands command);
390
392{
396
397 // helpers
398 bool IsFitToRequirements(Unit const* clicker, Unit const* clickee) const;
399};
400
401typedef std::multimap<uint32, SpellClickInfo> SpellClickInfoContainer;
402typedef std::pair<SpellClickInfoContainer::const_iterator, SpellClickInfoContainer::const_iterator> SpellClickInfoMapBounds;
403
412
413typedef std::set<uint32> CellGuidSet;
414typedef std::map<uint32/*player guid*/, uint32/*instance*/> CellCorpseSet;
422typedef UNORDERED_MAP<uint32/*(mapid, spawnMode) pair*/, CellObjectGuidsMap> MapObjectGuids;
423
424// Skyfire string ranges
425#define MIN_SKYFIRE_STRING_ID 1 // 'skyfire_string'
426#define MAX_SKYFIRE_STRING_ID 2000000000
427#define MIN_DB_SCRIPT_STRING_ID MAX_SKYFIRE_STRING_ID // 'db_script_string'
428#define MAX_DB_SCRIPT_STRING_ID 2000010000
429#define MIN_CREATURE_AI_TEXT_STRING_ID (-1) // 'creature_ai_texts'
430#define MAX_CREATURE_AI_TEXT_STRING_ID (-1000000)
431
432// Skyfire Trainer Reference start range
433#define SKYFIRE_TRAINER_START_REF 200000
434
439
440typedef std::map<uint64, uint64> LinkedRespawnContainer;
443typedef std::map<TempSummonGroupKey, std::vector<TempSummonData> > TempSummonDataContainer;
454
455typedef std::multimap<uint32, uint32> QuestRelations; // unit/go -> quest
456typedef std::multimap<uint32, uint32> QuestRelationsReverse; // quest -> unit/go
457typedef std::pair<QuestRelations::const_iterator, QuestRelations::const_iterator> QuestRelationBounds;
458typedef std::pair<QuestRelationsReverse::const_iterator, QuestRelationsReverse::const_iterator> QuestRelationReverseBounds;
459
461{
462 PetLevelInfo() : health(0), mana(0), armor(0) { for (uint8 i = 0; i < MAX_STATS; ++i) stats[i] = 0; }
463
468};
469
471{
473 MailLevelReward(uint32 _raceMask, uint32 _mailTemplateId, uint32 _senderEntry) : raceMask(_raceMask), mailTemplateId(_mailTemplateId), senderEntry(_senderEntry) { }
474
478};
479
480typedef std::list<MailLevelReward> MailLevelRewardList;
482
483// We assume the rate is in general the same for all three types below, but chose to keep three for scalability and customization
485{
486 float questRate; // We allow rate = 0.0 in database. For this case, it means that
491 float creatureRate; // no reputation are given at all for this faction/rate type.
493};
494
507
514
525
543
550
551typedef std::multimap<uint32, GossipMenus> GossipMenusContainer;
552typedef std::pair<GossipMenusContainer::const_iterator, GossipMenusContainer::const_iterator> GossipMenusMapBounds;
553typedef std::pair<GossipMenusContainer::iterator, GossipMenusContainer::iterator> GossipMenusMapBoundsNonConst;
554typedef std::multimap<uint32, GossipMenuItems> GossipMenuItemsContainer;
555typedef std::pair<GossipMenuItemsContainer::const_iterator, GossipMenuItemsContainer::const_iterator> GossipMenuItemsMapBounds;
556typedef std::pair<GossipMenuItemsContainer::iterator, GossipMenuItemsContainer::iterator> GossipMenuItemsMapBoundsNonConst;
557
559{
562
563 QuestPOIPoint() : x(0), y(0) { }
564 QuestPOIPoint(int32 _x, int32 _y) : x(_x), y(_y) { }
565};
566
568{
576 std::vector<QuestPOIPoint> points;
577
578 QuestPOI() : Id(0), ObjectiveIndex(0), MapId(0), AreaId(0), FloorId(0), Unk3(0), Unk4(0) { }
579 QuestPOI(uint32 id, int32 objIndex, uint32 mapId, uint32 areaId, uint32 floorId, uint32 unk3, uint32 unk4) : Id(id), ObjectiveIndex(objIndex), MapId(mapId), AreaId(areaId), FloorId(floorId), Unk3(unk3), Unk4(unk4) { }
580};
581
582typedef std::vector<QuestPOI> QuestPOIVector;
584
592
594
600
601typedef std::multimap<uint32, GraveYardData> GraveYardContainer;
602typedef UNORDERED_MAP<uint32 /* graveyard Id */, float /* orientation */> GraveyardOrientationContainer;
603typedef std::pair<GraveYardContainer::const_iterator, GraveYardContainer::const_iterator> GraveYardMapBounds;
604typedef std::pair<GraveYardContainer::iterator, GraveYardContainer::iterator> GraveYardMapBoundsNonConst;
605
608
610{
612 SKILL_RANGE_LEVEL, // 1..max skill for level
613 SKILL_RANGE_MONO, // 1..1, grey monolite bar
614 SKILL_RANGE_RANK, // 1..skill for known rank
615 SKILL_RANGE_NONE // 0..0 always
616};
617
618SkillRangeType GetSkillRangeType(SkillLineEntry const* pSkill, bool racial);
619
620#define MAX_PLAYER_NAME 12 // max allowed by client name length
621#define MAX_INTERNAL_PLAYER_NAME 15 // max server internal player name length (> MAX_PLAYER_NAME for support declined names)
622#define MAX_PET_NAME 12 // max allowed by client name length
623#define MAX_CHARTER_NAME 24 // max allowed by client name length
624
625bool normalizePlayerName(std::string& name);
626
633
636
642
644{
645 DungeonEncounter(DungeonEncounterEntry const* _dbcEntry, EncounterCreditType _creditType, uint32 _creditEntry, uint32 _lastEncounterDungeon)
646 : dbcEntry(_dbcEntry), creditType(_creditType), creditEntry(_creditEntry), lastEncounterDungeon(_lastEncounterDungeon) { }
647
652};
653
654typedef std::list<DungeonEncounter const*> DungeonEncounterList;
656
664
665typedef std::vector<HotfixInfo> HotfixData;
666typedef std::map<uint32, uint32> QuestObjectiveLookupMap;
667
675
676typedef std::list<ResearchDigsiteInfo> ResearchDigsiteList;
678
680{
683 float x;
684 float y;
685 float z;
686};
687
688typedef std::list<ArchaeologyFindInfo> ArchaeologyFindList;
690
696
698
704
708class PlayerDumpReader;
709
711{
712 friend class PlayerDumpReader;
713 friend class Skyfire::Singleton<ObjectMgr, Skyfire::NullMutex>;
714
715private:
716 ObjectMgr();
717 ~ObjectMgr();
718
719public:
720 typedef UNORDERED_MAP<uint32, Item*> ItemMap;
721
722 typedef UNORDERED_MAP<uint32, Quest*> QuestMap;
723
724 typedef UNORDERED_MAP<uint32, AreaTriggerStruct> AreaTriggerContainer;
725
727
728 typedef UNORDERED_MAP<uint32, AccessRequirement*> AccessRequirementContainer;
729
730 typedef UNORDERED_MAP<uint32, RepRewardRate > RepRewardRateContainer;
731 typedef UNORDERED_MAP<uint32, ReputationOnKillEntry> RepOnKillContainer;
732 typedef UNORDERED_MAP<uint32, RepSpilloverTemplate> RepSpilloverTemplateContainer;
733
734 typedef UNORDERED_MAP<uint32, PointOfInterest> PointOfInterestContainer;
735
736 typedef std::vector<std::string> ScriptNameContainer;
737
738 typedef std::map<uint32, uint32> CharacterConversionMap;
739
740 Player* GetPlayerByLowGUID(uint32 lowguid) const;
741
742 GameObjectTemplate const* GetGameObjectTemplate(uint32 entry);
744 int LoadReferenceVendor(int32 vendor, int32 item, uint8 type, std::set<uint32>* skip_vendors);
745
747
752 static uint32 ChooseDisplayId(CreatureTemplate const* cinfo, CreatureData const* data = NULL);
753 static void ChooseCreatureFlags(CreatureTemplate const* cinfo, uint32& npcflag, uint32& unit_flags, uint32& dynamicflags, CreatureData const* data = NULL);
754 EquipmentInfo const* GetEquipmentInfo(uint32 entry, int8& id);
755 CreatureAddon const* GetCreatureAddon(uint32 lowguid);
757 ItemTemplate const* GetItemTemplate(uint32 entry);
759
761
762 PetLevelInfo const* GetPetLevelInfo(uint32 creature_id, uint8 level) const;
763
764 void GetPlayerClassLevelInfo(uint32 class_, uint8 level, uint32& baseHP, uint32& baseMana) const;
765
766 PlayerInfo const* GetPlayerInfo(uint32 race, uint32 class_) const;
767
768 void GetPlayerLevelInfo(uint32 race, uint32 class_, uint8 level, PlayerLevelInfo* info) const;
769
770 uint64 GetPlayerGUIDByName(std::string const& name) const;
771
785 bool GetPlayerNameByGUID(uint64 guid, std::string& name) const;
788 uint32 GetPlayerAccountIdByPlayerName(std::string const& name) const;
789
790 uint32 GetNearestTaxiNode(float x, float y, float z, uint32 mapid, uint32 team);
791 void GetTaxiPath(uint32 source, uint32 destination, uint32& path, uint32& cost);
792 uint32 GetTaxiMountDisplayId(uint32 id, uint32 team, bool allowed_alt_team = false);
793
794 Quest const* GetQuestTemplate(uint32 quest_id) const
795 {
796 QuestMap::const_iterator itr = _questTemplates.find(quest_id);
797 return itr != _questTemplates.end() ? itr->second : NULL;
798 }
799
800 QuestMap const& GetQuestTemplates() const { return _questTemplates; }
801
803 {
804 QuestAreaTriggerContainer::const_iterator itr = _questAreaTriggerStore.find(Trigger_ID);
805 if (itr != _questAreaTriggerStore.end())
806 return itr->second;
807 return 0;
808 }
809
810 bool IsTavernAreaTrigger(uint32 Trigger_ID) const
811 {
812 return _tavernAreaTriggerStore.find(Trigger_ID) != _tavernAreaTriggerStore.end();
813 }
814 TavernRestArea const* GetTavernRestArea(uint32 triggerId) const;
815 TavernRestArea const* GetTavernRestAreaAtPosition(uint32 mapId, float x, float y, float z) const;
816 bool IsInTavernRestArea(TavernRestArea const& restArea, uint32 mapId, float x, float y, float z, float padding = 0.0f) const;
817
819 {
820 return _gameObjectForQuestStore.find(entry) != _gameObjectForQuestStore.end();
821 }
822
823 GossipText const* GetGossipText(uint32 Text_ID) const;
824
826 WorldSafeLocsEntry const* GetClosestGraveYard(float x, float y, float z, uint32 MapId, uint32 team);
827 bool AddGraveYardLink(uint32 id, uint32 zoneId, uint32 team, bool persist = true);
828 void RemoveGraveYardLink(uint32 id, uint32 zoneId, uint32 team, bool persist = false);
829 void LoadGraveyardZones();
831
833 {
834 AreaTriggerContainer::const_iterator itr = _areaTriggerStore.find(trigger);
835 if (itr != _areaTriggerStore.end())
836 return &itr->second;
837 return NULL;
838 }
839
841 {
842 AccessRequirementContainer::const_iterator itr = _accessRequirementStore.find(MAKE_PAIR32(mapid, difficulty));
843 if (itr != _accessRequirementStore.end())
844 return itr->second;
845 return NULL;
846 }
847
850
853
854 RepRewardRate const* GetRepRewardRate(uint32 factionId) const
855 {
856 RepRewardRateContainer::const_iterator itr = _repRewardRateStore.find(factionId);
857 if (itr != _repRewardRateStore.end())
858 return &itr->second;
859
860 return NULL;
861 }
862
864 {
865 RepOnKillContainer::const_iterator itr = _repOnKillStore.find(id);
866 if (itr != _repOnKillStore.end())
867 return &itr->second;
868 return NULL;
869 }
870
871 int32 GetBaseReputationOf(FactionEntry const* factionEntry, uint8 race, uint8 playerClass);
872
874 {
875 RepSpilloverTemplateContainer::const_iterator itr = _repSpilloverTemplateStore.find(factionId);
876 if (itr != _repSpilloverTemplateStore.end())
877 return &itr->second;
878
879 return NULL;
880 }
881
883 {
884 PointOfInterestContainer::const_iterator itr = _pointsOfInterestStore.find(id);
885 if (itr != _pointsOfInterestStore.end())
886 return &itr->second;
887 return NULL;
888 }
889
891 {
892 QuestPOIContainer::const_iterator itr = _questPOIStore.find(questId);
893 if (itr != _questPOIStore.end())
894 return &itr->second;
895 return NULL;
896 }
897
899
901 {
903 if (itr != _dungeonEncounterStore.end())
904 return &itr->second;
905 return NULL;
906 }
907
908 void LoadQuests();
909 void LoadQuestObjectives();
913 {
914 SF_LOG_INFO("server.loading", "Loading GO Start Quest Data...");
916 SF_LOG_INFO("server.loading", "Loading GO End Quest Data...");
918 SF_LOG_INFO("server.loading", "Loading Creature Start Quest Data...");
920 SF_LOG_INFO("server.loading", "Loading Creature End Quest Data...");
922 }
927
932
934 {
935 return _goQuestRelations.equal_range(go_entry);
936 }
937
939 {
940 return _goQuestInvolvedRelations.equal_range(go_entry);
941 }
942
947
952
954 {
955 return _creatureQuestRelations.equal_range(creature_entry);
956 }
957
959 {
960 return _creatureQuestInvolvedRelations.equal_range(creature_entry);
961 }
962
967
968 void LoadEventScripts();
969 void LoadSpellScripts();
970 void LoadWaypointScripts();
971
974
975 bool LoadSkyFireStrings(char const* table, int32 min_value, int32 max_value);
977 void LoadDbScriptStrings();
979 void LoadCreatureLocales();
983 void CheckCreatureTemplate(CreatureTemplate const* cInfo);
984 void LoadTempSummons();
985 void LoadCreatures();
986 void LoadLinkedRespawn();
987 bool SetCreatureLinkedRespawn(uint32 guid, uint32 linkedGuid);
988 void LoadCreatureAddons();
992 void LoadGameobjects();
993 void LoadItemTemplates();
995 void LoadItemScriptNames();
996 void LoadItemLocales();
997 void LoadQuestLocales();
998 void LoadNpcTextLocales();
999 void LoadPageTextLocales();
1002 void LoadInstanceTemplate();
1004 void LoadMailLevelRewards();
1007
1008 void LoadGossipText();
1009
1012 void LoadQuestAreaTriggers();
1016
1017 void LoadPageTexts();
1018 PageText const* GetPageText(uint32 pageEntry);
1019
1020 void LoadPlayerInfo();
1021 bool IsValidPlayerCreateRace(uint32 currentRace);
1022 bool IsValidPlayerCreateClass(uint32 currentClass);
1029
1030 void LoadPetLevelInfo();
1031 void LoadExplorationBaseXP();
1032 void LoadPetNames();
1033 void LoadPetNumber();
1034 void LoadCorpses();
1036
1038 void LoadReputationOnKill();
1040
1041 void LoadPointsOfInterest();
1042 void LoadQuestPOI();
1043
1045
1046 void LoadGameTele();
1047
1048 void LoadGossipMenu();
1049 void LoadGossipMenuItems();
1050
1051 void LoadVendors();
1052 void LoadTrainerSpell();
1053 void AddSpellToTrainer(uint32 entry, uint32 spell, uint32 spellCost, uint32 reqSkill, uint32 reqSkillValue, uint32 reqLevel);
1054
1055 void LoadTerrainPhaseInfo();
1057 void LoadTerrainWorldMaps();
1058 void LoadAreaPhases();
1059
1060 void LoadSceneTemplates();
1061
1062 std::vector<PhaseInfoStruct> const* GetPhaseTerrainSwaps(uint32 phaseid) const
1063 {
1064 auto itr = _terrainPhaseInfoStore.find(phaseid);
1065 return itr != _terrainPhaseInfoStore.end() ? &itr->second : nullptr;
1066 }
1067 std::vector<PhaseInfoStruct> const* GetDefaultTerrainSwaps(uint32 mapid) const
1068 {
1069 auto itr = _terrainMapDefaultStore.find(mapid);
1070 return itr != _terrainMapDefaultStore.end() ? &itr->second : nullptr;
1071 }
1072 std::vector<uint32> const* GetTerrainWorldMaps(uint32 terrainId) const
1073 {
1074 auto itr = _terrainWorldMapStore.find(terrainId);
1075 return itr != _terrainWorldMapStore.end() ? &itr->second : nullptr;
1076 }
1077 std::vector<PhaseInfoStruct> const* GetPhasesForArea(uint32 area) const
1078 {
1079 auto itr = _phases.find(area);
1080 return itr != _phases.end() ? &itr->second : nullptr;
1081 }
1083 PhaseInfo const& GetAreaPhases() const { return _phases; }
1084
1085 std::vector<PhaseInfoStruct>* GetPhasesForAreaForLoading(uint32 area)
1086 {
1087 auto itr = _phases.find(area);
1088 return itr != _phases.end() ? &itr->second : nullptr;
1089 }
1093
1097
1099 uint8 BattlePetGetRandomBreed(uint32 speciesId) const;
1100 uint8 BattlePetGetRandomQuality(uint32 speciesId) const;
1101
1102 std::string GeneratePetName(uint32 entry);
1103 uint32 GetBaseXP(uint8 level);
1104 uint32 GetXPForLevel(uint8 level) const;
1105
1107 {
1108 FishingBaseSkillContainer::const_iterator itr = _fishingBaseForAreaStore.find(entry);
1109 return itr != _fishingBaseForAreaStore.end() ? itr->second : 0;
1110 }
1111
1112 void ReturnOrDeleteOldMails(bool serverUp);
1113
1114 CreatureBaseStats const* GetCreatureBaseStats(uint8 level, uint8 unitClass);
1115
1116 void SetHighestGuids();
1123
1124 typedef std::multimap<int32, uint32> ExclusiveQuestGroups;
1125 typedef std::pair<ExclusiveQuestGroups::const_iterator, ExclusiveQuestGroups::const_iterator> ExclusiveQuestGroupsBounds;
1126
1128
1130 {
1131 MailLevelRewardContainer::const_iterator map_itr = _mailLevelRewardStore.find(level);
1132 if (map_itr == _mailLevelRewardStore.end())
1133 return NULL;
1134
1135 for (MailLevelRewardList::const_iterator set_itr = map_itr->second.begin(); set_itr != map_itr->second.end(); ++set_itr)
1136 if (set_itr->raceMask & raceMask)
1137 return &*set_itr;
1138
1139 return NULL;
1140 }
1141
1142 CellObjectGuids const& GetCellObjectGuids(uint16 mapid, uint8 spawnMode, uint32 cell_id)
1143 {
1144 return _mapObjectGuidsStore[MAKE_PAIR32(mapid, spawnMode)][cell_id];
1145 }
1146
1148 {
1149 return _mapObjectGuidsStore[MAKE_PAIR32(mapid, spawnMode)];
1150 }
1151
1161 std::vector<TempSummonData> const* GetSummonGroup(uint32 summonerId, SummonerType summonerType, uint8 group) const
1162 {
1163 TempSummonDataContainer::const_iterator itr = _tempSummonDataStore.find(TempSummonGroupKey(summonerId, summonerType, group));
1164 if (itr != _tempSummonDataStore.end())
1165 return &itr->second;
1166
1167 return NULL;
1168 }
1169
1171 {
1172 CreatureDataContainer::const_iterator itr = _creatureDataStore.find(guid);
1173 if (itr == _creatureDataStore.end()) return NULL;
1174 return &itr->second;
1175 }
1177 void DeleteCreatureData(uint32 guid);
1179 {
1180 LinkedRespawnContainer::const_iterator itr = _linkedRespawnStore.find(guid);
1181 if (itr == _linkedRespawnStore.end()) return 0;
1182 return itr->second;
1183 }
1185 {
1186 CreatureLocaleContainer::const_iterator itr = _creatureLocaleStore.find(entry);
1187 if (itr == _creatureLocaleStore.end()) return NULL;
1188 return &itr->second;
1189 }
1191 {
1192 GameObjectLocaleContainer::const_iterator itr = _gameObjectLocaleStore.find(entry);
1193 if (itr == _gameObjectLocaleStore.end()) return NULL;
1194 return &itr->second;
1195 }
1196 ItemLocale const* GetItemLocale(uint32 entry) const
1197 {
1198 ItemLocaleContainer::const_iterator itr = _itemLocaleStore.find(entry);
1199 if (itr == _itemLocaleStore.end()) return NULL;
1200 return &itr->second;
1201 }
1203 {
1204 QuestLocaleContainer::const_iterator itr = _questLocaleStore.find(entry);
1205 if (itr == _questLocaleStore.end()) return NULL;
1206 return &itr->second;
1207 }
1209 {
1210 NpcTextLocaleContainer::const_iterator itr = _npcTextLocaleStore.find(entry);
1211 if (itr == _npcTextLocaleStore.end()) return NULL;
1212 return &itr->second;
1213 }
1215 {
1216 PageTextLocaleContainer::const_iterator itr = _pageTextLocaleStore.find(entry);
1217 if (itr == _pageTextLocaleStore.end()) return NULL;
1218 return &itr->second;
1219 }
1221 {
1222 GossipMenuItemsLocaleContainer::const_iterator itr = _gossipMenuItemsLocaleStore.find(entry);
1223 if (itr == _gossipMenuItemsLocaleStore.end()) return NULL;
1224 return &itr->second;
1225 }
1227 {
1228 PointOfInterestLocaleContainer::const_iterator itr = _pointOfInterestLocaleStore.find(poi_id);
1229 if (itr == _pointOfInterestLocaleStore.end()) return NULL;
1230 return &itr->second;
1231 }
1232 QuestObjectiveLocale const* GetQuestObjectiveLocale(uint32 objectiveId) const;
1233
1235 {
1236 GameObjectDataContainer::const_iterator itr = _gameObjectDataStore.find(guid);
1237 if (itr == _gameObjectDataStore.end()) return NULL;
1238 return &itr->second;
1239 }
1241 void DeleteGOData(uint32 guid);
1242
1244 {
1245 SkyFireStringLocaleContainer::const_iterator itr = _SkyfireStringLocaleStore.find(entry);
1246 if (itr == _SkyfireStringLocaleStore.end()) return NULL;
1247 return &itr->second;
1248 }
1249 const char* GetSkyFireString(int32 entry, LocaleConstant locale_idx) const;
1250 const char* GetSkyFireStringForDBCLocale(int32 entry) const { return GetSkyFireString(entry, DBCLocaleIndex); }
1253
1254 void AddCorpseCellData(uint32 mapid, uint32 cellid, uint32 player_guid, uint32 instance);
1255 void DeleteCorpseCellData(uint32 mapid, uint32 cellid, uint32 player_guid);
1256
1257 // grid objects
1258 void AddCreatureToGrid(uint32 guid, CreatureData const* data);
1259 void RemoveCreatureFromGrid(uint32 guid, CreatureData const* data);
1260 void AddGameobjectToGrid(uint32 guid, GameObjectData const* data);
1261 void RemoveGameobjectFromGrid(uint32 guid, GameObjectData const* data);
1262 uint32 AddGOData(uint32 entry, uint32 map, float x, float y, float z, float o, uint32 spawntimedelay = 0, float rotation0 = 0, float rotation1 = 0, float rotation2 = 0, float rotation3 = 0);
1263 uint32 AddCreData(uint32 entry, uint32 team, uint32 map, float x, float y, float z, float o, uint32 spawntimedelay = 0);
1264 bool MoveCreData(uint32 guid, uint32 map, const Position& pos);
1265
1266 // reserved names
1268 bool IsReservedName(std::string const& name) const;
1269
1270 // name with valid structure and symbols
1271 static ResponseCodes CheckPlayerName(std::string const& name, bool create = false);
1272 static PetNameInvalidReason CheckPetName(std::string const& name);
1273 static bool IsValidCharterName(std::string const& name);
1274
1275 static bool CheckDeclinedNames(const std::wstring& w_ownname, DeclinedName const& names);
1276
1277 GameTele const* GetGameTele(uint32 id) const
1278 {
1279 GameTeleContainer::const_iterator itr = _gameTeleStore.find(id);
1280 if (itr == _gameTeleStore.end()) return NULL;
1281 return &itr->second;
1282 }
1283 GameTele const* GetGameTele(std::string const& name) const;
1284 GameTele const* GetGameTeleExactName(std::string const& name) const;
1286 bool AddGameTele(GameTele& data);
1287 bool DeleteGameTele(std::string const& name);
1288
1290 {
1291 CacheTrainerSpellContainer::const_iterator iter = _cacheTrainerSpellStore.find(entry);
1292 if (iter == _cacheTrainerSpellStore.end())
1293 return NULL;
1294
1295 return &iter->second;
1296 }
1297
1299 {
1300 CacheVendorItemContainer::const_iterator iter = _cacheVendorItemStore.find(entry);
1301 if (iter == _cacheVendorItemStore.end())
1302 return NULL;
1303
1304 return &iter->second;
1305 }
1306
1307 float const* GetGraveyardOrientation(uint32 id) const
1308 {
1309 GraveyardOrientationContainer::const_iterator iter = _graveyardOrientations.find(id);
1310 if (iter != _graveyardOrientations.end())
1311 return &iter->second;
1312
1313 return NULL;
1314 }
1315
1316 void AddVendorItem(uint32 entry, uint32 item, int32 maxcount, uint32 incrtime, uint32 extendedCost, uint8 type, bool persist = true); // for event
1317 bool RemoveVendorItem(uint32 entry, uint32 item, uint8 type, bool persist = true); // for event
1318 bool IsVendorItemValid(uint32 vendor_entry, uint32 id, int32 maxcount, uint32 ptime, uint32 ExtendedCost, uint8 type, Player* player = NULL, std::set<uint32>* skip_vendors = NULL, uint32 ORnpcflag = 0) const;
1319
1320 void LoadScriptNames();
1322 const char* GetScriptName(uint32 id) const { return id < _scriptNamesStore.size() ? _scriptNamesStore[id].c_str() : ""; }
1323 uint32 GetScriptId(const char* name);
1324
1326 {
1327 return _spellClickInfoStore.equal_range(creature_id);
1328 }
1329
1331 {
1332 return _gossipMenusStore.equal_range(uiMenuId);
1333 }
1334
1336 {
1337 return _gossipMenusStore.equal_range(uiMenuId);
1338 }
1339
1341 {
1342 return _gossipMenuItemsStore.equal_range(uiMenuId);
1343 }
1348
1349 // for wintergrasp only
1351
1352 static void AddLocaleString(std::string const& s, LocaleConstant locale, StringVector& data);
1353 static inline void GetLocaleString(const StringVector& data, int loc_idx, std::string& value)
1354 {
1355 if (data.size() > size_t(loc_idx) && !data[loc_idx].empty())
1356 value = data[loc_idx];
1357 }
1358
1365
1372
1373 void LoadHotfixData();
1374 HotfixData const& GetHotfixData() const { return _hotfixData; }
1375 time_t GetHotfixDate(uint32 entry, uint32 type) const
1376 {
1377 time_t ret = 0;
1378 for (HotfixData::const_iterator itr = _hotfixData.begin(); itr != _hotfixData.end(); ++itr)
1379 if (itr->Entry == entry && itr->Type == type)
1380 if (itr->Timestamp > ret)
1381 ret = itr->Timestamp;
1382
1383 return ret ? ret : time(NULL);
1384 }
1385
1386 bool QuestObjectiveExists(uint32 objectiveId) const;
1387 uint32 GetQuestObjectiveQuestId(uint32 objectiveId) const;
1388 SceneTemplate const* GetSceneTemplate(uint32 sceneId) const;
1389
1393
1395 {
1396 for (ResearchDigsiteContainer::const_iterator itr = _researchDigsiteStore.begin(); itr != _researchDigsiteStore.end(); ++itr)
1397 for (ResearchDigsiteList::const_iterator digsite = itr->second.begin(); digsite != itr->second.end(); ++digsite)
1398 if (digsite->digsiteId == digsiteId)
1399 return &(*digsite);
1400
1401 return NULL;
1402 }
1403
1405 {
1406 ResearchDigsiteContainer::const_iterator iter = _researchDigsiteStore.find(mapId);
1407 if (iter != _researchDigsiteStore.end())
1408 return &iter->second;
1409
1410 return NULL;
1411 }
1412
1414 {
1415 ArchaeologyFindContainer::const_iterator itr = _archaeologyFindStore.find(digsiteId);
1416 if (itr == _archaeologyFindStore.end())
1417 return NULL;
1418
1419 for (ArchaeologyFindList::const_iterator find = itr->second.begin(); find != itr->second.end(); ++find)
1420 if (find->guid == findGUID)
1421 return &(*find);
1422
1423 return NULL;
1424 }
1425
1427 {
1428 ArchaeologyFindContainer::const_iterator itr = _archaeologyFindStore.find(digsiteId);
1429 if (itr == _archaeologyFindStore.end())
1430 return NULL;
1431
1432 if (itr->second.empty())
1433 return NULL;
1434
1436 }
1437
1439 {
1440 ResearchProjectRequirementContainer::const_iterator iter = _researchProjectRequirementStore.find(projectId);
1441 if (iter != _researchProjectRequirementStore.end())
1442 return &iter->second;
1443
1444 return NULL;
1445 }
1446
1447private:
1448 // first free id for selected id type
1455
1456 // first free low guid for selected guid type
1468
1471
1474 typedef std::set<uint32> TavernAreaTriggerContainer;
1476 typedef std::set<uint32> GameObjectForQuestContainer;
1477
1487
1491
1495
1497
1504
1505 //character reserved names
1506 typedef std::set<std::wstring> ReservedNamesContainer;
1508
1510
1512
1514
1516
1519
1521
1524
1529
1530 typedef std::set<uint8> BattleBetBreedSet;
1532 typedef std::set<uint8> BattlePetQualitySet;
1534
1537
1538private:
1539 void LoadScripts(ScriptsType type);
1540 void CheckScripts(ScriptsType type, std::set<int32>& ids);
1541 void LoadQuestRelationsHelper(QuestRelations& map, std::string const& table, bool starter, bool go);
1542 void PlayerCreateInfoAddItemHelper(uint32 race_, uint32 class_, uint32 itemId, int32 count);
1543
1545
1547
1548 typedef std::map<uint32, PetLevelInfo*> PetLevelInfoContainer;
1549 // PetLevelInfoContainer[creature_id][level]
1550 PetLevelInfoContainer _petInfoStore; // [creature_id][level]
1551
1552 void BuildPlayerLevelInfo(uint8 race, uint8 class_, uint8 level, PlayerLevelInfo* plinfo) const;
1553
1555
1556 typedef std::vector<uint32> PlayerXPperLevel; // [level]
1558
1559 typedef std::map<uint32, uint32> BaseXPContainer; // [area level][base xp]
1561
1562 typedef std::map<uint32, int32> FishingBaseSkillContainer; // [areaId][base skill level]
1564
1565 typedef std::map<uint32, StringVector> HalfNameContainer;
1568
1583
1593
1596
1599
1600 std::set<uint32> _difficultyEntries[4 - 1]; // already loaded difficulty 1 value in creatures, used in CheckCreatureTemplate
1601 std::set<uint32> _hasDifficultyEntries[4 - 1]; // already loaded creatures with difficulty 1 values, used in CheckCreatureTemplate
1602
1604 {
1606 CREATURE_TO_GO, // Creature is dependant on GO
1608 GO_TO_CREATURE // GO is dependant on creature
1609 };
1611
1615};
1616
1617#define sObjectMgr Skyfire::Singleton<ObjectMgr, Skyfire::NullMutex>::instance()
1618
1619// scripting access functions
1620bool LoadSkyFireStrings(char const* table, int32 start_value = MAX_CREATURE_AI_TEXT_STRING_ID, int32 end_value = std::numeric_limits<int32>::min());
1621
1622#endif
const AuthHandler table[]
LocaleConstant
Definition Common.h:138
std::vector< std::string > StringVector
Definition Common.h:163
std::list< Condition * > ConditionList
UNORDERED_MAP< uint32, EquipmentInfoContainerInternal > EquipmentInfoContainer
Definition Creature.h:250
UNORDERED_MAP< uint32, CreatureAddon > CreatureAddonContainer
Definition Creature.h:333
UNORDERED_MAP< uint32, CreatureTemplate > CreatureTemplateContainer
Definition Creature.h:187
UNORDERED_MAP< uint16, CreatureBaseStats > CreatureBaseStatsContainer
Definition Creature.h:224
UNORDERED_MAP< uint16, CreatureModelInfo > CreatureModelContainer
Definition Creature.h:292
DifficultyID
Definition DBCEnums.h:330
std::int32_t int32
Definition Define.h:73
std::uint8_t uint8
Definition Define.h:79
std::uint32_t uint32
Definition Define.h:77
std::int8_t int8
Definition Define.h:75
std::uint64_t uint64
Definition Define.h:76
std::uint16_t uint16
Definition Define.h:78
UNORDERED_MAP< uint32, GameObjectTemplate > GameObjectTemplateContainer
Definition GameObject.h:529
UNORDERED_MAP< uint32, ItemTemplate > ItemTemplateContainer
#define SF_LOG_INFO(filterType__,...)
Definition Log.h:137
uint32 MAKE_PAIR32(uint16 l, uint16 h)
HighGuid
LanguageDesc lang_description[LANGUAGES_COUNT]
ScriptMapMap sSpellScripts
Definition ObjectMgr.cpp:50
ScriptMapMap sEventScripts
Definition ObjectMgr.cpp:51
ScriptMapMap sWaypointScripts
Definition ObjectMgr.cpp:52
std::set< uint32 > CellGuidSet
Definition ObjectMgr.h:413
eScriptFlags
Definition ObjectMgr.h:159
@ SF_CASTSPELL_SOURCE_TO_SOURCE
Definition ObjectMgr.h:177
@ SF_CASTSPELL_SOURCE_TO_TARGET
Definition ObjectMgr.h:176
@ SF_CASTSPELL_TRIGGERED
Definition ObjectMgr.h:181
@ SF_CASTSPELL_TARGET_TO_SOURCE
Definition ObjectMgr.h:179
@ SF_REMOVEAURA_REVERSE
Definition ObjectMgr.h:173
@ SF_PLAYSOUND_DISTANCE_SOUND
Definition ObjectMgr.h:185
@ SF_TALK_USE_PLAYER
Definition ObjectMgr.h:161
@ SF_TELEPORT_USE_CREATURE
Definition ObjectMgr.h:167
@ SF_KILLCREDIT_REWARD_GROUP
Definition ObjectMgr.h:170
@ SF_PLAYSOUND_TARGET_PLAYER
Definition ObjectMgr.h:184
@ SF_CASTSPELL_TARGET_TO_TARGET
Definition ObjectMgr.h:178
@ SF_EMOTE_USE_STATE
Definition ObjectMgr.h:164
@ SF_CASTSPELL_SEARCH_CREATURE
Definition ObjectMgr.h:180
@ SF_ORIENTATION_FACE_TARGET
Definition ObjectMgr.h:188
EncounterCreditType
Definition ObjectMgr.h:638
std::pair< GraveYardContainer::const_iterator, GraveYardContainer::const_iterator > GraveYardMapBounds
Definition ObjectMgr.h:603
std::map< uint32, uint32 > QuestObjectiveLookupMap
Definition ObjectMgr.h:666
std::vector< HotfixInfo > HotfixData
Definition ObjectMgr.h:665
std::map< uint32, uint32 > CellCorpseSet
Definition ObjectMgr.h:414
std::pair< GraveYardContainer::iterator, GraveYardContainer::iterator > GraveYardMapBoundsNonConst
Definition ObjectMgr.h:604
std::multimap< uint32, ScriptInfo > ScriptMap
Definition ObjectMgr.h:379
std::pair< SpellScriptsContainer::iterator, SpellScriptsContainer::iterator > SpellScriptsBounds
Definition ObjectMgr.h:382
std::multimap< uint32, GraveYardData > GraveYardContainer
Definition ObjectMgr.h:601
UNORDERED_MAP< uint32, GameObjectData > GameObjectDataContainer
Definition ObjectMgr.h:442
ScriptMapMap * GetScriptsMapByType(ScriptsType type)
UNORDERED_MAP< uint32, NpcTextLocale > NpcTextLocaleContainer
Definition ObjectMgr.h:448
std::multimap< uint32, uint32 > SpellScriptsContainer
Definition ObjectMgr.h:381
UNORDERED_MAP< int32, SkyFireStringLocale > SkyFireStringLocaleContainer
Definition ObjectMgr.h:450
ScriptCommands
Definition ObjectMgr.h:84
@ SCRIPT_COMMAND_CALLSCRIPT_TO_UNIT
Definition ObjectMgr.h:106
@ SCRIPT_COMMAND_KILL_CREDIT
Definition ObjectMgr.h:93
@ SCRIPT_COMMAND_QUEST_EXPLORED
Definition ObjectMgr.h:92
@ SCRIPT_COMMAND_TELEPORT_TO
Definition ObjectMgr.h:91
@ SCRIPT_COMMAND_RESPAWN_GAMEOBJECT
Definition ObjectMgr.h:94
@ SCRIPT_COMMAND_FLAG_SET
Definition ObjectMgr.h:89
@ SCRIPT_COMMAND_MOVE_TO
Definition ObjectMgr.h:88
@ SCRIPT_COMMAND_ACTIVATE_OBJECT
Definition ObjectMgr.h:98
@ SCRIPT_COMMAND_PLAY_SOUND
Definition ObjectMgr.h:101
@ SCRIPT_COMMAND_OPEN_DOOR
Definition ObjectMgr.h:96
@ SCRIPT_COMMAND_FIELD_SET
Definition ObjectMgr.h:87
@ SCRIPT_COMMAND_LOAD_PATH
Definition ObjectMgr.h:105
@ SCRIPT_COMMAND_TEMP_SUMMON_CREATURE
Definition ObjectMgr.h:95
@ SCRIPT_COMMAND_REMOVE_AURA
Definition ObjectMgr.h:99
@ SCRIPT_COMMAND_DESPAWN_SELF
Definition ObjectMgr.h:103
@ SCRIPT_COMMAND_CLOSE_DOOR
Definition ObjectMgr.h:97
@ SCRIPT_COMMAND_CAST_SPELL
Definition ObjectMgr.h:100
@ SCRIPT_COMMAND_PLAYMOVIE
Definition ObjectMgr.h:114
@ SCRIPT_COMMAND_CLOSE_GOSSIP
Definition ObjectMgr.h:113
@ SCRIPT_COMMAND_FLAG_REMOVE
Definition ObjectMgr.h:90
@ SCRIPT_COMMAND_CREATE_ITEM
Definition ObjectMgr.h:102
@ SCRIPT_COMMAND_ORIENTATION
Definition ObjectMgr.h:110
std::list< ArchaeologyFindInfo > ArchaeologyFindList
Definition ObjectMgr.h:688
std::string GetScriptCommandName(ScriptCommands command)
std::list< MailLevelReward > MailLevelRewardList
Definition ObjectMgr.h:480
UNORDERED_MAP< uint8, MailLevelRewardList > MailLevelRewardContainer
Definition ObjectMgr.h:481
UNORDERED_MAP< uint32, QuestLocale > QuestLocaleContainer
Definition ObjectMgr.h:447
std::pair< QuestRelations::const_iterator, QuestRelations::const_iterator > QuestRelationBounds
Definition ObjectMgr.h:457
UNORDERED_MAP< uint32, CellObjectGuids > CellObjectGuidsMap
Definition ObjectMgr.h:421
UNORDERED_MAP< uint32, TrainerSpellData > CacheTrainerSpellContainer
Definition ObjectMgr.h:607
std::multimap< uint32, GossipMenus > GossipMenusContainer
Definition ObjectMgr.h:551
bool LoadSkyFireStrings(char const *table, int32 start_value=MAX_CREATURE_AI_TEXT_STRING_ID, int32 end_value=std::numeric_limits< int32 >::min())
UNORDERED_MAP< uint32, PointOfInterestLocale > PointOfInterestLocaleContainer
Definition ObjectMgr.h:452
UNORDERED_MAP< uint32, std::vector< PhaseInfoStruct > > PhaseInfo
Definition ObjectMgr.h:707
UNORDERED_MAP< uint32, ResearchProjectRequirements > ResearchProjectRequirementContainer
Definition ObjectMgr.h:697
SkillRangeType GetSkillRangeType(SkillLineEntry const *pSkill, bool racial)
UNORDERED_MAP< uint32, PageTextLocale > PageTextLocaleContainer
Definition ObjectMgr.h:449
UNORDERED_MAP< uint32, std::vector< PhaseInfoStruct > > TerrainPhaseInfo
Definition ObjectMgr.h:705
UNORDERED_MAP< uint32, GameTele > GameTeleContainer
Definition ObjectMgr.h:135
std::multimap< uint32, SpellClickInfo > SpellClickInfoContainer
Definition ObjectMgr.h:401
std::pair< GossipMenuItemsContainer::iterator, GossipMenuItemsContainer::iterator > GossipMenuItemsMapBoundsNonConst
Definition ObjectMgr.h:556
std::vector< QuestPOI > QuestPOIVector
Definition ObjectMgr.h:582
UNORDERED_MAP< uint32, CreatureLocale > CreatureLocaleContainer
Definition ObjectMgr.h:444
std::pair< GossipMenusContainer::const_iterator, GossipMenusContainer::const_iterator > GossipMenusMapBounds
Definition ObjectMgr.h:552
std::pair< GossipMenuItemsContainer::const_iterator, GossipMenuItemsContainer::const_iterator > GossipMenuItemsMapBounds
Definition ObjectMgr.h:555
UNORDERED_MAP< uint32, std::vector< uint32 > > TerrainUIPhaseInfo
Definition ObjectMgr.h:706
UNORDERED_MAP< uint32, QuestObjectiveLocale > QuestObjectiveLocaleContainer
Definition ObjectMgr.h:453
UNORDERED_MAP< uint32, DungeonEncounterList > DungeonEncounterContainer
Definition ObjectMgr.h:655
UNORDERED_MAP< uint32, VendorItemData > CacheVendorItemContainer
Definition ObjectMgr.h:606
std::map< uint64, uint64 > LinkedRespawnContainer
Definition ObjectMgr.h:440
UNORDERED_MAP< uint32, QuestPOIVector > QuestPOIContainer
Definition ObjectMgr.h:583
#define MIN_SKYFIRE_STRING_ID
Definition ObjectMgr.h:425
std::map< uint32, ScriptMap > ScriptMapMap
Definition ObjectMgr.h:380
UNORDERED_MAP< uint32, ItemLocale > ItemLocaleContainer
Definition ObjectMgr.h:446
std::pair< QuestRelationsReverse::const_iterator, QuestRelationsReverse::const_iterator > QuestRelationReverseBounds
Definition ObjectMgr.h:458
UNORDERED_MAP< uint32, SceneTemplate > SceneTemplateContainer
Definition ObjectMgr.h:593
std::map< uint32, PageText > PageTextContainer
Definition ObjectMgr.h:118
#define MAX_CREATURE_AI_TEXT_STRING_ID
Definition ObjectMgr.h:430
std::multimap< uint32, GossipMenuItems > GossipMenuItemsContainer
Definition ObjectMgr.h:554
UNORDERED_MAP< uint32, float > GraveyardOrientationContainer
Definition ObjectMgr.h:602
std::pair< SpellClickInfoContainer::const_iterator, SpellClickInfoContainer::const_iterator > SpellClickInfoMapBounds
Definition ObjectMgr.h:402
#define MAX_SKYFIRE_STRING_ID
Definition ObjectMgr.h:426
LanguageDesc const * GetLanguageDescByID(Language lang)
UNORDERED_MAP< uint32, ResearchDigsiteList > ResearchDigsiteContainer
Definition ObjectMgr.h:677
std::string GetScriptsTableNameByType(ScriptsType type)
Definition ObjectMgr.cpp:88
UNORDERED_MAP< uint16, InstanceTemplate > InstanceTemplateContainer
Definition ObjectMgr.h:121
std::list< ResearchDigsiteInfo > ResearchDigsiteList
Definition ObjectMgr.h:676
UNORDERED_MAP< uint32, GameObjectLocale > GameObjectLocaleContainer
Definition ObjectMgr.h:445
std::map< TempSummonGroupKey, std::vector< TempSummonData > > TempSummonDataContainer
Definition ObjectMgr.h:443
UNORDERED_MAP< uint32, CreatureData > CreatureDataContainer
Definition ObjectMgr.h:441
ScriptsType
Definition ObjectMgr.h:152
UNORDERED_MAP< uint32, ArchaeologyFindList > ArchaeologyFindContainer
Definition ObjectMgr.h:689
UNORDERED_MAP< uint32, CellObjectGuidsMap > MapObjectGuids
Definition ObjectMgr.h:422
std::multimap< uint32, uint32 > QuestRelationsReverse
Definition ObjectMgr.h:456
std::multimap< uint32, uint32 > QuestRelations
Definition ObjectMgr.h:455
UNORDERED_MAP< uint32, GossipMenuItemsLocale > GossipMenuItemsLocaleContainer
Definition ObjectMgr.h:451
std::list< DungeonEncounter const * > DungeonEncounterList
Definition ObjectMgr.h:654
bool normalizePlayerName(std::string &name)
std::pair< GossipMenusContainer::iterator, GossipMenusContainer::iterator > GossipMenusMapBoundsNonConst
Definition ObjectMgr.h:553
SkillRangeType
Definition ObjectMgr.h:610
@ SKILL_RANGE_MONO
Definition ObjectMgr.h:613
@ SKILL_RANGE_NONE
Definition ObjectMgr.h:615
@ SKILL_RANGE_LANGUAGE
Definition ObjectMgr.h:611
@ SKILL_RANGE_RANK
Definition ObjectMgr.h:614
@ SKILL_RANGE_LEVEL
Definition ObjectMgr.h:612
#define MAX_STATS
#define LANGUAGES_COUNT
Language
ResponseCodes
#define MAX_RACES
SpellClickUserTypes
#define MAX_CLASSES
PetNameInvalidReason
#define MAX_SPILLOVER_FACTIONS
SummonerType
#define UNORDERED_MAP
std::map< uint32, VehicleAccessoryList > VehicleAccessoryContainer
std::vector< VehicleAccessory > VehicleAccessoryList
Definition Item.h:202
Definition Map.h:238
Definition model.h:18
GameObjectLocale const * GetGameObjectLocale(uint32 entry) const
Definition ObjectMgr.h:1190
ItemTemplate const * GetItemTemplate(uint32 entry)
UNORDERED_MAP< uint32, uint32 > QuestAreaTriggerContainer
Definition ObjectMgr.h:1473
UNORDERED_MAP< uint32, RepRewardRate > RepRewardRateContainer
Definition ObjectMgr.h:730
uint64 GetPlayerGUIDByName(std::string const &name) const
uint32 _hiAreaTriggerGuid
Definition ObjectMgr.h:1465
CharacterConversionMap FactionChangeAchievements
Definition ObjectMgr.h:1359
std::set< uint32 > _difficultyEntries[4 - 1]
Definition ObjectMgr.h:1600
void LoadResearchDigsiteInfo()
CellObjectGuidsMap const & GetMapObjectGuids(uint16 mapid, uint8 spawnMode)
Definition ObjectMgr.h:1147
int32 GetFishingBaseSkillLevel(uint32 entry) const
Definition ObjectMgr.h:1106
uint32 GenerateLowGuid(HighGuid guidhigh)
TempSummonDataContainer _tempSummonDataStore
Stores temp summon data grouped by summoner's entry, summoner's type and group id.
Definition ObjectMgr.h:1582
std::set< uint8 > BattlePetQualitySet
Definition ObjectMgr.h:1532
QuestRelations _creatureQuestInvolvedRelations
Definition ObjectMgr.h:1502
PetLevelInfo const * GetPetLevelInfo(uint32 creature_id, uint8 level) const
PlayerInfo * _playerInfo[MAX_RACES][MAX_CLASSES]
Definition ObjectMgr.h:1554
VehicleAccessoryList const * GetVehicleAccessoryList(Vehicle *veh) const
bool LoadSkyFireStrings()
Definition ObjectMgr.h:976
VehicleAccessoryContainer _vehicleAccessoryStore
Definition ObjectMgr.h:1518
ResearchDigsiteContainer _researchDigsiteStore
Definition ObjectMgr.h:1612
QuestObjectiveLocale const * GetQuestObjectiveLocale(uint32 objectiveId) const
WorldSafeLocsEntry const * GetDefaultGraveYard(uint32 team)
uint32 GetXPForLevel(uint8 level) const
BattlePetQualityXSpeciesMap sBattlePetQualityXSpeciesStore
Definition ObjectMgr.h:1536
CreatureBaseStats const * GetCreatureBaseStats(uint8 level, uint8 unitClass)
GameTele const * GetGameTeleExactName(std::string const &name) const
WorldSafeLocsEntry const * GetClosestGraveYard(float x, float y, float z, uint32 MapId, uint32 team)
bool AddGraveYardLink(uint32 id, uint32 zoneId, uint32 team, bool persist=true)
const char * GetSkyFireStringForDBCLocale(int32 entry) const
Definition ObjectMgr.h:1250
uint32 GetAreaTriggerScriptId(uint32 trigger_id)
TerrainPhaseInfo const & GetDefaultTerrainSwapStore() const
Definition ObjectMgr.h:1082
void LoadReputationOnKill()
PointOfInterest const * GetPointOfInterest(uint32 id) const
Definition ObjectMgr.h:882
void LoadEventScripts()
void LoadGameObjectTemplate()
void LoadFactionChangeSpells()
TavernRestAreaContainer _tavernRestAreaStore
Definition ObjectMgr.h:1480
void RemoveGraveYardLink(uint32 id, uint32 zoneId, uint32 team, bool persist=false)
void LoadFactionChangeItems()
QuestLocale const * GetQuestLocale(uint32 entry) const
Definition ObjectMgr.h:1202
std::vector< uint32 > const * GetTerrainWorldMaps(uint32 terrainId) const
Definition ObjectMgr.h:1072
void LoadAreaTriggerTeleports()
SceneTemplateContainer _sceneTemplateStore
Definition ObjectMgr.h:1597
void LoadNpcTextLocales()
time_t GetHotfixDate(uint32 entry, uint32 type) const
Definition ObjectMgr.h:1375
NpcTextLocale const * GetNpcTextLocale(uint32 entry) const
Definition ObjectMgr.h:1208
GameTeleContainer _gameTeleStore
Definition ObjectMgr.h:1509
AreaTriggerStruct const * GetAreaTrigger(uint32 trigger) const
Definition ObjectMgr.h:832
void LoadPageTextLocales()
uint32 GetPlayerAccountIdByGUID(uint64 guid) const
HalfNameContainer _petHalfName1
Definition ObjectMgr.h:1567
GossipTextContainer _gossipTextStore
Definition ObjectMgr.h:1482
std::set< std::wstring > ReservedNamesContainer
Definition ObjectMgr.h:1506
void LoadInstanceTemplate()
void LoadScriptNames()
UNORDERED_MAP< uint32, Item * > ItemMap
Definition ObjectMgr.h:720
HotfixData _hotfixData
Definition ObjectMgr.h:1610
void LoadItemScriptNames()
CreatureTemplateContainer const * GetCreatureTemplates() const
Definition ObjectMgr.h:749
ReputationOnKillEntry const * GetReputationOnKilEntry(uint32 id) const
Definition ObjectMgr.h:863
uint32 GetTaxiMountDisplayId(uint32 id, uint32 team, bool allowed_alt_team=false)
void LoadSpellScripts()
SpellScriptsContainer _spellScriptsStore
Definition ObjectMgr.h:1515
void LoadPlayerCreateCastSpellsData()
CreatureDataContainer _creatureDataStore
Definition ObjectMgr.h:1570
void LoadPageTexts()
friend class PlayerDumpReader
Definition ObjectMgr.h:712
void ValidateSpellScripts()
uint32 _hiCreatureGuid
Definition ObjectMgr.h:1458
void LoadGraveyardOrientations()
void LoadCreatureQuestEnders()
QuestRelations _goQuestRelations
Definition ObjectMgr.h:1498
CreatureBaseStatsContainer _creatureBaseStatsStore
Definition ObjectMgr.h:1546
void RemoveCreatureFromGrid(uint32 guid, CreatureData const *data)
void LoadSceneTemplates()
void LoadGameobjectQuestEnders()
UNORDERED_MAP< uint32, AreaTriggerStruct > AreaTriggerContainer
Definition ObjectMgr.h:724
CreatureLocale const * GetCreatureLocale(uint32 entry) const
Definition ObjectMgr.h:1184
SkyFireStringLocaleContainer _SkyfireStringLocaleStore
Definition ObjectMgr.h:1589
TrainerSpellData const * GetNpcTrainerSpells(uint32 entry) const
Definition ObjectMgr.h:1289
void LoadCreatureLocales()
uint32 _hiPetGuid
Definition ObjectMgr.h:1459
ScriptNameContainer _scriptNamesStore
Definition ObjectMgr.h:1511
GossipMenuItemsMapBounds GetGossipMenuItemsMapBounds(uint32 uiMenuId) const
Definition ObjectMgr.h:1340
GameObjectTemplate const * GetGameObjectTemplate(uint32 entry)
std::map< uint32, int32 > FishingBaseSkillContainer
Definition ObjectMgr.h:1562
TavernAreaTriggerContainer _tavernAreaTriggerStore
Definition ObjectMgr.h:1479
void LoadCreatureClassLevelStats()
PlayerInfo const * GetPlayerInfo(uint32 race, uint32 class_) const
int LoadReferenceVendor(int32 vendor, int32 item, uint8 type, std::set< uint32 > *skip_vendors)
void LoadCreatureTemplates()
GossipText const * GetGossipText(uint32 Text_ID) const
QuestRelationReverseBounds GetCreatureQuestInvolvedRelationReverseBounds(uint32 questId)
Definition ObjectMgr.h:963
CacheTrainerSpellContainer _cacheTrainerSpellStore
Definition ObjectMgr.h:1595
PageTextLocaleContainer _pageTextLocaleStore
Definition ObjectMgr.h:1588
GameObjectData const * GetGOData(uint32 guid) const
Definition ObjectMgr.h:1234
QuestRelationBounds GetGOQuestInvolvedRelationBounds(uint32 go_entry)
Definition ObjectMgr.h:938
EquipmentInfoContainer _equipmentInfoStore
Definition ObjectMgr.h:1575
GossipMenuItemsMapBoundsNonConst GetGossipMenuItemsMapBoundsNonConst(uint32 uiMenuId)
Definition ObjectMgr.h:1344
std::set< uint32 > GameObjectForQuestContainer
Definition ObjectMgr.h:1476
void DeleteCorpseCellData(uint32 mapid, uint32 cellid, uint32 player_guid)
uint32 _hiVehicleGuid
Definition ObjectMgr.h:1460
AccessRequirementContainer _accessRequirementStore
Definition ObjectMgr.h:1485
void LoadQuestAreaTriggers()
uint32 GetScriptId(const char *name)
CreatureAddon const * GetCreatureAddon(uint32 lowguid)
CreatureAddonContainer _creatureTemplateAddonStore
Definition ObjectMgr.h:1574
CreatureTemplateContainer _creatureTemplateStore
Definition ObjectMgr.h:1571
bool AddGameTele(GameTele &data)
std::vector< std::string > ScriptNameContainer
Definition ObjectMgr.h:736
static bool CheckDeclinedNames(const std::wstring &w_ownname, DeclinedName const &names)
const char * GetScriptName(uint32 id) const
Definition ObjectMgr.h:1322
void LoadFactionChangeAchievements()
static PetNameInvalidReason CheckPetName(std::string const &name)
static void AddLocaleString(std::string const &s, LocaleConstant locale, StringVector &data)
static uint32 ChooseDisplayId(CreatureTemplate const *cinfo, CreatureData const *data=NULL)
std::pair< ExclusiveQuestGroups::const_iterator, ExclusiveQuestGroups::const_iterator > ExclusiveQuestGroupsBounds
Definition ObjectMgr.h:1125
TerrainPhaseInfo _terrainMapDefaultStore
Definition ObjectMgr.h:1526
QuestPOIVector const * GetQuestPOIVector(uint32 questId)
Definition ObjectMgr.h:890
CharacterConversionMap FactionChangeReputation
Definition ObjectMgr.h:1362
uint64 BattlePetGetNewId()
SpellScriptsBounds GetSpellScriptsBounds(uint32 spellId)
ExclusiveQuestGroups mExclusiveQuestGroups
Definition ObjectMgr.h:1127
DungeonEncounterList const * GetDungeonEncounterList(uint32 mapId, DifficultyID difficulty)
Definition ObjectMgr.h:900
std::map< uint32, PetLevelInfo * > PetLevelInfoContainer
Definition ObjectMgr.h:1548
CellObjectGuids const & GetCellObjectGuids(uint16 mapid, uint8 spawnMode, uint32 cell_id)
Definition ObjectMgr.h:1142
void AddGameobjectToGrid(uint32 guid, GameObjectData const *data)
void LoadBattlePetBreedData()
void LoadFactionChangeReputations()
uint32 _mailId
Definition ObjectMgr.h:1452
static ResponseCodes CheckPlayerName(std::string const &name, bool create=false)
void LoadPetNumber()
void AddCreatureToGrid(uint32 guid, CreatureData const *data)
UNORDERED_MAP< uint32, ReputationOnKillEntry > RepOnKillContainer
Definition ObjectMgr.h:731
GameObjectTemplateContainer _gameObjectTemplateStore
Definition ObjectMgr.h:1580
void LoadReputationSpilloverTemplate()
uint32 GetPlayerAccountIdByPlayerName(std::string const &name) const
void LoadExplorationBaseXP()
void LoadFishingBaseSkillLevel()
std::vector< TempSummonData > const * GetSummonGroup(uint32 summonerId, SummonerType summonerType, uint8 group) const
Definition ObjectMgr.h:1161
std::set< uint32 > _hasDifficultyEntries[4 - 1]
Definition ObjectMgr.h:1601
uint8 BattlePetGetRandomQuality(uint32 speciesId) const
void LoadPetLevelInfo()
uint64 GenerateVoidStorageItemId()
void GetPlayerClassLevelInfo(uint32 class_, uint8 level, uint32 &baseHP, uint32 &baseMana) const
UNORDERED_MAP< uint32, RepSpilloverTemplate > RepSpilloverTemplateContainer
Definition ObjectMgr.h:732
void LoadArchaeologyFindInfo()
void GetPlayerLevelInfo(uint32 race, uint32 class_, uint8 level, PlayerLevelInfo *info) const
bool GetPlayerNameByGUID(uint64 guid, std::string &name) const
PhaseInfo _phases
Definition ObjectMgr.h:1528
bool IsGameObjectForQuests(uint32 entry) const
Definition ObjectMgr.h:818
EquipmentInfo const * GetEquipmentInfo(uint32 entry, int8 &id)
UNORDERED_MAP< uint32, TavernRestArea > TavernRestAreaContainer
Definition ObjectMgr.h:1475
void LoadLinkedRespawn()
void LoadEquipmentTemplates()
void LoadGossipMenu()
PointOfInterestLocale const * GetPointOfInterestLocale(uint32 poi_id) const
Definition ObjectMgr.h:1226
bool QuestObjectiveExists(uint32 objectiveId) const
void DeleteCreatureData(uint32 guid)
void RemoveGameobjectFromGrid(uint32 guid, GameObjectData const *data)
QuestRelationsReverse _creatureQuestInvolvedRelationsReverse
Definition ObjectMgr.h:1503
ItemTemplateContainer _itemTemplateStore
Definition ObjectMgr.h:1584
void LoadQuestStartersAndEnders()
Definition ObjectMgr.h:912
ScriptNameContainer & GetScriptNames()
Definition ObjectMgr.h:1321
UNORDERED_MAP< uint32, PointOfInterest > PointOfInterestContainer
Definition ObjectMgr.h:734
GameObjectDataContainer _gameObjectDataStore
Definition ObjectMgr.h:1578
void LoadGraveyardZones()
uint32 GeneratePetNumber()
GossipMenusContainer _gossipMenusStore
Definition ObjectMgr.h:1492
uint32 GetQuestObjectiveQuestId(uint32 objectiveId) const
uint32 GetNearestTaxiNode(float x, float y, float z, uint32 mapid, uint32 team)
void LoadTerrainWorldMaps()
ResearchDigsiteList const * GetResearchDigsitesForContinent(uint32 mapId) const
Definition ObjectMgr.h:1404
void LoadPlayerInfo()
void LoadGossipMenuItemsLocales()
VehicleAccessoryContainer _vehicleTemplateAccessoryStore
Definition ObjectMgr.h:1517
void LoadQuests()
CreatureLocaleContainer _creatureLocaleStore
Definition ObjectMgr.h:1577
void CheckCreatureTemplate(CreatureTemplate const *cInfo)
TerrainPhaseInfo & GetDefaultTerrainSwapStoreForLoading()
Definition ObjectMgr.h:1091
std::map< uint32, uint32 > CharacterConversionMap
Definition ObjectMgr.h:738
LocaleConstant GetDBCLocaleIndex() const
Definition ObjectMgr.h:1251
TerrainPhaseInfo _terrainPhaseInfoStore
Definition ObjectMgr.h:1525
void LoadHotfixData()
TerrainPhaseInfo & GetPhaseTerrainSwapStoreForLoading()
Definition ObjectMgr.h:1090
SkyFireStringLocale const * GetSkyFireStringLocale(int32 entry) const
Definition ObjectMgr.h:1243
SpellClickInfoMapBounds GetSpellClickInfoMapBounds(uint32 creature_id) const
Definition ObjectMgr.h:1325
void LoadPlayerCreateItemsData()
uint8 BattlePetGetRandomBreed(uint32 speciesId) const
void LoadGameTele()
PointOfInterestLocaleContainer _pointOfInterestLocaleStore
Definition ObjectMgr.h:1591
InstanceTemplateContainer _instanceTemplateStore
Definition ObjectMgr.h:1523
void DeleteGOData(uint32 guid)
void LoadTerrainSwapDefaults()
void LoadQuestLocales()
void AddCorpseCellData(uint32 mapid, uint32 cellid, uint32 player_guid, uint32 instance)
void AddSpellToTrainer(uint32 entry, uint32 spell, uint32 spellCost, uint32 reqSkill, uint32 reqSkillValue, uint32 reqLevel)
QuestRelations _goQuestInvolvedRelations
Definition ObjectMgr.h:1499
void LoadNPCSpellClickSpells()
void LoadCorpses()
QuestAreaTriggerContainer _questAreaTriggerStore
Definition ObjectMgr.h:1478
CreatureData & NewOrExistCreatureData(uint32 guid)
Definition ObjectMgr.h:1176
void LoadQuestObjectiveLocales()
FishingBaseSkillContainer _fishingBaseForAreaStore
Definition ObjectMgr.h:1563
UNORDERED_MAP< uint32, GossipText > GossipTextContainer
Definition ObjectMgr.h:1472
QuestRelationBounds GetGOQuestRelationBounds(uint32 go_entry)
Definition ObjectMgr.h:933
RepRewardRate const * GetRepRewardRate(uint32 factionId) const
Definition ObjectMgr.h:854
AreaTriggerContainer _areaTriggerStore
Definition ObjectMgr.h:1483
QuestRelations * GetGOQuestRelationMap()
Definition ObjectMgr.h:928
uint32 _hiCharGuid
Definition ObjectMgr.h:1457
UNORDERED_MAP< uint16, BattleBetBreedSet > BattlePetBreedXSpeciesMap
Definition ObjectMgr.h:1531
CreatureLinkedRespawnType
Definition ObjectMgr.h:1604
@ CREATURE_TO_CREATURE
Definition ObjectMgr.h:1605
MailLevelReward const * GetMailLevelReward(uint32 level, uint32 raceMask)
Definition ObjectMgr.h:1129
uint32 _hiItemGuid
Definition ObjectMgr.h:1461
uint32 AddGOData(uint32 entry, uint32 map, float x, float y, float z, float o, uint32 spawntimedelay=0, float rotation0=0, float rotation1=0, float rotation2=0, float rotation3=0)
void LoadAccessRequirements()
MapObjectGuids _mapObjectGuidsStore
Definition ObjectMgr.h:1569
CreatureAddonContainer _creatureAddonStore
Definition ObjectMgr.h:1573
ArchaeologyFindContainer _archaeologyFindStore
Definition ObjectMgr.h:1613
bool IsValidPlayerCreateClass(uint32 currentClass)
PageTextLocale const * GetPageTextLocale(uint32 entry) const
Definition ObjectMgr.h:1214
GraveyardOrientationContainer _graveyardOrientations
Definition ObjectMgr.h:1598
ArchaeologyFindInfo const * GetRandomArchaeologyFindForDigsite(uint32 digsiteId)
Definition ObjectMgr.h:1426
PetLevelInfoContainer _petInfoStore
Definition ObjectMgr.h:1550
GameObjectForQuestContainer _gameObjectForQuestStore
Definition ObjectMgr.h:1481
MailLevelRewardContainer _mailLevelRewardStore
Definition ObjectMgr.h:1544
LocaleConstant DBCLocaleIndex
Definition ObjectMgr.h:1520
AreaTriggerStruct const * GetGoBackTrigger(uint32 Map) const
std::map< uint32, uint32 > BaseXPContainer
Definition ObjectMgr.h:1559
void LoadVehicleTemplateAccessories()
Player * GetPlayerByLowGUID(uint32 lowguid) const
QuestRelationReverseBounds GetGOQuestInvolvedRelationReverseBounds(uint32 questId)
Definition ObjectMgr.h:943
NpcTextLocaleContainer _npcTextLocaleStore
Definition ObjectMgr.h:1587
VendorItemData const * GetNpcVendorItemList(uint32 entry) const
Definition ObjectMgr.h:1298
PhaseInfo const & GetAreaPhases() const
Definition ObjectMgr.h:1083
GameObjectTemplateContainer const * GetGameObjectTemplates() const
Definition ObjectMgr.h:743
HalfNameContainer _petHalfName0
Definition ObjectMgr.h:1566
void LoadGameObjectLocales()
void LoadAreaPhases()
ResearchProjectRequirementContainer _researchProjectRequirementStore
Definition ObjectMgr.h:1614
std::map< uint32, StringVector > HalfNameContainer
Definition ObjectMgr.h:1565
void LoadTempSummons()
UNORDERED_MAP< uint16, BattlePetQualitySet > BattlePetQualityXSpeciesMap
Definition ObjectMgr.h:1533
void PlayerCreateInfoAddItemHelper(uint32 race_, uint32 class_, uint32 itemId, int32 count)
PageText const * GetPageText(uint32 pageEntry)
uint32 _hiCorpseGuid
Definition ObjectMgr.h:1464
void LoadCreatureTemplateAddons()
void LoadItemTemplates()
ItemTemplateContainer const * GetItemTemplateStore() const
Definition ObjectMgr.h:758
bool RemoveVendorItem(uint32 entry, uint32 item, uint8 type, bool persist=true)
QuestMap _questTemplates
Definition ObjectMgr.h:1469
CharacterConversionMap FactionChangeSpells
Definition ObjectMgr.h:1363
uint32 GetBaseXP(uint8 level)
bool IsValidPlayerCreateRace(uint32 currentRace)
void LoadPetNames()
std::vector< PhaseInfoStruct > const * GetDefaultTerrainSwaps(uint32 mapid) const
Definition ObjectMgr.h:1067
CharacterConversionMap FactionChangeItems
Definition ObjectMgr.h:1360
void LoadBattlePetItemToSpeciesData()
QuestMap const & GetQuestTemplates() const
Definition ObjectMgr.h:800
uint32 _hiMoTransGuid
Definition ObjectMgr.h:1466
GossipMenuItemsLocaleContainer _gossipMenuItemsLocaleStore
Definition ObjectMgr.h:1590
CreatureModelInfo const * GetCreatureModelInfo(uint32 modelId)
BaseXPContainer _baseXPTable
Definition ObjectMgr.h:1560
void LoadQuestPOI()
GossipMenusMapBoundsNonConst GetGossipMenusMapBoundsNonConst(uint32 uiMenuId)
Definition ObjectMgr.h:1335
void LoadTavernAreaTriggers()
void LoadReputationRewardRate()
AreaTriggerScriptContainer _areaTriggerScriptStore
Definition ObjectMgr.h:1484
QuestRelations _creatureQuestRelations
Definition ObjectMgr.h:1501
QuestLocaleContainer _questLocaleStore
Definition ObjectMgr.h:1586
std::set< uint8 > BattleBetBreedSet
Definition ObjectMgr.h:1530
uint32 _hiGoGuid
Definition ObjectMgr.h:1462
SceneTemplate const * GetSceneTemplate(uint32 sceneId) const
Quest const * GetQuestTemplate(uint32 quest_id) const
Definition ObjectMgr.h:794
void LoadPlayerCreateLevelStatsData()
DungeonEncounterContainer _dungeonEncounterStore
Definition ObjectMgr.h:1486
PhaseInfo & GetAreaPhasesForLoading()
Definition ObjectMgr.h:1092
BattlePetBreedXSpeciesMap sBattlePetBreedXSpeciesStore
Definition ObjectMgr.h:1535
void LoadGameobjectQuestStarters()
void LoadScripts(ScriptsType type)
void LoadGossipText()
RepOnKillContainer _repOnKillStore
Definition ObjectMgr.h:1489
void LoadGameObjectForQuests()
ItemLocale const * GetItemLocale(uint32 entry) const
Definition ObjectMgr.h:1196
AreaTriggerStruct const * GetMapEntranceTrigger(uint32 Map) const
void LoadFactionChangeTitles()
std::vector< PhaseInfoStruct > * GetPhasesForAreaForLoading(uint32 area)
Definition ObjectMgr.h:1085
QuestObjectiveLocaleContainer m_questObjectiveLocaleStore
Definition ObjectMgr.h:1592
void LoadQuestObjectives()
HotfixData const & GetHotfixData() const
Definition ObjectMgr.h:1374
CreatureModelInfo const * GetCreatureModelRandomGender(uint32 *displayID)
int32 GetBaseReputationOf(FactionEntry const *factionEntry, uint8 race, uint8 playerClass)
uint64 _equipmentSetGuid
Definition ObjectMgr.h:1450
RepSpilloverTemplateContainer _repSpilloverTemplateStore
Definition ObjectMgr.h:1490
uint32 GetPlayerTeamByGUID(uint64 guid) const
void LoadAreaTriggerScripts()
void ReturnOrDeleteOldMails(bool serverUp)
QuestRelationBounds GetCreatureQuestRelationBounds(uint32 creature_entry)
Definition ObjectMgr.h:953
QuestRelationBounds GetCreatureQuestInvolvedRelationBounds(uint32 creature_entry)
Definition ObjectMgr.h:958
bool IsReservedName(std::string const &name) const
void LoadTerrainPhaseInfo()
static bool IsValidCharterName(std::string const &name)
std::multimap< int32, uint32 > ExclusiveQuestGroups
Definition ObjectMgr.h:1124
void LoadItemLocales()
void LoadWaypointScripts()
CreatureModelContainer _creatureModelStore
Definition ObjectMgr.h:1572
bool DeleteGameTele(std::string const &name)
LinkedRespawnContainer _linkedRespawnStore
Definition ObjectMgr.h:1576
CreatureAddon const * GetCreatureTemplateAddon(uint32 entry)
UNORDERED_MAP< uint32, AccessRequirement * > AccessRequirementContainer
Definition ObjectMgr.h:728
std::vector< uint32 > PlayerXPperLevel
Definition ObjectMgr.h:1556
uint64 GenerateEquipmentSetGuid()
GameObjectData & NewGOData(uint32 guid)
Definition ObjectMgr.h:1240
ResearchDigsiteInfo const * GetResearchDigsiteInfo(uint32 digsiteId) const
Definition ObjectMgr.h:1394
uint32 GetQuestForAreaTrigger(uint32 Trigger_ID) const
Definition ObjectMgr.h:802
GraveYardContainer GraveYardStore
Definition ObjectMgr.h:1350
bool SetCreatureLinkedRespawn(uint32 guid, uint32 linkedGuid)
void LoadPlayerCreateActionData()
uint32 _auctionId
Definition ObjectMgr.h:1449
uint32 _hiDoGuid
Definition ObjectMgr.h:1463
void GetTaxiPath(uint32 source, uint32 destination, uint32 &path, uint32 &cost)
static void ChooseCreatureFlags(CreatureTemplate const *cinfo, uint32 &npcflag, uint32 &unit_flags, uint32 &dynamicflags, CreatureData const *data=NULL)
void LoadInstanceEncounters()
InstanceTemplate const * GetInstanceTemplate(uint32 mapId)
TerrainUIPhaseInfo _terrainWorldMapStore
Definition ObjectMgr.h:1527
GossipMenusMapBounds GetGossipMenusMapBounds(uint32 uiMenuId) const
Definition ObjectMgr.h:1330
uint32 m_battlePetId
Definition ObjectMgr.h:1467
QuestRelations * GetCreatureQuestRelationMap()
Definition ObjectMgr.h:948
GameObjectLocaleContainer _gameObjectLocaleStore
Definition ObjectMgr.h:1579
uint32 _itemTextId
Definition ObjectMgr.h:1451
void LoadBattlePetQualityData()
void LoadCreatureQuestStarters()
const char * GetSkyFireString(int32 entry, LocaleConstant locale_idx) const
GameTele const * GetGameTele(uint32 id) const
Definition ObjectMgr.h:1277
void CheckScripts(ScriptsType type, std::set< int32 > &ids)
void LoadItemTemplateAddon()
AccessRequirement const * GetAccessRequirement(uint32 mapid, DifficultyID difficulty) const
Definition ObjectMgr.h:840
PlayerXPperLevel _playerXPperLevel
Definition ObjectMgr.h:1557
CacheVendorItemContainer _cacheVendorItemStore
Definition ObjectMgr.h:1594
uint64 GetLinkedRespawnGuid(uint64 guid) const
Definition ObjectMgr.h:1178
QuestRelationsReverse _goQuestInvolvedRelationsReverse
Definition ObjectMgr.h:1500
void LoadSpellScriptNames()
UNORDERED_MAP< uint32, Quest * > QuestMap
Definition ObjectMgr.h:722
void LoadMailLevelRewards()
void AddVendorItem(uint32 entry, uint32 item, int32 maxcount, uint32 incrtime, uint32 extendedCost, uint8 type, bool persist=true)
void BuildPlayerLevelInfo(uint8 race, uint8 class_, uint8 level, PlayerLevelInfo *plinfo) const
std::set< uint32 > TavernAreaTriggerContainer
Definition ObjectMgr.h:1474
void LoadDbScriptStrings()
PointOfInterestContainer _pointsOfInterestStore
Definition ObjectMgr.h:1494
uint32 _hiPetNumber
Definition ObjectMgr.h:1453
static void GetLocaleString(const StringVector &data, int loc_idx, std::string &value)
Definition ObjectMgr.h:1353
void LoadGameobjects()
CreatureData const * GetCreatureData(uint32 guid) const
Definition ObjectMgr.h:1170
ArchaeologyFindInfo const * GetArchaeologyFindInfo(uint32 findGUID, uint32 digsiteId)
Definition ObjectMgr.h:1413
void LoadPointsOfInterest()
void LoadFactionChangeQuests()
RepRewardRateContainer _repRewardRateStore
Definition ObjectMgr.h:1488
std::vector< PhaseInfoStruct > const * GetPhaseTerrainSwaps(uint32 phaseid) const
Definition ObjectMgr.h:1062
TavernRestArea const * GetTavernRestAreaAtPosition(uint32 mapId, float x, float y, float z) const
CharacterConversionMap FactionChangeTitles
Definition ObjectMgr.h:1364
uint32 GenerateAuctionID()
void LoadPlayerCreateSpellsData()
std::string GeneratePetName(uint32 entry)
GraveYardData const * FindGraveYardData(uint32 id, uint32 zone)
void LoadPointOfInterestLocales()
void LoadQuestObjectiveVisualEffects()
bool IsInTavernRestArea(TavernRestArea const &restArea, uint32 mapId, float x, float y, float z, float padding=0.0f) const
ResearchProjectRequirements const * GetResearchProjectRequirements(uint32 projectId) const
Definition ObjectMgr.h:1438
PageTextContainer _pageTextStore
Definition ObjectMgr.h:1522
bool MoveCreData(uint32 guid, uint32 map, const Position &pos)
bool IsTavernAreaTrigger(uint32 Trigger_ID) const
Definition ObjectMgr.h:810
void LoadGossipMenuItems()
void LoadResearchProjectRequirements()
uint32 GenerateMailID()
ItemLocaleContainer _itemLocaleStore
Definition ObjectMgr.h:1585
void LoadVehicleAccessories()
bool IsVendorItemValid(uint32 vendor_entry, uint32 id, int32 maxcount, uint32 ptime, uint32 ExtendedCost, uint8 type, Player *player=NULL, std::set< uint32 > *skip_vendors=NULL, uint32 ORnpcflag=0) const
void LoadVendors()
void LoadCreatureModelInfo()
std::vector< PhaseInfoStruct > const * GetPhasesForArea(uint32 area) const
Definition ObjectMgr.h:1077
GameTeleContainer const & GetGameTeleMap() const
Definition ObjectMgr.h:1285
void SetHighestGuids()
CharacterConversionMap FactionChangeQuests
Definition ObjectMgr.h:1361
void LoadReservedPlayersNames()
UNORDERED_MAP< uint32, uint32 > AreaTriggerScriptContainer
Definition ObjectMgr.h:726
float const * GetGraveyardOrientation(uint32 id) const
Definition ObjectMgr.h:1307
QuestPOIContainer _questPOIStore
Definition ObjectMgr.h:1496
RepSpilloverTemplate const * GetRepSpilloverTemplate(uint32 factionId) const
Definition ObjectMgr.h:873
CreatureTemplate const * GetCreatureTemplate(uint32 entry)
SpellClickInfoContainer _spellClickInfoStore
Definition ObjectMgr.h:1513
ReservedNamesContainer _reservedNamesStore
Definition ObjectMgr.h:1507
uint32 AddCreData(uint32 entry, uint32 team, uint32 map, float x, float y, float z, float o, uint32 spawntimedelay=0)
void LoadPlayerCreateXpData()
GossipMenuItemsContainer _gossipMenuItemsStore
Definition ObjectMgr.h:1493
uint64 _voidItemId
Definition ObjectMgr.h:1454
void LoadQuestRelationsHelper(QuestRelations &map, std::string const &table, bool starter, bool go)
GossipMenuItemsLocale const * GetGossipMenuItemsLocale(uint32 entry) const
Definition ObjectMgr.h:1220
void LoadCreatureAddons()
void LoadCreatures()
QuestObjectiveLookupMap m_questObjectiveLookup
Definition ObjectMgr.h:1470
void LoadTrainerSpell()
void SetDBCLocaleIndex(LocaleConstant locale)
Definition ObjectMgr.h:1252
TavernRestArea const * GetTavernRestArea(uint32 triggerId) const
Definition Unit.h:1367
C::value_type const & SelectRandomContainerElement(C const &container)
Definition Containers.h:48
float target_Orientation
Definition ObjectMgr.h:410
CellGuidSet gameobjects
Definition ObjectMgr.h:418
CellGuidSet creatures
Definition ObjectMgr.h:417
CellCorpseSet corpses
Definition ObjectMgr.h:419
DungeonEncounterEntry const * dbcEntry
Definition ObjectMgr.h:648
DungeonEncounter(DungeonEncounterEntry const *_dbcEntry, EncounterCreditType _creditType, uint32 _creditEntry, uint32 _lastEncounterDungeon)
Definition ObjectMgr.h:645
EncounterCreditType creditType
Definition ObjectMgr.h:649
uint32 lastEncounterDungeon
Definition ObjectMgr.h:651
float position_y
Definition ObjectMgr.h:127
float orientation
Definition ObjectMgr.h:129
float position_x
Definition ObjectMgr.h:126
uint32 mapId
Definition ObjectMgr.h:130
std::string name
Definition ObjectMgr.h:131
float position_z
Definition ObjectMgr.h:128
std::wstring wnameLow
Definition ObjectMgr.h:132
uint32 BoxBroadcastTextID
Definition ObjectMgr.h:540
std::string OptionText
Definition ObjectMgr.h:531
uint32 ActionMenuID
Definition ObjectMgr.h:535
uint32 ActionPoiID
Definition ObjectMgr.h:536
ConditionList Conditions
Definition ObjectMgr.h:541
uint32 OptionNpcflag
Definition ObjectMgr.h:534
std::string BoxText
Definition ObjectMgr.h:539
uint32 OptionType
Definition ObjectMgr.h:533
uint32 OptionBroadcastTextID
Definition ObjectMgr.h:532
uint32 entry
Definition ObjectMgr.h:546
ConditionList conditions
Definition ObjectMgr.h:548
uint32 text_id
Definition ObjectMgr.h:547
uint32 safeLocId
Definition ObjectMgr.h:597
uint32 Timestamp
Definition ObjectMgr.h:661
uint32 Entry
Definition ObjectMgr.h:662
uint32 Type
Definition ObjectMgr.h:660
Language lang_id
Definition ObjectMgr.h:629
uint32 skill_id
Definition ObjectMgr.h:631
uint32 spell_id
Definition ObjectMgr.h:630
uint32 senderEntry
Definition ObjectMgr.h:477
MailLevelReward(uint32 _raceMask, uint32 _mailTemplateId, uint32 _senderEntry)
Definition ObjectMgr.h:473
uint32 mailTemplateId
Definition ObjectMgr.h:476
uint16 NextPage
Definition ObjectMgr.h:52
std::string Text
Definition ObjectMgr.h:51
uint16 health
Definition ObjectMgr.h:465
uint16 armor
Definition ObjectMgr.h:467
uint16 stats[MAX_STATS]
Definition ObjectMgr.h:464
uint16 mana
Definition ObjectMgr.h:466
ConditionList Conditions
Definition ObjectMgr.h:702
std::string icon_name
Definition ObjectMgr.h:523
uint32 FloorId
Definition ObjectMgr.h:573
uint32 Unk3
Definition ObjectMgr.h:574
QuestPOI(uint32 id, int32 objIndex, uint32 mapId, uint32 areaId, uint32 floorId, uint32 unk3, uint32 unk4)
Definition ObjectMgr.h:579
uint32 MapId
Definition ObjectMgr.h:571
uint32 Unk4
Definition ObjectMgr.h:575
uint32 Id
Definition ObjectMgr.h:569
int32 ObjectiveIndex
Definition ObjectMgr.h:570
uint32 AreaId
Definition ObjectMgr.h:572
std::vector< QuestPOIPoint > points
Definition ObjectMgr.h:576
QuestPOIPoint(int32 _x, int32 _y)
Definition ObjectMgr.h:564
float questMonthlyRate
Definition ObjectMgr.h:489
float questWeeklyRate
Definition ObjectMgr.h:488
float questDailyRate
Definition ObjectMgr.h:487
float questRepeatableRate
Definition ObjectMgr.h:490
float spellRate
Definition ObjectMgr.h:492
float questRate
Definition ObjectMgr.h:486
float creatureRate
Definition ObjectMgr.h:491
uint32 faction_rank[MAX_SPILLOVER_FACTIONS]
Definition ObjectMgr.h:512
uint32 faction[MAX_SPILLOVER_FACTIONS]
Definition ObjectMgr.h:510
float faction_rate[MAX_SPILLOVER_FACTIONS]
Definition ObjectMgr.h:511
Definition ObjectMgr.h:496
bool IsTeamAward2
Definition ObjectMgr.h:504
bool IsTeamAward1
Definition ObjectMgr.h:503
uint32 ReputationMaxCap1
Definition ObjectMgr.h:499
uint32 RepFaction1
Definition ObjectMgr.h:497
uint32 RepFaction2
Definition ObjectMgr.h:498
bool TeamDependent
Definition ObjectMgr.h:505
int32 RepValue1
Definition ObjectMgr.h:500
uint32 ReputationMaxCap2
Definition ObjectMgr.h:501
int32 RepValue2
Definition ObjectMgr.h:502
uint32 requiredSkillValue
Definition ObjectMgr.h:672
uint32 SceneId
Definition ObjectMgr.h:587
uint32 PlaybackFlags
Definition ObjectMgr.h:588
uint32 ScriptId
Definition ObjectMgr.h:590
uint32 ScenePackageId
Definition ObjectMgr.h:589
float Orientation
Definition ObjectMgr.h:252
uint32 Flags
Definition ObjectMgr.h:209
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@130361027372270375075175021215151356143001013055 Kill
float Unused3
Definition ObjectMgr.h:352
uint32 FieldID
Definition ObjectMgr.h:221
ScriptsType type
Definition ObjectMgr.h:193
uint32 QuestID
Definition ObjectMgr.h:257
float SearchRadius
Definition ObjectMgr.h:306
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@235213206037260262323130355352141154322352336256 KillCredit
int32 TextID
Definition ObjectMgr.h:210
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@323144237034231264254170147314213276360375006374 RespawnGameobject
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@366202063362232017203072231044323334343276266221 CreateItem
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@215362176107272335311131263361174353005102016155 QuestExplored
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@060313056375165064134111275066130320355250202151 TempSummonCreature
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@051127012334050237002325262055013174250146206153 ToggleDoor
float DestX
Definition ObjectMgr.h:231
uint32 ItemEntry
Definition ObjectMgr.h:317
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@344032077141363017062320302015232153251270314326 MoveTo
uint32 ChatType
Definition ObjectMgr.h:208
uint32 SoundID
Definition ObjectMgr.h:311
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@114161360076040133161002267003164201214357057100 FieldSet
uint32 id
Definition ObjectMgr.h:194
uint32 delay
Definition ObjectMgr.h:195
float fData[4]
Definition ObjectMgr.h:203
uint32 ScriptID
Definition ObjectMgr.h:335
uint32 ModelID
Definition ObjectMgr.h:365
uint32 FieldValue
Definition ObjectMgr.h:222
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@056312253106117114176351200255000030100172357051 Raw
float PosY
Definition ObjectMgr.h:280
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@337031371172363341310074346110326367135322374244 CallScript
ScriptCommands command
Definition ObjectMgr.h:196
uint32 Unused1
Definition ObjectMgr.h:227
float DestY
Definition ObjectMgr.h:232
uint32 PathID
Definition ObjectMgr.h:328
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@046004315213250210214200301212324111357101326175 FlagToggle
uint32 MapID
Definition ObjectMgr.h:245
uint32 IsRepeatable
Definition ObjectMgr.h:329
uint32 nData[3]
Definition ObjectMgr.h:202
float Unused4
Definition ObjectMgr.h:353
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@331116102107327262357341352322171111244332342004 LoadPath
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@310207036336307321205127162152160034150247215165 RemoveAura
int32 RemoveCorpse
Definition ObjectMgr.h:343
float PosZ
Definition ObjectMgr.h:281
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@263054102236002116002177012326305077362241107373 PlayMovie
uint32 ScriptType
Definition ObjectMgr.h:336
uint32 ResetDelay
Definition ObjectMgr.h:289
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@311217305261140163363255355271102376114316044147 PlaySound
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@340160313205203126365171223166355241073242151073 CastSpell
uint32 DespawnDelay
Definition ObjectMgr.h:270
float PosX
Definition ObjectMgr.h:279
uint32 TravelTime
Definition ObjectMgr.h:228
uint32 Distance
Definition ObjectMgr.h:258
uint32 SpellID
Definition ObjectMgr.h:296
std::string GetDebugInfo() const
float DestZ
Definition ObjectMgr.h:233
float Unused5
Definition ObjectMgr.h:354
uint32 MovieID
Definition ObjectMgr.h:372
int32 Unused2
Definition ObjectMgr.h:229
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@203261325337225075157146047106312017011372377163 TeleportTo
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@264374040335366155120321054324331165306344366303 Talk
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@162360347056214232002103360322344073177375375370 Equip
uint32 EquipmentID
Definition ObjectMgr.h:360
uint32 GOGuid
Definition ObjectMgr.h:269
uint32 CreatureEntry
Definition ObjectMgr.h:263
uint32 Amount
Definition ObjectMgr.h:318
uint32 EmoteID
Definition ObjectMgr.h:215
struct ScriptInfo::@073000116166017043214113002234263016340307140354::@210061205317137213243122261357357070350257132313 DespawnSelf
StringVector Content
Definition ObjectMgr.h:437
bool IsFitToRequirements(Unit const *clicker, Unit const *clickee) const
SpellClickUserTypes userType
Definition ObjectMgr.h:395
float BoxOrientation
Definition ObjectMgr.h:148
uint32 TriggerId
Definition ObjectMgr.h:139
Key for storing temp summon data in TempSummonDataContainer.
Definition ObjectMgr.h:57
uint32 _summonerEntry
Summoner's entry.
Definition ObjectMgr.h:70
uint8 _summonGroup
Summon's group id.
Definition ObjectMgr.h:72
SummonerType _summonerType
Summoner's type, see SummonerType for available types.
Definition ObjectMgr.h:71
TempSummonGroupKey(uint32 summonerEntry, SummonerType summonerType, uint8 group)
Definition ObjectMgr.h:58
bool operator<(TempSummonGroupKey const &rhs) const
Definition ObjectMgr.h:63
const uint32 CreatureEntry[3]