Merge remote-tracking branch 'origin/master' into mmaps

This commit is contained in:
Nay
2012-09-11 01:13:41 +01:00
116 changed files with 623 additions and 453 deletions
@@ -0,0 +1,3 @@
UPDATE `game_event` SET `start_time`='2012-11-04 00:01:00' WHERE `eventEntry`=3; -- Darkmoon Faire - Terrokkar
UPDATE `game_event` SET `start_time`='2012-12-02 00:01:00' WHERE `eventEntry`=4; -- Darkmoon Faire - Elwynn
UPDATE `game_event` SET `start_time`='2012-10-07 00:01:00' WHERE `eventEntry`=5; -- Darkmoon Faire - Mulgore
@@ -0,0 +1 @@
UPDATE `quest_template` SET `OfferRewardText`="What!? If I knew that Pao'ka Swiftmountain was going to snoop around Highperch, I would have chained him to a totem! His father was reluctant allowing him to come with me to Thousand Needles. We came here to study the different creatures that inhabit these beautiful lands.$b$bI appreciate the help you have shown Pao'ka. I hope this covers any misfortunes this deed has cost you." WHERE `Id`=4770;
@@ -0,0 +1 @@
UPDATE `creature_text` SET `text`='Good news, everyone! I think I''ve perfected a plague that will destroy all life on Azeroth!' WHERE `entry`=36678 AND `groupid`=4 AND `id`=0;
@@ -0,0 +1,3 @@
-- Grark Lorkrub should be available only when Kill On Sight: High Ranking Dark Iron Officials is complete
UPDATE `quest_template` SET `NextQuestId`=4122 WHERE `Id`=4082;
UPDATE `quest_template` SET `PrevQuestId`=4082 WHERE `Id`=4122;
@@ -0,0 +1,2 @@
-- Fix some quest requirements
UPDATE `quest_template` SET `PrevQuestId`=3906 WHERE `Id` IN (3907,7201); -- Disharmony of Fire and The Last Element are available only, if Disharmony of Flame is completed
@@ -0,0 +1 @@
UPDATE `creature_template` SET `flags_extra`=`flags_extra`|256 WHERE `entry` IN (36897, 38138); -- Little Ooze
@@ -0,0 +1,2 @@
-- Vic's Keys drop chance ( http://old.wowhead.com/object=190778 ) by nelegalno
UPDATE `gameobject_loot_template` SET `ChanceOrQuestChance` = -100 WHERE `entry`=24861 AND `item`=39264;
@@ -0,0 +1,5 @@
-- Cast Armistice in front of the pavillions as well
DELETE FROM `spell_area` WHERE `spell`=64373 AND `area` IN (4676, 4677);
INSERT INTO `spell_area` (`spell`,`area`,`quest_start`,`quest_start_active`,`quest_end`,`aura_spell`,`racemask`,`gender`,`autocast`) VALUES
(64373,4676,0,0,0,0,0,2,1), -- Sunreaver Pavillion
(64373,4677,0,0,0,0,0,2,1); -- SIlver Covenant Pavillion
@@ -0,0 +1,4 @@
DELETE FROM creature_involvedrelation WHERE quest IN (25500, 25286);
INSERT INTO creature_involvedrelation (id, quest) VALUES
(39675, 25500),
(39675, 25286);
@@ -0,0 +1,111 @@
-- gossip assignation from sniff
UPDATE `creature_template` SET `gossip_menu_id`=4534 WHERE `entry`=3047; -- Archmage Shymm <Mage Trainer>
UPDATE `creature_template` SET `gossip_menu_id`=4536 WHERE `entry`=3048; -- Ursyn Ghull <Mage Trainer>
UPDATE `creature_template` SET `gossip_menu_id`=12670 WHERE `entry`=6328; -- Dannie Fizzwizzle <Demon Trainer>
UPDATE `creature_template` SET `gossip_menu_id`=12670 WHERE `entry`=6373; -- Dane Winslow <Demon Trainer>
UPDATE `creature_template` SET `gossip_menu_id`=12670 WHERE `entry`=6374; -- Cylina Darkheart <Demon Trainer>
UPDATE `creature_template` SET `gossip_menu_id`=1622 WHERE `entry`=8965; -- Shawn
UPDATE `creature_template` SET `gossip_menu_id`=4119 WHERE `entry`=11047; -- Kray <Apprentice Alchemist>
UPDATE `creature_template` SET `gossip_menu_id`=4266 WHERE `entry`=11051; -- Vhan <Apprentice Tailor>
UPDATE `creature_template` SET `gossip_menu_id`=4154 WHERE `entry`=11065; -- Thonys Pillarstone <Apprentice Enchanter>
UPDATE `creature_template` SET `gossip_menu_id`=4158 WHERE `entry`=11071; -- Mot Dawnstrider <Apprentice Enchanter>
UPDATE `creature_template` SET `gossip_menu_id`=4204 WHERE `entry`=11081; -- Faldron <Apprentice Leatherworker>
UPDATE `creature_template` SET `gossip_menu_id`=4181 WHERE `entry`=11083; -- Darianna <Apprentice Leatherworker>
UPDATE `creature_template` SET `gossip_menu_id`=4207 WHERE `entry`=11084; -- Tarn <Apprentice Leatherworker>
UPDATE `creature_template` SET `gossip_menu_id`=5142 WHERE `entry`=13442; -- Arch Druid Renferal
UPDATE `creature_template` SET `gossip_menu_id`=5141 WHERE `entry`=13443; -- Druid of the Grove
UPDATE `creature_template` SET `gossip_menu_id`=5081 WHERE `entry`=13447; -- Corporal Noreg Stormpike
UPDATE `creature_template` SET `gossip_menu_id`=5281 WHERE `entry`=13577; -- Stormpike Ram Rider Commander
UPDATE `creature_template` SET `gossip_menu_id`=7993 WHERE `entry`=15991; -- Lady Dena Kennedy
UPDATE `creature_template` SET `gossip_menu_id`=7471 WHERE `entry`=17421; -- Clopper Wizbang <Explorers' League>
UPDATE `creature_template` SET `gossip_menu_id`=7455 WHERE `entry`=17424; -- Anchorite Paetheus <First Aid Trainer>
UPDATE `creature_template` SET `gossip_menu_id`=7459 WHERE `entry`=17434; -- Morae <Herbalism Trainer>
UPDATE `creature_template` SET `gossip_menu_id`=7461 WHERE `entry`=17599; -- Aonar
UPDATE `creature_template` SET `gossip_menu_id`=7462 WHERE `entry`=17649; -- Kessel <Elekk Lord>
UPDATE `creature_template` SET `gossip_menu_id`=9821 WHERE `entry`=17666; -- Astur <Stable Master>
UPDATE `creature_template` SET `gossip_menu_id`=7463 WHERE `entry`=17676; -- Achelus
UPDATE `creature_template` SET `gossip_menu_id`=7464 WHERE `entry`=17703; -- Messenger Hermesius
UPDATE `creature_template` SET `gossip_menu_id`=8298 WHERE `entry`=17712; -- Captain Edward Hanes
UPDATE `creature_template` SET `gossip_menu_id`=7835 WHERE `entry`=17927; -- Scout Jorli
UPDATE `creature_template` SET `gossip_menu_id`=7738 WHERE `entry`=18252; -- Andarl
UPDATE `creature_template` SET `gossip_menu_id`=7753 WHERE `entry`=18387; -- Bertelm
UPDATE `creature_template` SET `gossip_menu_id`=7743 WHERE `entry`=18389; -- Thander
UPDATE `creature_template` SET `gossip_menu_id`=7752 WHERE `entry`=18390; -- Ros'eleth
UPDATE `creature_template` SET `gossip_menu_id`=7695 WHERE `entry`=18416; -- Huntress Kima
UPDATE `creature_template` SET `gossip_menu_id`=7698 WHERE `entry`=18459; -- Jenai Starwhisper
UPDATE `creature_template` SET `gossip_menu_id`=7745 WHERE `entry`=18704; -- Taela Everstride
UPDATE `creature_template` SET `gossip_menu_id`=7773 WHERE `entry`=18713; -- Lieutenant Gravelhammer
UPDATE `creature_template` SET `gossip_menu_id`=7814 WHERE `entry`=18745; -- Captain Auric Sunchaser
UPDATE `creature_template` SET `gossip_menu_id`=7833 WHERE `entry`=18804; -- Prospector Nachlan <Explorers' League>
UPDATE `creature_template` SET `gossip_menu_id`=7940 WHERE `entry`=19137; -- "Shotgun" Jones <Nesingwary Safari>
UPDATE `creature_template` SET `gossip_menu_id`=8433 WHERE `entry`=19340; -- Mi'irku Farstep <Portal Trainer>
UPDATE `creature_template` SET `gossip_menu_id`=7973 WHERE `entry`=19375; -- Eli Thunderstrike <Sky'ree's Keeper>
UPDATE `creature_template` SET `gossip_menu_id`=8251 WHERE `entry`=21151; -- Borgrim Stouthammer <Explorers' League>
UPDATE `creature_template` SET `gossip_menu_id`=8247 WHERE `entry`=21158; -- Commander Skyshadow
UPDATE `creature_template` SET `gossip_menu_id`=8252 WHERE `entry`=21197; -- Bronwyn Stouthammer <Explorers' League>
UPDATE `creature_template` SET `gossip_menu_id`=8566 WHERE `entry`=22832; -- Morthis Whisperwing <Druid of the Talon>
-- gossip from sniff
DELETE FROM `gossip_menu` WHERE (`entry`=1621 AND `text_id`=2273) OR (`entry`=1622 AND `text_id`=2276) OR (`entry`=4119 AND `text_id`=5040) OR (`entry`=4154 AND `text_id`=5184) OR (`entry`=4158 AND `text_id`=5196) OR (`entry`=4181 AND `text_id`=5273) OR (`entry`=4204 AND `text_id`=5325) OR (`entry`=4207 AND `text_id`=5340) OR (`entry`=4266 AND `text_id`=5428) OR (`entry`=4534 AND `text_id`=563) OR (`entry`=4536 AND `text_id`=563) OR (`entry`=5081 AND `text_id`=6288) OR (`entry`=5141 AND `text_id`=6173) OR (`entry`=5142 AND `text_id`=6174) OR (`entry`=5281 AND `text_id`=6313) OR (`entry`=7455 AND `text_id`=9029) OR (`entry`=7459 AND `text_id`=9034) OR (`entry`=7461 AND `text_id`=9037) OR (`entry`=7462 AND `text_id`=9041) OR (`entry`=7463 AND `text_id`=9042) OR (`entry`=7464 AND `text_id`=9043) OR (`entry`=7471 AND `text_id`=9054) OR (`entry`=7695 AND `text_id`=9389) OR (`entry`=7698 AND `text_id`=9393) OR (`entry`=7738 AND `text_id`=9471) OR (`entry`=7743 AND `text_id`=9481) OR (`entry`=7745 AND `text_id`=9484) OR (`entry`=7752 AND `text_id`=9492) OR (`entry`=7753 AND `text_id`=9493) OR (`entry`=7773 AND `text_id`=9521) OR (`entry`=7814 AND `text_id`=9566) OR (`entry`=7833 AND `text_id`=9586) OR (`entry`=7835 AND `text_id`=9591) OR (`entry`=7940 AND `text_id`=9733) OR (`entry`=7973 AND `text_id`=9805) OR (`entry`=7993 AND `text_id`=9845) OR (`entry`=8247 AND `text_id`=10264) OR (`entry`=8251 AND `text_id`=10270) OR (`entry`=8252 AND `text_id`=10271) OR (`entry`=8298 AND `text_id`=10352) OR (`entry`=8432 AND `text_id`=10538) OR (`entry`=8433 AND `text_id`=10291) OR (`entry`=8433 AND `text_id`=10292) OR (`entry`=8566 AND `text_id`=10735);
INSERT INTO `gossip_menu` (`entry`, `text_id`) VALUES
(1621, 2273), -- 8962
(1622, 2276), -- 8965
(4119, 5040), -- 11047
(4154, 5184), -- 11065
(4158, 5196), -- 11071
(4181, 5273), -- 11083
(4204, 5325), -- 11081
(4207, 5340), -- 11084
(4266, 5428), -- 11051
(4534, 563), -- 3047
(4536, 563), -- 3048
(5081, 6288), -- 13447
(5141, 6173), -- 13443
(5142, 6174), -- 13442
(5281, 6313), -- 13577
(7455, 9029), -- 17424
(7459, 9034), -- 17434
(7461, 9037), -- 17599
(7462, 9041), -- 17649
(7463, 9042), -- 17676
(7464, 9043), -- 17703
(7471, 9054), -- 17421
(7695, 9389), -- 18416
(7698, 9393), -- 18459
(7738, 9471), -- 18252
(7743, 9481), -- 18389
(7745, 9484), -- 18704
(7752, 9492), -- 18390
(7753, 9493), -- 18387
(7773, 9521), -- 18713
(7814, 9566), -- 18745
(7833, 9586), -- 18804
(7835, 9591), -- 17927
(7940, 9733), -- 19137
(7973, 9805), -- 19375
(7993, 9845), -- 15991
(8247, 10264), -- 21158
(8251, 10270), -- 21151
(8252, 10271), -- 21197
(8298, 10352), -- 17712
(8432, 10538), -- 21983
(8433, 10291), -- 19340
(8433, 10292), -- 19340
(8566, 10735); -- 22832
-- correct npc_flags for npc from sniff
UPDATE `creature_template` SET `npcflag`=0 WHERE `entry`=3210; -- Brave Proudsnout
UPDATE `creature_template` SET `npcflag`=0 WHERE `entry`=3211; -- Brave Lightninghorn
UPDATE `creature_template` SET `npcflag`=0 WHERE `entry`=3213; -- Brave Running Wolf
UPDATE `creature_template` SET `npcflag`=0 WHERE `entry`=3214; -- Brave Greathoof
UPDATE `creature_template` SET `npcflag`=0 WHERE `entry`=3502; -- Ratchet Bruiser
UPDATE `creature_template` SET `npcflag`=3 WHERE `entry`=21151; -- Borgrim Stouthammer <Explorers' League>
UPDATE `creature_template` SET `npcflag`=3 WHERE `entry`=21197; -- Bronwyn Stouthammer <Explorers' League>
UPDATE `creature_template` SET `npcflag`=2 WHERE `entry`=21469; -- Daranelle
-- Add condition
DELETE FROM `conditions` WHERE (`SourceTypeOrReferenceId`=14 AND `SourceGroup`=8433 AND `SourceEntry`=10291) OR (`SourceTypeOrReferenceId`=14 AND `SourceGroup`=8433 AND `SourceEntry`=10292) OR (`SourceTypeOrReferenceId`=14 AND `SourceGroup`=12670 AND `SourceEntry`=12549);
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
(14,8433,10291,0,0,15,0,128,0,0,1,0,'','Show gossip text if player is not a mage'),
(14,8433,10292,0,0,15,0,128,0,0,0,0,'','Show gossip text if player is a mage'),
(14,12670,12549,0,0,15,0,256,0,0,1,0,'','Show gossip text if player is not a Warlock');
@@ -0,0 +1,7 @@
-- Finding the Keymaster by nelegalno
UPDATE `quest_template` SET `SpecialFlags` = 0, `RequiredSpellCast1` = 0 WHERE `ID` = 10256;
DELETE FROM `event_scripts` WHERE id=12857;
INSERT INTO `event_scripts` (`id`,`delay`,`command`,`datalong`,`datalong2`,`dataint`,`x`,`y`,`z`,`o`) VALUES
(12857,0,10,19938,3000000,0,2248.43,2227.97,138.56,2.48121),
(12857,1,8,19938,1,0,0,0,0,0);
@@ -0,0 +1,4 @@
UPDATE `creature_template` SET `AIName` = 'SmartAI' WHERE `entry`=20243;
DELETE FROM `smart_scripts` WHERE `entryorguid`=20243 AND `id`=0 AND `source_type`=0;
INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES
(20243,0,0,0,8,0,100,0,256,0,0,0,19,0,0,0,0,0,0,1,0,0,0,0.0,0.0,0.0,0.0,"Scrapped Fel Reaver - On Spellhit - Remove - OOC Not attackable - flags");
@@ -0,0 +1,4 @@
UPDATE `creature_model_info` SET `modelid_other_gender`=4264 WHERE `modelid`=4261; -- Female orc grunt
UPDATE `creature_model_info` SET `modelid_other_gender`=4263 WHERE `modelid`=4262; -- Female tauren
UPDATE `creature_model_info` SET `modelid_other_gender`=4262 WHERE `modelid`=4263; -- Male tauren
UPDATE `creature_model_info` SET `modelid_other_gender`=4261 WHERE `modelid`=4264; -- Male orc grunt
+1 -1
View File
@@ -196,7 +196,7 @@ const AuthHandler table[] =
Patcher PatchesCache; Patcher PatchesCache;
// Constructor - set the N and g values for SRP6 // Constructor - set the N and g values for SRP6
AuthSocket::AuthSocket(RealmSocket& socket) : socket_(socket), pPatch(NULL) AuthSocket::AuthSocket(RealmSocket& socket) : pPatch(NULL), socket_(socket)
{ {
N.SetHexStr("894B645E89E1535BBDAD5B8B290650530801B18EBFBF5E8FAB3C82872A3E9BB7"); N.SetHexStr("894B645E89E1535BBDAD5B8B290650530801B18EBFBF5E8FAB3C82872A3E9BB7");
g.SetDword(7); g.SetDword(7);
@@ -35,7 +35,7 @@ namespace VMAP
{ {
VMAP_LOAD_RESULT_ERROR, VMAP_LOAD_RESULT_ERROR,
VMAP_LOAD_RESULT_OK, VMAP_LOAD_RESULT_OK,
VMAP_LOAD_RESULT_IGNORED, VMAP_LOAD_RESULT_IGNORED
}; };
#define VMAP_INVALID_HEIGHT -100000.0f // for check #define VMAP_INVALID_HEIGHT -100000.0f // for check
+1 -1
View File
@@ -125,7 +125,7 @@ namespace VMAP
} }
StaticMapTree::StaticMapTree(uint32 mapID, const std::string &basePath) StaticMapTree::StaticMapTree(uint32 mapID, const std::string &basePath)
: iMapID(mapID), iTreeValues(0), iBasePath(basePath), iIsTiled(false) : iMapID(mapID), iIsTiled(false), iTreeValues(0), iBasePath(basePath)
{ {
if (iBasePath.length() > 0 && iBasePath[iBasePath.length()-1] != '/' && iBasePath[iBasePath.length()-1] != '\\') if (iBasePath.length() > 0 && iBasePath[iBasePath.length()-1] != '/' && iBasePath[iBasePath.length()-1] != '\\')
{ {
+1 -1
View File
@@ -54,7 +54,7 @@ namespace VMAP
//================================================================= //=================================================================
TileAssembler::TileAssembler(const std::string& pSrcDirName, const std::string& pDestDirName) TileAssembler::TileAssembler(const std::string& pSrcDirName, const std::string& pDestDirName)
: iSrcDir(pSrcDirName), iDestDir(pDestDirName), iCurrentUniqueNameId(0), iFilterMethod(NULL) : iDestDir(pDestDirName), iSrcDir(pSrcDirName), iFilterMethod(NULL), iCurrentUniqueNameId(0)
{ {
//mkdir(iDestDir); //mkdir(iDestDir);
//init(); //init();
+1 -1
View File
@@ -63,7 +63,7 @@ namespace VMAP
class ModelInstance: public ModelSpawn class ModelInstance: public ModelSpawn
{ {
public: public:
ModelInstance(): iModel(0), iInvScale(0.0f) {} ModelInstance(): iInvScale(0.0f), iModel(0) {}
ModelInstance(const ModelSpawn &spawn, WorldModel* model); ModelInstance(const ModelSpawn &spawn, WorldModel* model);
void setUnloaded() { iModel = 0; } void setUnloaded() { iModel = 0; }
bool intersectRay(const G3D::Ray& pRay, float& pMaxDist, bool pStopAtFirstHit) const; bool intersectRay(const G3D::Ray& pRay, float& pMaxDist, bool pStopAtFirstHit) const;
+2 -2
View File
@@ -35,7 +35,7 @@ enum GeneralScriptTexts
EMOTE_GENERIC_FRENZY = -1000002, EMOTE_GENERIC_FRENZY = -1000002,
EMOTE_GENERIC_ENRAGED = -1000003, EMOTE_GENERIC_ENRAGED = -1000003,
EMOTE_GENERIC_BERSERK = -1000004, EMOTE_GENERIC_BERSERK = -1000004,
EMOTE_GENERIC_BERSERK_RAID = -1000005, // RaidBossEmote version of the previous one EMOTE_GENERIC_BERSERK_RAID = -1000005 // RaidBossEmote version of the previous one
}; };
//Selection method used by SelectTarget //Selection method used by SelectTarget
@@ -45,7 +45,7 @@ enum SelectAggroTarget
SELECT_TARGET_TOPAGGRO, //Selects targes from top aggro to bottom SELECT_TARGET_TOPAGGRO, //Selects targes from top aggro to bottom
SELECT_TARGET_BOTTOMAGGRO, //Selects targets from bottom aggro to top SELECT_TARGET_BOTTOMAGGRO, //Selects targets from bottom aggro to top
SELECT_TARGET_NEAREST, SELECT_TARGET_NEAREST,
SELECT_TARGET_FARTHEST, SELECT_TARGET_FARTHEST
}; };
// default predicate function to select target based on distance, player and/or aura criteria // default predicate function to select target based on distance, player and/or aura criteria
+2 -2
View File
@@ -45,7 +45,7 @@ enum SelectTargetType
SELECT_TARGET_SINGLE_FRIEND, //Only Single Friend SELECT_TARGET_SINGLE_FRIEND, //Only Single Friend
SELECT_TARGET_AOE_FRIEND, //Only AoE Friend SELECT_TARGET_AOE_FRIEND, //Only AoE Friend
SELECT_TARGET_ANY_FRIEND, //AoE or Single Friend SELECT_TARGET_ANY_FRIEND //AoE or Single Friend
}; };
//Spell Effects used by SelectSpell //Spell Effects used by SelectSpell
@@ -54,7 +54,7 @@ enum SelectEffect
SELECT_EFFECT_DONTCARE = 0, //All spell effects allowed SELECT_EFFECT_DONTCARE = 0, //All spell effects allowed
SELECT_EFFECT_DAMAGE, //Spell does damage SELECT_EFFECT_DAMAGE, //Spell does damage
SELECT_EFFECT_HEALING, //Spell does healing SELECT_EFFECT_HEALING, //Spell does healing
SELECT_EFFECT_AURA, //Spell applies an aura SELECT_EFFECT_AURA //Spell applies an aura
}; };
enum SCEquip enum SCEquip
+2 -2
View File
@@ -505,14 +505,14 @@ enum AITarget
AITARGET_ENEMY, AITARGET_ENEMY,
AITARGET_ALLY, AITARGET_ALLY,
AITARGET_BUFF, AITARGET_BUFF,
AITARGET_DEBUFF, AITARGET_DEBUFF
}; };
enum AICondition enum AICondition
{ {
AICOND_AGGRO, AICOND_AGGRO,
AICOND_COMBAT, AICOND_COMBAT,
AICOND_DIE, AICOND_DIE
}; };
#define AI_DEFAULT_COOLDOWN 5000 #define AI_DEFAULT_COOLDOWN 5000
+3 -3
View File
@@ -60,7 +60,7 @@ enum EventAI_Type
EVENT_T_TARGET_BUFFED = 24, // Param1 = SpellID, Param2 = Number of Time STacked, Param3/4 Repeat Min/Max EVENT_T_TARGET_BUFFED = 24, // Param1 = SpellID, Param2 = Number of Time STacked, Param3/4 Repeat Min/Max
EVENT_T_RESET = 35, // Is it called after combat, when the creature respawn and spawn. -- TRINITY ONLY EVENT_T_RESET = 35, // Is it called after combat, when the creature respawn and spawn. -- TRINITY ONLY
EVENT_T_END, EVENT_T_END
}; };
enum EventAI_ActionType enum EventAI_ActionType
@@ -119,7 +119,7 @@ enum EventAI_ActionType
ACTION_T_ATTACK_START_PULSE = 103, //Distance ACTION_T_ATTACK_START_PULSE = 103, //Distance
ACTION_T_SUMMON_GO = 104, //GameObjectID, DespawnTime in ms ACTION_T_SUMMON_GO = 104, //GameObjectID, DespawnTime in ms
ACTION_T_END = 105, ACTION_T_END = 105
}; };
enum Target enum Target
@@ -156,7 +156,7 @@ enum CastFlags
CAST_FORCE_CAST = 0x04, //Forces cast even if creature is out of mana or out of range CAST_FORCE_CAST = 0x04, //Forces cast even if creature is out of mana or out of range
CAST_NO_MELEE_IF_OOM = 0x08, //Prevents creature from entering melee if out of mana or out of range CAST_NO_MELEE_IF_OOM = 0x08, //Prevents creature from entering melee if out of mana or out of range
CAST_FORCE_TARGET_SELF = 0x10, //Forces the target to cast this spell on itself CAST_FORCE_TARGET_SELF = 0x10, //Forces the target to cast this spell on itself
CAST_AURA_NOT_PRESENT = 0x20, //Only casts the spell if the target does not have an aura from the spell CAST_AURA_NOT_PRESENT = 0x20 //Only casts the spell if the target does not have an aura from the spell
}; };
enum EventFlags enum EventFlags
+1 -1
View File
@@ -40,7 +40,7 @@ enum SmartEscortState
enum SmartEscortVars enum SmartEscortVars
{ {
SMART_ESCORT_MAX_PLAYER_DIST = 50, SMART_ESCORT_MAX_PLAYER_DIST = 50,
SMART_MAX_AID_DIST = SMART_ESCORT_MAX_PLAYER_DIST / 2, SMART_MAX_AID_DIST = SMART_ESCORT_MAX_PLAYER_DIST / 2
}; };
class SmartAI : public CreatureAI class SmartAI : public CreatureAI
@@ -54,7 +54,7 @@ enum SMART_EVENT_PHASE
SMART_EVENT_PHASE_6 = 6, SMART_EVENT_PHASE_6 = 6,
SMART_EVENT_PHASE_MAX = 7, SMART_EVENT_PHASE_MAX = 7,
SMART_EVENT_PHASE_COUNT = 6, SMART_EVENT_PHASE_COUNT = 6
}; };
enum SMART_EVENT_PHASE_BITS enum SMART_EVENT_PHASE_BITS
@@ -66,7 +66,7 @@ enum SMART_EVENT_PHASE_BITS
SMART_EVENT_PHASE_4_BIT = 8, SMART_EVENT_PHASE_4_BIT = 8,
SMART_EVENT_PHASE_5_BIT = 16, SMART_EVENT_PHASE_5_BIT = 16,
SMART_EVENT_PHASE_6_BIT = 32, SMART_EVENT_PHASE_6_BIT = 32,
SMART_EVENT_PHASE_ALL = SMART_EVENT_PHASE_1_BIT + SMART_EVENT_PHASE_2_BIT + SMART_EVENT_PHASE_3_BIT + SMART_EVENT_PHASE_4_BIT + SMART_EVENT_PHASE_5_BIT + SMART_EVENT_PHASE_6_BIT, SMART_EVENT_PHASE_ALL = SMART_EVENT_PHASE_1_BIT + SMART_EVENT_PHASE_2_BIT + SMART_EVENT_PHASE_3_BIT + SMART_EVENT_PHASE_4_BIT + SMART_EVENT_PHASE_5_BIT + SMART_EVENT_PHASE_6_BIT
}; };
const uint32 SmartPhaseMask[SMART_EVENT_PHASE_COUNT][2] = const uint32 SmartPhaseMask[SMART_EVENT_PHASE_COUNT][2] =
@@ -76,7 +76,7 @@ const uint32 SmartPhaseMask[SMART_EVENT_PHASE_COUNT][2] =
{SMART_EVENT_PHASE_3, SMART_EVENT_PHASE_3_BIT }, {SMART_EVENT_PHASE_3, SMART_EVENT_PHASE_3_BIT },
{SMART_EVENT_PHASE_4, SMART_EVENT_PHASE_4_BIT }, {SMART_EVENT_PHASE_4, SMART_EVENT_PHASE_4_BIT },
{SMART_EVENT_PHASE_5, SMART_EVENT_PHASE_5_BIT }, {SMART_EVENT_PHASE_5, SMART_EVENT_PHASE_5_BIT },
{SMART_EVENT_PHASE_6, SMART_EVENT_PHASE_6_BIT }, {SMART_EVENT_PHASE_6, SMART_EVENT_PHASE_6_BIT }
}; };
enum SMART_EVENT enum SMART_EVENT
@@ -156,7 +156,7 @@ enum SMART_EVENT
SMART_EVENT_ACTION_DONE = 72, // eventId (SharedDefines.EventId) SMART_EVENT_ACTION_DONE = 72, // eventId (SharedDefines.EventId)
SMART_EVENT_ON_SPELLCLICK = 73, // clicker (unit) SMART_EVENT_ON_SPELLCLICK = 73, // clicker (unit)
SMART_EVENT_END = 74, SMART_EVENT_END = 74
}; };
struct SmartEvent struct SmartEvent
@@ -376,7 +376,7 @@ enum SMART_SCRIPT_RESPAWN_CONDITION
SMART_SCRIPT_RESPAWN_CONDITION_NONE = 0, SMART_SCRIPT_RESPAWN_CONDITION_NONE = 0,
SMART_SCRIPT_RESPAWN_CONDITION_MAP = 1, SMART_SCRIPT_RESPAWN_CONDITION_MAP = 1,
SMART_SCRIPT_RESPAWN_CONDITION_AREA = 2, SMART_SCRIPT_RESPAWN_CONDITION_AREA = 2,
SMART_SCRIPT_RESPAWN_CONDITION_END = 3, SMART_SCRIPT_RESPAWN_CONDITION_END = 3
}; };
enum SMART_ACTION enum SMART_ACTION
@@ -486,7 +486,7 @@ enum SMART_ACTION
SMART_ACTION_SEND_TARGET_TO_TARGET = 100, // id SMART_ACTION_SEND_TARGET_TO_TARGET = 100, // id
SMART_ACTION_SET_HOME_POS = 101, // none SMART_ACTION_SET_HOME_POS = 101, // none
SMART_ACTION_END = 102, SMART_ACTION_END = 102
}; };
struct SmartAction struct SmartAction
@@ -935,7 +935,7 @@ enum SMARTAI_TEMPLATE
SMARTAI_TEMPLATE_PASSIVE = 3, SMARTAI_TEMPLATE_PASSIVE = 3,
SMARTAI_TEMPLATE_CAGED_GO_PART = 4, //creatureID, give credit at point end?, SMARTAI_TEMPLATE_CAGED_GO_PART = 4, //creatureID, give credit at point end?,
SMARTAI_TEMPLATE_CAGED_NPC_PART = 5, //gameObjectID, despawntime, run?, dist, TextGroupID SMARTAI_TEMPLATE_CAGED_NPC_PART = 5, //gameObjectID, despawntime, run?, dist, TextGroupID
SMARTAI_TEMPLATE_END = 6, SMARTAI_TEMPLATE_END = 6
}; };
enum SMARTAI_TARGETS enum SMARTAI_TARGETS
@@ -965,7 +965,7 @@ enum SMARTAI_TARGETS
SMART_TARGET_ACTION_INVOKER_VEHICLE = 22, // Unit's vehicle who caused this Event to occur SMART_TARGET_ACTION_INVOKER_VEHICLE = 22, // Unit's vehicle who caused this Event to occur
SMART_TARGET_OWNER_OR_SUMMONER = 23, // Unit's owner or summoner SMART_TARGET_OWNER_OR_SUMMONER = 23, // Unit's owner or summoner
SMART_TARGET_THREAT_LIST = 24, // All units on creature's threat list SMART_TARGET_THREAT_LIST = 24, // All units on creature's threat list
SMART_TARGET_END = 25, SMART_TARGET_END = 25
}; };
struct SmartTarget struct SmartTarget
@@ -1092,7 +1092,7 @@ enum SmartAITypeMaskId
SMART_SCRIPT_TYPE_MASK_SPELL = 64, SMART_SCRIPT_TYPE_MASK_SPELL = 64,
SMART_SCRIPT_TYPE_MASK_TRANSPORT = 128, SMART_SCRIPT_TYPE_MASK_TRANSPORT = 128,
SMART_SCRIPT_TYPE_MASK_INSTANCE = 256, SMART_SCRIPT_TYPE_MASK_INSTANCE = 256,
SMART_SCRIPT_TYPE_MASK_TIMED_ACTIONLIST = 512, SMART_SCRIPT_TYPE_MASK_TIMED_ACTIONLIST = 512
}; };
const uint32 SmartAITypeMask[SMART_SCRIPT_TYPE_MAX][2] = const uint32 SmartAITypeMask[SMART_SCRIPT_TYPE_MAX][2] =
@@ -1184,7 +1184,7 @@ const uint32 SmartAIEventMask[SMART_EVENT_END][2] =
{SMART_EVENT_GO_STATE_CHANGED, SMART_SCRIPT_TYPE_MASK_GAMEOBJECT }, {SMART_EVENT_GO_STATE_CHANGED, SMART_SCRIPT_TYPE_MASK_GAMEOBJECT },
{SMART_EVENT_GO_EVENT_INFORM, SMART_SCRIPT_TYPE_MASK_GAMEOBJECT }, {SMART_EVENT_GO_EVENT_INFORM, SMART_SCRIPT_TYPE_MASK_GAMEOBJECT },
{SMART_EVENT_ACTION_DONE, SMART_SCRIPT_TYPE_MASK_CREATURE }, {SMART_EVENT_ACTION_DONE, SMART_SCRIPT_TYPE_MASK_CREATURE },
{SMART_EVENT_ON_SPELLCLICK, SMART_SCRIPT_TYPE_MASK_CREATURE }, {SMART_EVENT_ON_SPELLCLICK, SMART_SCRIPT_TYPE_MASK_CREATURE }
}; };
enum SmartEventFlags enum SmartEventFlags
@@ -1210,14 +1210,15 @@ enum SmartCastFlags
//CAST_FORCE_CAST = 0x04, //Forces cast even if creature is out of mana or out of range //CAST_FORCE_CAST = 0x04, //Forces cast even if creature is out of mana or out of range
//CAST_NO_MELEE_IF_OOM = 0x08, //Prevents creature from entering melee if out of mana or out of range //CAST_NO_MELEE_IF_OOM = 0x08, //Prevents creature from entering melee if out of mana or out of range
//CAST_FORCE_TARGET_SELF = 0x10, //Forces the target to cast this spell on itself //CAST_FORCE_TARGET_SELF = 0x10, //Forces the target to cast this spell on itself
SMARTCAST_AURA_NOT_PRESENT = 0x20, //Only casts the spell if the target does not have an aura from the spell SMARTCAST_AURA_NOT_PRESENT = 0x20 //Only casts the spell if the target does not have an aura from the spell
}; };
// one line in DB is one event // one line in DB is one event
struct SmartScriptHolder struct SmartScriptHolder
{ {
SmartScriptHolder() : timer(0), active(false), runOnce(false), link(0), entryOrGuid(0), SmartScriptHolder() : entryOrGuid(0), source_type(SMART_SCRIPT_TYPE_CREATURE)
event_id(0), enableTimed(false), source_type(SMART_SCRIPT_TYPE_CREATURE) {} , event_id(0), link(0), timer(0), active(false), runOnce(false)
, enableTimed(false) {}
int32 entryOrGuid; int32 entryOrGuid;
SmartScriptType source_type; SmartScriptType source_type;
+1 -1
View File
@@ -55,6 +55,6 @@ namespace AccountMgr
bool IsGMAccount(uint32 gmlevel); bool IsGMAccount(uint32 gmlevel);
bool IsAdminAccount(uint32 gmlevel); bool IsAdminAccount(uint32 gmlevel);
bool IsConsoleAccount(uint32 gmlevel); bool IsConsoleAccount(uint32 gmlevel);
}; }
#endif #endif
@@ -63,7 +63,7 @@ enum AchievementCriteriaDataType
ACHIEVEMENT_CRITERIA_DATA_INSTANCE_SCRIPT = 18, // 0 0 maker instance script call for check current criteria requirements fit ACHIEVEMENT_CRITERIA_DATA_INSTANCE_SCRIPT = 18, // 0 0 maker instance script call for check current criteria requirements fit
ACHIEVEMENT_CRITERIA_DATA_TYPE_S_EQUIPED_ITEM = 19, // item_level item_quality for equipped item in slot to check item level and quality ACHIEVEMENT_CRITERIA_DATA_TYPE_S_EQUIPED_ITEM = 19, // item_level item_quality for equipped item in slot to check item level and quality
ACHIEVEMENT_CRITERIA_DATA_TYPE_MAP_ID = 20, // map_id 0 player must be on map with id in map_id ACHIEVEMENT_CRITERIA_DATA_TYPE_MAP_ID = 20, // map_id 0 player must be on map with id in map_id
ACHIEVEMENT_CRITERIA_DATA_TYPE_S_PLAYER_CLASS_RACE = 21, // class_id race_id ACHIEVEMENT_CRITERIA_DATA_TYPE_S_PLAYER_CLASS_RACE = 21 // class_id race_id
}; };
#define MAX_ACHIEVEMENT_CRITERIA_DATA_TYPE 22 // maximum value in AchievementCriteriaDataType enum #define MAX_ACHIEVEMENT_CRITERIA_DATA_TYPE 22 // maximum value in AchievementCriteriaDataType enum
@@ -34,7 +34,7 @@
enum eAuctionHouse enum eAuctionHouse
{ {
AH_MINIMUM_DEPOSIT = 100, AH_MINIMUM_DEPOSIT = 100
}; };
AuctionHouseMgr::AuctionHouseMgr() AuctionHouseMgr::AuctionHouseMgr()
+3 -3
View File
@@ -463,7 +463,7 @@ void Battlefield::SendWarningToAllInZone(uint32 entry)
if (Unit* unit = sObjectAccessor->FindUnit(StalkerGuid)) if (Unit* unit = sObjectAccessor->FindUnit(StalkerGuid))
if (Creature* stalker = unit->ToCreature()) if (Creature* stalker = unit->ToCreature())
// FIXME: replaced CHAT_TYPE_END with CHAT_MSG_BG_SYSTEM_NEUTRAL to fix compile, it's a guessed change :/ // FIXME: replaced CHAT_TYPE_END with CHAT_MSG_BG_SYSTEM_NEUTRAL to fix compile, it's a guessed change :/
sCreatureTextMgr->SendChat(stalker, (uint8) entry, NULL, CHAT_MSG_BG_SYSTEM_NEUTRAL, LANG_ADDON, TEXT_RANGE_ZONE); sCreatureTextMgr->SendChat(stalker, (uint8) entry, 0, CHAT_MSG_BG_SYSTEM_NEUTRAL, LANG_ADDON, TEXT_RANGE_ZONE);
} }
/*void Battlefield::SendWarningToAllInWar(int32 entry,...) /*void Battlefield::SendWarningToAllInWar(int32 entry,...)
@@ -676,8 +676,8 @@ BfGraveyard::BfGraveyard(Battlefield* battlefield)
m_Bf = battlefield; m_Bf = battlefield;
m_GraveyardId = 0; m_GraveyardId = 0;
m_ControlTeam = TEAM_NEUTRAL; m_ControlTeam = TEAM_NEUTRAL;
m_SpiritGuide[0] = NULL; m_SpiritGuide[0] = 0;
m_SpiritGuide[1] = NULL; m_SpiritGuide[1] = 0;
m_ResurrectQueue.clear(); m_ResurrectQueue.clear();
} }
+3 -4
View File
@@ -29,13 +29,12 @@
enum BattlefieldTypes enum BattlefieldTypes
{ {
BATTLEFIELD_WG, // Wintergrasp BATTLEFIELD_WG // Wintergrasp
BATTLEFIELD_TB, // Tol Barad (cataclysm)
}; };
enum BattlefieldIDs enum BattlefieldIDs
{ {
BATTLEFIELD_BATTLEID_WG = 1, // Wintergrasp battle BATTLEFIELD_BATTLEID_WG = 1 // Wintergrasp battle
}; };
enum BattlefieldObjectiveStates enum BattlefieldObjectiveStates
@@ -46,7 +45,7 @@ enum BattlefieldObjectiveStates
BF_CAPTUREPOINT_OBJECTIVESTATE_NEUTRAL_ALLIANCE_CHALLENGE, BF_CAPTUREPOINT_OBJECTIVESTATE_NEUTRAL_ALLIANCE_CHALLENGE,
BF_CAPTUREPOINT_OBJECTIVESTATE_NEUTRAL_HORDE_CHALLENGE, BF_CAPTUREPOINT_OBJECTIVESTATE_NEUTRAL_HORDE_CHALLENGE,
BF_CAPTUREPOINT_OBJECTIVESTATE_ALLIANCE_HORDE_CHALLENGE, BF_CAPTUREPOINT_OBJECTIVESTATE_ALLIANCE_HORDE_CHALLENGE,
BF_CAPTUREPOINT_OBJECTIVESTATE_HORDE_ALLIANCE_CHALLENGE, BF_CAPTUREPOINT_OBJECTIVESTATE_HORDE_ALLIANCE_CHALLENGE
}; };
enum BattlefieldSounds enum BattlefieldSounds
@@ -30,7 +30,7 @@ enum WGVehicles
NPC_WG_SEIGE_ENGINE_ALLIANCE = 28312, NPC_WG_SEIGE_ENGINE_ALLIANCE = 28312,
NPC_WG_SEIGE_ENGINE_HORDE = 32627, NPC_WG_SEIGE_ENGINE_HORDE = 32627,
NPC_WG_DEMOLISHER = 28094, NPC_WG_DEMOLISHER = 28094,
NPC_WG_CATAPULT = 27881, NPC_WG_CATAPULT = 27881
}; };
BattlefieldWG::~BattlefieldWG() BattlefieldWG::~BattlefieldWG()
@@ -47,7 +47,7 @@ typedef std::set<Group*> GroupSet;
enum WintergrastData enum WintergrastData
{ {
BATTLEFIELD_WG_ZONEID = 4197, // Wintergrasp BATTLEFIELD_WG_ZONEID = 4197, // Wintergrasp
BATTLEFIELD_WG_MAPID = 571, // Northrend BATTLEFIELD_WG_MAPID = 571 // Northrend
}; };
enum WintergraspSpells enum WintergraspSpells
@@ -91,7 +91,7 @@ enum WintergraspSpells
SPELL_ALLIANCE_CONTROLS_FACTORY_PHASE_SHIFT = 56617, // ADDS PHASE 32 SPELL_ALLIANCE_CONTROLS_FACTORY_PHASE_SHIFT = 56617, // ADDS PHASE 32
SPELL_HORDE_CONTROL_PHASE_SHIFT = 55773, // ADDS PHASE 64 SPELL_HORDE_CONTROL_PHASE_SHIFT = 55773, // ADDS PHASE 64
SPELL_ALLIANCE_CONTROL_PHASE_SHIFT = 55774, // ADDS PHASE 128 SPELL_ALLIANCE_CONTROL_PHASE_SHIFT = 55774 // ADDS PHASE 128
}; };
enum WintergraspData enum WintergraspData
@@ -104,7 +104,7 @@ enum WintergraspData
BATTLEFIELD_WG_DATA_MAX_VEHICLE_H, BATTLEFIELD_WG_DATA_MAX_VEHICLE_H,
BATTLEFIELD_WG_DATA_VEHICLE_A, BATTLEFIELD_WG_DATA_VEHICLE_A,
BATTLEFIELD_WG_DATA_VEHICLE_H, BATTLEFIELD_WG_DATA_VEHICLE_H,
BATTLEFIELD_WG_DATA_MAX, BATTLEFIELD_WG_DATA_MAX
}; };
enum WintergraspAchievements enum WintergraspAchievements
@@ -124,7 +124,7 @@ enum WintergraspAchievements
ACHIEVEMENTS_STONE_KEEPER_1000 = 2089, // todo ACHIEVEMENTS_STONE_KEEPER_1000 = 2089, // todo
ACHIEVEMENTS_WG_RANGER = 2199, // todo ACHIEVEMENTS_WG_RANGER = 2199, // todo
ACHIEVEMENTS_DESTRUCTION_DERBY_H = 2476, // todo ACHIEVEMENTS_DESTRUCTION_DERBY_H = 2476, // todo
ACHIEVEMENTS_WG_MASTER_H = 2776, // todo ACHIEVEMENTS_WG_MASTER_H = 2776 // todo
}; };
enum WintergraspWorldStates enum WintergraspWorldStates
@@ -136,7 +136,7 @@ enum WintergraspWorldStates
BATTLEFIELD_WG_WORLD_STATE_ACTIVE = 3801, BATTLEFIELD_WG_WORLD_STATE_ACTIVE = 3801,
BATTLEFIELD_WG_WORLD_STATE_DEFENDER = 3802, BATTLEFIELD_WG_WORLD_STATE_DEFENDER = 3802,
BATTLEFIELD_WG_WORLD_STATE_ATTACKER = 3803, BATTLEFIELD_WG_WORLD_STATE_ATTACKER = 3803,
BATTLEFIELD_WG_WORLD_STATE_SHOW_WORLDSTATE = 3710, BATTLEFIELD_WG_WORLD_STATE_SHOW_WORLDSTATE = 3710
}; };
enum WintergraspAreaIds enum WintergraspAreaIds
@@ -147,7 +147,7 @@ enum WintergraspAreaIds
AREA_WESTPARK_WORKSHOP = 4611, AREA_WESTPARK_WORKSHOP = 4611,
AREA_EASTPARK_WORKSHOP = 4612, AREA_EASTPARK_WORKSHOP = 4612,
AREA_WINTERGRASP = 4197, AREA_WINTERGRASP = 4197,
AREA_THE_CHILLED_QUAGMIRE = 4589, AREA_THE_CHILLED_QUAGMIRE = 4589
}; };
/*######################### /*#########################
@@ -174,7 +174,7 @@ enum WGGraveyardId
BATTLEFIELD_WG_GY_KEEP, BATTLEFIELD_WG_GY_KEEP,
BATTLEFIELD_WG_GY_HORDE, BATTLEFIELD_WG_GY_HORDE,
BATTLEFIELD_WG_GY_ALLIANCE, BATTLEFIELD_WG_GY_ALLIANCE,
BATTLEFIELD_WG_GRAVEYARD_MAX, BATTLEFIELD_WG_GRAVEYARD_MAX
}; };
enum WGGossipText enum WGGossipText
@@ -185,7 +185,7 @@ enum WGGossipText
BATTLEFIELD_WG_GOSSIPTEXT_GY_SW = -1850503, BATTLEFIELD_WG_GOSSIPTEXT_GY_SW = -1850503,
BATTLEFIELD_WG_GOSSIPTEXT_GY_KEEP = -1850500, BATTLEFIELD_WG_GOSSIPTEXT_GY_KEEP = -1850500,
BATTLEFIELD_WG_GOSSIPTEXT_GY_HORDE = -1850505, BATTLEFIELD_WG_GOSSIPTEXT_GY_HORDE = -1850505,
BATTLEFIELD_WG_GOSSIPTEXT_GY_ALLIANCE = -1850506, BATTLEFIELD_WG_GOSSIPTEXT_GY_ALLIANCE = -1850506
}; };
enum WintergraspNpcs enum WintergraspNpcs
@@ -222,7 +222,7 @@ enum WintergraspNpcs
NPC_WINTERGRASP_SIEGE_ENGINE_HORDE = 32627, NPC_WINTERGRASP_SIEGE_ENGINE_HORDE = 32627,
NPC_WINTERGRASP_CATAPULT = 27881, NPC_WINTERGRASP_CATAPULT = 27881,
NPC_WINTERGRASP_DEMOLISHER = 28094, NPC_WINTERGRASP_DEMOLISHER = 28094,
NPC_WINTERGRASP_TOWER_CANNON = 28366, NPC_WINTERGRASP_TOWER_CANNON = 28366
}; };
struct BfWGCoordGY struct BfWGCoordGY
@@ -456,7 +456,7 @@ enum WintergraspGameObjectBuildingType
BATTLEFIELD_WG_OBJECTTYPE_WALL, BATTLEFIELD_WG_OBJECTTYPE_WALL,
BATTLEFIELD_WG_OBJECTTYPE_DOOR_LAST, BATTLEFIELD_WG_OBJECTTYPE_DOOR_LAST,
BATTLEFIELD_WG_OBJECTTYPE_KEEP_TOWER, BATTLEFIELD_WG_OBJECTTYPE_KEEP_TOWER,
BATTLEFIELD_WG_OBJECTTYPE_TOWER, BATTLEFIELD_WG_OBJECTTYPE_TOWER
}; };
enum WintergraspGameObjectState enum WintergraspGameObjectState
@@ -470,7 +470,7 @@ enum WintergraspGameObjectState
BATTLEFIELD_WG_OBJECTSTATE_HORDE_DESTROY, BATTLEFIELD_WG_OBJECTSTATE_HORDE_DESTROY,
BATTLEFIELD_WG_OBJECTSTATE_ALLIANCE_INTACT, BATTLEFIELD_WG_OBJECTSTATE_ALLIANCE_INTACT,
BATTLEFIELD_WG_OBJECTSTATE_ALLIANCE_DAMAGE, BATTLEFIELD_WG_OBJECTSTATE_ALLIANCE_DAMAGE,
BATTLEFIELD_WG_OBJECTSTATE_ALLIANCE_DESTROY, BATTLEFIELD_WG_OBJECTSTATE_ALLIANCE_DESTROY
}; };
enum WintergraspWorkshopIds enum WintergraspWorkshopIds
@@ -480,7 +480,7 @@ enum WintergraspWorkshopIds
BATTLEFIELD_WG_WORKSHOP_SE, BATTLEFIELD_WG_WORKSHOP_SE,
BATTLEFIELD_WG_WORKSHOP_SW, BATTLEFIELD_WG_WORKSHOP_SW,
BATTLEFIELD_WG_WORKSHOP_KEEP_WEST, BATTLEFIELD_WG_WORKSHOP_KEEP_WEST,
BATTLEFIELD_WG_WORKSHOP_KEEP_EAST, BATTLEFIELD_WG_WORKSHOP_KEEP_EAST
}; };
enum WintergraspWorldstates enum WintergraspWorldstates
@@ -497,7 +497,7 @@ enum WintergraspTeamControl
{ {
BATTLEFIELD_WG_TEAM_ALLIANCE, BATTLEFIELD_WG_TEAM_ALLIANCE,
BATTLEFIELD_WG_TEAM_HORDE, BATTLEFIELD_WG_TEAM_HORDE,
BATTLEFIELD_WG_TEAM_NEUTRAL, BATTLEFIELD_WG_TEAM_NEUTRAL
}; };
// TODO: Handle this with creature_text ? // TODO: Handle this with creature_text ?
@@ -525,7 +525,7 @@ enum WintergraspText
BATTLEFIELD_WG_TEXT_TOWER_NAME_E = 12070, BATTLEFIELD_WG_TEXT_TOWER_NAME_E = 12070,
BATTLEFIELD_WG_TEXT_TOWER_NAME_W = 12071, BATTLEFIELD_WG_TEXT_TOWER_NAME_W = 12071,
BATTLEFIELD_WG_TEXT_DEFEND_KEEP = 12068, BATTLEFIELD_WG_TEXT_DEFEND_KEEP = 12068,
BATTLEFIELD_WG_TEXT_WIN_KEEP = 12072, BATTLEFIELD_WG_TEXT_WIN_KEEP = 12072
}; };
enum WintergraspGameObject enum WintergraspGameObject
@@ -549,8 +549,7 @@ enum WintergraspGameObject
GO_WINTERGRASP_FORTRESS_GATE = 190375, GO_WINTERGRASP_FORTRESS_GATE = 190375,
GO_WINTERGRASP_VAULT_GATE = 191810, GO_WINTERGRASP_VAULT_GATE = 191810,
GO_WINTERGRASP_KEEP_COLLISION_WALL = 194323, GO_WINTERGRASP_KEEP_COLLISION_WALL = 194323
}; };
struct WintergraspObjectPositionData struct WintergraspObjectPositionData
@@ -1133,9 +1132,9 @@ const WGWorkshopData WorkshopsData[WG_MAX_WORKSHOP] =
// SW // SW
{BATTLEFIELD_WG_WORKSHOP_SW, WORLDSTATE_WORKSHOP_SW, BATTLEFIELD_WG_TEXT_WORKSHOP_NAME_SW}, {BATTLEFIELD_WG_WORKSHOP_SW, WORLDSTATE_WORKSHOP_SW, BATTLEFIELD_WG_TEXT_WORKSHOP_NAME_SW},
// KEEP WEST - It can't be taken, so it doesn't have a textid // KEEP WEST - It can't be taken, so it doesn't have a textid
{BATTLEFIELD_WG_WORKSHOP_KEEP_WEST, WORLDSTATE_WORKSHOP_K_W, NULL}, {BATTLEFIELD_WG_WORKSHOP_KEEP_WEST, WORLDSTATE_WORKSHOP_K_W, 0},
// KEEP EAST - It can't be taken, so it doesn't have a textid // KEEP EAST - It can't be taken, so it doesn't have a textid
{BATTLEFIELD_WG_WORKSHOP_KEEP_EAST, WORLDSTATE_WORKSHOP_K_E, NULL} {BATTLEFIELD_WG_WORKSHOP_KEEP_EAST, WORLDSTATE_WORKSHOP_K_E, 0}
}; };
// ******************************************************************** // ********************************************************************
+7 -7
View File
@@ -38,7 +38,7 @@ enum BattlegroundSounds
SOUND_HORDE_WINS = 8454, SOUND_HORDE_WINS = 8454,
SOUND_ALLIANCE_WINS = 8455, SOUND_ALLIANCE_WINS = 8455,
SOUND_BG_START = 3439, SOUND_BG_START = 3439,
SOUND_BG_START_L70ETC = 11803, SOUND_BG_START_L70ETC = 11803
}; };
enum BattlegroundQuests enum BattlegroundQuests
@@ -79,7 +79,7 @@ enum BattlegroundMarksCount
enum BattlegroundCreatures enum BattlegroundCreatures
{ {
BG_CREATURE_ENTRY_A_SPIRITGUIDE = 13116, // alliance BG_CREATURE_ENTRY_A_SPIRITGUIDE = 13116, // alliance
BG_CREATURE_ENTRY_H_SPIRITGUIDE = 13117, // horde BG_CREATURE_ENTRY_H_SPIRITGUIDE = 13117 // horde
}; };
enum BattlegroundSpells enum BattlegroundSpells
@@ -99,7 +99,7 @@ enum BattlegroundSpells
SPELL_AURA_PLAYER_INACTIVE = 43681, // Inactive SPELL_AURA_PLAYER_INACTIVE = 43681, // Inactive
SPELL_HONORABLE_DEFENDER_25Y = 68652, // +50% honor when standing at a capture point that you control, 25yards radius (added in 3.2) SPELL_HONORABLE_DEFENDER_25Y = 68652, // +50% honor when standing at a capture point that you control, 25yards radius (added in 3.2)
SPELL_HONORABLE_DEFENDER_60Y = 66157, // +50% honor when standing at a capture point that you control, 60yards radius (added in 3.2), probably for 40+ player battlegrounds SPELL_HONORABLE_DEFENDER_60Y = 66157, // +50% honor when standing at a capture point that you control, 60yards radius (added in 3.2), probably for 40+ player battlegrounds
SPELL_THE_LAST_STANDING = 26549, // Arena achievement related SPELL_THE_LAST_STANDING = 26549 // Arena achievement related
}; };
enum BattlegroundTimeIntervals enum BattlegroundTimeIntervals
@@ -112,7 +112,7 @@ enum BattlegroundTimeIntervals
MAX_OFFLINE_TIME = 300, // secs MAX_OFFLINE_TIME = 300, // secs
RESPAWN_ONE_DAY = 86400, // secs RESPAWN_ONE_DAY = 86400, // secs
RESPAWN_IMMEDIATELY = 0, // secs RESPAWN_IMMEDIATELY = 0, // secs
BUFF_RESPAWN_TIME = 180, // secs BUFF_RESPAWN_TIME = 180 // secs
}; };
enum BattlegroundStartTimeIntervals enum BattlegroundStartTimeIntervals
@@ -121,7 +121,7 @@ enum BattlegroundStartTimeIntervals
BG_START_DELAY_1M = 60000, // ms (1 minute) BG_START_DELAY_1M = 60000, // ms (1 minute)
BG_START_DELAY_30S = 30000, // ms (30 seconds) BG_START_DELAY_30S = 30000, // ms (30 seconds)
BG_START_DELAY_15S = 15000, // ms (15 seconds) Used only in arena BG_START_DELAY_15S = 15000, // ms (15 seconds) Used only in arena
BG_START_DELAY_NONE = 0, // ms BG_START_DELAY_NONE = 0 // ms
}; };
enum BattlegroundBuffObjects enum BattlegroundBuffObjects
@@ -209,7 +209,7 @@ enum ScoreType
SCORE_SECONDARY_OBJECTIVES = 17, SCORE_SECONDARY_OBJECTIVES = 17,
//SOTA //SOTA
SCORE_DESTROYED_DEMOLISHER = 18, SCORE_DESTROYED_DEMOLISHER = 18,
SCORE_DESTROYED_WALL = 19, SCORE_DESTROYED_WALL = 19
}; };
enum ArenaType enum ArenaType
@@ -275,7 +275,7 @@ enum GroupJoinBattlegroundResult
ERR_BATTLEGROUND_JOIN_FAILED = -12, // Join as a group failed (uint64 guid doesn't exist in client cache) ERR_BATTLEGROUND_JOIN_FAILED = -12, // Join as a group failed (uint64 guid doesn't exist in client cache)
ERR_LFG_CANT_USE_BATTLEGROUND = -13, // You cannot queue for a battleground or arena while using the dungeon system. ERR_LFG_CANT_USE_BATTLEGROUND = -13, // You cannot queue for a battleground or arena while using the dungeon system.
ERR_IN_RANDOM_BG = -14, // Can't do that while in a Random Battleground queue. ERR_IN_RANDOM_BG = -14, // Can't do that while in a Random Battleground queue.
ERR_IN_NON_RANDOM_BG = -15, // Can't queue for Random Battleground while in another Battleground queue. ERR_IN_NON_RANDOM_BG = -15 // Can't queue for Random Battleground while in another Battleground queue.
}; };
class BattlegroundScore class BattlegroundScore
@@ -102,7 +102,7 @@ enum BG_AB_ObjectType
BG_AB_OBJECT_SPEEDBUFF_GOLD_MINE = 54, BG_AB_OBJECT_SPEEDBUFF_GOLD_MINE = 54,
BG_AB_OBJECT_REGENBUFF_GOLD_MINE = 55, BG_AB_OBJECT_REGENBUFF_GOLD_MINE = 55,
BG_AB_OBJECT_BERSERKBUFF_GOLD_MINE = 56, BG_AB_OBJECT_BERSERKBUFF_GOLD_MINE = 56,
BG_AB_OBJECT_MAX = 57, BG_AB_OBJECT_MAX = 57
}; };
/* Object id templates from DB */ /* Object id templates from DB */
@@ -123,7 +123,7 @@ enum BG_AB_ObjectTypes
enum BG_AB_Timers enum BG_AB_Timers
{ {
BG_AB_FLAG_CAPTURING_TIME = 60000, BG_AB_FLAG_CAPTURING_TIME = 60000
}; };
enum BG_AB_Score enum BG_AB_Score
@@ -146,7 +146,7 @@ enum BG_AB_BattlegroundNodes
BG_AB_SPIRIT_ALIANCE = 5, BG_AB_SPIRIT_ALIANCE = 5,
BG_AB_SPIRIT_HORDE = 6, BG_AB_SPIRIT_HORDE = 6,
BG_AB_ALL_NODES_COUNT = 7, // all nodes (dynamic and static) BG_AB_ALL_NODES_COUNT = 7 // all nodes (dynamic and static)
}; };
enum BG_AB_NodeStatus enum BG_AB_NodeStatus
@@ -95,7 +95,7 @@ horde:
AV_SOUND_BOTH_TOWER_DEFEND = 8192, AV_SOUND_BOTH_TOWER_DEFEND = 8192,
AV_SOUND_ALLIANCE_CAPTAIN = 8232, //gets called when someone attacks them and at the beginning after 3min+rand(x)*10sec (maybe buff) AV_SOUND_ALLIANCE_CAPTAIN = 8232, //gets called when someone attacks them and at the beginning after 3min+rand(x)*10sec (maybe buff)
AV_SOUND_HORDE_CAPTAIN = 8333, AV_SOUND_HORDE_CAPTAIN = 8333
}; };
@@ -1359,7 +1359,7 @@ enum BG_AV_WorldStates
//Neutral //Neutral
//Snowfall Grave //Snowfall Grave
*/ */
AV_SNOWFALL_N = 1966, //over aa AV_SNOWFALL_N = 1966 //over aa
/* /*
AV_SNOWFALL_A_C = 1341, //over hc AV_SNOWFALL_A_C = 1341, //over hc
AV_SNOWFALL_A_A = 1343, //over ha AV_SNOWFALL_A_A = 1343, //over ha
@@ -52,14 +52,14 @@ enum BattlegroundDSCreatureTypes
enum BattlegroundDSCreatures enum BattlegroundDSCreatures
{ {
BG_DS_NPC_TYPE_WATER_SPOUT = 28567, BG_DS_NPC_TYPE_WATER_SPOUT = 28567
}; };
enum BattlegroundDSSpells enum BattlegroundDSSpells
{ {
BG_DS_SPELL_FLUSH = 57405, // Visual and target selector for the starting knockback from the pipe BG_DS_SPELL_FLUSH = 57405, // Visual and target selector for the starting knockback from the pipe
BG_DS_SPELL_FLUSH_KNOCKBACK = 61698, // Knockback effect for previous spell (triggered, not need to be casted) BG_DS_SPELL_FLUSH_KNOCKBACK = 61698, // Knockback effect for previous spell (triggered, not need to be casted)
BG_DS_SPELL_WATER_SPOUT = 58873, // Knockback effect of the central waterfall BG_DS_SPELL_WATER_SPOUT = 58873 // Knockback effect of the central waterfall
}; };
enum BattlegroundDSData enum BattlegroundDSData
@@ -76,7 +76,7 @@ enum BattlegroundDSData
BG_DS_WATERFALL_STATUS_WARNING = 1, // Water starting to fall, but no LoS Blocking nor movement blocking BG_DS_WATERFALL_STATUS_WARNING = 1, // Water starting to fall, but no LoS Blocking nor movement blocking
BG_DS_WATERFALL_STATUS_ON = 2, // LoS and Movement blocking active BG_DS_WATERFALL_STATUS_ON = 2, // LoS and Movement blocking active
BG_DS_WATERFALL_STATUS_OFF = 3, BG_DS_WATERFALL_STATUS_OFF = 3
}; };
class BattlegroundDSScore : public BattlegroundScore class BattlegroundDSScore : public BattlegroundScore
@@ -26,7 +26,7 @@ class Battleground;
enum BG_EY_Misc enum BG_EY_Misc
{ {
BG_EY_FLAG_RESPAWN_TIME = (8*IN_MILLISECONDS), BG_EY_FLAG_RESPAWN_TIME = (8*IN_MILLISECONDS),
BG_EY_FPOINTS_TICK_TIME = (2*IN_MILLISECONDS), BG_EY_FPOINTS_TICK_TIME = (2*IN_MILLISECONDS)
}; };
enum BG_EY_WorldStates enum BG_EY_WorldStates
@@ -178,7 +178,7 @@ enum gameobjectsIC
GO_HORDE_BANNER_GRAVEYARD_H_CONT = 195394, GO_HORDE_BANNER_GRAVEYARD_H_CONT = 195394,
GO_HORDE_GUNSHIP = 195276, GO_HORDE_GUNSHIP = 195276,
GO_ALLIANCE_GUNSHIP = 195121, GO_ALLIANCE_GUNSHIP = 195121
}; };
#define MAX_REINFORCEMENTS 300 #define MAX_REINFORCEMENTS 300
@@ -336,7 +336,7 @@ enum BG_IC_GOs
BG_IC_GO_TELEPORTER_EFFECTS_H_3, BG_IC_GO_TELEPORTER_EFFECTS_H_3,
BG_IC_GO_TELEPORTER_EFFECTS_H_4, BG_IC_GO_TELEPORTER_EFFECTS_H_4,
BG_IC_GO_TELEPORTER_EFFECTS_H_5, BG_IC_GO_TELEPORTER_EFFECTS_H_5,
BG_IC_GO_TELEPORTER_EFFECTS_H_6, BG_IC_GO_TELEPORTER_EFFECTS_H_6
}; };
enum BG_IC_NPCs enum BG_IC_NPCs
@@ -411,7 +411,7 @@ enum BG_IC_NPCs
BG_IC_NPC_SPIRIT_GUIDE_4, BG_IC_NPC_SPIRIT_GUIDE_4,
BG_IC_NPC_SPIRIT_GUIDE_5, BG_IC_NPC_SPIRIT_GUIDE_5,
BG_IC_NPC_SPIRIT_GUIDE_6, BG_IC_NPC_SPIRIT_GUIDE_6,
BG_IC_NPC_SPIRIT_GUIDE_7, BG_IC_NPC_SPIRIT_GUIDE_7
}; };
enum BannersTypes enum BannersTypes
@@ -751,7 +751,7 @@ enum ICDoorList
BG_IC_A_FRONT, BG_IC_A_FRONT,
BG_IC_A_WEST, BG_IC_A_WEST,
BG_IC_A_EAST, BG_IC_A_EAST,
BG_IC_MAXDOOR, BG_IC_MAXDOOR
}; };
enum ICNodePointType enum ICNodePointType
@@ -46,7 +46,7 @@ enum BattlegroundRVObjectTypes
BG_RV_OBJECT_ELEVATOR_1, BG_RV_OBJECT_ELEVATOR_1,
BG_RV_OBJECT_ELEVATOR_2, BG_RV_OBJECT_ELEVATOR_2,
BG_RV_OBJECT_MAX, BG_RV_OBJECT_MAX
}; };
enum BattlegroundRVObjects enum BattlegroundRVObjects
@@ -73,7 +73,7 @@ enum BattlegroundRVObjects
BG_RV_OBJECT_TYPE_PILAR_1 = 194583, // axe BG_RV_OBJECT_TYPE_PILAR_1 = 194583, // axe
BG_RV_OBJECT_TYPE_PILAR_2 = 194584, // arena BG_RV_OBJECT_TYPE_PILAR_2 = 194584, // arena
BG_RV_OBJECT_TYPE_PILAR_3 = 194585, // lightning BG_RV_OBJECT_TYPE_PILAR_3 = 194585, // lightning
BG_RV_OBJECT_TYPE_PILAR_4 = 194587, // ivory BG_RV_OBJECT_TYPE_PILAR_4 = 194587 // ivory
}; };
enum BattlegroundRVData enum BattlegroundRVData
@@ -88,7 +88,7 @@ enum BattlegroundRVData
BG_RV_FIRST_TIMER = 20133, BG_RV_FIRST_TIMER = 20133,
BG_RV_WORLD_STATE_A = 0xe10, BG_RV_WORLD_STATE_A = 0xe10,
BG_RV_WORLD_STATE_H = 0xe11, BG_RV_WORLD_STATE_H = 0xe11,
BG_RV_WORLD_STATE = 0xe1a, BG_RV_WORLD_STATE = 0xe1a
}; };
class BattlegroundRVScore : public BattlegroundScore class BattlegroundRVScore : public BattlegroundScore
@@ -104,7 +104,7 @@ enum BG_SA_WorldStates
BG_SA_LEFT_GY_HORDE = 3633, BG_SA_LEFT_GY_HORDE = 3633,
BG_SA_CENTER_GY_HORDE = 3634, BG_SA_CENTER_GY_HORDE = 3634,
BG_SA_BONUS_TIMER = 0xdf3, BG_SA_BONUS_TIMER = 0xdf3,
BG_SA_ENABLE_TIMER = 3564, BG_SA_ENABLE_TIMER = 3564
}; };
enum npc enum npc
@@ -112,7 +112,7 @@ enum npc
NPC_ANTI_PERSONNAL_CANNON = 27894, NPC_ANTI_PERSONNAL_CANNON = 27894,
NPC_DEMOLISHER_SA = 28781, NPC_DEMOLISHER_SA = 28781,
NPC_RIGGER_SPARKLIGHT = 29260, NPC_RIGGER_SPARKLIGHT = 29260,
NPC_GORGRIL_RIGSPARK = 29262, NPC_GORGRIL_RIGSPARK = 29262
}; };
enum BG_SA_NPCs enum BG_SA_NPCs
@@ -146,7 +146,7 @@ enum BG_SA_Boat
BG_SA_BOAT_ONE_A = 193182, BG_SA_BOAT_ONE_A = 193182,
BG_SA_BOAT_TWO_H = 193183, BG_SA_BOAT_TWO_H = 193183,
BG_SA_BOAT_ONE_H = 193184, BG_SA_BOAT_ONE_H = 193184,
BG_SA_BOAT_TWO_A = 193185, BG_SA_BOAT_TWO_A = 193185
}; };
uint32 const BG_SA_NpcEntries[BG_SA_MAXNPC] = uint32 const BG_SA_NpcEntries[BG_SA_MAXNPC] =
+3 -3
View File
@@ -68,7 +68,7 @@ enum ChatNotify
CHAT_NOT_IN_AREA_NOTICE = 0x20, //+ "[%s] You are not in the correct area for this channel."; -- The user is trying to send a chat to a zone specific channel, and they're not physically in that zone. CHAT_NOT_IN_AREA_NOTICE = 0x20, //+ "[%s] You are not in the correct area for this channel."; -- The user is trying to send a chat to a zone specific channel, and they're not physically in that zone.
CHAT_NOT_IN_LFG_NOTICE = 0x21, //+ "[%s] You must be queued in looking for group before joining this channel."; -- The user must be in the looking for group system to join LFG chat channels. CHAT_NOT_IN_LFG_NOTICE = 0x21, //+ "[%s] You must be queued in looking for group before joining this channel."; -- The user must be in the looking for group system to join LFG chat channels.
CHAT_VOICE_ON_NOTICE = 0x22, //+ "[%s] Channel voice enabled by %s."; CHAT_VOICE_ON_NOTICE = 0x22, //+ "[%s] Channel voice enabled by %s.";
CHAT_VOICE_OFF_NOTICE = 0x23, //+ "[%s] Channel voice disabled by %s."; CHAT_VOICE_OFF_NOTICE = 0x23 //+ "[%s] Channel voice disabled by %s.";
}; };
enum ChannelFlags enum ChannelFlags
@@ -101,7 +101,7 @@ enum ChannelDBCFlags
CHANNEL_DBC_FLAG_DEFENSE = 0x10000, // LocalDefense, WorldDefense CHANNEL_DBC_FLAG_DEFENSE = 0x10000, // LocalDefense, WorldDefense
CHANNEL_DBC_FLAG_GUILD_REQ = 0x20000, // GuildRecruitment CHANNEL_DBC_FLAG_GUILD_REQ = 0x20000, // GuildRecruitment
CHANNEL_DBC_FLAG_LFG = 0x40000, // LFG CHANNEL_DBC_FLAG_LFG = 0x40000, // LFG
CHANNEL_DBC_FLAG_UNK1 = 0x80000, // General CHANNEL_DBC_FLAG_UNK1 = 0x80000 // General
}; };
enum ChannelMemberFlags enum ChannelMemberFlags
@@ -112,7 +112,7 @@ enum ChannelMemberFlags
MEMBER_FLAG_VOICED = 0x04, MEMBER_FLAG_VOICED = 0x04,
MEMBER_FLAG_MUTED = 0x08, MEMBER_FLAG_MUTED = 0x08,
MEMBER_FLAG_CUSTOM = 0x10, MEMBER_FLAG_CUSTOM = 0x10,
MEMBER_FLAG_MIC_MUTED = 0x20, MEMBER_FLAG_MIC_MUTED = 0x20
// 0x40 // 0x40
// 0x80 // 0x80
}; };
+1 -1
View File
@@ -49,7 +49,7 @@ enum UNIT_EVENT_TYPE
UEV_THREAT_SET_NEXT_TARGET = 1<<5, UEV_THREAT_SET_NEXT_TARGET = 1<<5,
// A new victim (target) was set. Could be NULL // A new victim (target) was set. Could be NULL
UEV_THREAT_VICTIM_CHANGED = 1<<6, UEV_THREAT_VICTIM_CHANGED = 1<<6
// Future use // Future use
//UEV_UNIT_KILLED = 1<<7, //UEV_UNIT_KILLED = 1<<7,
+1 -1
View File
@@ -149,7 +149,7 @@ enum RelationType
enum enum
{ {
MAX_CONDITION_TARGETS = 3, MAX_CONDITION_TARGETS = 3
}; };
struct ConditionSourceInfo struct ConditionSourceInfo
+3 -3
View File
@@ -31,7 +31,7 @@ enum DisableType
DISABLE_TYPE_BATTLEGROUND = 3, DISABLE_TYPE_BATTLEGROUND = 3,
DISABLE_TYPE_ACHIEVEMENT_CRITERIA = 4, DISABLE_TYPE_ACHIEVEMENT_CRITERIA = 4,
DISABLE_TYPE_OUTDOORPVP = 5, DISABLE_TYPE_OUTDOORPVP = 5,
DISABLE_TYPE_VMAP = 6, DISABLE_TYPE_VMAP = 6
}; };
enum SpellDisableTypes enum SpellDisableTypes
@@ -43,7 +43,7 @@ enum SpellDisableTypes
SPELL_DISABLE_MAP = 0x10, SPELL_DISABLE_MAP = 0x10,
SPELL_DISABLE_AREA = 0x20, SPELL_DISABLE_AREA = 0x20,
MAX_SPELL_DISABLE_TYPE = ( SPELL_DISABLE_PLAYER | SPELL_DISABLE_CREATURE | SPELL_DISABLE_PET | MAX_SPELL_DISABLE_TYPE = ( SPELL_DISABLE_PLAYER | SPELL_DISABLE_CREATURE | SPELL_DISABLE_PET |
SPELL_DISABLE_DEPRECATED_SPELL | SPELL_DISABLE_MAP | SPELL_DISABLE_AREA), SPELL_DISABLE_DEPRECATED_SPELL | SPELL_DISABLE_MAP | SPELL_DISABLE_AREA)
}; };
enum VmapDisableTypes enum VmapDisableTypes
@@ -51,7 +51,7 @@ enum VmapDisableTypes
VMAP_DISABLE_AREAFLAG = 0x1, VMAP_DISABLE_AREAFLAG = 0x1,
VMAP_DISABLE_HEIGHT = 0x2, VMAP_DISABLE_HEIGHT = 0x2,
VMAP_DISABLE_LOS = 0x4, VMAP_DISABLE_LOS = 0x4,
VMAP_DISABLE_LIQUIDSTATUS = 0x8, VMAP_DISABLE_LIQUIDSTATUS = 0x8
}; };
namespace DisableMgr namespace DisableMgr
+14 -14
View File
@@ -53,7 +53,7 @@ enum AchievementFaction
{ {
ACHIEVEMENT_FACTION_HORDE = 0, ACHIEVEMENT_FACTION_HORDE = 0,
ACHIEVEMENT_FACTION_ALLIANCE = 1, ACHIEVEMENT_FACTION_ALLIANCE = 1,
ACHIEVEMENT_FACTION_ANY = -1, ACHIEVEMENT_FACTION_ANY = -1
}; };
enum AchievementFlags enum AchievementFlags
@@ -67,7 +67,7 @@ enum AchievementFlags
ACHIEVEMENT_FLAG_AVERAGE = 0x00000040, // Show as average value (value / time_in_days) depend from other flag (by def use last criteria value) ACHIEVEMENT_FLAG_AVERAGE = 0x00000040, // Show as average value (value / time_in_days) depend from other flag (by def use last criteria value)
ACHIEVEMENT_FLAG_BAR = 0x00000080, // Show as progress bar (value / max vale) depend from other flag (by def use last criteria value) ACHIEVEMENT_FLAG_BAR = 0x00000080, // Show as progress bar (value / max vale) depend from other flag (by def use last criteria value)
ACHIEVEMENT_FLAG_REALM_FIRST_REACH = 0x00000100, // ACHIEVEMENT_FLAG_REALM_FIRST_REACH = 0x00000100, //
ACHIEVEMENT_FLAG_REALM_FIRST_KILL = 0x00000200, // ACHIEVEMENT_FLAG_REALM_FIRST_KILL = 0x00000200 //
}; };
#define MAX_CRITERIA_REQUIREMENTS 2 #define MAX_CRITERIA_REQUIREMENTS 2
@@ -81,7 +81,7 @@ enum AchievementCriteriaCondition
ACHIEVEMENT_CRITERIA_CONDITION_NO_LOSE = 4, // only used in "Win 10 arenas without losing" ACHIEVEMENT_CRITERIA_CONDITION_NO_LOSE = 4, // only used in "Win 10 arenas without losing"
ACHIEVEMENT_CRITERIA_CONDITION_NO_SPELL_HIT = 9, // requires the player not to be hit by specific spell ACHIEVEMENT_CRITERIA_CONDITION_NO_SPELL_HIT = 9, // requires the player not to be hit by specific spell
ACHIEVEMENT_CRITERIA_CONDITION_NOT_IN_GROUP = 10, // requires the player not to be in group ACHIEVEMENT_CRITERIA_CONDITION_NOT_IN_GROUP = 10, // requires the player not to be in group
ACHIEVEMENT_CRITERIA_CONDITION_UNK3 = 13, // unk ACHIEVEMENT_CRITERIA_CONDITION_UNK3 = 13 // unk
}; };
enum AchievementCriteriaFlags enum AchievementCriteriaFlags
@@ -91,7 +91,7 @@ enum AchievementCriteriaFlags
ACHIEVEMENT_CRITERIA_FLAG_UNK3 = 0x00000004, // BG related?? ACHIEVEMENT_CRITERIA_FLAG_UNK3 = 0x00000004, // BG related??
ACHIEVEMENT_CRITERIA_FLAG_UNK4 = 0x00000008, // ACHIEVEMENT_CRITERIA_FLAG_UNK4 = 0x00000008, //
ACHIEVEMENT_CRITERIA_FLAG_UNK5 = 0x00000010, // not used ACHIEVEMENT_CRITERIA_FLAG_UNK5 = 0x00000010, // not used
ACHIEVEMENT_CRITERIA_FLAG_MONEY_COUNTER = 0x00000020, // Displays counter as money ACHIEVEMENT_CRITERIA_FLAG_MONEY_COUNTER = 0x00000020 // Displays counter as money
}; };
enum AchievementCriteriaTimedTypes enum AchievementCriteriaTimedTypes
@@ -103,7 +103,7 @@ enum AchievementCriteriaTimedTypes
ACHIEVEMENT_TIMED_TYPE_CREATURE = 7, // Timer is started by killing creature with entry in timerStartEvent ACHIEVEMENT_TIMED_TYPE_CREATURE = 7, // Timer is started by killing creature with entry in timerStartEvent
ACHIEVEMENT_TIMED_TYPE_ITEM = 9, // Timer is started by using item with entry in timerStartEvent ACHIEVEMENT_TIMED_TYPE_ITEM = 9, // Timer is started by using item with entry in timerStartEvent
ACHIEVEMENT_TIMED_TYPE_MAX, ACHIEVEMENT_TIMED_TYPE_MAX
}; };
enum AchievementCriteriaTypes enum AchievementCriteriaTypes
@@ -223,12 +223,12 @@ enum AchievementCriteriaTypes
// 122 // 122
// 123 // 123
// 0..123 => 124 criteria types total // 0..123 => 124 criteria types total
ACHIEVEMENT_CRITERIA_TYPE_TOTAL = 124, ACHIEVEMENT_CRITERIA_TYPE_TOTAL = 124
}; };
enum AchievementCategory enum AchievementCategory
{ {
CATEGORY_CHILDRENS_WEEK = 163, CATEGORY_CHILDRENS_WEEK = 163
}; };
enum AreaFlags enum AreaFlags
@@ -275,7 +275,7 @@ enum Difficulty
RAID_DIFFICULTY_10MAN_NORMAL = 0, RAID_DIFFICULTY_10MAN_NORMAL = 0,
RAID_DIFFICULTY_25MAN_NORMAL = 1, RAID_DIFFICULTY_25MAN_NORMAL = 1,
RAID_DIFFICULTY_10MAN_HEROIC = 2, RAID_DIFFICULTY_10MAN_HEROIC = 2,
RAID_DIFFICULTY_25MAN_HEROIC = 3, RAID_DIFFICULTY_25MAN_HEROIC = 3
}; };
#define RAID_DIFFICULTY_MASK_25MAN 1 // since 25man difficulties are 1 and 3, we can check them like that #define RAID_DIFFICULTY_MASK_25MAN 1 // since 25man difficulties are 1 and 3, we can check them like that
@@ -300,14 +300,14 @@ enum SpawnMask
SPAWNMASK_RAID_25MAN_HEROIC = (1 << RAID_DIFFICULTY_25MAN_HEROIC), SPAWNMASK_RAID_25MAN_HEROIC = (1 << RAID_DIFFICULTY_25MAN_HEROIC),
SPAWNMASK_RAID_HEROIC_ALL = (SPAWNMASK_RAID_10MAN_HEROIC | SPAWNMASK_RAID_25MAN_HEROIC), SPAWNMASK_RAID_HEROIC_ALL = (SPAWNMASK_RAID_10MAN_HEROIC | SPAWNMASK_RAID_25MAN_HEROIC),
SPAWNMASK_RAID_ALL = (SPAWNMASK_RAID_NORMAL_ALL | SPAWNMASK_RAID_HEROIC_ALL), SPAWNMASK_RAID_ALL = (SPAWNMASK_RAID_NORMAL_ALL | SPAWNMASK_RAID_HEROIC_ALL)
}; };
enum FactionTemplateFlags enum FactionTemplateFlags
{ {
FACTION_TEMPLATE_FLAG_PVP = 0x00000800, // flagged for PvP FACTION_TEMPLATE_FLAG_PVP = 0x00000800, // flagged for PvP
FACTION_TEMPLATE_FLAG_CONTESTED_GUARD = 0x00001000, // faction will attack players that were involved in PvP combats FACTION_TEMPLATE_FLAG_CONTESTED_GUARD = 0x00001000, // faction will attack players that were involved in PvP combats
FACTION_TEMPLATE_FLAG_HOSTILE_BY_DEFAULT= 0x00002000, FACTION_TEMPLATE_FLAG_HOSTILE_BY_DEFAULT= 0x00002000
}; };
enum FactionMasks enum FactionMasks
@@ -350,7 +350,7 @@ enum ItemEnchantmentType
enum ItemLimitCategoryMode enum ItemLimitCategoryMode
{ {
ITEM_LIMIT_CATEGORY_MODE_HAVE = 0, // limit applied to amount items in inventory/bank ITEM_LIMIT_CATEGORY_MODE_HAVE = 0, // limit applied to amount items in inventory/bank
ITEM_LIMIT_CATEGORY_MODE_EQUIP = 1, // limit applied to amount equipped items (including used gems) ITEM_LIMIT_CATEGORY_MODE_EQUIP = 1 // limit applied to amount equipped items (including used gems)
}; };
enum TotemCategoryType enum TotemCategoryType
@@ -411,7 +411,7 @@ enum SummonPropFlags
SUMMON_PROP_FLAG_UNK13 = 0x00001000, // Lightwell, Jeeves, Gnomish Alarm-o-bot, Build vehicles(wintergrasp) SUMMON_PROP_FLAG_UNK13 = 0x00001000, // Lightwell, Jeeves, Gnomish Alarm-o-bot, Build vehicles(wintergrasp)
SUMMON_PROP_FLAG_UNK14 = 0x00002000, // Guides, player follows SUMMON_PROP_FLAG_UNK14 = 0x00002000, // Guides, player follows
SUMMON_PROP_FLAG_UNK15 = 0x00004000, // Force of Nature, Shadowfiend, Feral Spirit, Summon Water Elemental SUMMON_PROP_FLAG_UNK15 = 0x00004000, // Force of Nature, Shadowfiend, Feral Spirit, Summon Water Elemental
SUMMON_PROP_FLAG_UNK16 = 0x00008000, // Light/Dark Bullet, Soul/Fiery Consumption, Twisted Visage, Twilight Whelp. Phase related? SUMMON_PROP_FLAG_UNK16 = 0x00008000 // Light/Dark Bullet, Soul/Fiery Consumption, Twisted Visage, Twilight Whelp. Phase related?
}; };
enum VehicleSeatFlags enum VehicleSeatFlags
@@ -436,7 +436,7 @@ enum VehicleSeatFlags
VEHICLE_SEAT_FLAG_HAS_START_WARITING_FOR_VEH_TRANSITION_ANIM_EXIT = 0x10000000, VEHICLE_SEAT_FLAG_HAS_START_WARITING_FOR_VEH_TRANSITION_ANIM_EXIT = 0x10000000,
VEHICLE_SEAT_FLAG_CAN_CAST = 0x20000000, // Lua_UnitHasVehicleUI VEHICLE_SEAT_FLAG_CAN_CAST = 0x20000000, // Lua_UnitHasVehicleUI
VEHICLE_SEAT_FLAG_UNK2 = 0x40000000, // checked in conjunction with 0x800 in CastSpell2 VEHICLE_SEAT_FLAG_UNK2 = 0x40000000, // checked in conjunction with 0x800 in CastSpell2
VEHICLE_SEAT_FLAG_ALLOWS_INTERACTION = 0x80000000, VEHICLE_SEAT_FLAG_ALLOWS_INTERACTION = 0x80000000
}; };
enum VehicleSeatFlagsB enum VehicleSeatFlagsB
@@ -449,7 +449,7 @@ enum VehicleSeatFlagsB
VEHICLE_SEAT_FLAG_B_USABLE_FORCED_3 = 0x00000100, VEHICLE_SEAT_FLAG_B_USABLE_FORCED_3 = 0x00000100,
VEHICLE_SEAT_FLAG_B_USABLE_FORCED_4 = 0x02000000, VEHICLE_SEAT_FLAG_B_USABLE_FORCED_4 = 0x02000000,
VEHICLE_SEAT_FLAG_B_CAN_SWITCH = 0x04000000, VEHICLE_SEAT_FLAG_B_CAN_SWITCH = 0x04000000,
VEHICLE_SEAT_FLAG_B_VEHICLE_PLAYERFRAME_UI = 0x80000000, // Lua_UnitHasVehiclePlayerFrameUI - actually checked for flagsb &~ 0x80000000 VEHICLE_SEAT_FLAG_B_VEHICLE_PLAYERFRAME_UI = 0x80000000 // Lua_UnitHasVehiclePlayerFrameUI - actually checked for flagsb &~ 0x80000000
}; };
#endif #endif
@@ -2480,7 +2480,7 @@ void Creature::SetPosition(float x, float y, float z, float o)
GetMap()->CreatureRelocation(ToCreature(), x, y, z, o); GetMap()->CreatureRelocation(ToCreature(), x, y, z, o);
if (IsVehicle()) if (IsVehicle())
GetVehicleKit()->RelocatePassengers(x, y, z, o); GetVehicleKit()->RelocatePassengers();
} }
bool Creature::IsDungeonBoss() const bool Creature::IsDungeonBoss() const
+2 -2
View File
@@ -54,7 +54,7 @@ enum CreatureFlagsExtra
CREATURE_FLAG_EXTRA_NO_SKILLGAIN = 0x00040000, // creature won't increase weapon skills CREATURE_FLAG_EXTRA_NO_SKILLGAIN = 0x00040000, // creature won't increase weapon skills
CREATURE_FLAG_EXTRA_TAUNT_DIMINISH = 0x00080000, // Taunt is a subject to diminishing returns on this creautre CREATURE_FLAG_EXTRA_TAUNT_DIMINISH = 0x00080000, // Taunt is a subject to diminishing returns on this creautre
CREATURE_FLAG_EXTRA_ALL_DIMINISH = 0x00100000, // Creature is subject to all diminishing returns as player are CREATURE_FLAG_EXTRA_ALL_DIMINISH = 0x00100000, // Creature is subject to all diminishing returns as player are
CREATURE_FLAG_EXTRA_DUNGEON_BOSS = 0x10000000, // creature is a dungeon boss (SET DYNAMICALLY, DO NOT ADD IN DB) CREATURE_FLAG_EXTRA_DUNGEON_BOSS = 0x10000000 // creature is a dungeon boss (SET DYNAMICALLY, DO NOT ADD IN DB)
}; };
#define CREATURE_FLAG_EXTRA_DB_ALLOWED (CREATURE_FLAG_EXTRA_INSTANCE_BIND | CREATURE_FLAG_EXTRA_CIVILIAN | \ #define CREATURE_FLAG_EXTRA_DB_ALLOWED (CREATURE_FLAG_EXTRA_INSTANCE_BIND | CREATURE_FLAG_EXTRA_CIVILIAN | \
@@ -414,7 +414,7 @@ enum CreatureCellMoveState
{ {
CREATURE_CELL_MOVE_NONE, // not in move list CREATURE_CELL_MOVE_NONE, // not in move list
CREATURE_CELL_MOVE_ACTIVE, // in move list CREATURE_CELL_MOVE_ACTIVE, // in move list
CREATURE_CELL_MOVE_INACTIVE, //in move list but should not move CREATURE_CELL_MOVE_INACTIVE // in move list but should not move
}; };
class MapCreature class MapCreature
@@ -29,7 +29,7 @@ enum DynamicObjectType
{ {
DYNAMIC_OBJECT_PORTAL = 0x0, // unused DYNAMIC_OBJECT_PORTAL = 0x0, // unused
DYNAMIC_OBJECT_AREA_SPELL = 0x1, DYNAMIC_OBJECT_AREA_SPELL = 0x1,
DYNAMIC_OBJECT_FARSIGHT_FOCUS = 0x2, DYNAMIC_OBJECT_FARSIGHT_FOCUS = 0x2
}; };
class DynamicObject : public WorldObject, public GridObject<DynamicObject> class DynamicObject : public WorldObject, public GridObject<DynamicObject>
@@ -181,7 +181,7 @@ enum ItemFieldFlags
ITEM_FLAG_UNK25 = 0x40000000, // ? ITEM_FLAG_UNK25 = 0x40000000, // ?
ITEM_FLAG_UNK26 = 0x80000000, // ? ITEM_FLAG_UNK26 = 0x80000000, // ?
ITEM_FLAG_MAIL_TEXT_MASK = ITEM_FLAG_READABLE | ITEM_FLAG_UNK13 | ITEM_FLAG_UNK14, ITEM_FLAG_MAIL_TEXT_MASK = ITEM_FLAG_READABLE | ITEM_FLAG_UNK13 | ITEM_FLAG_UNK14
}; };
enum ItemFlagsExtra enum ItemFlagsExtra
@@ -196,7 +196,7 @@ enum ItemFlagsCustom
{ {
ITEM_FLAGS_CU_DURATION_REAL_TIME = 0x0001, // Item duration will tick even if player is offline ITEM_FLAGS_CU_DURATION_REAL_TIME = 0x0001, // Item duration will tick even if player is offline
ITEM_FLAGS_CU_IGNORE_QUEST_STATUS = 0x0002, // No quest status will be checked when this item drops ITEM_FLAGS_CU_IGNORE_QUEST_STATUS = 0x0002, // No quest status will be checked when this item drops
ITEM_FLAGS_CU_FOLLOW_LOOT_RULES = 0x0004, // Item will always follow group/master/need before greed looting rules ITEM_FLAGS_CU_FOLLOW_LOOT_RULES = 0x0004 // Item will always follow group/master/need before greed looting rules
}; };
enum BAG_FAMILY_MASK enum BAG_FAMILY_MASK
@@ -44,7 +44,7 @@ enum HighGuid
HIGHGUID_DYNAMICOBJECT = 0xF100, // blizz F100 HIGHGUID_DYNAMICOBJECT = 0xF100, // blizz F100
HIGHGUID_CORPSE = 0xF101, // blizz F100 HIGHGUID_CORPSE = 0xF101, // blizz F100
HIGHGUID_MO_TRANSPORT = 0x1FC0, // blizz 1FC0 (for GAMEOBJECT_TYPE_MO_TRANSPORT) HIGHGUID_MO_TRANSPORT = 0x1FC0, // blizz 1FC0 (for GAMEOBJECT_TYPE_MO_TRANSPORT)
HIGHGUID_GROUP = 0x1F50, HIGHGUID_GROUP = 0x1F50
}; };
#define IS_EMPTY_GUID(Guid) (Guid == 0) #define IS_EMPTY_GUID(Guid) (Guid == 0)
@@ -32,7 +32,7 @@ enum UpdatefieldFlags
UF_FLAG_SPECIAL_INFO = 0x020, UF_FLAG_SPECIAL_INFO = 0x020,
UF_FLAG_PARTY_MEMBER = 0x040, UF_FLAG_PARTY_MEMBER = 0x040,
UF_FLAG_UNUSED2 = 0x080, UF_FLAG_UNUSED2 = 0x080,
UF_FLAG_DYNAMIC = 0x100, UF_FLAG_DYNAMIC = 0x100
}; };
extern uint32 ItemUpdateFieldFlags[CONTAINER_END]; extern uint32 ItemUpdateFieldFlags[CONTAINER_END];
@@ -28,7 +28,7 @@ enum EObjectFields
OBJECT_FIELD_ENTRY = 0x0003, // Size: 1, Type: INT, Flags: PUBLIC OBJECT_FIELD_ENTRY = 0x0003, // Size: 1, Type: INT, Flags: PUBLIC
OBJECT_FIELD_SCALE_X = 0x0004, // Size: 1, Type: FLOAT, Flags: PUBLIC OBJECT_FIELD_SCALE_X = 0x0004, // Size: 1, Type: FLOAT, Flags: PUBLIC
OBJECT_FIELD_PADDING = 0x0005, // Size: 1, Type: INT, Flags: NONE OBJECT_FIELD_PADDING = 0x0005, // Size: 1, Type: INT, Flags: NONE
OBJECT_END = 0x0006, OBJECT_END = 0x0006
}; };
enum EItemFields enum EItemFields
@@ -71,7 +71,7 @@ enum EItemFields
ITEM_FIELD_MAXDURABILITY = OBJECT_END + 0x0037, // Size: 1, Type: INT, Flags: OWNER, ITEM_OWNER ITEM_FIELD_MAXDURABILITY = OBJECT_END + 0x0037, // Size: 1, Type: INT, Flags: OWNER, ITEM_OWNER
ITEM_FIELD_CREATE_PLAYED_TIME = OBJECT_END + 0x0038, // Size: 1, Type: INT, Flags: PUBLIC ITEM_FIELD_CREATE_PLAYED_TIME = OBJECT_END + 0x0038, // Size: 1, Type: INT, Flags: PUBLIC
ITEM_FIELD_PAD = OBJECT_END + 0x0039, // Size: 1, Type: INT, Flags: NONE ITEM_FIELD_PAD = OBJECT_END + 0x0039, // Size: 1, Type: INT, Flags: NONE
ITEM_END = OBJECT_END + 0x003A, ITEM_END = OBJECT_END + 0x003A
}; };
enum EContainerFields enum EContainerFields
@@ -79,7 +79,7 @@ enum EContainerFields
CONTAINER_FIELD_NUM_SLOTS = ITEM_END + 0x0000, // Size: 1, Type: INT, Flags: PUBLIC CONTAINER_FIELD_NUM_SLOTS = ITEM_END + 0x0000, // Size: 1, Type: INT, Flags: PUBLIC
CONTAINER_ALIGN_PAD = ITEM_END + 0x0001, // Size: 1, Type: BYTES, Flags: NONE CONTAINER_ALIGN_PAD = ITEM_END + 0x0001, // Size: 1, Type: BYTES, Flags: NONE
CONTAINER_FIELD_SLOT_1 = ITEM_END + 0x0002, // Size: 72, Type: LONG, Flags: PUBLIC CONTAINER_FIELD_SLOT_1 = ITEM_END + 0x0002, // Size: 72, Type: LONG, Flags: PUBLIC
CONTAINER_END = ITEM_END + 0x004A, CONTAINER_END = ITEM_END + 0x004A
}; };
enum EUnitFields enum EUnitFields
@@ -390,7 +390,7 @@ enum EUnitFields
PLAYER_FIELD_GLYPHS_1 = UNIT_END + 0x0492, // Size: 6, Type: INT, Flags: PRIVATE PLAYER_FIELD_GLYPHS_1 = UNIT_END + 0x0492, // Size: 6, Type: INT, Flags: PRIVATE
PLAYER_GLYPHS_ENABLED = UNIT_END + 0x0498, // Size: 1, Type: INT, Flags: PRIVATE PLAYER_GLYPHS_ENABLED = UNIT_END + 0x0498, // Size: 1, Type: INT, Flags: PRIVATE
PLAYER_PET_SPELL_POWER = UNIT_END + 0x0499, // Size: 1, Type: INT, Flags: PRIVATE PLAYER_PET_SPELL_POWER = UNIT_END + 0x0499, // Size: 1, Type: INT, Flags: PRIVATE
PLAYER_END = UNIT_END + 0x049A, PLAYER_END = UNIT_END + 0x049A
}; };
enum EGameObjectFields enum EGameObjectFields
@@ -403,7 +403,7 @@ enum EGameObjectFields
GAMEOBJECT_FACTION = OBJECT_END + 0x0009, // Size: 1, Type: INT, Flags: PUBLIC GAMEOBJECT_FACTION = OBJECT_END + 0x0009, // Size: 1, Type: INT, Flags: PUBLIC
GAMEOBJECT_LEVEL = OBJECT_END + 0x000A, // Size: 1, Type: INT, Flags: PUBLIC GAMEOBJECT_LEVEL = OBJECT_END + 0x000A, // Size: 1, Type: INT, Flags: PUBLIC
GAMEOBJECT_BYTES_1 = OBJECT_END + 0x000B, // Size: 1, Type: BYTES, Flags: PUBLIC GAMEOBJECT_BYTES_1 = OBJECT_END + 0x000B, // Size: 1, Type: BYTES, Flags: PUBLIC
GAMEOBJECT_END = OBJECT_END + 0x000C, GAMEOBJECT_END = OBJECT_END + 0x000C
}; };
enum EDynamicObjectFields enum EDynamicObjectFields
@@ -413,7 +413,7 @@ enum EDynamicObjectFields
DYNAMICOBJECT_SPELLID = OBJECT_END + 0x0003, // Size: 1, Type: INT, Flags: PUBLIC DYNAMICOBJECT_SPELLID = OBJECT_END + 0x0003, // Size: 1, Type: INT, Flags: PUBLIC
DYNAMICOBJECT_RADIUS = OBJECT_END + 0x0004, // Size: 1, Type: FLOAT, Flags: PUBLIC DYNAMICOBJECT_RADIUS = OBJECT_END + 0x0004, // Size: 1, Type: FLOAT, Flags: PUBLIC
DYNAMICOBJECT_CASTTIME = OBJECT_END + 0x0005, // Size: 1, Type: INT, Flags: PUBLIC DYNAMICOBJECT_CASTTIME = OBJECT_END + 0x0005, // Size: 1, Type: INT, Flags: PUBLIC
DYNAMICOBJECT_END = OBJECT_END + 0x0006, DYNAMICOBJECT_END = OBJECT_END + 0x0006
}; };
enum ECorpseFields enum ECorpseFields
@@ -428,6 +428,6 @@ enum ECorpseFields
CORPSE_FIELD_FLAGS = OBJECT_END + 0x001B, // Size: 1, Type: INT, Flags: PUBLIC CORPSE_FIELD_FLAGS = OBJECT_END + 0x001B, // Size: 1, Type: INT, Flags: PUBLIC
CORPSE_FIELD_DYNAMIC_FLAGS = OBJECT_END + 0x001C, // Size: 1, Type: INT, Flags: DYNAMIC CORPSE_FIELD_DYNAMIC_FLAGS = OBJECT_END + 0x001C, // Size: 1, Type: INT, Flags: DYNAMIC
CORPSE_FIELD_PAD = OBJECT_END + 0x001D, // Size: 1, Type: INT, Flags: NONE CORPSE_FIELD_PAD = OBJECT_END + 0x001D, // Size: 1, Type: INT, Flags: NONE
CORPSE_END = OBJECT_END + 0x001E, CORPSE_END = OBJECT_END + 0x001E
}; };
#endif #endif
+2 -2
View File
@@ -27,7 +27,7 @@ enum PetType
{ {
SUMMON_PET = 0, SUMMON_PET = 0,
HUNTER_PET = 1, HUNTER_PET = 1,
MAX_PET_TYPE = 4, MAX_PET_TYPE = 4
}; };
#define MAX_PET_STABLES 4 #define MAX_PET_STABLES 4
@@ -61,7 +61,7 @@ enum PetSpellType
{ {
PETSPELL_NORMAL = 0, PETSPELL_NORMAL = 0,
PETSPELL_FAMILY = 1, PETSPELL_FAMILY = 1,
PETSPELL_TALENT = 2, PETSPELL_TALENT = 2
}; };
struct PetSpell struct PetSpell
+1 -1
View File
@@ -11532,7 +11532,7 @@ InventoryResult Player::CanEquipItem(uint8 slot, uint16 &dest, Item* pItem, bool
if (eslot == EQUIPMENT_SLOT_OFFHAND) if (eslot == EQUIPMENT_SLOT_OFFHAND)
{ {
// Do not allow polearm to be equipped in the offhand (rare case for the only 1h polearm 41750) // Do not allow polearm to be equipped in the offhand (rare case for the only 1h polearm 41750)
if (pProto->SubClass == ITEM_SUBCLASS_WEAPON_POLEARM) if (type == INVTYPE_WEAPON && pProto->SubClass == ITEM_SUBCLASS_WEAPON_POLEARM)
return EQUIP_ERR_ITEM_DOESNT_GO_TO_SLOT; return EQUIP_ERR_ITEM_DOESNT_GO_TO_SLOT;
else if (type == INVTYPE_WEAPON || type == INVTYPE_WEAPONOFFHAND) else if (type == INVTYPE_WEAPON || type == INVTYPE_WEAPONOFFHAND)
+7 -7
View File
@@ -299,7 +299,7 @@ struct Areas
enum RuneCooldowns enum RuneCooldowns
{ {
RUNE_BASE_COOLDOWN = 10000, RUNE_BASE_COOLDOWN = 10000,
RUNE_MISS_COOLDOWN = 1500, // cooldown applied on runes when the spell misses RUNE_MISS_COOLDOWN = 1500 // cooldown applied on runes when the spell misses
}; };
enum RuneType enum RuneType
@@ -399,7 +399,7 @@ enum PlayerFlags
PLAYER_FLAGS_UNK28 = 0x10000000, PLAYER_FLAGS_UNK28 = 0x10000000,
PLAYER_FLAGS_UNK29 = 0x20000000, PLAYER_FLAGS_UNK29 = 0x20000000,
PLAYER_FLAGS_UNK30 = 0x40000000, PLAYER_FLAGS_UNK30 = 0x40000000,
PLAYER_FLAGS_UNK31 = 0x80000000, PLAYER_FLAGS_UNK31 = 0x80000000
}; };
// used for PLAYER__FIELD_KNOWN_TITLES field (uint64), (1<<bit_index) without (-1) // used for PLAYER__FIELD_KNOWN_TITLES field (uint64), (1<<bit_index) without (-1)
@@ -672,7 +672,7 @@ enum TradeSlots
TRADE_SLOT_COUNT = 7, TRADE_SLOT_COUNT = 7,
TRADE_SLOT_TRADED_COUNT = 6, TRADE_SLOT_TRADED_COUNT = 6,
TRADE_SLOT_NONTRADED = 6, TRADE_SLOT_NONTRADED = 6,
TRADE_SLOT_INVALID = -1, TRADE_SLOT_INVALID = -1
}; };
enum TransferAbortReason enum TransferAbortReason
@@ -692,7 +692,7 @@ enum TransferAbortReason
TRANSFER_ABORT_NOT_FOUND2 = 0x0D, // 3.1 TRANSFER_ABORT_NOT_FOUND2 = 0x0D, // 3.1
TRANSFER_ABORT_NOT_FOUND3 = 0x0E, // 3.2 TRANSFER_ABORT_NOT_FOUND3 = 0x0E, // 3.2
TRANSFER_ABORT_REALM_ONLY = 0x0F, // All players on party must be from the same realm. TRANSFER_ABORT_REALM_ONLY = 0x0F, // All players on party must be from the same realm.
TRANSFER_ABORT_MAP_NOT_ALLOWED = 0x10, // Map can't be entered at this time. TRANSFER_ABORT_MAP_NOT_ALLOWED = 0x10 // Map can't be entered at this time.
}; };
enum InstanceResetWarningType enum InstanceResetWarningType
@@ -739,7 +739,7 @@ enum TeleportToOptions
TELE_TO_NOT_LEAVE_TRANSPORT = 0x02, TELE_TO_NOT_LEAVE_TRANSPORT = 0x02,
TELE_TO_NOT_LEAVE_COMBAT = 0x04, TELE_TO_NOT_LEAVE_COMBAT = 0x04,
TELE_TO_NOT_UNSUMMON_PET = 0x08, TELE_TO_NOT_UNSUMMON_PET = 0x08,
TELE_TO_SPELL = 0x10, TELE_TO_SPELL = 0x10
}; };
/// Type of environmental damages /// Type of environmental damages
@@ -761,7 +761,7 @@ enum PlayerChatTag
CHAT_TAG_DND = 0x02, CHAT_TAG_DND = 0x02,
CHAT_TAG_GM = 0x04, CHAT_TAG_GM = 0x04,
CHAT_TAG_COM = 0x08, // Commentator CHAT_TAG_COM = 0x08, // Commentator
CHAT_TAG_DEV = 0x10, CHAT_TAG_DEV = 0x10
}; };
enum PlayedTimeIndex enum PlayedTimeIndex
@@ -807,7 +807,7 @@ enum PlayerLoginQueryIndex
PLAYER_LOGIN_QUERY_LOADQUESTSTATUSREW = 29, PLAYER_LOGIN_QUERY_LOADQUESTSTATUSREW = 29,
PLAYER_LOGIN_QUERY_LOADINSTANCELOCKTIMES = 30, PLAYER_LOGIN_QUERY_LOADINSTANCELOCKTIMES = 30,
PLAYER_LOGIN_QUERY_LOADSEASONALQUESTSTATUS = 31, PLAYER_LOGIN_QUERY_LOADSEASONALQUESTSTATUS = 31,
MAX_PLAYER_LOGIN_QUERY, MAX_PLAYER_LOGIN_QUERY
}; };
enum PlayerDelayedOperations enum PlayerDelayedOperations
+23 -10
View File
@@ -154,12 +154,25 @@ _hitMask(hitMask), _spell(spell), _damageInfo(damageInfo), _healInfo(healInfo)
#ifdef _MSC_VER #ifdef _MSC_VER
#pragma warning(disable:4355) #pragma warning(disable:4355)
#endif #endif
Unit::Unit(bool isWorldObject): WorldObject(isWorldObject), Unit::Unit(bool isWorldObject): WorldObject(isWorldObject)
m_movedPlayer(NULL), m_lastSanctuaryTime(0), IsAIEnabled(false), NeedChangeAI(false), , m_movedPlayer(NULL)
m_ControlledByPlayer(false), movespline(new Movement::MoveSpline()), i_AI(NULL), , m_lastSanctuaryTime(0)
i_disabledAI(NULL), m_procDeep(0), m_removedAurasCount(0), i_motionMaster(this), , m_TempSpeed(0.0f)
m_ThreatManager(this), m_vehicle(NULL), m_vehicleKit(NULL), m_unitTypeMask(UNIT_MASK_NONE), , IsAIEnabled(false)
m_HostileRefManager(this), m_TempSpeed(0.0f), m_AutoRepeatFirstCast(false) , NeedChangeAI(false)
, m_ControlledByPlayer(false)
, movespline(new Movement::MoveSpline())
, i_AI(NULL)
, i_disabledAI(NULL)
, m_AutoRepeatFirstCast(false)
, m_procDeep(0)
, m_removedAurasCount(0)
, i_motionMaster(this)
, m_ThreatManager(this)
, m_vehicle(NULL)
, m_vehicleKit(NULL)
, m_unitTypeMask(UNIT_MASK_NONE)
, m_HostileRefManager(this)
{ {
#ifdef _MSC_VER #ifdef _MSC_VER
#pragma warning(default:4355) #pragma warning(default:4355)
@@ -13218,13 +13231,13 @@ int32 Unit::ModSpellDuration(SpellInfo const* spellProto, Unit const* target, in
} }
break; break;
case SPELLFAMILY_PALADIN: case SPELLFAMILY_PALADIN:
if (spellProto->SpellFamilyFlags[0] & 0x00000002 && spellProto->SpellIconID == 298) if ((spellProto->SpellFamilyFlags[0] & 0x00000002) && spellProto->SpellIconID == 298)
{ {
// Glyph of Blessing of Might // Glyph of Blessing of Might
if (AuraEffect* aurEff = GetAuraEffect(57958, 0)) if (AuraEffect* aurEff = GetAuraEffect(57958, 0))
duration += aurEff->GetAmount() * MINUTE * IN_MILLISECONDS; duration += aurEff->GetAmount() * MINUTE * IN_MILLISECONDS;
} }
else if (spellProto->SpellFamilyFlags[0] & 0x00010000 && spellProto->SpellIconID == 306) else if ((spellProto->SpellFamilyFlags[0] & 0x00010000) && spellProto->SpellIconID == 306)
{ {
// Glyph of Blessing of Wisdom // Glyph of Blessing of Wisdom
if (AuraEffect* aurEff = GetAuraEffect(57979, 0)) if (AuraEffect* aurEff = GetAuraEffect(57979, 0))
@@ -17312,7 +17325,7 @@ void Unit::UpdateOrientation(float orientation)
{ {
SetOrientation(orientation); SetOrientation(orientation);
if (IsVehicle()) if (IsVehicle())
GetVehicleKit()->RelocatePassengers(GetPositionX(), GetPositionY(), GetPositionZ(), orientation); GetVehicleKit()->RelocatePassengers();
} }
//! Only server-side height update, does not broadcast to client //! Only server-side height update, does not broadcast to client
@@ -17320,7 +17333,7 @@ void Unit::UpdateHeight(float newZ)
{ {
Relocate(GetPositionX(), GetPositionY(), newZ); Relocate(GetPositionX(), GetPositionY(), newZ);
if (IsVehicle()) if (IsVehicle())
GetVehicleKit()->RelocatePassengers(GetPositionX(), GetPositionY(), newZ, GetOrientation()); GetVehicleKit()->RelocatePassengers();
} }
void Unit::SendThreatListUpdate() void Unit::SendThreatListUpdate()
+15 -15
View File
@@ -46,7 +46,7 @@ enum SpellInterruptFlags
SPELL_INTERRUPT_FLAG_PUSH_BACK = 0x02, // push back SPELL_INTERRUPT_FLAG_PUSH_BACK = 0x02, // push back
SPELL_INTERRUPT_FLAG_UNK3 = 0x04, // any info? SPELL_INTERRUPT_FLAG_UNK3 = 0x04, // any info?
SPELL_INTERRUPT_FLAG_INTERRUPT = 0x08, // interrupt SPELL_INTERRUPT_FLAG_INTERRUPT = 0x08, // interrupt
SPELL_INTERRUPT_FLAG_ABORT_ON_DMG = 0x10, // _complete_ interrupt on direct damage SPELL_INTERRUPT_FLAG_ABORT_ON_DMG = 0x10 // _complete_ interrupt on direct damage
//SPELL_INTERRUPT_UNK = 0x20 // unk, 564 of 727 spells having this spell start with "Glyph" //SPELL_INTERRUPT_UNK = 0x20 // unk, 564 of 727 spells having this spell start with "Glyph"
}; };
@@ -86,7 +86,7 @@ enum SpellAuraInterruptFlags
AURA_INTERRUPT_FLAG_DIRECT_DAMAGE = 0x01000000, // 24 removed by any direct damage AURA_INTERRUPT_FLAG_DIRECT_DAMAGE = 0x01000000, // 24 removed by any direct damage
AURA_INTERRUPT_FLAG_LANDING = 0x02000000, // 25 removed by hitting the ground AURA_INTERRUPT_FLAG_LANDING = 0x02000000, // 25 removed by hitting the ground
AURA_INTERRUPT_FLAG_NOT_VICTIM = (AURA_INTERRUPT_FLAG_HITBYSPELL | AURA_INTERRUPT_FLAG_TAKE_DAMAGE | AURA_INTERRUPT_FLAG_DIRECT_DAMAGE), AURA_INTERRUPT_FLAG_NOT_VICTIM = (AURA_INTERRUPT_FLAG_HITBYSPELL | AURA_INTERRUPT_FLAG_TAKE_DAMAGE | AURA_INTERRUPT_FLAG_DIRECT_DAMAGE)
}; };
enum SpellModOp enum SpellModOp
@@ -133,7 +133,7 @@ enum SpellValueMod
SPELLVALUE_BASE_POINT2, SPELLVALUE_BASE_POINT2,
SPELLVALUE_RADIUS_MOD, SPELLVALUE_RADIUS_MOD,
SPELLVALUE_MAX_TARGETS, SPELLVALUE_MAX_TARGETS,
SPELLVALUE_AURA_STACK, SPELLVALUE_AURA_STACK
}; };
typedef std::pair<SpellValueMod, int32> CustomSpellValueMod; typedef std::pair<SpellValueMod, int32> CustomSpellValueMod;
@@ -253,7 +253,7 @@ enum UnitPVPStateFlags
enum UnitRename enum UnitRename
{ {
UNIT_CAN_BE_RENAMED = 0x01, UNIT_CAN_BE_RENAMED = 0x01,
UNIT_CAN_BE_ABANDONED = 0x02, UNIT_CAN_BE_ABANDONED = 0x02
}; };
#define CREATURE_MAX_SPELLS 8 #define CREATURE_MAX_SPELLS 8
@@ -403,7 +403,7 @@ enum TriggerCastFlags
TRIGGERED_IGNORE_CASTER_AURAS = 0x00010000, //! Will ignore caster aura restrictions or requirements TRIGGERED_IGNORE_CASTER_AURAS = 0x00010000, //! Will ignore caster aura restrictions or requirements
TRIGGERED_DISALLOW_PROC_EVENTS = 0x00020000, //! Disallows proc events from triggered spell (default) TRIGGERED_DISALLOW_PROC_EVENTS = 0x00020000, //! Disallows proc events from triggered spell (default)
TRIGGERED_DONT_REPORT_CAST_ERROR = 0x00040000, //! Will return SPELL_FAILED_DONT_REPORT in CheckCast functions TRIGGERED_DONT_REPORT_CAST_ERROR = 0x00040000, //! Will return SPELL_FAILED_DONT_REPORT in CheckCast functions
TRIGGERED_FULL_MASK = 0xFFFFFFFF, TRIGGERED_FULL_MASK = 0xFFFFFFFF
}; };
enum UnitMods enum UnitMods
@@ -466,7 +466,7 @@ enum DeathState
JUST_DIED = 1, JUST_DIED = 1,
CORPSE = 2, CORPSE = 2,
DEAD = 3, DEAD = 3,
JUST_RESPAWNED = 4, JUST_RESPAWNED = 4
}; };
enum UnitState enum UnitState
@@ -637,7 +637,7 @@ enum UnitFlags2
UNIT_FLAG2_DISABLE_TURN = 0x00008000, UNIT_FLAG2_DISABLE_TURN = 0x00008000,
UNIT_FLAG2_UNK2 = 0x00010000, UNIT_FLAG2_UNK2 = 0x00010000,
UNIT_FLAG2_PLAY_DEATH_ANIM = 0x00020000, // Plays special death animation upon death UNIT_FLAG2_PLAY_DEATH_ANIM = 0x00020000, // Plays special death animation upon death
UNIT_FLAG2_ALLOW_CHEAT_SPELLS = 0x00040000, // Allows casting spells with AttributesEx7 & SPELL_ATTR7_IS_CHEAT_SPELL UNIT_FLAG2_ALLOW_CHEAT_SPELLS = 0x00040000 // Allows casting spells with AttributesEx7 & SPELL_ATTR7_IS_CHEAT_SPELL
}; };
/// Non Player Character flags /// Non Player Character flags
@@ -669,7 +669,7 @@ enum NPCFlags
UNIT_NPC_FLAG_STABLEMASTER = 0x00400000, // 100% UNIT_NPC_FLAG_STABLEMASTER = 0x00400000, // 100%
UNIT_NPC_FLAG_GUILD_BANKER = 0x00800000, // cause client to send 997 opcode UNIT_NPC_FLAG_GUILD_BANKER = 0x00800000, // cause client to send 997 opcode
UNIT_NPC_FLAG_SPELLCLICK = 0x01000000, // cause client to send 1015 opcode (spell click) UNIT_NPC_FLAG_SPELLCLICK = 0x01000000, // cause client to send 1015 opcode (spell click)
UNIT_NPC_FLAG_PLAYER_VEHICLE = 0x02000000, // players with mounts that have vehicle data should have it set UNIT_NPC_FLAG_PLAYER_VEHICLE = 0x02000000 // players with mounts that have vehicle data should have it set
}; };
enum MovementFlags enum MovementFlags
@@ -721,7 +721,7 @@ enum MovementFlags
//! TODO if needed: add more flags to this masks that are exclusive to players //! TODO if needed: add more flags to this masks that are exclusive to players
MOVEMENTFLAG_MASK_PLAYER_ONLY = MOVEMENTFLAG_MASK_PLAYER_ONLY =
MOVEMENTFLAG_FLYING, MOVEMENTFLAG_FLYING
}; };
enum MovementFlags2 enum MovementFlags2
{ {
@@ -741,7 +741,7 @@ enum MovementFlags2
MOVEMENTFLAG2_INTERPOLATED_PITCHING = 0x00001000, MOVEMENTFLAG2_INTERPOLATED_PITCHING = 0x00001000,
MOVEMENTFLAG2_UNK14 = 0x00002000, MOVEMENTFLAG2_UNK14 = 0x00002000,
MOVEMENTFLAG2_UNK15 = 0x00004000, MOVEMENTFLAG2_UNK15 = 0x00004000,
MOVEMENTFLAG2_UNK16 = 0x00008000, MOVEMENTFLAG2_UNK16 = 0x00008000
}; };
enum UnitTypeMask enum UnitTypeMask
@@ -756,7 +756,7 @@ enum UnitTypeMask
UNIT_MASK_PUPPET = 0x00000040, UNIT_MASK_PUPPET = 0x00000040,
UNIT_MASK_HUNTER_PET = 0x00000080, UNIT_MASK_HUNTER_PET = 0x00000080,
UNIT_MASK_CONTROLABLE_GUARDIAN = 0x00000100, UNIT_MASK_CONTROLABLE_GUARDIAN = 0x00000100,
UNIT_MASK_ACCESSORY = 0x00000200, UNIT_MASK_ACCESSORY = 0x00000200
}; };
namespace Movement{ namespace Movement{
@@ -770,7 +770,7 @@ enum DiminishingLevels
DIMINISHING_LEVEL_3 = 2, DIMINISHING_LEVEL_3 = 2,
DIMINISHING_LEVEL_IMMUNE = 3, DIMINISHING_LEVEL_IMMUNE = 3,
DIMINISHING_LEVEL_4 = 3, DIMINISHING_LEVEL_4 = 3,
DIMINISHING_LEVEL_TAUNT_IMMUNE = 4, DIMINISHING_LEVEL_TAUNT_IMMUNE = 4
}; };
struct DiminishingReturn struct DiminishingReturn
@@ -1081,7 +1081,7 @@ enum CharmType
CHARM_TYPE_CHARM, CHARM_TYPE_CHARM,
CHARM_TYPE_POSSESS, CHARM_TYPE_POSSESS,
CHARM_TYPE_VEHICLE, CHARM_TYPE_VEHICLE,
CHARM_TYPE_CONVERT, CHARM_TYPE_CONVERT
}; };
typedef UnitActionBarEntry CharmSpellInfo; typedef UnitActionBarEntry CharmSpellInfo;
@@ -1091,7 +1091,7 @@ enum ActionBarIndex
ACTION_BAR_INDEX_START = 0, ACTION_BAR_INDEX_START = 0,
ACTION_BAR_INDEX_PET_SPELL_START = 3, ACTION_BAR_INDEX_PET_SPELL_START = 3,
ACTION_BAR_INDEX_PET_SPELL_END = 7, ACTION_BAR_INDEX_PET_SPELL_END = 7,
ACTION_BAR_INDEX_END = 10, ACTION_BAR_INDEX_END = 10
}; };
#define MAX_UNIT_ACTION_BAR_INDEX (ACTION_BAR_INDEX_END-ACTION_BAR_INDEX_START) #define MAX_UNIT_ACTION_BAR_INDEX (ACTION_BAR_INDEX_END-ACTION_BAR_INDEX_START)
@@ -1191,7 +1191,7 @@ enum PlayerTotemType
SUMMON_TYPE_TOTEM_FIRE = 63, SUMMON_TYPE_TOTEM_FIRE = 63,
SUMMON_TYPE_TOTEM_EARTH = 81, SUMMON_TYPE_TOTEM_EARTH = 81,
SUMMON_TYPE_TOTEM_WATER = 82, SUMMON_TYPE_TOTEM_WATER = 82,
SUMMON_TYPE_TOTEM_AIR = 83, SUMMON_TYPE_TOTEM_AIR = 83
}; };
// delay time next attack to prevent client attack animation problems // delay time next attack to prevent client attack animation problems
+1 -1
View File
@@ -437,7 +437,7 @@ void Vehicle::RemovePassenger(Unit* unit)
} }
//! Must be called after m_base::Relocate //! Must be called after m_base::Relocate
void Vehicle::RelocatePassengers(float x, float y, float z, float ang) void Vehicle::RelocatePassengers()
{ {
ASSERT(_me->GetMap()); ASSERT(_me->GetMap());
+1 -1
View File
@@ -52,7 +52,7 @@ class Vehicle : public TransportBase
bool AddPassenger(Unit* passenger, int8 seatId = -1); bool AddPassenger(Unit* passenger, int8 seatId = -1);
void EjectPassenger(Unit* passenger, Unit* controller); void EjectPassenger(Unit* passenger, Unit* controller);
void RemovePassenger(Unit* passenger); void RemovePassenger(Unit* passenger);
void RelocatePassengers(float x, float y, float z, float ang); void RelocatePassengers();
void RemoveAllPassengers(); void RemoveAllPassengers();
void Dismiss(); void Dismiss();
void TeleportVehicle(float x, float y, float z, float ang); void TeleportVehicle(float x, float y, float z, float ang);
@@ -44,7 +44,7 @@ enum VehicleFlags
VEHICLE_FLAG_FULLSPEEDPITCHING = 0x00000020, // Sets MOVEFLAG2_FULLSPEEDPITCHING VEHICLE_FLAG_FULLSPEEDPITCHING = 0x00000020, // Sets MOVEFLAG2_FULLSPEEDPITCHING
VEHICLE_FLAG_CUSTOM_PITCH = 0x00000040, // If set use pitchMin and pitchMax from DBC, otherwise pitchMin = -pi/2, pitchMax = pi/2 VEHICLE_FLAG_CUSTOM_PITCH = 0x00000040, // If set use pitchMin and pitchMax from DBC, otherwise pitchMin = -pi/2, pitchMax = pi/2
VEHICLE_FLAG_ADJUST_AIM_ANGLE = 0x00000400, // Lua_IsVehicleAimAngleAdjustable VEHICLE_FLAG_ADJUST_AIM_ANGLE = 0x00000400, // Lua_IsVehicleAimAngleAdjustable
VEHICLE_FLAG_ADJUST_AIM_POWER = 0x00000800, // Lua_IsVehicleAimPowerAdjustable VEHICLE_FLAG_ADJUST_AIM_POWER = 0x00000800 // Lua_IsVehicleAimPowerAdjustable
}; };
enum VehicleSpells enum VehicleSpells
+1 -1
View File
@@ -33,7 +33,7 @@ enum GameEventState
GAMEEVENT_WORLD_CONDITIONS = 2, // condition matching phase GAMEEVENT_WORLD_CONDITIONS = 2, // condition matching phase
GAMEEVENT_WORLD_NEXTPHASE = 3, // conditions are met, now 'length' timer to start next event GAMEEVENT_WORLD_NEXTPHASE = 3, // conditions are met, now 'length' timer to start next event
GAMEEVENT_WORLD_FINISHED = 4, // next events are started, unapply this one GAMEEVENT_WORLD_FINISHED = 4, // next events are started, unapply this one
GAMEEVENT_INTERNAL = 5, // never handled in update GAMEEVENT_INTERNAL = 5 // never handled in update
}; };
struct GameEventFinishCondition struct GameEventFinishCondition
+1 -1
View File
@@ -5607,7 +5607,7 @@ WorldSafeLocsEntry const* ObjectMgr::GetDefaultGraveYard(uint32 team)
enum DefaultGraveyard enum DefaultGraveyard
{ {
HORDE_GRAVEYARD = 10, // Crossroads HORDE_GRAVEYARD = 10, // Crossroads
ALLIANCE_GRAVEYARD = 4, // Westfall ALLIANCE_GRAVEYARD = 4 // Westfall
}; };
if (team == HORDE) if (team == HORDE)
+4 -4
View File
@@ -128,7 +128,7 @@ enum eScriptFlags
SF_PLAYSOUND_DISTANCE_SOUND = 0x2, SF_PLAYSOUND_DISTANCE_SOUND = 0x2,
// Orientation flags // Orientation flags
SF_ORIENTATION_FACE_TARGET = 0x1, SF_ORIENTATION_FACE_TARGET = 0x1
}; };
struct ScriptInfo struct ScriptInfo
@@ -536,7 +536,7 @@ enum SkillRangeType
SKILL_RANGE_LEVEL, // 1..max skill for level SKILL_RANGE_LEVEL, // 1..max skill for level
SKILL_RANGE_MONO, // 1..1, grey monolite bar SKILL_RANGE_MONO, // 1..1, grey monolite bar
SKILL_RANGE_RANK, // 1..skill for known rank SKILL_RANGE_RANK, // 1..skill for known rank
SKILL_RANGE_NONE, // 0..0 always SKILL_RANGE_NONE // 0..0 always
}; };
SkillRangeType GetSkillRangeType(SkillLineEntry const* pSkill, bool racial); SkillRangeType GetSkillRangeType(SkillLineEntry const* pSkill, bool racial);
@@ -561,7 +561,7 @@ LanguageDesc const* GetLanguageDescByID(uint32 lang);
enum EncounterCreditType enum EncounterCreditType
{ {
ENCOUNTER_CREDIT_KILL_CREATURE = 0, ENCOUNTER_CREDIT_KILL_CREATURE = 0,
ENCOUNTER_CREDIT_CAST_SPELL = 1, ENCOUNTER_CREDIT_CAST_SPELL = 1
}; };
struct DungeonEncounter struct DungeonEncounter
@@ -1285,7 +1285,7 @@ class ObjectMgr
CREATURE_TO_CREATURE, CREATURE_TO_CREATURE,
CREATURE_TO_GO, // Creature is dependant on GO CREATURE_TO_GO, // Creature is dependant on GO
GO_TO_GO, GO_TO_GO,
GO_TO_CREATURE, // GO is dependant on creature GO_TO_CREATURE // GO is dependant on creature
}; };
}; };
+6 -1
View File
@@ -79,7 +79,12 @@ class NGrid
public: public:
typedef Grid<ACTIVE_OBJECT, WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES> GridType; typedef Grid<ACTIVE_OBJECT, WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES> GridType;
NGrid(uint32 id, int32 x, int32 y, time_t expiry, bool unload = true) NGrid(uint32 id, int32 x, int32 y, time_t expiry, bool unload = true)
: i_gridId(id), i_x(x), i_y(y), i_cellstate(GRID_STATE_INVALID), i_GridObjectDataLoaded(false), i_GridInfo(GridInfo(expiry, unload)) : i_gridId(id)
, i_GridInfo(GridInfo(expiry, unload))
, i_x(x)
, i_y(y)
, i_cellstate(GRID_STATE_INVALID)
, i_GridObjectDataLoaded(false)
{ {
} }
+5 -5
View File
@@ -66,20 +66,20 @@ enum GroupMemberOnlineStatus
MEMBER_STATUS_PVP_FFA = 0x0010, // Lua_UnitIsPVPFreeForAll MEMBER_STATUS_PVP_FFA = 0x0010, // Lua_UnitIsPVPFreeForAll
MEMBER_STATUS_UNK3 = 0x0020, // used in calls from Lua_GetPlayerMapPosition/Lua_GetBattlefieldFlagPosition MEMBER_STATUS_UNK3 = 0x0020, // used in calls from Lua_GetPlayerMapPosition/Lua_GetBattlefieldFlagPosition
MEMBER_STATUS_AFK = 0x0040, // Lua_UnitIsAFK MEMBER_STATUS_AFK = 0x0040, // Lua_UnitIsAFK
MEMBER_STATUS_DND = 0x0080, // Lua_UnitIsDND MEMBER_STATUS_DND = 0x0080 // Lua_UnitIsDND
}; };
enum GroupMemberFlags enum GroupMemberFlags
{ {
MEMBER_FLAG_ASSISTANT = 0x01, MEMBER_FLAG_ASSISTANT = 0x01,
MEMBER_FLAG_MAINTANK = 0x02, MEMBER_FLAG_MAINTANK = 0x02,
MEMBER_FLAG_MAINASSIST = 0x04, MEMBER_FLAG_MAINASSIST = 0x04
}; };
enum GroupMemberAssignment enum GroupMemberAssignment
{ {
GROUP_ASSIGN_MAINTANK = 0, GROUP_ASSIGN_MAINTANK = 0,
GROUP_ASSIGN_MAINASSIST = 1, GROUP_ASSIGN_MAINASSIST = 1
}; };
enum GroupType enum GroupType
@@ -89,7 +89,7 @@ enum GroupType
GROUPTYPE_RAID = 0x02, GROUPTYPE_RAID = 0x02,
GROUPTYPE_BGRAID = GROUPTYPE_BG | GROUPTYPE_RAID, // mask GROUPTYPE_BGRAID = GROUPTYPE_BG | GROUPTYPE_RAID, // mask
GROUPTYPE_UNK1 = 0x04, GROUPTYPE_UNK1 = 0x04,
GROUPTYPE_LFG = 0x08, GROUPTYPE_LFG = 0x08
// 0x10, leave/change group?, I saw this flag when leaving group and after leaving BG while in group // 0x10, leave/change group?, I saw this flag when leaving group and after leaving BG while in group
}; };
@@ -117,7 +117,7 @@ enum GroupUpdateFlags
GROUP_UPDATE_FLAG_PET_AURAS = 0x00040000, // uint64 mask, for each bit set uint32 spellid + uint8 unk, pet auras... GROUP_UPDATE_FLAG_PET_AURAS = 0x00040000, // uint64 mask, for each bit set uint32 spellid + uint8 unk, pet auras...
GROUP_UPDATE_FLAG_VEHICLE_SEAT = 0x00080000, // uint32 vehicle_seat_id (index from VehicleSeat.dbc) GROUP_UPDATE_FLAG_VEHICLE_SEAT = 0x00080000, // uint32 vehicle_seat_id (index from VehicleSeat.dbc)
GROUP_UPDATE_PET = 0x0007FC00, // all pet flags GROUP_UPDATE_PET = 0x0007FC00, // all pet flags
GROUP_UPDATE_FULL = 0x0007FFFF, // all known flags GROUP_UPDATE_FULL = 0x0007FFFF // all known flags
}; };
#define GROUP_UPDATE_FLAGS_COUNT 20 #define GROUP_UPDATE_FLAGS_COUNT 20
+7 -7
View File
@@ -37,7 +37,7 @@ enum GuildMisc
GUILD_RANK_NONE = 0xFF, GUILD_RANK_NONE = 0xFF,
GUILD_WITHDRAW_MONEY_UNLIMITED = 0xFFFFFFFF, GUILD_WITHDRAW_MONEY_UNLIMITED = 0xFFFFFFFF,
GUILD_WITHDRAW_SLOT_UNLIMITED = 0xFFFFFFFF, GUILD_WITHDRAW_SLOT_UNLIMITED = 0xFFFFFFFF,
GUILD_EVENT_LOG_GUID_UNDEFINED = 0xFFFFFFFF, GUILD_EVENT_LOG_GUID_UNDEFINED = 0xFFFFFFFF
}; };
enum GuildDefaultRanks enum GuildDefaultRanks
@@ -47,7 +47,7 @@ enum GuildDefaultRanks
GR_OFFICER = 1, GR_OFFICER = 1,
GR_VETERAN = 2, GR_VETERAN = 2,
GR_MEMBER = 3, GR_MEMBER = 3,
GR_INITIATE = 4, GR_INITIATE = 4
// When promoting member server does: rank-- // When promoting member server does: rank--
// When demoting member server does: rank++ // When demoting member server does: rank++
}; };
@@ -141,7 +141,7 @@ enum PetitionTurns
{ {
PETITION_TURN_OK = 0, PETITION_TURN_OK = 0,
PETITION_TURN_ALREADY_IN_GUILD = 2, PETITION_TURN_ALREADY_IN_GUILD = 2,
PETITION_TURN_NEED_MORE_SIGNATURES = 4, PETITION_TURN_NEED_MORE_SIGNATURES = 4
}; };
enum PetitionSigns enum PetitionSigns
@@ -150,7 +150,7 @@ enum PetitionSigns
PETITION_SIGN_ALREADY_SIGNED = 1, PETITION_SIGN_ALREADY_SIGNED = 1,
PETITION_SIGN_ALREADY_IN_GUILD = 2, PETITION_SIGN_ALREADY_IN_GUILD = 2,
PETITION_SIGN_CANT_SIGN_OWN = 3, PETITION_SIGN_CANT_SIGN_OWN = 3,
PETITION_SIGN_NOT_SERVER = 4, PETITION_SIGN_NOT_SERVER = 4
}; };
enum GuildBankRights enum GuildBankRights
@@ -160,7 +160,7 @@ enum GuildBankRights
GUILD_BANK_RIGHT_UPDATE_TEXT = 0x04, GUILD_BANK_RIGHT_UPDATE_TEXT = 0x04,
GUILD_BANK_RIGHT_DEPOSIT_ITEM = GUILD_BANK_RIGHT_VIEW_TAB | GUILD_BANK_RIGHT_PUT_ITEM, GUILD_BANK_RIGHT_DEPOSIT_ITEM = GUILD_BANK_RIGHT_VIEW_TAB | GUILD_BANK_RIGHT_PUT_ITEM,
GUILD_BANK_RIGHT_FULL = 0xFF, GUILD_BANK_RIGHT_FULL = 0xFF
}; };
enum GuildBankEventLogTypes enum GuildBankEventLogTypes
@@ -173,7 +173,7 @@ enum GuildBankEventLogTypes
GUILD_BANK_LOG_REPAIR_MONEY = 6, GUILD_BANK_LOG_REPAIR_MONEY = 6,
GUILD_BANK_LOG_MOVE_ITEM2 = 7, GUILD_BANK_LOG_MOVE_ITEM2 = 7,
GUILD_BANK_LOG_UNK1 = 8, GUILD_BANK_LOG_UNK1 = 8,
GUILD_BANK_LOG_UNK2 = 9, GUILD_BANK_LOG_UNK2 = 9
}; };
enum GuildEventLogTypes enum GuildEventLogTypes
@@ -183,7 +183,7 @@ enum GuildEventLogTypes
GUILD_EVENT_LOG_PROMOTE_PLAYER = 3, GUILD_EVENT_LOG_PROMOTE_PLAYER = 3,
GUILD_EVENT_LOG_DEMOTE_PLAYER = 4, GUILD_EVENT_LOG_DEMOTE_PLAYER = 4,
GUILD_EVENT_LOG_UNINVITE_PLAYER = 5, GUILD_EVENT_LOG_UNINVITE_PLAYER = 5,
GUILD_EVENT_LOG_LEAVE_GUILD = 6, GUILD_EVENT_LOG_LEAVE_GUILD = 6
}; };
enum GuildEmblemError enum GuildEmblemError
+1 -1
View File
@@ -1741,7 +1741,7 @@ void WorldSession::HandleHearthAndResurrect(WorldPacket& /*recv_data*/)
if (_player->isInFlight()) if (_player->isInFlight())
return; return;
if(Battlefield* bf = sBattlefieldMgr->GetBattlefieldToZoneId(_player->GetZoneId())) if (/*Battlefield* bf = */sBattlefieldMgr->GetBattlefieldToZoneId(_player->GetZoneId()))
{ {
// bf->PlayerAskToLeave(_player); FIXME // bf->PlayerAskToLeave(_player); FIXME
return; return;
+1 -1
View File
@@ -44,7 +44,7 @@ enum StableResultCode
STABLE_SUCCESS_STABLE = 0x08, // stable success STABLE_SUCCESS_STABLE = 0x08, // stable success
STABLE_SUCCESS_UNSTABLE = 0x09, // unstable/swap success STABLE_SUCCESS_UNSTABLE = 0x09, // unstable/swap success
STABLE_SUCCESS_BUY_SLOT = 0x0A, // buy slot success STABLE_SUCCESS_BUY_SLOT = 0x0A, // buy slot success
STABLE_ERR_EXOTIC = 0x0C, // "you are unable to control exotic creatures" STABLE_ERR_EXOTIC = 0x0C // "you are unable to control exotic creatures"
}; };
void WorldSession::HandleTabardVendorActivateOpcode(WorldPacket & recv_data) void WorldSession::HandleTabardVendorActivateOpcode(WorldPacket & recv_data)
+4 -4
View File
@@ -49,7 +49,7 @@ enum EncounterFrameType
ENCOUNTER_FRAME_ENABLE_OBJECTIVE = 4, ENCOUNTER_FRAME_ENABLE_OBJECTIVE = 4,
ENCOUNTER_FRAME_UPDATE_OBJECTIVE = 5, ENCOUNTER_FRAME_UPDATE_OBJECTIVE = 5,
ENCOUNTER_FRAME_DISABLE_OBJECTIVE = 6, ENCOUNTER_FRAME_DISABLE_OBJECTIVE = 6,
ENCOUNTER_FRAME_UNK7 = 7, // Seems to have something to do with sorting the encounter units ENCOUNTER_FRAME_UNK7 = 7 // Seems to have something to do with sorting the encounter units
}; };
enum EncounterState enum EncounterState
@@ -59,7 +59,7 @@ enum EncounterState
FAIL = 2, FAIL = 2,
DONE = 3, DONE = 3,
SPECIAL = 4, SPECIAL = 4,
TO_BE_DECIDED = 5, TO_BE_DECIDED = 5
}; };
enum DoorType enum DoorType
@@ -67,7 +67,7 @@ enum DoorType
DOOR_TYPE_ROOM = 0, // Door can open if encounter is not in progress DOOR_TYPE_ROOM = 0, // Door can open if encounter is not in progress
DOOR_TYPE_PASSAGE = 1, // Door can open if encounter is done DOOR_TYPE_PASSAGE = 1, // Door can open if encounter is done
DOOR_TYPE_SPAWN_HOLE = 2, // Door can open if encounter is in progress, typically used for spawning places DOOR_TYPE_SPAWN_HOLE = 2, // Door can open if encounter is in progress, typically used for spawning places
MAX_DOOR_TYPES, MAX_DOOR_TYPES
}; };
enum BoundaryType enum BoundaryType
@@ -84,7 +84,7 @@ enum BoundaryType
BOUNDARY_MAX_X = BOUNDARY_N, BOUNDARY_MAX_X = BOUNDARY_N,
BOUNDARY_MIN_X = BOUNDARY_S, BOUNDARY_MIN_X = BOUNDARY_S,
BOUNDARY_MAX_Y = BOUNDARY_W, BOUNDARY_MAX_Y = BOUNDARY_W,
BOUNDARY_MIN_Y = BOUNDARY_E, BOUNDARY_MIN_Y = BOUNDARY_E
}; };
typedef std::map<BoundaryType, float> BossBoundaryMap; typedef std::map<BoundaryType, float> BossBoundaryMap;
+2 -2
View File
@@ -69,7 +69,7 @@ enum PermissionTypes
MASTER_PERMISSION = 2, MASTER_PERMISSION = 2,
ROUND_ROBIN_PERMISSION = 3, ROUND_ROBIN_PERMISSION = 3,
OWNER_PERMISSION = 4, OWNER_PERMISSION = 4,
NONE_PERMISSION = 5, NONE_PERMISSION = 5
}; };
enum LootType enum LootType
@@ -94,7 +94,7 @@ enum LootSlotType
LOOT_SLOT_TYPE_ROLL_ONGOING = 1, // roll is ongoing. player cannot loot. LOOT_SLOT_TYPE_ROLL_ONGOING = 1, // roll is ongoing. player cannot loot.
LOOT_SLOT_TYPE_MASTER = 2, // item can only be distributed by group loot master. LOOT_SLOT_TYPE_MASTER = 2, // item can only be distributed by group loot master.
LOOT_SLOT_TYPE_LOCKED = 3, // item is shown in red. player cannot loot. LOOT_SLOT_TYPE_LOCKED = 3, // item is shown in red. player cannot loot.
LOOT_SLOT_TYPE_OWNER = 4, // ignore binding confirmation and etc, for single player looting LOOT_SLOT_TYPE_OWNER = 4 // ignore binding confirmation and etc, for single player looting
}; };
class Player; class Player;
+4 -4
View File
@@ -36,7 +36,7 @@ enum MailMessageType
MAIL_AUCTION = 2, MAIL_AUCTION = 2,
MAIL_CREATURE = 3, // client send CMSG_CREATURE_QUERY on this mailmessagetype MAIL_CREATURE = 3, // client send CMSG_CREATURE_QUERY on this mailmessagetype
MAIL_GAMEOBJECT = 4, // client send CMSG_GAMEOBJECT_QUERY on this mailmessagetype MAIL_GAMEOBJECT = 4, // client send CMSG_GAMEOBJECT_QUERY on this mailmessagetype
MAIL_ITEM = 5, // client send CMSG_ITEM_QUERY on this mailmessagetype MAIL_ITEM = 5 // client send CMSG_ITEM_QUERY on this mailmessagetype
}; };
enum MailCheckMask enum MailCheckMask
@@ -46,7 +46,7 @@ enum MailCheckMask
MAIL_CHECK_MASK_RETURNED = 0x02, /// This mail was returned. Do not allow returning mail back again. MAIL_CHECK_MASK_RETURNED = 0x02, /// This mail was returned. Do not allow returning mail back again.
MAIL_CHECK_MASK_COPIED = 0x04, /// This mail was copied. Do not allow making a copy of items in mail. MAIL_CHECK_MASK_COPIED = 0x04, /// This mail was copied. Do not allow making a copy of items in mail.
MAIL_CHECK_MASK_COD_PAYMENT = 0x08, MAIL_CHECK_MASK_COD_PAYMENT = 0x08,
MAIL_CHECK_MASK_HAS_BODY = 0x10, /// This mail has body text. MAIL_CHECK_MASK_HAS_BODY = 0x10 /// This mail has body text.
}; };
// gathered from Stationery.dbc // gathered from Stationery.dbc
@@ -58,7 +58,7 @@ enum MailStationery
MAIL_STATIONERY_AUCTION = 62, MAIL_STATIONERY_AUCTION = 62,
MAIL_STATIONERY_VAL = 64, // Valentine MAIL_STATIONERY_VAL = 64, // Valentine
MAIL_STATIONERY_CHR = 65, // Christmas MAIL_STATIONERY_CHR = 65, // Christmas
MAIL_STATIONERY_ORP = 67, // Orphan MAIL_STATIONERY_ORP = 67 // Orphan
}; };
enum MailState enum MailState
@@ -74,7 +74,7 @@ enum MailShowFlags
MAIL_SHOW_DELETE = 0x0002, // forced show delete button instead return button MAIL_SHOW_DELETE = 0x0002, // forced show delete button instead return button
MAIL_SHOW_AUCTION = 0x0004, // from old comment MAIL_SHOW_AUCTION = 0x0004, // from old comment
MAIL_SHOW_UNK2 = 0x0008, // unknown, COD will be shown even without that flag MAIL_SHOW_UNK2 = 0x0008, // unknown, COD will be shown even without that flag
MAIL_SHOW_RETURN = 0x0010, MAIL_SHOW_RETURN = 0x0010
}; };
class MailSender class MailSender
+2 -2
View File
@@ -727,7 +727,7 @@ void Map::PlayerRelocation(Player* player, float x, float y, float z, float orie
player->Relocate(x, y, z, orientation); player->Relocate(x, y, z, orientation);
if (player->IsVehicle()) if (player->IsVehicle())
player->GetVehicleKit()->RelocatePassengers(x, y, z, orientation); player->GetVehicleKit()->RelocatePassengers();
if (old_cell.DiffGrid(new_cell) || old_cell.DiffCell(new_cell)) if (old_cell.DiffGrid(new_cell) || old_cell.DiffCell(new_cell))
{ {
@@ -773,7 +773,7 @@ void Map::CreatureRelocation(Creature* creature, float x, float y, float z, floa
{ {
creature->Relocate(x, y, z, ang); creature->Relocate(x, y, z, ang);
if (creature->IsVehicle()) if (creature->IsVehicle())
creature->GetVehicleKit()->RelocatePassengers(x, y, z, ang); creature->GetVehicleKit()->RelocatePassengers();
creature->UpdateObjectVisibility(false); creature->UpdateObjectVisibility(false);
RemoveCreatureFromMoveList(creature); RemoveCreatureFromMoveList(creature);
} }
+1 -1
View File
@@ -1070,7 +1070,7 @@ enum TrinityStrings
// Use for custom patches 11000-11999 // Use for custom patches 11000-11999
LANG_AUTO_BROADCAST = 11000, LANG_AUTO_BROADCAST = 11000,
LANG_INVALID_REALMID = 11001, LANG_INVALID_REALMID = 11001
// NOT RESERVED IDS 12000-1999999999 // NOT RESERVED IDS 12000-1999999999
// `db_script_string` table index 2000000000-2000009999 (MIN_DB_SCRIPT_STRING_ID-MAX_DB_SCRIPT_STRING_ID) // `db_script_string` table index 2000000000-2000009999 (MIN_DB_SCRIPT_STRING_ID-MAX_DB_SCRIPT_STRING_ID)
+27 -27
View File
@@ -27,7 +27,7 @@ enum SpellEffIndex
{ {
EFFECT_0 = 0, EFFECT_0 = 0,
EFFECT_1 = 1, EFFECT_1 = 1,
EFFECT_2 = 2, EFFECT_2 = 2
}; };
// used in script definitions // used in script definitions
@@ -125,7 +125,7 @@ enum UnitClass
UNIT_CLASS_WARRIOR = 1, UNIT_CLASS_WARRIOR = 1,
UNIT_CLASS_PALADIN = 2, UNIT_CLASS_PALADIN = 2,
UNIT_CLASS_ROGUE = 4, UNIT_CLASS_ROGUE = 4,
UNIT_CLASS_MAGE = 8, UNIT_CLASS_MAGE = 8
}; };
#define CLASSMASK_ALL_CREATURES ((1<<(UNIT_CLASS_WARRIOR-1)) | (1<<(UNIT_CLASS_PALADIN-1)) | (1<<(UNIT_CLASS_ROGUE-1)) | (1<<(UNIT_CLASS_MAGE-1))) #define CLASSMASK_ALL_CREATURES ((1<<(UNIT_CLASS_WARRIOR-1)) | (1<<(UNIT_CLASS_PALADIN-1)) | (1<<(UNIT_CLASS_ROGUE-1)) | (1<<(UNIT_CLASS_MAGE-1)))
@@ -246,7 +246,7 @@ enum ItemQualities
enum SpellCategory enum SpellCategory
{ {
SPELL_CATEGORY_FOOD = 11, SPELL_CATEGORY_FOOD = 11,
SPELL_CATEGORY_DRINK = 59, SPELL_CATEGORY_DRINK = 59
}; };
const uint32 ItemQualityColors[MAX_ITEM_QUALITY] = const uint32 ItemQualityColors[MAX_ITEM_QUALITY] =
@@ -573,7 +573,7 @@ enum SpellClickCastFlags
{ {
NPC_CLICK_CAST_CASTER_CLICKER = 0x01, NPC_CLICK_CAST_CASTER_CLICKER = 0x01,
NPC_CLICK_CAST_TARGET_CLICKER = 0x02, NPC_CLICK_CAST_TARGET_CLICKER = 0x02,
NPC_CLICK_CAST_ORIG_CASTER_OWNER = 0x04, NPC_CLICK_CAST_ORIG_CASTER_OWNER = 0x04
}; };
enum SheathTypes enum SheathTypes
@@ -643,7 +643,7 @@ enum TeamId
{ {
TEAM_ALLIANCE = 0, TEAM_ALLIANCE = 0,
TEAM_HORDE, TEAM_HORDE,
TEAM_NEUTRAL, TEAM_NEUTRAL
}; };
enum Team enum Team
@@ -655,7 +655,7 @@ enum Team
//TEAM_HORDE_FORCES = 892, //TEAM_HORDE_FORCES = 892,
//TEAM_SANCTUARY = 936, //TEAM_SANCTUARY = 936,
//TEAM_OUTLAND = 980, //TEAM_OUTLAND = 980,
TEAM_OTHER = 0, // if ReputationListId > 0 && Flags != FACTION_FLAG_TEAM_HEADER TEAM_OTHER = 0 // if ReputationListId > 0 && Flags != FACTION_FLAG_TEAM_HEADER
}; };
enum SpellEffects enum SpellEffects
@@ -1122,7 +1122,7 @@ enum SpellCustomErrors
SPELL_CUSTOM_ERROR_MAX_NUMBER_OF_RECRUITS = 96, // You already have the max number of recruits. SPELL_CUSTOM_ERROR_MAX_NUMBER_OF_RECRUITS = 96, // You already have the max number of recruits.
SPELL_CUSTOM_ERROR_MAX_NUMBER_OF_VOLUNTEERS = 97, // You already have the max number of volunteers. SPELL_CUSTOM_ERROR_MAX_NUMBER_OF_VOLUNTEERS = 97, // You already have the max number of volunteers.
SPELL_CUSTOM_ERROR_FROSTMOURNE_RENDERED_RESSURECT = 98, // Frostmourne has rendered you unable to ressurect. SPELL_CUSTOM_ERROR_FROSTMOURNE_RENDERED_RESSURECT = 98, // Frostmourne has rendered you unable to ressurect.
SPELL_CUSTOM_ERROR_CANT_MOUNT_WITH_SHAPESHIFT = 99, // You can't mount while affected by that shapeshift. SPELL_CUSTOM_ERROR_CANT_MOUNT_WITH_SHAPESHIFT = 99 // You can't mount while affected by that shapeshift.
}; };
enum StealthType enum StealthType
@@ -1193,7 +1193,7 @@ enum AuraStateType
//AURA_STATE_UNKNOWN20 = 20, // c | only (45317 Suicide) //AURA_STATE_UNKNOWN20 = 20, // c | only (45317 Suicide)
//AURA_STATE_UNKNOWN21 = 21, // | not used //AURA_STATE_UNKNOWN21 = 21, // | not used
AURA_STATE_UNKNOWN22 = 22, // C t| varius spells (63884, 50240) AURA_STATE_UNKNOWN22 = 22, // C t| varius spells (63884, 50240)
AURA_STATE_HEALTH_ABOVE_75_PERCENT = 23, // C | AURA_STATE_HEALTH_ABOVE_75_PERCENT = 23 // C |
}; };
#define PER_CASTER_AURA_STATE_MASK (\ #define PER_CASTER_AURA_STATE_MASK (\
@@ -1486,7 +1486,7 @@ enum GameObjectFlags
GO_FLAG_NODESPAWN = 0x00000020, // never despawn, typically for doors, they just change state GO_FLAG_NODESPAWN = 0x00000020, // never despawn, typically for doors, they just change state
GO_FLAG_TRIGGERED = 0x00000040, // typically, summoned objects. Triggered by spell or other events GO_FLAG_TRIGGERED = 0x00000040, // typically, summoned objects. Triggered by spell or other events
GO_FLAG_DAMAGED = 0x00000200, GO_FLAG_DAMAGED = 0x00000200,
GO_FLAG_DESTROYED = 0x00000400, GO_FLAG_DESTROYED = 0x00000400
}; };
enum GameObjectDynamicLowFlags enum GameObjectDynamicLowFlags
@@ -1494,7 +1494,7 @@ enum GameObjectDynamicLowFlags
GO_DYNFLAG_LO_ACTIVATE = 0x01, // enables interaction with GO GO_DYNFLAG_LO_ACTIVATE = 0x01, // enables interaction with GO
GO_DYNFLAG_LO_ANIMATE = 0x02, // possibly more distinct animation of GO GO_DYNFLAG_LO_ANIMATE = 0x02, // possibly more distinct animation of GO
GO_DYNFLAG_LO_NO_INTERACT = 0x04, // appears to disable interaction (not fully verified) GO_DYNFLAG_LO_NO_INTERACT = 0x04, // appears to disable interaction (not fully verified)
GO_DYNFLAG_LO_SPARKLE = 0x08, // makes GO sparkle GO_DYNFLAG_LO_SPARKLE = 0x08 // makes GO sparkle
}; };
enum GameObjectDestructibleState enum GameObjectDestructibleState
@@ -1502,7 +1502,7 @@ enum GameObjectDestructibleState
GO_DESTRUCTIBLE_INTACT = 0, GO_DESTRUCTIBLE_INTACT = 0,
GO_DESTRUCTIBLE_DAMAGED = 1, GO_DESTRUCTIBLE_DAMAGED = 1,
GO_DESTRUCTIBLE_DESTROYED = 2, GO_DESTRUCTIBLE_DESTROYED = 2,
GO_DESTRUCTIBLE_REBUILDING = 3, GO_DESTRUCTIBLE_REBUILDING = 3
}; };
// EmotesText.dbc // EmotesText.dbc
@@ -1759,7 +1759,7 @@ enum TextEmotes
TEXT_EMOTE_LOOK = 449, TEXT_EMOTE_LOOK = 449,
TEXT_EMOTE_OBJECT = 450, TEXT_EMOTE_OBJECT = 450,
TEXT_EMOTE_SWEAT = 451, TEXT_EMOTE_SWEAT = 451,
TEXT_EMOTE_YW = 453, TEXT_EMOTE_YW = 453
}; };
// Emotes.dbc // Emotes.dbc
@@ -2596,7 +2596,7 @@ enum CreatureTypeFlags
CREATURE_TYPEFLAGS_UNK28 = 0x10000000, CREATURE_TYPEFLAGS_UNK28 = 0x10000000,
CREATURE_TYPEFLAGS_UNK29 = 0x20000000, CREATURE_TYPEFLAGS_UNK29 = 0x20000000,
CREATURE_TYPEFLAGS_UNK30 = 0x40000000, CREATURE_TYPEFLAGS_UNK30 = 0x40000000,
CREATURE_TYPEFLAGS_UNK31 = 0x80000000, CREATURE_TYPEFLAGS_UNK31 = 0x80000000
}; };
enum CreatureEliteType enum CreatureEliteType
@@ -2701,7 +2701,7 @@ enum QuestSort
QUEST_SORT_JEWELCRAFTING = 373, QUEST_SORT_JEWELCRAFTING = 373,
QUEST_SORT_NOBLEGARDEN = 374, QUEST_SORT_NOBLEGARDEN = 374,
QUEST_SORT_PILGRIMS_BOUNTY = 375, QUEST_SORT_PILGRIMS_BOUNTY = 375,
QUEST_SORT_LOVE_IS_IN_THE_AIR = 376, QUEST_SORT_LOVE_IS_IN_THE_AIR = 376
}; };
inline uint8 ClassByQuestSort(int32 QuestSort) inline uint8 ClassByQuestSort(int32 QuestSort)
@@ -3086,7 +3086,7 @@ enum AiReaction
AI_REACTION_FRIENDLY = 1, // (NOT used in client packet handler) AI_REACTION_FRIENDLY = 1, // (NOT used in client packet handler)
AI_REACTION_HOSTILE = 2, // sent on every attack, triggers aggro sound (used in client packet handler) AI_REACTION_HOSTILE = 2, // sent on every attack, triggers aggro sound (used in client packet handler)
AI_REACTION_AFRAID = 3, // seen for polymorph (when AI not in control of self?) (NOT used in client packet handler) AI_REACTION_AFRAID = 3, // seen for polymorph (when AI not in control of self?) (NOT used in client packet handler)
AI_REACTION_DESTROY = 4, // used on object destroy (NOT used in client packet handler) AI_REACTION_DESTROY = 4 // used on object destroy (NOT used in client packet handler)
}; };
// Diminishing Returns Types // Diminishing Returns Types
@@ -3120,7 +3120,7 @@ enum DiminishingGroup
DIMINISHING_SLEEP = 17, DIMINISHING_SLEEP = 17,
DIMINISHING_TAUNT = 18, DIMINISHING_TAUNT = 18,
DIMINISHING_LIMITONLY = 19, DIMINISHING_LIMITONLY = 19,
DIMINISHING_DRAGONS_BREATH = 20, DIMINISHING_DRAGONS_BREATH = 20
}; };
enum SummonCategory enum SummonCategory
@@ -3130,7 +3130,7 @@ enum SummonCategory
SUMMON_CATEGORY_PET = 2, SUMMON_CATEGORY_PET = 2,
SUMMON_CATEGORY_PUPPET = 3, SUMMON_CATEGORY_PUPPET = 3,
SUMMON_CATEGORY_VEHICLE = 4, SUMMON_CATEGORY_VEHICLE = 4,
SUMMON_CATEGORY_UNK = 5, // as of patch 3.3.5a only Bone Spike in Icecrown Citadel SUMMON_CATEGORY_UNK = 5 // as of patch 3.3.5a only Bone Spike in Icecrown Citadel
// uses this category // uses this category
}; };
@@ -3147,12 +3147,12 @@ enum SummonType
SUMMON_TYPE_WILD3 = 8, SUMMON_TYPE_WILD3 = 8,
SUMMON_TYPE_VEHICLE = 9, SUMMON_TYPE_VEHICLE = 9,
SUMMON_TYPE_VEHICLE2 = 10, SUMMON_TYPE_VEHICLE2 = 10,
SUMMON_TYPE_OBJECT = 11, SUMMON_TYPE_OBJECT = 11
}; };
enum EventId enum EventId
{ {
EVENT_CHARGE = 1003, EVENT_CHARGE = 1003
}; };
enum ResponseCodes enum ResponseCodes
@@ -3336,7 +3336,7 @@ enum MailResponseResult
MAIL_ERR_MAIL_AND_CHAT_SUSPENDED = 17, MAIL_ERR_MAIL_AND_CHAT_SUSPENDED = 17,
MAIL_ERR_TOO_MANY_ATTACHMENTS = 18, MAIL_ERR_TOO_MANY_ATTACHMENTS = 18,
MAIL_ERR_MAIL_ATTACHMENT_INVALID = 19, MAIL_ERR_MAIL_ATTACHMENT_INVALID = 19,
MAIL_ERR_ITEM_HAS_EXPIRED = 21, MAIL_ERR_ITEM_HAS_EXPIRED = 21
}; };
enum SpellFamilyNames enum SpellFamilyNames
@@ -3402,7 +3402,7 @@ enum RemoveMethod
{ {
GROUP_REMOVEMETHOD_DEFAULT = 0, GROUP_REMOVEMETHOD_DEFAULT = 0,
GROUP_REMOVEMETHOD_KICK = 1, GROUP_REMOVEMETHOD_KICK = 1,
GROUP_REMOVEMETHOD_LEAVE = 2, GROUP_REMOVEMETHOD_LEAVE = 2
}; };
enum ActivateTaxiReply enum ActivateTaxiReply
@@ -3429,7 +3429,7 @@ enum CalendarFlags
CALENDAR_FLAG_ALL_ALLOWED = 0x001, CALENDAR_FLAG_ALL_ALLOWED = 0x001,
CALENDAR_FLAG_INVITES_LOCKED = 0x010, CALENDAR_FLAG_INVITES_LOCKED = 0x010,
CALENDAR_FLAG_WITHOUT_INVITES = 0x040, CALENDAR_FLAG_WITHOUT_INVITES = 0x040,
CALENDAR_FLAG_GUILD_ONLY = 0x400, CALENDAR_FLAG_GUILD_ONLY = 0x400
}; };
enum CalendarActionData enum CalendarActionData
@@ -3443,21 +3443,21 @@ enum CalendarActionData
CALENDAR_ACTION_MODIFY_EVENT_INVITE, CALENDAR_ACTION_MODIFY_EVENT_INVITE,
CALENDAR_ACTION_MODIFY_MODERATOR_EVENT_INVITE, CALENDAR_ACTION_MODIFY_MODERATOR_EVENT_INVITE,
CALENDAR_ACTION_REMOVE_EVENT_INVITE, CALENDAR_ACTION_REMOVE_EVENT_INVITE,
CALENDAR_ACTION_SIGNUP_TO_EVENT, CALENDAR_ACTION_SIGNUP_TO_EVENT
}; };
enum CalendarModerationRank enum CalendarModerationRank
{ {
CALENDAR_RANK_PLAYER, CALENDAR_RANK_PLAYER,
CALENDAR_RANK_MODERATOR, CALENDAR_RANK_MODERATOR,
CALENDAR_RANK_OWNER, CALENDAR_RANK_OWNER
}; };
enum CalendarSendEventType enum CalendarSendEventType
{ {
CALENDAR_SENDTYPE_GET, CALENDAR_SENDTYPE_GET,
CALENDAR_SENDTYPE_ADD, CALENDAR_SENDTYPE_ADD,
CALENDAR_SENDTYPE_COPY, CALENDAR_SENDTYPE_COPY
}; };
enum CalendarEventType enum CalendarEventType
@@ -3466,7 +3466,7 @@ enum CalendarEventType
CALENDAR_TYPE_DUNGEON, CALENDAR_TYPE_DUNGEON,
CALENDAR_TYPE_PVP, CALENDAR_TYPE_PVP,
CALENDAR_TYPE_MEETING, CALENDAR_TYPE_MEETING,
CALENDAR_TYPE_OTHER, CALENDAR_TYPE_OTHER
}; };
enum CalendarInviteStatus enum CalendarInviteStatus
@@ -3480,7 +3480,7 @@ enum CalendarInviteStatus
CALENDAR_STATUS_CONFIRMED, CALENDAR_STATUS_CONFIRMED,
CALENDAR_STATUS_NO_OWNER, CALENDAR_STATUS_NO_OWNER,
CALENDAR_STATUS_8, CALENDAR_STATUS_8,
CALENDAR_STATUS_9, CALENDAR_STATUS_9
}; };
enum CalendarError enum CalendarError
+3 -3
View File
@@ -52,7 +52,7 @@ enum MovementGeneratorType
FOLLOW_MOTION_TYPE = 14, FOLLOW_MOTION_TYPE = 14,
ROTATE_MOTION_TYPE = 15, ROTATE_MOTION_TYPE = 15,
EFFECT_MOTION_TYPE = 16, EFFECT_MOTION_TYPE = 16,
NULL_MOTION_TYPE = 17, NULL_MOTION_TYPE = 17
}; };
enum MovementSlot enum MovementSlot
@@ -60,7 +60,7 @@ enum MovementSlot
MOTION_SLOT_IDLE, MOTION_SLOT_IDLE,
MOTION_SLOT_ACTIVE, MOTION_SLOT_ACTIVE,
MOTION_SLOT_CONTROLLED, MOTION_SLOT_CONTROLLED,
MAX_MOTION_SLOT, MAX_MOTION_SLOT
}; };
enum MMCleanFlag enum MMCleanFlag
@@ -73,7 +73,7 @@ enum MMCleanFlag
enum RotateDirection enum RotateDirection
{ {
ROTATE_DIRECTION_LEFT, ROTATE_DIRECTION_LEFT,
ROTATE_DIRECTION_RIGHT, ROTATE_DIRECTION_RIGHT
}; };
// assume it is 25 yard per 0.6 second // assume it is 25 yard per 0.6 second
@@ -107,7 +107,7 @@ struct FallInitializer
}; };
enum{ enum{
minimal_duration = 1, minimal_duration = 1
}; };
struct CommonInitializer struct CommonInitializer
@@ -218,7 +218,7 @@ bool MoveSplineInitArgs::_checkPathBounds() const
if (!(flags & MoveSplineFlag::Mask_CatmullRom) && path.size() > 2) if (!(flags & MoveSplineFlag::Mask_CatmullRom) && path.size() > 2)
{ {
enum{ enum{
MAX_OFFSET = (1 << 11) / 2, MAX_OFFSET = (1 << 11) / 2
}; };
Vector3 middle = (path.front()+path.back()) / 2; Vector3 middle = (path.front()+path.back()) / 2;
Vector3 offset; Vector3 offset;
+1 -1
View File
@@ -45,7 +45,7 @@ namespace Movement
Result_None = 0x01, Result_None = 0x01,
Result_Arrived = 0x02, Result_Arrived = 0x02,
Result_NextCycle = 0x04, Result_NextCycle = 0x04,
Result_NextSegment = 0x08, Result_NextSegment = 0x08
}; };
friend class PacketBuilder; friend class PacketBuilder;
protected: protected:
@@ -70,7 +70,7 @@ namespace Movement
// CatmullRom interpolation mode used // CatmullRom interpolation mode used
Mask_CatmullRom = Flying | Catmullrom, Mask_CatmullRom = Flying | Catmullrom,
// Unused, not suported flags // Unused, not suported flags
Mask_Unused = No_Spline|Enter_Cycle|Frozen|Unknown7|Unknown8|Unknown10|Unknown11|Unknown12|Unknown13, Mask_Unused = No_Spline|Enter_Cycle|Frozen|Unknown7|Unknown8|Unknown10|Unknown11|Unknown12|Unknown13
}; };
inline uint32& raw() { return (uint32&)*this;} inline uint32& raw() { return (uint32&)*this;}
@@ -31,7 +31,7 @@ namespace Movement
ToGround = 0, // 460 = ToGround, index of AnimationData.dbc ToGround = 0, // 460 = ToGround, index of AnimationData.dbc
FlyToFly = 1, // 461 = FlyToFly? FlyToFly = 1, // 461 = FlyToFly?
ToFly = 2, // 458 = ToFly ToFly = 2, // 458 = ToFly
FlyToGround = 3, // 463 = FlyToGround FlyToGround = 3 // 463 = FlyToGround
}; };
// Transforms coordinates from global to transport offsets // Transforms coordinates from global to transport offsets
+1 -1
View File
@@ -53,7 +53,7 @@ protected:
// lesser value saves more performance in cost of lover precision // lesser value saves more performance in cost of lover precision
// minimal value is 1 // minimal value is 1
// client's value is 20, blizzs use 2-3 steps to compute length // client's value is 20, blizzs use 2-3 steps to compute length
STEPS_PER_SEGMENT = 3, STEPS_PER_SEGMENT = 3
}; };
static_assert(STEPS_PER_SEGMENT > 0, "shouldn't be lesser than 1"); static_assert(STEPS_PER_SEGMENT > 0, "shouldn't be lesser than 1");
+1 -1
View File
@@ -30,7 +30,7 @@
#include "CellImpl.h" #include "CellImpl.h"
OPvPCapturePoint::OPvPCapturePoint(OutdoorPvP* pvp) : OPvPCapturePoint::OPvPCapturePoint(OutdoorPvP* pvp) :
m_capturePointGUID(0), m_capturePoint(NULL), m_minValue(0.0f), m_maxValue(0.0f), m_maxSpeed(0), m_capturePointGUID(0), m_capturePoint(NULL), m_maxValue(0.0f), m_minValue(0.0f), m_maxSpeed(0),
m_value(0), m_team(TEAM_NEUTRAL), m_OldState(OBJECTIVESTATE_NEUTRAL), m_value(0), m_team(TEAM_NEUTRAL), m_OldState(OBJECTIVESTATE_NEUTRAL),
m_State(OBJECTIVESTATE_NEUTRAL), m_neutralValuePct(0), m_PvP(pvp) m_State(OBJECTIVESTATE_NEUTRAL), m_neutralValuePct(0), m_PvP(pvp)
{ {
+2 -2
View File
@@ -31,7 +31,7 @@ enum OutdoorPvPTypes
OUTDOOR_PVP_TF = 3, OUTDOOR_PVP_TF = 3,
OUTDOOR_PVP_ZM = 4, OUTDOOR_PVP_ZM = 4,
OUTDOOR_PVP_SI = 5, OUTDOOR_PVP_SI = 5,
OUTDOOR_PVP_EP = 6, OUTDOOR_PVP_EP = 6
}; };
#define MAX_OUTDOORPVP_TYPES 7 #define MAX_OUTDOORPVP_TYPES 7
@@ -44,7 +44,7 @@ enum ObjectiveStates
OBJECTIVESTATE_NEUTRAL_ALLIANCE_CHALLENGE, OBJECTIVESTATE_NEUTRAL_ALLIANCE_CHALLENGE,
OBJECTIVESTATE_NEUTRAL_HORDE_CHALLENGE, OBJECTIVESTATE_NEUTRAL_HORDE_CHALLENGE,
OBJECTIVESTATE_ALLIANCE_HORDE_CHALLENGE, OBJECTIVESTATE_ALLIANCE_HORDE_CHALLENGE,
OBJECTIVESTATE_HORDE_ALLIANCE_CHALLENGE, OBJECTIVESTATE_HORDE_ALLIANCE_CHALLENGE
}; };
#define OTHER_TEAM(a) (a == TEAM_ALLIANCE ? TEAM_HORDE : TEAM_ALLIANCE) #define OTHER_TEAM(a) (a == TEAM_ALLIANCE ? TEAM_HORDE : TEAM_ALLIANCE)
+2 -2
View File
@@ -90,7 +90,7 @@ enum __QuestTradeSkill
QUEST_TRSKILL_MINING = 11, QUEST_TRSKILL_MINING = 11,
QUEST_TRSKILL_FISHING = 12, QUEST_TRSKILL_FISHING = 12,
QUEST_TRSKILL_SKINNING = 13, QUEST_TRSKILL_SKINNING = 13,
QUEST_TRSKILL_JEWELCRAFTING = 14, QUEST_TRSKILL_JEWELCRAFTING = 14
}; };
enum QuestStatus enum QuestStatus
@@ -158,7 +158,7 @@ enum __QuestFlags
QUEST_TRINITY_FLAGS_SPEAKTO = 0x08000000, // Internal flag computed only QUEST_TRINITY_FLAGS_SPEAKTO = 0x08000000, // Internal flag computed only
QUEST_TRINITY_FLAGS_KILL_OR_CAST = 0x10000000, // Internal flag computed only QUEST_TRINITY_FLAGS_KILL_OR_CAST = 0x10000000, // Internal flag computed only
QUEST_TRINITY_FLAGS_TIMED = 0x20000000, // Internal flag computed only QUEST_TRINITY_FLAGS_TIMED = 0x20000000, // Internal flag computed only
QUEST_TRINITY_FLAGS_PLAYER_KILL = 0x40000000, // Internal flag computed only QUEST_TRINITY_FLAGS_PLAYER_KILL = 0x40000000 // Internal flag computed only
}; };
struct QuestLocale struct QuestLocale
+1 -1
View File
@@ -1356,7 +1356,7 @@ enum SessionStatus
STATUS_TRANSFER, // Player transferring to another map (_player != NULL, m_GUID == _player->GetGUID(), !inWorld()) STATUS_TRANSFER, // Player transferring to another map (_player != NULL, m_GUID == _player->GetGUID(), !inWorld())
STATUS_LOGGEDIN_OR_RECENTLY_LOGGOUT, // _player != NULL or _player == NULL && m_playerRecentlyLogout && m_playerLogout, m_GUID store last _player guid) STATUS_LOGGEDIN_OR_RECENTLY_LOGGOUT, // _player != NULL or _player == NULL && m_playerRecentlyLogout && m_playerLogout, m_GUID store last _player guid)
STATUS_NEVER, // Opcode not accepted from client (deprecated or server side only) STATUS_NEVER, // Opcode not accepted from client (deprecated or server side only)
STATUS_UNHANDLED, // Opcode not handled yet STATUS_UNHANDLED // Opcode not handled yet
}; };
enum PacketProcessing enum PacketProcessing
+2 -2
View File
@@ -68,7 +68,7 @@ enum AccountDataType
GLOBAL_MACROS_CACHE = 4, // 0x10 g GLOBAL_MACROS_CACHE = 4, // 0x10 g
PER_CHARACTER_MACROS_CACHE = 5, // 0x20 p PER_CHARACTER_MACROS_CACHE = 5, // 0x20 p
PER_CHARACTER_LAYOUT_CACHE = 6, // 0x40 p PER_CHARACTER_LAYOUT_CACHE = 6, // 0x40 p
PER_CHARACTER_CHAT_CACHE = 7, // 0x80 p PER_CHARACTER_CHAT_CACHE = 7 // 0x80 p
}; };
#define NUM_ACCOUNT_DATA_TYPES 8 #define NUM_ACCOUNT_DATA_TYPES 8
@@ -132,7 +132,7 @@ enum BFLeaveReason
//BF_LEAVE_REASON_UNK1 = 0x00000002, (not used) //BF_LEAVE_REASON_UNK1 = 0x00000002, (not used)
//BF_LEAVE_REASON_UNK2 = 0x00000004, (not used) //BF_LEAVE_REASON_UNK2 = 0x00000004, (not used)
BF_LEAVE_REASON_EXITED = 0x00000008, BF_LEAVE_REASON_EXITED = 0x00000008,
BF_LEAVE_REASON_LOW_LEVEL = 0x00000010, BF_LEAVE_REASON_LOW_LEVEL = 0x00000010
}; };
enum ChatRestrictionType enum ChatRestrictionType
@@ -47,14 +47,14 @@ enum AuraEffectHandleModes
AURA_EFFECT_HANDLE_SEND_FOR_CLIENT_MASK = (AURA_EFFECT_HANDLE_SEND_FOR_CLIENT | AURA_EFFECT_HANDLE_REAL), // any case handler need to send packet AURA_EFFECT_HANDLE_SEND_FOR_CLIENT_MASK = (AURA_EFFECT_HANDLE_SEND_FOR_CLIENT | AURA_EFFECT_HANDLE_REAL), // any case handler need to send packet
AURA_EFFECT_HANDLE_CHANGE_AMOUNT_MASK = (AURA_EFFECT_HANDLE_CHANGE_AMOUNT | AURA_EFFECT_HANDLE_REAL), // any case handler applies effect depending on amount AURA_EFFECT_HANDLE_CHANGE_AMOUNT_MASK = (AURA_EFFECT_HANDLE_CHANGE_AMOUNT | AURA_EFFECT_HANDLE_REAL), // any case handler applies effect depending on amount
AURA_EFFECT_HANDLE_CHANGE_AMOUNT_SEND_FOR_CLIENT_MASK = (AURA_EFFECT_HANDLE_CHANGE_AMOUNT_MASK | AURA_EFFECT_HANDLE_SEND_FOR_CLIENT_MASK), AURA_EFFECT_HANDLE_CHANGE_AMOUNT_SEND_FOR_CLIENT_MASK = (AURA_EFFECT_HANDLE_CHANGE_AMOUNT_MASK | AURA_EFFECT_HANDLE_SEND_FOR_CLIENT_MASK),
AURA_EFFECT_HANDLE_REAL_OR_REAPPLY_MASK = (AURA_EFFECT_HANDLE_REAPPLY | AURA_EFFECT_HANDLE_REAL), AURA_EFFECT_HANDLE_REAL_OR_REAPPLY_MASK = (AURA_EFFECT_HANDLE_REAPPLY | AURA_EFFECT_HANDLE_REAL)
}; };
//m_schoolAbsorb //m_schoolAbsorb
enum DAMAGE_ABSORB_TYPE enum DAMAGE_ABSORB_TYPE
{ {
ALL_DAMAGE_ABSORB = -2, ALL_DAMAGE_ABSORB = -2,
ONLY_MAGIC_ABSORB = -1, ONLY_MAGIC_ABSORB = -1
}; };
enum AuraType enum AuraType
@@ -382,6 +382,7 @@ enum AuraType
enum AuraObjectType enum AuraObjectType
{ {
UNIT_AURA_TYPE, UNIT_AURA_TYPE,
DYNOBJ_AURA_TYPE, DYNOBJ_AURA_TYPE
}; };
#endif #endif
+1 -1
View File
@@ -2331,7 +2331,7 @@ UnitAura::UnitAura(SpellInfo const* spellproto, uint8 effMask, WorldObject* owne
LoadScripts(); LoadScripts();
_InitEffects(effMask, caster, baseAmount); _InitEffects(effMask, caster, baseAmount);
GetUnitOwner()->_AddAura(this, caster); GetUnitOwner()->_AddAura(this, caster);
}; }
void UnitAura::_ApplyForTarget(Unit* target, Unit* caster, AuraApplication * aurApp) void UnitAura::_ApplyForTarget(Unit* target, Unit* caster, AuraApplication * aurApp)
{ {
+1 -1
View File
@@ -583,7 +583,7 @@ m_caster((info->AttributesEx6 & SPELL_ATTR6_CAST_BY_CHARMER && caster->GetCharme
&& !m_spellInfo->IsPassive() && !m_spellInfo->IsPositive(); && !m_spellInfo->IsPassive() && !m_spellInfo->IsPositive();
CleanupTargetList(); CleanupTargetList();
memset(m_effectExecuteData, NULL, MAX_SPELL_EFFECTS * sizeof(ByteBuffer*)); memset(m_effectExecuteData, 0, MAX_SPELL_EFFECTS * sizeof(ByteBuffer*));
for (uint8 i = 0; i < MAX_SPELL_EFFECTS; ++i) for (uint8 i = 0; i < MAX_SPELL_EFFECTS; ++i)
m_destTargets[i] = SpellDestination(*m_caster); m_destTargets[i] = SpellDestination(*m_caster);
+3 -3
View File
@@ -70,14 +70,14 @@ enum SpellCastFlags
CAST_FLAG_UNKNOWN_29 = 0x10000000, CAST_FLAG_UNKNOWN_29 = 0x10000000,
CAST_FLAG_UNKNOWN_30 = 0x20000000, CAST_FLAG_UNKNOWN_30 = 0x20000000,
CAST_FLAG_UNKNOWN_31 = 0x40000000, CAST_FLAG_UNKNOWN_31 = 0x40000000,
CAST_FLAG_UNKNOWN_32 = 0x80000000, CAST_FLAG_UNKNOWN_32 = 0x80000000
}; };
enum SpellRangeFlag enum SpellRangeFlag
{ {
SPELL_RANGE_DEFAULT = 0, SPELL_RANGE_DEFAULT = 0,
SPELL_RANGE_MELEE = 1, //melee SPELL_RANGE_MELEE = 1, //melee
SPELL_RANGE_RANGED = 2, //hunter range and ranged weapon SPELL_RANGE_RANGED = 2 //hunter range and ranged weapon
}; };
struct SpellDestination struct SpellDestination
@@ -204,7 +204,7 @@ enum SpellEffectHandleMode
SPELL_EFFECT_HANDLE_LAUNCH, SPELL_EFFECT_HANDLE_LAUNCH,
SPELL_EFFECT_HANDLE_LAUNCH_TARGET, SPELL_EFFECT_HANDLE_LAUNCH_TARGET,
SPELL_EFFECT_HANDLE_HIT, SPELL_EFFECT_HANDLE_HIT,
SPELL_EFFECT_HANDLE_HIT_TARGET, SPELL_EFFECT_HANDLE_HIT_TARGET
}; };
class Spell class Spell
+9 -9
View File
@@ -67,7 +67,7 @@ enum SpellCastTargetFlags
| TARGET_FLAG_UNIT_ENEMY | TARGET_FLAG_UNIT_ALLY | TARGET_FLAG_UNIT_DEAD | TARGET_FLAG_UNIT_MINIPET | TARGET_FLAG_UNIT_PASSENGER, | TARGET_FLAG_UNIT_ENEMY | TARGET_FLAG_UNIT_ALLY | TARGET_FLAG_UNIT_DEAD | TARGET_FLAG_UNIT_MINIPET | TARGET_FLAG_UNIT_PASSENGER,
TARGET_FLAG_GAMEOBJECT_MASK = TARGET_FLAG_GAMEOBJECT | TARGET_FLAG_GAMEOBJECT_ITEM, TARGET_FLAG_GAMEOBJECT_MASK = TARGET_FLAG_GAMEOBJECT | TARGET_FLAG_GAMEOBJECT_ITEM,
TARGET_FLAG_CORPSE_MASK = TARGET_FLAG_CORPSE_ALLY | TARGET_FLAG_CORPSE_ENEMY, TARGET_FLAG_CORPSE_MASK = TARGET_FLAG_CORPSE_ALLY | TARGET_FLAG_CORPSE_ENEMY,
TARGET_FLAG_ITEM_MASK = TARGET_FLAG_TRADE_ITEM | TARGET_FLAG_ITEM | TARGET_FLAG_GAMEOBJECT_ITEM, TARGET_FLAG_ITEM_MASK = TARGET_FLAG_TRADE_ITEM | TARGET_FLAG_ITEM | TARGET_FLAG_GAMEOBJECT_ITEM
}; };
enum SpellTargetSelectionCategories enum SpellTargetSelectionCategories
@@ -77,7 +77,7 @@ enum SpellTargetSelectionCategories
TARGET_SELECT_CATEGORY_CHANNEL, TARGET_SELECT_CATEGORY_CHANNEL,
TARGET_SELECT_CATEGORY_NEARBY, TARGET_SELECT_CATEGORY_NEARBY,
TARGET_SELECT_CATEGORY_CONE, TARGET_SELECT_CATEGORY_CONE,
TARGET_SELECT_CATEGORY_AREA, TARGET_SELECT_CATEGORY_AREA
}; };
enum SpellTargetReferenceTypes enum SpellTargetReferenceTypes
@@ -87,7 +87,7 @@ enum SpellTargetReferenceTypes
TARGET_REFERENCE_TYPE_TARGET, TARGET_REFERENCE_TYPE_TARGET,
TARGET_REFERENCE_TYPE_LAST, TARGET_REFERENCE_TYPE_LAST,
TARGET_REFERENCE_TYPE_SRC, TARGET_REFERENCE_TYPE_SRC,
TARGET_REFERENCE_TYPE_DEST, TARGET_REFERENCE_TYPE_DEST
}; };
enum SpellTargetObjectTypes enum SpellTargetObjectTypes
@@ -103,7 +103,7 @@ enum SpellTargetObjectTypes
TARGET_OBJECT_TYPE_CORPSE, TARGET_OBJECT_TYPE_CORPSE,
// only for effect target type // only for effect target type
TARGET_OBJECT_TYPE_CORPSE_ENEMY, TARGET_OBJECT_TYPE_CORPSE_ENEMY,
TARGET_OBJECT_TYPE_CORPSE_ALLY, TARGET_OBJECT_TYPE_CORPSE_ALLY
}; };
enum SpellTargetCheckTypes enum SpellTargetCheckTypes
@@ -115,7 +115,7 @@ enum SpellTargetCheckTypes
TARGET_CHECK_PARTY, TARGET_CHECK_PARTY,
TARGET_CHECK_RAID, TARGET_CHECK_RAID,
TARGET_CHECK_RAID_CLASS, TARGET_CHECK_RAID_CLASS,
TARGET_CHECK_PASSENGER, TARGET_CHECK_PASSENGER
}; };
enum SpellTargetDirectionTypes enum SpellTargetDirectionTypes
@@ -130,14 +130,14 @@ enum SpellTargetDirectionTypes
TARGET_DIR_BACK_LEFT, TARGET_DIR_BACK_LEFT,
TARGET_DIR_FRONT_LEFT, TARGET_DIR_FRONT_LEFT,
TARGET_DIR_RANDOM, TARGET_DIR_RANDOM,
TARGET_DIR_ENTRY, TARGET_DIR_ENTRY
}; };
enum SpellEffectImplicitTargetTypes enum SpellEffectImplicitTargetTypes
{ {
EFFECT_IMPLICIT_TARGET_NONE = 0, EFFECT_IMPLICIT_TARGET_NONE = 0,
EFFECT_IMPLICIT_TARGET_EXPLICIT, EFFECT_IMPLICIT_TARGET_EXPLICIT,
EFFECT_IMPLICIT_TARGET_CASTER, EFFECT_IMPLICIT_TARGET_CASTER
}; };
// Spell clasification // Spell clasification
@@ -165,7 +165,7 @@ enum SpellSpecificType
SPELL_SPECIFIC_MAGE_ARCANE_BRILLANCE = 25, SPELL_SPECIFIC_MAGE_ARCANE_BRILLANCE = 25,
SPELL_SPECIFIC_WARRIOR_ENRAGE = 26, SPELL_SPECIFIC_WARRIOR_ENRAGE = 26,
SPELL_SPECIFIC_PRIEST_DIVINE_SPIRIT = 27, SPELL_SPECIFIC_PRIEST_DIVINE_SPIRIT = 27,
SPELL_SPECIFIC_HAND = 28, SPELL_SPECIFIC_HAND = 28
}; };
enum SpellCustomAttributes enum SpellCustomAttributes
@@ -187,7 +187,7 @@ enum SpellCustomAttributes
SPELL_ATTR0_CU_REQ_TARGET_FACING_CASTER = 0x00010000, SPELL_ATTR0_CU_REQ_TARGET_FACING_CASTER = 0x00010000,
SPELL_ATTR0_CU_REQ_CASTER_BEHIND_TARGET = 0x00020000, SPELL_ATTR0_CU_REQ_CASTER_BEHIND_TARGET = 0x00020000,
SPELL_ATTR0_CU_NEGATIVE = SPELL_ATTR0_CU_NEGATIVE_EFF0 | SPELL_ATTR0_CU_NEGATIVE_EFF1 | SPELL_ATTR0_CU_NEGATIVE_EFF2, SPELL_ATTR0_CU_NEGATIVE = SPELL_ATTR0_CU_NEGATIVE_EFF0 | SPELL_ATTR0_CU_NEGATIVE_EFF1 | SPELL_ATTR0_CU_NEGATIVE_EFF2
}; };
uint32 GetTargetFlagMask(SpellTargetObjectTypes objType); uint32 GetTargetFlagMask(SpellTargetObjectTypes objType);
+3
View File
@@ -3422,6 +3422,9 @@ void SpellMgr::LoadDbcDataCorrections()
case 71159: // Awaken Plagued Zombies case 71159: // Awaken Plagued Zombies
spellInfo->DurationIndex = 21; spellInfo->DurationIndex = 21;
break; break;
case 70530: // Volatile Ooze Beam Protection (Professor Putricide)
spellInfo->Effect[0] = SPELL_EFFECT_APPLY_AURA; // for an unknown reason this was SPELL_EFFECT_APPLY_AREA_AURA_RAID
break;
// THIS IS HERE BECAUSE COOLDOWN ON CREATURE PROCS IS NOT IMPLEMENTED // THIS IS HERE BECAUSE COOLDOWN ON CREATURE PROCS IS NOT IMPLEMENTED
case 71604: // Mutated Strength (Professor Putricide) case 71604: // Mutated Strength (Professor Putricide)
case 72673: // Mutated Strength (Professor Putricide) case 72673: // Mutated Strength (Professor Putricide)
+9 -8
View File
@@ -39,7 +39,7 @@ enum SpellCategories
SPELLCATEGORY_DEVOUR_MAGIC = 12, SPELLCATEGORY_DEVOUR_MAGIC = 12,
SPELLCATEGORY_JUDGEMENT = 1210, // Judgement (seal trigger) SPELLCATEGORY_JUDGEMENT = 1210, // Judgement (seal trigger)
SPELLCATEGORY_FOOD = 11, SPELLCATEGORY_FOOD = 11,
SPELLCATEGORY_DRINK = 59, SPELLCATEGORY_DRINK = 59
}; };
//SpellFamilyFlags //SpellFamilyFlags
@@ -85,7 +85,7 @@ enum SpellFamilyFlag
SPELLFAMILYFLAG_DK_DEATH_COIL = 0x00002000, SPELLFAMILYFLAG_DK_DEATH_COIL = 0x00002000,
// TODO: Figure out a more accurate name for the following familyflag(s) // TODO: Figure out a more accurate name for the following familyflag(s)
SPELLFAMILYFLAG_SHAMAN_TOTEM_EFFECTS = 0x04000000, // Seems to be linked to most totems and some totem effects SPELLFAMILYFLAG_SHAMAN_TOTEM_EFFECTS = 0x04000000 // Seems to be linked to most totems and some totem effects
}; };
@@ -96,7 +96,7 @@ enum SpellLinkedType
SPELL_LINK_CAST = 0, // +: cast; -: remove SPELL_LINK_CAST = 0, // +: cast; -: remove
SPELL_LINK_HIT = 1 * 200000, SPELL_LINK_HIT = 1 * 200000,
SPELL_LINK_AURA = 2 * 200000, // +: aura; -: immune SPELL_LINK_AURA = 2 * 200000, // +: aura; -: immune
SPELL_LINK_REMOVE = 0, SPELL_LINK_REMOVE = 0
}; };
@@ -177,7 +177,7 @@ enum ProcFlags
| PROC_FLAG_TAKEN_SPELL_MAGIC_DMG_CLASS_POS | PROC_FLAG_TAKEN_SPELL_MAGIC_DMG_CLASS_NEG | PROC_FLAG_TAKEN_SPELL_MAGIC_DMG_CLASS_POS | PROC_FLAG_TAKEN_SPELL_MAGIC_DMG_CLASS_NEG
| PROC_FLAG_TAKEN_PERIODIC | PROC_FLAG_TAKEN_DAMAGE, | PROC_FLAG_TAKEN_PERIODIC | PROC_FLAG_TAKEN_DAMAGE,
REQ_SPELL_PHASE_PROC_FLAG_MASK = SPELL_PROC_FLAG_MASK & DONE_HIT_PROC_FLAG_MASK, REQ_SPELL_PHASE_PROC_FLAG_MASK = SPELL_PROC_FLAG_MASK & DONE_HIT_PROC_FLAG_MASK
}; };
#define MELEE_BASED_TRIGGER_MASK (PROC_FLAG_DONE_MELEE_AUTO_ATTACK | \ #define MELEE_BASED_TRIGGER_MASK (PROC_FLAG_DONE_MELEE_AUTO_ATTACK | \
@@ -261,12 +261,12 @@ enum ProcFlagsHit
PROC_HIT_REFLECT = 0x0000800, PROC_HIT_REFLECT = 0x0000800,
PROC_HIT_INTERRUPT = 0x0001000, // (not used atm) PROC_HIT_INTERRUPT = 0x0001000, // (not used atm)
PROC_HIT_FULL_BLOCK = 0x0002000, PROC_HIT_FULL_BLOCK = 0x0002000,
PROC_HIT_MASK_ALL = 0x2FFF, PROC_HIT_MASK_ALL = 0x2FFF
}; };
enum ProcAttributes enum ProcAttributes
{ {
PROC_ATTR_REQ_EXP_OR_HONOR = 0x0000010, PROC_ATTR_REQ_EXP_OR_HONOR = 0x0000010
}; };
struct SpellProcEventEntry struct SpellProcEventEntry
@@ -327,7 +327,7 @@ enum SpellGroup
SPELL_GROUP_ELIXIR_GUARDIAN = 2, SPELL_GROUP_ELIXIR_GUARDIAN = 2,
SPELL_GROUP_ELIXIR_UNSTABLE = 3, SPELL_GROUP_ELIXIR_UNSTABLE = 3,
SPELL_GROUP_ELIXIR_SHATTRATH = 4, SPELL_GROUP_ELIXIR_SHATTRATH = 4,
SPELL_GROUP_CORE_RANGE_MAX = 5, SPELL_GROUP_CORE_RANGE_MAX = 5
}; };
#define SPELL_GROUP_DB_RANGE_MIN 1000 #define SPELL_GROUP_DB_RANGE_MIN 1000
@@ -345,8 +345,9 @@ enum SpellGroupStackRule
SPELL_GROUP_STACK_RULE_DEFAULT = 0, SPELL_GROUP_STACK_RULE_DEFAULT = 0,
SPELL_GROUP_STACK_RULE_EXCLUSIVE = 1, SPELL_GROUP_STACK_RULE_EXCLUSIVE = 1,
SPELL_GROUP_STACK_RULE_EXCLUSIVE_FROM_SAME_CASTER = 2, SPELL_GROUP_STACK_RULE_EXCLUSIVE_FROM_SAME_CASTER = 2,
SPELL_GROUP_STACK_RULE_EXCLUSIVE_SAME_EFFECT = 3, SPELL_GROUP_STACK_RULE_EXCLUSIVE_SAME_EFFECT = 3
}; };
#define SPELL_GROUP_STACK_RULE_MAX 4 #define SPELL_GROUP_STACK_RULE_MAX 4
typedef std::map<SpellGroup, SpellGroupStackRule> SpellGroupStackMap; typedef std::map<SpellGroup, SpellGroupStackRule> SpellGroupStackMap;
+3 -3
View File
@@ -47,7 +47,7 @@ enum SpellScriptState
SPELL_SCRIPT_STATE_NONE = 0, SPELL_SCRIPT_STATE_NONE = 0,
SPELL_SCRIPT_STATE_REGISTRATION, SPELL_SCRIPT_STATE_REGISTRATION,
SPELL_SCRIPT_STATE_LOADING, SPELL_SCRIPT_STATE_LOADING,
SPELL_SCRIPT_STATE_UNLOADING, SPELL_SCRIPT_STATE_UNLOADING
}; };
#define SPELL_SCRIPT_STATE_END SPELL_SCRIPT_STATE_UNLOADING + 1 #define SPELL_SCRIPT_STATE_END SPELL_SCRIPT_STATE_UNLOADING + 1
@@ -136,7 +136,7 @@ enum SpellScriptHookType
SPELL_SCRIPT_HOOK_CHECK_CAST, SPELL_SCRIPT_HOOK_CHECK_CAST,
SPELL_SCRIPT_HOOK_BEFORE_CAST, SPELL_SCRIPT_HOOK_BEFORE_CAST,
SPELL_SCRIPT_HOOK_ON_CAST, SPELL_SCRIPT_HOOK_ON_CAST,
SPELL_SCRIPT_HOOK_AFTER_CAST, SPELL_SCRIPT_HOOK_AFTER_CAST
}; };
#define HOOK_SPELL_HIT_START SPELL_SCRIPT_HOOK_EFFECT_HIT #define HOOK_SPELL_HIT_START SPELL_SCRIPT_HOOK_EFFECT_HIT
@@ -425,7 +425,7 @@ enum AuraScriptHookType
AURA_SCRIPT_HOOK_EFFECT_AFTER_MANASHIELD, AURA_SCRIPT_HOOK_EFFECT_AFTER_MANASHIELD,
AURA_SCRIPT_HOOK_CHECK_AREA_TARGET, AURA_SCRIPT_HOOK_CHECK_AREA_TARGET,
AURA_SCRIPT_HOOK_DISPEL, AURA_SCRIPT_HOOK_DISPEL,
AURA_SCRIPT_HOOK_AFTER_DISPEL, AURA_SCRIPT_HOOK_AFTER_DISPEL
/*AURA_SCRIPT_HOOK_APPLY, /*AURA_SCRIPT_HOOK_APPLY,
AURA_SCRIPT_HOOK_REMOVE, */ AURA_SCRIPT_HOOK_REMOVE, */
}; };
+5 -5
View File
@@ -29,13 +29,13 @@ class ChatHandler;
enum GMTicketSystemStatus enum GMTicketSystemStatus
{ {
GMTICKET_QUEUE_STATUS_DISABLED = 0, GMTICKET_QUEUE_STATUS_DISABLED = 0,
GMTICKET_QUEUE_STATUS_ENABLED = 1, GMTICKET_QUEUE_STATUS_ENABLED = 1
}; };
enum GMTicketStatus enum GMTicketStatus
{ {
GMTICKET_STATUS_HASTEXT = 0x06, GMTICKET_STATUS_HASTEXT = 0x06,
GMTICKET_STATUS_DEFAULT = 0x0A, GMTICKET_STATUS_DEFAULT = 0x0A
}; };
enum GMTicketResponse enum GMTicketResponse
@@ -45,7 +45,7 @@ enum GMTicketResponse
GMTICKET_RESPONSE_CREATE_ERROR = 3, GMTICKET_RESPONSE_CREATE_ERROR = 3,
GMTICKET_RESPONSE_UPDATE_SUCCESS = 4, GMTICKET_RESPONSE_UPDATE_SUCCESS = 4,
GMTICKET_RESPONSE_UPDATE_ERROR = 5, GMTICKET_RESPONSE_UPDATE_ERROR = 5,
GMTICKET_RESPONSE_TICKET_DELETED = 9, GMTICKET_RESPONSE_TICKET_DELETED = 9
}; };
// from Blizzard LUA: // from Blizzard LUA:
@@ -58,14 +58,14 @@ enum GMTicketEscalationStatus
TICKET_UNASSIGNED = 0, TICKET_UNASSIGNED = 0,
TICKET_ASSIGNED = 1, TICKET_ASSIGNED = 1,
TICKET_IN_ESCALATION_QUEUE = 2, TICKET_IN_ESCALATION_QUEUE = 2,
TICKET_ESCALATED_ASSIGNED = 3, TICKET_ESCALATED_ASSIGNED = 3
}; };
// from blizzard lua // from blizzard lua
enum GMTicketOpenedByGMStatus enum GMTicketOpenedByGMStatus
{ {
GMTICKET_OPENEDBYGM_STATUS_NOT_OPENED = 0, // ticket has never been opened by a gm GMTICKET_OPENEDBYGM_STATUS_NOT_OPENED = 0, // ticket has never been opened by a gm
GMTICKET_OPENEDBYGM_STATUS_OPENED = 1, // ticket has been opened by a gm GMTICKET_OPENEDBYGM_STATUS_OPENED = 1 // ticket has been opened by a gm
}; };
enum LagReportType enum LagReportType
+1 -1
View File
@@ -48,7 +48,7 @@ enum DumpTableType
DTT_ITEM_GIFT, // <- item guids // character_gifts DTT_ITEM_GIFT, // <- item guids // character_gifts
DTT_PET, // -> pet guids collection // character_pet DTT_PET, // -> pet guids collection // character_pet
DTT_PET_TABLE, // <- pet guids // pet_aura, pet_spell, pet_spell_cooldown DTT_PET_TABLE // <- pet guids // pet_aura, pet_spell, pet_spell_cooldown
}; };
enum DumpReturn enum DumpReturn
+1 -1
View File
@@ -54,7 +54,7 @@ enum WardenCheckType
DRIVER_CHECK = 0x71, // 113: uint Seed + byte[20] SHA1 + byte driverNameIndex (check to ensure driver isn't loaded) DRIVER_CHECK = 0x71, // 113: uint Seed + byte[20] SHA1 + byte driverNameIndex (check to ensure driver isn't loaded)
TIMING_CHECK = 0x57, // 87: empty (check to ensure GetTickCount() isn't detoured) TIMING_CHECK = 0x57, // 87: empty (check to ensure GetTickCount() isn't detoured)
PROC_CHECK = 0x7E, // 126: uint Seed + byte[20] SHA1 + byte moluleNameIndex + byte procNameIndex + uint Offset + byte Len (check to ensure proc isn't detoured) PROC_CHECK = 0x7E, // 126: uint Seed + byte[20] SHA1 + byte moluleNameIndex + byte procNameIndex + uint Offset + byte Len (check to ensure proc isn't detoured)
MODULE_CHECK = 0xD9, // 217: uint Seed + byte[20] SHA1 (check to ensure module isn't injected) MODULE_CHECK = 0xD9 // 217: uint Seed + byte[20] SHA1 (check to ensure module isn't injected)
}; };
#if defined(__GNUC__) #if defined(__GNUC__)
+1 -1
View File
@@ -57,7 +57,7 @@ enum WeatherState
WEATHER_STATE_HEAVY_SANDSTORM = 42, WEATHER_STATE_HEAVY_SANDSTORM = 42,
WEATHER_STATE_THUNDERS = 86, WEATHER_STATE_THUNDERS = 86,
WEATHER_STATE_BLACKRAIN = 90, WEATHER_STATE_BLACKRAIN = 90,
WEATHER_STATE_BLACKSNOW = 106, WEATHER_STATE_BLACKSNOW = 106
}; };
/// Weather for one zone /// Weather for one zone
+3 -3
View File
@@ -55,14 +55,14 @@ enum ServerMessageType
enum ShutdownMask enum ShutdownMask
{ {
SHUTDOWN_MASK_RESTART = 1, SHUTDOWN_MASK_RESTART = 1,
SHUTDOWN_MASK_IDLE = 2, SHUTDOWN_MASK_IDLE = 2
}; };
enum ShutdownExitCode enum ShutdownExitCode
{ {
SHUTDOWN_EXIT_CODE = 0, SHUTDOWN_EXIT_CODE = 0,
ERROR_EXIT_CODE = 1, ERROR_EXIT_CODE = 1,
RESTART_EXIT_CODE = 2, RESTART_EXIT_CODE = 2
}; };
/// Timers for different object refresh rates /// Timers for different object refresh rates
@@ -409,7 +409,7 @@ enum BillingPlanFlags
SESSION_USAGE = 0x10, SESSION_USAGE = 0x10,
SESSION_TIME_MIXTURE = 0x20, SESSION_TIME_MIXTURE = 0x20,
SESSION_RESTRICTED = 0x40, SESSION_RESTRICTED = 0x40,
SESSION_ENABLE_CAIS = 0x80, SESSION_ENABLE_CAIS = 0x80
}; };
/// Type of server, this is values from second column of Cfg_Configs.dbc /// Type of server, this is values from second column of Cfg_Configs.dbc
+5 -5
View File
@@ -953,8 +953,8 @@ public:
if (!player_str) if (!player_str)
return false; return false;
char* location_str = strtok(NULL, ""); std::string location_str = strtok(NULL, "");
if (!location_str) if (location_str.empty())
location_str = "inn"; location_str = "inn";
Player* player = NULL; Player* player = NULL;
@@ -969,19 +969,19 @@ public:
return false; return false;
} }
if (!stricmp(location_str, "inn")) if (location_str == "inn")
{ {
player->TeleportTo(player->m_homebindMapId, player->m_homebindX, player->m_homebindY, player->m_homebindZ, player->GetOrientation()); player->TeleportTo(player->m_homebindMapId, player->m_homebindX, player->m_homebindY, player->m_homebindZ, player->GetOrientation());
return true; return true;
} }
if (!stricmp(location_str, "graveyard")) if (location_str == "graveyard")
{ {
player->RepopAtGraveyard(); player->RepopAtGraveyard();
return true; return true;
} }
if (!stricmp(location_str, "startzone")) if (location_str == "startzone")
{ {
player->TeleportTo(player->GetStartPosition()); player->TeleportTo(player->GetStartPosition());
return true; return true;
@@ -23,6 +23,7 @@
#include "Spell.h" #include "Spell.h"
#include "icecrown_citadel.h" #include "icecrown_citadel.h"
#include "Vehicle.h" #include "Vehicle.h"
#include "GridNotifiers.h"
enum ScriptTexts enum ScriptTexts
{ {
@@ -185,12 +186,15 @@ class AbominationDespawner
if (Vehicle* veh = summon->GetVehicleKit()) if (Vehicle* veh = summon->GetVehicleKit())
veh->RemoveAllPassengers(); // also despawns the vehicle veh->RemoveAllPassengers(); // also despawns the vehicle
// Found unit is Mutated Abomination, remove it
return true; return true;
} }
// Found unit is not Mutated Abomintaion, leave it
return false; return false;
} }
// No unit found, remove from SummonList
return true; return true;
} }
@@ -198,6 +202,19 @@ class AbominationDespawner
Unit* _owner; Unit* _owner;
}; };
struct RotfaceHeightCheck
{
RotfaceHeightCheck(Creature* rotface) : _rotface(rotface) { }
bool operator()(Creature* stalker) const
{
return stalker->GetPositionZ() < _rotface->GetPositionZ() + 5.0f;
}
private:
Creature* _rotface;
};
class boss_professor_putricide : public CreatureScript class boss_professor_putricide : public CreatureScript
{ {
public: public:
@@ -246,7 +263,7 @@ class boss_professor_putricide : public CreatureScript
events.Reset(); events.Reset();
events.ScheduleEvent(EVENT_BERSERK, 600000); events.ScheduleEvent(EVENT_BERSERK, 600000);
events.ScheduleEvent(EVENT_SLIME_PUDDLE, 10000); events.ScheduleEvent(EVENT_SLIME_PUDDLE, 10000);
events.ScheduleEvent(EVENT_UNSTABLE_EXPERIMENT, urand(25000, 30000)); events.ScheduleEvent(EVENT_UNSTABLE_EXPERIMENT, urand(30000, 35000));
if (IsHeroic()) if (IsHeroic())
events.ScheduleEvent(EVENT_UNBOUND_PLAGUE, 20000); events.ScheduleEvent(EVENT_UNBOUND_PLAGUE, 20000);
@@ -295,18 +312,16 @@ class boss_professor_putricide : public CreatureScript
// no possible aura seen in sniff adding the aurastate // no possible aura seen in sniff adding the aurastate
summon->ModifyAuraState(AURA_STATE_UNKNOWN22, true); summon->ModifyAuraState(AURA_STATE_UNKNOWN22, true);
summon->CastSpell(summon, SPELL_GASEOUS_BLOAT_PROC, true); summon->CastSpell(summon, SPELL_GASEOUS_BLOAT_PROC, true);
summon->CastCustomSpell(SPELL_GASEOUS_BLOAT, SPELLVALUE_AURA_STACK, 10, summon, false);
summon->ApplySpellImmune(0, IMMUNITY_EFFECT, SPELL_EFFECT_KNOCK_BACK, true); summon->ApplySpellImmune(0, IMMUNITY_EFFECT, SPELL_EFFECT_KNOCK_BACK, true);
summon->SetReactState(REACT_PASSIVE); summon->SetReactState(REACT_PASSIVE);
return; break;
case NPC_VOLATILE_OOZE: case NPC_VOLATILE_OOZE:
// no possible aura seen in sniff adding the aurastate // no possible aura seen in sniff adding the aurastate
summon->ModifyAuraState(AURA_STATE_UNKNOWN19, true); summon->ModifyAuraState(AURA_STATE_UNKNOWN19, true);
summon->CastSpell(summon, SPELL_OOZE_ERUPTION_SEARCH_PERIODIC, true); summon->CastSpell(summon, SPELL_OOZE_ERUPTION_SEARCH_PERIODIC, true);
summon->CastSpell(summon, SPELL_VOLATILE_OOZE_ADHESIVE, false);
summon->ApplySpellImmune(0, IMMUNITY_EFFECT, SPELL_EFFECT_KNOCK_BACK, true); summon->ApplySpellImmune(0, IMMUNITY_EFFECT, SPELL_EFFECT_KNOCK_BACK, true);
summon->SetReactState(REACT_PASSIVE); summon->SetReactState(REACT_PASSIVE);
return; break;
case NPC_CHOKING_GAS_BOMB: case NPC_CHOKING_GAS_BOMB:
summon->CastSpell(summon, SPELL_CHOKING_GAS_BOMB_PERIODIC, true); summon->CastSpell(summon, SPELL_CHOKING_GAS_BOMB_PERIODIC, true);
summon->CastSpell(summon, SPELL_CHOKING_GAS_EXPLOSION_TRIGGER, true); summon->CastSpell(summon, SPELL_CHOKING_GAS_EXPLOSION_TRIGGER, true);
@@ -428,7 +443,8 @@ class boss_professor_putricide : public CreatureScript
if (Creature* rotface = Unit::GetCreature(*me, instance->GetData64(DATA_ROTFACE))) if (Creature* rotface = Unit::GetCreature(*me, instance->GetData64(DATA_ROTFACE)))
{ {
std::list<Creature*> list; std::list<Creature*> list;
GetCreatureListWithEntryInGrid(list, rotface, NPC_PUDDLE_STALKER, 36.0f); GetCreatureListWithEntryInGrid(list, rotface, NPC_PUDDLE_STALKER, 50.0f);
list.remove_if(RotfaceHeightCheck(rotface));
if (list.size() > 4) if (list.size() > 4)
{ {
list.sort(Trinity::ObjectDistanceOrderPred(rotface)); list.sort(Trinity::ObjectDistanceOrderPred(rotface));
@@ -510,7 +526,6 @@ class boss_professor_putricide : public CreatureScript
SetPhase(PHASE_COMBAT_3); SetPhase(PHASE_COMBAT_3);
events.ScheduleEvent(EVENT_MUTATED_PLAGUE, 25000); events.ScheduleEvent(EVENT_MUTATED_PLAGUE, 25000);
events.CancelEvent(EVENT_UNSTABLE_EXPERIMENT); events.CancelEvent(EVENT_UNSTABLE_EXPERIMENT);
summons.remove_if(AbominationDespawner(me));
break; break;
default: default:
break; break;
@@ -643,7 +658,7 @@ class boss_professor_putricide : public CreatureScript
case EVENT_UNBOUND_PLAGUE: case EVENT_UNBOUND_PLAGUE:
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, NonTankTargetSelector(me))) if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, NonTankTargetSelector(me)))
{ {
me->CastCustomSpell(SPELL_UNBOUND_PLAGUE, SPELLVALUE_BASE_POINT0, 775, target); DoCast(target, SPELL_UNBOUND_PLAGUE);
DoCast(target, SPELL_UNBOUND_PLAGUE_SEARCHER); DoCast(target, SPELL_UNBOUND_PLAGUE_SEARCHER);
} }
events.ScheduleEvent(EVENT_UNBOUND_PLAGUE, 90000); events.ScheduleEvent(EVENT_UNBOUND_PLAGUE, 90000);
@@ -668,6 +683,7 @@ class boss_professor_putricide : public CreatureScript
me->SetFacingToObject(face); me->SetFacingToObject(face);
me->HandleEmoteCommand(EMOTE_ONESHOT_KNEEL); me->HandleEmoteCommand(EMOTE_ONESHOT_KNEEL);
Talk(SAY_TRANSFORM_2); Talk(SAY_TRANSFORM_2);
summons.remove_if(AbominationDespawner(me));
events.ScheduleEvent(EVENT_RESUME_ATTACK, 8500, 0, PHASE_COMBAT_3); events.ScheduleEvent(EVENT_RESUME_ATTACK, 8500, 0, PHASE_COMBAT_3);
break; break;
default: default:
@@ -702,21 +718,17 @@ class boss_professor_putricide : public CreatureScript
} }
}; };
class npc_volatile_ooze : public CreatureScript class npc_putricide_oozeAI : public ScriptedAI
{ {
public: public:
npc_volatile_ooze() : CreatureScript("npc_volatile_ooze") { } npc_putricide_oozeAI(Creature* creature, uint32 hitTargetSpellId) : ScriptedAI(creature),
_newTargetSelectTimer(0), _hitTargetSpellId(hitTargetSpellId)
struct npc_putricide_oozeAI : public ScriptedAI
{ {
npc_putricide_oozeAI(Creature* creature) : ScriptedAI(creature)
{
_newTargetSelectTimer = 0;
} }
void SpellHitTarget(Unit* /*target*/, SpellInfo const* spell) void SpellHitTarget(Unit* /*target*/, SpellInfo const* spell)
{ {
if (!_newTargetSelectTimer && spell->Id == sSpellMgr->GetSpellIdForDifficulty(SPELL_OOZE_ERUPTION, me)) if (!_newTargetSelectTimer && spell->Id == sSpellMgr->GetSpellIdForDifficulty(_hitTargetSpellId, me))
_newTargetSelectTimer = 1000; _newTargetSelectTimer = 1000;
} }
@@ -731,59 +743,8 @@ class npc_volatile_ooze : public CreatureScript
if (!UpdateVictim() && !_newTargetSelectTimer) if (!UpdateVictim() && !_newTargetSelectTimer)
return; return;
if (!_newTargetSelectTimer) if (!_newTargetSelectTimer && !me->IsNonMeleeSpellCasted(false, false, true, false, true))
return;
if (me->HasAura(SPELL_TEAR_GAS_CREATURE))
return;
if (_newTargetSelectTimer <= diff)
{
_newTargetSelectTimer = 0;
me->CastSpell(me, SPELL_VOLATILE_OOZE_ADHESIVE, false);
}
else
_newTargetSelectTimer -= diff;
}
private:
uint32 _newTargetSelectTimer;
};
CreatureAI* GetAI(Creature* creature) const
{
return GetIcecrownCitadelAI<npc_putricide_oozeAI>(creature);
}
};
class npc_gas_cloud : public CreatureScript
{
public:
npc_gas_cloud() : CreatureScript("npc_gas_cloud") { }
struct npc_gas_cloudAI : public ScriptedAI
{
npc_gas_cloudAI(Creature* creature) : ScriptedAI(creature)
{
_newTargetSelectTimer = 0;
}
void SpellHitTarget(Unit* /*target*/, SpellInfo const* spell)
{
if (!_newTargetSelectTimer && spell->Id == sSpellMgr->GetSpellIdForDifficulty(SPELL_EXPUNGED_GAS, me))
_newTargetSelectTimer = 1000; _newTargetSelectTimer = 1000;
}
void SpellHit(Unit* /*caster*/, SpellInfo const* spell)
{
if (spell->Id == SPELL_TEAR_GAS_CREATURE)
_newTargetSelectTimer = 1000;
}
void UpdateAI(uint32 const diff)
{
if (!UpdateVictim() && !_newTargetSelectTimer)
return;
DoMeleeAttackIfReady(); DoMeleeAttackIfReady();
@@ -796,12 +757,59 @@ class npc_gas_cloud : public CreatureScript
if (_newTargetSelectTimer <= diff) if (_newTargetSelectTimer <= diff)
{ {
_newTargetSelectTimer = 0; _newTargetSelectTimer = 0;
me->CastCustomSpell(SPELL_GASEOUS_BLOAT, SPELLVALUE_AURA_STACK, 10, me, false); CastMainSpell();
} }
else else
_newTargetSelectTimer -= diff; _newTargetSelectTimer -= diff;
} }
virtual void CastMainSpell() = 0;
private:
uint32 _hitTargetSpellId;
uint32 _newTargetSelectTimer;
};
class npc_volatile_ooze : public CreatureScript
{
public:
npc_volatile_ooze() : CreatureScript("npc_volatile_ooze") { }
struct npc_volatile_oozeAI : public npc_putricide_oozeAI
{
npc_volatile_oozeAI(Creature* creature) : npc_putricide_oozeAI(creature, SPELL_OOZE_ERUPTION)
{
}
void CastMainSpell()
{
me->CastSpell(me, SPELL_VOLATILE_OOZE_ADHESIVE, false);
}
};
CreatureAI* GetAI(Creature* creature) const
{
return GetIcecrownCitadelAI<npc_volatile_oozeAI>(creature);
}
};
class npc_gas_cloud : public CreatureScript
{
public:
npc_gas_cloud() : CreatureScript("npc_gas_cloud") { }
struct npc_gas_cloudAI : public npc_putricide_oozeAI
{
npc_gas_cloudAI(Creature* creature) : npc_putricide_oozeAI(creature, SPELL_EXPUNGED_GAS)
{
_newTargetSelectTimer = 0;
}
void CastMainSpell()
{
me->CastCustomSpell(SPELL_GASEOUS_BLOAT, SPELLVALUE_AURA_STACK, 10, me, false);
}
private: private:
uint32 _newTargetSelectTimer; uint32 _newTargetSelectTimer;
}; };
@@ -900,23 +908,12 @@ class spell_putricide_ooze_channel : public SpellScriptLoader
GetCaster()->AddThreat(GetHitUnit(), 500000000.0f); // value seen in sniff GetCaster()->AddThreat(GetHitUnit(), 500000000.0f); // value seen in sniff
} }
// temporary, until SelectTarget are not called on empty lists
void CheckTarget()
{
if (_target)
return;
FinishCast(SPELL_FAILED_NO_VALID_TARGETS);
GetCaster()->ToCreature()->DespawnOrUnsummon(1); // despawn next update
}
void Register() void Register()
{ {
OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_putricide_ooze_channel_SpellScript::SelectTarget, EFFECT_0, TARGET_UNIT_SRC_AREA_ENEMY); OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_putricide_ooze_channel_SpellScript::SelectTarget, EFFECT_0, TARGET_UNIT_SRC_AREA_ENEMY);
OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_putricide_ooze_channel_SpellScript::SetTarget, EFFECT_1, TARGET_UNIT_SRC_AREA_ENEMY); OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_putricide_ooze_channel_SpellScript::SetTarget, EFFECT_1, TARGET_UNIT_SRC_AREA_ENEMY);
OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_putricide_ooze_channel_SpellScript::SetTarget, EFFECT_2, TARGET_UNIT_SRC_AREA_ENEMY); OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_putricide_ooze_channel_SpellScript::SetTarget, EFFECT_2, TARGET_UNIT_SRC_AREA_ENEMY);
AfterHit += SpellHitFn(spell_putricide_ooze_channel_SpellScript::StartAttack); AfterHit += SpellHitFn(spell_putricide_ooze_channel_SpellScript::StartAttack);
OnCast += SpellCastFn(spell_putricide_ooze_channel_SpellScript::CheckTarget);
} }
WorldObject* _target; WorldObject* _target;
@@ -1125,6 +1122,21 @@ class spell_putricide_unbound_plague : public SpellScriptLoader
return true; return true;
} }
SpellCastResult CheckCast()
{
if (AuraEffect const* eff = GetCaster()->GetAuraEffect(SPELL_UNBOUND_PLAGUE_SEARCHER, EFFECT_0))
if (eff->GetTickNumber() < 2)
return SPELL_FAILED_DONT_REPORT;
return SPELL_CAST_OK;
}
void FilterTargets(std::list<WorldObject*>& targets)
{
targets.remove_if(Trinity::UnitAuraCheck(true, sSpellMgr->GetSpellIdForDifficulty(SPELL_UNBOUND_PLAGUE, GetCaster())));
Trinity::Containers::RandomResizeList(targets, 1);
}
void HandleScript(SpellEffIndex /*effIndex*/) void HandleScript(SpellEffIndex /*effIndex*/)
{ {
if (!GetHitUnit()) if (!GetHitUnit())
@@ -1159,6 +1171,8 @@ class spell_putricide_unbound_plague : public SpellScriptLoader
void Register() void Register()
{ {
OnCheckCast += SpellCheckCastFn(spell_putricide_unbound_plague_SpellScript::CheckCast);
OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_putricide_unbound_plague_SpellScript::FilterTargets, EFFECT_0, TARGET_UNIT_SRC_AREA_ALLY);
OnEffectHitTarget += SpellEffectFn(spell_putricide_unbound_plague_SpellScript::HandleScript, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT); OnEffectHitTarget += SpellEffectFn(spell_putricide_unbound_plague_SpellScript::HandleScript, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT);
} }
}; };
+1 -1
View File
@@ -48,6 +48,6 @@ namespace Trinity
return ACE_Strong_Bound_Ptr<Pointer, Lock>::get() != x; return ACE_Strong_Bound_Ptr<Pointer, Lock>::get() != x;
} }
}; };
}; }
#endif #endif

Some files were not shown because too many files have changed in this diff Show More