Merge branch 'master' of github.com:TrinityCore/TrinityCore into 4.3.4

This commit is contained in:
Vincent-Michael committed 2014-08-30 05:03:47 +02:00
commit f89739dab5
16 files changed
+4197 -300

No files matched your search

File diff suppressed because it is too large. Load diff
@@ -0,0 +1,497 @@
UPDATE `creature_template` SET `faction`=103 WHERE `entry`=31543;
UPDATE `creature_template` SET `faction`=103 WHERE `entry`=40143;
UPDATE `creature_template` SET `faction`=103 WHERE `entry`=40144;
UPDATE `creature_template` SET `faction`=103 WHERE `entry`=40145;
UPDATE `creature_template` SET `faction`=114 WHERE `entry`=30808;
UPDATE `creature_template` SET `faction`=114 WHERE `entry`=31875;
UPDATE `creature_template` SET `faction`=114 WHERE `entry`=31878;
UPDATE `creature_template` SET `faction`=1194 WHERE `entry`=22565;
UPDATE `creature_template` SET `faction`=1194 WHERE `entry`=22578;
UPDATE `creature_template` SET `faction`=1194 WHERE `entry`=22686;
UPDATE `creature_template` SET `faction`=1194 WHERE `entry`=22768;
UPDATE `creature_template` SET `faction`=1194 WHERE `entry`=22769;
UPDATE `creature_template` SET `faction`=1194 WHERE `entry`=32044;
UPDATE `creature_template` SET `faction`=1194 WHERE `entry`=32056;
UPDATE `creature_template` SET `faction`=1194 WHERE `entry`=32107;
UPDATE `creature_template` SET `faction`=1194 WHERE `entry`=32108;
UPDATE `creature_template` SET `faction`=1194 WHERE `entry`=32109;
UPDATE `creature_template` SET `faction`=1194 WHERE `entry`=37365;
UPDATE `creature_template` SET `faction`=1194 WHERE `entry`=37377;
UPDATE `creature_template` SET `faction`=1194 WHERE `entry`=37428;
UPDATE `creature_template` SET `faction`=1194 WHERE `entry`=37429;
UPDATE `creature_template` SET `faction`=1194 WHERE `entry`=37430;
UPDATE `creature_template` SET `faction`=12 WHERE `entry`=36088;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22530;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22532;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22534;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22536;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22538;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22539;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22556;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22564;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22566;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22590;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22592;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22594;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22603;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22610;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22612;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22629;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22664;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22669;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22673;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22675;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22677;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22688;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22716;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22718;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22720;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22741;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22746;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22752;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22754;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22755;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22757;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22771;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22773;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22774;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=22776;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=31822;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=31904;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=31906;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=31928;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=31930;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=31935;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=31937;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=31939;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=31941;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=31943;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=31945;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=31962;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=31985;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=31988;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=32002;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=32012;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=32017;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=32023;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=32058;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=32060;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=32065;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=32067;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=32069;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=32071;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=32073;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=32075;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=32122;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=32124;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=32128;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=32130;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=32132;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=32135;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=32138;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37246;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37248;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37253;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37255;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37257;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37259;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37261;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37263;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37280;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37304;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37307;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37321;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37331;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37336;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37343;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37363;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37379;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37381;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37386;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37388;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37390;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37392;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37394;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37396;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37446;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37448;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37453;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37455;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37457;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37459;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37461;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37463;
UPDATE `creature_template` SET `faction`=1214 WHERE `entry`=37466;
UPDATE `creature_template` SET `faction`=1215 WHERE `entry`=22553;
UPDATE `creature_template` SET `faction`=1215 WHERE `entry`=31995;
UPDATE `creature_template` SET `faction`=1215 WHERE `entry`=37314;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22525;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22529;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22531;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22533;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22535;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22537;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22563;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22570;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22587;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22591;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22593;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22607;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22611;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22620;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22621;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22632;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22645;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22662;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22663;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22667;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22668;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22671;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22672;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22687;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22692;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22693;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22705;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22709;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22713;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22714;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22717;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22719;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22753;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22756;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22758;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22770;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22772;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22775;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=22777;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=31905;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=31907;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=31917;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=31919;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=31927;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=31929;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=31931;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=31934;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=31936;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=31938;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=31940;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=31942;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=31944;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=31959;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=31973;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32010;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32036;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32040;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32055;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32059;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32061;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32062;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32064;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32066;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32068;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32070;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32072;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32074;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32102;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32103;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32121;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32123;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32127;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32129;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32131;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32133;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32134;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=32136;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37233;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37235;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37245;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37247;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37249;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37252;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37254;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37256;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37258;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37260;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37262;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37277;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37292;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37329;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37356;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37360;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37376;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37380;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37382;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37383;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37385;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37387;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37389;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37391;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37393;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37395;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37423;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37424;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37445;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37447;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37449;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37452;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37454;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37456;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37458;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37460;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37462;
UPDATE `creature_template` SET `faction`=1216 WHERE `entry`=37464;
UPDATE `creature_template` SET `faction`=1217 WHERE `entry`=22764;
UPDATE `creature_template` SET `faction`=1334 WHERE `entry`=22554;
UPDATE `creature_template` SET `faction`=1334 WHERE `entry`=22600;
UPDATE `creature_template` SET `faction`=1334 WHERE `entry`=31997;
UPDATE `creature_template` SET `faction`=1334 WHERE `entry`=37316;
UPDATE `creature_template` SET `faction`=1335 WHERE `entry`=22549;
UPDATE `creature_template` SET `faction`=1335 WHERE `entry`=22602;
UPDATE `creature_template` SET `faction`=1335 WHERE `entry`=31982;
UPDATE `creature_template` SET `faction`=1335 WHERE `entry`=37301;
UPDATE `creature_template` SET `faction`=1375 WHERE `entry`=18616;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=19897;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=20308;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=20572;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=20573;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=22626;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=22642;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=25543;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=29357;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=30000;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=30016;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=30047;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=30049;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=30068;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=30781;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=30783;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=30785;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=30787;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=31560;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=31670;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=31974;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=32005;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=32218;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=33397;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=34218;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=34228;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=35546;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=35559;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=35560;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=36473;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=36474;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=36475;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=37293;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=37324;
UPDATE `creature_template` SET `faction`=14 WHERE `entry`=38138;
UPDATE `creature_template` SET `faction`=1534 WHERE `entry`=22547;
UPDATE `creature_template` SET `faction`=1534 WHERE `entry`=22579;
UPDATE `creature_template` SET `faction`=1534 WHERE `entry`=31908;
UPDATE `creature_template` SET `faction`=1534 WHERE `entry`=31971;
UPDATE `creature_template` SET `faction`=1534 WHERE `entry`=37290;
UPDATE `creature_template` SET `faction`=1534 WHERE `entry`=37434;
UPDATE `creature_template` SET `faction`=1554 WHERE `entry`=22639;
UPDATE `creature_template` SET `faction`=1594 WHERE `entry`=22627;
UPDATE `creature_template` SET `faction`=1594 WHERE `entry`=31821;
UPDATE `creature_template` SET `faction`=1594 WHERE `entry`=37341;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=19898;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=19899;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=19900;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20303;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20305;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20309;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20314;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20316;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20320;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20321;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20322;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20323;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20569;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20574;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20575;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20578;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20579;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20580;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20581;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20584;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20585;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20586;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20596;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20655;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20658;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20700;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=20993;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=21550;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=21553;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=21556;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=21557;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=21566;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=21567;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=21568;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=21569;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=21573;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=21579;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=21580;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=21583;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=21616;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=21647;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=21918;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=21943;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=21991;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=22604;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=22636;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=22728;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=25549;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=25553;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=25555;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=25564;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=30496;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=30498;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=30509;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=31339;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=31345;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=31354;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=31355;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=31357;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=31379;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=31382;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=31390;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=31514;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=31922;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=31925;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=32111;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=32583;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=33690;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=37238;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=37241;
UPDATE `creature_template` SET `faction`=16 WHERE `entry`=37432;
UPDATE `creature_template` SET `faction`=1638 WHERE `entry`=36083;
UPDATE `creature_template` SET `faction`=168 WHERE `entry`=32796;
UPDATE `creature_template` SET `faction`=1692 WHERE `entry`=21584;
UPDATE `creature_template` SET `faction`=1693 WHERE `entry`=20182;
UPDATE `creature_template` SET `faction`=1713 WHERE `entry`=20186;
UPDATE `creature_template` SET `faction`=1718 WHERE `entry`=20746;
UPDATE `creature_template` SET `faction`=1720 WHERE `entry`=20737;
UPDATE `creature_template` SET `faction`=1720 WHERE `entry`=20738;
UPDATE `creature_template` SET `faction`=1720 WHERE `entry`=20745;
UPDATE `creature_template` SET `faction`=1720 WHERE `entry`=21712;
UPDATE `creature_template` SET `faction`=1720 WHERE `entry`=22166;
UPDATE `creature_template` SET `faction`=1720 WHERE `entry`=22167;
UPDATE `creature_template` SET `faction`=1720 WHERE `entry`=22168;
UPDATE `creature_template` SET `faction`=1720 WHERE `entry`=22171;
UPDATE `creature_template` SET `faction`=1720 WHERE `entry`=22172;
UPDATE `creature_template` SET `faction`=1720 WHERE `entry`=31486;
UPDATE `creature_template` SET `faction`=1720 WHERE `entry`=31490;
UPDATE `creature_template` SET `faction`=1720 WHERE `entry`=31493;
UPDATE `creature_template` SET `faction`=1720 WHERE `entry`=31494;
UPDATE `creature_template` SET `faction`=1720 WHERE `entry`=32192;
UPDATE `creature_template` SET `faction`=1732 WHERE `entry`=35429;
UPDATE `creature_template` SET `faction`=1735 WHERE `entry`=35425;
UPDATE `creature_template` SET `faction`=1747 WHERE `entry`=20550;
UPDATE `creature_template` SET `faction`=1748 WHERE `entry`=22129;
UPDATE `creature_template` SET `faction`=1748 WHERE `entry`=26651;
UPDATE `creature_template` SET `faction`=1780 WHERE `entry`=30759;
UPDATE `creature_template` SET `faction`=1780 WHERE `entry`=30760;
UPDATE `creature_template` SET `faction`=1780 WHERE `entry`=30761;
UPDATE `creature_template` SET `faction`=1814 WHERE `entry`=31593;
UPDATE `creature_template` SET `faction`=1814 WHERE `entry`=31600;
UPDATE `creature_template` SET `faction`=1874 WHERE `entry`=30798;
UPDATE `creature_template` SET `faction`=1885 WHERE `entry`=31664;
UPDATE `creature_template` SET `faction`=1885 WHERE `entry`=31677;
UPDATE `creature_template` SET `faction`=1892 WHERE `entry`=26099;
UPDATE `creature_template` SET `faction`=190 WHERE `entry`=28168;
UPDATE `creature_template` SET `faction`=190 WHERE `entry`=30758;
UPDATE `creature_template` SET `faction`=190 WHERE `entry`=30768;
UPDATE `creature_template` SET `faction`=190 WHERE `entry`=30769;
UPDATE `creature_template` SET `faction`=190 WHERE `entry`=30776;
UPDATE `creature_template` SET `faction`=190 WHERE `entry`=33789;
UPDATE `creature_template` SET `faction`=1998 WHERE `entry`=26338;
UPDATE `creature_template` SET `faction`=1998 WHERE `entry`=26339;
UPDATE `creature_template` SET `faction`=1998 WHERE `entry`=26340;
UPDATE `creature_template` SET `faction`=1998 WHERE `entry`=26341;
UPDATE `creature_template` SET `faction`=1998 WHERE `entry`=26342;
UPDATE `creature_template` SET `faction`=2075 WHERE `entry`=31183;
UPDATE `creature_template` SET `faction`=21 WHERE `entry`=30057;
UPDATE `creature_template` SET `faction`=21 WHERE `entry`=30779;
UPDATE `creature_template` SET `faction`=21 WHERE `entry`=30815;
UPDATE `creature_template` SET `faction`=21 WHERE `entry`=31647;
UPDATE `creature_template` SET `faction`=21 WHERE `entry`=33664;
UPDATE `creature_template` SET `faction`=21 WHERE `entry`=33668;
UPDATE `creature_template` SET `faction`=21 WHERE `entry`=38388;
UPDATE `creature_template` SET `faction`=2120 WHERE `entry`=20583;
UPDATE `creature_template` SET `faction`=2189 WHERE `entry`=35353;
UPDATE `creature_template` SET `faction`=2189 WHERE `entry`=35354;
UPDATE `creature_template` SET `faction`=2189 WHERE `entry`=35355;
UPDATE `creature_template` SET `faction`=2189 WHERE `entry`=35356;
UPDATE `creature_template` SET `faction`=2189 WHERE `entry`=35357;
UPDATE `creature_template` SET `faction`=2189 WHERE `entry`=35358;
UPDATE `creature_template` SET `faction`=233 WHERE `entry`=29635;
UPDATE `creature_template` SET `faction`=26 WHERE `entry`=22694;
UPDATE `creature_template` SET `faction`=26 WHERE `entry`=22781;
UPDATE `creature_template` SET `faction`=26 WHERE `entry`=32110;
UPDATE `creature_template` SET `faction`=26 WHERE `entry`=32142;
UPDATE `creature_template` SET `faction`=26 WHERE `entry`=37431;
UPDATE `creature_template` SET `faction`=26 WHERE `entry`=37472;
UPDATE `creature_template` SET `faction`=35 WHERE `entry`=22599;
UPDATE `creature_template` SET `faction`=35 WHERE `entry`=35417;
UPDATE `creature_template` SET `faction`=35 WHERE `entry`=35419;
UPDATE `creature_template` SET `faction`=35 WHERE `entry`=35421;
UPDATE `creature_template` SET `faction`=35 WHERE `entry`=35436;
UPDATE `creature_template` SET `faction`=35 WHERE `entry`=36357;
UPDATE `creature_template` SET `faction`=35 WHERE `entry`=36358;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=22625;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=22631;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=22637;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=22643;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=22725;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=22788;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=22789;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=22790;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=22791;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=22792;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=22793;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=22794;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=22795;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=22796;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=22797;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=31998;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=32027;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=32054;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=32120;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=37317;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=37347;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=37375;
UPDATE `creature_template` SET `faction`=37 WHERE `entry`=37443;
UPDATE `creature_template` SET `faction`=370 WHERE `entry`=20571;
UPDATE `creature_template` SET `faction`=370 WHERE `entry`=21620;
UPDATE `creature_template` SET `faction`=39 WHERE `entry`=22555;
UPDATE `creature_template` SET `faction`=39 WHERE `entry`=22785;
UPDATE `creature_template` SET `faction`=39 WHERE `entry`=32000;
UPDATE `creature_template` SET `faction`=39 WHERE `entry`=32146;
UPDATE `creature_template` SET `faction`=39 WHERE `entry`=37319;
UPDATE `creature_template` SET `faction`=39 WHERE `entry`=37476;
UPDATE `creature_template` SET `faction`=40 WHERE `entry`=18432;
UPDATE `creature_template` SET `faction`=41 WHERE `entry`=20540;
UPDATE `creature_template` SET `faction`=51 WHERE `entry`=20176;
UPDATE `creature_template` SET `faction`=51 WHERE `entry`=20178;
UPDATE `creature_template` SET `faction`=58 WHERE `entry`=20687;
UPDATE `creature_template` SET `faction`=58 WHERE `entry`=22322;
UPDATE `creature_template` SET `faction`=614 WHERE `entry`=32795;
UPDATE `creature_template` SET `faction`=7 WHERE `entry`=20171;
UPDATE `creature_template` SET `faction`=778 WHERE `entry`=30814;
UPDATE `creature_template` SET `faction`=80 WHERE `entry`=36086;
UPDATE `creature_template` SET `faction`=84 WHERE `entry`=22601;
UPDATE `creature_template` SET `faction`=90 WHERE `entry`=25566;
UPDATE `creature_template` SET `faction`=90 WHERE `entry`=30763;
UPDATE `creature_template` SET `faction`=90 WHERE `entry`=30773;
UPDATE `creature_template` SET `faction`=90 WHERE `entry`=30793;
UPDATE `creature_template` SET `faction`=90 WHERE `entry`=36301;
UPDATE `creature_template` SET `faction`=90 WHERE `entry`=36302;
UPDATE `creature_template` SET `faction`=90 WHERE `entry`=36303;
UPDATE `creature_template` SET `faction`=91 WHERE `entry`=20689;
UPDATE `creature_template` SET `faction`=91 WHERE `entry`=20702;
UPDATE `creature_template` SET `faction`=91 WHERE `entry`=20703;
UPDATE `creature_template` SET `faction`=91 WHERE `entry`=20704;
UPDATE `creature_template` SET `faction`=91 WHERE `entry`=20705;
UPDATE `creature_template` SET `faction`=974 WHERE `entry`=30756;
UPDATE `creature_template` SET `faction`=99 WHERE `entry`=20549;
@@ -0,0 +1,82 @@
UPDATE `creature_template` SET `faction` = 14 WHERE `entry` = 2070; -- should have been 2153
UPDATE `creature_template` SET `faction` = 14 WHERE `entry` = 2071; -- should have been 2153
UPDATE `creature_template` SET `faction` = 14 WHERE `entry` = 2237; -- should have been 2153
UPDATE `creature_template` SET `faction` = 44 WHERE `entry` = 2165; -- should have been 2154
UPDATE `creature_template` SET `faction` = 35 WHERE `entry` = 35085; -- should have been 2159
UPDATE `creature_template` SET `faction` = 35 WHERE `entry` = 35086; -- should have been 2159
UPDATE `creature_template` SET `faction` = 35 WHERE `entry` = 35088; -- should have been 2159
UPDATE `creature_template` SET `faction` = 35 WHERE `entry` = 35091; -- should have been 2159
UPDATE `creature_template` SET `faction` = 69 WHERE `entry` = 3442; -- should have been 2160
UPDATE `creature_template` SET `faction` = 35 WHERE `entry` = 23211; -- should have been 2161
UPDATE `creature_template` SET `faction` = 1194 WHERE `entry` = 16134; -- should have been 2167
UPDATE `creature_template` SET `faction` = 132 WHERE `entry` = 4646; -- should have been 2183
UPDATE `creature_template` SET `faction` = 132 WHERE `entry` = 4647; -- should have been 2183
UPDATE `creature_template` SET `faction` = 132 WHERE `entry` = 4648; -- should have been 2183
UPDATE `creature_template` SET `faction` = 132 WHERE `entry` = 4649; -- should have been 2183
UPDATE `creature_template` SET `faction` = 132 WHERE `entry` = 4651; -- should have been 2183
UPDATE `creature_template` SET `faction` = 132 WHERE `entry` = 4652; -- should have been 2183
UPDATE `creature_template` SET `faction` = 132 WHERE `entry` = 4653; -- should have been 2183
UPDATE `creature_template` SET `faction` = 132 WHERE `entry` = 4661; -- should have been 2183
UPDATE `creature_template` SET `faction` = 133 WHERE `entry` = 4638; -- should have been 2184
UPDATE `creature_template` SET `faction` = 133 WHERE `entry` = 4639; -- should have been 2184
UPDATE `creature_template` SET `faction` = 133 WHERE `entry` = 4640; -- should have been 2184
UPDATE `creature_template` SET `faction` = 133 WHERE `entry` = 4641; -- should have been 2184
UPDATE `creature_template` SET `faction` = 133 WHERE `entry` = 4642; -- should have been 2184
UPDATE `creature_template` SET `faction` = 133 WHERE `entry` = 4643; -- should have been 2184
UPDATE `creature_template` SET `faction` = 133 WHERE `entry` = 4644; -- should have been 2184
UPDATE `creature_template` SET `faction` = 133 WHERE `entry` = 4645; -- should have been 2184
UPDATE `creature_template` SET `faction` = 14 WHERE `entry` = 428; -- should have been 2200
UPDATE `creature_template` SET `faction` = 35 WHERE `entry` = 32870; -- should have been 2201
UPDATE `creature_template` SET `faction` = 74 WHERE `entry` = 6190; -- should have been 2205
UPDATE `creature_template` SET `faction` = 74 WHERE `entry` = 6195; -- should have been 2205
UPDATE `creature_template` SET `faction` = 22 WHERE `entry` = 2349; -- should have been 2213
UPDATE `creature_template` SET `faction` = 475 WHERE `entry` = 9460; -- should have been 2240
UPDATE `creature_template` SET `faction` = 994 WHERE `entry` = 15187; -- should have been 2252
UPDATE `creature_template` SET `faction` = 994 WHERE `entry` = 15188; -- should have been 2252
UPDATE `creature_template` SET `faction` = 35 WHERE `entry` = 3000; -- should have been 2263
UPDATE `creature_template` SET `faction` = 35 WHERE `entry` = 9117; -- should have been 2263
UPDATE `creature_template` SET `faction` = 474 WHERE `entry` = 10302; -- should have been 2263
UPDATE `creature_template` SET `faction` = 474 WHERE `entry` = 10583; -- should have been 2263
UPDATE `creature_template` SET `faction` = 35 WHERE `entry` = 10977; -- should have been 2263
UPDATE `creature_template` SET `faction` = 35 WHERE `entry` = 12959; -- should have been 2263
UPDATE `creature_template` SET `faction` = 35 WHERE `entry` = 9270; -- should have been 2263
UPDATE `creature_template` SET `faction` = 35 WHERE `entry` = 9271; -- should have been 2263
UPDATE `creature_template` SET `faction` = 35 WHERE `entry` = 9997; -- should have been 2263
UPDATE `creature_template` SET `faction` = 16 WHERE `entry` = 11858; -- should have been 2266
UPDATE `creature_template` SET `faction` = 16 WHERE `entry` = 11910; -- should have been 2266
UPDATE `creature_template` SET `faction` = 16 WHERE `entry` = 11911; -- should have been 2266
UPDATE `creature_template` SET `faction` = 16 WHERE `entry` = 11912; -- should have been 2266
UPDATE `creature_template` SET `faction` = 16 WHERE `entry` = 11913; -- should have been 2266
UPDATE `creature_template` SET `faction` = 62 WHERE `entry` = 1034; -- should have been 2273
UPDATE `creature_template` SET `faction` = 62 WHERE `entry` = 1035; -- should have been 2273
UPDATE `creature_template` SET `faction` = 62 WHERE `entry` = 1036; -- should have been 2273
UPDATE `creature_template` SET `faction` = 62 WHERE `entry` = 1038; -- should have been 2273
UPDATE `creature_template` SET `faction` = 62 WHERE `entry` = 1057; -- should have been 2273
UPDATE `creature_template` SET `faction` = 35 WHERE `entry` = 7013; -- should have been 2313
UPDATE `creature_template` SET `faction` = 48 WHERE `entry` = 1016; -- should have been 2358
UPDATE `creature_template` SET `faction` = 48 WHERE `entry` = 1019; -- should have been 2358
UPDATE `creature_template` SET `faction` = 48 WHERE `entry` = 6505; -- should have been 2358
UPDATE `creature_template` SET `faction` = 48 WHERE `entry` = 6506; -- should have been 2358
UPDATE `creature_template` SET `faction` = 16 WHERE `entry` = 7431; -- should have been 2358
UPDATE `creature_template` SET `faction` = 16 WHERE `entry` = 7432; -- should have been 2358
UPDATE `creature_template` SET `faction` = 814 WHERE `entry` = 11194; -- should have been 2363
UPDATE `creature_template` SET `faction` = 1625 WHERE `entry` = 16378; -- should have been 2363
UPDATE `creature_template` SET `faction` = 2073 WHERE `entry` = 28247; -- should have been 2363
UPDATE `creature_template` SET `faction` = 1475 WHERE `entry` = 14622; -- should have been 2364
UPDATE `creature_template` SET `faction` = 24 WHERE `entry` = 206; -- should have been 2375
UPDATE `creature_template` SET `faction` = 24 WHERE `entry` = 920; -- should have been 2375
UPDATE `creature_template` SET `faction` = 32 WHERE `entry` = 11466; -- should have been 2468
UPDATE `creature_template` SET `faction` = 14 WHERE `entry` = 11486; -- should have been 2468
UPDATE `creature_template` SET `faction` = 1354 WHERE `entry` = 14355; -- should have been 2468
UPDATE `creature_template` SET `faction` = 32 WHERE `entry` = 14358; -- should have been 2468
UPDATE `creature_template` SET `faction` = 7 WHERE `entry` = 14361; -- should have been 2468
UPDATE `creature_template` SET `faction` = 71 WHERE `entry` = 14364; -- should have been 2468
UPDATE `creature_template` SET `faction` = 32 WHERE `entry` = 14368; -- should have been 2468
UPDATE `creature_template` SET `faction` = 32 WHERE `entry` = 14369; -- should have been 2468
UPDATE `creature_template` SET `faction` = 32 WHERE `entry` = 14371; -- should have been 2468
UPDATE `creature_template` SET `faction` = 32 WHERE `entry` = 14381; -- should have been 2468
UPDATE `creature_template` SET `faction` = 32 WHERE `entry` = 14382; -- should have been 2468
UPDATE `creature_template` SET `faction` = 32 WHERE `entry` = 14383; -- should have been 2468
UPDATE `creature_template` SET `faction` = 35 WHERE `entry` = 15774; -- should have been 2468
UPDATE `creature_template` SET `faction` = 1354 WHERE `entry` = 16032; -- should have been 2468
UPDATE `creature_template` SET `faction` = 126 WHERE `entry` = 3188; -- should have been 2663
@@ -0,0 +1,92 @@
DELETE FROM `trinity_string` WHERE (`entry` BETWEEN 1302 AND 1325) OR (`entry` IN (1331,1332));
DELETE FROM `creature_text` WHERE `entry`=14848;
DELETE FROM `creature_text` WHERE `entry`=11946 AND `groupid`=3 AND `id`=5;
INSERT INTO `creature_text` (`entry`, `groupid`, `id`, `text`, `type`, `language`, `probability`, `emote`, `duration`, `sound`, `BroadcastTextID`, `comment`) VALUES
(14848, 1, 0, 'The Stormpike Graveyard was taken by the Alliance!', 14, 0, 100, 0, 0, 8173, 9057, 'Herald'),
(14848, 2, 0, 'The Stormpike Graveyard is under attack! If left unchecked, the Alliance will capture it!', 14, 0, 100, 0, 0, 8212, 9058, 'Herald'),
(14848, 3, 0, 'The Stormpike Graveyard was taken by the Horde!', 14, 0, 100, 0, 0, 8213, 9059, 'Herald'),
(14848, 4, 0, 'The Stormpike Graveyard is under attack! If left unchecked, the Horde will capture it!', 14, 0, 100, 0, 0, 8174, 9060, 'Herald'),
(14848, 5, 0, 'The Snowfall Graveyard was taken by the Alliance!', 14, 0, 100, 0, 0, 8173, 9061, 'Herald'),
(14848, 6, 0, 'The Snowfall Graveyard is under attack! If left unchecked, the Alliance will capture it!', 14, 0, 100, 0, 0, 8212, 9062, 'Herald'),
(14848, 7, 0, 'The Snowfall Graveyard was taken by the Horde!', 14, 0, 100, 0, 0, 8213, 9063, 'Herald'),
(14848, 8, 0, 'The Snowfall Graveyard is under attack! If left unchecked, the Horde will capture it!', 14, 0, 100, 0, 0,8174, 9064, 'Herald'),
(14848, 9, 0, 'The Frostwolf Graveyard was taken by the Alliance!', 14, 0, 100, 0, 0, 8173, 9065, 'Herald'),
(14848,10, 0, 'The Frostwolf Graveyard is under attack! If left unchecked, the Alliance will capture it!', 14, 0, 100, 0, 0, 8212, 9066, 'Herald'),
(14848,11, 0, 'The Frostwolf Graveyard was taken by the Horde!', 14, 0, 100, 0, 0, 8213, 9067, 'Herald'),
(14848,12, 0, 'The Frostwolf Graveyard is under attack! If left unchecked, the Horde will capture it!', 14, 0, 100, 0, 0, 8174, 9068, 'Herald'),
(14848,13, 0, 'The Dun Baldar South Bunker is under attack! If left unchecked, the Horde will destroy it!', 14, 0, 100, 0, 0, 8174, 9174, 'Herald'),
(14848,14, 0, 'The Dun Baldar South Bunker was destroyed by the Horde!', 14, 0, 100, 0, 0, 8213, 9175, 'Herald'),
(14848,15, 0, 'The Dun Baldar South Bunker is under attack! If left unchecked, the Alliance will destroy it!', 14, 0, 100, 0, 0, 8212, 9176, 'Herald'),
(14848,16, 0, 'The Dun Baldar South Bunker was taken by the Alliance!', 14, 0, 100, 0, 0, 8192, 9177, 'Herald'),
(14848,17, 0, 'The Dun Baldar North Bunker is under attack! If left unchecked, the Horde will destroy it!', 14, 0, 100, 0, 0, 8174, 9178, 'Herald'),
(14848,18, 0, 'The Dun Baldar North Bunker was destroyed by the Horde!', 14, 0, 100, 0, 0, 8213, 9179, 'Herald'),
(14848,19, 0, 'The Dun Baldar North Bunker is under attack! If left unchecked, the Alliance will destroy it!', 14, 0, 100, 0, 0, 8212, 9180, 'Herald'),
(14848,20, 0, 'The Dun Baldar North Bunker was taken by the Alliance!', 14, 0, 100, 0, 0, 8192, 9181, 'Herald'),
(14848,21, 0, 'The Icewing Bunker is under attack! If left unchecked, the Horde will destroy it!', 14, 0, 100, 0, 0, 8174, 9182, 'Herald'),
(14848,22, 0, 'The Icewing Bunker was destroyed by the Horde!', 14, 0, 100, 0, 0, 8213, 9183, 'Herald'),
(14848,23, 0, 'The Icewing Bunker is under attack! If left unchecked, the Alliance will destroy it!', 14, 0, 100, 0, 0, 8212, 9184, 'Herald'),
(14848,24, 0, 'The Icewing Bunker was taken by the Alliance!', 14, 0, 100, 0, 0, 8192, 9185, 'Herald'),
(14848,25, 0, 'The Stonehearth Bunker is under attack! If left unchecked, the Horde will destroy it!', 14, 0, 100, 0, 0, 8174, 9186, 'Herald'),
(14848,26, 0, 'The Stonehearth Bunker was destroyed by the Horde!', 14, 0, 100, 0, 0, 8213, 9187, 'Herald'),
(14848,27, 0, 'The Stonehearth Bunker is under attack! If left unchecked, the Alliance will destroy it!', 14, 0, 100, 0, 0, 8212, 9188, 'Herald'),
(14848,28, 0, 'The Stonehearth Bunker was taken by the Alliance!', 14, 0, 100, 0, 0, 8192, 9189, 'Herald'),
(14848,29, 0, 'The West Frostwolf Tower is under attack! If left unchecked, the Horde will destroy it!', 14, 0, 100, 0, 0, 8174, 9190, 'Herald'),
(14848,30, 0, 'The West Frostwolf Tower was taken by the Horde!', 14, 0, 100, 0, 0, 8192, 9191, 'Herald'),
(14848,31, 0, 'The West Frostwolf Tower is under attack! If left unchecked, the Alliance will destroy it!', 14, 0, 100, 0, 0, 8212, 9192, 'Herald'),
(14848,32, 0, 'The West Frostwolf Tower was destroyed by the Alliance!', 14, 0, 100, 0, 0, 8173, 9193, 'Herald'),
(14848,33, 0, 'The East Frostwolf Tower is under attack! If left unchecked, the Horde will destroy it!', 14, 0, 100, 0, 0, 8174, 9194, 'Herald'),
(14848,34, 0, 'The East Frostwolf Tower was taken by the Horde!', 14, 0, 100, 0, 0, 8192, 9195, 'Herald'),
(14848,35, 0, 'The East Frostwolf Tower is under attack! If left unchecked, the Alliance will destroy it!', 14, 0, 100, 0, 0, 8212, 9196, 'Herald'),
(14848,36, 0, 'The East Frostwolf Tower was destroyed by the Alliance!', 14, 0, 100, 0, 0, 8173, 9197, 'Herald'),
(14848,37, 0, 'Tower Point is under attack! If left unchecked, the Horde will destroy it!', 14, 0, 100, 0, 0, 8174, 9198, 'Herald'),
(14848,38, 0, 'Tower Point was taken by the Horde!', 14, 0, 100, 0, 0, 8192, 9199, 'Herald'),
(14848,39, 0, 'Tower Point is under attack! If left unchecked, the Alliance will destroy it!', 14, 0, 100, 0, 0, 8212, 9200, 'Herald'),
(14848,40, 0, 'Tower Point was destroyed by the Alliance!', 14, 0, 100, 0, 0, 8173, 9201, 'Herald'),
(14848,41, 0, 'Iceblood Bunker is under attack! If left unchecked, the Horde will destroy it!', 14, 0, 100, 0, 0, 8174, 9202, 'Herald'),
(14848,42, 0, 'Iceblood Tower was taken by the Horde!', 14, 0, 100, 0, 0, 8192, 9203, 'Herald'),
(14848,43, 0, 'Iceblood Tower is under attack! If left unchecked, the Alliance will destroy it!', 14, 0, 100, 0, 0, 8212, 9204, 'Herald'),
(14848,44, 0, 'Iceblood Tower was destroyed by the Alliance!', 14, 0, 100, 0, 0, 8173, 9205, 'Herald'),
(14848,45, 0, 'The Stormpike Aid Station was taken by the Horde!', 14, 0, 100, 0, 0, 8213, 9211, 'Herald'),
(14848,46, 0, 'The Stormpike Aid Station is under attack! If left unchecked, the Horde will capture it!', 14, 0, 100, 0, 0, 8174, 9212, 'Herald'),
(14848,47, 0, 'The Stormpike Aid Station was taken by the Alliance!', 14, 0, 100, 0, 0, 8173, 9213, 'Herald'),
(14848,48, 0, 'The Stormpike Aid Station is under attack! If left unchecked, the Alliance will capture it!', 14, 0, 100, 0, 0, 8212, 9214, 'Herald'),
(14848,49, 0, 'The Frostwolf Relief Hut was taken by the Horde!', 14, 0, 100, 0, 0, 8213, 9215, 'Herald'),
(14848,50, 0, 'The Frostwolf Relief Hut is under attack! If left unchecked, the Horde will capture it!', 14, 0, 100, 0, 0, 8174, 9216, 'Herald'),
(14848,51, 0, 'The Frostwolf Relief Hut was taken by the Alliance!', 14, 0, 100, 0, 0, 8173, 9217, 'Herald'),
(14848,52, 0, 'The Frostwolf Relief Hut is under attack! If left unchecked, the Alliance will capture it!', 14, 0, 100, 0, 0, 8212, 9218, 'Herald'),
(14848,53, 0, 'The Stonehearth Graveyard was taken by the Horde!', 14, 0, 100, 0, 0, 8213, 9221, 'Herald'),
(14848,54, 0, 'The Stonehearth Graveyard is under attack! If left unchecked, the Horde will capture it!', 14, 0, 100, 0, 0, 8174, 9222, 'Herald'),
(14848,55, 0, 'The Stonehearth Graveyard was taken by the Alliance!', 14, 0, 100, 0, 0, 8173, 9223, 'Herald'),
(14848,56, 0, 'The Stonehearth Graveyard is under attack! If left unchecked, the Alliance will capture it!', 14, 0, 100, 0, 0, 8212, 9224, 'Herald'),
(14848,57, 0, 'The Iceblood Graveyard was taken by the Horde!', 14, 0, 100, 0, 0, 8213, 9225, 'Herald'),
(14848,58, 0, 'The Iceblood Graveyard is under attack! If left unchecked, the Horde will capture it!', 14, 0, 100, 0, 0, 8174, 9226, 'Herald'),
(14848,59, 0, 'The Iceblood Graveyard was taken by the Alliance!', 14, 0, 100, 0, 0, 8173, 9227, 'Herald'),
(14848,60, 0, 'The Iceblood Graveyard is under attack! If left unchecked, the Alliance will capture it!', 14, 0, 100, 0, 0, 8212, 9228, 'Herald'),
(14848,61, 0, 'The Alliance has taken Coldtooth Mine! Its supplies will now be used for reinforcements!', 14, 0, 100, 0, 0, 8173, 8594, 'Herald'),
(14848,62, 0, 'The Alliance has taken the Irondeep Mine! Its supplies will now be used for reinforcements!', 14, 0, 100, 0, 0, 8173, 8595, 'Herald'),
(14848,63, 0, 'The Horde has taken the Coldtooth Mine! Its supplies will now be used for reinforcements!', 14, 0, 100, 0, 0, 8213, 8596, 'Herald'),
(14848,64, 0, 'The Horde has taken the Irondeep Mine! Its supplies will now be used for reinforcements!', 14, 0, 100, 0, 0, 8213, 8597, 'Herald'),
(14848,65, 0, 'The Frostwolf General is dead!', 14, 0, 100, 0, 0, 0, 7296, 'Herald'),
(14848,66, 0, 'The Stormpike General is dead!', 14, 0, 100, 0, 0, 0, 7297, 'Herald'),
(14848,67, 0, 'The Alliance wins!', 14, 0, 100, 0, 0, 0, 7335, 'Herald'),
(14848,68, 0, 'The Horde wins!', 14, 0, 100, 0, 0, 0, 7336, 'Herald'),
(11946, 3, 5, 'Leave no survivors!', 14, 0, 100, 0, 0, 0, 12352, 'Drek''Thar');
@@ -690,17 +690,6 @@ void Battleground::RemoveAuraOnTeam(uint32 SpellID, uint32 TeamID)
player->RemoveAura(SpellID);
}
void Battleground::YellToAll(Creature* creature, char const* text, uint32 language)
{
for (BattlegroundPlayerMap::const_iterator itr = m_Players.begin(); itr != m_Players.end(); ++itr)
if (Player* player = _GetPlayer(itr, "YellToAll"))
{
WorldPacket data;
ChatHandler::BuildChatPacket(data, CHAT_MSG_MONSTER_YELL, Language(language), creature, player, text);
player->SendDirectMessage(&data);
}
}
void Battleground::RewardHonorToTeam(uint32 Honor, uint32 TeamID)
{
for (BattlegroundPlayerMap::const_iterator itr = m_Players.begin(); itr != m_Players.end(); ++itr)
@@ -348,7 +348,6 @@ class Battleground
virtual void FillInitialWorldStates(WorldPacket& /*data*/) { }
void SendPacketToTeam(uint32 TeamID, WorldPacket* packet, Player* sender = NULL, bool self = true);
void SendPacketToAll(WorldPacket* packet);
void YellToAll(Creature* creature, const char* text, uint32 language);
void SendChatMessage(Creature* source, uint8 textId, WorldObject* target = NULL);
@@ -25,6 +25,7 @@
#include "GameObject.h"
#include "Language.h"
#include "Player.h"
#include "ScriptedCreature.h"
#include "SpellAuras.h"
#include "WorldSession.h"
@@ -85,7 +86,7 @@ void BattlegroundAV::HandleKillUnit(Creature* unit, Player* killer)
else if (creature->GetEntry() == BG_AV_CreatureInfo[AV_NPC_H_BOSS][0])
triggerSpawnID = AV_CPLACE_TRIGGER19;
*/
if (entry == BG_AV_CreatureInfo[AV_NPC_A_BOSS][0])
if (entry == BG_AV_CreatureInfo[AV_NPC_A_BOSS])
{
CastSpellOnTeam(23658, HORDE); //this is a spell which finishes a quest where a player has to kill the boss
RewardReputationToTeam(729, BG_AV_REP_BOSS, HORDE);
@@ -93,7 +94,7 @@ void BattlegroundAV::HandleKillUnit(Creature* unit, Player* killer)
EndBattleground(HORDE);
DelCreature(AV_CPLACE_TRIGGER17);
}
else if (entry == BG_AV_CreatureInfo[AV_NPC_H_BOSS][0])
else if (entry == BG_AV_CreatureInfo[AV_NPC_H_BOSS])
{
CastSpellOnTeam(23658, ALLIANCE); //this is a spell which finishes a quest where a player has to kill the boss
RewardReputationToTeam(730, BG_AV_REP_BOSS, ALLIANCE);
@@ -101,7 +102,7 @@ void BattlegroundAV::HandleKillUnit(Creature* unit, Player* killer)
EndBattleground(ALLIANCE);
DelCreature(AV_CPLACE_TRIGGER19);
}
else if (entry == BG_AV_CreatureInfo[AV_NPC_A_CAPTAIN][0])
else if (entry == BG_AV_CreatureInfo[AV_NPC_A_CAPTAIN])
{
if (!m_CaptainAlive[0])
{
@@ -115,12 +116,12 @@ void BattlegroundAV::HandleKillUnit(Creature* unit, Player* killer)
//spawn destroyed aura
for (uint8 i=0; i <= 9; i++)
SpawnBGObject(BG_AV_OBJECT_BURN_BUILDING_ALLIANCE+i, RESPAWN_IMMEDIATELY);
Creature* creature = GetBGCreature(AV_CPLACE_HERALD);
if (creature)
YellToAll(creature, GetTrinityString(LANG_BG_AV_A_CAPTAIN_DEAD), LANG_UNIVERSAL);
DelCreature(AV_CPLACE_TRIGGER16);
if (Creature* herold = GetBGCreature(AV_CPLACE_HERALD))
herold->AI()->TalkToMap(TEXT_STORMPIKE_GENERAL_DEAD);
}
else if (entry == BG_AV_CreatureInfo[AV_NPC_H_CAPTAIN][0])
else if (entry == BG_AV_CreatureInfo[AV_NPC_H_CAPTAIN])
{
if (!m_CaptainAlive[1])
{
@@ -134,14 +135,14 @@ void BattlegroundAV::HandleKillUnit(Creature* unit, Player* killer)
//spawn destroyed aura
for (uint8 i=0; i <= 9; i++)
SpawnBGObject(BG_AV_OBJECT_BURN_BUILDING_HORDE+i, RESPAWN_IMMEDIATELY);
Creature* creature = GetBGCreature(AV_CPLACE_HERALD);
if (creature)
YellToAll(creature, GetTrinityString(LANG_BG_AV_H_CAPTAIN_DEAD), LANG_UNIVERSAL);
DelCreature(AV_CPLACE_TRIGGER18);
if (Creature* herold = GetBGCreature(AV_CPLACE_HERALD))
herold->AI()->TalkToMap(TEXT_FROSTWOLF_GENERAL_DEAD);
}
else if (entry == BG_AV_CreatureInfo[AV_NPC_N_MINE_N_4][0] || entry == BG_AV_CreatureInfo[AV_NPC_N_MINE_A_4][0] || entry == BG_AV_CreatureInfo[AV_NPC_N_MINE_H_4][0])
else if (entry == BG_AV_CreatureInfo[AV_NPC_N_MINE_N_4] || entry == BG_AV_CreatureInfo[AV_NPC_N_MINE_A_4] || entry == BG_AV_CreatureInfo[AV_NPC_N_MINE_H_4])
ChangeMineOwner(AV_NORTH_MINE, killer->GetTeam());
else if (entry == BG_AV_CreatureInfo[AV_NPC_S_MINE_N_4][0] || entry == BG_AV_CreatureInfo[AV_NPC_S_MINE_A_4][0] || entry == BG_AV_CreatureInfo[AV_NPC_S_MINE_H_4][0])
else if (entry == BG_AV_CreatureInfo[AV_NPC_S_MINE_N_4] || entry == BG_AV_CreatureInfo[AV_NPC_S_MINE_A_4] || entry == BG_AV_CreatureInfo[AV_NPC_S_MINE_H_4])
ChangeMineOwner(AV_SOUTH_MINE, killer->GetTeam());
}
@@ -150,7 +151,7 @@ void BattlegroundAV::HandleQuestComplete(uint32 questid, Player* player)
if (GetStatus() != STATUS_IN_PROGRESS)
return;//maybe we should log this, cause this must be a cheater or a big bug
uint8 team = GetTeamIndexByTeamId(player->GetTeam());
/// @todo add reputation, events (including quest not available anymore, next quest availabe, go/npc de/spawning)and maybe honor
/// @todo add reputation, events (including quest not available anymore, next quest available, go/npc de/spawning)and maybe honor
TC_LOG_DEBUG("bg.battleground", "BG_AV Quest %i completed", questid);
switch (questid)
{
@@ -290,11 +291,11 @@ Creature* BattlegroundAV::AddAVCreature(uint16 cinfoid, uint16 type)
}
else
{
creature = AddCreature(BG_AV_CreatureInfo[cinfoid][0], type, BG_AV_CreaturePos[type]);
creature = AddCreature(BG_AV_CreatureInfo[cinfoid], type, BG_AV_CreaturePos[type]);
}
if (!creature)
return NULL;
if (creature->GetEntry() == BG_AV_CreatureInfo[AV_NPC_A_CAPTAIN][0] || creature->GetEntry() == BG_AV_CreatureInfo[AV_NPC_H_CAPTAIN][0])
if (creature->GetEntry() == BG_AV_CreatureInfo[AV_NPC_A_CAPTAIN] || creature->GetEntry() == BG_AV_CreatureInfo[AV_NPC_H_CAPTAIN])
creature->SetRespawnDelay(RESPAWN_ONE_DAY); /// @todo look if this can be done by database + also add this for the wingcommanders
if ((isStatic && cinfoid >= 10 && cinfoid <= 14) || (!isStatic && ((cinfoid >= AV_NPC_A_GRAVEDEFENSE0 && cinfoid <= AV_NPC_A_GRAVEDEFENSE3) ||
@@ -317,22 +318,22 @@ Creature* BattlegroundAV::AddAVCreature(uint16 cinfoid, uint16 type)
uint32 triggerSpawnID = 0;
uint32 newFaction = 0;
if (creature->GetEntry() == BG_AV_CreatureInfo[AV_NPC_A_CAPTAIN][0])
if (creature->GetEntry() == BG_AV_CreatureInfo[AV_NPC_A_CAPTAIN])
{
triggerSpawnID = AV_CPLACE_TRIGGER16;
newFaction = 84;
}
else if (creature->GetEntry() == BG_AV_CreatureInfo[AV_NPC_A_BOSS][0])
else if (creature->GetEntry() == BG_AV_CreatureInfo[AV_NPC_A_BOSS])
{
triggerSpawnID = AV_CPLACE_TRIGGER17;
newFaction = 84;
}
else if (creature->GetEntry() == BG_AV_CreatureInfo[AV_NPC_H_CAPTAIN][0])
else if (creature->GetEntry() == BG_AV_CreatureInfo[AV_NPC_H_CAPTAIN])
{
triggerSpawnID = AV_CPLACE_TRIGGER18;
newFaction = 83;
}
else if (creature->GetEntry() == BG_AV_CreatureInfo[AV_NPC_H_BOSS][0])
else if (creature->GetEntry() == BG_AV_CreatureInfo[AV_NPC_H_BOSS])
{
triggerSpawnID = AV_CPLACE_TRIGGER19;
newFaction = 83;
@@ -364,16 +365,14 @@ void BattlegroundAV::PostUpdateImpl(uint32 diff)
if (i == 0)
{
CastSpellOnTeam(AV_BUFF_A_CAPTAIN, ALLIANCE);
Creature* creature = GetBGCreature(AV_CPLACE_MAX + 61);
if (creature)
YellToAll(creature, LANG_BG_AV_A_CAPTAIN_BUFF, LANG_COMMON);
if (Creature* creature = GetBGCreature(AV_CPLACE_MAX + 61))
creature->AI()->DoAction(ACTION_BUFF_YELL);
}
else
{
CastSpellOnTeam(AV_BUFF_H_CAPTAIN, HORDE);
Creature* creature = GetBGCreature(AV_CPLACE_MAX + 59); /// @todo make the captains a dynamic creature
if (creature)
YellToAll(creature, LANG_BG_AV_H_CAPTAIN_BUFF, LANG_ORCISH);
if (Creature* creature = GetBGCreature(AV_CPLACE_MAX + 59))
creature->AI()->DoAction(ACTION_BUFF_YELL);
}
m_CaptainBuffTimer[i] = 120000 + urand(0, 4)* 60000; //as far as i could see, the buff is randomly so i make 2minutes (thats the duration of the buff itself) + 0-4minutes @todo get the right times
}
@@ -601,16 +600,10 @@ void BattlegroundAV::EventPlayerDestroyedPoint(BG_AV_Nodes node)
}
}
}
//send a nice message to all :)
char buf[256];
if (IsTower(node))
sprintf(buf, GetTrinityString(LANG_BG_AV_TOWER_TAKEN), GetNodeName(node), (owner == ALLIANCE) ? GetTrinityString(LANG_BG_AV_ALLY) : GetTrinityString(LANG_BG_AV_HORDE));
else
sprintf(buf, GetTrinityString(LANG_BG_AV_GRAVE_TAKEN), GetNodeName(node), (owner == ALLIANCE) ? GetTrinityString(LANG_BG_AV_ALLY) :GetTrinityString(LANG_BG_AV_HORDE));
Creature* creature = GetBGCreature(AV_CPLACE_HERALD);
if (creature)
YellToAll(creature, buf, LANG_UNIVERSAL);
if (StaticNodeInfo const* nodeInfo = GetStaticNodeInfo(node))
if (Creature* herold = GetBGCreature(AV_CPLACE_HERALD))
herold->AI()->TalkToMap(owner == ALLIANCE ? nodeInfo->TextIds.AllianceCapture : nodeInfo->TextIds.HordeCapture);
}
void BattlegroundAV::ChangeMineOwner(uint8 mine, uint32 team, bool initial)
@@ -621,8 +614,6 @@ void BattlegroundAV::ChangeMineOwner(uint8 mine, uint32 team, bool initial)
ASSERT(mine == AV_NORTH_MINE || mine == AV_SOUTH_MINE);
if (team != ALLIANCE && team != HORDE)
team = AV_NEUTRAL_TEAM;
else
PlaySoundToAll((team == ALLIANCE)?AV_SOUND_ALLIANCE_GOOD:AV_SOUND_HORDE_GOOD);
if (m_Mine_Owner[mine] == team && !initial)
return;
@@ -684,19 +675,21 @@ void BattlegroundAV::ChangeMineOwner(uint8 mine, uint32 team, bool initial)
if (team == ALLIANCE || team == HORDE)
{
m_Mine_Reclaim_Timer[mine]=AV_MINE_RECLAIM_TIMER;
char buf[256];
sprintf(buf, GetTrinityString(LANG_BG_AV_MINE_TAKEN), GetTrinityString((mine == AV_NORTH_MINE) ? LANG_BG_AV_MINE_NORTH : LANG_BG_AV_MINE_SOUTH),
(team == ALLIANCE) ? GetTrinityString(LANG_BG_AV_ALLY) : GetTrinityString(LANG_BG_AV_HORDE));
Creature* creature = GetBGCreature(AV_CPLACE_HERALD);
if (creature)
YellToAll(creature, buf, LANG_UNIVERSAL);
if (Creature* herold = GetBGCreature(AV_CPLACE_HERALD))
{
if (mine == AV_NORTH_MINE)
herold->AI()->TalkToMap(team == ALLIANCE ? TEXT_IRONDEEP_MINE_ALLIANCE_TAKEN : TEXT_IRONDEEP_MINE_HORDE_TAKEN);
else if (mine == AV_SOUTH_MINE)
herold->AI()->TalkToMap(team == ALLIANCE ? TEXT_COLDTOOTH_MINE_ALLIANCE_TAKEN : TEXT_COLDTOOTH_MINE_HORDE_TAKEN);
}
}
else
{
if (mine == AV_SOUTH_MINE) //i think this gets called all the time
{
if (Creature* creature = GetBGCreature(AV_CPLACE_MINE_S_3))
YellToAll(creature, LANG_BG_AV_S_MINE_BOSS_CLAIMS, LANG_UNIVERSAL);
creature->AI()->Talk(TEXT_SNIVVLE_RANDOM);
}
}
return;
@@ -927,19 +920,13 @@ void BattlegroundAV::EventPlayerDefendsPoint(Player* player, uint32 object)
SpawnBGObject(((team == ALLIANCE)?BG_AV_OBJECT_SNOW_EYECANDY_A : BG_AV_OBJECT_SNOW_EYECANDY_H)+i, RESPAWN_IMMEDIATELY);
}
}
//send a nice message to all :)
char buf[256];
sprintf(buf, GetTrinityString((IsTower(node)) ? LANG_BG_AV_TOWER_DEFENDED : LANG_BG_AV_GRAVE_DEFENDED), GetNodeName(node),
(team == ALLIANCE) ? GetTrinityString(LANG_BG_AV_ALLY) : GetTrinityString(LANG_BG_AV_HORDE));
Creature* creature = GetBGCreature(AV_CPLACE_HERALD);
if (creature)
YellToAll(creature, buf, LANG_UNIVERSAL);
//update the statistic for the defending player
UpdatePlayerScore(player, (IsTower(node)) ? SCORE_TOWERS_DEFENDED : SCORE_GRAVEYARDS_DEFENDED, 1);
if (IsTower(node))
PlaySoundToAll(AV_SOUND_BOTH_TOWER_DEFEND);
else
PlaySoundToAll((team == ALLIANCE)?AV_SOUND_ALLIANCE_GOOD:AV_SOUND_HORDE_GOOD);
if (StaticNodeInfo const* nodeInfo = GetStaticNodeInfo(node))
if (Creature* herold = GetBGCreature(AV_CPLACE_HERALD))
herold->AI()->TalkToMap(team == ALLIANCE ? nodeInfo->TextIds.AllianceCapture : nodeInfo->TextIds.HordeCapture);
// update the statistic for the defending player
UpdatePlayerScore(player, IsTower(node) ? SCORE_TOWERS_DEFENDED : SCORE_GRAVEYARDS_DEFENDED, 1);
}
void BattlegroundAV::EventPlayerAssaultsPoint(Player* player, uint32 object)
@@ -1025,42 +1012,29 @@ void BattlegroundAV::EventPlayerAssaultsPoint(Player* player, uint32 object)
AssaultNode(node, team);
UpdateNodeWorldState(node);
//send a nice message to all :)
char buf[256];
sprintf(buf, (IsTower(node)) ? GetTrinityString(LANG_BG_AV_TOWER_ASSAULTED) : GetTrinityString(LANG_BG_AV_GRAVE_ASSAULTED), GetNodeName(node),
(team == ALLIANCE) ? GetTrinityString(LANG_BG_AV_ALLY) : GetTrinityString(LANG_BG_AV_HORDE));
Creature* creature = GetBGCreature(AV_CPLACE_HERALD);
if (creature)
YellToAll(creature, buf, LANG_UNIVERSAL);
//update the statistic for the assaulting player
if (StaticNodeInfo const* nodeInfo = GetStaticNodeInfo(node))
if (Creature* herold = GetBGCreature(AV_CPLACE_HERALD))
herold->AI()->TalkToMap(team == ALLIANCE ? nodeInfo->TextIds.AllianceAttack : nodeInfo->TextIds.HordeAttack);
// update the statistic for the assaulting player
UpdatePlayerScore(player, (IsTower(node)) ? SCORE_TOWERS_ASSAULTED : SCORE_GRAVEYARDS_ASSAULTED, 1);
PlaySoundToAll((team == ALLIANCE)?AV_SOUND_ALLIANCE_ASSAULTS:AV_SOUND_HORDE_ASSAULTS);
}
void BattlegroundAV::FillInitialWorldStates(WorldPacket& data)
{
bool stateok;
//graveyards
for (uint8 i = BG_AV_NODES_FIRSTAID_STATION; i <= BG_AV_NODES_FROSTWOLF_HUT; i++)
for (uint8 i = BG_AV_NODES_FIRSTAID_STATION; i < BG_AV_NODES_MAX; ++i)
{
for (uint8 j =1; j <= 3; j+=2)
{//j=1=assaulted j=3=controled
stateok = (m_Nodes[i].State == j);
data << uint32(BG_AV_NodeWorldStates[i][GetWorldStateType(j, ALLIANCE)]) << uint32((m_Nodes[i].Owner == ALLIANCE && stateok)?1:0);
data << uint32(BG_AV_NodeWorldStates[i][GetWorldStateType(j, HORDE)]) << uint32((m_Nodes[i].Owner == HORDE && stateok)?1:0);
}
uint16 owner = m_Nodes[i].Owner;
BG_AV_States state = m_Nodes[i].State;
data << uint32(BGAVNodeInfo[i].WorldStateIds.AllianceAssault) << uint32(owner == ALLIANCE && state == POINT_ASSAULTED);
data << uint32(BGAVNodeInfo[i].WorldStateIds.AllianceControl) << uint32(owner == ALLIANCE && state >= POINT_DESTROYED);
data << uint32(BGAVNodeInfo[i].WorldStateIds.HordeAssault) << uint32(owner == HORDE && state == POINT_ASSAULTED);
data << uint32(BGAVNodeInfo[i].WorldStateIds.HordeControl) << uint32(owner == HORDE && state >= POINT_DESTROYED);
}
//towers
for (uint8 i = BG_AV_NODES_DUNBALDAR_SOUTH; i < BG_AV_NODES_MAX; ++i)
for (uint8 j =1; j <= 3; j+=2)
{//j=1=assaulted j=3=controled //i dont have j=2=destroyed cause destroyed is the same like enemy-team controll
stateok = (m_Nodes[i].State == j || (m_Nodes[i].State == POINT_DESTROYED && j == 3));
data << uint32(BG_AV_NodeWorldStates[i][GetWorldStateType(j, ALLIANCE)]) << uint32((m_Nodes[i].Owner == ALLIANCE && stateok)?1:0);
data << uint32(BG_AV_NodeWorldStates[i][GetWorldStateType(j, HORDE)]) << uint32((m_Nodes[i].Owner == HORDE && stateok)?1:0);
}
if (m_Nodes[BG_AV_NODES_SNOWFALL_GRAVE].Owner == AV_NEUTRAL_TEAM) //cause neutral teams aren't handled generic
data << uint32(AV_SNOWFALL_N) << uint32(1);
data << uint32(AV_SNOWFALL_N) << uint32(m_Nodes[BG_AV_NODES_SNOWFALL_GRAVE].Owner == AV_NEUTRAL_TEAM);
data << uint32(AV_Alliance_Score) << uint32(m_Team_Scores[0]);
data << uint32(AV_Horde_Score) << uint32(m_Team_Scores[1]);
if (GetStatus() == STATUS_IN_PROGRESS){ //only if game started the teamscores are displayed
@@ -1076,36 +1050,21 @@ void BattlegroundAV::FillInitialWorldStates(WorldPacket& data)
SendMineWorldStates(AV_SOUTH_MINE);
}
uint8 BattlegroundAV::GetWorldStateType(uint8 state, uint16 team) //this is used for node worldstates and returns values which fit good into the worldstatesarray
{
//neutral stuff cant get handled (currently its only snowfall)
ASSERT(team != AV_NEUTRAL_TEAM);
//a_c a_a h_c h_a the positions in worldstate-array
if (team == ALLIANCE)
{
if (state == POINT_CONTROLED || state == POINT_DESTROYED)
return 0;
if (state == POINT_ASSAULTED)
return 1;
}
if (team == HORDE)
{
if (state == POINT_DESTROYED || state == POINT_CONTROLED)
return 2;
if (state == POINT_ASSAULTED)
return 3;
}
TC_LOG_ERROR("bg.battleground", "BG_AV: should update a strange worldstate state:%i team:%i", state, team);
return 5; //this will crash the game, but i want to know if something is wrong here
}
void BattlegroundAV::UpdateNodeWorldState(BG_AV_Nodes node)
{
UpdateWorldState(BG_AV_NodeWorldStates[node][GetWorldStateType(m_Nodes[node].State, m_Nodes[node].Owner)], 1);
if (m_Nodes[node].PrevOwner == AV_NEUTRAL_TEAM) //currently only snowfall is supported as neutral node (i don't want to make an extra row (neutral states) in worldstatesarray just for one node
UpdateWorldState(AV_SNOWFALL_N, 0);
else
UpdateWorldState(BG_AV_NodeWorldStates[node][GetWorldStateType(m_Nodes[node].PrevState, m_Nodes[node].PrevOwner)], 0);
if (StaticNodeInfo const* nodeInfo = GetStaticNodeInfo(node))
{
uint16 owner = m_Nodes[node].Owner;
BG_AV_States state = m_Nodes[node].State;
UpdateWorldState(nodeInfo->WorldStateIds.AllianceAssault, owner == ALLIANCE && state == POINT_ASSAULTED);
UpdateWorldState(nodeInfo->WorldStateIds.AllianceControl, owner == ALLIANCE && state >= POINT_DESTROYED);
UpdateWorldState(nodeInfo->WorldStateIds.HordeAssault, owner == HORDE && state == POINT_ASSAULTED);
UpdateWorldState(nodeInfo->WorldStateIds.HordeControl, owner == HORDE && state >= POINT_DESTROYED);
}
if (node == BG_AV_NODES_SNOWFALL_GRAVE)
UpdateWorldState(AV_SNOWFALL_N, m_Nodes[node].Owner == AV_NEUTRAL_TEAM);
}
void BattlegroundAV::SendMineWorldStates(uint32 mine)
@@ -1440,33 +1399,6 @@ bool BattlegroundAV::SetupBattleground()
return true;
}
char const* BattlegroundAV::GetNodeName(BG_AV_Nodes node)
{
switch (node)
{
case BG_AV_NODES_FIRSTAID_STATION: return GetTrinityString(LANG_BG_AV_NODE_GRAVE_STORM_AID);
case BG_AV_NODES_DUNBALDAR_SOUTH: return GetTrinityString(LANG_BG_AV_NODE_TOWER_DUN_S);
case BG_AV_NODES_DUNBALDAR_NORTH: return GetTrinityString(LANG_BG_AV_NODE_TOWER_DUN_N);
case BG_AV_NODES_STORMPIKE_GRAVE: return GetTrinityString(LANG_BG_AV_NODE_GRAVE_STORMPIKE);
case BG_AV_NODES_ICEWING_BUNKER: return GetTrinityString(LANG_BG_AV_NODE_TOWER_ICEWING);
case BG_AV_NODES_STONEHEART_GRAVE: return GetTrinityString(LANG_BG_AV_NODE_GRAVE_STONE);
case BG_AV_NODES_STONEHEART_BUNKER: return GetTrinityString(LANG_BG_AV_NODE_TOWER_STONE);
case BG_AV_NODES_SNOWFALL_GRAVE: return GetTrinityString(LANG_BG_AV_NODE_GRAVE_SNOW);
case BG_AV_NODES_ICEBLOOD_TOWER: return GetTrinityString(LANG_BG_AV_NODE_TOWER_ICE);
case BG_AV_NODES_ICEBLOOD_GRAVE: return GetTrinityString(LANG_BG_AV_NODE_GRAVE_ICE);
case BG_AV_NODES_TOWER_POINT: return GetTrinityString(LANG_BG_AV_NODE_TOWER_POINT);
case BG_AV_NODES_FROSTWOLF_GRAVE: return GetTrinityString(LANG_BG_AV_NODE_GRAVE_FROST);
case BG_AV_NODES_FROSTWOLF_ETOWER: return GetTrinityString(LANG_BG_AV_NODE_TOWER_FROST_E);
case BG_AV_NODES_FROSTWOLF_WTOWER: return GetTrinityString(LANG_BG_AV_NODE_TOWER_FROST_W);
case BG_AV_NODES_FROSTWOLF_HUT: return GetTrinityString(LANG_BG_AV_NODE_GRAVE_FROST_HUT);
default:
TC_LOG_ERROR("bg.battleground", "tried to get name for node %u", node);
break;
}
return "Unknown";
}
void BattlegroundAV::AssaultNode(BG_AV_Nodes node, uint16 team)
{
if (m_Nodes[node].TotalOwner == team)
@@ -23,10 +23,6 @@
#include "BattlegroundScore.h"
#include "Object.h"
#define LANG_BG_AV_A_CAPTAIN_BUFF "Begone. Uncouth scum! The Alliance shall prevail in Alterac Valley!"
#define LANG_BG_AV_H_CAPTAIN_BUFF "Now is the time to attack! For the Horde!"
#define LANG_BG_AV_S_MINE_BOSS_CLAIMS "Snivvle is here! Snivvle claims the Coldtooth Mine!"
#define BG_AV_CAPTIME 240000 //4:00
#define BG_AV_SNOWFALL_FIRSTCAP 300000 //5:00 but i also have seen 4:05
@@ -54,6 +50,11 @@
#define BG_AV_EVENT_START_BATTLE 9166 // Achievement: The Alterac Blitz
enum SharedActions
{
ACTION_BUFF_YELL = -30001
};
enum BG_AV_Sounds
{ /// @todo: get out if there comes a sound when neutral team captures mine
@@ -1041,63 +1042,63 @@ enum BG_AV_CreatureIds
//entry, team, minlevel, maxlevel
/// @todo: this array should be removed, the only needed things are the entrys (for spawning(?) and handlekillunit)
const uint32 BG_AV_CreatureInfo[AV_NPC_INFO_MAX][4] =
const uint32 BG_AV_CreatureInfo[AV_NPC_INFO_MAX] =
{
{ 12050, 1216, 58, 58 }, //Stormpike Defender
{ 13326, 1216, 59, 59 }, //Seasoned Defender
{ 13331, 1216, 60, 60 }, //Veteran Defender
{ 13422, 1216, 61, 61 }, //Champion Defender
{ 13358, 1216, 59, 60 }, //Stormpike Bowman /// @todo: Confirm if this is correct. Author assumpted 60, 61 & 69, 70, but wouldn't work here
{ 11949, 469, 0, 0}, //not spawned with this data, but used for handlekillunit
{ 11948, 469, 0, 0}, //not spawned with this data, but used for handlekillunit
{ 12053, 1214, 58, 58 }, //Frostwolf Guardian
{ 13328, 1214, 59, 59 }, //Seasoned Guardian
{ 13332, 1214, 60, 60 }, //Veteran Guardian
{ 13421, 1214, 61, 61 }, //Champion Guardian
{ 13359, 1214, 59, 60 }, //Frostwolf Bowman
{ 11947, 67, 0, 0}, //not spawned with this data, but used for handlekillunit
{ 11946, 67, 0, 0}, //not spawned with this data, but used for handlekillunit
{ 14763, 1534, 60, 60 }, //Dun Baldar South Marshal
{ 14762, 1534, 60, 60 }, //Dun Baldar North Marshal
{ 14764, 1534, 60, 60 }, //Icewing Marshal
{ 14765, 1534, 60, 60 }, //Stonehearth Marshal
12050, // Stormpike Defender
13326, // Seasoned Defender
13331, // Veteran Defender
13422, // Champion Defender
13358, // Stormpike Bowman /// @todo: Confirm if this is correct. Author assumpted 60, 61 & 69, 70, but wouldn't work here
11949, // not spawned with this data, but used for handlekillunit
11948, // not spawned with this data, but used for handlekillunit
12053, // Frostwolf Guardian
13328, // Seasoned Guardian
13332, // Veteran Guardian
13421, // Champion Guardian
13359, // Frostwolf Bowman
11947, // not spawned with this data, but used for handlekillunit
11946, // not spawned with this data, but used for handlekillunit
14763, // Dun Baldar South Marshal
14762, // Dun Baldar North Marshal
14764, // Icewing Marshal
14765, // Stonehearth Marshal
{ 14773, 1214, 60, 60 }, //Iceblood Warmaster
{ 14776, 1214, 60, 60 }, //Tower Point Warmaster
{ 14772, 1214, 60, 60 }, //East Frostwolf Warmaster
{ 14777, 1214, 60, 60 }, //West Frostwolf Warmaster
14773, // Iceblood Warmaster
14776, // Tower Point Warmaster
14772, // East Frostwolf Warmaster
14777, // West Frostwolf Warmaster
{ 10987, 59, 52, 53 }, //Irondeep Trogg
{ 11600, 59, 53, 54 }, //Irondeep Shaman
{ 11602, 59, 54, 55 }, //Irondeep Skullthumper
{ 11657, 59, 58, 58 }, //Morloch
10987, // Irondeep Trogg
11600, // Irondeep Shaman
11602, // Irondeep Skullthumper
11657, // Morloch
{13396, 469, 52, 53}, // irondeep alliance /// @todo: Correct and give correct ids
{13080, 469, 53, 54},
{13098, 469, 54, 55},
{13078, 469, 58, 58},
13396, // irondeep alliance /// @todo: Correct and give correct ids
13080,
13098,
13078,
{13397, 67, 52, 53}, //irondeep horde
{13099, 67, 53, 54},
{13081, 67, 54, 55},
{13079, 67, 58, 58},
13397, // irondeep horde
13099,
13081,
13079,
{ 11603, 59, 52, 53 }, //south mine neutral
{ 11604, 59, 53, 54 },
{ 11605, 59, 54, 55 },
{ 11677, 59, 58, 58 },
{ 10982, 59, 52, 53 }, //vermin
11603, // south mine neutral
11604,
11605,
11677,
10982, // vermin
{13317, 469, 52, 53}, //alliance
{13096, 469, 54, 55}, //explorer
{13087, 469, 54, 55}, //invader
{13086, 469, 58, 58},
13317, // alliance
13096, // explorer
13087, // invader
13086,
{13316, 67, 52, 53}, //horde
{13097, 67, 54, 55}, //surveypr
{13089, 67, 54, 55}, //guard
{13088, 67, 58, 58},
{14848, 67, 58, 58} //Herald
13316, // horde
13097, // surveypr
13089, // guard
13088,
14848 // Herald
};
//x, y, z, o, static_creature_info-id
@@ -1444,41 +1445,6 @@ const uint32 BG_AV_MineWorldStates[2][3] =
{1355, 1357, 1356}
};
//alliance_control alliance_assault h_control h_assault
const uint32 BG_AV_NodeWorldStates[16][4] =
{
//Stormpike first aid station
{1325, 1326, 1327, 1328},
//Stormpike Graveyard
{1333, 1335, 1334, 1336},
//Stoneheart Grave
{1302, 1304, 1301, 1303},
//Snowfall Grave
{1341, 1343, 1342, 1344},
//Iceblood grave
{1346, 1348, 1347, 1349},
//Frostwolf Grave
{1337, 1339, 1338, 1340},
//Frostwolf Hut
{1329, 1331, 1330, 1332},
//Dunbaldar South Bunker
{1361, 1375, 1370, 1378},
//Dunbaldar North Bunker
{1362, 1374, 1371, 1379},
//Icewing Bunker
{1363, 1376, 1372, 1380},
//Stoneheart Bunker
{1364, 1377, 1373, 1381},
//Iceblood Tower
{1368, 1390, 1385, 1395},
//Tower Point
{1367, 1389, 1384, 1394},
//Frostwolf East
{1366, 1388, 1383, 1393},
//Frostwolf West
{1365, 1387, 1382, 1392},
};
enum BG_AV_QuestIds
{
AV_QUEST_A_SCRAPS1 = 7223,
@@ -1513,6 +1479,63 @@ enum BG_AV_Objectives
AV_OBJECTIVE_DEFEND_GRAVEYARD = 65
};
struct StaticNodeInfo
{
BG_AV_Nodes NodeId;
struct
{
uint8 AllianceCapture;
uint8 AllianceAttack;
uint8 HordeCapture;
uint8 HordeAttack;
} TextIds;
struct
{
uint32 AllianceControl;
uint32 AllianceAssault;
uint32 HordeControl;
uint32 HordeAssault;
} WorldStateIds;
};
static StaticNodeInfo const BGAVNodeInfo[] =
{
{ BG_AV_NODES_FIRSTAID_STATION, { 47, 48, 45, 46 }, { 1325, 1326, 1327, 1328 } }, // Stormpike First Aid Station
{ BG_AV_NODES_STORMPIKE_GRAVE, { 1, 2, 3, 4 }, { 1333, 1335, 1334, 1336 } }, // Stormpike Graveyard
{ BG_AV_NODES_STONEHEART_GRAVE, { 55, 56, 53, 54 }, { 1302, 1304, 1301, 1303 } }, // Stoneheart Graveyard
{ BG_AV_NODES_SNOWFALL_GRAVE, { 5, 6, 7, 8 }, { 1341, 1343, 1342, 1344 } }, // Snowfall Graveyard
{ BG_AV_NODES_ICEBLOOD_GRAVE, { 59, 60, 57, 58 }, { 1346, 1348, 1347, 1349 } }, // Iceblood Graveyard
{ BG_AV_NODES_FROSTWOLF_GRAVE, { 9, 10, 11, 12 }, { 1337, 1339, 1338, 1340 } }, // Frostwolf Graveyard
{ BG_AV_NODES_FROSTWOLF_HUT, { 51, 52, 49, 50 }, { 1329, 1331, 1330, 1332 } }, // Frostwolf Hut
{ BG_AV_NODES_DUNBALDAR_SOUTH, { 16, 15, 14, 13 }, { 1361, 1375, 1370, 1378 } }, // Dunbaldar South Bunker
{ BG_AV_NODES_DUNBALDAR_NORTH, { 20, 19, 18, 17 }, { 1362, 1374, 1371, 1379 } }, // Dunbaldar North Bunker
{ BG_AV_NODES_ICEWING_BUNKER, { 24, 23, 22, 21 }, { 1363, 1376, 1372, 1380 } }, // Icewing Bunker
{ BG_AV_NODES_STONEHEART_BUNKER, { 28, 27, 26, 25 }, { 1364, 1377, 1373, 1381 } }, // Stoneheart Bunker
{ BG_AV_NODES_ICEBLOOD_TOWER, { 44, 43, 42, 41 }, { 1368, 1390, 1385, 1395 } }, // Iceblood Tower
{ BG_AV_NODES_TOWER_POINT, { 40, 39, 38, 37 }, { 1367, 1389, 1384, 1394 } }, // Tower Point
{ BG_AV_NODES_FROSTWOLF_ETOWER, { 36, 35, 34, 33 }, { 1366, 1388, 1383, 1393 } }, // Frostwolf East Tower
{ BG_AV_NODES_FROSTWOLF_WTOWER, { 32, 31, 30, 29 }, { 1365, 1387, 1382, 1392 } }, // Frostwolf West Tower
};
enum Texts
{
// Herold
// Towers/Graveyards = 1 - 60
TEXT_COLDTOOTH_MINE_ALLIANCE_TAKEN = 61,
TEXT_IRONDEEP_MINE_ALLIANCE_TAKEN = 62,
TEXT_COLDTOOTH_MINE_HORDE_TAKEN = 63,
TEXT_IRONDEEP_MINE_HORDE_TAKEN = 64,
TEXT_FROSTWOLF_GENERAL_DEAD = 65, /// @todo: sound is missing
TEXT_STORMPIKE_GENERAL_DEAD = 66, /// @todo: sound is missing
TEXT_ALLIANCE_WINS = 67, // NYI /// @todo: sound is missing
TEXT_HORDE_WINS = 68, // NYI /// @todo: sound is missing
// Taskmaster Snivvle
TEXT_SNIVVLE_RANDOM = 0
};
struct BG_AV_NodeInfo
{
BG_AV_States State;
@@ -1524,7 +1547,7 @@ struct BG_AV_NodeInfo
bool Tower;
};
inline BG_AV_Nodes &operator++(BG_AV_Nodes &i){ return i = BG_AV_Nodes(i + 1); }
inline BG_AV_Nodes &operator++(BG_AV_Nodes& i) { return i = BG_AV_Nodes(i + 1); }
struct BattlegroundAVScore final : public BattlegroundScore
{
@@ -1633,9 +1656,16 @@ class BattlegroundAV : public Battleground
void PopulateNode(BG_AV_Nodes node);
void DePopulateNode(BG_AV_Nodes node);
StaticNodeInfo const* GetStaticNodeInfo(BG_AV_Nodes node) const
{
for (uint8 i = 0; i < BG_AV_NODES_MAX; ++i)
if (BGAVNodeInfo[i].NodeId == node)
return &BGAVNodeInfo[i];
return nullptr;
}
BG_AV_Nodes GetNodeThroughObject(uint32 object);
uint32 GetObjectThroughNode(BG_AV_Nodes node);
char const* GetNodeName(BG_AV_Nodes node);
bool IsTower(BG_AV_Nodes node) { return m_Nodes[node].Tower; }
/*mine*/
@@ -1643,7 +1673,6 @@ class BattlegroundAV : public Battleground
/*worldstates*/
void FillInitialWorldStates(WorldPacket& data) override;
uint8 GetWorldStateType(uint8 state, uint16 team);
void SendMineWorldStates(uint32 mine);
void UpdateNodeWorldState(BG_AV_Nodes node);
+17 -12
View File
@@ -15322,18 +15322,7 @@ void Player::RewardQuest(Quest const* quest, uint32 reward, Object* questGiver,
SendNewItem(item, quest->RewardItemIdCount[i], true, false);
}
else if (quest->IsDFQuest())
{
MailSender sender(MAIL_CREATURE, 34337 /* The Postmaster */ );
MailDraft draft("Recovered Item", "We recovered a lost item in the twisting nether and noted that it was yours.$B$BPlease find said object enclosed."); // This is the text used in Cataclysm, it probably wasn't changed.
SQLTransaction trans = CharacterDatabase.BeginTransaction();
if (Item* item = Item::CreateItem(quest->RewardItemId[i], quest->RewardItemIdCount[i], 0))
{
item->SaveToDB(trans);
draft.AddItem(item);
}
draft.SendMailTo(trans, MailReceiver(this, this->GetGUIDLow()), sender);
CharacterDatabase.CommitTransaction(trans);
}
SendItemRetrievalMail(quest->RewardItemId[i], quest->RewardItemIdCount[i]);
}
}
}
@@ -27223,6 +27212,22 @@ void Player::RefundItem(Item* item)
CharacterDatabase.CommitTransaction(trans);
}
void Player::SendItemRetrievalMail(uint32 itemEntry, uint32 count)
{
MailSender sender(MAIL_CREATURE, 34337 /* The Postmaster */);
MailDraft draft("Recovered Item", "We recovered a lost item in the twisting nether and noted that it was yours.$B$BPlease find said object enclosed."); // This is the text used in Cataclysm, it probably wasn't changed.
SQLTransaction trans = CharacterDatabase.BeginTransaction();
if (Item* item = Item::CreateItem(itemEntry, count, 0))
{
item->SaveToDB(trans);
draft.AddItem(item);
}
draft.SendMailTo(trans, MailReceiver(this, GetGUIDLow()), sender);
CharacterDatabase.CommitTransaction(trans);
}
void Player::SetRandomWinner(bool isWinner)
{
m_IsBGRandomWinner = isWinner;
+2
View File
@@ -1758,6 +1758,8 @@ class Player : public Unit, public GridObject<Player>
PlayerMails::iterator GetMailBegin() { return m_mail.begin();}
PlayerMails::iterator GetMailEnd() { return m_mail.end();}
void SendItemRetrievalMail(uint32 itemEntry, uint32 count); // Item retrieval mails sent by The Postmaster (34337), used in multiple places.
/*********************************************************/
/*** MAILED ITEMS SYSTEM ***/
/*********************************************************/
+18 -1
View File
@@ -1453,8 +1453,25 @@ void Group::CountTheRoll(Rolls::iterator rollI)
roll->getLoot()->NotifyItemRemoved(roll->itemSlot);
roll->getLoot()->unlootedCount--;
ItemTemplate const* pProto = sObjectMgr->GetItemTemplate(roll->itemid);
player->AutoStoreLoot(pProto->DisenchantID, LootTemplates_Disenchant, true);
player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_CAST_SPELL, 13262); // Disenchant
ItemPosCountVec dest;
InventoryResult msg = player->CanStoreNewItem(NULL_BAG, NULL_SLOT, dest, roll->itemid, item->count);
if (msg == EQUIP_ERR_OK)
player->AutoStoreLoot(pProto->DisenchantID, LootTemplates_Disenchant, true);
else // If the player's inventory is full, send the disenchant result in a mail.
{
Loot loot;
loot.FillLoot(pProto->DisenchantID, LootTemplates_Disenchant, player, true);
uint32 max_slot = loot.GetMaxSlotInLootFor(player);
for (uint32 i = 0; i < max_slot; ++i)
{
LootItem* lootItem = loot.LootItemInSlot(i, player);
player->SendEquipError(msg, NULL, NULL, lootItem->itemid);
player->SendItemRetrievalMail(lootItem->itemid, lootItem->count);
}
}
}
}
}
+3 -33
View File
@@ -1009,48 +1009,18 @@ enum TrinityStrings
LANG_BG_IC_REFINERY = 1222,
LANG_BG_IC_QUARRY = 1223,
LANG_BG_IC_HANGAR = 1224,
// 1225-1299
LANG_BG_IC_ALLIANCE = 1300,
LANG_BG_IC_HORDE = 1301,
// FREE IDS 1228-9999
// 1302-1325
// AV
LANG_BG_AV_ALLY = 1300,
LANG_BG_AV_HORDE = 1301,
LANG_BG_AV_TOWER_TAKEN = 1302,
LANG_BG_AV_TOWER_ASSAULTED = 1303,
LANG_BG_AV_TOWER_DEFENDED = 1304,
LANG_BG_AV_GRAVE_TAKEN = 1305,
LANG_BG_AV_GRAVE_DEFENDED = 1306,
LANG_BG_AV_GRAVE_ASSAULTED = 1307,
LANG_BG_AV_MINE_TAKEN = 1308,
LANG_BG_AV_MINE_NORTH = 1309,
LANG_BG_AV_MINE_SOUTH = 1310,
LANG_BG_AV_NODE_GRAVE_STORM_AID = 1311,
LANG_BG_AV_NODE_TOWER_DUN_S = 1312,
LANG_BG_AV_NODE_TOWER_DUN_N = 1313,
LANG_BG_AV_NODE_GRAVE_STORMPIKE = 1314,
LANG_BG_AV_NODE_TOWER_ICEWING = 1315,
LANG_BG_AV_NODE_GRAVE_STONE = 1316,
LANG_BG_AV_NODE_TOWER_STONE = 1317,
LANG_BG_AV_NODE_GRAVE_SNOW = 1318,
LANG_BG_AV_NODE_TOWER_ICE = 1319,
LANG_BG_AV_NODE_GRAVE_ICE = 1320,
LANG_BG_AV_NODE_TOWER_POINT = 1321,
LANG_BG_AV_NODE_GRAVE_FROST = 1322,
LANG_BG_AV_NODE_TOWER_FROST_E = 1323,
LANG_BG_AV_NODE_TOWER_FROST_W = 1324,
LANG_BG_AV_NODE_GRAVE_FROST_HUT = 1325,
LANG_BG_AV_START_ONE_MINUTE = 1326,
LANG_BG_AV_START_HALF_MINUTE = 1327,
LANG_BG_AV_HAS_BEGUN = 1328,
LANG_BG_AV_A_NEAR_LOSE = 1329,
LANG_BG_AV_H_NEAR_LOSE = 1330,
LANG_BG_AV_H_CAPTAIN_DEAD = 1331,
LANG_BG_AV_A_CAPTAIN_DEAD = 1332,
// 1331-1332
LANG_BG_AV_START_TWO_MINUTES = 1333,
// FREE IDS 1334-1999
+6 -1
View File
@@ -6482,7 +6482,12 @@ bool Spell::CheckEffectTarget(Unit const* target, uint32 eff, Position const* lo
break;
}
if (IsTriggered() || m_spellInfo->AttributesEx2 & SPELL_ATTR2_CAN_TARGET_NOT_IN_LOS || DisableMgr::IsDisabledFor(DISABLE_TYPE_SPELL, m_spellInfo->Id, NULL, SPELL_DISABLE_LOS))
// check for ignore LOS on the effect itself
if (m_spellInfo->AttributesEx2 & SPELL_ATTR2_CAN_TARGET_NOT_IN_LOS || DisableMgr::IsDisabledFor(DISABLE_TYPE_SPELL, m_spellInfo->Id, NULL, SPELL_DISABLE_LOS))
return true;
// if spell is triggered, need to check for LOS disable on the aura triggering it and inherit that behaviour
if (IsTriggered() && m_triggeredByAuraSpell && (m_triggeredByAuraSpell->AttributesEx2 & SPELL_ATTR2_CAN_TARGET_NOT_IN_LOS || DisableMgr::IsDisabledFor(DISABLE_TYPE_SPELL, m_triggeredByAuraSpell->Id, NULL, SPELL_DISABLE_LOS)))
return true;
/// @todo shit below shouldn't be here, but it's temporary
@@ -20,27 +20,32 @@
enum Spells
{
SPELL_ARCANE_EXPLOSION = 46608,
SPELL_CONE_OF_COLD = 38384,
SPELL_FIREBALL = 46988,
SPELL_FROSTBOLT = 46987
SPELL_ARCANE_EXPLOSION = 46608,
SPELL_CONE_OF_COLD = 38384,
SPELL_FIREBALL = 46988,
SPELL_FROSTBOLT = 46987
};
enum Yells
{
YELL_AGGRO = 0,
YELL_EVADE = 1,
YELL_SALVATION = 2,
YELL_AGGRO = 0,
YELL_EVADE = 1,
YELL_SALVATION = 2,
};
enum Creatures
{
NPC_WATER_ELEMENTAL = 25040
NPC_WATER_ELEMENTAL = 25040
};
enum Action
{
ACTION_BUFF_YELL = -30001 // shared from Battleground
};
enum WaterElementalSpells
{
SPELL_WATERBOLT = 46983
SPELL_WATERBOLT = 46983
};
class npc_water_elemental : public CreatureScript
@@ -151,6 +156,12 @@ public:
summons.DespawnAll();
}
void DoAction(int32 actionId) override
{
if (actionId == ACTION_BUFF_YELL)
Talk(YELL_AGGRO);
}
void UpdateAI(uint32 diff) override
{
if (!UpdateVictim())
@@ -30,7 +30,13 @@ enum Spells
enum Yells
{
YELL_AGGRO = 0,
YELL_EVADE = 1
YELL_EVADE = 1,
YELL_BUFF = 2
};
enum Action
{
ACTION_BUFF_YELL = -30001 // shared from Battleground
};
class boss_galvangar : public CreatureScript
@@ -69,6 +75,12 @@ public:
Reset();
}
void DoAction(int32 actionId) override
{
if (actionId == ACTION_BUFF_YELL)
Talk(YELL_BUFF);
}
void UpdateAI(uint32 diff) override
{
if (!UpdateVictim())
@@ -1269,7 +1269,13 @@ class spell_putricide_mutated_plague : public SpellScriptLoader
void OnRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)
{
uint32 healSpell = uint32(GetSpellInfo()->Effects[EFFECT_0].CalcValue());
GetTarget()->CastSpell(GetTarget(), healSpell, true, NULL, NULL, GetCasterGUID());
SpellInfo const* healSpellInfo = sSpellMgr->GetSpellInfo(healSpell);
if (!healSpellInfo)
return;
int32 heal = healSpellInfo->Effects[0].CalcValue() * GetStackAmount();
GetTarget()->CastCustomSpell(healSpell, SPELLVALUE_BASE_POINT0, heal, GetTarget(), true, NULL, NULL, GetCasterGUID());
}
void Register() override