diff options
-rw-r--r-- | sql/FULL/world_script_texts.sql | 1 | ||||
-rw-r--r-- | sql/updates/5036_character_updates_dual_spec.sql | 10 | ||||
-rw-r--r-- | sql/updates/5084_character_updates_dual_spec.sql | 9 | ||||
-rw-r--r-- | sql/updates/5097_character_updates_dual_spec.sql | 13 | ||||
-rw-r--r-- | src/bindings/scripts/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/bindings/scripts/VC80/80ScriptDev2.vcproj | 4710 | ||||
-rw-r--r-- | src/bindings/scripts/VC90/90ScriptDev2.vcproj | 4710 | ||||
-rw-r--r-- | src/bindings/scripts/scripts/eastern_kingdoms/scarlet_enclave/chapter1.cpp | 973 | ||||
-rw-r--r-- | src/bindings/scripts/scripts/eastern_kingdoms/scarlet_enclave/chapter2.cpp | 2225 | ||||
-rw-r--r-- | src/bindings/scripts/scripts/eastern_kingdoms/scarlet_enclave/the_scarlet_enclave.cpp | 1 | ||||
-rw-r--r-- | src/bindings/scripts/system/ScriptLoader.cpp | 4 | ||||
-rw-r--r-- | src/game/CharacterHandler.cpp | 9 | ||||
-rw-r--r-- | src/game/SpellEffects.cpp | 3 |
13 files changed, 7951 insertions, 4719 deletions
diff --git a/sql/FULL/world_script_texts.sql b/sql/FULL/world_script_texts.sql index e833bc9024d..fd2cc390d85 100644 --- a/sql/FULL/world_script_texts.sql +++ b/sql/FULL/world_script_texts.sql @@ -2030,4 +2030,5 @@ INSERT INTO `npc_text` (`ID`, `text0_0`, `text0_1`, `lang0`, `prob0`, `em0_0`, ` -- Dual Spec `npc_option` change UPDATE `npc_option` SET `id`=52,`action`=19 WHERE `id`=51 AND `action`=18 AND `option_text`='UNIT_NPC_FLAG_OUTDOORPVP'; +DELETE FROM `npc_option` WHERE `id`=51 AND `action`=16 AND `option_text`='Purchase a Dual Talent Specialization.'; INSERT INTO `npc_option` (`id`, `gossip_id`, `npcflag`, `icon`, `action`, `box_money`, `coded`, `option_text`, `box_text`) values('51','0','16','2','18','10000000','0','Purchase a Dual Talent Specialization.','Are you sure you wish to purchase a Dual Talent Specialization?'); diff --git a/sql/updates/5036_character_updates_dual_spec.sql b/sql/updates/5036_character_updates_dual_spec.sql index 1718a70c554..b345755f298 100644 --- a/sql/updates/5036_character_updates_dual_spec.sql +++ b/sql/updates/5036_character_updates_dual_spec.sql @@ -20,10 +20,12 @@ CREATE TABLE `character_talent` ( PRIMARY KEY (`guid`,`spell`,`spec`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -/* The below DELETE query should remove all known talents from `character_spell`, - talents gathered by rockzOr of getmangos.com and updated/fixed by oc_redfox of trinitycore.org. - This update should (probably) only be run once, on your characters database before enabling Dual Spec.. */ -DELETE FROM `character_spell` WHERE `spell` IN (724,974,1329,3674,5570,5923,5924,5925,5926,5952,9452,9453,9799,10060,11069,11070,11071,11078,11080,11083,11094,11095,11100,11103,11108,11113,11115,11119,11120,11124,11129,11151,11160,11170,11175,11180,11185,11189,11190,11207,11210,11213,11222,11232,11237,11242,11247,11252,11255,11366,11367,11368,11426,11958,12042,12043,12163,12281,12282,12284,12285,12286,12287,12289,12290,12292,12294,12295,12296,12297,12298,12299,12300,12301,12308,12311,12312,12313,12317,12318,12319,12320,12321,12322,12323,12324,12328,12329,12330,12338,12339,12340,12341,12349,12350,12351,12353,12357,12358,12378,12398,12399,12400,12463,12464,12467,12469,12472,12473,12487,12488,12489,12490,12496,12497,12500,12501,12502,12503,12518,12519,12569,12571,12574,12575,12576,12577,12592,12598,12605,12606,12658,12663,12664,12665,12666,12668,12672,12676,12677,12697,12700,12701,12702,12703,12704,12711,12712,12724,12725,12726,12727,12750,12751,12752,12753,12761,12762,12763,12764,12781,12783,12784,12785,12797,12799,12803,12804,12809,12810,12811,12812,12813,12814,12815,12818,12834,12835,12839,12840,12846,12847,12848,12849,12852,12853,12855,12856,12857,12858,12860,12861,12862,12867,12872,12873,12876,12877,12878,12879,12950,12952,12953,12958,12959,12960,12963,12971,12972,12973,12974,12975,12982,12983,12999,13000,13001,13002,13043,13045,13046,13047,13048,13705,13706,13709,13712,13713,13715,13732,13733,13741,13742,13743,13750,13754,13788,13789,13790,13791,13792,13793,13800,13801,13802,13803,13804,13805,13806,13807,13832,13843,13844,13845,13848,13849,13851,13852,13853,13854,13863,13865,13866,13867,13872,13875,13877,13958,13960,13961,13962,13963,13964,13970,13971,13975,13976,13979,13980,13981,13983,14057,14062,14063,14066,14070,14071,14072,14076,14079,14080,14082,14083,14094,14113,14114,14115,14116,14117,14128,14132,14135,14136,14137,14138,14139,14140,14141,14142,14144,14148,14156,14158,14159,14160,14161,14162,14163,14164,14165,14166,14168,14169,14171,14172,14173,14174,14175,14176,14177,14179,14183,14185,14186,14190,14193,14194,14195,14251,14278,14520,14521,14522,14523,14531,14747,14748,14749,14750,14751,14752,14767,14768,14769,14770,14771,14772,14774,14776,14777,14780,14781,14782,14783,14784,14785,14788,14789,14790,14791,14889,14892,14898,14901,14908,14909,14910,14911,14912,14913,14983,15008,15009,15010,15011,15012,15013,15014,15017,15018,15020,15028,15029,15030,15031,15047,15058,15059,15060,15257,15259,15260,15268,15270,15272,15273,15274,15275,15286,15307,15308,15309,15310,15311,15312,15313,15314,15316,15317,15318,15320,15323,15324,15325,15326,15327,15328,15331,15332,15335,15336,15337,15338,15349,15354,15355,15356,15362,15363,15392,15407,15448,15473,15487,16035,16038,16039,16040,16041,16043,16086,16089,16105,16106,16107,16108,16109,16110,16111,16112,16113,16114,16115,16116,16130,16160,16161,16164,16166,16173,16176,16178,16179,16180,16181,16182,16184,16187,16188,16190,16194,16196,16198,16205,16206,16207,16208,16209,16210,16211,16212,16213,16214,16215,16216,16217,16218,16219,16220,16221,16222,16223,16224,16225,16226,16227,16228,16229,16230,16232,16235,16240,16252,16254,16255,16256,16258,16259,16261,16262,16266,16268,16271,16272,16281,16282,16283,16284,16287,16290,16293,16295,16302,16303,16304,16305,16306,16307,16308,16309,16462,16463,16464,16465,16466,16487,16489,16492,16493,16494,16511,16513,16514,16515,16538,16539,16540,16541,16542,16544,16578,16579,16580,16581,16582,16757,16758,16763,16765,16766,16769,16770,16814,16815,16816,16817,16818,16819,16820,16821,16822,16833,16834,16835,16836,16839,16840,16845,16846,16847,16850,16858,16859,16860,16861,16862,16864,16880,16896,16897,16899,16909,16910,16911,16912,16913,16923,16924,16929,16930,16931,16934,16935,16936,16937,16938,16940,16941,16942,16943,16944,16947,16948,16949,16966,16968,16972,16974,16975,16998,16999,17002,17003,17004,17005,17006,17007,17050,17051,17056,17058,17059,17060,17061,17063,17065,17066,17069,17070,17071,17072,17073,17074,17075,17076,17077,17078,17104,17106,17107,17108,17111,17112,17113,17116,17118,17119,17120,17123,17124,17191,17322,17323,17364,17485,17486,17487,17488,17489,17778,17779,17780,17783,17784,17785,17788,17789,17790,17791,17792,17793,17796,17801,17802,17803,17804,17805,17810,17811,17812,17813,17814,17815,17833,17834,17877,17917,17918,17927,17929,17930,17954,17955,17956,17957,17958,17959,17962,18073,18094,18095,18096,18119,18120,18126,18127,18130,18135,18136,18174,18175,18176,18179,18180,18182,18183,18213,18218,18219,18220,18223,18265,18271,18272,18273,18274,18275,18288,18372,18427,18428,18429,18459,18460,18462,18463,18464,18530,18531,18533,18534,18535,18551,18552,18553,18554,18555,18562,18692,18693,18694,18695,18696,18697,18698,18699,18700,18701,18703,18704,18705,18706,18707,18708,18709,18710,18731,18743,18744,18754,18755,18756,18767,18768,18769,18770,18771,18772,18773,18788,18821,18822,18827,18829,19028,19159,19160,19168,19180,19181,19184,19228,19232,19233,19236,19255,19256,19257,19258,19259,19286,19287,19290,19294,19295,19297,19298,19306,19370,19371,19373,19376,19386,19387,19388,19407,19412,19416,19417,19418,19419,19420,19421,19422,19423,19426,19427,19429,19430,19431,19434,19454,19455,19456,19461,19462,19464,19465,19466,19485,19487,19488,19489,19490,19498,19499,19500,19503,19506,19507,19508,19509,19510,19511,19549,19550,19551,19552,19553,19554,19555,19556,19559,19560,19572,19573,19574,19575,19577,19578,19583,19584,19585,19586,19587,19590,19592,19596,19596,19596,19598,19599,19600,19601,19602,19609,19610,19612,19616,19617,19618,19619,19620,19621,19622,19623,19624,19625,20042,20045,20049,20056,20057,20060,20061,20062,20063,20064,20066,20091,20092,20096,20097,20098,20099,20100,20101,20102,20103,20104,20105,20111,20112,20113,20117,20118,20119,20120,20121,20127,20130,20135,20138,20139,20140,20143,20144,20145,20146,20147,20174,20175,20177,20179,20180,20181,20182,20196,20197,20198,20199,20200,20205,20206,20207,20208,20209,20210,20212,20213,20214,20215,20216,20217,20224,20225,20234,20235,20237,20238,20239,20243,20244,20245,20254,20255,20256,20257,20258,20259,20260,20261,20262,20263,20264,20265,20266,20330,20331,20332,20335,20336,20337,20359,20360,20361,20375,20468,20469,20470,20473,20487,20488,20489,20496,20500,20501,20502,20503,20504,20505,20711,20895,20911,20925,23145,23145,23584,23585,23586,23587,23588,23695,23785,23822,23823,23824,23825,23881,23989,24283,24296,24297,24443,24691,24858,24866,24894,24943,24944,24945,24946,24968,24969,24970,24971,24972,25829,25836,25956,25957,25988,26016,26022,26023,27789,27790,27811,27815,27816,27839,27840,27900,27901,27902,27903,27904,28332,28574,28592,28593,28996,28997,28998,28999,29000,29062,29064,29065,29074,29075,29076,29079,29080,29082,29084,29086,29140,29143,29144,29179,29180,29187,29189,29191,29192,29193,29202,29205,29206,29438,29439,29440,29441,29444,29447,29590,29591,29592,29593,29594,29598,29599,29623,29721,29723,29724,29725,29759,29760,29761,29762,29763,29776,29787,29790,29792,29801,29834,29836,29838,29859,29888,29889,30054,30057,30060,30061,30062,30063,30064,30108,30143,30144,30145,30146,30160,30242,30245,30246,30247,30248,30283,30288,30289,30290,30291,30292,30293,30295,30296,30299,30301,30302,30319,30320,30321,30326,30327,30328,30664,30665,30666,30672,30673,30674,30675,30678,30679,30680,30681,30706,30798,30802,30808,30809,30810,30811,30812,30813,30814,30816,30818,30819,30823,30864,30865,30866,30867,30868,30869,30872,30873,30881,30883,30884,30885,30886,30892,30893,30894,30895,30902,30903,30904,30905,30906,30919,30920,31122,31123,31124,31126,31130,31131,31208,31209,31211,31212,31213,31216,31217,31218,31219,31220,31221,31222,31223,31226,31227,31228,31229,31230,31234,31235,31236,31244,31245,31380,31382,31383,31569,31570,31571,31572,31574,31575,31579,31582,31583,31584,31585,31586,31587,31588,31589,31638,31639,31640,31641,31642,31656,31657,31658,31661,31667,31668,31669,31670,31672,31674,31675,31676,31677,31678,31679,31680,31682,31683,31687,31785,31821,31822,31823,31825,31826,31828,31829,31830,31833,31835,31836,31837,31838,31839,31840,31841,31842,31844,31845,31848,31849,31850,31851,31852,31853,31854,31858,31859,31860,31866,31867,31868,31869,31871,31872,31876,31877,31878,31879,31880,31881,31882,31883,31935,32043,32381,32382,32383,32385,32387,32392,32393,32394,32477,32483,32484,32601,33142,33145,33146,33150,33154,33158,33159,33160,33161,33162,33167,33171,33172,33174,33182,33186,33190,33191,33192,33193,33201,33202,33203,33206,33213,33214,33215,33221,33222,33223,33224,33225,33371,33589,33590,33591,33592,33596,33597,33599,33600,33601,33602,33603,33604,33605,33606,33607,33776,33831,33851,33852,33853,33855,33856,33859,33866,33867,33872,33873,33879,33880,33881,33882,33883,33886,33887,33888,33889,33890,33891,33917,33956,33957,34151,34152,34153,34293,34295,34296,34297,34300,34453,34454,34455,34459,34460,34462,34464,34465,34466,34467,34468,34469,34470,34475,34476,34482,34483,34484,34485,34486,34487,34488,34489,34490,34491,34492,34493,34494,34496,34497,34498,34499,34500,34502,34503,34506,34507,34508,34692,34753,34838,34839,34859,34860,34861,34908,34909,34910,34911,34912,34914,34935,34938,34939,34948,34949,34950,34954,35029,35030,35100,35102,35103,35104,35110,35111,35363,35364,35395,35396,35397,35446,35448,35449,35541,35550,35551,35552,35553,35578,35581,35691,35692,35693,36554,37116,37117,43338,44378,44379,44394,44395,44396,44397,44398,44399,44400,44402,44403,44404,44425,44440,44441,44442,44443,44445,44446,44448,44449,44457,44469,44470,44471,44472,44543,44545,44546,44548,44549,44557,44560,44561,44566,44567,44568,44570,44571,44572,44745,45234,45243,45244,46854,46855,46859,46860,46865,46866,46867,46908,46909,46910,46911,46913,46914,46915,46917,46924,46945,46949,46951,46952,46953,46968,47193,47195,47196,47197,47198,47199,47200,47201,47202,47203,47204,47205,47220,47221,47223,47230,47231,47236,47237,47238,47239,47240,47245,47246,47247,47258,47259,47260,47266,47267,47268,47269,47270,47294,47295,47296,47507,47508,47509,47511,47515,47516,47517,47535,47536,47537,47538,47539,47540,47549,47551,47552,47555,47556,47557,47558,47559,47560,47562,47564,47565,47566,47567,47569,47570,47571,47572,47573,47577,47578,47580,47581,47582,47585,47586,47587,47588,47788,48079,48080,48081,48181,48384,48389,48392,48393,48395,48396,48409,48410,48411,48412,48432,48433,48434,48438,48483,48484,48485,48488,48489,48491,48492,48494,48495,48496,48499,48500,48505,48506,48510,48511,48514,48516,48521,48525,48532,48535,48536,48537,48539,48544,48545,48962,48963,48965,48977,48978,48979,48982,48985,48987,48988,48997,49004,49005,49006,49013,49015,49016,49018,49023,49024,49027,49028,49032,49036,49039,49042,49137,49140,49143,49145,49146,49149,49157,49158,49175,49182,49184,49186,49188,49189,49194,49200,49202,49203,49206,49208,49217,49219,49220,49222,49223,49224,49226,49377,49390,49391,49392,49393,49394,49395,49455,49467,49471,49477,49478,49479,49480,49483,49488,49489,49490,49491,49495,49497,49500,49501,49503,49504,49508,49509,49526,49529,49530,49531,49532,49533,49534,49538,49542,49543,49562,49564,49565,49567,49568,49571,49572,49588,49589,49599,49610,49611,49612,49614,49627,49628,49631,49632,49633,49635,49636,49638,49654,49655,49657,49661,49662,49663,49664,49786,49787,49788,49789,49790,49791,49796,50029,50031,50033,50034,50040,50041,50043,50115,50117,50118,50119,50120,50121,50127,50128,50129,50130,50137,50138,50147,50148,50149,50150,50151,50152,50154,50187,50190,50191,50334,50365,50371,50384,50385,50391,50392,50516,50685,50686,50687,50720,50796,50880,50884,50885,50886,50887,51052,51099,51108,51109,51123,51127,51128,51129,51130,51160,51161,51166,51167,51179,51180,51181,51182,51183,51267,51268,51269,51271,51456,51459,51462,51463,51464,51465,51466,51468,51470,51472,51473,51474,51478,51479,51480,51481,51482,51483,51485,51486,51490,51521,51522,51523,51524,51525,51526,51527,51528,51529,51530,51531,51532,51533,51554,51555,51556,51557,51558,51560,51561,51562,51563,51564,51565,51566,51625,51626,51627,51628,51629,51632,51633,51634,51635,51636,51662,51664,51665,51667,51668,51669,51672,51674,51679,51682,51685,51686,51687,51688,51689,51690,51692,51696,51698,51700,51701,51708,51709,51710,51711,51712,51713,51745,51746,51881,51883,51884,51885,51886,52143,52234,52456,52783,52785,52786,52787,52788,52795,52797,52798,52799,52800,52802,52803,52825,52858,52858,52858,53137,53138,53175,53176,53178,53179,53180,53181,53182,53182,53182,53183,53183,53183,53184,53184,53184,53186,53187,53203,53204,53205,53209,53215,53216,53217,53221,53222,53224,53228,53232,53234,53237,53238,53241,53243,53244,53245,53246,53252,53253,53256,53259,53260,53262,53263,53264,53265,53270,53290,53291,53292,53293,53294,53295,53296,53297,53298,53299,53301,53302,53303,53304,53375,53376,53379,53380,53381,53382,53383,53384,53385,53401,53409,53409,53409,53411,53411,53411,53426,53427,53427,53427,53429,53429,53429,53430,53430,53430,53434,53450,53451,53476,53477,53478,53480,53481,53482,53483,53484,53485,53486,53488,53490,53497,53501,53502,53503,53508,53511,53512,53514,53516,53517,53519,53527,53530,53551,53552,53553,53554,53555,53556,53557,53563,53569,53576,53583,53585,53590,53591,53592,53595,53620,53621,53622,53648,53660,53661,53671,53673,53695,53696,53709,53710,53711,53754,53759,54037,54038,54044,54117,54118,54151,54154,54155,54347,54348,54349,54354,54486,54488,54489,54490,54637,54638,54639,54646,54658,54659,54734,54747,54749,54787,55050,55061,55062,55090,55091,55092,55094,55107,55108,55129,55130,55131,55132,55133,55136,55198,55225,55226,55233,55236,55237,55339,55340,55610,55620,55623,55666,55667,55668,55669,55670,55709,56314,56315,56316,56317,56318,56333,56336,56337,56339,56340,56341,56342,56343,56344,56611,56612,56613,56614,56636,56637,56638,56822,56834,56835,56924,56927,56929,56930,56931,56932,57470,57472,57499,57810,57811,57812,57813,57814,57849,57850,57851,57865,57873,57876,57877,57878,57880,57881,58410,58413,58414,58415,58422,58423,58424,58425,58426,58435,58436,58437,58872,58874,59057,59088,59089,59295,59296,59297,59298,59672,59738,59739,59740,59741,60103,60184,60185,60187,60188,60970,61154,61155,61156,61157,61158,61216,61221,61222,61295,61329,61330,61331,61336,61345,61346,61433,61434,61680,61680,61680,61681,61681,61681,61682,61682,61682,61683,61683,61683,61684,61684,61685,61685,61686,61686,61686,61687,61687,61687,61688,61688,61688,61689,61689,61689,61690,61690,61690,62097,62098,62099,62100,62101,62758,62759,62760,62762,62764,62765,62905,62908,63108,63117,63121,63123,63156,63158,63245,63349,63350,63351,63370,63372,63373,63374,63410,63411,63457,63458,63503,63504,63505,63506,63534,63542,63543,63560,63574,63625,63626,63627,63646,63647,63648,63649,63650,63730,63733,63737,63900,64044,64127,64129,64205,64353,64357,64976,65139); +/* Drethek - This should be all talents without major rank of learned spells: */ +DELETE FROM `character_spell` WHERE `spell` IN (724,974,1329,5570,5923,5924,5925,5926,5952,9452,9453,9799,10060,11069,11070,11071,11078,11080,11083,11094,11095,11100,11103,11108,11113,11115,11119,11120,11124,11129,11151,11160,11170,11175,11180,11185,11189,11190,11207,11210,11213,11222,11232,11237,11242,11247,11252,11255,11366,11367,11368,11426,11958,12042,12043,12163,12281,12282,12284,12285,12286,12287,12289,12290,12292,12294,12295,12296,12297,12298,12299,12300,12301,12308,12311,12312,12313,12317,12318,12319,12320,12321,12322,12323,12324,12328,12329,12330,12338,12339,12340,12341,12349,12350,12351,12353,12357,12358,12378,12398,12399,12400,12463,12464,12467,12469,12472,12473,12487,12488,12489,12490,12496,12497,12500,12501,12502,12503,12518,12519,12569,12571,12574,12575,12576,12577,12592,12598,12605,12606,12658,12663,12664,12665,12666,12668,12672,12676,12677,12697,12700,12701,12702,12703,12704,12711,12712,12724,12725,12726,12727,12750,12751,12752,12753,12761,12762,12763,12764,12781,12783,12784,12785,12797,12799,12803,12804,12809,12810,12811,12812,12813,12814,12815,12818,12834,12835,12839,12840,12846,12847,12848,12849,12852,12853,12855,12856,12857,12858,12860,12861,12862,12867,12872,12873,12876,12877,12878,12879,12950,12952,12953,12958,12959,12960,12963,12971,12972,12973,12974,12975,12982,12983,12999,13000,13001,13002,13043,13045,13046,13047,13048,13705,13706,13709,13712,13713,13715,13732,13733,13741,13742,13743,13750,13754,13788,13789,13792,13793,13800,13801,13802,13803,13804,13805,13806,13807,13832,13843,13844,13845,13848,13849,13851,13852,13853,13854,13863,13865,13866,13867,13872,13875,13877,13958,13960,13961,13962,13963,13964,13970,13971,13975,13976,13979,13980,13981,13983,14057,14062,14063,14066,14070,14071,14072,14076,14079,14080,14082,14083,14094,14113,14114,14115,14116,14117,14128,14132,14135,14136,14137,14138,14139,14140,14141,14142,14144,14148,14156,14158,14159,14160,14161,14162,14163,14164,14165,14166,14168,14169,14171,14172,14173,14174,14175,14176,14177,14179,14183,14185,14186,14190,14193,14194,14195,14251,14278,14520,14521,14522,14523,14531,14747,14748,14749,14750,14751,14767,14768,14769,14770,14771,14772,14774,14776,14777,14780,14781,14784,14785,14788,14789,14790,14791,14889,14892,14898,14901,14908,14909,14910,14911,14912,14913,14983,15008,15009,15010,15011,15012,15013,15014,15017,15018,15020,15028,15029,15030,15031,15047,15058,15059,15060,15257,15259,15260,15270,15272,15273,15274,15275,15286,15307,15308,15309,15310,15311,15312,15313,15314,15316,15317,15318,15320,15327,15328,15331,15332,15335,15336,15337,15338,15349,15354,15355,15356,15362,15363,15392,15407,15448,15473,15487,16035,16038,16039,16040,16041,16043,16086,16089,16105,16106,16107,16108,16109,16110,16111,16112,16113,16114,16115,16116,16130,16160,16161,16164,16166,16173,16176,16178,16179,16180,16181,16182,16184,16187,16188,16190,16194,16196,16198,16205,16206,16209,16210,16211,16212,16213,16214,16215,16216,16217,16218,16219,16220,16221,16222,16223,16224,16225,16226,16227,16228,16229,16230,16232,16235,16240,16252,16254,16255,16256,16258,16259,16261,16262,16266,16268,16271,16272,16281,16282,16283,16284,16287,16290,16293,16295,16302,16303,16304,16305,16306,16307,16308,16309,16462,16463,16464,16465,16466,16487,16489,16492,16493,16494,16511,16513,16514,16515,16538,16539,16540,16541,16542,16544,16578,16579,16580,16581,16582,16757,16758,16763,16765,16766,16769,16770,16814,16815,16816,16817,16818,16819,16820,16821,16822,16833,16834,16835,16836,16839,16840,16845,16846,16847,16850,16858,16859,16860,16861,16862,16864,16880,16896,16897,16899,16909,16910,16911,16912,16913,16923,16924,16929,16930,16931,16934,16935,16936,16937,16938,16940,16941,16942,16943,16944,16947,16948,16949,16966,16968,16972,16974,16975,16998,16999,17002,17003,17004,17005,17006,17007,17050,17051,17056,17058,17059,17060,17061,17063,17065,17066,17069,17070,17071,17072,17073,17074,17075,17076,17077,17078,17104,17106,17107,17108,17111,17112,17113,17116,17118,17119,17120,17123,17124,17191,17322,17323,17364,17485,17486,17487,17488,17489,17778,17779,17780,17783,17784,17785,17788,17789,17790,17791,17792,17793,17796,17801,17802,17803,17804,17805,17810,17811,17812,17813,17814,17815,17833,17834,17877,17917,17918,17927,17929,17930,17954,17955,17956,17957,17958,17959,17962,18073,18094,18095,18096,18119,18120,18126,18127,18130,18135,18136,18174,18175,18176,18179,18180,18182,18183,18213,18218,18219,18220,18223,18271,18272,18273,18274,18275,18288,18372,18427,18428,18429,18459,18460,18462,18463,18464,18530,18531,18533,18534,18535,18551,18552,18553,18554,18555,18562,18692,18693,18694,18695,18696,18697,18698,18699,18703,18704,18705,18706,18707,18708,18709,18710,18731,18743,18744,18754,18755,18756,18767,18768,18769,18770,18771,18772,18773,18827,18829,19028,19159,19160,19168,19180,19181,19184,19236,19255,19256,19257,19258,19259,19286,19287,19290,19294,19295,19297,19298,19306,19370,19371,19373,19376,19386,19387,19388,19407,19412,19416,19417,19418,19419,19420,19421,19422,19423,19426,19427,19429,19430,19431,19434,19454,19455,19456,19461,19462,19464,19465,19466,19485,19487,19488,19489,19490,19498,19499,19500,19503,19506,19507,19508,19509,19549,19550,19551,19552,19553,19554,19555,19556,19559,19560,19572,19573,19574,19575,19577,19578,19583,19584,19585,19586,19587,19590,19592,19598,19599,19600,19601,19602,19609,19610,19612,19616,19617,19618,19619,19620,19621,19622,19623,19624,19625,20042,20045,20049,20056,20057,20060,20061,20062,20063,20064,20066,20096,20097,20098,20099,20100,20101,20102,20103,20104,20105,20111,20112,20113,20117,20118,20119,20120,20121,20127,20130,20135,20138,20139,20140,20143,20144,20145,20146,20147,20174,20175,20177,20179,20180,20181,20182,20196,20197,20198,20205,20206,20207,20208,20209,20210,20212,20213,20214,20215,20216,20224,20225,20234,20235,20237,20238,20239,20243,20244,20245,20254,20255,20256,20257,20258,20259,20260,20261,20262,20263,20264,20265,20266,20330,20331,20332,20335,20336,20337,20359,20360,20361,20375,20468,20469,20470,20473,20487,20488,20496,20500,20501,20502,20503,20504,20505,20711,20895,20911,20925,23584,23585,23586,23587,23588,23695,23785,23822,23823,23824,23825,23881,23989,24283,24296,24297,24443,24691,24858,24866,24894,24943,24944,24945,24946,24968,24969,24970,24971,24972,25829,25836,25956,25957,25988,26016,26022,26023,27789,27790,27811,27815,27816,27839,27840,27900,27901,27902,27903,27904,28332,28574,28592,28593,28996,28997,28998,28999,29000,29062,29064,29065,29074,29075,29076,29079,29080,29082,29084,29086,29140,29143,29144,29179,29180,29187,29189,29191,29192,29193,29202,29205,29206,29438,29439,29440,29441,29444,29447,29590,29591,29592,29593,29594,29598,29599,29623,29721,29723,29724,29725,29759,29760,29761,29762,29763,29776,29787,29790,29792,29801,29834,29836,29838,29859,29888,29889,30054,30057,30060,30061,30062,30063,30064,30108,30143,30144,30145,30146,30160,30242,30245,30246,30247,30248,30283,30288,30289,30290,30291,30292,30293,30295,30296,30299,30301,30302,30319,30320,30321,30326,30664,30665,30666,30672,30673,30674,30675,30678,30679,30706,30798,30802,30808,30809,30812,30813,30814,30816,30818,30819,30823,30864,30865,30866,30867,30868,30869,30872,30873,30881,30883,30884,30885,30886,30892,30893,30894,30895,30902,30903,30904,30905,30906,30919,30920,31122,31123,31124,31126,31130,31131,31208,31209,31211,31212,31213,31216,31217,31218,31219,31220,31221,31222,31223,31226,31227,31228,31229,31230,31244,31245,31380,31382,31383,31569,31570,31571,31572,31574,31575,31579,31582,31583,31584,31585,31586,31587,31588,31589,31638,31639,31640,31641,31642,31656,31657,31658,31661,31667,31668,31669,31670,31672,31674,31675,31676,31677,31678,31679,31680,31682,31683,31687,31785,31821,31822,31823,31825,31826,31828,31829,31830,31833,31835,31836,31837,31838,31839,31840,31841,31842,31844,31845,31848,31849,31850,31851,31852,31858,31859,31860,31866,31867,31868,31869,31871,31872,31876,31877,31878,31879,31880,31881,31935,32043,32381,32382,32383,32385,32387,32392,32393,32394,32477,32483,32484,32601,33142,33145,33146,33150,33154,33158,33159,33160,33161,33162,33167,33171,33172,33186,33190,33191,33192,33193,33201,33202,33206,33213,33214,33215,33221,33222,33223,33224,33225,33371,33589,33590,33591,33592,33596,33597,33599,33600,33601,33602,33603,33604,33605,33606,33607,33776,33831,33851,33852,33853,33855,33856,33859,33866,33867,33872,33873,33879,33880,33881,33882,33883,33886,33887,33888,33889,33890,33917,33956,33957,34151,34152,34153,34293,34295,34296,34297,34300,34453,34454,34455,34459,34460,34462,34464,34465,34466,34467,34468,34469,34470,34475,34476,34482,34483,34484,34485,34486,34487,34488,34489,34490,34491,34492,34493,34494,34496,34497,34498,34499,34500,34502,34503,34506,34507,34508,34692,34753,34838,34839,34859,34860,34861,34908,34909,34910,34914,34935,34938,34939,34948,34949,34950,34954,35029,35030,35100,35102,35104,35110,35111,35363,35364,35395,35396,35397,35446,35448,35449,35541,35550,35551,35552,35553,35578,35581,35691,35692,35693,36554,37116,37117,43338,44378,44379,44394,44395,44396,44397,44398,44399,44400,44402,44403,44404,44425,44442,44443,44445,44446,44448,44449,44457,44469,44470,44471,44472,44543,44545,44546,44548,44549,44557,44560,44561,44566,44567,44568,44570,44571,44572,44745,45234,45243,45244,46854,46855,46859,46860,46865,46866,46867,46908,46909,46910,46911,46913,46914,46915,46917,46924,46945,46949,46951,46952,46953,46968,47193,47195,47196,47197,47198,47199,47200,47201,47202,47203,47204,47205,47220,47221,47223,47230,47231,47236,47237,47238,47239,47240,47245,47246,47247,47258,47259,47260,47266,47267,47268,47269,47270,47294,47295,47296,47507,47508,47509,47511,47515,47516,47517,47535,47536,47537,47540,47558,47559,47560,47562,47564,47565,47566,47567,47569,47570,47573,47577,47578,47580,47581,47582,47585,47586,47587,47588,47788,48181,48384,48389,48392,48393,48395,48396,48409,48410,48411,48412,48432,48433,48434,48438,48483,48484,48485,48488,48489,48491,48492,48494,48495,48496,48499,48500,48505,48506,48510,48511,48514,48516,48521,48525,48532,48535,48536,48537,48539,48544,48545,48962,48963,48965,48977,48978,48979,48982,48985,48987,48988,48997,49004,49005,49006,49013,49015,49016,49018,49023,49024,49027,49028,49032,49036,49039,49042,49137,49140,49143,49145,49146,49149,49158,49175,49182,49184,49186,49188,49189,49194,49200,49202,49203,49206,49208,49217,49219,49220,49222,49223,49224,49226,49377,49390,49391,49392,49393,49394,49395,49455,49467,49471,49477,49478,49479,49480,49483,49488,49489,49490,49491,49495,49497,49500,49501,49503,49504,49508,49509,49526,49529,49530,49533,49534,49538,49542,49543,49562,49564,49565,49567,49568,49571,49572,49588,49589,49599,49610,49611,49627,49628,49631,49632,49633,49635,49636,49638,49654,49655,49657,49661,49662,49663,49664,49786,49787,49788,49789,49790,49791,49796,50029,50031,50033,50034,50040,50041,50043,50115,50117,50118,50119,50120,50121,50127,50128,50129,50130,50137,50138,50147,50149,50150,50151,50152,50154,50187,50190,50191,50334,50365,50371,50384,50385,50391,50392,50516,50685,50686,50687,50720,50796,50880,50884,50885,50886,50887,51052,51099,51108,51109,51123,51127,51128,51129,51130,51160,51161,51166,51167,51179,51180,51181,51182,51183,51267,51268,51269,51271,51456,51459,51462,51463,51464,51465,51466,51468,51470,51472,51473,51474,51478,51479,51480,51481,51482,51483,51485,51486,51490,51521,51522,51523,51524,51525,51526,51527,51528,51529,51530,51531,51532,51533,51554,51555,51556,51557,51558,51560,51561,51562,51563,51564,51565,51566,51625,51626,51627,51628,51629,51632,51633,51634,51635,51636,51662,51664,51665,51667,51668,51669,51672,51674,51679,51682,51685,51686,51687,51688,51689,51690,51692,51696,51698,51700,51701,51708,51709,51710,51711,51712,51713,51745,51746,51881,51883,51884,51885,51886,52143,52456,52783,52785,52786,52787,52788,52795,52797,52798,52799,52800,52802,52803,53137,53138,53209,53215,53216,53217,53221,53222,53224,53228,53232,53234,53237,53238,53241,53243,53244,53245,53246,53252,53253,53256,53259,53260,53262,53263,53264,53265,53270,53290,53291,53292,53295,53296,53297,53298,53299,53301,53302,53303,53304,53375,53376,53379,53380,53381,53382,53385,53484,53486,53488,53501,53502,53503,53519,53527,53530,53551,53552,53553,53556,53557,53563,53569,53576,53583,53585,53590,53591,53592,53595,53620,53621,53622,53648,53660,53661,53671,53673,53695,53696,53709,53710,53711,53754,53759,54037,54038,54117,54118,54151,54154,54155,54347,54348,54349,54354,54486,54488,54489,54490,54637,54638,54639,54646,54658,54659,54734,54747,54749,54787,55050,55061,55062,55090,55091,55092,55094,55107,55108,55129,55130,55131,55132,55133,55136,55198,55225,55226,55233,55236,55237,55339,55340,55610,55620,55623,55666,55667,56314,56315,56316,56317,56318,56333,56336,56337,56339,56340,56341,56342,56343,56344,56611,56612,56613,56614,56636,56637,56638,56822,56834,56835,56924,56927,56929,56930,56931,56932,57470,57472,57499,57810,57811,57812,57813,57814,57849,57850,57851,57865,57873,57876,57877,57878,57880,57881,58410,58413,58414,58415,58422,58423,58424,58425,58426,58435,58872,58874,59057,59088,59089,59672,59738,59739,59740,59741,60103,60184,60185,60187,60188,60970,61154,61155,61156,61157,61158,61216,61221,61222,61295,61329,61330,61331,61336,61345,61346,62097,62098,62099,62100,62101,62905,62908,63108,63117,63121,63123,63156,63158,63245,63349,63350,63351,63370,63372,63373,63374,63410,63411,63457,63458,63503,63504,63505,63506,63534,63542,63543,63560,63574,63625,63626,63627,63646,63647,63648,63649,63650,63730,63733,63737,64044,64127,64129,64205,64353,64357,64976,65139,65661,66191,66192,66799,66814,66815,66816,66817); + +/* XTElite1 - Talents that teach an initial skill, and you learn higher ranks from a trainer. Here's a cleanup query that will remove all those: */ +DELETE FROM `character_spell` WHERE `spell` IN (12505,12522,12523,12524,12525,12526,13018,13019,13020,13021,13031,13032,13033,16979,17311,17312,17313,17314,17347,17348,18807,18809,18867,18868,18869,18870,18871,18937,18938,19238,19240,19241,19242,19243,20900,20901,20902,20903,20904,20909,20910,21551,21552,21553,24132,24133,24974,24975,24976,24977,25248,25387,25437,26864,27013,27065,27067,27068,27132,27133,27134,27263,27265,27870,27871,28275,30016,30022,30330,30404,30405,30413,30414,30546,32593,32594,33041,33042,33043,33405,33876,33878,33933,33938,33982,33983,33986,33987,34411,34412,34413,34863,34864,34865,34866,34916,34917,42890,42891,42944,42945,42949,42950,43038,43039,44780,44781,47485,47486,47497,47498,47826,47827,47841,47843,47846,47847,48086,48087,48088,48089,48155,48156,48159,48160,48172,48173,48468,48563,48564,48565,48566,48660,48663,48666,48998,48999,49011,49012,49049,49050,49283,49284,49376,53005,53006,53007,53199,53200,53201,53223,53225,53226,53227,53248,53249,53251,55359,55360,57720,57721,57722,59092,59156,59158,59159,59161,59163,59164,59170,59171,59172,60051,60052,60053,61299,61300,61301,61384); + ALTER TABLE `characters` ADD `speccount` tinyint(3) unsigned NOT NULL default 1 AFTER `arena_pending_points`; ALTER TABLE `characters` ADD `activespec` tinyint(3) unsigned NOT NULL default 0 AFTER `speccount`; diff --git a/sql/updates/5084_character_updates_dual_spec.sql b/sql/updates/5084_character_updates_dual_spec.sql deleted file mode 100644 index c6cdacf0d69..00000000000 --- a/sql/updates/5084_character_updates_dual_spec.sql +++ /dev/null @@ -1,9 +0,0 @@ - -/* Begin intentional error */ -"Run 5084_character_updates_dual_spec.sql manually, or don't run it at all. This is only intended for people who need to clean up missed talents from r5036. If you never used r5036 - 5083, ignore this."; - -/* This is what you're supposed to run manually, for those of you reading this: - -DELETE FROM `character_spell` WHERE `spell` IN (12505,12522,12523,12524,12525,12526,13018,13019,13020,13021,13031,13032,13033,17311,17312,17313,17314,17347,17348,18807,18809,18867,18868,18869,18870,18871,18937,18938,19238,19240,19241,19242,19243,20900,20901,20902,20903,20904,20909,20910,20929,20930,21551,21552,21553,24132,24133,24974,24975,24976,24977,25248,25387,25437,25899,26864,27013,27065,27067,27068,27132,27133,27134,27174,27263,27265,27870,27871,28275,30016,30022,30330,30404,30405,30413,30414,30546,32593,32594,32699,32700,33041,33042,33043,33072,33405,33891,33933,33938,33982,33983,33986,33987,34411,34412,34413,34863,34864,34865,34866,34916,34917,42890,42891,42944,42945,42949,42950,43038,43039,44780,44781,47485,47486,47497,47498,47826,47827,47841,47843,47846,47847,48086,48087,48088,48089,48155,48156,48159,48160,48172,48173,48468,48563,48564,48565,48566,48660,48663,48666,48824,48825,48826,48827,48998,48999,49011,49012,49049,49050,49283,49284,51325,51326,51327,51328,51376,51378,51379,51409,51410,51411,51416,51417,51418,51419,53005,53006,53007,53199,53200,53201,53223,53225,53226,53248,53249,53251,55258,55259,55260,55261,55262,55265,55268,55270,55271,55359,55360,57720,57721,57722,59092,59156,59158,59159,59161,59163,59164,59170,59171,59172,60051,61299,61300,61301,61384,63668,63669,63670,63671,63672,66052,66053); - -*/ diff --git a/sql/updates/5097_character_updates_dual_spec.sql b/sql/updates/5097_character_updates_dual_spec.sql new file mode 100644 index 00000000000..13f5f4b6d20 --- /dev/null +++ b/sql/updates/5097_character_updates_dual_spec.sql @@ -0,0 +1,13 @@ + +/* Begin intentional error */ +"Run 5097_character_updates_dual_spec.sql manually, or don't run it at all. This is only intended for people who need to clean up missed skills from r5036. If you never used r5036 - 5096, ignore this. Tell your users to reset their talents (or just switch specs) to fix their talent points."; + +/* + +-- Drethek - This should be all talents without a learned spell as a major rank: +DELETE FROM `character_spell` WHERE `spell` IN (724,974,1329,5570,5923,5924,5925,5926,5952,9452,9453,9799,10060,11069,11070,11071,11078,11080,11083,11094,11095,11100,11103,11108,11113,11115,11119,11120,11124,11129,11151,11160,11170,11175,11180,11185,11189,11190,11207,11210,11213,11222,11232,11237,11242,11247,11252,11255,11366,11367,11368,11426,11958,12042,12043,12163,12281,12282,12284,12285,12286,12287,12289,12290,12292,12294,12295,12296,12297,12298,12299,12300,12301,12308,12311,12312,12313,12317,12318,12319,12320,12321,12322,12323,12324,12328,12329,12330,12338,12339,12340,12341,12349,12350,12351,12353,12357,12358,12378,12398,12399,12400,12463,12464,12467,12469,12472,12473,12487,12488,12489,12490,12496,12497,12500,12501,12502,12503,12518,12519,12569,12571,12574,12575,12576,12577,12592,12598,12605,12606,12658,12663,12664,12665,12666,12668,12672,12676,12677,12697,12700,12701,12702,12703,12704,12711,12712,12724,12725,12726,12727,12750,12751,12752,12753,12761,12762,12763,12764,12781,12783,12784,12785,12797,12799,12803,12804,12809,12810,12811,12812,12813,12814,12815,12818,12834,12835,12839,12840,12846,12847,12848,12849,12852,12853,12855,12856,12857,12858,12860,12861,12862,12867,12872,12873,12876,12877,12878,12879,12950,12952,12953,12958,12959,12960,12963,12971,12972,12973,12974,12975,12982,12983,12999,13000,13001,13002,13043,13045,13046,13047,13048,13705,13706,13709,13712,13713,13715,13732,13733,13741,13742,13743,13750,13754,13788,13789,13792,13793,13800,13801,13802,13803,13804,13805,13806,13807,13832,13843,13844,13845,13848,13849,13851,13852,13853,13854,13863,13865,13866,13867,13872,13875,13877,13958,13960,13961,13962,13963,13964,13970,13971,13975,13976,13979,13980,13981,13983,14057,14062,14063,14066,14070,14071,14072,14076,14079,14080,14082,14083,14094,14113,14114,14115,14116,14117,14128,14132,14135,14136,14137,14138,14139,14140,14141,14142,14144,14148,14156,14158,14159,14160,14161,14162,14163,14164,14165,14166,14168,14169,14171,14172,14173,14174,14175,14176,14177,14179,14183,14185,14186,14190,14193,14194,14195,14251,14278,14520,14521,14522,14523,14531,14747,14748,14749,14750,14751,14767,14768,14769,14770,14771,14772,14774,14776,14777,14780,14781,14784,14785,14788,14789,14790,14791,14889,14892,14898,14901,14908,14909,14910,14911,14912,14913,14983,15008,15009,15010,15011,15012,15013,15014,15017,15018,15020,15028,15029,15030,15031,15047,15058,15059,15060,15257,15259,15260,15270,15272,15273,15274,15275,15286,15307,15308,15309,15310,15311,15312,15313,15314,15316,15317,15318,15320,15327,15328,15331,15332,15335,15336,15337,15338,15349,15354,15355,15356,15362,15363,15392,15407,15448,15473,15487,16035,16038,16039,16040,16041,16043,16086,16089,16105,16106,16107,16108,16109,16110,16111,16112,16113,16114,16115,16116,16130,16160,16161,16164,16166,16173,16176,16178,16179,16180,16181,16182,16184,16187,16188,16190,16194,16196,16198,16205,16206,16209,16210,16211,16212,16213,16214,16215,16216,16217,16218,16219,16220,16221,16222,16223,16224,16225,16226,16227,16228,16229,16230,16232,16235,16240,16252,16254,16255,16256,16258,16259,16261,16262,16266,16268,16271,16272,16281,16282,16283,16284,16287,16290,16293,16295,16302,16303,16304,16305,16306,16307,16308,16309,16462,16463,16464,16465,16466,16487,16489,16492,16493,16494,16511,16513,16514,16515,16538,16539,16540,16541,16542,16544,16578,16579,16580,16581,16582,16757,16758,16763,16765,16766,16769,16770,16814,16815,16816,16817,16818,16819,16820,16821,16822,16833,16834,16835,16836,16839,16840,16845,16846,16847,16850,16858,16859,16860,16861,16862,16864,16880,16896,16897,16899,16909,16910,16911,16912,16913,16923,16924,16929,16930,16931,16934,16935,16936,16937,16938,16940,16941,16942,16943,16944,16947,16948,16949,16966,16968,16972,16974,16975,16998,16999,17002,17003,17004,17005,17006,17007,17050,17051,17056,17058,17059,17060,17061,17063,17065,17066,17069,17070,17071,17072,17073,17074,17075,17076,17077,17078,17104,17106,17107,17108,17111,17112,17113,17116,17118,17119,17120,17123,17124,17191,17322,17323,17364,17485,17486,17487,17488,17489,17778,17779,17780,17783,17784,17785,17788,17789,17790,17791,17792,17793,17796,17801,17802,17803,17804,17805,17810,17811,17812,17813,17814,17815,17833,17834,17877,17917,17918,17927,17929,17930,17954,17955,17956,17957,17958,17959,17962,18073,18094,18095,18096,18119,18120,18126,18127,18130,18135,18136,18174,18175,18176,18179,18180,18182,18183,18213,18218,18219,18220,18223,18271,18272,18273,18274,18275,18288,18372,18427,18428,18429,18459,18460,18462,18463,18464,18530,18531,18533,18534,18535,18551,18552,18553,18554,18555,18562,18692,18693,18694,18695,18696,18697,18698,18699,18703,18704,18705,18706,18707,18708,18709,18710,18731,18743,18744,18754,18755,18756,18767,18768,18769,18770,18771,18772,18773,18827,18829,19028,19159,19160,19168,19180,19181,19184,19236,19255,19256,19257,19258,19259,19286,19287,19290,19294,19295,19297,19298,19306,19370,19371,19373,19376,19386,19387,19388,19407,19412,19416,19417,19418,19419,19420,19421,19422,19423,19426,19427,19429,19430,19431,19434,19454,19455,19456,19461,19462,19464,19465,19466,19485,19487,19488,19489,19490,19498,19499,19500,19503,19506,19507,19508,19509,19549,19550,19551,19552,19553,19554,19555,19556,19559,19560,19572,19573,19574,19575,19577,19578,19583,19584,19585,19586,19587,19590,19592,19598,19599,19600,19601,19602,19609,19610,19612,19616,19617,19618,19619,19620,19621,19622,19623,19624,19625,20042,20045,20049,20056,20057,20060,20061,20062,20063,20064,20066,20096,20097,20098,20099,20100,20101,20102,20103,20104,20105,20111,20112,20113,20117,20118,20119,20120,20121,20127,20130,20135,20138,20139,20140,20143,20144,20145,20146,20147,20174,20175,20177,20179,20180,20181,20182,20196,20197,20198,20205,20206,20207,20208,20209,20210,20212,20213,20214,20215,20216,20224,20225,20234,20235,20237,20238,20239,20243,20244,20245,20254,20255,20256,20257,20258,20259,20260,20261,20262,20263,20264,20265,20266,20330,20331,20332,20335,20336,20337,20359,20360,20361,20375,20468,20469,20470,20473,20487,20488,20496,20500,20501,20502,20503,20504,20505,20711,20895,20911,20925,23584,23585,23586,23587,23588,23695,23785,23822,23823,23824,23825,23881,23989,24283,24296,24297,24443,24691,24858,24866,24894,24943,24944,24945,24946,24968,24969,24970,24971,24972,25829,25836,25956,25957,25988,26016,26022,26023,27789,27790,27811,27815,27816,27839,27840,27900,27901,27902,27903,27904,28332,28574,28592,28593,28996,28997,28998,28999,29000,29062,29064,29065,29074,29075,29076,29079,29080,29082,29084,29086,29140,29143,29144,29179,29180,29187,29189,29191,29192,29193,29202,29205,29206,29438,29439,29440,29441,29444,29447,29590,29591,29592,29593,29594,29598,29599,29623,29721,29723,29724,29725,29759,29760,29761,29762,29763,29776,29787,29790,29792,29801,29834,29836,29838,29859,29888,29889,30054,30057,30060,30061,30062,30063,30064,30108,30143,30144,30145,30146,30160,30242,30245,30246,30247,30248,30283,30288,30289,30290,30291,30292,30293,30295,30296,30299,30301,30302,30319,30320,30321,30326,30664,30665,30666,30672,30673,30674,30675,30678,30679,30706,30798,30802,30808,30809,30812,30813,30814,30816,30818,30819,30823,30864,30865,30866,30867,30868,30869,30872,30873,30881,30883,30884,30885,30886,30892,30893,30894,30895,30902,30903,30904,30905,30906,30919,30920,31122,31123,31124,31126,31130,31131,31208,31209,31211,31212,31213,31216,31217,31218,31219,31220,31221,31222,31223,31226,31227,31228,31229,31230,31244,31245,31380,31382,31383,31569,31570,31571,31572,31574,31575,31579,31582,31583,31584,31585,31586,31587,31588,31589,31638,31639,31640,31641,31642,31656,31657,31658,31661,31667,31668,31669,31670,31672,31674,31675,31676,31677,31678,31679,31680,31682,31683,31687,31785,31821,31822,31823,31825,31826,31828,31829,31830,31833,31835,31836,31837,31838,31839,31840,31841,31842,31844,31845,31848,31849,31850,31851,31852,31858,31859,31860,31866,31867,31868,31869,31871,31872,31876,31877,31878,31879,31880,31881,31935,32043,32381,32382,32383,32385,32387,32392,32393,32394,32477,32483,32484,32601,33142,33145,33146,33150,33154,33158,33159,33160,33161,33162,33167,33171,33172,33186,33190,33191,33192,33193,33201,33202,33206,33213,33214,33215,33221,33222,33223,33224,33225,33371,33589,33590,33591,33592,33596,33597,33599,33600,33601,33602,33603,33604,33605,33606,33607,33776,33831,33851,33852,33853,33855,33856,33859,33866,33867,33872,33873,33879,33880,33881,33882,33883,33886,33887,33888,33889,33890,33917,33956,33957,34151,34152,34153,34293,34295,34296,34297,34300,34453,34454,34455,34459,34460,34462,34464,34465,34466,34467,34468,34469,34470,34475,34476,34482,34483,34484,34485,34486,34487,34488,34489,34490,34491,34492,34493,34494,34496,34497,34498,34499,34500,34502,34503,34506,34507,34508,34692,34753,34838,34839,34859,34860,34861,34908,34909,34910,34914,34935,34938,34939,34948,34949,34950,34954,35029,35030,35100,35102,35104,35110,35111,35363,35364,35395,35396,35397,35446,35448,35449,35541,35550,35551,35552,35553,35578,35581,35691,35692,35693,36554,37116,37117,43338,44378,44379,44394,44395,44396,44397,44398,44399,44400,44402,44403,44404,44425,44442,44443,44445,44446,44448,44449,44457,44469,44470,44471,44472,44543,44545,44546,44548,44549,44557,44560,44561,44566,44567,44568,44570,44571,44572,44745,45234,45243,45244,46854,46855,46859,46860,46865,46866,46867,46908,46909,46910,46911,46913,46914,46915,46917,46924,46945,46949,46951,46952,46953,46968,47193,47195,47196,47197,47198,47199,47200,47201,47202,47203,47204,47205,47220,47221,47223,47230,47231,47236,47237,47238,47239,47240,47245,47246,47247,47258,47259,47260,47266,47267,47268,47269,47270,47294,47295,47296,47507,47508,47509,47511,47515,47516,47517,47535,47536,47537,47540,47558,47559,47560,47562,47564,47565,47566,47567,47569,47570,47573,47577,47578,47580,47581,47582,47585,47586,47587,47588,47788,48181,48384,48389,48392,48393,48395,48396,48409,48410,48411,48412,48432,48433,48434,48438,48483,48484,48485,48488,48489,48491,48492,48494,48495,48496,48499,48500,48505,48506,48510,48511,48514,48516,48521,48525,48532,48535,48536,48537,48539,48544,48545,48962,48963,48965,48977,48978,48979,48982,48985,48987,48988,48997,49004,49005,49006,49013,49015,49016,49018,49023,49024,49027,49028,49032,49036,49039,49042,49137,49140,49143,49145,49146,49149,49158,49175,49182,49184,49186,49188,49189,49194,49200,49202,49203,49206,49208,49217,49219,49220,49222,49223,49224,49226,49377,49390,49391,49392,49393,49394,49395,49455,49467,49471,49477,49478,49479,49480,49483,49488,49489,49490,49491,49495,49497,49500,49501,49503,49504,49508,49509,49526,49529,49530,49533,49534,49538,49542,49543,49562,49564,49565,49567,49568,49571,49572,49588,49589,49599,49610,49611,49627,49628,49631,49632,49633,49635,49636,49638,49654,49655,49657,49661,49662,49663,49664,49786,49787,49788,49789,49790,49791,49796,50029,50031,50033,50034,50040,50041,50043,50115,50117,50118,50119,50120,50121,50127,50128,50129,50130,50137,50138,50147,50149,50150,50151,50152,50154,50187,50190,50191,50334,50365,50371,50384,50385,50391,50392,50516,50685,50686,50687,50720,50796,50880,50884,50885,50886,50887,51052,51099,51108,51109,51123,51127,51128,51129,51130,51160,51161,51166,51167,51179,51180,51181,51182,51183,51267,51268,51269,51271,51456,51459,51462,51463,51464,51465,51466,51468,51470,51472,51473,51474,51478,51479,51480,51481,51482,51483,51485,51486,51490,51521,51522,51523,51524,51525,51526,51527,51528,51529,51530,51531,51532,51533,51554,51555,51556,51557,51558,51560,51561,51562,51563,51564,51565,51566,51625,51626,51627,51628,51629,51632,51633,51634,51635,51636,51662,51664,51665,51667,51668,51669,51672,51674,51679,51682,51685,51686,51687,51688,51689,51690,51692,51696,51698,51700,51701,51708,51709,51710,51711,51712,51713,51745,51746,51881,51883,51884,51885,51886,52143,52456,52783,52785,52786,52787,52788,52795,52797,52798,52799,52800,52802,52803,53137,53138,53209,53215,53216,53217,53221,53222,53224,53228,53232,53234,53237,53238,53241,53243,53244,53245,53246,53252,53253,53256,53259,53260,53262,53263,53264,53265,53270,53290,53291,53292,53295,53296,53297,53298,53299,53301,53302,53303,53304,53375,53376,53379,53380,53381,53382,53385,53484,53486,53488,53501,53502,53503,53519,53527,53530,53551,53552,53553,53556,53557,53563,53569,53576,53583,53585,53590,53591,53592,53595,53620,53621,53622,53648,53660,53661,53671,53673,53695,53696,53709,53710,53711,53754,53759,54037,54038,54117,54118,54151,54154,54155,54347,54348,54349,54354,54486,54488,54489,54490,54637,54638,54639,54646,54658,54659,54734,54747,54749,54787,55050,55061,55062,55090,55091,55092,55094,55107,55108,55129,55130,55131,55132,55133,55136,55198,55225,55226,55233,55236,55237,55339,55340,55610,55620,55623,55666,55667,56314,56315,56316,56317,56318,56333,56336,56337,56339,56340,56341,56342,56343,56344,56611,56612,56613,56614,56636,56637,56638,56822,56834,56835,56924,56927,56929,56930,56931,56932,57470,57472,57499,57810,57811,57812,57813,57814,57849,57850,57851,57865,57873,57876,57877,57878,57880,57881,58410,58413,58414,58415,58422,58423,58424,58425,58426,58435,58872,58874,59057,59088,59089,59672,59738,59739,59740,59741,60103,60184,60185,60187,60188,60970,61154,61155,61156,61157,61158,61216,61221,61222,61295,61329,61330,61331,61336,61345,61346,62097,62098,62099,62100,62101,62905,62908,63108,63117,63121,63123,63156,63158,63245,63349,63350,63351,63370,63372,63373,63374,63410,63411,63457,63458,63503,63504,63505,63506,63534,63542,63543,63560,63574,63625,63626,63627,63646,63647,63648,63649,63650,63730,63733,63737,64044,64127,64129,64205,64353,64357,64976,65139,65661,66191,66192,66799,66814,66815,66816,66817); + +-- XTElite1 - Talents that teach an initial skill, and you learn higher ranks from a trainer. Here's a cleanup query that will remove all those: +DELETE FROM `character_spell` WHERE `spell` IN (12505,12522,12523,12524,12525,12526,13018,13019,13020,13021,13031,13032,13033,16979,17311,17312,17313,17314,17347,17348,18807,18809,18867,18868,18869,18870,18871,18937,18938,19238,19240,19241,19242,19243,20900,20901,20902,20903,20904,20909,20910,21551,21552,21553,24132,24133,24974,24975,24976,24977,25248,25387,25437,26864,27013,27065,27067,27068,27132,27133,27134,27263,27265,27870,27871,28275,30016,30022,30330,30404,30405,30413,30414,30546,32593,32594,33041,33042,33043,33405,33876,33878,33933,33938,33982,33983,33986,33987,34411,34412,34413,34863,34864,34865,34866,34916,34917,42890,42891,42944,42945,42949,42950,43038,43039,44780,44781,47485,47486,47497,47498,47826,47827,47841,47843,47846,47847,48086,48087,48088,48089,48155,48156,48159,48160,48172,48173,48468,48563,48564,48565,48566,48660,48663,48666,48998,48999,49011,49012,49049,49050,49283,49284,49376,53005,53006,53007,53199,53200,53201,53223,53225,53226,53227,53248,53249,53251,55359,55360,57720,57721,57722,59092,59156,59158,59159,59161,59163,59164,59170,59171,59172,60051,60052,60053,61299,61300,61301,61384); + +*/ diff --git a/src/bindings/scripts/CMakeLists.txt b/src/bindings/scripts/CMakeLists.txt index 58b91096c18..1cd3212f00b 100644 --- a/src/bindings/scripts/CMakeLists.txt +++ b/src/bindings/scripts/CMakeLists.txt @@ -89,6 +89,8 @@ SET(trinityscript_LIB_SRCS scripts/eastern_kingdoms/molten_core/instance_molten_core.cpp scripts/eastern_kingdoms/molten_core/molten_core.cpp scripts/eastern_kingdoms/scarlet_enclave/the_scarlet_enclave.cpp + scripts/eastern_kingdoms/scarlet_enclave/chapter1.cpp + scripts/eastern_kingdoms/scarlet_enclave/chapter2.cpp scripts/eastern_kingdoms/scarlet_monastery/boss_arcanist_doan.cpp scripts/eastern_kingdoms/scarlet_monastery/boss_azshir_the_sleepless.cpp scripts/eastern_kingdoms/scarlet_monastery/boss_bloodmage_thalnos.cpp diff --git a/src/bindings/scripts/VC80/80ScriptDev2.vcproj b/src/bindings/scripts/VC80/80ScriptDev2.vcproj index 4c98db9abb2..ff8b323c54e 100644 --- a/src/bindings/scripts/VC80/80ScriptDev2.vcproj +++ b/src/bindings/scripts/VC80/80ScriptDev2.vcproj @@ -360,2337 +360,2345 @@ <References> </References> <Files> - <Filter - Name="base" - > - <File - RelativePath="..\base\escort_ai.cpp" - > - </File> - <File - RelativePath="..\base\escort_ai.h" - > - </File> - <File - RelativePath="..\base\follower_ai.cpp" - > - </File> - <File - RelativePath="..\base\follower_ai.h" - > - </File> - <File - RelativePath="..\base\guard_ai.cpp" - > - </File> - <File - RelativePath="..\base\guard_ai.h" - > - </File> - <File - RelativePath="..\base\simple_ai.cpp" - > - </File> - <File - RelativePath="..\base\simple_ai.h" - > - </File> - </Filter> - <Filter - Name="scripts" - > - <Filter - Name="eastern_kingdoms" - > - <Filter - Name="Blackrock Depths" - > - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\blackrock_depths.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_ambassador_flamelash.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_anubshiah.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_emperor_dagran_thaurissan.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_general_angerforge.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_gorosh_the_dervish.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_grizzle.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_high_interrogator_gerstahn.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_magmus.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_moira_bronzebeard.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_tomb_of_seven.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\def_blackrock_depths.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\instance_blackrock_depths.cpp" - > - </File> - </Filter> - <Filter - Name="Blackrock Spire" - > - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_drakkisath.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_gyth.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_halycon.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_highlord_omokk.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_mother_smolderweb.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_overlord_wyrmthalak.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_pyroguard_emberseer.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_quartermaster_zigris.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_rend_blackhand.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_shadow_hunter_voshgajin.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_the_beast.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_warmaster_voone.cpp" - > - </File> - </Filter> - <Filter - Name="Blackwing Lair" - > - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_broodlord_lashlayer.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_chromaggus.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_ebonroc.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_firemaw.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_flamegor.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_nefarian.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_razorgore.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_vaelastrasz.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_victor_nefarius.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\instance_blackwing_lair.cpp" - > - </File> - </Filter> - <Filter - Name="Deadmines" - > - <File - RelativePath="..\scripts\eastern_kingdoms\deadmines\deadmines.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\deadmines\def_deadmines.h" - > - </File> - </Filter> - <Filter - Name="Karazhan" - > - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_curator.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_maiden_of_virtue.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_midnight.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_moroes.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_netherspite.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_nightbane.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_prince_malchezaar.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_shade_of_aran.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_terestian_illhoof.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\bosses_opera.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\def_karazhan.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\instance_karazhan.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\karazhan.cpp" - > - </File> - </Filter> - <Filter - Name="Magister's Terrace" - > - <File - RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\boss_felblood_kaelthas.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\boss_priestess_delrissa.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\boss_selin_fireheart.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\boss_vexallus.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\def_magisters_terrace.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\instance_magisters_terrace.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\magisters_terrace.cpp" - > - </File> - </Filter> - <Filter - Name="Molten Core" - > - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_baron_geddon.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_garr.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_gehennas.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_golemagg.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_lucifron.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_magmadar.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_majordomo_executus.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_ragnaros.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_shazzrah.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_sulfuron_harbinger.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\def_molten_core.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\instance_molten_core.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\molten_core.cpp" - > - </File> - </Filter> - <Filter - Name="scarlet_enclave" - > - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_enclave\the_scarlet_enclave.cpp" - > - </File> - </Filter> - <Filter - Name="Scarlet Monastery" - > - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_arcanist_doan.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_azshir_the_sleepless.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_bloodmage_thalnos.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_headless_horseman.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_herod.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_high_inquisitor_fairbanks.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_houndmaster_loksey.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_interrogator_vishas.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_mograine_and_whitemane.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_scorn.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\def_scarlet_monastery.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\instance_scarlet_monastery.cpp" - > - </File> - </Filter> - <Filter - Name="Scholomance" - > - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_darkmaster_gandling.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_death_knight_darkreaver.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_doctor_theolen_krastinov.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_illucia_barov.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_instructor_malicia.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_jandice_barov.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_kormok.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_lord_alexei_barov.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_lorekeeper_polkelt.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_ras_frostwhisper.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_the_ravenian.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_vectus.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\def_scholomance.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\instance_scholomance.cpp" - > - </File> - </Filter> - <Filter - Name="Shadowfang Keep" - > - <File - RelativePath="..\scripts\eastern_kingdoms\shadowfang_keep\def_shadowfang_keep.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\shadowfang_keep\instance_shadowfang_keep.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\shadowfang_keep\shadowfang_keep.cpp" - > - </File> - </Filter> - <Filter - Name="Stratholme" - > - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_baron_rivendare.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_baroness_anastari.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_cannon_master_willey.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_dathrohan_balnazzar.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_magistrate_barthilas.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_maleki_the_pallid.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_nerubenkan.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_order_of_silver_hand.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_postmaster_malown.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_ramstein_the_gorger.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_timmy_the_cruel.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\def_stratholme.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\instance_stratholme.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\stratholme.cpp" - > - </File> - </Filter> - <Filter - Name="Sunwell Plateau" - > - <File - RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_brutallus.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_eredar_twins.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_felmyst.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_kalecgos.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_kiljaeden.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_muru.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\def_sunwell_plateau.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\instance_sunwell_plateau.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\sunwell_plateau.cpp" - > - </File> - </Filter> - <Filter - Name="Uldaman" - > - <File - RelativePath="..\scripts\eastern_kingdoms\uldaman\boss_archaedas.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\uldaman\boss_ironaya.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\uldaman\instance_uldaman.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\uldaman\uldaman.cpp" - > - </File> - </Filter> - <Filter - Name="Zul'Aman" - > - <File - RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_akilzon.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_halazzi.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_hexlord.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_janalai.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_nalorakk.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_zuljin.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulaman\def_zulaman.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulaman\instance_zulaman.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulaman\zulaman.cpp" - > - </File> - </Filter> - <Filter - Name="Zul'Gurub" - > - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_arlokk.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_gahzranka.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_grilek.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_hakkar.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_hazzarah.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_jeklik.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_jindo.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_mandokir.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_marli.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_renataki.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_thekal.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_venoxis.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_wushoolay.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\def_zulgurub.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\instance_zulgurub.cpp" - > - </File> - </Filter> - <File - RelativePath="..\scripts\eastern_kingdoms\alterac_mountains.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\arathi_highlands.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blasted_lands.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\boss_kruul.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\burning_steppes.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\dun_morogh.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\eastern_plaguelands.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\elwynn_forest.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\eversong_woods.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\ghostlands.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\hinterlands.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\ironforge.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\isle_of_queldanas.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\loch_modan.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\searing_gorge.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\silvermoon_city.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\silverpine_forest.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stormwind_city.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stranglethorn_vale.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\tirisfal_glades.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\undercity.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\western_plaguelands.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\westfall.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\wetlands.cpp" - > - </File> - </Filter> - <Filter - Name="examples" - > - <File - RelativePath="..\scripts\examples\example_creature.cpp" - > - </File> - <File - RelativePath="..\scripts\examples\example_escort.cpp" - > - </File> - <File - RelativePath="..\scripts\examples\example_gossip_codebox.cpp" - > - </File> - <File - RelativePath="..\scripts\examples\example_misc.cpp" - > - </File> - </Filter> - <Filter - Name="kalimdor" - > - <Filter - Name="Blackfathom Depths" - > - <File - RelativePath="..\scripts\kalimdor\blackfathom_depths\instance_blackfathom_deeps.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\blackfathom_depths\def_blackfathom_deeps.h" - > - </File> - </Filter> - <Filter - Name="Caverns of Time" - > - <Filter - Name="Culling of Stratholme" - > - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\boss_epoch.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\boss_mal_ganis.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\boss_meathook.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\boss_salramm.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\def_culling_of_stratholme.h" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\instance_culling_of_stratholme.cpp" - > - </File> - </Filter> - <Filter - Name="The Dark Portal" - > - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\boss_aeonus.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\boss_chrono_lord_deja.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\boss_temporus.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\dark_portal.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\def_dark_portal.h" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\instance_dark_portal.cpp" - > - </File> - </Filter> - <Filter - Name="Battle for Mt. Hyjal" - > - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_anetheron.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_archimonde.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_azgalor.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_kazrogal.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_rage_winterchill.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\def_hyjal.h" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjal.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjal_trash.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjal_trash.h" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjalAI.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjalAI.h" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\instance_hyjal.cpp" - > - </File> - </Filter> - <Filter - Name="Old Hillsbrad" - > - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\boss_captain_skarloc.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\boss_epoch_hunter.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\boss_leutenant_drake.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\def_old_hillsbrad.h" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\instance_old_hillsbrad.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\old_hillsbrad.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="Maraudon" - > - <File - RelativePath="..\scripts\kalimdor\maraudon\boss_celebras_the_cursed.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\maraudon\boss_landslide.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\maraudon\boss_noxxion.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\maraudon\boss_princess_theradras.cpp" - > - </File> - </Filter> - <Filter - Name="Onyxia's Lair" - > - <File - RelativePath="..\scripts\kalimdor\onyxias_lair\boss_onyxia.cpp" - > - </File> - </Filter> - <Filter - Name="Razorfen Downs" - > - <File - RelativePath="..\scripts\kalimdor\razorfen_downs\boss_amnennar_the_coldbringer.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\razorfen_downs\razorfen_downs.cpp" - > - </File> - </Filter> - <Filter - Name="Razorfen Kraul" - > - <File - RelativePath="..\scripts\kalimdor\razorfen_kraul\razorfen_kraul.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\razorfen_kraul\instance_razorfen_kraul.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\razorfen_kraul\def_razorfen_kraul.h" - > - </File> - </Filter> - <Filter - Name="Ruins of Ahn'Qiraj" - > - <File - RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_ayamiss.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_buru.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_kurinnaxx.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_moam.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_ossirian.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_rajaxx.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\instance_ruins_of_ahnqiraj.cpp" - > - </File> - </Filter> - <Filter - Name="Temple of Ahn'Qiraj" - > - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_bug_trio.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_cthun.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_fankriss.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_huhuran.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_ouro.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_sartura.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_skeram.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_twinemperors.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_viscidus.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\def_temple_of_ahnqiraj.h" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\instance_temple_of_ahnqiraj.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\mob_anubisath_sentinel.cpp" - > - </File> - </Filter> - <Filter - Name="Wailing Caverns" - > - <File - RelativePath="..\scripts\kalimdor\wailing_caverns\def_wailing_caverns.h" - > - </File> - <File - RelativePath="..\scripts\kalimdor\wailing_caverns\instance_wailing_caverns.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\wailing_caverns\wailing_caverns.cpp" - > - </File> - </Filter> - <Filter - Name="Zul'Farrak" - > - <File - RelativePath="..\scripts\kalimdor\zulfarrak\zulfarrak.cpp" - > - </File> - </Filter> - <File - RelativePath="..\scripts\kalimdor\ashenvale.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\azshara.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\azuremyst_isle.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\bloodmyst_isle.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\boss_azuregos.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\darkshore.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\desolace.cpp"> - </File> - <File - RelativePath="..\scripts\kalimdor\dustwallow_marsh.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\felwood.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\feralas.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\moonglade.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\mulgore.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\orgrimmar.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\silithus.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\stonetalon_mountains.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\tanaris.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\teldrassil.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\the_barrens.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\thousand_needles.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\thunder_bluff.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\ungoro_crater.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\winterspring.cpp" - > - </File> - </Filter> - <Filter - Name="northrend" - > - <Filter - Name="Azjol-Nerub" - > - <Filter - Name="Ahn'kahet" - > - <File - RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_amanitar.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_elder_nadox.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_herald_volazj.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_jedoga_shadowseeker.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_prince_taldaram.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\def_ahnkahet.h" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\instance_ahnkahet.cpp" - > - </File> - </Filter> - <Filter - Name="Azjol-Nerub" - > - <File - RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\boss_anubarak.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\boss_hadronox.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\boss_krikthir_the_gatewatcher.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\def_azjol_nerub.h" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\instance_azjol_nerub.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="Drak'Tharon Keep" - > - <File - RelativePath="..\scripts\northrend\draktharon_keep\boss_dred.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\draktharon_keep\boss_novos.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\draktharon_keep\boss_tharon_ja.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\draktharon_keep\boss_trollgore.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\draktharon_keep\def_drak_tharon_keep.h" - > - </File> - <File - RelativePath="..\scripts\northrend\draktharon_keep\instance_drak_tharon_keep.cpp" - > - </File> - </Filter> - <Filter - Name="Gundrak" - > - <File - RelativePath="..\scripts\northrend\gundrak\boss_drakkari_colossus.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\gundrak\boss_eck.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\gundrak\boss_gal_darah.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\gundrak\boss_moorabi.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\gundrak\boss_slad_ran.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\gundrak\def_gundrak.h" - > - </File> - <File - RelativePath="..\scripts\northrend\gundrak\instance_gundrak.cpp" - > - </File> - </Filter> - <Filter - Name="Naxxramas" - > - <File - RelativePath="..\scripts\northrend\naxxramas\boss_anubrekhan.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_faerlina.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_four_horsemen.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_gluth.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_gothik.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_grobbulus.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_heigan.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_kelthuzad.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_loatheb.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_maexxna.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_noth.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_patchwerk.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_razuvious.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_sapphiron.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_thaddius.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\def_naxxramas.h" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\instance_naxxramas.cpp" - > - </File> - </Filter> - <Filter - Name="Nexus" - > - <Filter - Name="Nexus" - > - <File - RelativePath="..\scripts\northrend\nexus\nexus\boss_anomalus.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\nexus\boss_keristrasza.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\nexus\boss_magus_telestra.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\nexus\boss_ormorok.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\nexus\commander_kolurg.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\nexus\commander_stoutbeard.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\nexus\def_nexus.h" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\nexus\instance_nexus.cpp" - > - </File> - </Filter> - <Filter - Name="Oculus" - > - <File - RelativePath="..\scripts\northrend\nexus\oculus\boss_drakos.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\oculus\boss_eregos.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\oculus\boss_urom.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\oculus\boss_varos.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\oculus\def_oculus.h" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\oculus\instance_oculus.cpp" - > - </File> - </Filter> - <Filter - Name="Eye of Eternity" - > - <File - RelativePath="..\scripts\northrend\nexus\eye_of_eternity\boss_malygos.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\eye_of_eternity\def_eye_of_eternity.h" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\eye_of_eternity\instance_eye_of_eternity.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="Obsidian Sanctum" - > - <File - RelativePath="..\scripts\northrend\obsidian_sanctum\boss_sartharion.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\obsidian_sanctum\def_obsidian_sanctum.h" - > - </File> - <File - RelativePath="..\scripts\northrend\obsidian_sanctum\instance_obsidian_sanctum.cpp" - > - </File> - </Filter> - <Filter - Name="Ulduar" - > - <Filter - Name="Halls of Stone" - > - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_stone\boss_krystallus.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_stone\boss_maiden_of_grief.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_stone\boss_sjonnir.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_stone\def_halls_of_stone.h" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_stone\instance_halls_of_stone.cpp" - > - </File> - </Filter> - <Filter - Name="Halls of Lightning" - > - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\boss_bjarngrim.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\boss_ionar.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\boss_loken.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\boss_volkhan.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\def_halls_of_lightning.h" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\instance_halls_of_lightning.cpp" - > - </File> - </Filter> - <Filter - Name="Ulduar" - > - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_algalon.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_assembly_of_iron.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_auriaya.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_flame_leviathan.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_freya.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_general_vezax.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_hodir.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_ignis.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_kologarn.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_mimiron.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_razorscale.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_thorim.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_xt002.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_yoggsaron.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\def_ulduar.h" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\instance_ulduar.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="Utgarde Keep" - > - <Filter - Name="Utgarde Keep" - > - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\boss_ingvar_the_plunderer.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\boss_keleseth.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\boss_skarvald_dalronn.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\def_utgarde_keep.h" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\instance_utgarde_keep.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\utgarde_keep.cpp" - > - </File> - </Filter> - <Filter - Name="Utgarde Pinnacle" - > - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\boss_palehoof.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\boss_skadi.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\boss_svala.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\boss_ymiron.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\def_pinnacle.h" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\instance_pinnacle.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="Vault of Archavon" - > - <File - RelativePath="..\scripts\northrend\vault_of_archavon\boss_archavon.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\vault_of_archavon\boss_emalon.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\vault_of_archavon\def_vault_of_archavon.h" - > - </File> - <File - RelativePath="..\scripts\northrend\vault_of_archavon\instance_vault_of_archavon.cpp" - > - </File> - </Filter> - <Filter - Name="Violet Hold" - > - <File - RelativePath="..\scripts\northrend\violet_hold\boss_cyanigosa.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\violet_hold\boss_erekem.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\violet_hold\boss_ichoron.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\violet_hold\boss_lavanthor.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\violet_hold\boss_moragg.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\violet_hold\boss_xevozz.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\violet_hold\boss_zuramat.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\violet_hold\def_violet_hold.h" - > - </File> - <File - RelativePath="..\scripts\northrend\violet_hold\instance_violet_hold.cpp" - > - </File> - </Filter> - <File - RelativePath="..\scripts\northrend\borean_tundra.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\dragonblight.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\grizzly_hills.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\icecrown.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\sholazar_basin.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\wintergrasp.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\zuldrak.cpp" - > - </File> - </Filter> - <Filter - Name="outland" - > - <Filter - Name="Aunchindoun" - > - <Filter - Name="Auchenai Crypts" - > - <File - RelativePath="..\scripts\outland\auchindoun\auchenai_crypts\boss_exarch_maladaar.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\auchenai_crypts\boss_shirrak_the_dead_watcher.cpp" - > - </File> - </Filter> - <Filter - Name="Mana Tombs" - > - <File - RelativePath="..\scripts\outland\auchindoun\mana_tombs\boss_nexusprince_shaffar.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\mana_tombs\boss_pandemonius.cpp" - > - </File> - </Filter> - <Filter - Name="Sethekk Halls" - > - <File - RelativePath="..\scripts\outland\auchindoun\sethekk_halls\boss_darkweaver_syth.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\sethekk_halls\boss_tailonking_ikiss.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\sethekk_halls\def_sethekk_halls.h" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\sethekk_halls\instance_sethekk_halls.cpp" - > - </File> - </Filter> - <Filter - Name="Shadow Labyrinth" - > - <File - RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\boss_ambassador_hellmaw.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\boss_blackheart_the_inciter.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\boss_grandmaster_vorpil.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\boss_murmur.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\def_shadow_labyrinth.h" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\instance_shadow_labyrinth.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="Black Temple" - > - <File - RelativePath="..\scripts\outland\black_temple\black_temple.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\boss_bloodboil.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\boss_illidan.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\boss_mother_shahraz.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\boss_reliquary_of_souls.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\boss_shade_of_akama.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\boss_supremus.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\boss_teron_gorefiend.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\boss_warlord_najentus.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\def_black_temple.h" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\illidari_council.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\instance_black_temple.cpp" - > - </File> - </Filter> - <Filter - Name="Coilfang Resevoir" - > - <Filter - Name="Serpent Shrine Cavern" - > - <File - RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_fathomlord_karathress.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_hydross_the_unstable.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_lady_vashj.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_leotheras_the_blind.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_lurker_below.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_morogrim_tidewalker.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\def_serpent_shrine.h" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\instance_serpent_shrine.cpp" - > - </File> - </Filter> - <Filter - Name="Steam Vault" - > - <File - RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\boss_hydromancer_thespia.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\boss_mekgineer_steamrigger.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\boss_warlord_kalithresh.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\def_steam_vault.h" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\instance_steam_vault.cpp" - > - </File> - </Filter> - <Filter - Name="Underbog" - > - <File - RelativePath="..\scripts\outland\coilfang_resevoir\underbog\boss_hungarfen.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\underbog\boss_the_black_stalker.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="Gruul's Lair" - > - <File - RelativePath="..\scripts\outland\gruuls_lair\boss_gruul.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\gruuls_lair\boss_high_king_maulgar.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\gruuls_lair\def_gruuls_lair.h" - > - </File> - <File - RelativePath="..\scripts\outland\gruuls_lair\instance_gruuls_lair.cpp" - > - </File> - </Filter> - <Filter - Name="Hellfire Citadel" - > - <Filter - Name="Blood Furnace" - > - <File - RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\boss_broggok.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\boss_kelidan_the_breaker.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\boss_the_maker.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\def_blood_furnace.h" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\instance_blood_furnace.cpp" - > - </File> - </Filter> - <Filter - Name="Magtheridon's lair" - > - <File - RelativePath="..\scripts\outland\hellfire_citadel\magtheridons_lair\boss_magtheridon.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\magtheridons_lair\def_magtheridons_lair.h" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\magtheridons_lair\instance_magtheridons_lair.cpp" - > - </File> - </Filter> - <Filter - Name="Hellfire Ramparts" - > - <File - RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\boss_omor_the_unscarred.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\boss_vazruden_the_herald.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\boss_watchkeeper_gargolmar.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\def_hellfire_ramparts.h" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\instance_hellfire_ramparts.cpp" - > - </File> - </Filter> - <Filter - Name="Shattered Halls" - > - <File - RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\boss_nethekurse.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\boss_warbringer_omrogg.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\boss_warchief_kargath_bladefist.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\def_shattered_halls.h" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\instance_shattered_halls.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="Tempest Keep" - > - <Filter - Name="Arcatraz" - > - <File - RelativePath="..\scripts\outland\tempest_keep\arcatraz\arcatraz.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\arcatraz\boss_harbinger_skyriss.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\arcatraz\def_arcatraz.h" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\arcatraz\instance_arcatraz.cpp" - > - </File> - </Filter> - <Filter - Name="Botanica" - > - <File - RelativePath="..\scripts\outland\tempest_keep\botanica\boss_high_botanist_freywinn.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\botanica\boss_laj.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\botanica\boss_warp_splinter.cpp" - > - </File> - </Filter> - <Filter - Name="The Eye" - > - <File - RelativePath="..\scripts\outland\tempest_keep\the_eye\boss_alar.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_eye\boss_astromancer.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_eye\boss_kaelthas.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_eye\boss_void_reaver.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_eye\def_the_eye.h" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_eye\instance_the_eye.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_eye\the_eye.cpp" - > - </File> - </Filter> - <Filter - Name="The Mechanar" - > - <File - RelativePath="..\scripts\outland\tempest_keep\the_mechanar\boss_gatewatcher_gyrokill.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_mechanar\boss_gatewatcher_ironhand.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_mechanar\boss_nethermancer_sepethrea.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_mechanar\boss_pathaleon_the_calculator.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_mechanar\def_mechanar.h" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_mechanar\instance_mechanar.cpp" - > - </File> - </Filter> - </Filter> - <File - RelativePath="..\scripts\outland\blades_edge_mountains.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\boss_doomlord_kazzak.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\boss_doomwalker.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_peninsula.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\nagrand.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\netherstorm.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\shadowmoon_valley.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\shattrath_city.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\terokkar_forest.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\zangarmarsh.cpp" - > - </File> - </Filter> - <Filter - Name="custom" - > - <File - RelativePath="..\scripts\custom\npc_acherus_taxi.cpp" - > - </File> - <File - RelativePath="..\scripts\custom\npc_wyrmresttempel_taxi.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="world" - > - <File - RelativePath="..\scripts\world\areatrigger_scripts.cpp" - > - </File> - <File - RelativePath="..\scripts\world\boss_emeriss.cpp" - > - </File> - <File - RelativePath="..\scripts\world\boss_lethon.cpp" - > - </File> - <File - RelativePath="..\scripts\world\boss_taerar.cpp" - > - </File> - <File - RelativePath="..\scripts\world\boss_ysondre.cpp" - > - </File> - <File - RelativePath="..\scripts\world\go_scripts.cpp" - > - </File> - <File - RelativePath="..\scripts\world\guards.cpp" - > - </File> - <File - RelativePath="..\scripts\world\item_scripts.cpp" - > - </File> - <File - RelativePath="..\scripts\world\mob_generic_creature.cpp" - > - </File> - <File - RelativePath="..\scripts\world\npc_innkeeper.cpp" - > - </File> - <File - RelativePath="..\scripts\world\npc_professions.cpp" - > - </File> - <File - RelativePath="..\scripts\world\npc_taxi.cpp" - > - </File> - <File - RelativePath="..\scripts\world\npcs_special.cpp" - > - </File> - </Filter> + <Filter + Name="base" + > + <File + RelativePath="..\base\escort_ai.cpp" + > + </File> + <File + RelativePath="..\base\escort_ai.h" + > + </File> + <File + RelativePath="..\base\follower_ai.cpp" + > + </File> + <File + RelativePath="..\base\follower_ai.h" + > + </File> + <File + RelativePath="..\base\guard_ai.cpp" + > + </File> + <File + RelativePath="..\base\guard_ai.h" + > + </File> + <File + RelativePath="..\base\simple_ai.cpp" + > + </File> + <File + RelativePath="..\base\simple_ai.h" + > + </File> + </Filter> + <Filter + Name="scripts" + > + <Filter + Name="eastern_kingdoms" + > + <Filter + Name="Blackrock Depths" + > + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\blackrock_depths.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_ambassador_flamelash.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_anubshiah.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_emperor_dagran_thaurissan.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_general_angerforge.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_gorosh_the_dervish.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_grizzle.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_high_interrogator_gerstahn.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_magmus.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_moira_bronzebeard.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_tomb_of_seven.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\def_blackrock_depths.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\instance_blackrock_depths.cpp" + > + </File> + </Filter> + <Filter + Name="Blackrock Spire" + > + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_drakkisath.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_gyth.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_halycon.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_highlord_omokk.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_mother_smolderweb.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_overlord_wyrmthalak.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_pyroguard_emberseer.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_quartermaster_zigris.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_rend_blackhand.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_shadow_hunter_voshgajin.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_the_beast.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_warmaster_voone.cpp" + > + </File> + </Filter> + <Filter + Name="Blackwing Lair" + > + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_broodlord_lashlayer.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_chromaggus.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_ebonroc.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_firemaw.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_flamegor.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_nefarian.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_razorgore.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_vaelastrasz.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_victor_nefarius.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\instance_blackwing_lair.cpp" + > + </File> + </Filter> + <Filter + Name="Deadmines" + > + <File + RelativePath="..\scripts\eastern_kingdoms\deadmines\deadmines.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\deadmines\def_deadmines.h" + > + </File> + </Filter> + <Filter + Name="Karazhan" + > + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_curator.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_maiden_of_virtue.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_midnight.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_moroes.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_netherspite.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_nightbane.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_prince_malchezaar.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_shade_of_aran.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_terestian_illhoof.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\bosses_opera.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\def_karazhan.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\instance_karazhan.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\karazhan.cpp" + > + </File> + </Filter> + <Filter + Name="Magister's Terrace" + > + <File + RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\boss_felblood_kaelthas.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\boss_priestess_delrissa.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\boss_selin_fireheart.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\boss_vexallus.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\def_magisters_terrace.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\instance_magisters_terrace.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\magisters_terrace.cpp" + > + </File> + </Filter> + <Filter + Name="Molten Core" + > + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_baron_geddon.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_garr.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_gehennas.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_golemagg.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_lucifron.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_magmadar.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_majordomo_executus.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_ragnaros.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_shazzrah.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_sulfuron_harbinger.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\def_molten_core.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\instance_molten_core.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\molten_core.cpp" + > + </File> + </Filter> + <Filter + Name="scarlet_enclave" + > + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_enclave\the_scarlet_enclave.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_enclave\chapter1.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_enclave\chapter2.cpp" + > + </File> + </Filter> + <Filter + Name="Scarlet Monastery" + > + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_arcanist_doan.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_azshir_the_sleepless.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_bloodmage_thalnos.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_headless_horseman.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_herod.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_high_inquisitor_fairbanks.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_houndmaster_loksey.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_interrogator_vishas.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_mograine_and_whitemane.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_scorn.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\def_scarlet_monastery.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\instance_scarlet_monastery.cpp" + > + </File> + </Filter> + <Filter + Name="Scholomance" + > + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_darkmaster_gandling.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_death_knight_darkreaver.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_doctor_theolen_krastinov.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_illucia_barov.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_instructor_malicia.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_jandice_barov.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_kormok.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_lord_alexei_barov.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_lorekeeper_polkelt.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_ras_frostwhisper.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_the_ravenian.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_vectus.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\def_scholomance.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\instance_scholomance.cpp" + > + </File> + </Filter> + <Filter + Name="Shadowfang Keep" + > + <File + RelativePath="..\scripts\eastern_kingdoms\shadowfang_keep\def_shadowfang_keep.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\shadowfang_keep\instance_shadowfang_keep.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\shadowfang_keep\shadowfang_keep.cpp" + > + </File> + </Filter> + <Filter + Name="Stratholme" + > + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_baron_rivendare.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_baroness_anastari.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_cannon_master_willey.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_dathrohan_balnazzar.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_magistrate_barthilas.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_maleki_the_pallid.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_nerubenkan.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_order_of_silver_hand.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_postmaster_malown.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_ramstein_the_gorger.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_timmy_the_cruel.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\def_stratholme.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\instance_stratholme.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\stratholme.cpp" + > + </File> + </Filter> + <Filter + Name="Sunwell Plateau" + > + <File + RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_brutallus.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_eredar_twins.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_felmyst.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_kalecgos.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_kiljaeden.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_muru.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\def_sunwell_plateau.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\instance_sunwell_plateau.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\sunwell_plateau.cpp" + > + </File> + </Filter> + <Filter + Name="Uldaman" + > + <File + RelativePath="..\scripts\eastern_kingdoms\uldaman\boss_archaedas.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\uldaman\boss_ironaya.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\uldaman\instance_uldaman.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\uldaman\uldaman.cpp" + > + </File> + </Filter> + <Filter + Name="Zul'Aman" + > + <File + RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_akilzon.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_halazzi.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_hexlord.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_janalai.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_nalorakk.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_zuljin.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulaman\def_zulaman.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulaman\instance_zulaman.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulaman\zulaman.cpp" + > + </File> + </Filter> + <Filter + Name="Zul'Gurub" + > + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_arlokk.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_gahzranka.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_grilek.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_hakkar.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_hazzarah.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_jeklik.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_jindo.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_mandokir.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_marli.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_renataki.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_thekal.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_venoxis.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_wushoolay.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\def_zulgurub.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\instance_zulgurub.cpp" + > + </File> + </Filter> + <File + RelativePath="..\scripts\eastern_kingdoms\alterac_mountains.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\arathi_highlands.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blasted_lands.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\boss_kruul.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\burning_steppes.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\dun_morogh.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\eastern_plaguelands.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\elwynn_forest.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\eversong_woods.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\ghostlands.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\hinterlands.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\ironforge.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\isle_of_queldanas.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\loch_modan.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\searing_gorge.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\silvermoon_city.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\silverpine_forest.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stormwind_city.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stranglethorn_vale.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\tirisfal_glades.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\undercity.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\western_plaguelands.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\westfall.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\wetlands.cpp" + > + </File> + </Filter> + <Filter + Name="examples" + > + <File + RelativePath="..\scripts\examples\example_creature.cpp" + > + </File> + <File + RelativePath="..\scripts\examples\example_escort.cpp" + > + </File> + <File + RelativePath="..\scripts\examples\example_gossip_codebox.cpp" + > + </File> + <File + RelativePath="..\scripts\examples\example_misc.cpp" + > + </File> + </Filter> + <Filter + Name="kalimdor" + > + <Filter + Name="Blackfathom Depths" + > + <File + RelativePath="..\scripts\kalimdor\blackfathom_depths\instance_blackfathom_deeps.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\blackfathom_depths\def_blackfathom_deeps.h" + > + </File> + </Filter> + <Filter + Name="Caverns of Time" + > + <Filter + Name="Culling of Stratholme" + > + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\boss_epoch.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\boss_mal_ganis.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\boss_meathook.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\boss_salramm.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\def_culling_of_stratholme.h" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\instance_culling_of_stratholme.cpp" + > + </File> + </Filter> + <Filter + Name="The Dark Portal" + > + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\boss_aeonus.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\boss_chrono_lord_deja.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\boss_temporus.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\dark_portal.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\def_dark_portal.h" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\instance_dark_portal.cpp" + > + </File> + </Filter> + <Filter + Name="Battle for Mt. Hyjal" + > + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_anetheron.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_archimonde.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_azgalor.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_kazrogal.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_rage_winterchill.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\def_hyjal.h" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjal.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjal_trash.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjal_trash.h" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjalAI.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjalAI.h" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\instance_hyjal.cpp" + > + </File> + </Filter> + <Filter + Name="Old Hillsbrad" + > + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\boss_captain_skarloc.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\boss_epoch_hunter.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\boss_leutenant_drake.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\def_old_hillsbrad.h" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\instance_old_hillsbrad.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\old_hillsbrad.cpp" + > + </File> + </Filter> + </Filter> + <Filter + Name="Maraudon" + > + <File + RelativePath="..\scripts\kalimdor\maraudon\boss_celebras_the_cursed.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\maraudon\boss_landslide.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\maraudon\boss_noxxion.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\maraudon\boss_princess_theradras.cpp" + > + </File> + </Filter> + <Filter + Name="Onyxia's Lair" + > + <File + RelativePath="..\scripts\kalimdor\onyxias_lair\boss_onyxia.cpp" + > + </File> + </Filter> + <Filter + Name="Razorfen Downs" + > + <File + RelativePath="..\scripts\kalimdor\razorfen_downs\boss_amnennar_the_coldbringer.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\razorfen_downs\razorfen_downs.cpp" + > + </File> + </Filter> + <Filter + Name="Razorfen Kraul" + > + <File + RelativePath="..\scripts\kalimdor\razorfen_kraul\razorfen_kraul.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\razorfen_kraul\instance_razorfen_kraul.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\razorfen_kraul\def_razorfen_kraul.h" + > + </File> + </Filter> + <Filter + Name="Ruins of Ahn'Qiraj" + > + <File + RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_ayamiss.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_buru.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_kurinnaxx.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_moam.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_ossirian.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_rajaxx.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\instance_ruins_of_ahnqiraj.cpp" + > + </File> + </Filter> + <Filter + Name="Temple of Ahn'Qiraj" + > + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_bug_trio.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_cthun.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_fankriss.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_huhuran.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_ouro.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_sartura.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_skeram.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_twinemperors.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_viscidus.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\def_temple_of_ahnqiraj.h" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\instance_temple_of_ahnqiraj.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\mob_anubisath_sentinel.cpp" + > + </File> + </Filter> + <Filter + Name="Wailing Caverns" + > + <File + RelativePath="..\scripts\kalimdor\wailing_caverns\def_wailing_caverns.h" + > + </File> + <File + RelativePath="..\scripts\kalimdor\wailing_caverns\instance_wailing_caverns.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\wailing_caverns\wailing_caverns.cpp" + > + </File> + </Filter> + <Filter + Name="Zul'Farrak" + > + <File + RelativePath="..\scripts\kalimdor\zulfarrak\zulfarrak.cpp" + > + </File> + </Filter> + <File + RelativePath="..\scripts\kalimdor\ashenvale.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\azshara.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\azuremyst_isle.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\bloodmyst_isle.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\boss_azuregos.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\darkshore.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\desolace.cpp"> + </File> + <File + RelativePath="..\scripts\kalimdor\dustwallow_marsh.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\felwood.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\feralas.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\moonglade.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\mulgore.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\orgrimmar.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\silithus.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\stonetalon_mountains.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\tanaris.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\teldrassil.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\the_barrens.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\thousand_needles.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\thunder_bluff.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\ungoro_crater.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\winterspring.cpp" + > + </File> + </Filter> + <Filter + Name="northrend" + > + <Filter + Name="Azjol-Nerub" + > + <Filter + Name="Ahn'kahet" + > + <File + RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_amanitar.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_elder_nadox.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_herald_volazj.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_jedoga_shadowseeker.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_prince_taldaram.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\def_ahnkahet.h" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\instance_ahnkahet.cpp" + > + </File> + </Filter> + <Filter + Name="Azjol-Nerub" + > + <File + RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\boss_anubarak.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\boss_hadronox.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\boss_krikthir_the_gatewatcher.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\def_azjol_nerub.h" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\instance_azjol_nerub.cpp" + > + </File> + </Filter> + </Filter> + <Filter + Name="Drak'Tharon Keep" + > + <File + RelativePath="..\scripts\northrend\draktharon_keep\boss_dred.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\draktharon_keep\boss_novos.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\draktharon_keep\boss_tharon_ja.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\draktharon_keep\boss_trollgore.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\draktharon_keep\def_drak_tharon_keep.h" + > + </File> + <File + RelativePath="..\scripts\northrend\draktharon_keep\instance_drak_tharon_keep.cpp" + > + </File> + </Filter> + <Filter + Name="Gundrak" + > + <File + RelativePath="..\scripts\northrend\gundrak\boss_drakkari_colossus.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\gundrak\boss_eck.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\gundrak\boss_gal_darah.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\gundrak\boss_moorabi.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\gundrak\boss_slad_ran.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\gundrak\def_gundrak.h" + > + </File> + <File + RelativePath="..\scripts\northrend\gundrak\instance_gundrak.cpp" + > + </File> + </Filter> + <Filter + Name="Naxxramas" + > + <File + RelativePath="..\scripts\northrend\naxxramas\boss_anubrekhan.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_faerlina.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_four_horsemen.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_gluth.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_gothik.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_grobbulus.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_heigan.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_kelthuzad.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_loatheb.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_maexxna.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_noth.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_patchwerk.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_razuvious.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_sapphiron.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_thaddius.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\def_naxxramas.h" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\instance_naxxramas.cpp" + > + </File> + </Filter> + <Filter + Name="Nexus" + > + <Filter + Name="Nexus" + > + <File + RelativePath="..\scripts\northrend\nexus\nexus\boss_anomalus.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\nexus\boss_keristrasza.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\nexus\boss_magus_telestra.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\nexus\boss_ormorok.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\nexus\commander_kolurg.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\nexus\commander_stoutbeard.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\nexus\def_nexus.h" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\nexus\instance_nexus.cpp" + > + </File> + </Filter> + <Filter + Name="Oculus" + > + <File + RelativePath="..\scripts\northrend\nexus\oculus\boss_drakos.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\oculus\boss_eregos.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\oculus\boss_urom.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\oculus\boss_varos.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\oculus\def_oculus.h" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\oculus\instance_oculus.cpp" + > + </File> + </Filter> + <Filter + Name="Eye of Eternity" + > + <File + RelativePath="..\scripts\northrend\nexus\eye_of_eternity\boss_malygos.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\eye_of_eternity\def_eye_of_eternity.h" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\eye_of_eternity\instance_eye_of_eternity.cpp" + > + </File> + </Filter> + </Filter> + <Filter + Name="Obsidian Sanctum" + > + <File + RelativePath="..\scripts\northrend\obsidian_sanctum\boss_sartharion.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\obsidian_sanctum\def_obsidian_sanctum.h" + > + </File> + <File + RelativePath="..\scripts\northrend\obsidian_sanctum\instance_obsidian_sanctum.cpp" + > + </File> + </Filter> + <Filter + Name="Ulduar" + > + <Filter + Name="Halls of Stone" + > + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_stone\boss_krystallus.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_stone\boss_maiden_of_grief.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_stone\boss_sjonnir.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_stone\def_halls_of_stone.h" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_stone\instance_halls_of_stone.cpp" + > + </File> + </Filter> + <Filter + Name="Halls of Lightning" + > + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\boss_bjarngrim.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\boss_ionar.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\boss_loken.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\boss_volkhan.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\def_halls_of_lightning.h" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\instance_halls_of_lightning.cpp" + > + </File> + </Filter> + <Filter + Name="Ulduar" + > + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_algalon.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_assembly_of_iron.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_auriaya.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_flame_leviathan.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_freya.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_general_vezax.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_hodir.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_ignis.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_kologarn.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_mimiron.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_razorscale.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_thorim.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_xt002.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_yoggsaron.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\def_ulduar.h" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\instance_ulduar.cpp" + > + </File> + </Filter> + </Filter> + <Filter + Name="Utgarde Keep" + > + <Filter + Name="Utgarde Keep" + > + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\boss_ingvar_the_plunderer.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\boss_keleseth.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\boss_skarvald_dalronn.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\def_utgarde_keep.h" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\instance_utgarde_keep.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\utgarde_keep.cpp" + > + </File> + </Filter> + <Filter + Name="Utgarde Pinnacle" + > + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\boss_palehoof.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\boss_skadi.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\boss_svala.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\boss_ymiron.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\def_pinnacle.h" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\instance_pinnacle.cpp" + > + </File> + </Filter> + </Filter> + <Filter + Name="Vault of Archavon" + > + <File + RelativePath="..\scripts\northrend\vault_of_archavon\boss_archavon.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\vault_of_archavon\boss_emalon.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\vault_of_archavon\def_vault_of_archavon.h" + > + </File> + <File + RelativePath="..\scripts\northrend\vault_of_archavon\instance_vault_of_archavon.cpp" + > + </File> + </Filter> + <Filter + Name="Violet Hold" + > + <File + RelativePath="..\scripts\northrend\violet_hold\boss_cyanigosa.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\violet_hold\boss_erekem.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\violet_hold\boss_ichoron.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\violet_hold\boss_lavanthor.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\violet_hold\boss_moragg.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\violet_hold\boss_xevozz.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\violet_hold\boss_zuramat.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\violet_hold\def_violet_hold.h" + > + </File> + <File + RelativePath="..\scripts\northrend\violet_hold\instance_violet_hold.cpp" + > + </File> + </Filter> + <File + RelativePath="..\scripts\northrend\borean_tundra.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\dragonblight.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\grizzly_hills.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\icecrown.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\sholazar_basin.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\wintergrasp.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\zuldrak.cpp" + > + </File> + </Filter> + <Filter + Name="outland" + > + <Filter + Name="Aunchindoun" + > + <Filter + Name="Auchenai Crypts" + > + <File + RelativePath="..\scripts\outland\auchindoun\auchenai_crypts\boss_exarch_maladaar.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\auchenai_crypts\boss_shirrak_the_dead_watcher.cpp" + > + </File> + </Filter> + <Filter + Name="Mana Tombs" + > + <File + RelativePath="..\scripts\outland\auchindoun\mana_tombs\boss_nexusprince_shaffar.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\mana_tombs\boss_pandemonius.cpp" + > + </File> + </Filter> + <Filter + Name="Sethekk Halls" + > + <File + RelativePath="..\scripts\outland\auchindoun\sethekk_halls\boss_darkweaver_syth.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\sethekk_halls\boss_tailonking_ikiss.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\sethekk_halls\def_sethekk_halls.h" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\sethekk_halls\instance_sethekk_halls.cpp" + > + </File> + </Filter> + <Filter + Name="Shadow Labyrinth" + > + <File + RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\boss_ambassador_hellmaw.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\boss_blackheart_the_inciter.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\boss_grandmaster_vorpil.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\boss_murmur.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\def_shadow_labyrinth.h" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\instance_shadow_labyrinth.cpp" + > + </File> + </Filter> + </Filter> + <Filter + Name="Black Temple" + > + <File + RelativePath="..\scripts\outland\black_temple\black_temple.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\boss_bloodboil.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\boss_illidan.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\boss_mother_shahraz.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\boss_reliquary_of_souls.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\boss_shade_of_akama.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\boss_supremus.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\boss_teron_gorefiend.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\boss_warlord_najentus.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\def_black_temple.h" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\illidari_council.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\instance_black_temple.cpp" + > + </File> + </Filter> + <Filter + Name="Coilfang Resevoir" + > + <Filter + Name="Serpent Shrine Cavern" + > + <File + RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_fathomlord_karathress.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_hydross_the_unstable.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_lady_vashj.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_leotheras_the_blind.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_lurker_below.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_morogrim_tidewalker.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\def_serpent_shrine.h" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\instance_serpent_shrine.cpp" + > + </File> + </Filter> + <Filter + Name="Steam Vault" + > + <File + RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\boss_hydromancer_thespia.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\boss_mekgineer_steamrigger.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\boss_warlord_kalithresh.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\def_steam_vault.h" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\instance_steam_vault.cpp" + > + </File> + </Filter> + <Filter + Name="Underbog" + > + <File + RelativePath="..\scripts\outland\coilfang_resevoir\underbog\boss_hungarfen.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\underbog\boss_the_black_stalker.cpp" + > + </File> + </Filter> + </Filter> + <Filter + Name="Gruul's Lair" + > + <File + RelativePath="..\scripts\outland\gruuls_lair\boss_gruul.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\gruuls_lair\boss_high_king_maulgar.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\gruuls_lair\def_gruuls_lair.h" + > + </File> + <File + RelativePath="..\scripts\outland\gruuls_lair\instance_gruuls_lair.cpp" + > + </File> + </Filter> + <Filter + Name="Hellfire Citadel" + > + <Filter + Name="Blood Furnace" + > + <File + RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\boss_broggok.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\boss_kelidan_the_breaker.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\boss_the_maker.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\def_blood_furnace.h" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\instance_blood_furnace.cpp" + > + </File> + </Filter> + <Filter + Name="Magtheridon's lair" + > + <File + RelativePath="..\scripts\outland\hellfire_citadel\magtheridons_lair\boss_magtheridon.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\magtheridons_lair\def_magtheridons_lair.h" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\magtheridons_lair\instance_magtheridons_lair.cpp" + > + </File> + </Filter> + <Filter + Name="Hellfire Ramparts" + > + <File + RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\boss_omor_the_unscarred.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\boss_vazruden_the_herald.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\boss_watchkeeper_gargolmar.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\def_hellfire_ramparts.h" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\instance_hellfire_ramparts.cpp" + > + </File> + </Filter> + <Filter + Name="Shattered Halls" + > + <File + RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\boss_nethekurse.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\boss_warbringer_omrogg.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\boss_warchief_kargath_bladefist.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\def_shattered_halls.h" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\instance_shattered_halls.cpp" + > + </File> + </Filter> + </Filter> + <Filter + Name="Tempest Keep" + > + <Filter + Name="Arcatraz" + > + <File + RelativePath="..\scripts\outland\tempest_keep\arcatraz\arcatraz.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\arcatraz\boss_harbinger_skyriss.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\arcatraz\def_arcatraz.h" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\arcatraz\instance_arcatraz.cpp" + > + </File> + </Filter> + <Filter + Name="Botanica" + > + <File + RelativePath="..\scripts\outland\tempest_keep\botanica\boss_high_botanist_freywinn.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\botanica\boss_laj.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\botanica\boss_warp_splinter.cpp" + > + </File> + </Filter> + <Filter + Name="The Eye" + > + <File + RelativePath="..\scripts\outland\tempest_keep\the_eye\boss_alar.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_eye\boss_astromancer.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_eye\boss_kaelthas.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_eye\boss_void_reaver.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_eye\def_the_eye.h" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_eye\instance_the_eye.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_eye\the_eye.cpp" + > + </File> + </Filter> + <Filter + Name="The Mechanar" + > + <File + RelativePath="..\scripts\outland\tempest_keep\the_mechanar\boss_gatewatcher_gyrokill.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_mechanar\boss_gatewatcher_ironhand.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_mechanar\boss_nethermancer_sepethrea.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_mechanar\boss_pathaleon_the_calculator.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_mechanar\def_mechanar.h" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_mechanar\instance_mechanar.cpp" + > + </File> + </Filter> + </Filter> + <File + RelativePath="..\scripts\outland\blades_edge_mountains.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\boss_doomlord_kazzak.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\boss_doomwalker.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_peninsula.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\nagrand.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\netherstorm.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\shadowmoon_valley.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\shattrath_city.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\terokkar_forest.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\zangarmarsh.cpp" + > + </File> + </Filter> + <Filter + Name="custom" + > + <File + RelativePath="..\scripts\custom\npc_acherus_taxi.cpp" + > + </File> + <File + RelativePath="..\scripts\custom\npc_wyrmresttempel_taxi.cpp" + > + </File> + </Filter> + </Filter> + <Filter + Name="world" + > + <File + RelativePath="..\scripts\world\areatrigger_scripts.cpp" + > + </File> + <File + RelativePath="..\scripts\world\boss_emeriss.cpp" + > + </File> + <File + RelativePath="..\scripts\world\boss_lethon.cpp" + > + </File> + <File + RelativePath="..\scripts\world\boss_taerar.cpp" + > + </File> + <File + RelativePath="..\scripts\world\boss_ysondre.cpp" + > + </File> + <File + RelativePath="..\scripts\world\go_scripts.cpp" + > + </File> + <File + RelativePath="..\scripts\world\guards.cpp" + > + </File> + <File + RelativePath="..\scripts\world\item_scripts.cpp" + > + </File> + <File + RelativePath="..\scripts\world\mob_generic_creature.cpp" + > + </File> + <File + RelativePath="..\scripts\world\npc_innkeeper.cpp" + > + </File> + <File + RelativePath="..\scripts\world\npc_professions.cpp" + > + </File> + <File + RelativePath="..\scripts\world\npc_taxi.cpp" + > + </File> + <File + RelativePath="..\scripts\world\npcs_special.cpp" + > + </File> + </Filter> <Filter Name="Include" > @@ -2755,26 +2763,26 @@ > </File> </Filter> - <Filter - Name="system" - > - <File - RelativePath="..\system\ScriptLoader.cpp" - > - </File> - <File - RelativePath="..\system\ScriptLoader.h" - > - </File> - <File - RelativePath="..\system\system.cpp" - > - </File> - <File - RelativePath="..\system\system.h" - > - </File> - </Filter> + <Filter + Name="system" + > + <File + RelativePath="..\system\ScriptLoader.cpp" + > + </File> + <File + RelativePath="..\system\ScriptLoader.h" + > + </File> + <File + RelativePath="..\system\system.cpp" + > + </File> + <File + RelativePath="..\system\system.h" + > + </File> + </Filter> <File RelativePath="..\ScriptMgr.cpp" > diff --git a/src/bindings/scripts/VC90/90ScriptDev2.vcproj b/src/bindings/scripts/VC90/90ScriptDev2.vcproj index ee30f353115..9191348b50f 100644 --- a/src/bindings/scripts/VC90/90ScriptDev2.vcproj +++ b/src/bindings/scripts/VC90/90ScriptDev2.vcproj @@ -357,2337 +357,2345 @@ <References> </References> <Files> - <Filter - Name="base" - > - <File - RelativePath="..\base\escort_ai.cpp" - > - </File> - <File - RelativePath="..\base\escort_ai.h" - > - </File> - <File - RelativePath="..\base\follower_ai.cpp" - > - </File> - <File - RelativePath="..\base\follower_ai.h" - > - </File> - <File - RelativePath="..\base\guard_ai.cpp" - > - </File> - <File - RelativePath="..\base\guard_ai.h" - > - </File> - <File - RelativePath="..\base\simple_ai.cpp" - > - </File> - <File - RelativePath="..\base\simple_ai.h" - > - </File> - </Filter> - <Filter - Name="scripts" - > - <Filter - Name="eastern_kingdoms" - > - <Filter - Name="Blackrock Depths" - > - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\blackrock_depths.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_ambassador_flamelash.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_anubshiah.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_emperor_dagran_thaurissan.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_general_angerforge.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_gorosh_the_dervish.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_grizzle.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_high_interrogator_gerstahn.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_magmus.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_moira_bronzebeard.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_tomb_of_seven.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\def_blackrock_depths.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\instance_blackrock_depths.cpp" - > - </File> - </Filter> - <Filter - Name="Blackrock Spire" - > - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_drakkisath.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_gyth.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_halycon.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_highlord_omokk.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_mother_smolderweb.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_overlord_wyrmthalak.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_pyroguard_emberseer.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_quartermaster_zigris.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_rend_blackhand.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_shadow_hunter_voshgajin.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_the_beast.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_warmaster_voone.cpp" - > - </File> - </Filter> - <Filter - Name="Blackwing Lair" - > - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_broodlord_lashlayer.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_chromaggus.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_ebonroc.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_firemaw.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_flamegor.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_nefarian.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_razorgore.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_vaelastrasz.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_victor_nefarius.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\instance_blackwing_lair.cpp" - > - </File> - </Filter> - <Filter - Name="Deadmines" - > - <File - RelativePath="..\scripts\eastern_kingdoms\deadmines\deadmines.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\deadmines\def_deadmines.h" - > - </File> - </Filter> - <Filter - Name="Karazhan" - > - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_curator.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_maiden_of_virtue.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_midnight.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_moroes.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_netherspite.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_nightbane.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_prince_malchezaar.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_shade_of_aran.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_terestian_illhoof.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\bosses_opera.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\def_karazhan.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\instance_karazhan.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\karazhan\karazhan.cpp" - > - </File> - </Filter> - <Filter - Name="Magister's Terrace" - > - <File - RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\boss_felblood_kaelthas.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\boss_priestess_delrissa.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\boss_selin_fireheart.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\boss_vexallus.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\def_magisters_terrace.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\instance_magisters_terrace.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\magisters_terrace.cpp" - > - </File> - </Filter> - <Filter - Name="Molten Core" - > - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_baron_geddon.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_garr.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_gehennas.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_golemagg.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_lucifron.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_magmadar.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_majordomo_executus.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_ragnaros.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_shazzrah.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_sulfuron_harbinger.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\def_molten_core.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\instance_molten_core.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\molten_core\molten_core.cpp" - > - </File> - </Filter> - <Filter - Name="scarlet_enclave" - > - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_enclave\the_scarlet_enclave.cpp" - > - </File> - </Filter> - <Filter - Name="Scarlet Monastery" - > - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_arcanist_doan.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_azshir_the_sleepless.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_bloodmage_thalnos.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_headless_horseman.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_herod.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_high_inquisitor_fairbanks.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_houndmaster_loksey.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_interrogator_vishas.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_mograine_and_whitemane.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_scorn.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\def_scarlet_monastery.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\instance_scarlet_monastery.cpp" - > - </File> - </Filter> - <Filter - Name="Scholomance" - > - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_darkmaster_gandling.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_death_knight_darkreaver.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_doctor_theolen_krastinov.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_illucia_barov.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_instructor_malicia.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_jandice_barov.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_kormok.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_lord_alexei_barov.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_lorekeeper_polkelt.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_ras_frostwhisper.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_the_ravenian.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_vectus.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\def_scholomance.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\scholomance\instance_scholomance.cpp" - > - </File> - </Filter> - <Filter - Name="Shadowfang Keep" - > - <File - RelativePath="..\scripts\eastern_kingdoms\shadowfang_keep\def_shadowfang_keep.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\shadowfang_keep\instance_shadowfang_keep.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\shadowfang_keep\shadowfang_keep.cpp" - > - </File> - </Filter> - <Filter - Name="Stratholme" - > - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_baron_rivendare.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_baroness_anastari.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_cannon_master_willey.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_dathrohan_balnazzar.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_magistrate_barthilas.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_maleki_the_pallid.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_nerubenkan.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_order_of_silver_hand.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_postmaster_malown.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_ramstein_the_gorger.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_timmy_the_cruel.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\def_stratholme.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\instance_stratholme.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stratholme\stratholme.cpp" - > - </File> - </Filter> - <Filter - Name="Sunwell Plateau" - > - <File - RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_brutallus.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_eredar_twins.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_felmyst.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_kalecgos.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_kiljaeden.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_muru.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\def_sunwell_plateau.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\instance_sunwell_plateau.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\sunwell_plateau.cpp" - > - </File> - </Filter> - <Filter - Name="Uldaman" - > - <File - RelativePath="..\scripts\eastern_kingdoms\uldaman\boss_archaedas.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\uldaman\boss_ironaya.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\uldaman\instance_uldaman.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\uldaman\uldaman.cpp" - > - </File> - </Filter> - <Filter - Name="Zul'Aman" - > - <File - RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_akilzon.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_halazzi.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_hexlord.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_janalai.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_nalorakk.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_zuljin.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulaman\def_zulaman.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulaman\instance_zulaman.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulaman\zulaman.cpp" - > - </File> - </Filter> - <Filter - Name="Zul'Gurub" - > - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_arlokk.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_gahzranka.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_grilek.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_hakkar.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_hazzarah.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_jeklik.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_jindo.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_mandokir.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_marli.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_renataki.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_thekal.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_venoxis.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_wushoolay.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\def_zulgurub.h" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\zulgurub\instance_zulgurub.cpp" - > - </File> - </Filter> - <File - RelativePath="..\scripts\eastern_kingdoms\alterac_mountains.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\arathi_highlands.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\blasted_lands.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\boss_kruul.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\burning_steppes.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\dun_morogh.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\eastern_plaguelands.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\elwynn_forest.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\eversong_woods.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\ghostlands.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\hinterlands.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\ironforge.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\isle_of_queldanas.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\loch_modan.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\searing_gorge.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\silvermoon_city.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\silverpine_forest.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stormwind_city.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\stranglethorn_vale.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\tirisfal_glades.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\undercity.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\western_plaguelands.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\westfall.cpp" - > - </File> - <File - RelativePath="..\scripts\eastern_kingdoms\wetlands.cpp" - > - </File> - </Filter> - <Filter - Name="examples" - > - <File - RelativePath="..\scripts\examples\example_creature.cpp" - > - </File> - <File - RelativePath="..\scripts\examples\example_escort.cpp" - > - </File> - <File - RelativePath="..\scripts\examples\example_gossip_codebox.cpp" - > - </File> - <File - RelativePath="..\scripts\examples\example_misc.cpp" - > - </File> - </Filter> - <Filter - Name="kalimdor" - > - <Filter - Name="Blackfathom Depths" - > - <File - RelativePath="..\scripts\kalimdor\blackfathom_depths\instance_blackfathom_deeps.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\blackfathom_depths\def_blackfathom_deeps.h" - > - </File> - </Filter> - <Filter - Name="Caverns of Time" - > - <Filter - Name="Culling of Stratholme" - > - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\boss_epoch.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\boss_mal_ganis.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\boss_meathook.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\boss_salramm.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\def_culling_of_stratholme.h" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\instance_culling_of_stratholme.cpp" - > - </File> - </Filter> - <Filter - Name="The Dark Portal" - > - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\boss_aeonus.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\boss_chrono_lord_deja.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\boss_temporus.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\dark_portal.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\def_dark_portal.h" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\instance_dark_portal.cpp" - > - </File> - </Filter> - <Filter - Name="Battle for Mt. Hyjal" - > - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_anetheron.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_archimonde.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_azgalor.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_kazrogal.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_rage_winterchill.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\def_hyjal.h" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjal.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjal_trash.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjal_trash.h" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjalAI.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjalAI.h" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\instance_hyjal.cpp" - > - </File> - </Filter> - <Filter - Name="Old Hillsbrad" - > - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\boss_captain_skarloc.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\boss_epoch_hunter.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\boss_leutenant_drake.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\def_old_hillsbrad.h" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\instance_old_hillsbrad.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\old_hillsbrad.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="Maraudon" - > - <File - RelativePath="..\scripts\kalimdor\maraudon\boss_celebras_the_cursed.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\maraudon\boss_landslide.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\maraudon\boss_noxxion.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\maraudon\boss_princess_theradras.cpp" - > - </File> - </Filter> - <Filter - Name="Onyxia's Lair" - > - <File - RelativePath="..\scripts\kalimdor\onyxias_lair\boss_onyxia.cpp" - > - </File> - </Filter> - <Filter - Name="Razorfen Downs" - > - <File - RelativePath="..\scripts\kalimdor\razorfen_downs\boss_amnennar_the_coldbringer.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\razorfen_downs\razorfen_downs.cpp" - > - </File> - </Filter> - <Filter - Name="Razorfen Kraul" - > - <File - RelativePath="..\scripts\kalimdor\razorfen_kraul\razorfen_kraul.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\razorfen_kraul\instance_razorfen_kraul.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\razorfen_kraul\def_razorfen_kraul.h" - > - </File> - </Filter> - <Filter - Name="Ruins of Ahn'Qiraj" - > - <File - RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_ayamiss.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_buru.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_kurinnaxx.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_moam.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_ossirian.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_rajaxx.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\instance_ruins_of_ahnqiraj.cpp" - > - </File> - </Filter> - <Filter - Name="Temple of Ahn'Qiraj" - > - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_bug_trio.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_cthun.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_fankriss.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_huhuran.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_ouro.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_sartura.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_skeram.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_twinemperors.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_viscidus.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\def_temple_of_ahnqiraj.h" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\instance_temple_of_ahnqiraj.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\mob_anubisath_sentinel.cpp" - > - </File> - </Filter> - <Filter - Name="Wailing Caverns" - > - <File - RelativePath="..\scripts\kalimdor\wailing_caverns\def_wailing_caverns.h" - > - </File> - <File - RelativePath="..\scripts\kalimdor\wailing_caverns\instance_wailing_caverns.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\wailing_caverns\wailing_caverns.cpp" - > - </File> - </Filter> - <Filter - Name="Zul'Farrak" - > - <File - RelativePath="..\scripts\kalimdor\zulfarrak\zulfarrak.cpp" - > - </File> - </Filter> - <File - RelativePath="..\scripts\kalimdor\ashenvale.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\azshara.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\azuremyst_isle.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\bloodmyst_isle.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\boss_azuregos.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\darkshore.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\desolace.cpp"> - </File> - <File - RelativePath="..\scripts\kalimdor\dustwallow_marsh.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\felwood.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\feralas.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\moonglade.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\mulgore.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\orgrimmar.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\silithus.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\stonetalon_mountains.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\tanaris.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\teldrassil.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\the_barrens.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\thousand_needles.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\thunder_bluff.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\ungoro_crater.cpp" - > - </File> - <File - RelativePath="..\scripts\kalimdor\winterspring.cpp" - > - </File> - </Filter> - <Filter - Name="northrend" - > - <Filter - Name="Azjol-Nerub" - > - <Filter - Name="Ahn'kahet" - > - <File - RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_amanitar.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_elder_nadox.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_herald_volazj.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_jedoga_shadowseeker.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_prince_taldaram.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\def_ahnkahet.h" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\instance_ahnkahet.cpp" - > - </File> - </Filter> - <Filter - Name="Azjol-Nerub" - > - <File - RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\boss_anubarak.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\boss_hadronox.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\boss_krikthir_the_gatewatcher.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\def_azjol_nerub.h" - > - </File> - <File - RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\instance_azjol_nerub.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="Drak'Tharon Keep" - > - <File - RelativePath="..\scripts\northrend\draktharon_keep\boss_dred.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\draktharon_keep\boss_novos.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\draktharon_keep\boss_tharon_ja.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\draktharon_keep\boss_trollgore.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\draktharon_keep\def_drak_tharon_keep.h" - > - </File> - <File - RelativePath="..\scripts\northrend\draktharon_keep\instance_drak_tharon_keep.cpp" - > - </File> - </Filter> - <Filter - Name="Gundrak" - > - <File - RelativePath="..\scripts\northrend\gundrak\boss_drakkari_colossus.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\gundrak\boss_eck.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\gundrak\boss_gal_darah.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\gundrak\boss_moorabi.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\gundrak\boss_slad_ran.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\gundrak\def_gundrak.h" - > - </File> - <File - RelativePath="..\scripts\northrend\gundrak\instance_gundrak.cpp" - > - </File> - </Filter> - <Filter - Name="Naxxramas" - > - <File - RelativePath="..\scripts\northrend\naxxramas\boss_anubrekhan.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_faerlina.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_four_horsemen.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_gluth.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_gothik.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_grobbulus.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_heigan.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_kelthuzad.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_loatheb.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_maexxna.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_noth.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_patchwerk.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_razuvious.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_sapphiron.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\boss_thaddius.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\def_naxxramas.h" - > - </File> - <File - RelativePath="..\scripts\northrend\naxxramas\instance_naxxramas.cpp" - > - </File> - </Filter> - <Filter - Name="Nexus" - > - <Filter - Name="Nexus" - > - <File - RelativePath="..\scripts\northrend\nexus\nexus\boss_anomalus.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\nexus\boss_keristrasza.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\nexus\boss_magus_telestra.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\nexus\boss_ormorok.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\nexus\commander_kolurg.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\nexus\commander_stoutbeard.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\nexus\def_nexus.h" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\nexus\instance_nexus.cpp" - > - </File> - </Filter> - <Filter - Name="Oculus" - > - <File - RelativePath="..\scripts\northrend\nexus\oculus\boss_drakos.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\oculus\boss_eregos.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\oculus\boss_urom.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\oculus\boss_varos.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\oculus\def_oculus.h" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\oculus\instance_oculus.cpp" - > - </File> - </Filter> - <Filter - Name="Eye of Eternity" - > - <File - RelativePath="..\scripts\northrend\nexus\eye_of_eternity\boss_malygos.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\eye_of_eternity\def_eye_of_eternity.h" - > - </File> - <File - RelativePath="..\scripts\northrend\nexus\eye_of_eternity\instance_eye_of_eternity.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="Obsidian Sanctum" - > - <File - RelativePath="..\scripts\northrend\obsidian_sanctum\boss_sartharion.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\obsidian_sanctum\def_obsidian_sanctum.h" - > - </File> - <File - RelativePath="..\scripts\northrend\obsidian_sanctum\instance_obsidian_sanctum.cpp" - > - </File> - </Filter> - <Filter - Name="Ulduar" - > - <Filter - Name="Halls of Stone" - > - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_stone\boss_krystallus.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_stone\boss_maiden_of_grief.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_stone\boss_sjonnir.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_stone\def_halls_of_stone.h" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_stone\instance_halls_of_stone.cpp" - > - </File> - </Filter> - <Filter - Name="Halls of Lightning" - > - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\boss_bjarngrim.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\boss_ionar.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\boss_loken.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\boss_volkhan.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\def_halls_of_lightning.h" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\instance_halls_of_lightning.cpp" - > - </File> - </Filter> - <Filter - Name="Ulduar" - > - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_algalon.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_assembly_of_iron.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_auriaya.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_flame_leviathan.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_freya.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_general_vezax.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_hodir.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_ignis.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_kologarn.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_mimiron.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_razorscale.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_thorim.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_xt002.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\boss_yoggsaron.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\def_ulduar.h" - > - </File> - <File - RelativePath="..\scripts\northrend\ulduar\ulduar\instance_ulduar.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="Utgarde Keep" - > - <Filter - Name="Utgarde Keep" - > - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\boss_ingvar_the_plunderer.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\boss_keleseth.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\boss_skarvald_dalronn.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\def_utgarde_keep.h" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\instance_utgarde_keep.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\utgarde_keep.cpp" - > - </File> - </Filter> - <Filter - Name="Utgarde Pinnacle" - > - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\boss_palehoof.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\boss_skadi.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\boss_svala.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\boss_ymiron.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\def_pinnacle.h" - > - </File> - <File - RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\instance_pinnacle.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="Vault of Archavon" - > - <File - RelativePath="..\scripts\northrend\vault_of_archavon\boss_archavon.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\vault_of_archavon\boss_emalon.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\vault_of_archavon\def_vault_of_archavon.h" - > - </File> - <File - RelativePath="..\scripts\northrend\vault_of_archavon\instance_vault_of_archavon.cpp" - > - </File> - </Filter> - <Filter - Name="Violet Hold" - > - <File - RelativePath="..\scripts\northrend\violet_hold\boss_cyanigosa.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\violet_hold\boss_erekem.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\violet_hold\boss_ichoron.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\violet_hold\boss_lavanthor.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\violet_hold\boss_moragg.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\violet_hold\boss_xevozz.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\violet_hold\boss_zuramat.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\violet_hold\def_violet_hold.h" - > - </File> - <File - RelativePath="..\scripts\northrend\violet_hold\instance_violet_hold.cpp" - > - </File> - </Filter> - <File - RelativePath="..\scripts\northrend\borean_tundra.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\dragonblight.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\grizzly_hills.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\icecrown.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\sholazar_basin.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\wintergrasp.cpp" - > - </File> - <File - RelativePath="..\scripts\northrend\zuldrak.cpp" - > - </File> - </Filter> - <Filter - Name="outland" - > - <Filter - Name="Aunchindoun" - > - <Filter - Name="Auchenai Crypts" - > - <File - RelativePath="..\scripts\outland\auchindoun\auchenai_crypts\boss_exarch_maladaar.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\auchenai_crypts\boss_shirrak_the_dead_watcher.cpp" - > - </File> - </Filter> - <Filter - Name="Mana Tombs" - > - <File - RelativePath="..\scripts\outland\auchindoun\mana_tombs\boss_nexusprince_shaffar.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\mana_tombs\boss_pandemonius.cpp" - > - </File> - </Filter> - <Filter - Name="Sethekk Halls" - > - <File - RelativePath="..\scripts\outland\auchindoun\sethekk_halls\boss_darkweaver_syth.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\sethekk_halls\boss_tailonking_ikiss.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\sethekk_halls\def_sethekk_halls.h" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\sethekk_halls\instance_sethekk_halls.cpp" - > - </File> - </Filter> - <Filter - Name="Shadow Labyrinth" - > - <File - RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\boss_ambassador_hellmaw.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\boss_blackheart_the_inciter.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\boss_grandmaster_vorpil.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\boss_murmur.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\def_shadow_labyrinth.h" - > - </File> - <File - RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\instance_shadow_labyrinth.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="Black Temple" - > - <File - RelativePath="..\scripts\outland\black_temple\black_temple.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\boss_bloodboil.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\boss_illidan.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\boss_mother_shahraz.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\boss_reliquary_of_souls.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\boss_shade_of_akama.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\boss_supremus.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\boss_teron_gorefiend.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\boss_warlord_najentus.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\def_black_temple.h" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\illidari_council.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\black_temple\instance_black_temple.cpp" - > - </File> - </Filter> - <Filter - Name="Coilfang Resevoir" - > - <Filter - Name="Serpent Shrine Cavern" - > - <File - RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_fathomlord_karathress.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_hydross_the_unstable.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_lady_vashj.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_leotheras_the_blind.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_lurker_below.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_morogrim_tidewalker.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\def_serpent_shrine.h" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\instance_serpent_shrine.cpp" - > - </File> - </Filter> - <Filter - Name="Steam Vault" - > - <File - RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\boss_hydromancer_thespia.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\boss_mekgineer_steamrigger.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\boss_warlord_kalithresh.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\def_steam_vault.h" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\instance_steam_vault.cpp" - > - </File> - </Filter> - <Filter - Name="Underbog" - > - <File - RelativePath="..\scripts\outland\coilfang_resevoir\underbog\boss_hungarfen.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\coilfang_resevoir\underbog\boss_the_black_stalker.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="Gruul's Lair" - > - <File - RelativePath="..\scripts\outland\gruuls_lair\boss_gruul.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\gruuls_lair\boss_high_king_maulgar.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\gruuls_lair\def_gruuls_lair.h" - > - </File> - <File - RelativePath="..\scripts\outland\gruuls_lair\instance_gruuls_lair.cpp" - > - </File> - </Filter> - <Filter - Name="Hellfire Citadel" - > - <Filter - Name="Blood Furnace" - > - <File - RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\boss_broggok.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\boss_kelidan_the_breaker.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\boss_the_maker.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\def_blood_furnace.h" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\instance_blood_furnace.cpp" - > - </File> - </Filter> - <Filter - Name="Magtheridon's lair" - > - <File - RelativePath="..\scripts\outland\hellfire_citadel\magtheridons_lair\boss_magtheridon.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\magtheridons_lair\def_magtheridons_lair.h" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\magtheridons_lair\instance_magtheridons_lair.cpp" - > - </File> - </Filter> - <Filter - Name="Hellfire Ramparts" - > - <File - RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\boss_omor_the_unscarred.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\boss_vazruden_the_herald.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\boss_watchkeeper_gargolmar.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\def_hellfire_ramparts.h" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\instance_hellfire_ramparts.cpp" - > - </File> - </Filter> - <Filter - Name="Shattered Halls" - > - <File - RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\boss_nethekurse.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\boss_warbringer_omrogg.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\boss_warchief_kargath_bladefist.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\def_shattered_halls.h" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\instance_shattered_halls.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="Tempest Keep" - > - <Filter - Name="Arcatraz" - > - <File - RelativePath="..\scripts\outland\tempest_keep\arcatraz\arcatraz.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\arcatraz\boss_harbinger_skyriss.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\arcatraz\def_arcatraz.h" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\arcatraz\instance_arcatraz.cpp" - > - </File> - </Filter> - <Filter - Name="Botanica" - > - <File - RelativePath="..\scripts\outland\tempest_keep\botanica\boss_high_botanist_freywinn.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\botanica\boss_laj.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\botanica\boss_warp_splinter.cpp" - > - </File> - </Filter> - <Filter - Name="The Eye" - > - <File - RelativePath="..\scripts\outland\tempest_keep\the_eye\boss_alar.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_eye\boss_astromancer.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_eye\boss_kaelthas.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_eye\boss_void_reaver.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_eye\def_the_eye.h" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_eye\instance_the_eye.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_eye\the_eye.cpp" - > - </File> - </Filter> - <Filter - Name="The Mechanar" - > - <File - RelativePath="..\scripts\outland\tempest_keep\the_mechanar\boss_gatewatcher_gyrokill.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_mechanar\boss_gatewatcher_ironhand.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_mechanar\boss_nethermancer_sepethrea.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_mechanar\boss_pathaleon_the_calculator.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_mechanar\def_mechanar.h" - > - </File> - <File - RelativePath="..\scripts\outland\tempest_keep\the_mechanar\instance_mechanar.cpp" - > - </File> - </Filter> - </Filter> - <File - RelativePath="..\scripts\outland\blades_edge_mountains.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\boss_doomlord_kazzak.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\boss_doomwalker.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\hellfire_peninsula.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\nagrand.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\netherstorm.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\shadowmoon_valley.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\shattrath_city.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\terokkar_forest.cpp" - > - </File> - <File - RelativePath="..\scripts\outland\zangarmarsh.cpp" - > - </File> - </Filter> - <Filter - Name="custom" - > - <File - RelativePath="..\scripts\custom\npc_acherus_taxi.cpp" - > - </File> - <File - RelativePath="..\scripts\custom\npc_wyrmresttempel_taxi.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="world" - > - <File - RelativePath="..\scripts\world\areatrigger_scripts.cpp" - > - </File> - <File - RelativePath="..\scripts\world\boss_emeriss.cpp" - > - </File> - <File - RelativePath="..\scripts\world\boss_lethon.cpp" - > - </File> - <File - RelativePath="..\scripts\world\boss_taerar.cpp" - > - </File> - <File - RelativePath="..\scripts\world\boss_ysondre.cpp" - > - </File> - <File - RelativePath="..\scripts\world\go_scripts.cpp" - > - </File> - <File - RelativePath="..\scripts\world\guards.cpp" - > - </File> - <File - RelativePath="..\scripts\world\item_scripts.cpp" - > - </File> - <File - RelativePath="..\scripts\world\mob_generic_creature.cpp" - > - </File> - <File - RelativePath="..\scripts\world\npc_innkeeper.cpp" - > - </File> - <File - RelativePath="..\scripts\world\npc_professions.cpp" - > - </File> - <File - RelativePath="..\scripts\world\npc_taxi.cpp" - > - </File> - <File - RelativePath="..\scripts\world\npcs_special.cpp" - > - </File> - </Filter> + <Filter + Name="base" + > + <File + RelativePath="..\base\escort_ai.cpp" + > + </File> + <File + RelativePath="..\base\escort_ai.h" + > + </File> + <File + RelativePath="..\base\follower_ai.cpp" + > + </File> + <File + RelativePath="..\base\follower_ai.h" + > + </File> + <File + RelativePath="..\base\guard_ai.cpp" + > + </File> + <File + RelativePath="..\base\guard_ai.h" + > + </File> + <File + RelativePath="..\base\simple_ai.cpp" + > + </File> + <File + RelativePath="..\base\simple_ai.h" + > + </File> + </Filter> + <Filter + Name="scripts" + > + <Filter + Name="eastern_kingdoms" + > + <Filter + Name="Blackrock Depths" + > + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\blackrock_depths.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_ambassador_flamelash.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_anubshiah.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_emperor_dagran_thaurissan.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_general_angerforge.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_gorosh_the_dervish.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_grizzle.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_high_interrogator_gerstahn.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_magmus.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_moira_bronzebeard.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\boss_tomb_of_seven.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\def_blackrock_depths.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_depths\instance_blackrock_depths.cpp" + > + </File> + </Filter> + <Filter + Name="Blackrock Spire" + > + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_drakkisath.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_gyth.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_halycon.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_highlord_omokk.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_mother_smolderweb.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_overlord_wyrmthalak.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_pyroguard_emberseer.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_quartermaster_zigris.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_rend_blackhand.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_shadow_hunter_voshgajin.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_the_beast.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackrock_spire\boss_warmaster_voone.cpp" + > + </File> + </Filter> + <Filter + Name="Blackwing Lair" + > + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_broodlord_lashlayer.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_chromaggus.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_ebonroc.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_firemaw.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_flamegor.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_nefarian.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_razorgore.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_vaelastrasz.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\boss_victor_nefarius.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blackwing_lair\instance_blackwing_lair.cpp" + > + </File> + </Filter> + <Filter + Name="Deadmines" + > + <File + RelativePath="..\scripts\eastern_kingdoms\deadmines\deadmines.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\deadmines\def_deadmines.h" + > + </File> + </Filter> + <Filter + Name="Karazhan" + > + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_curator.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_maiden_of_virtue.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_midnight.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_moroes.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_netherspite.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_nightbane.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_prince_malchezaar.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_shade_of_aran.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\boss_terestian_illhoof.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\bosses_opera.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\def_karazhan.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\instance_karazhan.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\karazhan\karazhan.cpp" + > + </File> + </Filter> + <Filter + Name="Magister's Terrace" + > + <File + RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\boss_felblood_kaelthas.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\boss_priestess_delrissa.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\boss_selin_fireheart.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\boss_vexallus.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\def_magisters_terrace.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\instance_magisters_terrace.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\magisters_terrace\magisters_terrace.cpp" + > + </File> + </Filter> + <Filter + Name="Molten Core" + > + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_baron_geddon.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_garr.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_gehennas.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_golemagg.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_lucifron.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_magmadar.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_majordomo_executus.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_ragnaros.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_shazzrah.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\boss_sulfuron_harbinger.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\def_molten_core.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\instance_molten_core.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\molten_core\molten_core.cpp" + > + </File> + </Filter> + <Filter + Name="scarlet_enclave" + > + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_enclave\the_scarlet_enclave.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_enclave\chapter1.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_enclave\chapter2.cpp" + > + </File> + </Filter> + <Filter + Name="Scarlet Monastery" + > + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_arcanist_doan.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_azshir_the_sleepless.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_bloodmage_thalnos.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_headless_horseman.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_herod.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_high_inquisitor_fairbanks.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_houndmaster_loksey.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_interrogator_vishas.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_mograine_and_whitemane.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\boss_scorn.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\def_scarlet_monastery.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scarlet_monastery\instance_scarlet_monastery.cpp" + > + </File> + </Filter> + <Filter + Name="Scholomance" + > + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_darkmaster_gandling.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_death_knight_darkreaver.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_doctor_theolen_krastinov.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_illucia_barov.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_instructor_malicia.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_jandice_barov.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_kormok.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_lord_alexei_barov.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_lorekeeper_polkelt.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_ras_frostwhisper.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_the_ravenian.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\boss_vectus.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\def_scholomance.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\scholomance\instance_scholomance.cpp" + > + </File> + </Filter> + <Filter + Name="Shadowfang Keep" + > + <File + RelativePath="..\scripts\eastern_kingdoms\shadowfang_keep\def_shadowfang_keep.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\shadowfang_keep\instance_shadowfang_keep.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\shadowfang_keep\shadowfang_keep.cpp" + > + </File> + </Filter> + <Filter + Name="Stratholme" + > + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_baron_rivendare.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_baroness_anastari.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_cannon_master_willey.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_dathrohan_balnazzar.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_magistrate_barthilas.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_maleki_the_pallid.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_nerubenkan.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_order_of_silver_hand.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_postmaster_malown.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_ramstein_the_gorger.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\boss_timmy_the_cruel.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\def_stratholme.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\instance_stratholme.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stratholme\stratholme.cpp" + > + </File> + </Filter> + <Filter + Name="Sunwell Plateau" + > + <File + RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_brutallus.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_eredar_twins.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_felmyst.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_kalecgos.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_kiljaeden.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\boss_muru.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\def_sunwell_plateau.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\instance_sunwell_plateau.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\sunwell_plateau\sunwell_plateau.cpp" + > + </File> + </Filter> + <Filter + Name="Uldaman" + > + <File + RelativePath="..\scripts\eastern_kingdoms\uldaman\boss_archaedas.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\uldaman\boss_ironaya.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\uldaman\instance_uldaman.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\uldaman\uldaman.cpp" + > + </File> + </Filter> + <Filter + Name="Zul'Aman" + > + <File + RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_akilzon.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_halazzi.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_hexlord.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_janalai.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_nalorakk.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulaman\boss_zuljin.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulaman\def_zulaman.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulaman\instance_zulaman.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulaman\zulaman.cpp" + > + </File> + </Filter> + <Filter + Name="Zul'Gurub" + > + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_arlokk.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_gahzranka.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_grilek.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_hakkar.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_hazzarah.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_jeklik.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_jindo.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_mandokir.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_marli.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_renataki.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_thekal.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_venoxis.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\boss_wushoolay.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\def_zulgurub.h" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\zulgurub\instance_zulgurub.cpp" + > + </File> + </Filter> + <File + RelativePath="..\scripts\eastern_kingdoms\alterac_mountains.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\arathi_highlands.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\blasted_lands.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\boss_kruul.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\burning_steppes.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\dun_morogh.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\eastern_plaguelands.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\elwynn_forest.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\eversong_woods.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\ghostlands.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\hinterlands.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\ironforge.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\isle_of_queldanas.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\loch_modan.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\searing_gorge.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\silvermoon_city.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\silverpine_forest.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stormwind_city.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\stranglethorn_vale.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\tirisfal_glades.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\undercity.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\western_plaguelands.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\westfall.cpp" + > + </File> + <File + RelativePath="..\scripts\eastern_kingdoms\wetlands.cpp" + > + </File> + </Filter> + <Filter + Name="examples" + > + <File + RelativePath="..\scripts\examples\example_creature.cpp" + > + </File> + <File + RelativePath="..\scripts\examples\example_escort.cpp" + > + </File> + <File + RelativePath="..\scripts\examples\example_gossip_codebox.cpp" + > + </File> + <File + RelativePath="..\scripts\examples\example_misc.cpp" + > + </File> + </Filter> + <Filter + Name="kalimdor" + > + <Filter + Name="Blackfathom Depths" + > + <File + RelativePath="..\scripts\kalimdor\blackfathom_depths\instance_blackfathom_deeps.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\blackfathom_depths\def_blackfathom_deeps.h" + > + </File> + </Filter> + <Filter + Name="Caverns of Time" + > + <Filter + Name="Culling of Stratholme" + > + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\boss_epoch.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\boss_mal_ganis.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\boss_meathook.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\boss_salramm.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\def_culling_of_stratholme.h" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\culling_of_stratholme\instance_culling_of_stratholme.cpp" + > + </File> + </Filter> + <Filter + Name="The Dark Portal" + > + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\boss_aeonus.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\boss_chrono_lord_deja.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\boss_temporus.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\dark_portal.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\def_dark_portal.h" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\dark_portal\instance_dark_portal.cpp" + > + </File> + </Filter> + <Filter + Name="Battle for Mt. Hyjal" + > + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_anetheron.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_archimonde.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_azgalor.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_kazrogal.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\boss_rage_winterchill.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\def_hyjal.h" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjal.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjal_trash.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjal_trash.h" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjalAI.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\hyjalAI.h" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\hyjal\instance_hyjal.cpp" + > + </File> + </Filter> + <Filter + Name="Old Hillsbrad" + > + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\boss_captain_skarloc.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\boss_epoch_hunter.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\boss_leutenant_drake.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\def_old_hillsbrad.h" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\instance_old_hillsbrad.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\caverns_of_time\old_hillsbrad\old_hillsbrad.cpp" + > + </File> + </Filter> + </Filter> + <Filter + Name="Maraudon" + > + <File + RelativePath="..\scripts\kalimdor\maraudon\boss_celebras_the_cursed.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\maraudon\boss_landslide.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\maraudon\boss_noxxion.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\maraudon\boss_princess_theradras.cpp" + > + </File> + </Filter> + <Filter + Name="Onyxia's Lair" + > + <File + RelativePath="..\scripts\kalimdor\onyxias_lair\boss_onyxia.cpp" + > + </File> + </Filter> + <Filter + Name="Razorfen Downs" + > + <File + RelativePath="..\scripts\kalimdor\razorfen_downs\boss_amnennar_the_coldbringer.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\razorfen_downs\razorfen_downs.cpp" + > + </File> + </Filter> + <Filter + Name="Razorfen Kraul" + > + <File + RelativePath="..\scripts\kalimdor\razorfen_kraul\razorfen_kraul.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\razorfen_kraul\instance_razorfen_kraul.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\razorfen_kraul\def_razorfen_kraul.h" + > + </File> + </Filter> + <Filter + Name="Ruins of Ahn'Qiraj" + > + <File + RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_ayamiss.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_buru.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_kurinnaxx.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_moam.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_ossirian.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\boss_rajaxx.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\ruins_of_ahnqiraj\instance_ruins_of_ahnqiraj.cpp" + > + </File> + </Filter> + <Filter + Name="Temple of Ahn'Qiraj" + > + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_bug_trio.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_cthun.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_fankriss.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_huhuran.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_ouro.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_sartura.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_skeram.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_twinemperors.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\boss_viscidus.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\def_temple_of_ahnqiraj.h" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\instance_temple_of_ahnqiraj.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\temple_of_ahnqiraj\mob_anubisath_sentinel.cpp" + > + </File> + </Filter> + <Filter + Name="Wailing Caverns" + > + <File + RelativePath="..\scripts\kalimdor\wailing_caverns\def_wailing_caverns.h" + > + </File> + <File + RelativePath="..\scripts\kalimdor\wailing_caverns\instance_wailing_caverns.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\wailing_caverns\wailing_caverns.cpp" + > + </File> + </Filter> + <Filter + Name="Zul'Farrak" + > + <File + RelativePath="..\scripts\kalimdor\zulfarrak\zulfarrak.cpp" + > + </File> + </Filter> + <File + RelativePath="..\scripts\kalimdor\ashenvale.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\azshara.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\azuremyst_isle.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\bloodmyst_isle.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\boss_azuregos.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\darkshore.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\desolace.cpp"> + </File> + <File + RelativePath="..\scripts\kalimdor\dustwallow_marsh.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\felwood.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\feralas.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\moonglade.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\mulgore.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\orgrimmar.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\silithus.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\stonetalon_mountains.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\tanaris.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\teldrassil.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\the_barrens.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\thousand_needles.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\thunder_bluff.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\ungoro_crater.cpp" + > + </File> + <File + RelativePath="..\scripts\kalimdor\winterspring.cpp" + > + </File> + </Filter> + <Filter + Name="northrend" + > + <Filter + Name="Azjol-Nerub" + > + <Filter + Name="Ahn'kahet" + > + <File + RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_amanitar.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_elder_nadox.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_herald_volazj.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_jedoga_shadowseeker.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\boss_prince_taldaram.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\def_ahnkahet.h" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\ahnkahet\instance_ahnkahet.cpp" + > + </File> + </Filter> + <Filter + Name="Azjol-Nerub" + > + <File + RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\boss_anubarak.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\boss_hadronox.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\boss_krikthir_the_gatewatcher.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\def_azjol_nerub.h" + > + </File> + <File + RelativePath="..\scripts\northrend\azjol_nerub\azjol_nerub\instance_azjol_nerub.cpp" + > + </File> + </Filter> + </Filter> + <Filter + Name="Drak'Tharon Keep" + > + <File + RelativePath="..\scripts\northrend\draktharon_keep\boss_dred.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\draktharon_keep\boss_novos.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\draktharon_keep\boss_tharon_ja.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\draktharon_keep\boss_trollgore.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\draktharon_keep\def_drak_tharon_keep.h" + > + </File> + <File + RelativePath="..\scripts\northrend\draktharon_keep\instance_drak_tharon_keep.cpp" + > + </File> + </Filter> + <Filter + Name="Gundrak" + > + <File + RelativePath="..\scripts\northrend\gundrak\boss_drakkari_colossus.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\gundrak\boss_eck.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\gundrak\boss_gal_darah.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\gundrak\boss_moorabi.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\gundrak\boss_slad_ran.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\gundrak\def_gundrak.h" + > + </File> + <File + RelativePath="..\scripts\northrend\gundrak\instance_gundrak.cpp" + > + </File> + </Filter> + <Filter + Name="Naxxramas" + > + <File + RelativePath="..\scripts\northrend\naxxramas\boss_anubrekhan.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_faerlina.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_four_horsemen.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_gluth.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_gothik.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_grobbulus.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_heigan.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_kelthuzad.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_loatheb.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_maexxna.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_noth.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_patchwerk.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_razuvious.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_sapphiron.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\boss_thaddius.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\def_naxxramas.h" + > + </File> + <File + RelativePath="..\scripts\northrend\naxxramas\instance_naxxramas.cpp" + > + </File> + </Filter> + <Filter + Name="Nexus" + > + <Filter + Name="Nexus" + > + <File + RelativePath="..\scripts\northrend\nexus\nexus\boss_anomalus.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\nexus\boss_keristrasza.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\nexus\boss_magus_telestra.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\nexus\boss_ormorok.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\nexus\commander_kolurg.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\nexus\commander_stoutbeard.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\nexus\def_nexus.h" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\nexus\instance_nexus.cpp" + > + </File> + </Filter> + <Filter + Name="Oculus" + > + <File + RelativePath="..\scripts\northrend\nexus\oculus\boss_drakos.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\oculus\boss_eregos.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\oculus\boss_urom.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\oculus\boss_varos.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\oculus\def_oculus.h" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\oculus\instance_oculus.cpp" + > + </File> + </Filter> + <Filter + Name="Eye of Eternity" + > + <File + RelativePath="..\scripts\northrend\nexus\eye_of_eternity\boss_malygos.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\eye_of_eternity\def_eye_of_eternity.h" + > + </File> + <File + RelativePath="..\scripts\northrend\nexus\eye_of_eternity\instance_eye_of_eternity.cpp" + > + </File> + </Filter> + </Filter> + <Filter + Name="Obsidian Sanctum" + > + <File + RelativePath="..\scripts\northrend\obsidian_sanctum\boss_sartharion.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\obsidian_sanctum\def_obsidian_sanctum.h" + > + </File> + <File + RelativePath="..\scripts\northrend\obsidian_sanctum\instance_obsidian_sanctum.cpp" + > + </File> + </Filter> + <Filter + Name="Ulduar" + > + <Filter + Name="Halls of Stone" + > + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_stone\boss_krystallus.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_stone\boss_maiden_of_grief.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_stone\boss_sjonnir.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_stone\def_halls_of_stone.h" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_stone\instance_halls_of_stone.cpp" + > + </File> + </Filter> + <Filter + Name="Halls of Lightning" + > + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\boss_bjarngrim.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\boss_ionar.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\boss_loken.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\boss_volkhan.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\def_halls_of_lightning.h" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\halls_of_lightning\instance_halls_of_lightning.cpp" + > + </File> + </Filter> + <Filter + Name="Ulduar" + > + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_algalon.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_assembly_of_iron.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_auriaya.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_flame_leviathan.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_freya.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_general_vezax.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_hodir.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_ignis.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_kologarn.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_mimiron.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_razorscale.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_thorim.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_xt002.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\boss_yoggsaron.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\def_ulduar.h" + > + </File> + <File + RelativePath="..\scripts\northrend\ulduar\ulduar\instance_ulduar.cpp" + > + </File> + </Filter> + </Filter> + <Filter + Name="Utgarde Keep" + > + <Filter + Name="Utgarde Keep" + > + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\boss_ingvar_the_plunderer.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\boss_keleseth.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\boss_skarvald_dalronn.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\def_utgarde_keep.h" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\instance_utgarde_keep.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_keep\utgarde_keep.cpp" + > + </File> + </Filter> + <Filter + Name="Utgarde Pinnacle" + > + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\boss_palehoof.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\boss_skadi.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\boss_svala.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\boss_ymiron.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\def_pinnacle.h" + > + </File> + <File + RelativePath="..\scripts\northrend\utgarde_keep\utgarde_pinnacle\instance_pinnacle.cpp" + > + </File> + </Filter> + </Filter> + <Filter + Name="Vault of Archavon" + > + <File + RelativePath="..\scripts\northrend\vault_of_archavon\boss_archavon.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\vault_of_archavon\boss_emalon.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\vault_of_archavon\def_vault_of_archavon.h" + > + </File> + <File + RelativePath="..\scripts\northrend\vault_of_archavon\instance_vault_of_archavon.cpp" + > + </File> + </Filter> + <Filter + Name="Violet Hold" + > + <File + RelativePath="..\scripts\northrend\violet_hold\boss_cyanigosa.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\violet_hold\boss_erekem.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\violet_hold\boss_ichoron.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\violet_hold\boss_lavanthor.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\violet_hold\boss_moragg.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\violet_hold\boss_xevozz.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\violet_hold\boss_zuramat.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\violet_hold\def_violet_hold.h" + > + </File> + <File + RelativePath="..\scripts\northrend\violet_hold\instance_violet_hold.cpp" + > + </File> + </Filter> + <File + RelativePath="..\scripts\northrend\borean_tundra.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\dragonblight.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\grizzly_hills.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\icecrown.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\sholazar_basin.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\wintergrasp.cpp" + > + </File> + <File + RelativePath="..\scripts\northrend\zuldrak.cpp" + > + </File> + </Filter> + <Filter + Name="outland" + > + <Filter + Name="Aunchindoun" + > + <Filter + Name="Auchenai Crypts" + > + <File + RelativePath="..\scripts\outland\auchindoun\auchenai_crypts\boss_exarch_maladaar.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\auchenai_crypts\boss_shirrak_the_dead_watcher.cpp" + > + </File> + </Filter> + <Filter + Name="Mana Tombs" + > + <File + RelativePath="..\scripts\outland\auchindoun\mana_tombs\boss_nexusprince_shaffar.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\mana_tombs\boss_pandemonius.cpp" + > + </File> + </Filter> + <Filter + Name="Sethekk Halls" + > + <File + RelativePath="..\scripts\outland\auchindoun\sethekk_halls\boss_darkweaver_syth.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\sethekk_halls\boss_tailonking_ikiss.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\sethekk_halls\def_sethekk_halls.h" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\sethekk_halls\instance_sethekk_halls.cpp" + > + </File> + </Filter> + <Filter + Name="Shadow Labyrinth" + > + <File + RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\boss_ambassador_hellmaw.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\boss_blackheart_the_inciter.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\boss_grandmaster_vorpil.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\boss_murmur.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\def_shadow_labyrinth.h" + > + </File> + <File + RelativePath="..\scripts\outland\auchindoun\shadow_labyrinth\instance_shadow_labyrinth.cpp" + > + </File> + </Filter> + </Filter> + <Filter + Name="Black Temple" + > + <File + RelativePath="..\scripts\outland\black_temple\black_temple.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\boss_bloodboil.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\boss_illidan.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\boss_mother_shahraz.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\boss_reliquary_of_souls.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\boss_shade_of_akama.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\boss_supremus.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\boss_teron_gorefiend.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\boss_warlord_najentus.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\def_black_temple.h" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\illidari_council.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\black_temple\instance_black_temple.cpp" + > + </File> + </Filter> + <Filter + Name="Coilfang Resevoir" + > + <Filter + Name="Serpent Shrine Cavern" + > + <File + RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_fathomlord_karathress.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_hydross_the_unstable.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_lady_vashj.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_leotheras_the_blind.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_lurker_below.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\boss_morogrim_tidewalker.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\def_serpent_shrine.h" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\serpent_shrine\instance_serpent_shrine.cpp" + > + </File> + </Filter> + <Filter + Name="Steam Vault" + > + <File + RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\boss_hydromancer_thespia.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\boss_mekgineer_steamrigger.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\boss_warlord_kalithresh.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\def_steam_vault.h" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\steam_vault\instance_steam_vault.cpp" + > + </File> + </Filter> + <Filter + Name="Underbog" + > + <File + RelativePath="..\scripts\outland\coilfang_resevoir\underbog\boss_hungarfen.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\coilfang_resevoir\underbog\boss_the_black_stalker.cpp" + > + </File> + </Filter> + </Filter> + <Filter + Name="Gruul's Lair" + > + <File + RelativePath="..\scripts\outland\gruuls_lair\boss_gruul.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\gruuls_lair\boss_high_king_maulgar.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\gruuls_lair\def_gruuls_lair.h" + > + </File> + <File + RelativePath="..\scripts\outland\gruuls_lair\instance_gruuls_lair.cpp" + > + </File> + </Filter> + <Filter + Name="Hellfire Citadel" + > + <Filter + Name="Blood Furnace" + > + <File + RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\boss_broggok.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\boss_kelidan_the_breaker.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\boss_the_maker.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\def_blood_furnace.h" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\blood_furnace\instance_blood_furnace.cpp" + > + </File> + </Filter> + <Filter + Name="Magtheridon's lair" + > + <File + RelativePath="..\scripts\outland\hellfire_citadel\magtheridons_lair\boss_magtheridon.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\magtheridons_lair\def_magtheridons_lair.h" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\magtheridons_lair\instance_magtheridons_lair.cpp" + > + </File> + </Filter> + <Filter + Name="Hellfire Ramparts" + > + <File + RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\boss_omor_the_unscarred.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\boss_vazruden_the_herald.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\boss_watchkeeper_gargolmar.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\def_hellfire_ramparts.h" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\hellfire_ramparts\instance_hellfire_ramparts.cpp" + > + </File> + </Filter> + <Filter + Name="Shattered Halls" + > + <File + RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\boss_nethekurse.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\boss_warbringer_omrogg.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\boss_warchief_kargath_bladefist.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\def_shattered_halls.h" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_citadel\shattered_halls\instance_shattered_halls.cpp" + > + </File> + </Filter> + </Filter> + <Filter + Name="Tempest Keep" + > + <Filter + Name="Arcatraz" + > + <File + RelativePath="..\scripts\outland\tempest_keep\arcatraz\arcatraz.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\arcatraz\boss_harbinger_skyriss.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\arcatraz\def_arcatraz.h" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\arcatraz\instance_arcatraz.cpp" + > + </File> + </Filter> + <Filter + Name="Botanica" + > + <File + RelativePath="..\scripts\outland\tempest_keep\botanica\boss_high_botanist_freywinn.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\botanica\boss_laj.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\botanica\boss_warp_splinter.cpp" + > + </File> + </Filter> + <Filter + Name="The Eye" + > + <File + RelativePath="..\scripts\outland\tempest_keep\the_eye\boss_alar.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_eye\boss_astromancer.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_eye\boss_kaelthas.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_eye\boss_void_reaver.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_eye\def_the_eye.h" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_eye\instance_the_eye.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_eye\the_eye.cpp" + > + </File> + </Filter> + <Filter + Name="The Mechanar" + > + <File + RelativePath="..\scripts\outland\tempest_keep\the_mechanar\boss_gatewatcher_gyrokill.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_mechanar\boss_gatewatcher_ironhand.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_mechanar\boss_nethermancer_sepethrea.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_mechanar\boss_pathaleon_the_calculator.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_mechanar\def_mechanar.h" + > + </File> + <File + RelativePath="..\scripts\outland\tempest_keep\the_mechanar\instance_mechanar.cpp" + > + </File> + </Filter> + </Filter> + <File + RelativePath="..\scripts\outland\blades_edge_mountains.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\boss_doomlord_kazzak.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\boss_doomwalker.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\hellfire_peninsula.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\nagrand.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\netherstorm.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\shadowmoon_valley.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\shattrath_city.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\terokkar_forest.cpp" + > + </File> + <File + RelativePath="..\scripts\outland\zangarmarsh.cpp" + > + </File> + </Filter> + <Filter + Name="custom" + > + <File + RelativePath="..\scripts\custom\npc_acherus_taxi.cpp" + > + </File> + <File + RelativePath="..\scripts\custom\npc_wyrmresttempel_taxi.cpp" + > + </File> + </Filter> + </Filter> + <Filter + Name="world" + > + <File + RelativePath="..\scripts\world\areatrigger_scripts.cpp" + > + </File> + <File + RelativePath="..\scripts\world\boss_emeriss.cpp" + > + </File> + <File + RelativePath="..\scripts\world\boss_lethon.cpp" + > + </File> + <File + RelativePath="..\scripts\world\boss_taerar.cpp" + > + </File> + <File + RelativePath="..\scripts\world\boss_ysondre.cpp" + > + </File> + <File + RelativePath="..\scripts\world\go_scripts.cpp" + > + </File> + <File + RelativePath="..\scripts\world\guards.cpp" + > + </File> + <File + RelativePath="..\scripts\world\item_scripts.cpp" + > + </File> + <File + RelativePath="..\scripts\world\mob_generic_creature.cpp" + > + </File> + <File + RelativePath="..\scripts\world\npc_innkeeper.cpp" + > + </File> + <File + RelativePath="..\scripts\world\npc_professions.cpp" + > + </File> + <File + RelativePath="..\scripts\world\npc_taxi.cpp" + > + </File> + <File + RelativePath="..\scripts\world\npcs_special.cpp" + > + </File> + </Filter> <Filter Name="Include" > @@ -2752,26 +2760,26 @@ > </File> </Filter> - <Filter - Name="system" - > - <File - RelativePath="..\system\ScriptLoader.cpp" - > - </File> - <File - RelativePath="..\system\ScriptLoader.h" - > - </File> - <File - RelativePath="..\system\system.cpp" - > - </File> - <File - RelativePath="..\system\system.h" - > - </File> - </Filter> + <Filter + Name="system" + > + <File + RelativePath="..\system\ScriptLoader.cpp" + > + </File> + <File + RelativePath="..\system\ScriptLoader.h" + > + </File> + <File + RelativePath="..\system\system.cpp" + > + </File> + <File + RelativePath="..\system\system.h" + > + </File> + </Filter> <File RelativePath="..\ScriptMgr.cpp" > diff --git a/src/bindings/scripts/scripts/eastern_kingdoms/scarlet_enclave/chapter1.cpp b/src/bindings/scripts/scripts/eastern_kingdoms/scarlet_enclave/chapter1.cpp new file mode 100644 index 00000000000..9b086ea0853 --- /dev/null +++ b/src/bindings/scripts/scripts/eastern_kingdoms/scarlet_enclave/chapter1.cpp @@ -0,0 +1,973 @@ +/* + * Copyright (C) 2009 Trinity <http://www.trinitycore.org/> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#include "precompiled.h" +#include "Vehicle.h" +#include "ObjectMgr.h" +#include "escort_ai.h" + +/*###### +##Quest 12848 +######*/ + +#define GCD_CAST 1 + +enum +{ + SPELL_SOUL_PRISON_CHAIN_SELF = 54612, + SPELL_SOUL_PRISON_CHAIN = 54613, + SPELL_DK_INITIATE_VISUAL = 51519, + + SPELL_ICY_TOUCH = 52372, + SPELL_PLAGUE_STRIKE = 52373, + SPELL_BLOOD_STRIKE = 52374, + SPELL_DEATH_COIL = 52375 +}; + +#define EVENT_ICY_TOUCH 1 +#define EVENT_PLAGUE_STRIKE 2 +#define EVENT_BLOOD_STRIKE 3 +#define EVENT_DEATH_COIL 4 + +int32 say_event_start[8] = +{ + -1609000,-1609001,-1609002,-1609003, + -1609004,-1609005,-1609006,-1609007 +}; + +int32 say_event_attack[9] = +{ + -1609008,-1609009,-1609010,-1609011,-1609012, + -1609013,-1609014,-1609015,-1609016 +}; + +uint32 acherus_soul_prison[12] = +{ + 191577, + 191580, + 191581, + 191582, + 191583, + 191584, + 191585, + 191586, + 191587, + 191588, + 191589, + 191590 +}; + +uint32 acherus_unworthy_initiate[5] = +{ + 29519, + 29520, + 29565, + 29566, + 29567 +}; + +enum UnworthyInitiatePhase +{ + PHASE_CHAINED, + PHASE_TO_EQUIP, + PHASE_EQUIPING, + PHASE_TO_ATTACK, + PHASE_ATTACKING, +}; + +struct TRINITY_DLL_DECL npc_unworthy_initiateAI : public ScriptedAI +{ + npc_unworthy_initiateAI(Creature *c) : ScriptedAI(c) + { + me->SetReactState(REACT_PASSIVE); + if (!me->GetEquipmentId()) + if (const CreatureInfo *info = GetCreatureInfo(28406)) + if (info->equipmentId) + const_cast<CreatureInfo*>(me->GetCreatureInfo())->equipmentId = info->equipmentId; + } + + bool event_startet; + uint64 event_starter; + UnworthyInitiatePhase phase; + uint32 wait_timer; + float targ_x,targ_y,targ_z; + uint64 anchorGUID; + + EventMap events; + + void Reset() + { + anchorGUID = 0; + phase = PHASE_CHAINED; + events.Reset(); + m_creature->setFaction(7); + m_creature->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_ATTACKABLE_2); + m_creature->SetUInt32Value(UNIT_FIELD_BYTES_1, 8); + me->LoadEquipment(0, true); + event_startet = false; + } + + void EnterCombat(Unit *who) + { + events.ScheduleEvent(EVENT_ICY_TOUCH, 1000, GCD_CAST); + events.ScheduleEvent(EVENT_PLAGUE_STRIKE, 3000, GCD_CAST); + events.ScheduleEvent(EVENT_BLOOD_STRIKE, 2000, GCD_CAST); + events.ScheduleEvent(EVENT_DEATH_COIL, 5000, GCD_CAST); + } + + void MovementInform(uint32 type, uint32 id) + { + if (type != POINT_MOTION_TYPE) + return; + + if (id == 1) + { + wait_timer = 5000; + m_creature->CastSpell(m_creature,SPELL_DK_INITIATE_VISUAL,true); + + if (Unit* starter = Unit::GetUnit((*m_creature),event_starter)) + DoScriptText(say_event_attack[rand()%9],m_creature,starter); + + phase = PHASE_TO_ATTACK; + } + } + + void EventStart(Creature* anchor, Player* target) + { + wait_timer = 5000; + phase = PHASE_TO_EQUIP; + + m_creature->SetUInt32Value(UNIT_FIELD_BYTES_1, 0); + m_creature->RemoveAurasDueToSpell(SPELL_SOUL_PRISON_CHAIN_SELF); + m_creature->RemoveAurasDueToSpell(SPELL_SOUL_PRISON_CHAIN); + + float z; + anchor->GetContactPoint(me, targ_x, targ_y, z, 1.0f); + + event_starter = target->GetGUID(); + DoScriptText(say_event_start[rand()%8], m_creature, target); + } + + void UpdateAI(const uint32 diff); +}; + +CreatureAI* GetAI_npc_unworthy_initiate(Creature* pCreature) +{ + return new npc_unworthy_initiateAI(pCreature); +} + +struct TRINITY_DLL_DECL npc_unworthy_initiate_anchorAI : public PassiveAI +{ + npc_unworthy_initiate_anchorAI(Creature *c) : PassiveAI(c), prisonerGUID(0) {} + + uint64 prisonerGUID; + + void SetGUID(const uint64 &guid, int32 id) + { + if (!prisonerGUID) + prisonerGUID = guid; + } + + uint64 GetGUID(int32 id) { return prisonerGUID; } +}; + +void npc_unworthy_initiateAI::UpdateAI(const uint32 diff) +{ + switch(phase) + { + case PHASE_CHAINED: + if (!anchorGUID) + { + float x, y, z; + float dist = 99.0f; + GameObject *prison = NULL; + + for(uint8 i = 0; i < 12; ++i) + { + if (GameObject* temp_prison = m_creature->FindNearestGameObject(acherus_soul_prison[i],30)) + { + if (dist == 99.0f || m_creature->IsWithinDist(temp_prison, dist, false)) + { + temp_prison->GetPosition(x, y, z); + dist = m_creature->GetDistance2d(temp_prison); + prison = temp_prison; + } + } + } + + if (!prison) + return; + + prison->ResetDoorOrButton(); + + if (Creature* anchor = me->FindNearestCreature(29521, 30)) + { + anchor->GetPosition(targ_x, targ_y, targ_z); + anchor->AI()->SetGUID(m_creature->GetGUID()); + anchor->CastSpell(me, SPELL_SOUL_PRISON_CHAIN, true); + anchorGUID = anchor->GetGUID(); + } + } + return; + case PHASE_TO_EQUIP: + if (wait_timer) + { + if (wait_timer < diff) + { + m_creature->GetMotionMaster()->MovePoint(1,targ_x,targ_y,m_creature->GetPositionZ()); + phase = PHASE_EQUIPING; + wait_timer = 0; + }else wait_timer -= diff; + } + return; + case PHASE_TO_ATTACK: + if (wait_timer) + { + if (wait_timer < diff) + { + m_creature->setFaction(14); + m_creature->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_ATTACKABLE_2); + phase = PHASE_ATTACKING; + + if (Unit* target = Unit::GetUnit((*m_creature),event_starter)) + m_creature->AI()->AttackStart(target); + wait_timer = 0; + }else wait_timer -= diff; + } + return; + case PHASE_ATTACKING: + if (!UpdateVictim()) + return; + + events.Update(diff); + + while(uint32 eventId = events.ExecuteEvent()) + { + switch(eventId) + { + case EVENT_ICY_TOUCH: + DoCast(m_creature->getVictim(), SPELL_ICY_TOUCH); + events.DelayEvents(1000, GCD_CAST); + events.ScheduleEvent(EVENT_ICY_TOUCH, 5000, GCD_CAST); + break; + case EVENT_PLAGUE_STRIKE: + DoCast(m_creature->getVictim(), SPELL_PLAGUE_STRIKE); + events.DelayEvents(1000, GCD_CAST); + events.ScheduleEvent(SPELL_PLAGUE_STRIKE, 5000, GCD_CAST); + break; + case EVENT_BLOOD_STRIKE: + DoCast(m_creature->getVictim(), SPELL_BLOOD_STRIKE); + events.DelayEvents(1000, GCD_CAST); + events.ScheduleEvent(EVENT_BLOOD_STRIKE, 5000, GCD_CAST); + break; + case EVENT_DEATH_COIL: + DoCast(m_creature->getVictim(), SPELL_DEATH_COIL); + events.DelayEvents(1000, GCD_CAST); + events.ScheduleEvent(EVENT_DEATH_COIL, 5000, GCD_CAST); + break; + } + } + + DoMeleeAttackIfReady(); + return; + } +} + +CreatureAI* GetAI_npc_unworthy_initiate_anchor(Creature* pCreature) +{ + return new npc_unworthy_initiate_anchorAI(pCreature); +} + +bool GOHello_go_acherus_soul_prison(Player* pPlayer, GameObject* pGo) +{ + if (Creature *anchor = pGo->FindNearestCreature(29521, 15)) + if (uint64 prisonerGUID = anchor->AI()->GetGUID()) + if (Creature* prisoner = Creature::GetCreature(*pPlayer, prisonerGUID)) + CAST_AI(npc_unworthy_initiateAI, (prisoner->AI()))->EventStart(anchor, pPlayer); + + return false; +} + +/*###### +## npc_death_knight_initiate +######*/ + +#define GOSSIP_ACCEPT_DUEL "I challenge you, death knight!" + +enum +{ + SAY_DUEL_A = -1609080, + SAY_DUEL_B = -1609081, + SAY_DUEL_C = -1609082, + SAY_DUEL_D = -1609083, + SAY_DUEL_E = -1609084, + SAY_DUEL_F = -1609085, + SAY_DUEL_G = -1609086, + SAY_DUEL_H = -1609087, + SAY_DUEL_I = -1609088, + + SPELL_DUEL = 52996, + SPELL_DUEL_TRIGGERED = 52990, + SPELL_DUEL_VICTORY = 52994, + SPELL_DUEL_FLAG = 52991, + + QUEST_DEATH_CHALLENGE = 12733, + FACTION_HOSTILE = 2068 +}; + +int32 m_auiRandomSay[] = +{ + SAY_DUEL_A, SAY_DUEL_B, SAY_DUEL_C, SAY_DUEL_D, SAY_DUEL_E, SAY_DUEL_F, SAY_DUEL_G, SAY_DUEL_H, SAY_DUEL_I +}; + +struct TRINITY_DLL_DECL npc_death_knight_initiateAI : public SpellAI +{ + npc_death_knight_initiateAI(Creature* pCreature) : SpellAI(pCreature) + { + m_bIsDuelInProgress = false; + } + + bool lose; + uint64 m_uiDuelerGUID; + uint32 m_uiDuelTimer; + bool m_bIsDuelInProgress; + + void Reset() + { + lose = false; + me->RestoreFaction(); + SpellAI::Reset(); + + m_creature->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_UNK_15); + + m_uiDuelerGUID = 0; + m_uiDuelTimer = 5000; + m_bIsDuelInProgress = false; + } + + void SpellHit(Unit* pCaster, const SpellEntry* pSpell) + { + if (!m_bIsDuelInProgress && pSpell->Id == SPELL_DUEL_TRIGGERED) + { + m_uiDuelerGUID = pCaster->GetGUID(); + m_bIsDuelInProgress = true; + } + } + + void DamageTaken(Unit* pDoneBy, uint32 &uiDamage) + { + if (m_bIsDuelInProgress && pDoneBy->IsControlledByPlayer()) + { + if (pDoneBy->GetGUID() != m_uiDuelerGUID && pDoneBy->GetOwnerGUID() != m_uiDuelerGUID) // other players cannot help + uiDamage = 0; + else if (uiDamage >= m_creature->GetHealth()) + { + uiDamage = 0; + + if (!lose) + { + pDoneBy->RemoveGameObject(SPELL_DUEL_FLAG, true); + pDoneBy->AttackStop(); + me->CastSpell(pDoneBy, SPELL_DUEL_VICTORY, true); + lose = true; + me->CastSpell(me, 7267, true); + me->RestoreFaction(); + } + } + } + } + + void UpdateAI(const uint32 uiDiff) + { + if (!UpdateVictim()) + { + if (m_bIsDuelInProgress) + { + if (m_uiDuelTimer < uiDiff) + { + m_creature->setFaction(FACTION_HOSTILE); + + if (Unit* pUnit = Unit::GetUnit(*m_creature, m_uiDuelerGUID)) + AttackStart(pUnit); + } + else + m_uiDuelTimer -= uiDiff; + } + return; + } + + if (m_bIsDuelInProgress) + { + if (lose) + { + if (!me->HasAura(7267)) + EnterEvadeMode(); + return; + } + else if (me->getVictim()->GetTypeId() == TYPEID_PLAYER + && me->getVictim()->GetHealth() * 10 < me->getVictim()->GetMaxHealth()) + { + me->getVictim()->CastSpell(me->getVictim(), 7267, true); // beg + me->getVictim()->RemoveGameObject(SPELL_DUEL_FLAG, true); + EnterEvadeMode(); + return; + } + } + + // TODO: spells + + SpellAI::UpdateAI(uiDiff); + } +}; + +CreatureAI* GetAI_npc_death_knight_initiate(Creature* pCreature) +{ + return new npc_death_knight_initiateAI(pCreature); +} + +bool GossipHello_npc_death_knight_initiate(Player* pPlayer, Creature* pCreature) +{ + if (pPlayer->GetQuestStatus(QUEST_DEATH_CHALLENGE) == QUEST_STATUS_INCOMPLETE && pCreature->GetHealth() == pCreature->GetMaxHealth()) + { + if (pPlayer->GetHealth() * 10 < pPlayer->GetMaxHealth()) + return true; + + if (pPlayer->isInCombat() || pCreature->isInCombat()) + return true; + + pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ACCEPT_DUEL, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF); + pPlayer->SEND_GOSSIP_MENU(pCreature->GetNpcTextId(),pCreature->GetGUID()); + } + return true; +} + +bool GossipSelect_npc_death_knight_initiate(Player* pPlayer, Creature* pCreature, uint32 uiSender, uint32 uiAction) +{ + if (uiAction == GOSSIP_ACTION_INFO_DEF) + { + pPlayer->CLOSE_GOSSIP_MENU(); + + if (pPlayer->isInCombat() || pCreature->isInCombat()) + return true; + + if (npc_death_knight_initiateAI* pInitiateAI = CAST_AI(npc_death_knight_initiateAI, pCreature->AI())) + { + if (pInitiateAI->m_bIsDuelInProgress) + return true; + } + + pCreature->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_UNK_15); + + int32 uiSayId = rand()% (sizeof(m_auiRandomSay)/sizeof(int32)); + DoScriptText(m_auiRandomSay[uiSayId], pCreature, pPlayer); + + pCreature->CastSpell(pPlayer, SPELL_DUEL, false); + pPlayer->CastSpell(pPlayer, SPELL_DUEL_FLAG, true); + } + return true; +} + +/*###### +## npc_dark_rider_of_acherus +######*/ + +#define DESPAWN_HORSE 52267 + +struct TRINITY_DLL_DECL npc_dark_rider_of_acherusAI : public ScriptedAI +{ + npc_dark_rider_of_acherusAI(Creature *c) : ScriptedAI(c) {} + + uint32 PhaseTimer; + uint32 Phase; + bool Intro; + Unit *Target; + + void Reset() + { + PhaseTimer = 4000; + Phase = 0; + Intro = false; + Target = NULL; + } + + void UpdateAI(const uint32 diff) + { + if (!Intro) + return; + + if (PhaseTimer < diff) + { + switch(Phase) + { + case 0: + m_creature->MonsterSay("The realm of shadows awaits...", LANG_UNIVERSAL, 0); + PhaseTimer = 5000; + Phase = 1; + break; + case 1: + DoCast(Target, DESPAWN_HORSE, true); + PhaseTimer = 3000; + Phase = 2; + break; + case 2: + m_creature->SetVisibility(VISIBILITY_OFF); + PhaseTimer = 2000; + Phase = 3; + break; + case 3: + m_creature->ForcedDespawn(); + break; + default: + break; + } + }else PhaseTimer -= diff; + + } + + void InitDespawnHorse(Unit *who) + { + if (!who) + return; + + Target = who; + m_creature->AddUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + m_creature->SetSpeed(MOVE_RUN, 0.4f); + m_creature->GetMotionMaster()->MoveChase(Target); + m_creature->SetUInt64Value(UNIT_FIELD_TARGET, Target->GetGUID()); + Intro = true; + } + +}; + +CreatureAI* GetAI_npc_dark_rider_of_acherus(Creature* pCreature) +{ + return new npc_dark_rider_of_acherusAI(pCreature); +} + +/*###### +## npc_salanar_the_horseman +######*/ + +enum +{ + REALM_OF_SHADOWS = 52693, + DELIVER_STOLEN_HORSE = 52264, + CALL_DARK_RIDER = 52266 +}; + +struct TRINITY_DLL_DECL npc_salanar_the_horsemanAI : public ScriptedAI +{ + npc_salanar_the_horsemanAI(Creature *c) : ScriptedAI(c) {} + + void SpellHit(Unit *caster, const SpellEntry *spell) + { + if (spell->Id == DELIVER_STOLEN_HORSE) + { + if (caster->GetTypeId() == TYPEID_UNIT && CAST_CRE(caster)->isVehicle()) + { + if (Unit *charmer = caster->GetCharmer()) + { + charmer->ExitVehicle(); + caster->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_SPELLCLICK); + caster->setFaction(35); + DoCast(caster, CALL_DARK_RIDER, true); + if (Creature* Dark_Rider = m_creature->FindNearestCreature(28654, 15)) + CAST_AI(npc_dark_rider_of_acherusAI, Dark_Rider->AI())->InitDespawnHorse(caster); + } + } + } + } + + void MoveInLineOfSight(Unit *who) + { + ScriptedAI::MoveInLineOfSight(who); + + if (who->GetTypeId() == TYPEID_UNIT && CAST_CRE(who)->isVehicle() && me->IsWithinDistInMap(who, 10.0f)) + { + if (Unit *charmer = who->GetCharmer()) + { + if (charmer->GetTypeId() == TYPEID_PLAYER) + { + switch(me->GetEntry()) + { + // for quest Into the Realm of Shadows(12687) + case 28788: + if (CAST_PLR(charmer)->GetQuestStatus(12687) == QUEST_STATUS_INCOMPLETE) + { + if (CAST_PLR(charmer)->HasAura(REALM_OF_SHADOWS)) + charmer->RemoveAurasDueToSpell(REALM_OF_SHADOWS); + CAST_PLR(charmer)->GroupEventHappens(12687, me); + } + break; + default: + return; + } + CAST_PLR(charmer)->ExitVehicle(); + CAST_CRE(who)->Respawn(true); + } + } + } + } +}; + +CreatureAI* GetAI_npc_salanar_the_horseman(Creature* pCreature) +{ + return new npc_salanar_the_horsemanAI(pCreature); +} + +/*###### +## npc_ros_dark_rider +######*/ + +struct TRINITY_DLL_DECL npc_ros_dark_riderAI : public ScriptedAI +{ + npc_ros_dark_riderAI(Creature *c) : ScriptedAI(c) {} + + void EnterCombat(Unit *who) + { + me->ExitVehicle(); + } + + void Reset() + { + Creature* deathcharger = me->FindNearestCreature(28782, 30); + if (!deathcharger) return; + deathcharger->RestoreFaction(); + deathcharger->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_SPELLCLICK); + deathcharger->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); + if (!me->m_Vehicle && deathcharger->isVehicle() && CAST_VEH(deathcharger)->HasEmptySeat(0)) + me->EnterVehicle(CAST_VEH(deathcharger)); + } + + void JustDied(Unit *killer) + { + Creature* deathcharger = me->FindNearestCreature(28782, 30); + if (!deathcharger) return; + if (killer->GetTypeId() == TYPEID_PLAYER && deathcharger->GetTypeId() == TYPEID_UNIT && deathcharger->isVehicle()) + { + deathcharger->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_SPELLCLICK); + deathcharger->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); + deathcharger->setFaction(2096); + } + } +}; + +CreatureAI* GetAI_npc_ros_dark_rider(Creature* pCreature) +{ + return new npc_ros_dark_riderAI(pCreature); +} + +// correct way: 52312 52314 52555 ... +struct TRINITY_DLL_DECL npc_dkc1_gothikAI : public ScriptedAI +{ + npc_dkc1_gothikAI(Creature *c) : ScriptedAI(c) {} + + void MoveInLineOfSight(Unit *who) + { + ScriptedAI::MoveInLineOfSight(who); + + if (who->GetEntry() == 28845 && me->IsWithinDistInMap(who, 10.0f)) + { + if (Unit *owner = who->GetOwner()) + { + if (owner->GetTypeId() == TYPEID_PLAYER) + { + if (CAST_PLR(owner)->GetQuestStatus(12698) == QUEST_STATUS_INCOMPLETE) + { + CAST_CRE(who)->CastSpell(owner, 52517, true); + CAST_CRE(who)->ForcedDespawn(); + } + } + } + } + } +}; + +CreatureAI* GetAI_npc_dkc1_gothik(Creature* pCreature) +{ + return new npc_dkc1_gothikAI(pCreature); +} + +/*#### +## npc_scarlet_miner_cart +####*/ + +#define SPELL_CART_CHECK 54173 +#define SPELL_CART_DRAG 52465 + +struct TRINITY_DLL_DECL npc_scarlet_miner_cartAI : public PassiveAI +{ + npc_scarlet_miner_cartAI(Creature *c) : PassiveAI(c), minerGUID(0) + { + me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_ATTACKABLE_2); + me->SetDisplayId(me->GetCreatureInfo()->DisplayID_A[0]); // H0 is horse + } + + uint64 minerGUID; + + void SetGUID(const uint64 &guid, int32 id) + { + minerGUID = guid; + } + + void DoAction(const int32 param) + { + if(Creature *miner = Unit::GetCreature(*me, minerGUID)) + { + // very bad visual effect + me->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + //me->SetSpeed(MOVE_WALK, miner->GetSpeed(MOVE_WALK)); + me->SetSpeed(MOVE_RUN, miner->GetSpeed(MOVE_RUN)); + me->GetMotionMaster()->MoveFollow(miner, 1.0f, 0); + } + } + + void PassengerLeft(Unit *who, int8 seatId) + { + if(Creature *miner = Unit::GetCreature(*me, minerGUID)) + miner->DisappearAndDie(); + } +}; + +CreatureAI* GetAI_npc_scarlet_miner_cart(Creature *_Creature) +{ + return new npc_scarlet_miner_cartAI(_Creature); +} + +/*#### +## npc_scarlet_miner +####*/ + +struct TRINITY_DLL_DECL npc_scarlet_minerAI : public npc_escortAI +{ + npc_scarlet_minerAI(Creature *c) : npc_escortAI(c) + { + me->SetReactState(REACT_PASSIVE); + } + + uint32 IntroTimer; + uint32 IntroPhase; + uint64 carGUID; + + void Reset() + { + carGUID = 0; + IntroTimer = 0; + IntroPhase = 0; + } + + void InitWaypoint() + { + AddWaypoint(1, 2389.03, -5902.74, 109.014, 5000); + AddWaypoint(2, 2341.812012, -5900.484863, 102.619743); + AddWaypoint(3, 2306.561279, -5901.738281, 91.792419 ); + AddWaypoint(4, 2300.098389, -5912.618652, 86.014885 ); + AddWaypoint(5, 2294.142090, -5927.274414, 75.316849 ); + AddWaypoint(6, 2286.984375, -5944.955566, 63.714966 ); + AddWaypoint(7, 2280.001709, -5961.186035, 54.228283 ); + AddWaypoint(8, 2259.389648, -5974.197754, 42.359348 ); + AddWaypoint(9, 2242.882812, -5984.642578, 32.827850 ); + AddWaypoint(10, 2217.265625, -6028.959473, 7.675705 ); + AddWaypoint(11, 2202.595947, -6061.325684, 5.882018 ); + AddWaypoint(12, 2188.974609, -6080.866699, 3.370027 ); + + if(rand()%2) + { + AddWaypoint(13, 2176.483887, -6110.407227, 1.855181 ); + AddWaypoint(14, 2172.516602, -6146.752441, 1.074235 ); + AddWaypoint(15, 2138.918457, -6158.920898, 1.342926 ); + AddWaypoint(16, 2129.866699, -6174.107910, 4.380779 ); + AddWaypoint(17, 2117.709473, -6193.830078, 13.3542, 10000); + } + else + { + AddWaypoint(13, 2184.190186, -6166.447266, 0.968877 ); + AddWaypoint(14, 2234.265625, -6163.741211, 0.916021 ); + AddWaypoint(15, 2268.071777, -6158.750977, 1.822252 ); + AddWaypoint(16, 2270.028320, -6176.505859, 6.340538 ); + AddWaypoint(17, 2271.739014, -6195.401855, 13.3542, 10000); + } + } + + void InitCartQuest(Player *who) + { + carGUID = who->m_Vehicle->GetGUID(); + InitWaypoint(); + Start(false, false, who->GetGUID()); + SetDespawnAtFar(false); + } + + void WaypointReached(uint32 i) + { + switch (i) + { + case 1: + if(Unit *car = Unit::GetCreature(*me, carGUID)) + { + me->SetInFront(car); + me->SendMovementFlagUpdate(); + } + me->MonsterSay("Where'd this come from? I better get this down to the ships before the foreman sees it!",LANG_UNIVERSAL,NULL); + SetRun(true); + IntroTimer = 4000; + IntroPhase = 1; + break; + case 17: + if(Unit *car = Unit::GetCreature(*me, carGUID)) + { + me->SetInFront(car); + me->SendMovementFlagUpdate(); + car->Relocate(car->GetPositionX(), car->GetPositionY(), me->GetPositionZ()); + car->SendMonsterStop(); + //this make player fall under ground, dunno why + //car->GetMotionMaster()->MovePoint(0, car->GetPositionX(), car->GetPositionY(), me->GetPositionZ()); + car->RemoveAura(SPELL_CART_DRAG); + } + me->MonsterSay("Now I can have a rest!",LANG_UNIVERSAL,NULL); + break; + default: + break; + } + } + + void UpdateAI(const uint32 diff) + { + if (IntroPhase) + { + if (IntroTimer < diff) + { + if (IntroPhase == 1) + { + if(Creature *car = Unit::GetCreature(*me, carGUID)) + DoCast(car, SPELL_CART_DRAG); + IntroTimer = 800; + IntroPhase = 2; + } + else + { + if(Creature *car = Unit::GetCreature(*me, carGUID)) + car->AI()->DoAction(); + IntroPhase = 0; + } + }else IntroTimer-=diff; + } + npc_escortAI::UpdateAI(diff); + } +}; + +CreatureAI* GetAI_npc_scarlet_miner(Creature *_Creature) +{ + return new npc_scarlet_minerAI(_Creature); +} + +/*###### +## go_inconspicuous_mine_car +######*/ + +#define SPELL_CART_SUMM 52463 + +bool GOHello_go_inconspicuous_mine_car(Player* pPlayer, GameObject* pGO) +{ + if (pPlayer->GetQuestStatus(12701) == QUEST_STATUS_INCOMPLETE) + { + // Hack Why Trinity Dont Support Custom Summon Location + if(Creature *miner = pPlayer->SummonCreature(28841, 2383.869629, -5900.312500, 107.996086, pPlayer->GetOrientation(),TEMPSUMMON_DEAD_DESPAWN, 1)) + { + pPlayer->CastSpell(pPlayer, SPELL_CART_SUMM, true); + if(Vehicle *car = pPlayer->m_Vehicle) + { + if(car->GetEntry() == 28817) + { + car->AI()->SetGUID(miner->GetGUID()); + CAST_AI(npc_scarlet_minerAI, miner->AI())->InitCartQuest(pPlayer); + }else error_log("TSCR: GOHello_go_inconspicuous_mine_car vehicle entry is not correct."); + }else error_log("TSCR: GOHello_go_inconspicuous_mine_car player is not on the vehicle."); + }else error_log("TSCR: GOHello_go_inconspicuous_mine_car Scarlet Miner cant be found by script."); + } + return true; +} + +// npc 28912 quest 17217 boss 29001 mob 29007 go 191092 + +void AddSC_the_scarlet_enclave_c1() +{ + Script *newscript; + + // 12848 The Endless Hunger + newscript = new Script; + newscript->Name="npc_unworthy_initiate"; + newscript->GetAI = &GetAI_npc_unworthy_initiate; + newscript->RegisterSelf(); + + newscript = new Script; + newscript->Name="npc_unworthy_initiate_anchor"; + newscript->GetAI = &GetAI_npc_unworthy_initiate_anchor; + newscript->RegisterSelf(); + + newscript = new Script; + newscript->Name="go_acherus_soul_prison"; + newscript->pGOHello = &GOHello_go_acherus_soul_prison; + newscript->RegisterSelf(); + + // Death's Challenge + newscript = new Script; + newscript->Name="npc_death_knight_initiate"; + newscript->GetAI = &GetAI_npc_death_knight_initiate; + newscript->pGossipHello = &GossipHello_npc_death_knight_initiate; + newscript->pGossipSelect = &GossipSelect_npc_death_knight_initiate; + newscript->RegisterSelf(); + + // 12680 Grand Theft Palomino + newscript = new Script; + newscript->Name="npc_salanar_the_horseman"; + newscript->GetAI = &GetAI_npc_salanar_the_horseman; + newscript->RegisterSelf(); + + newscript = new Script; + newscript->Name="npc_dark_rider_of_acherus"; + newscript->GetAI = &GetAI_npc_dark_rider_of_acherus; + newscript->RegisterSelf(); + + // 12687 Into the Realm of Shadows + newscript = new Script; + newscript->Name="npc_ros_dark_rider"; + newscript->GetAI = &GetAI_npc_ros_dark_rider; + newscript->RegisterSelf(); + + // 12698 The Gift That Keeps On Giving + newscript = new Script; + newscript->Name="npc_dkc1_gothik"; + newscript->GetAI = &GetAI_npc_dkc1_gothik; + newscript->RegisterSelf(); + + // Massacre At Light's Point + newscript = new Script; + newscript->Name="npc_scarlet_miner"; + newscript->GetAI = &GetAI_npc_scarlet_miner; + newscript->RegisterSelf(); + + newscript = new Script; + newscript->Name="npc_scarlet_miner_cart"; + newscript->GetAI = &GetAI_npc_scarlet_miner_cart; + newscript->RegisterSelf(); + + newscript = new Script; + newscript->Name="go_inconspicuous_mine_car"; + newscript->pGOHello = &GOHello_go_inconspicuous_mine_car; + newscript->RegisterSelf(); +} diff --git a/src/bindings/scripts/scripts/eastern_kingdoms/scarlet_enclave/chapter2.cpp b/src/bindings/scripts/scripts/eastern_kingdoms/scarlet_enclave/chapter2.cpp new file mode 100644 index 00000000000..e0e50364d18 --- /dev/null +++ b/src/bindings/scripts/scripts/eastern_kingdoms/scarlet_enclave/chapter2.cpp @@ -0,0 +1,2225 @@ +/* + * Copyright (C) 2009 Trinity <http://www.trinitycore.org/> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#include "precompiled.h" +#include "escort_ai.h" + +//How to win friends and influence enemies +enum win_friends +{ + SAY_PERSUADE1 = -1609501, + SAY_PERSUADE2 = -1609502, + SAY_PERSUADE3 = -1609503, + SAY_PERSUADE4 = -1609504, + SAY_PERSUADE5 = -1609505, + SAY_PERSUADE6 = -1609506, + SAY_PERSUADE7 = -1609507, + SAY_CRUSADER1 = -1609508, + SAY_CRUSADER2 = -1609509, + SAY_CRUSADER3 = -1609510, + SAY_CRUSADER4 = -1609511, + SAY_CRUSADER5 = -1609512, + SAY_CRUSADER6 = -1609513, + SAY_PERSUADED1 = -1609514, + SAY_PERSUADED2 = -1609515, + SAY_PERSUADED3 = -1609516, + SAY_PERSUADED4 = -1609517, + SAY_PERSUADED5 = -1609518, + SAY_PERSUADED6 = -1609519, + SPELL_PERSUASIVE_STRIKE = 52781 +}; + +struct TRINITY_DLL_DECL npc_crusade_persuadedAI : public ScriptedAI +{ + npc_crusade_persuadedAI(Creature *pCreature) : ScriptedAI(pCreature) {} + + uint32 uiSpeech_timer; + uint32 uiSpeech_counter; + uint64 uiPlayerGUID; + + void Reset() + { + uiSpeech_timer = 0; + uiSpeech_counter = 0; + uiPlayerGUID = 0; + me->SetReactState(REACT_AGGRESSIVE); + } + + void SpellHit(Unit *caster, const SpellEntry *spell) + { + if (spell->Id == SPELL_PERSUASIVE_STRIKE && caster->GetTypeId() == TYPEID_PLAYER && me->isAlive() && !uiSpeech_counter) + { + if(CAST_PLR(caster)->GetQuestStatus(12720) == QUEST_STATUS_INCOMPLETE) + { + if (rand()%100 < 5) // chance + { + uiPlayerGUID = caster->GetGUID(); + uiSpeech_timer = 1000; + uiSpeech_counter = 1; + me->setFaction(35); + me->CombatStop(true); + me->GetMotionMaster()->MoveIdle(); + me->SetReactState(REACT_PASSIVE); + + switch(rand()%6) + { + case 0: DoScriptText(SAY_PERSUADE1, caster);break; + case 1: DoScriptText(SAY_PERSUADE2, caster);break; + case 2: DoScriptText(SAY_PERSUADE3, caster);break; + case 3: DoScriptText(SAY_PERSUADE4, caster);break; + case 4: DoScriptText(SAY_PERSUADE5, caster);break; + case 5: DoScriptText(SAY_PERSUADE6, caster);break; + case 6: DoScriptText(SAY_PERSUADE7, caster);break; + } + + switch(rand()%5) + { + case 0: DoScriptText(SAY_CRUSADER1, me);break; + case 1: DoScriptText(SAY_CRUSADER2, me);break; + case 2: DoScriptText(SAY_CRUSADER3, me);break; + case 3: DoScriptText(SAY_CRUSADER4, me);break; + case 4: DoScriptText(SAY_CRUSADER5, me);break; + case 5: DoScriptText(SAY_CRUSADER6, me);break; + } + } + } + } + } + + void UpdateAI(const uint32 diff) + { + if (uiSpeech_counter) + { + if (uiSpeech_timer < diff) + { + Player* pPlayer = Unit::GetPlayer(uiPlayerGUID); + if(!pPlayer) + { + EnterEvadeMode(); + return; + } + + switch(uiSpeech_counter) + { + case 1: DoScriptText(SAY_PERSUADED1, me); uiSpeech_timer = 8000; break; + case 2: DoScriptText(SAY_PERSUADED2, me); uiSpeech_timer = 8000; break; + case 3: DoScriptText(SAY_PERSUADED3, me); uiSpeech_timer = 8000; break; + case 4: DoScriptText(SAY_PERSUADED4, me); uiSpeech_timer = 8000; break; + case 5: DoScriptText(SAY_PERSUADED5, pPlayer); uiSpeech_timer = 8000; break; + case 6: DoScriptText(SAY_PERSUADED6, me); + me->RestoreFaction(); + pPlayer->Kill(me); + //me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE); + //me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); + uiSpeech_counter = 0; + if(pPlayer->GetQuestStatus(12720) == QUEST_STATUS_INCOMPLETE) + pPlayer->AreaExploredOrEventHappens(12720); + return; + } + + ++uiSpeech_counter; + }else uiSpeech_timer -= diff; + + return; + } + + if(!UpdateVictim()) + return; + + DoMeleeAttackIfReady(); + } +}; + +CreatureAI* GetAI_npc_crusade_persuaded(Creature* pCreature) +{ + return new npc_crusade_persuadedAI (pCreature); +} + +/*###### +## npc_koltira_deathweaver +######*/ + +enum eKoltira +{ + SAY_BREAKOUT1 = -1609561, + SAY_BREAKOUT2 = -1609562, + SAY_BREAKOUT3 = -1609563, + SAY_BREAKOUT4 = -1609564, + SAY_BREAKOUT5 = -1609565, + SAY_BREAKOUT6 = -1609566, + SAY_BREAKOUT7 = -1609567, + SAY_BREAKOUT8 = -1609568, + SAY_BREAKOUT9 = -1609569, + SAY_BREAKOUT10 = -1609570, + + SPELL_KOLTIRA_TRANSFORM = 52899, + SPELL_ANTI_MAGIC_ZONE = 52894, + + QUEST_BREAKOUT = 12727, + + NPC_CRIMSON_ACOLYTE = 29007, + NPC_HIGH_INQUISITOR_VALROTH = 29001, + NPC_KOLTIRA_ALT = 28447, + + //not sure about this id + //NPC_DEATH_KNIGHT_MOUNT = 29201, + MODEL_DEATH_KNIGHT_MOUNT = 25278 +}; + +struct TRINITY_DLL_DECL npc_koltira_deathweaverAI : public npc_escortAI +{ + npc_koltira_deathweaverAI(Creature *pCreature) : npc_escortAI(pCreature) { } + + uint32 m_uiWave; + uint32 m_uiWave_Timer; + uint64 m_uiValrothGUID; + + void Reset() + { + if (!IsBeingEscorted) + { + m_uiWave = 0; + m_uiWave_Timer = 3000; + m_uiValrothGUID = 0; + } + } + + void WaypointReached(uint32 uiPointId) + { + switch(uiPointId) + { + case 0: + DoScriptText(SAY_BREAKOUT1, me); + break; + case 1: + me->SetStandState(UNIT_STAND_STATE_KNEEL); + break; + case 2: + me->SetStandState(UNIT_STAND_STATE_STAND); + //me->UpdateEntry(NPC_KOLTIRA_ALT); //unclear if we must update or not + DoCast(me, SPELL_KOLTIRA_TRANSFORM); + break; + case 3: + IsOnHold = true; + me->SetStandState(UNIT_STAND_STATE_KNEEL); + DoScriptText(SAY_BREAKOUT2, me); + DoCast(me, SPELL_ANTI_MAGIC_ZONE); // cast again that makes bubble up + break; + case 4: + SetRun(true); + break; + case 9: + me->Mount(MODEL_DEATH_KNIGHT_MOUNT); + break; + case 10: + me->Unmount(); + break; + } + } + + void JustSummoned(Creature* pSummoned) + { + if (Unit* pPlayer = Unit::GetUnit(*me, PlayerGUID)) + { + pSummoned->AI()->AttackStart(pPlayer); + pSummoned->AddThreat(me, 0.0f); + } + + if (pSummoned->GetEntry() == NPC_HIGH_INQUISITOR_VALROTH) + m_uiValrothGUID = pSummoned->GetGUID(); + } + + void SummonAcolyte(uint32 uiAmount) + { + for(uint32 i = 0; i < uiAmount; ++i) + me->SummonCreature(NPC_CRIMSON_ACOLYTE, 1642.329, -6045.818, 127.583, 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000); + } + + void UpdateAI(const uint32 uiDiff) + { + npc_escortAI::UpdateAI(uiDiff); + + if (IsOnHold) + { + if (m_uiWave_Timer < uiDiff) + { + switch(m_uiWave) + { + case 0: + DoScriptText(SAY_BREAKOUT3, me); + SummonAcolyte(3); + m_uiWave_Timer = 20000; + break; + case 1: + DoScriptText(SAY_BREAKOUT4, me); + SummonAcolyte(3); + m_uiWave_Timer = 20000; + break; + case 2: + DoScriptText(SAY_BREAKOUT5, me); + SummonAcolyte(4); + m_uiWave_Timer = 20000; + break; + case 3: + DoScriptText(SAY_BREAKOUT6, me); + me->SummonCreature(NPC_HIGH_INQUISITOR_VALROTH, 1642.329, -6045.818, 127.583, 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 1000); + m_uiWave_Timer = 1000; + break; + case 4: + { + Unit* pTemp = Unit::GetUnit(*me, m_uiValrothGUID); + + if (!pTemp || !pTemp->isAlive()) + { + DoScriptText(SAY_BREAKOUT8, me); + m_uiWave_Timer = 5000; + } + else + { + m_uiWave_Timer = 2500; + return; //return, we don't want m_uiWave to increment now + } + break; + } + case 5: + DoScriptText(SAY_BREAKOUT9, me); + me->RemoveAurasDueToSpell(SPELL_ANTI_MAGIC_ZONE); + m_uiWave_Timer = 2500; + break; + case 6: + DoScriptText(SAY_BREAKOUT10, me); + IsOnHold = false; + break; + } + + ++m_uiWave; + } + else + m_uiWave_Timer -= uiDiff; + } + } +}; + +CreatureAI* GetAI_npc_koltira_deathweaver(Creature* pCreature) +{ + return new npc_koltira_deathweaverAI(pCreature); +} + +bool QuestAccept_npc_koltira_deathweaver(Player* pPlayer, Creature* pCreature, const Quest* pQuest) +{ + if (pQuest->GetQuestId() == QUEST_BREAKOUT) + { + pCreature->SetStandState(UNIT_STAND_STATE_STAND); + + if (npc_escortAI* pEscortAI = CAST_AI(npc_koltira_deathweaverAI,pCreature->AI())) + pEscortAI->Start(false, false, pPlayer->GetGUID()); + } + return true; +} + +//Scarlet courier +enum scarletcourier +{ + SAY_TREE1 = -1609531, + SAY_TREE2 = -1609532, + SPELL_SHOOT = 52818, + GO_INCONSPICUOUS_TREE = 191144, + NPC_SCARLET_COURIER = 29076 +}; + +struct TRINITY_DLL_DECL mob_scarlet_courierAI : public ScriptedAI +{ + mob_scarlet_courierAI(Creature *pCreature) : ScriptedAI(pCreature) + { + Reset(); + } + + uint32 uiStage; + uint32 uiStage_timer; + uint64 pPlayer; + + void Reset() { + uiStage = 0; + uiStage_timer = 3000; + pPlayer = 0; + } + + void MovementInform(uint32 type, uint32 id) + { + if(type != POINT_MOTION_TYPE) + return; + + switch(id) + { + case 0: + uiStage = 1; + break; + case 1: + uiStage = 2; + break; + } + } + + void UpdateAI(const uint32 diff) + { + if (uiStage_timer < diff) + { + switch(uiStage) + { + case 1: + { + me->GetMotionMaster()->Clear(false); + me->GetMotionMaster()->MoveIdle(); + me->AddUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + + if (GameObject* treeGO = me->FindNearestGameObject(GO_INCONSPICUOUS_TREE, 40.0f)) + { + DoScriptText(SAY_TREE1, me); + me->GetMotionMaster()->MovePoint(1, treeGO->GetPositionX(), treeGO->GetPositionY(), treeGO->GetPositionZ()); + } + uiStage = 0; + } break; + case 2: + { + me->GetMotionMaster()->Clear(false); + me->GetMotionMaster()->MoveIdle(); + DoScriptText(SAY_TREE2, me); + me->Unmount(); + //who->RemoveSpellsCausingAura(SPELL_AURA_MOD_STEALTH); + uiStage = 0; + } break; + } + uiStage_timer = 3000; + }else uiStage_timer -= diff; + + DoMeleeAttackIfReady(); + } +}; +struct TRINITY_DLL_DECL mob_scarlet_courier_controllerAI : public ScriptedAI +{ + mob_scarlet_courier_controllerAI(Creature *pCreature) : ScriptedAI(pCreature) + { + Reset(); + } + + bool bAmbush_overlook; + + void Reset() { + bAmbush_overlook = false; + } + + void UpdateAI(const uint32 diff) + { + GameObject* treeGO = me->FindNearestGameObject(GO_INCONSPICUOUS_TREE, 40.0f); + if(treeGO && bAmbush_overlook == false) + { + Unit* pCourier = me->SummonCreature(NPC_SCARLET_COURIER, 1461.65, -6010.34, 116.369, 0, TEMPSUMMON_TIMED_DESPAWN, 180000); + pCourier->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pCourier->Mount(14338); // not sure about this id + pCourier->GetMotionMaster()->MovePoint(0, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ()); + bAmbush_overlook = true; + } + if(!treeGO && bAmbush_overlook == true) + bAmbush_overlook = false; + } +}; +CreatureAI* GetAI_mob_scarlet_courier_controller(Creature* pCreature) +{ + return new mob_scarlet_courier_controllerAI (pCreature); +} + +CreatureAI* GetAI_mob_scarlet_courier(Creature* pCreature) +{ + return new mob_scarlet_courierAI (pCreature); +} + +//Koltira & Valroth- Breakout + + +enum valroth +{ + SAY_VALROTH1 = -1609581, + SAY_VALROTH2 = -1609582, + SAY_VALROTH3 = -1609583, + SAY_VALROTH4 = -1609584, + SAY_VALROTH5 = -1609585, + SAY_VALROTH6 = -1609586, + SPELL_RENEW = 38210, + SPELL_INQUISITOR_PENANCE = 52922, + SPELL_VALROTH_SMITE = 52926, + SPELL_SUMMON_VALROTH_REMAINS = 52929 +}; + +struct TRINITY_DLL_DECL mob_high_inquisitor_valrothAI : public ScriptedAI +{ + mob_high_inquisitor_valrothAI(Creature *pCreature) : ScriptedAI(pCreature) + { + Reset(); + } + + uint32 uiRenew_timer; + uint32 uiInquisitor_Penance_timer; + uint32 uiValroth_Smite_timer; + + void Reset() { + uiRenew_timer = 1000; + uiInquisitor_Penance_timer = 2000; + uiValroth_Smite_timer = 1000; + } + + void Aggro(Unit* who){ + DoScriptText(SAY_VALROTH2, me); + DoCast(who, SPELL_VALROTH_SMITE); + } + + void UpdateAI(const uint32 diff) + { + if (uiRenew_timer < diff) + { + Shout(); + DoCast(me, SPELL_RENEW); + uiRenew_timer = 1000 + rand()%5000; + }else uiRenew_timer -= diff; + + if (uiInquisitor_Penance_timer < diff) + { + Shout(); + DoCast(me->getVictim(), SPELL_INQUISITOR_PENANCE); + uiInquisitor_Penance_timer = 2000 + rand()%5000; + }else uiInquisitor_Penance_timer -= diff; + + if (uiValroth_Smite_timer < diff) + { + Shout(); + DoCast(me->getVictim(), SPELL_VALROTH_SMITE); + uiValroth_Smite_timer = 1000 + rand()%5000; + }else uiValroth_Smite_timer -= diff; + + DoMeleeAttackIfReady(); + } + + void Shout() + { + switch(rand()%20) + { + case 0: DoScriptText(SAY_VALROTH3, me);break; + case 1: DoScriptText(SAY_VALROTH4, me);break; + case 2: DoScriptText(SAY_VALROTH5, me);break; + } + } + + void JustDied(Unit* killer) + { + DoScriptText(SAY_VALROTH6, me); + killer->CastSpell(me, SPELL_SUMMON_VALROTH_REMAINS, true); + } +}; + +CreatureAI* GetAI_mob_high_inquisitor_valroth(Creature* pCreature) +{ + return new mob_high_inquisitor_valrothAI (pCreature); +} + +//Light of Dawn +enum mograine +{ + ENCOUNTER_DK_NUMBER = 5, // how many player queue to start the quest , or - + ENCOUNTER_DK_TIMER = 10, // *every 5 minutes. These have to be done in instance data + ENCOUNTER_DEFENDER_NUMBER = 20, // how many of defender + ENCOUNTER_EARTHSHATTER_NUMBER = 20, // how many of earthshatter + ENCOUNTER_ABOMINATION_NUMBER = 3, // how many of abomination + ENCOUNTER_BEHEMOTH_NUMBER = 2, // how many of behemoth + ENCOUNTER_GHOUL_NUMBER = 10, // how many of ghoul + ENCOUNTER_WARRIOR_NUMBER = 2, // how many of warrior + ENCOUNTER_TOTAL_DAWN = 300, // Total number + ENCOUNTER_TOTAL_SCOURGE = 10000, + + WORLD_STATE_REMAINS = 3592, + WORLD_STATE_COUNTDOWN = 3603, + WORLD_STATE_EVENT_BEGIN = 3605, + + SAY_LIGHT_OF_DAWN01 = -1609201, // pre text + SAY_LIGHT_OF_DAWN02 = -1609202, + SAY_LIGHT_OF_DAWN03 = -1609203, + SAY_LIGHT_OF_DAWN04 = -1609204, // intro + SAY_LIGHT_OF_DAWN05 = -1609205, + SAY_LIGHT_OF_DAWN06 = -1609206, + SAY_LIGHT_OF_DAWN07 = -1609207, // During the fight - Korfax, Champion of the Light + SAY_LIGHT_OF_DAWN08 = -1609208, // Lord Maxwell Tyrosus + SAY_LIGHT_OF_DAWN09 = -1609209, // Highlord Darion Mograine + SAY_LIGHT_OF_DAWN10 = -1609210, + SAY_LIGHT_OF_DAWN11 = -1609211, + SAY_LIGHT_OF_DAWN12 = -1609212, + SAY_LIGHT_OF_DAWN13 = -1609213, + SAY_LIGHT_OF_DAWN14 = -1609214, + SAY_LIGHT_OF_DAWN15 = -1609215, + SAY_LIGHT_OF_DAWN16 = -1609216, + SAY_LIGHT_OF_DAWN17 = -1609217, + SAY_LIGHT_OF_DAWN18 = -1609218, + SAY_LIGHT_OF_DAWN19 = -1609219, + SAY_LIGHT_OF_DAWN20 = -1609220, + SAY_LIGHT_OF_DAWN21 = -1609221, + SAY_LIGHT_OF_DAWN22 = -1609222, + SAY_LIGHT_OF_DAWN23 = -1609223, + SAY_LIGHT_OF_DAWN24 = -1609224, + SAY_LIGHT_OF_DAWN25 = -1609225, // After the fight + SAY_LIGHT_OF_DAWN26 = -1609226, // Highlord Tirion Fordring + SAY_LIGHT_OF_DAWN27 = -1609227, // Highlord Darion Mograine + SAY_LIGHT_OF_DAWN28 = -1609228, // Highlord Tirion Fordring + SAY_LIGHT_OF_DAWN29 = -1609229, // Highlord Tirion Fordring + SAY_LIGHT_OF_DAWN30 = -1609230, // Highlord Tirion Fordring + SAY_LIGHT_OF_DAWN31 = -1609231, // Highlord Tirion Fordring + SAY_LIGHT_OF_DAWN32 = -1609232, // Highlord Alexandros Mograine + SAY_LIGHT_OF_DAWN33 = -1609233, // Highlord Darion Mograine + SAY_LIGHT_OF_DAWN34 = -1609234, // Highlord Darion Mograine + SAY_LIGHT_OF_DAWN35 = -1609235, // Darion Mograine + SAY_LIGHT_OF_DAWN36 = -1609236, // Darion Mograine + SAY_LIGHT_OF_DAWN37 = -1609237, // Highlord Alexandros Mograine + SAY_LIGHT_OF_DAWN38 = -1609238, // Darion Mograine + SAY_LIGHT_OF_DAWN39 = -1609239, // Highlord Alexandros Mograine + SAY_LIGHT_OF_DAWN40 = -1609240, // Darion Mograine + SAY_LIGHT_OF_DAWN41 = -1609241, // Highlord Alexandros Mograine + SAY_LIGHT_OF_DAWN42 = -1609242, // Highlord Alexandros Mograine + SAY_LIGHT_OF_DAWN43 = -1609243, // The Lich King + SAY_LIGHT_OF_DAWN44 = -1609244, // Highlord Darion Mograine + SAY_LIGHT_OF_DAWN45 = -1609245, // The Lich King + SAY_LIGHT_OF_DAWN46 = -1609246, // The Lich King + SAY_LIGHT_OF_DAWN47 = -1609247, // Highlord Tirion Fordring + SAY_LIGHT_OF_DAWN48 = -1609248, // The Lich King + SAY_LIGHT_OF_DAWN49 = -1609249, // The Lich King + SAY_LIGHT_OF_DAWN50 = -1609250, // Lord Maxwell Tyrosus + SAY_LIGHT_OF_DAWN51 = -1609251, // The Lich King + SAY_LIGHT_OF_DAWN52 = -1609252, // Highlord Darion Mograine + SAY_LIGHT_OF_DAWN53 = -1609253, // Highlord Darion Mograine + SAY_LIGHT_OF_DAWN54 = -1609254, // Highlord Tirion Fordring + SAY_LIGHT_OF_DAWN55 = -1609255, // The Lich King + SAY_LIGHT_OF_DAWN56 = -1609256, // Highlord Tirion Fordring + SAY_LIGHT_OF_DAWN57 = -1609257, // The Lich King + SAY_LIGHT_OF_DAWN58 = -1609258, // The Lich King + SAY_LIGHT_OF_DAWN59 = -1609259, // The Lich King + SAY_LIGHT_OF_DAWN60 = -1609260, // Highlord Tirion Fordring + SAY_LIGHT_OF_DAWN61 = -1609261, // Highlord Tirion Fordring + SAY_LIGHT_OF_DAWN62 = -1609262, // Highlord Tirion Fordring + SAY_LIGHT_OF_DAWN63 = -1609263, // Highlord Tirion Fordring + SAY_LIGHT_OF_DAWN64 = -1609264, // Highlord Tirion Fordring + SAY_LIGHT_OF_DAWN65 = -1609265, // Highlord Tirion Fordring + SAY_LIGHT_OF_DAWN66 = -1609266, // Highlord Tirion Fordring + SAY_LIGHT_OF_DAWN67 = -1609267, // Highlord Tirion Fordring + SAY_LIGHT_OF_DAWN68 = -1609268, // Highlord Darion Mograine + + EMOTE_LIGHT_OF_DAWN01 = -1609269, // Emotes + EMOTE_LIGHT_OF_DAWN02 = -1609270, + EMOTE_LIGHT_OF_DAWN03 = -1609271, + EMOTE_LIGHT_OF_DAWN04 = -1609272, + EMOTE_LIGHT_OF_DAWN05 = -1609273, + EMOTE_LIGHT_OF_DAWN06 = -1609274, + EMOTE_LIGHT_OF_DAWN07 = -1609275, + EMOTE_LIGHT_OF_DAWN08 = -1609276, + EMOTE_LIGHT_OF_DAWN09 = -1609277, + EMOTE_LIGHT_OF_DAWN10 = -1609278, + EMOTE_LIGHT_OF_DAWN11 = -1609279, + EMOTE_LIGHT_OF_DAWN12 = -1609280, + EMOTE_LIGHT_OF_DAWN13 = -1609281, + EMOTE_LIGHT_OF_DAWN14 = -1609282, + EMOTE_LIGHT_OF_DAWN15 = -1609283, + EMOTE_LIGHT_OF_DAWN16 = -1609284, + EMOTE_LIGHT_OF_DAWN17 = -1609285, + EMOTE_LIGHT_OF_DAWN18 = -1609286, + + GO_LIGHT_OF_DAWN = 191330, + SPELL_THE_LIGHT_OF_DAWN_Q = 53606, // quest credit + + // ---- Dark Knight npc -------------------- + // Highlord Darion Mograine + NPC_HIGHLORD_DARION_MOGRAINE = 29173, + SPELL_ANTI_MAGIC_ZONE1 = 52893, + SPELL_DEATH_STRIKE = 53639, + SPELL_DEATH_EMBRACE = 53635, + SPELL_ICY_TOUCH1 = 49723, + SPELL_THE_LIGHT_OF_DAWN = 53658, + SPELL_THE_MIGHT_OF_MOGRAINE = 53642, // on players when begins + SPELL_UNHOLY_BLIGHT = 53640, + SPELL_ALEXANDROS_MOGRAINE_SPAWN = 53667, + SPELL_MOGRAINE_CHARGE = 53679, + SPELL_ASHBRINGER = 53701, + + // Koltira Deathweaver & Orbaz Bloodbane are using the same abilities + NPC_KOLTIRA_DEATHWEAVER = 29199, + NPC_ORBAZ_BLOODBANE = 29204, // this guy fleed + NPC_THASSARIAN = 29200, // he also does SPELL_THE_LIGHT_OF_DAWN 53658 + SPELL_BLOOD_STRIKE1 = 52374, + SPELL_DEATH_GRIP = 49576, + SPELL_ICY_TOUCH2 = 52372, + SPELL_PLAGUE_STRIKE1 = 50668, + // all do SPELL_HERO_AGGRO_AURA 53627 + + // Lich King + NPC_THE_LICH_KING = 29183, // show up at end + SPELL_APOCALYPSE = 53210, + SPELL_TELEPORT_VISUAL = 52233, + SPELL_SOUL_FEAST_ALEX = 53677, // on Alexandros + SPELL_SOUL_FEAST_TIRION = 53685, // on Tirion + SPELL_ICEBOUND_VISAGE = 53274, // not sure what is it for + SPELL_REBUKE = 53680, + + // others + NPC_RAMPAGING_ABOMINATION = 29186, + SPELL_CLEAVE1 = 53633, + SPELL_SCOURGE_HOOK = 50335, + SPELL_SCOURGE_AGGRO_AURA = 53624, + + NPC_FLESH_BEHEMOTH = 29190, // giant guy + SPELL_STOMP = 53634, + SPELL_THUNDERCLAP = 36706, + SPELL_HERO_AGGRO_AURA = 53627, + + NPC_ACHERUS_GHOUL = 29219, // just ghoul.... + SPELL_GHOULPLOSION = 53632, + + NPC_WARRIOR_OF_THE_FROZEN_WASTES = 29206, // use SPELL_CLEAVE 53631 + + NPC_HIGHLORD_ALEXANDROS_MOGRAINE = 29227, // ghost + NPC_DARION_MOGRAINE = 29228, // ghost + + // ---- Dawn npc -------------------- + // Highlord Tirion Fordring + NPC_HIGHLORD_TIRION_FORDRING = 29175, + EQUIP_HIGHLORD_TIRION_FORDRING = 13262, + SPELL_LAY_ON_HANDS = 53778, + SPELL_REBIRTH_OF_THE_ASHBRINGER = 53702, + SPELL_TIRION_CHARGE = 53705, + SPELL_TIRION_CHARGE_VISUAL = 53706, + + // others + NPC_KORFAX_CHAMPION_OF_THE_LIGHT = 29176, + SPELL_CLEAVE = 53631, + SPELL_HEROIC_LEAP = 53625, + + NPC_LORD_MAXWELL_TYROSUS = 29178, + NPC_LEONID_BARTHALOMEW_THE_REVERED = 29179, + NPC_DUKE_NICHOLAS_ZVERENHOFF = 29180, + + NPC_COMMANDER_ELIGOR_DAWNBRINGER = 29177, + SPELL_HOLY_LIGHT2 = 37979, + + NPC_RAYNE = 29181, + SPELL_REJUVENATION = 20664, + SPELL_STARFALL = 20678, + SPELL_TRANQUILITY = 25817, + SPELL_WRATH = 21807, + + NPC_DEFENDER_OF_THE_LIGHT = 29174, // also does SPELL_HEROIC_LEAP 53625 + SPELL_HOLY_LIGHT1 = 29427, + SPELL_HOLY_STRIKE = 53643, + SPELL_HOLY_WRATH = 53638, + SPELL_UPPERCUT = 53629, + + NPC_RIMBLAT_EARTHSHATTER = 29182, + SPELL_CHAIN_HEAL = 33642, + SPELL_THUNDER = 53630 +}; + +struct Locations +{ + float x, y, z, o; + uint32 id; +}; + +void UpdateWorldState(Map *map, uint32 id, uint32 state) +{ + Map::PlayerList const& players = map->GetPlayers(); + + if (!players.isEmpty()) + { + for(Map::PlayerList::const_iterator itr = players.begin(); itr != players.end(); ++itr) + { + if (Player* pPlayer = itr->getSource()) + pPlayer->SendUpdateWorldState(id,state); + } + } +} + +static Locations LightofDawnLoc[]= +{ + {2281.335, -5300.409, 85.170, 0}, // 0 Tirion Fordring loc + {2283.896, -5287.914, 83.066, 1.55}, // 1 Tirion Fordring loc2 + {2281.461, -5263.014, 81.164, 0}, // 2 Tirion charges + {2262.277, -5293.477, 82.167, 0}, // 3 Tirion run + {2270.286, -5287.73, 82.262, 0}, // 4 Tirion relocate + {2269.511, -5288.289, 82.225, 0}, // 5 Tirion forward + {2262.277, -5293.477, 82.167, 0}, // 6 Tirion runs to Darion + {2270.286, -5287.73, 82.262, 0}, + {2269.511, -5288.289, 82.225, 0}, + {2273.205, -5288.848, 82.617, 0}, // 9 Korfax loc1 + {2274.739, -5287.926, 82.684, 0}, // 10 Korfax loc2 + {2253.673, -5318.004, 81.724, 0}, // 11 Korfax kicked + {2287.028, -5309.644, 87.253, 0}, // 12 Maxwell loc1 + {2286.978, -5308.025, 86.83, 0}, // 13 Maxwell loc2 + {2248.877, -5307.586, 82.166, 0}, // 14 maxwell kicked + {2278.58, -5316.933, 88.319, 0}, // 15 Eligor loc1 + {2278.535, -5315.479, 88.08, 0}, // 16 Eligor loc2 + {2259.416, -5304.505, 82.149, 0}, // 17 eligor kicked + {2289.259, -5280.355, 82.112, 0}, // 18 Koltira loc1 + {2289.02, -5281.985, 82.207, 0}, // 19 Koltira loc2 + {2273.289, -5273.675, 81.701, 0}, // 20 Thassarian loc1 + {2273.332, -5275.544, 81.849, 0}, // 21 Thassarian loc2 + {2281.198, -5257.397, 80.224, 4.66}, // 22 Alexandros loc1 + {2281.156, -5259.934, 80.647, 0}, // 23 Alexandros loc2 + {2281.294, -5281.895, 82.445, 1.35}, // 24 Darion loc1 + {2281.093, -5263.013, 81.125, 0}, // 25 Darion loc1 + {2281.313, -5250.282, 79.322, 4.69}, // 26 Lich King spawns + {2281.523, -5261.058, 80.877, 0}, // 27 Lich king move forwards + {2272.709, -5255.552, 78.226, 0}, // 28 Lich king kicked + {2273.972, -5257.676, 78.862, 0} // 29 Lich king moves forward +}; + +struct TRINITY_DLL_DECL npc_highlord_darion_mograineAI : public npc_escortAI +{ + npc_highlord_darion_mograineAI(Creature *pCreature) : npc_escortAI(pCreature) + { + Reset(); + } + + bool bIsBattle; + uint32 uiStep; + uint32 uiPhase_timer; + uint32 uiFight_duration; + uint32 uiTotal_dawn; + uint32 uiTotal_scourge; + uint32 uiSummon_counter; + + // Darion Mograine + uint32 uiAnti_magic_zone; + uint32 uiDeath_strike; + uint32 uiDeath_embrace; + uint32 uiIcy_touch; + uint32 uiUnholy_blight; + uint32 uiFight_speech; + uint32 uiSpawncheck; + uint32 uiTargetcheck; + + // Dawn + uint64 uiTirionGUID; + uint64 uiAlexandrosGUID; + uint64 uiDarionGUID; + uint64 uiKorfaxGUID; + uint64 uiMaxwellGUID; + uint64 uiEligorGUID; + uint64 uiRayneGUID; + uint64 uiDefenderGUID[ENCOUNTER_DEFENDER_NUMBER]; + uint64 uiEarthshatterGUID[ENCOUNTER_EARTHSHATTER_NUMBER]; + + // Death + uint64 uiKoltiraGUID; + uint64 uiOrbazGUID; + uint64 uiThassarianGUID; + uint64 uiLichKingGUID; + uint64 uiAbominationGUID[ENCOUNTER_ABOMINATION_NUMBER]; + uint64 uiBehemothGUID[ENCOUNTER_BEHEMOTH_NUMBER]; + uint64 uiGhoulGUID[ENCOUNTER_GHOUL_NUMBER]; + uint64 uiWarriorGUID[ENCOUNTER_WARRIOR_NUMBER]; + + // Misc + uint64 uiDawnofLightGUID; + + void Reset() + { + if (!IsBeingEscorted) + { + bIsBattle = false; + uiStep = 0; + uiPhase_timer = 3000; + uiFight_duration = 300000; // 5 minutes + uiTotal_dawn = ENCOUNTER_TOTAL_DAWN; + uiTotal_scourge = ENCOUNTER_TOTAL_SCOURGE; + uiSummon_counter = 0; + + uiDawnofLightGUID = 0; + + uiAnti_magic_zone = 1000 + rand()%5000; + uiDeath_strike = 5000 + rand()%5000; + uiDeath_embrace = 5000 + rand()%5000; + uiIcy_touch = 5000 + rand()%5000; + uiUnholy_blight = 5000 + rand()%5000; + + uiFight_speech = 15000; + uiSpawncheck = 1000; + uiTargetcheck = 10000; + + ((Unit*)me)->SetStandState(UNIT_STAND_STATE_STAND); + me->Mount(25279); + + UpdateWorldState(me->GetMap(), WORLD_STATE_REMAINS, 0); + //UpdateWorldState(me->GetMap(), WORLD_STATE_COUNTDOWN, 0); + UpdateWorldState(me->GetMap(), WORLD_STATE_EVENT_BEGIN, 0); + + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + pTemp->setDeathState(JUST_DIED); + if (Unit* pTemp = Unit::GetUnit((*me), uiKorfaxGUID)) + pTemp->setDeathState(JUST_DIED); + if (Unit* pTemp = Unit::GetUnit((*me), uiMaxwellGUID)) + pTemp->setDeathState(JUST_DIED); + if (Unit* pTemp = Unit::GetUnit((*me), uiEligorGUID)) + pTemp->setDeathState(JUST_DIED); + if (Unit* pTemp = Unit::GetUnit((*me), uiRayneGUID)) + pTemp->setDeathState(JUST_DIED); + + uiTirionGUID = NULL; + uiKorfaxGUID = NULL; + uiMaxwellGUID = NULL; + uiEligorGUID = NULL; + uiRayneGUID = NULL; + + for(uint8 i = 0; i < ENCOUNTER_DEFENDER_NUMBER; ++i) + { + if (Unit* pTemp = Unit::GetUnit((*me), uiDefenderGUID[i])) + pTemp->setDeathState(JUST_DIED); + uiDefenderGUID[i] = 0; + } + for(uint8 i = 0; i < ENCOUNTER_EARTHSHATTER_NUMBER; ++i) + { + if (Unit* pTemp = Unit::GetUnit((*me), uiEarthshatterGUID[i])) + pTemp->setDeathState(JUST_DIED); + uiEarthshatterGUID[i] = 0; + } + + if (Unit* pTemp = Unit::GetUnit((*me), uiKoltiraGUID)) + pTemp->setDeathState(JUST_DIED); + if (Unit* pTemp = Unit::GetUnit((*me), uiOrbazGUID)) + pTemp->setDeathState(JUST_DIED); + if (Unit* pTemp = Unit::GetUnit((*me), uiThassarianGUID)) + pTemp->setDeathState(JUST_DIED); + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) + pTemp->setDeathState(JUST_DIED); + + uiKoltiraGUID = NULL; + uiOrbazGUID = NULL; + uiThassarianGUID = NULL; + uiLichKingGUID = NULL; + for(uint8 i = 0; i < ENCOUNTER_ABOMINATION_NUMBER; ++i) + { + if (Unit* pTemp = Unit::GetUnit((*me), uiAbominationGUID[i])) + pTemp->setDeathState(JUST_DIED); + uiAbominationGUID[i] = 0; + } + for(uint8 i = 0; i < ENCOUNTER_BEHEMOTH_NUMBER; ++i) + { + if (Unit* pTemp = Unit::GetUnit((*me), uiBehemothGUID[i])) + pTemp->setDeathState(JUST_DIED); + uiBehemothGUID[i] = 0; + } + for(uint8 i = 0; i < ENCOUNTER_GHOUL_NUMBER; ++i) + { + if (Unit* pTemp = Unit::GetUnit((*me), uiGhoulGUID[i])) + pTemp->setDeathState(JUST_DIED); + uiGhoulGUID[i] = 0; + } + for(uint8 i = 0; i < ENCOUNTER_WARRIOR_NUMBER; ++i) + { + if (Unit* pTemp = Unit::GetUnit((*me), uiWarriorGUID[i])) + pTemp->setDeathState(JUST_DIED); + uiWarriorGUID[i] = 0; + } + } + } + + void AttackStart(Unit* who) + { + if (!who) + return; + + if (who == me) + return; + + if (me->Attack(who, true)) + { + me->AddThreat(who, 0.0f); + me->SetInCombatWith(who); + who->SetInCombatWith(me); + DoStartMovement(who); + } + } + + void MoveInLineOfSight(Unit* who) + { + if (!who) + return; + + if (who->isTargetableForAttack() && me->IsHostileTo(who)) + if (me->IsWithinDistInMap(who, 20) && me->IsWithinLOSInMap(who)) + AttackStart(who); + } + + void SetHoldState(bool bOnHold) + { + IsOnHold = bOnHold; + } + + void WaypointReached(uint32 i) + { + switch(i) + { + case 0: + me->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + SetHoldState(true); + break; + case 1: + SetHoldState(true); + + if (GameObject* pGo = me->FindNearestGameObject(GO_LIGHT_OF_DAWN, 100.0f)) // make dawn of light effect off + { + uiDawnofLightGUID = pGo->GetGUID(); + pGo->SetPhaseMask(0, true); + } + + SpawnNPC(); + if (Unit* pTemp = Unit::GetUnit((*me), uiKorfaxGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN07, pTemp); + if (Unit* pTemp = Unit::GetUnit((*me), uiMaxwellGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN08, pTemp); + + for(uint8 i = 0; i < ENCOUNTER_GHOUL_NUMBER; ++i) + NPCChangeTarget(uiGhoulGUID[i]); + for(uint8 i = 0; i < ENCOUNTER_WARRIOR_NUMBER; ++i) + NPCChangeTarget(uiWarriorGUID[i]); + for(uint8 i = 0; i < ENCOUNTER_ABOMINATION_NUMBER; ++i) + NPCChangeTarget(uiAbominationGUID[i]); + for(uint8 i = 0; i < ENCOUNTER_BEHEMOTH_NUMBER; ++i) + NPCChangeTarget(uiBehemothGUID[i]); + NPCChangeTarget(uiKoltiraGUID); + NPCChangeTarget(uiOrbazGUID); + NPCChangeTarget(uiThassarianGUID); + + me->Unmount(); + me->CastSpell(me, SPELL_THE_MIGHT_OF_MOGRAINE, true); // need to fix, on player only + + if (Unit* pTemp = Unit::GetUnit((*me), uiKoltiraGUID)) + pTemp->Unmount(); + if (Unit* pTemp = Unit::GetUnit((*me), uiThassarianGUID)) + pTemp->Unmount(); + + bIsBattle = true; + break; + case 2: + me->AddUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + DoCast(me, SPELL_THE_LIGHT_OF_DAWN); + break; + case 3: + { + Unit* pTirion = Unit::GetUnit((*me), uiTirionGUID); + + DoScriptText(EMOTE_LIGHT_OF_DAWN05, me); + if (me->HasAura(SPELL_THE_LIGHT_OF_DAWN, 0)) + me->RemoveAurasDueToSpell(SPELL_THE_LIGHT_OF_DAWN); + if (Unit* pTemp = Unit::GetUnit((*me), uiKoltiraGUID)) + { + if (pTemp->HasAura(SPELL_THE_LIGHT_OF_DAWN, 0)) + pTemp->RemoveAurasDueToSpell(SPELL_THE_LIGHT_OF_DAWN); + pTemp->AddUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[19].x, LightofDawnLoc[19].y, LightofDawnLoc[19].z); + } + if (Unit* pTemp = Unit::GetUnit((*me), uiThassarianGUID)) + { + if (pTemp->HasAura(SPELL_THE_LIGHT_OF_DAWN, 0)) + pTemp->RemoveAurasDueToSpell(SPELL_THE_LIGHT_OF_DAWN); + pTemp->AddUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[21].x, LightofDawnLoc[21].y, LightofDawnLoc[21].z); + } + if (Unit* pTemp = Unit::GetUnit((*me), uiKorfaxGUID)) + { + pTemp->AddUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_READY2H); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[10].x, LightofDawnLoc[10].y, LightofDawnLoc[10].z); + } + if (Unit* pTemp = Unit::GetUnit((*me), uiMaxwellGUID)) + { + pTemp->AddUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[13].x, LightofDawnLoc[13].y, LightofDawnLoc[13].z); + } + if (Unit* pTemp = Unit::GetUnit((*me), uiEligorGUID)) + { + pTemp->AddUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[16].x, LightofDawnLoc[16].y, LightofDawnLoc[16].z); + } + JumpToNextStep(10000); + } break; + case 4: + DoScriptText(SAY_LIGHT_OF_DAWN27, me); + ((Unit*)me)->SetStandState(UNIT_STAND_STATE_KNEEL); + + if (Unit* pTemp = Unit::GetUnit((*me), uiKoltiraGUID)) + pTemp->SetStandState(UNIT_STAND_STATE_KNEEL); + if (Unit* pTemp = Unit::GetUnit((*me), uiThassarianGUID)) + pTemp->SetStandState(UNIT_STAND_STATE_KNEEL); + SetHoldState(true); + break; + case 5: + DoScriptText(SAY_LIGHT_OF_DAWN33, me); + SetHoldState(true); + break; + case 6: + SetHoldState(true); + me->HandleEmoteCommand(EMOTE_ONESHOT_SPECIALATTACK1H); + JumpToNextStep(1000); + break; + case 7: + SetHoldState(true); + JumpToNextStep(2000); + break; + case 8: + me->SetUInt32Value(UNIT_VIRTUAL_ITEM_SLOT_ID + 0, uint32(EQUIP_UNEQUIP)); + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + me->CastSpell(pTemp, SPELL_ASHBRINGER, true); + DoScriptText(EMOTE_LIGHT_OF_DAWN14, me); + SetHoldState(true); + break; + } + } + + void UpdateAI(const uint32 diff) + { + npc_escortAI::UpdateAI(diff); + + if (!bIsBattle) + { + if (uiPhase_timer < diff) + { + // ******* Before battle ***************************************************************** + switch(uiStep) + { + case 0: // countdown + //UpdateWorldState(me->GetMap(), WORLD_STATE_COUNTDOWN, 1); + break; + + case 1: // just delay + //UpdateWorldState(me->GetMap(), WORLD_STATE_REMAINS, 1); + UpdateWorldState(me->GetMap(), WORLD_STATE_COUNTDOWN, 0); + UpdateWorldState(me->GetMap(), WORLD_STATE_EVENT_BEGIN, 1); + me->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP); + JumpToNextStep(3000); + break; + + case 2: + DoScriptText(SAY_LIGHT_OF_DAWN04, me); + if (Creature* pKoltira = GetClosestCreatureWithEntry(me, NPC_KOLTIRA_DEATHWEAVER, 50.0f)) + uiKoltiraGUID = pKoltira->GetGUID(); + if (Creature* pOrbaz = GetClosestCreatureWithEntry(me, NPC_ORBAZ_BLOODBANE, 50.0f)) + uiOrbazGUID = pOrbaz->GetGUID(); + if (Creature* pThassarian = GetClosestCreatureWithEntry(me, NPC_THASSARIAN, 50.0f)) + uiThassarianGUID = pThassarian->GetGUID(); + JumpToNextStep(10000); + break; + + case 3: // rise + DoScriptText(SAY_LIGHT_OF_DAWN05, me); + JumpToNextStep(3000); + break; + + case 4: // summon ghoul + // Dunno whats the summon spell, so workaround + DoCast(me, 33271); // shack effect + uiPhase_timer = 500; + if (uiSummon_counter < ENCOUNTER_GHOUL_NUMBER) + { + Unit* pTemp = me->SummonCreature(NPC_ACHERUS_GHOUL, (me->GetPositionX()-20)+rand()%40, (me->GetPositionY()-20)+rand()%40, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); + pTemp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->setFaction(2084); + uiGhoulGUID[uiSummon_counter] = pTemp->GetGUID(); + uiSummon_counter++; + } + else + { + uiSummon_counter = 0; + uiStep++; + } + break; + + case 5: // summon abomination + DoCast(me, 33271); // shack effect + uiPhase_timer = 500; + if (uiSummon_counter < ENCOUNTER_ABOMINATION_NUMBER) + { + Unit* pTemp = me->SummonCreature(NPC_RAMPAGING_ABOMINATION, (me->GetPositionX()-20)+rand()%40, (me->GetPositionY()-20)+rand()%40, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); + pTemp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->setFaction(2084); + uiAbominationGUID[uiSummon_counter] = pTemp->GetGUID(); + uiSummon_counter++; + } + else + { + uiSummon_counter = 0; + uiStep++; + } + break; + + case 6: // summon warrior + DoCast(me, 33271); // shack effect + uiPhase_timer = 500; + if (uiSummon_counter < ENCOUNTER_WARRIOR_NUMBER) + { + Unit* pTemp = me->SummonCreature(NPC_WARRIOR_OF_THE_FROZEN_WASTES, (me->GetPositionX()-20)+rand()%40, (me->GetPositionY()-20)+rand()%40, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); + pTemp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->setFaction(2084); + uiWarriorGUID[uiSummon_counter] = pTemp->GetGUID(); + uiSummon_counter++; + } + else + { + uiSummon_counter = 0; + uiStep++; + } + break; + + case 7: // summon warrior + DoCast(me, 33271); // shack effect + uiPhase_timer = 500; + if (uiSummon_counter < ENCOUNTER_BEHEMOTH_NUMBER) + { + Unit* pTemp = me->SummonCreature(NPC_FLESH_BEHEMOTH, (me->GetPositionX()-20)+rand()%40, (me->GetPositionY()-20)+rand()%40, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); + pTemp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->setFaction(2084); + uiBehemothGUID[uiSummon_counter] = pTemp->GetGUID(); + uiSummon_counter++; + } + else + { + uiSummon_counter = 0; + uiStep++; + } + break; + + case 8: // summon announce + DoScriptText(SAY_LIGHT_OF_DAWN06, me); + JumpToNextStep(5000); + break; + + case 9: // charge begins + SetHoldState(false); + if (Unit* pTemp = Unit::GetUnit((*me), uiKoltiraGUID)) + { + pTemp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z); + } + if (Unit* pTemp = Unit::GetUnit((*me), uiOrbazGUID)) + { + pTemp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z); + } + if (Unit* pTemp = Unit::GetUnit((*me), uiThassarianGUID)) + { + pTemp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z); + } + for(uint8 i = 0; i < ENCOUNTER_ABOMINATION_NUMBER; ++i) + if (Unit* pTemp = Unit::GetUnit((*me), uiAbominationGUID[i])) + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z); + for(uint8 i = 0; i < ENCOUNTER_BEHEMOTH_NUMBER; ++i) + if (Unit* pTemp = Unit::GetUnit((*me), uiBehemothGUID[i])) + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z); + for(uint8 i = 0; i < ENCOUNTER_GHOUL_NUMBER; ++i) + if (Unit* pTemp = Unit::GetUnit((*me), uiGhoulGUID[i])) + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z); + for(uint8 i = 0; i < ENCOUNTER_WARRIOR_NUMBER; ++i) + if (Unit* pTemp = Unit::GetUnit((*me), uiWarriorGUID[i])) + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z); + JumpToNextStep(5000); + break; + + // ******* After battle ***************************************************************** + case 11: // Tirion starts to speak + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN28, pTemp); + JumpToNextStep(21000); + break; + + case 12: + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN29, pTemp); + JumpToNextStep(13000); + break; + + case 13: + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN30, pTemp); + JumpToNextStep(13000); + break; + + case 14: + ((Unit*)me)->SetStandState(UNIT_STAND_STATE_STAND); + DoScriptText(SAY_LIGHT_OF_DAWN31, me); + JumpToNextStep(7000); + break; + + case 15: // summon gate + if (Unit* pTemp = me->SummonCreature(NPC_HIGHLORD_ALEXANDROS_MOGRAINE, LightofDawnLoc[22].x, LightofDawnLoc[22].y, LightofDawnLoc[22].z, LightofDawnLoc[22].o, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000)) + { + pTemp->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); + pTemp->CastSpell(pTemp, SPELL_ALEXANDROS_MOGRAINE_SPAWN, true); + DoScriptText(EMOTE_LIGHT_OF_DAWN06, pTemp); + uiAlexandrosGUID = pTemp->GetGUID(); + } + JumpToNextStep(4000); + break; + + case 16: // Alexandros out + if (Unit* pTemp = Unit::GetUnit((*me), uiAlexandrosGUID)) + { + pTemp->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[23].x, LightofDawnLoc[23].y, LightofDawnLoc[23].z); + DoScriptText(SAY_LIGHT_OF_DAWN32, pTemp); + } + SetHoldState(false); // makes darion turns back + JumpToNextStep(5000); + break; + + case 17: + ((Unit*)me)->SetStandState(UNIT_STAND_STATE_KNEEL); + DoScriptText(SAY_LIGHT_OF_DAWN34, me); + JumpToNextStep(5000); + break; + + case 18: // Darion's spirit out + if (Unit* pTemp = me->SummonCreature(NPC_DARION_MOGRAINE, LightofDawnLoc[24].x, LightofDawnLoc[24].y, LightofDawnLoc[24].z, LightofDawnLoc[24].o, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000)) + { + DoScriptText(SAY_LIGHT_OF_DAWN35, pTemp); + pTemp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + uiDarionGUID = pTemp->GetGUID(); + } + JumpToNextStep(4000); + break; + + case 19: // runs to father + if (Unit* pTemp = Unit::GetUnit((*me), uiDarionGUID)) + { + DoScriptText(EMOTE_LIGHT_OF_DAWN07, pTemp); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[25].x, LightofDawnLoc[25].y, LightofDawnLoc[25].z); + } + JumpToNextStep(4000); + break; + + case 20: + if (Unit* pTemp = Unit::GetUnit((*me), uiDarionGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN36, pTemp); + JumpToNextStep(4000); + break; + + case 21: + if (Unit* pTemp = Unit::GetUnit((*me), uiDarionGUID)) + DoScriptText(EMOTE_LIGHT_OF_DAWN08, pTemp); + JumpToNextStep(4000); + break; + + case 22: + if (Unit* pTemp = Unit::GetUnit((*me), uiAlexandrosGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN37, pTemp); + JumpToNextStep(8000); + break; + + case 23: + if (Unit* pTemp = Unit::GetUnit((*me), uiDarionGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN38, pTemp); + JumpToNextStep(8000); + break; + + case 24: + if (Unit* pTemp = Unit::GetUnit((*me), uiAlexandrosGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN39, pTemp); + + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) // Tirion moves forward here + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[1].x, LightofDawnLoc[1].y, LightofDawnLoc[1].z); + + JumpToNextStep(15000); + break; + + case 25: + if (Unit* pTemp = Unit::GetUnit((*me), uiDarionGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN40, pTemp); + JumpToNextStep(11000); + break; + + case 26: + if (Unit* pTemp = Unit::GetUnit((*me), uiAlexandrosGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN41, pTemp); + JumpToNextStep(5000); + break; + + case 27: + if (Unit* pTemp = Unit::GetUnit((*me), uiDarionGUID)) + pTemp->setDeathState(JUST_DIED); + JumpToNextStep(24000); + break; + + case 28: + if (Unit* pTemp = Unit::GetUnit((*me), uiAlexandrosGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN42, pTemp); + JumpToNextStep(6000); + break; + + case 29: // lich king spawns + if (Unit* pTemp = me->SummonCreature(NPC_THE_LICH_KING, LightofDawnLoc[26].x, LightofDawnLoc[26].y, LightofDawnLoc[26].z, LightofDawnLoc[26].o, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000)) + { + DoScriptText(SAY_LIGHT_OF_DAWN43, pTemp); + uiLichKingGUID = pTemp->GetGUID(); + if (Unit* pAlex = Unit::GetUnit((*me), uiAlexandrosGUID)) + pTemp->CastSpell(pAlex, SPELL_SOUL_FEAST_ALEX, false); + } + JumpToNextStep(2000); + break; + + case 30: + if (Unit* pTemp = Unit::GetUnit((*me), uiAlexandrosGUID)) // just hide him + { + DoScriptText(EMOTE_LIGHT_OF_DAWN09, pTemp); + pTemp->SetVisibility(VISIBILITY_OFF); + } + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) + { + pTemp->InterruptNonMeleeSpells(false); + DoScriptText(SAY_LIGHT_OF_DAWN45, pTemp); + } + JumpToNextStep(3000); + break; + + case 31: + ((Unit*)me)->SetStandState(UNIT_STAND_STATE_STAND); + DoScriptText(EMOTE_LIGHT_OF_DAWN10, me); + DoScriptText(SAY_LIGHT_OF_DAWN44, me); + JumpToNextStep(3000); + break; + + case 32: + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[27].x, LightofDawnLoc[27].y, LightofDawnLoc[27].z); + JumpToNextStep(6000); + break; + + case 33: // Darion supports to jump to lich king here +// disable if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) +// because TRINITY DoCast(me, SPELL_MOGRAINE_CHARGE); // jumping charge +// doesn't make it looks well, so workarounds, Darion charges, looks better + me->SetSpeed(MOVE_RUN, 3.0f); + me->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + SetHoldState(false); + JumpToNextStep(0); + break; + + case 35: // Lich king counterattacks + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) + { + pTemp->HandleEmoteCommand(EMOTE_ONESHOT_KICK); + DoScriptText(SAY_LIGHT_OF_DAWN46, pTemp); + } + me->SetSpeed(MOVE_RUN, 6.0f); + ((Unit*)me)->SetStandState(UNIT_STAND_STATE_DEAD); + SetHoldState(false); // Darion got kicked by lich king + JumpToNextStep(0); + break; + + case 37: // Lich king counterattacks + ((Unit*)me)->SetStandState(UNIT_STAND_STATE_KNEEL); + JumpToNextStep(3000); + break; + + case 38: + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN47, pTemp); + JumpToNextStep(8000); + break; + + case 39: + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN48, pTemp); + JumpToNextStep(15000); + break; + + case 40: + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN49, pTemp); + JumpToNextStep(17000); + break; + + case 41: // Lich king - Apocalypse + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) + { + DoScriptText(EMOTE_LIGHT_OF_DAWN11, pTemp); + DoScriptText(SAY_LIGHT_OF_DAWN51, pTemp); + if (Unit* pTirion = Unit::GetUnit((*me), uiTirionGUID)) + { + ((Unit*)pTirion)->SetStandState(UNIT_STAND_STATE_KNEEL); + //pTemp->CastSpell(pTirion, SPELL_APOCALYPSE, false); // not working + pTemp->CastSpell(pTirion, SPELL_SOUL_FEAST_TIRION, false); + DoScriptText(EMOTE_LIGHT_OF_DAWN12, pTirion); + } + } + JumpToNextStep(2000); + break; + + case 42: // Maxwell yells for attack + { + float fLichPositionX, fLichPositionY, fLichPositionZ; + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) + { + fLichPositionX = pTemp->GetPositionX(); + fLichPositionY = pTemp->GetPositionY(); + fLichPositionZ = pTemp->GetPositionZ(); + } + + if (fLichPositionX && fLichPositionY) + { + Unit* pTemp; + pTemp = me->SummonCreature(NPC_DEFENDER_OF_THE_LIGHT, LightofDawnLoc[0].x+rand()%10, LightofDawnLoc[0].y+rand()%10, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 10000); + pTemp->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_ATTACK_UNARMED); + pTemp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->SetSpeed(MOVE_RUN, 2.0f); + pTemp->setFaction(me->getFaction()); + pTemp->GetMotionMaster()->MovePoint(0, fLichPositionX, fLichPositionY, fLichPositionZ); + uiDefenderGUID[0] = pTemp->GetGUID(); + + pTemp = me->SummonCreature(NPC_RIMBLAT_EARTHSHATTER, LightofDawnLoc[0].x+rand()%10, LightofDawnLoc[0].y+rand()%10, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 10000); + pTemp->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_ATTACK_UNARMED); + pTemp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->SetSpeed(MOVE_RUN, 2.0f); + pTemp->setFaction(me->getFaction()); + pTemp->GetMotionMaster()->MovePoint(0, fLichPositionX, fLichPositionY, fLichPositionZ); + uiEarthshatterGUID[0] = pTemp->GetGUID(); + } + if (Unit* pTemp = Unit::GetUnit((*me), uiMaxwellGUID)) + { + pTemp->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_ATTACK_UNARMED); + pTemp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->SetSpeed(MOVE_RUN, 2.0f); + pTemp->GetMotionMaster()->MovePoint(0, fLichPositionX, fLichPositionY, fLichPositionZ); + DoScriptText(SAY_LIGHT_OF_DAWN50, pTemp); + } + if (Unit* pTemp = Unit::GetUnit((*me), uiKorfaxGUID)) + { + pTemp->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_ATTACK_UNARMED); + pTemp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->SetSpeed(MOVE_RUN, 2.0f); + pTemp->HandleEmoteCommand(EMOTE_STATE_ATTACK_UNARMED); + pTemp->GetMotionMaster()->MovePoint(0, fLichPositionX, fLichPositionY, fLichPositionZ); + } + if (Unit* pTemp = Unit::GetUnit((*me), uiEligorGUID)) + { + pTemp->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_ATTACK_UNARMED); + pTemp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->SetSpeed(MOVE_RUN, 2.0f); + pTemp->GetMotionMaster()->MovePoint(0, fLichPositionX, fLichPositionY, fLichPositionZ); + } + } + JumpToNextStep(4500); + break; + + case 43: // They all got kicked + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) + DoScriptText(EMOTE_LIGHT_OF_DAWN13, pTemp); + + if (Unit* pTemp = Unit::GetUnit((*me), uiMaxwellGUID)) + { + pTemp->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_NONE); + pTemp->SetSpeed(MOVE_RUN, 6.0f); + ((Unit*)pTemp)->SetStandState(UNIT_STAND_STATE_DEAD); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[14].x, LightofDawnLoc[14].y, LightofDawnLoc[14].z); + } + if (Unit* pTemp = Unit::GetUnit((*me), uiKorfaxGUID)) + { + pTemp->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_NONE); + pTemp->SetSpeed(MOVE_RUN, 6.0f); + ((Unit*)pTemp)->SetStandState(UNIT_STAND_STATE_DEAD); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[11].x, LightofDawnLoc[11].y, LightofDawnLoc[11].z); + } + if (Unit* pTemp = Unit::GetUnit((*me), uiEligorGUID)) + { + pTemp->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_NONE); + pTemp->SetSpeed(MOVE_RUN, 6.0f); + ((Unit*)pTemp)->SetStandState(UNIT_STAND_STATE_DEAD); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[17].x, LightofDawnLoc[17].y, LightofDawnLoc[17].z); + } + if (Unit* pTemp = Unit::GetUnit((*me), uiDefenderGUID[0])) + { + pTemp->SetSpeed(MOVE_RUN, 6.0f); + ((Unit*)pTemp)->SetStandState(UNIT_STAND_STATE_DEAD); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x+rand()%10, LightofDawnLoc[0].y+rand()%10, LightofDawnLoc[0].z); + } + if (Unit* pTemp = Unit::GetUnit((*me), uiEarthshatterGUID[0])) + { + pTemp->SetSpeed(MOVE_RUN, 6.0f); + ((Unit*)pTemp)->SetStandState(UNIT_STAND_STATE_DEAD); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[0].x+rand()%10, LightofDawnLoc[0].y+rand()%10, LightofDawnLoc[0].z); + } + JumpToNextStep(3000); + break; + + case 44: // make them stand up + if (Unit* pTemp = Unit::GetUnit((*me), uiMaxwellGUID)) + ((Unit*)pTemp)->SetStandState(UNIT_STAND_STATE_STAND); + if (Unit* pTemp = Unit::GetUnit((*me), uiKorfaxGUID)) + ((Unit*)pTemp)->SetStandState(UNIT_STAND_STATE_STAND); + if (Unit* pTemp = Unit::GetUnit((*me), uiEligorGUID)) + ((Unit*)pTemp)->SetStandState(UNIT_STAND_STATE_STAND); + JumpToNextStep(1000); + break; + + case 45: + DoScriptText(SAY_LIGHT_OF_DAWN52, me); + JumpToNextStep(5000); + break; + + case 46: // Darion stand up, "not today" + me->SetSpeed(MOVE_RUN, 1.0f); + me->AddUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + ((Unit*)me)->SetStandState(UNIT_STAND_STATE_STAND); + DoScriptText(SAY_LIGHT_OF_DAWN53, me); + SetHoldState(false); // Darion throws sword + JumpToNextStep(7000); + break; + + case 47: // Ashbringer rebirth + ((Unit*)me)->SetStandState(UNIT_STAND_STATE_KNEEL); + DoScriptText(EMOTE_LIGHT_OF_DAWN15, me); + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + { + ((Unit*)pTemp)->SetStandState(UNIT_STAND_STATE_STAND); + pTemp->SetUInt32Value(UNIT_VIRTUAL_ITEM_SLOT_ID + 0, uint32(EQUIP_HIGHLORD_TIRION_FORDRING)); + pTemp->CastSpell(pTemp, SPELL_REBIRTH_OF_THE_ASHBRINGER, false); + } + JumpToNextStep(1000); + break; + + case 48: // Show the cleansing effect (dawn of light) + if (GameObject* pGo = me->GetMap()->GetGameObject(uiDawnofLightGUID)) + pGo->SetPhaseMask(128, true); + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + { + if (pTemp->HasAura(SPELL_REBIRTH_OF_THE_ASHBRINGER, 0)) + pTemp->RemoveAurasDueToSpell(SPELL_REBIRTH_OF_THE_ASHBRINGER); + pTemp->CastSpell(pTemp, 41542, false); // workarounds, light expoded, makes it cool + pTemp->HandleEmoteCommand(EMOTE_ONESHOT_ROAR); + } + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) + pTemp->InterruptNonMeleeSpells(false); + JumpToNextStep(2500); + break; + + case 49: + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN54, pTemp); + JumpToNextStep(4000); + break; + + case 50: + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN55, pTemp); + JumpToNextStep(5000); + break; + + case 51: + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN56, pTemp); + JumpToNextStep(1000); + break; + + case 52: // Tiron charges + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + { + DoScriptText(EMOTE_LIGHT_OF_DAWN16, pTemp); + pTemp->CastSpell(pTemp, SPELL_TIRION_CHARGE, false); // jumping charge + pTemp->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_READY2H); + pTemp->SetSpeed(MOVE_RUN, 3.0f); // workarounds, make Tirion still running + pTemp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[2].x, LightofDawnLoc[2].y, LightofDawnLoc[2].z); + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) + pTemp->Relocate(LightofDawnLoc[28].x, LightofDawnLoc[28].y, LightofDawnLoc[28].z); // workarounds, he should kick back by Tirion, but here we relocate him + } + JumpToNextStep(1500); + break; + + case 53: + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN57, pTemp); + JumpToNextStep(1000); + break; + + case 54: + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) + { + pTemp->SetSpeed(MOVE_RUN, 1.0f); + me->AddUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[29].x, LightofDawnLoc[29].y, LightofDawnLoc[29].z); // 26 + } + JumpToNextStep(4000); + break; + + case 55: + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) + ((Unit*)pTemp)->SetStandState(UNIT_STAND_STATE_KNEEL); + JumpToNextStep(2000); + break; + + case 56: + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) + ((Unit*)pTemp)->SetStandState(UNIT_STAND_STATE_STAND); + JumpToNextStep(1500); + break; + + case 57: + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN58, pTemp); + JumpToNextStep(10000); + break; + + case 58: + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN59, pTemp); + JumpToNextStep(10000); + break; + + case 59: + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) + pTemp->CastSpell(pTemp, SPELL_TELEPORT_VISUAL, false); + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) // Tirion runs to Darion + { + pTemp->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_NONE); + pTemp->SetSpeed(MOVE_RUN, 1.0f); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[6].x, LightofDawnLoc[6].y, LightofDawnLoc[6].z); + } + JumpToNextStep(2500); + break; + + case 60: + if (Unit* pTemp = Unit::GetUnit((*me), uiLichKingGUID)) // Lich king disappears here + { + DoScriptText(EMOTE_LIGHT_OF_DAWN17, pTemp); + pTemp->DealDamage(pTemp, pTemp->GetHealth(), NULL, DIRECT_DAMAGE, SPELL_SCHOOL_MASK_NORMAL, NULL, false); + } + JumpToNextStep(10000); + break; + + case 61: + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN60, pTemp); + JumpToNextStep(3000); + break; + + case 62: + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + { + pTemp->AddUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[7].x, LightofDawnLoc[7].y, LightofDawnLoc[7].z); + } + JumpToNextStep(5500); + break; + + case 63: + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + { + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[8].x, LightofDawnLoc[8].y, LightofDawnLoc[8].z); + DoScriptText(SAY_LIGHT_OF_DAWN61, pTemp); + } + JumpToNextStep(15000); + break; + + case 64: + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN62, pTemp); + JumpToNextStep(7000); + break; + + case 65: + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN63, pTemp); + JumpToNextStep(10000); + break; + + case 66: + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN64, pTemp); + JumpToNextStep(11000); + break; + + case 67: + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN65, pTemp); + JumpToNextStep(10000); + break; + + case 68: + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN66, pTemp); + JumpToNextStep(8000); + break; + + case 69: + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN67, pTemp); + JumpToNextStep(10000); + break; + + case 70: + ((Unit*)me)->SetStandState(UNIT_STAND_STATE_STAND); + DoScriptText(SAY_LIGHT_OF_DAWN68, me); + JumpToNextStep(10000); + break; + + case 71: + if (GameObject* pGo = me->GetMap()->GetGameObject(uiDawnofLightGUID)) // Turn off dawn of light + pGo->SetPhaseMask(0, true); + + { + Map *map = me->GetMap(); // search players with in 50 yards for quest credit + Map::PlayerList const &PlayerList = map->GetPlayers(); + if (!PlayerList.isEmpty()) + { + for (Map::PlayerList::const_iterator i = PlayerList.begin(); i != PlayerList.end(); ++i) + if (i->getSource()->isAlive() && me->IsWithinDistInMap(i->getSource(), 50)) + i->getSource()->CastSpell(i->getSource(), SPELL_THE_LIGHT_OF_DAWN_Q, false); + } + } + me->SetVisibility(VISIBILITY_OFF); // respawns another Darion for quest turn in + me->SummonCreature(NPC_HIGHLORD_DARION_MOGRAINE, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ(), 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 180000); + JumpToNextStep(1000); + break; + + case 72: + SetHoldState(false); // Escort ends + JumpToNextStep(0); + break; + } + + }else uiPhase_timer -= diff; + } + + // ******* During battle ***************************************************************** + else + { + if (uiAnti_magic_zone < diff) + { + DoCast(me, SPELL_ANTI_MAGIC_ZONE1); + uiAnti_magic_zone = 25000 + rand()%5000; + }else uiAnti_magic_zone -= diff; + + if (uiDeath_strike < diff) + { + DoCast(me->getVictim(), SPELL_DEATH_STRIKE); + uiDeath_strike = 5000 + rand()%5000; + }else uiDeath_strike -= diff; + + if (uiDeath_embrace < diff) + { + DoCast(me->getVictim(), SPELL_DEATH_EMBRACE); + uiDeath_embrace = 5000 + rand()%5000; + }else uiDeath_embrace -= diff; + + if (uiIcy_touch < diff) + { + DoCast(me->getVictim(), SPELL_ICY_TOUCH1); + uiIcy_touch = 5000 + rand()%5000; + }else uiIcy_touch -= diff; + + if (uiUnholy_blight < diff) + { + DoCast(me->getVictim(), SPELL_UNHOLY_BLIGHT); + uiUnholy_blight = 5000 + rand()%5000; + }else uiUnholy_blight -= diff; + + if (uiFight_speech < diff) + { + switch(rand()%15) + { + case 0: DoScriptText(SAY_LIGHT_OF_DAWN09, me);break; + case 1: DoScriptText(SAY_LIGHT_OF_DAWN10, me);break; + case 2: DoScriptText(SAY_LIGHT_OF_DAWN11, me);break; + case 3: DoScriptText(SAY_LIGHT_OF_DAWN12, me);break; + case 4: DoScriptText(SAY_LIGHT_OF_DAWN13, me);break; + case 5: DoScriptText(SAY_LIGHT_OF_DAWN14, me);break; + case 6: DoScriptText(SAY_LIGHT_OF_DAWN15, me);break; + case 7: DoScriptText(SAY_LIGHT_OF_DAWN16, me);break; + case 8: DoScriptText(SAY_LIGHT_OF_DAWN17, me);break; + case 9: DoScriptText(SAY_LIGHT_OF_DAWN18, me);break; + case 10: DoScriptText(SAY_LIGHT_OF_DAWN19, me);break; + case 11: DoScriptText(SAY_LIGHT_OF_DAWN20, me);break; + case 12: DoScriptText(SAY_LIGHT_OF_DAWN21, me);break; + case 13: DoScriptText(SAY_LIGHT_OF_DAWN22, me);break; + case 14: DoScriptText(SAY_LIGHT_OF_DAWN23, me);break; + case 15: DoScriptText(SAY_LIGHT_OF_DAWN24, me);break; + } + uiFight_speech = 15000 + rand()%5000; + }else uiFight_speech -= diff; + + // Check spawns + if (uiSpawncheck < diff) + { + SpawnNPC(); + uiSpawncheck = 1000; + }else uiSpawncheck -= diff; + + // Check targets + if (uiTargetcheck < diff) + { + for(uint8 i = 0; i < ENCOUNTER_GHOUL_NUMBER; ++i) + NPCChangeTarget(uiGhoulGUID[i]); + for(uint8 i = 0; i < ENCOUNTER_WARRIOR_NUMBER; ++i) + NPCChangeTarget(uiWarriorGUID[i]); + for(uint8 i = 0; i < ENCOUNTER_ABOMINATION_NUMBER; ++i) + NPCChangeTarget(uiAbominationGUID[i]); + for(uint8 i = 0; i < ENCOUNTER_BEHEMOTH_NUMBER; ++i) + NPCChangeTarget(uiBehemothGUID[i]); + NPCChangeTarget(uiKoltiraGUID); + NPCChangeTarget(uiOrbazGUID); + NPCChangeTarget(uiThassarianGUID); + + uiTargetcheck = 10000; + }else uiTargetcheck -= diff; + + // Battle end + if (uiFight_duration < diff + 5000) + { + if (!uiTirionGUID) + if (Unit* pTemp = me->SummonCreature(NPC_HIGHLORD_TIRION_FORDRING, LightofDawnLoc[0].x, LightofDawnLoc[0].y, LightofDawnLoc[0].z, 1.528, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 600000)) + { + pTemp->setFaction(me->getFaction()); + pTemp->SetUInt32Value(UNIT_VIRTUAL_ITEM_SLOT_ID + 0, uint32(EQUIP_UNEQUIP)); + DoScriptText(SAY_LIGHT_OF_DAWN25, pTemp); + uiTirionGUID = pTemp->GetGUID(); + } + } + if (uiFight_duration < diff) + { + bIsBattle = false; + uiFight_duration = 300000; + + if (me->HasAura(SPELL_THE_MIGHT_OF_MOGRAINE, 0)) + me->RemoveAurasDueToSpell(SPELL_THE_MIGHT_OF_MOGRAINE); + me->RemoveAllAuras(); + me->DeleteThreatList(); + me->CombatStop(true); + me->InterruptNonMeleeSpells(false); + me->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + + for(uint8 i = 0; i < ENCOUNTER_DEFENDER_NUMBER; ++i) + DespawnNPC(uiDefenderGUID[i]); + for(uint8 i = 0; i < ENCOUNTER_EARTHSHATTER_NUMBER; ++i) + DespawnNPC(uiEarthshatterGUID[i]); + for(uint8 i = 0; i < ENCOUNTER_ABOMINATION_NUMBER; ++i) + DespawnNPC(uiAbominationGUID[i]); + for(uint8 i = 0; i < ENCOUNTER_BEHEMOTH_NUMBER; ++i) + DespawnNPC(uiBehemothGUID[i]); + for(uint8 i = 0; i < ENCOUNTER_GHOUL_NUMBER; ++i) + DespawnNPC(uiGhoulGUID[i]); + for(uint8 i = 0; i < ENCOUNTER_WARRIOR_NUMBER; ++i) + DespawnNPC(uiWarriorGUID[i]); + + if (Unit* pTemp = Unit::GetUnit((*me), uiKorfaxGUID)) + { + pTemp->RemoveAllAuras(); + pTemp->DeleteThreatList(); + pTemp->CombatStop(true); + pTemp->AttackStop(); + pTemp->setFaction(me->getFaction()); + pTemp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[9].x, LightofDawnLoc[9].y, LightofDawnLoc[9].z); + } + + if (Unit* pTemp = Unit::GetUnit((*me), uiMaxwellGUID)) + { + pTemp->RemoveAllAuras(); + pTemp->DeleteThreatList(); + pTemp->CombatStop(true); + pTemp->AttackStop(); + pTemp->setFaction(me->getFaction()); + pTemp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[12].x, LightofDawnLoc[12].y, LightofDawnLoc[12].z); + } + + if (Unit* pTemp = Unit::GetUnit((*me), uiEligorGUID)) + { + pTemp->RemoveAllAuras(); + pTemp->DeleteThreatList(); + pTemp->CombatStop(true); + pTemp->AttackStop(); + pTemp->setFaction(me->getFaction()); + pTemp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[15].x, LightofDawnLoc[15].y, LightofDawnLoc[15].z); + } + DespawnNPC(uiRayneGUID); + + if (Unit* pTemp = Unit::GetUnit((*me), uiKoltiraGUID)) + { + pTemp->RemoveAllAuras(); + pTemp->DeleteThreatList(); + pTemp->CombatStop(true); + pTemp->AttackStop(); + pTemp->setFaction(me->getFaction()); + pTemp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[18].x, LightofDawnLoc[18].y, LightofDawnLoc[18].z); + pTemp->CastSpell(pTemp, SPELL_THE_LIGHT_OF_DAWN, false); + } + + if (Unit* pTemp = Unit::GetUnit((*me), uiOrbazGUID)) + DoScriptText(EMOTE_LIGHT_OF_DAWN04, pTemp); + + if (Unit* pTemp = Unit::GetUnit((*me), uiThassarianGUID)) + { + pTemp->RemoveAllAuras(); + pTemp->DeleteThreatList(); + pTemp->CombatStop(true); + pTemp->AttackStop(); + pTemp->setFaction(me->getFaction()); + pTemp->RemoveUnitMovementFlag(MOVEMENTFLAG_WALK_MODE); + pTemp->GetMotionMaster()->MovePoint(0, LightofDawnLoc[20].x, LightofDawnLoc[20].y, LightofDawnLoc[20].z); + pTemp->CastSpell(pTemp, SPELL_THE_LIGHT_OF_DAWN, false); + } + + if (Unit* pTemp = Unit::GetUnit((*me), uiTirionGUID)) + DoScriptText(SAY_LIGHT_OF_DAWN26, pTemp); + + SetHoldState(false); + + }else uiFight_duration -= diff; + + DoMeleeAttackIfReady(); + } + } + + void JumpToNextStep(uint32 uiTimer) + { + uiPhase_timer = uiTimer; + uiStep++; + } + + void NPCChangeTarget(uint64 ui_GUID) + { + if (Unit* pTemp = Unit::GetUnit((*me), ui_GUID)) + if (pTemp->isAlive()) + if (Unit* pTarger = SelectUnit(SELECT_TARGET_RANDOM,0)) + if (pTarger->isAlive()) + { + //((Creature*)pTemp)->DeleteThreatList(); + ((Creature*)pTemp)->AddThreat(pTarger, 0.0f); + ((Creature*)pTemp)->AI()->AttackStart(pTarger); + ((Creature*)pTemp)->SetInCombatWith(pTarger); + pTarger->SetInCombatWith(pTemp); + //((Creature*)pTemp)->GetMotionMaster()->MoveChase(pTarger, 20.0f); + } + } + + void SpawnNPC() + { + Unit* pTemp = NULL; + + // Death + for(uint8 i = 0; i < ENCOUNTER_GHOUL_NUMBER; ++i) + { + if (!(pTemp = Unit::GetUnit((*me), uiGhoulGUID[i]))) + { + pTemp = me->SummonCreature(NPC_ACHERUS_GHOUL, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); + pTemp->setFaction(2084); + uiGhoulGUID[i] = pTemp->GetGUID(); + } + } + for(uint8 i = 0; i < ENCOUNTER_ABOMINATION_NUMBER; ++i) + { + if (!(pTemp = Unit::GetUnit((*me), uiAbominationGUID[i]))) + { + pTemp = me->SummonCreature(NPC_WARRIOR_OF_THE_FROZEN_WASTES, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); + pTemp->setFaction(2084); + uiAbominationGUID[i] = pTemp->GetGUID(); + } + } + for(uint8 i = 0; i < ENCOUNTER_WARRIOR_NUMBER; ++i) + { + if (!(pTemp = Unit::GetUnit((*me), uiWarriorGUID[i]))) + { + pTemp = me->SummonCreature(NPC_RAMPAGING_ABOMINATION, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); + pTemp->setFaction(2084); + uiWarriorGUID[i] = pTemp->GetGUID(); + } + } + for(uint8 i = 0; i < ENCOUNTER_BEHEMOTH_NUMBER; ++i) + { + if (!(pTemp = Unit::GetUnit((*me), uiBehemothGUID[i]))) + { + pTemp = me->SummonCreature(NPC_FLESH_BEHEMOTH, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); + pTemp->setFaction(2084); + uiBehemothGUID[i] = pTemp->GetGUID(); + } + } + + // Dawn + for(uint8 i = 0; i < ENCOUNTER_DEFENDER_NUMBER; ++i) + { + if (!(pTemp = Unit::GetUnit((*me), uiDefenderGUID[i]))) + { + pTemp = me->SummonCreature(NPC_DEFENDER_OF_THE_LIGHT, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); + pTemp->setFaction(2089); + me->AddThreat(pTemp, 0.0f); + uiDefenderGUID[i] = pTemp->GetGUID(); + } + } + for(uint8 i = 0; i < ENCOUNTER_EARTHSHATTER_NUMBER; ++i) + { + if (!(pTemp = Unit::GetUnit((*me), uiEarthshatterGUID[i]))) + { + pTemp = me->SummonCreature(NPC_RIMBLAT_EARTHSHATTER, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); + pTemp->setFaction(2089); + me->AddThreat(pTemp, 0.0f); + uiEarthshatterGUID[i] = pTemp->GetGUID(); + } + } + if (!(pTemp = Unit::GetUnit((*me), uiKorfaxGUID))) + { + pTemp = me->SummonCreature(NPC_KORFAX_CHAMPION_OF_THE_LIGHT, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 600000); + pTemp->setFaction(2089); + me->AddThreat(pTemp, 0.0f); + uiKorfaxGUID = pTemp->GetGUID(); + } + if (!(pTemp = Unit::GetUnit((*me), uiMaxwellGUID))) + { + pTemp = me->SummonCreature(NPC_LORD_MAXWELL_TYROSUS, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 600000); + pTemp->setFaction(2089); + me->AddThreat(pTemp, 0.0f); + uiMaxwellGUID = pTemp->GetGUID(); + } + if (!(pTemp = Unit::GetUnit((*me), uiEligorGUID))) + { + pTemp = me->SummonCreature(NPC_COMMANDER_ELIGOR_DAWNBRINGER, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 600000); + pTemp->setFaction(2089); + me->AddThreat(pTemp, 0.0f); + uiEligorGUID = pTemp->GetGUID(); + } + if (!(pTemp = Unit::GetUnit((*me), uiRayneGUID))) + { + pTemp = me->SummonCreature(NPC_RAYNE, LightofDawnLoc[0].x+rand()%30, LightofDawnLoc[0].y+rand()%30, LightofDawnLoc[0].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 300000); + pTemp->setFaction(2089); + me->AddThreat(pTemp, 0.0f); + uiRayneGUID = pTemp->GetGUID(); + } + } + + void DespawnNPC(uint64 pGUID) + { + if (Unit* pTemp = Unit::GetUnit((*me), pGUID)) + if (pTemp->isAlive()) + { + pTemp->SetVisibility(VISIBILITY_OFF); + pTemp->DealDamage(pTemp, pTemp->GetHealth(), NULL, DIRECT_DAMAGE, SPELL_SCHOOL_MASK_NORMAL, NULL, false); + } + } +}; + +bool GossipHello_npc_highlord_darion_mograine(Player* pPlayer, Creature* pCreature) +{ + if (pCreature->isQuestGiver()) + pPlayer->PrepareQuestMenu( pCreature->GetGUID() ); + + if (pPlayer->GetQuestStatus(12801) == QUEST_STATUS_INCOMPLETE) + pPlayer->ADD_GOSSIP_ITEM( 0, "I am ready.", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); + + pPlayer->SEND_GOSSIP_MENU(pCreature->GetNpcTextId(), pCreature->GetGUID()); + + return true; +} + +bool GossipSelect_npc_highlord_darion_mograine(Player* pPlayer, Creature* pCreature, uint32 uiSender, uint32 uiAction) +{ + switch (uiAction) + { + case GOSSIP_ACTION_INFO_DEF+1: + pPlayer->CLOSE_GOSSIP_MENU(); + ((npc_highlord_darion_mograineAI*)pCreature->AI())->uiStep = 1; + ((npc_highlord_darion_mograineAI*)pCreature->AI())->Start(true, false, pPlayer->GetGUID()); + break; + } + return true; +} + +/*###### +## npc the lich king in dawn of light +######*/ +struct TRINITY_DLL_DECL npc_the_lich_king_tirion_dawnAI : public ScriptedAI +{ + npc_the_lich_king_tirion_dawnAI(Creature* pCreature) : ScriptedAI(pCreature) { Reset(); } + void Reset() {} + void AttackStart(Unit *who) { return; } // very sample, just don't make them aggreesive + void UpdateAI(const uint32 diff) { return; } + void JustDied(Unit* killer) {} +}; + +CreatureAI* GetAI_npc_highlord_darion_mograine(Creature* pCreature) +{ + npc_highlord_darion_mograineAI* tempAI = new npc_highlord_darion_mograineAI(pCreature); + + tempAI->FillPointMovementListForCreature(); + + return (CreatureAI*)tempAI; +} + +CreatureAI* GetAI_npc_the_lich_king_tirion_dawn(Creature* pCreature) +{ + return new npc_the_lich_king_tirion_dawnAI (pCreature); +} + +void AddSC_the_scarlet_enclave_c2() +{ + Script *newscript; + + newscript = new Script; + newscript->Name="npc_crusade_persuaded"; + newscript->GetAI = &GetAI_npc_crusade_persuaded; + newscript->RegisterSelf(); + + // 12727 Bloody Breakout + newscript = new Script; + newscript->Name = "npc_koltira_deathweaver"; + newscript->GetAI = &GetAI_npc_koltira_deathweaver; + newscript->pQuestAccept = &QuestAccept_npc_koltira_deathweaver; + newscript->RegisterSelf(); + + newscript = new Script; + newscript->Name="mob_scarlet_courier_controller"; + newscript->GetAI = &GetAI_mob_scarlet_courier_controller; + newscript->RegisterSelf(); + + newscript = new Script; + newscript->Name="mob_scarlet_courier"; + newscript->GetAI = &GetAI_mob_scarlet_courier; + newscript->RegisterSelf(); + + newscript = new Script; + newscript->Name="npc_koltira_deathweaver"; + newscript->GetAI = &GetAI_npc_koltira_deathweaver; + newscript->pQuestAccept = &QuestAccept_npc_koltira_deathweaver; + newscript->RegisterSelf(); + + newscript = new Script; + newscript->Name="mob_high_inquisitor_valroth"; + newscript->GetAI = &GetAI_mob_high_inquisitor_valroth; + newscript->RegisterSelf(); + + newscript = new Script; + newscript->Name="npc_highlord_darion_mograine"; + newscript->GetAI = &GetAI_npc_highlord_darion_mograine; + newscript->pGossipHello = &GossipHello_npc_highlord_darion_mograine; + newscript->pGossipSelect = &GossipSelect_npc_highlord_darion_mograine; + newscript->RegisterSelf(); + + newscript = new Script; + newscript->Name="npc_the_lich_king_tirion_dawn"; + newscript->GetAI = &GetAI_npc_the_lich_king_tirion_dawn; + newscript->RegisterSelf(); +}
\ No newline at end of file diff --git a/src/bindings/scripts/scripts/eastern_kingdoms/scarlet_enclave/the_scarlet_enclave.cpp b/src/bindings/scripts/scripts/eastern_kingdoms/scarlet_enclave/the_scarlet_enclave.cpp index 96a4dbdc2c4..a9f379b3819 100644 --- a/src/bindings/scripts/scripts/eastern_kingdoms/scarlet_enclave/the_scarlet_enclave.cpp +++ b/src/bindings/scripts/scripts/eastern_kingdoms/scarlet_enclave/the_scarlet_enclave.cpp @@ -1624,6 +1624,7 @@ CreatureAI* GetAI_npc_valkyr_battle_maiden(Creature* pCreature) return new npc_valkyr_battle_maidenAI (pCreature); } + void AddSC_the_scarlet_enclave() { Script *newscript; diff --git a/src/bindings/scripts/system/ScriptLoader.cpp b/src/bindings/scripts/system/ScriptLoader.cpp index 236dab3bfcc..06997e985af 100644 --- a/src/bindings/scripts/system/ScriptLoader.cpp +++ b/src/bindings/scripts/system/ScriptLoader.cpp @@ -91,6 +91,8 @@ extern void AddSC_boss_ragnaros(); extern void AddSC_instance_molten_core(); extern void AddSC_molten_core(); extern void AddSC_the_scarlet_enclave(); //Scarlet Enclave +extern void AddSC_the_scarlet_enclave_c1(); +extern void AddSC_the_scarlet_enclave_c2(); extern void AddSC_boss_arcanist_doan(); //Scarlet Monastery extern void AddSC_boss_azshir_the_sleepless(); extern void AddSC_boss_bloodmage_thalnos(); @@ -477,6 +479,8 @@ void AddScripts() AddSC_instance_molten_core(); AddSC_molten_core(); AddSC_the_scarlet_enclave(); //Scarlet Enclave + AddSC_the_scarlet_enclave_c1(); + AddSC_the_scarlet_enclave_c2(); AddSC_boss_arcanist_doan(); //Scarlet Monastery AddSC_boss_azshir_the_sleepless(); AddSC_boss_bloodmage_thalnos(); diff --git a/src/game/CharacterHandler.cpp b/src/game/CharacterHandler.cpp index f2e5d3be287..d39b881095e 100644 --- a/src/game/CharacterHandler.cpp +++ b/src/game/CharacterHandler.cpp @@ -1259,13 +1259,16 @@ void WorldSession::HandleCharCustomize(WorldPacket& recv_data) } CharacterDatabase.escape_string(newname); + if(QueryResult *result = CharacterDatabase.PQuery("SELECT name FROM characters WHERE guid ='%u'", GUID_LOPART(guid))) + { + std::string oldname = result->Fetch()[0].GetCppString(); + std::string IP_str = GetRemoteAddress(); + sLog.outChar("Account: %d (IP: %s), Character[%s] (guid:%u) Customized to: %s", GetAccountId(), IP_str.c_str(), oldname.c_str(), GUID_LOPART(guid), newname.c_str()); + } Player::Customize(guid, gender, skin, face, hairStyle, hairColor, facialHair); CharacterDatabase.PExecute("UPDATE characters set name = '%s', at_login = at_login & ~ %u WHERE guid ='%u'", newname.c_str(), uint32(AT_LOGIN_CUSTOMIZE), GUID_LOPART(guid)); CharacterDatabase.PExecute("DELETE FROM character_declinedname WHERE guid ='%u'", GUID_LOPART(guid)); - std::string IP_str = GetRemoteAddress(); - sLog.outChar("Account: %d (IP: %s), Character[%s] (guid:%u) Customized to: %s", GetAccountId(), IP_str.c_str(), GetPlayer()->GetName(), GUID_LOPART(guid), newname.c_str()); - WorldPacket data(SMSG_CHAR_CUSTOMIZE, 1+8+(newname.size()+1)+6); data << uint8(RESPONSE_SUCCESS); data << uint64(guid); diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index 4824b260334..39eb470bc9c 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -2014,10 +2014,11 @@ void Spell::EffectForceCast(uint32 i) { switch(m_spellInfo->Id) { + // 52463 also use custom damage and the summon veh spell use that damamge and cast mount aura? case 52588: unitTarget->RemoveAura(damage); break; } } - else + else // this was for 52463, need further study { unitTarget->CastCustomSpell(unitTarget, spellInfo->Id, &damage, NULL, NULL, true, NULL, NULL, m_originalCasterGUID); return; |