diff --git a/sql/migrations/20200212185807_world.sql b/sql/migrations/20200212185807_world.sql new file mode 100644 index 000000000..8d09782fa --- /dev/null +++ b/sql/migrations/20200212185807_world.sql @@ -0,0 +1,1074 @@ +DROP PROCEDURE IF EXISTS add_migration; +delimiter ?? +CREATE PROCEDURE `add_migration`() +BEGIN +DECLARE v INT DEFAULT 1; +SET v = (SELECT COUNT(*) FROM `migrations` WHERE `id`='20200212185807'); +IF v=0 THEN +INSERT INTO `migrations` VALUES ('20200212185807'); +-- Add your query below. + + +-- These fields are signed ints. +ALTER TABLE `gameobject_template` + CHANGE COLUMN `data1` `data1` INT(11) NOT NULL DEFAULT '0' AFTER `data0`, + CHANGE COLUMN `data6` `data6` INT(11) NOT NULL DEFAULT '0' AFTER `data5`; + +-- Wrong size. +UPDATE `gameobject_template` SET `size`=0.3 WHERE `entry`=21128; +UPDATE `gameobject_template` SET `size`=0.946831 WHERE `entry`=32884; +UPDATE `gameobject_template` SET `size`=1.507 WHERE `entry`=69428; +UPDATE `gameobject_template` SET `size`=0.5 WHERE `entry`=105569; +UPDATE `gameobject_template` SET `size`=1.5 WHERE `entry`=137167; +UPDATE `gameobject_template` SET `size`=0.35 WHERE `entry`=141981; +UPDATE `gameobject_template` SET `size`=0.5 WHERE `entry`=144050; +UPDATE `gameobject_template` SET `size`=3 WHERE `entry`=148838; +UPDATE `gameobject_template` SET `size`=3.5 WHERE `entry`=148883; +UPDATE `gameobject_template` SET `size`=2 WHERE `entry`=153359; +UPDATE `gameobject_template` SET `size`=2 WHERE `entry`=164884; +UPDATE `gameobject_template` SET `size`=1.33 WHERE `entry`=165587; +UPDATE `gameobject_template` SET `size`=1.82 WHERE `entry`=173064; +UPDATE `gameobject_template` SET `size`=1.85 WHERE `entry`=173065; +UPDATE `gameobject_template` SET `size`=1.85 WHERE `entry`=173066; +UPDATE `gameobject_template` SET `size`=1.65179 WHERE `entry`=173094; +UPDATE `gameobject_template` SET `size`=2 WHERE `entry`=173326; +UPDATE `gameobject_template` SET `size`=2 WHERE `entry`=174617; +UPDATE `gameobject_template` SET `size`=2 WHERE `entry`=174618; +UPDATE `gameobject_template` SET `size`=2 WHERE `entry`=174620; +UPDATE `gameobject_template` SET `size`=2 WHERE `entry`=174621; +UPDATE `gameobject_template` SET `size`=2 WHERE `entry`=174711; +UPDATE `gameobject_template` SET `size`=1.1322 WHERE `entry`=175187; +UPDATE `gameobject_template` SET `size`=0.504798 WHERE `entry`=175194; +UPDATE `gameobject_template` SET `size`=0.514894 WHERE `entry`=175195; +UPDATE `gameobject_template` SET `size`=0.504798 WHERE `entry`=175196; +UPDATE `gameobject_template` SET `size`=0.504798 WHERE `entry`=175197; +UPDATE `gameobject_template` SET `size`=0.504798 WHERE `entry`=175198; +UPDATE `gameobject_template` SET `size`=0.504798 WHERE `entry`=175199; +UPDATE `gameobject_template` SET `size`=0.504798 WHERE `entry`=175200; +UPDATE `gameobject_template` SET `size`=1.11 WHERE `entry`=175267; +UPDATE `gameobject_template` SET `size`=1.11 WHERE `entry`=175268; +UPDATE `gameobject_template` SET `size`=1.11 WHERE `entry`=175269; +UPDATE `gameobject_template` SET `size`=1.11 WHERE `entry`=175270; +UPDATE `gameobject_template` SET `size`=1.11 WHERE `entry`=175271; +UPDATE `gameobject_template` SET `size`=1.11 WHERE `entry`=175272; +UPDATE `gameobject_template` SET `size`=0.909789 WHERE `entry`=175705; +UPDATE `gameobject_template` SET `size`=0.1 WHERE `entry`=175964; +UPDATE `gameobject_template` SET `size`=0.7 WHERE `entry`=176087; +UPDATE `gameobject_template` SET `size`=1 WHERE `entry`=176511; +UPDATE `gameobject_template` SET `size`=0.84746 WHERE `entry`=176514; +UPDATE `gameobject_template` SET `size`=0.81486 WHERE `entry`=176515; +UPDATE `gameobject_template` SET `size`=0.5 WHERE `entry`=176546; +UPDATE `gameobject_template` SET `size`=0.3 WHERE `entry`=176547; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=176810; +UPDATE `gameobject_template` SET `size`=0.819672 WHERE `entry`=176813; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=176815; +UPDATE `gameobject_template` SET `size`=0.819672 WHERE `entry`=176817; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=176819; +UPDATE `gameobject_template` SET `size`=0.819672 WHERE `entry`=176820; +UPDATE `gameobject_template` SET `size`=0.819672 WHERE `entry`=176822; +UPDATE `gameobject_template` SET `size`=0.819672 WHERE `entry`=176823; +UPDATE `gameobject_template` SET `size`=0.819672 WHERE `entry`=176825; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=176826; +UPDATE `gameobject_template` SET `size`=0.819672 WHERE `entry`=176828; +UPDATE `gameobject_template` SET `size`=0.84746 WHERE `entry`=176832; +UPDATE `gameobject_template` SET `size`=0.81486 WHERE `entry`=176834; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=176835; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=176836; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=176837; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=176840; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=176908; +UPDATE `gameobject_template` SET `size`=0.819672 WHERE `entry`=176909; +UPDATE `gameobject_template` SET `size`=0.819672 WHERE `entry`=176912; +UPDATE `gameobject_template` SET `size`=0.84746 WHERE `entry`=176914; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=176919; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=176920; +UPDATE `gameobject_template` SET `size`=1.03788 WHERE `entry`=176951; +UPDATE `gameobject_template` SET `size`=1.03788 WHERE `entry`=176952; +UPDATE `gameobject_template` SET `size`=1.03788 WHERE `entry`=176953; +UPDATE `gameobject_template` SET `size`=1.03788 WHERE `entry`=176954; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=177985; +UPDATE `gameobject_template` SET `size`=0.84746 WHERE `entry`=177988; +UPDATE `gameobject_template` SET `size`=0.81486 WHERE `entry`=177989; +UPDATE `gameobject_template` SET `size`=0.819672 WHERE `entry`=177991; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=177993; +UPDATE `gameobject_template` SET `size`=0.819672 WHERE `entry`=177995; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=177997; +UPDATE `gameobject_template` SET `size`=0.819672 WHERE `entry`=177998; +UPDATE `gameobject_template` SET `size`=0.819672 WHERE `entry`=178000; +UPDATE `gameobject_template` SET `size`=0.819672 WHERE `entry`=178001; +UPDATE `gameobject_template` SET `size`=0.819672 WHERE `entry`=178003; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=178004; +UPDATE `gameobject_template` SET `size`=0.819672 WHERE `entry`=178006; +UPDATE `gameobject_template` SET `size`=0.84746 WHERE `entry`=178010; +UPDATE `gameobject_template` SET `size`=0.81486 WHERE `entry`=178012; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=178013; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=178014; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=178015; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=178018; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=178034; +UPDATE `gameobject_template` SET `size`=0.819672 WHERE `entry`=178035; +UPDATE `gameobject_template` SET `size`=0.819672 WHERE `entry`=178038; +UPDATE `gameobject_template` SET `size`=0.84746 WHERE `entry`=178040; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=178045; +UPDATE `gameobject_template` SET `size`=0.81967 WHERE `entry`=178046; +UPDATE `gameobject_template` SET `size`=3.5 WHERE `entry`=178088; +UPDATE `gameobject_template` SET `size`=1.3 WHERE `entry`=178108; +UPDATE `gameobject_template` SET `size`=1.2 WHERE `entry`=178230; +UPDATE `gameobject_template` SET `size`=1.2 WHERE `entry`=178556; +UPDATE `gameobject_template` SET `size`=0.75 WHERE `entry`=178649; +UPDATE `gameobject_template` SET `size`=0.35 WHERE `entry`=178668; +UPDATE `gameobject_template` SET `size`=0.9 WHERE `entry`=178669; +UPDATE `gameobject_template` SET `size`=0.85 WHERE `entry`=178805; +UPDATE `gameobject_template` SET `size`=1.8 WHERE `entry`=178904; +UPDATE `gameobject_template` SET `size`=0.75 WHERE `entry`=178924; +UPDATE `gameobject_template` SET `size`=2 WHERE `entry`=180246; +UPDATE `gameobject_template` SET `size`=2 WHERE `entry`=180432; +UPDATE `gameobject_template` SET `size`=4 WHERE `entry`=180433; +UPDATE `gameobject_template` SET `size`=0.5 WHERE `entry`=180450; +UPDATE `gameobject_template` SET `size`=0.9 WHERE `entry`=180715; +UPDATE `gameobject_template` SET `size`=2 WHERE `entry`=180737; +UPDATE `gameobject_template` SET `size`=2 WHERE `entry`=181060; +UPDATE `gameobject_template` SET `size`=0.5 WHERE `entry`=181108; +UPDATE `gameobject_template` SET `size`=0.5 WHERE `entry`=181109; +UPDATE `gameobject_template` SET `size`='1.5' WHERE `entry`=152097; + +-- Wrong display id. +UPDATE `gameobject_template` SET `displayId`=724 WHERE `entry`=2138; +UPDATE `gameobject_template` SET `displayId`=725 WHERE `entry`=2139; +UPDATE `gameobject_template` SET `displayId`=726 WHERE `entry`=2146; +UPDATE `gameobject_template` SET `displayId`=718 WHERE `entry`=2150; +UPDATE `gameobject_template` SET `displayId`=538 WHERE `entry`=2152; +UPDATE `gameobject_template` SET `displayId`=725 WHERE `entry`=2153; +UPDATE `gameobject_template` SET `displayId`=718 WHERE `entry`=2154; +UPDATE `gameobject_template` SET `displayId`=725 WHERE `entry`=2155; +UPDATE `gameobject_template` SET `displayId`=718 WHERE `entry`=2156; +UPDATE `gameobject_template` SET `displayId`=725 WHERE `entry`=2157; +UPDATE `gameobject_template` SET `displayId`=718 WHERE `entry`=2158; +UPDATE `gameobject_template` SET `displayId`=681 WHERE `entry`=2159; +UPDATE `gameobject_template` SET `displayId`=681 WHERE `entry`=2160; +UPDATE `gameobject_template` SET `displayId`=719 WHERE `entry`=2161; +UPDATE `gameobject_template` SET `displayId`=725 WHERE `entry`=2162; +UPDATE `gameobject_template` SET `displayId`=538 WHERE `entry`=2164; +UPDATE `gameobject_template` SET `displayId`=726 WHERE `entry`=2167; +UPDATE `gameobject_template` SET `displayId`=538 WHERE `entry`=2169; +UPDATE `gameobject_template` SET `displayId`=719 WHERE `entry`=2177; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=2575; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=2727; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=2728; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=3223; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=3839; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=3840; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=3841; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=3842; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=3843; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=3844; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=3845; +UPDATE `gameobject_template` SET `displayId`=201 WHERE `entry`=3936; +UPDATE `gameobject_template` SET `displayId`=654 WHERE `entry`=3937; +UPDATE `gameobject_template` SET `displayId`=201 WHERE `entry`=3938; +UPDATE `gameobject_template` SET `displayId`=201 WHERE `entry`=3939; +UPDATE `gameobject_template` SET `displayId`=201 WHERE `entry`=3940; +UPDATE `gameobject_template` SET `displayId`=201 WHERE `entry`=3941; +UPDATE `gameobject_template` SET `displayId`=201 WHERE `entry`=3942; +UPDATE `gameobject_template` SET `displayId`=654 WHERE `entry`=3943; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=3960; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=3962; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=17190; +UPDATE `gameobject_template` SET `displayId`=390 WHERE `entry`=19535; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=19902; +UPDATE `gameobject_template` SET `displayId`=719 WHERE `entry`=23295; +UPDATE `gameobject_template` SET `displayId`=719 WHERE `entry`=23296; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24388; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24389; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24392; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24393; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24394; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24395; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24396; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24398; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24399; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24400; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24401; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24402; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24403; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24405; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24406; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24407; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24408; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24409; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24410; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24411; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24412; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24413; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24414; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24415; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24416; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24417; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24451; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24452; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24453; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24460; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24461; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24462; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24463; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24464; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24465; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24466; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24467; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24494; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24495; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24496; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24497; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24498; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24499; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24528; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24529; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24530; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24531; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24532; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24533; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24534; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24535; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24536; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24537; +UPDATE `gameobject_template` SET `displayId`=603 WHERE `entry`=24538; +UPDATE `gameobject_template` SET `displayId`=603 WHERE `entry`=24539; +UPDATE `gameobject_template` SET `displayId`=603 WHERE `entry`=24540; +UPDATE `gameobject_template` SET `displayId`=603 WHERE `entry`=24541; +UPDATE `gameobject_template` SET `displayId`=603 WHERE `entry`=24542; +UPDATE `gameobject_template` SET `displayId`=603 WHERE `entry`=24543; +UPDATE `gameobject_template` SET `displayId`=603 WHERE `entry`=24544; +UPDATE `gameobject_template` SET `displayId`=603 WHERE `entry`=24545; +UPDATE `gameobject_template` SET `displayId`=603 WHERE `entry`=24546; +UPDATE `gameobject_template` SET `displayId`=603 WHERE `entry`=24547; +UPDATE `gameobject_template` SET `displayId`=603 WHERE `entry`=24548; +UPDATE `gameobject_template` SET `displayId`=603 WHERE `entry`=24549; +UPDATE `gameobject_template` SET `displayId`=603 WHERE `entry`=24550; +UPDATE `gameobject_template` SET `displayId`=603 WHERE `entry`=24551; +UPDATE `gameobject_template` SET `displayId`=603 WHERE `entry`=24552; +UPDATE `gameobject_template` SET `displayId`=603 WHERE `entry`=24553; +UPDATE `gameobject_template` SET `displayId`=603 WHERE `entry`=24554; +UPDATE `gameobject_template` SET `displayId`=603 WHERE `entry`=24555; +UPDATE `gameobject_template` SET `displayId`=603 WHERE `entry`=24556; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24611; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24612; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24613; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24614; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24615; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24616; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24617; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24618; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24619; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24620; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24621; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=24622; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=24745; +UPDATE `gameobject_template` SET `displayId`=199 WHERE `entry`=24758; +UPDATE `gameobject_template` SET `displayId`=199 WHERE `entry`=24760; +UPDATE `gameobject_template` SET `displayId`=199 WHERE `entry`=24761; +UPDATE `gameobject_template` SET `displayId`=199 WHERE `entry`=24762; +UPDATE `gameobject_template` SET `displayId`=199 WHERE `entry`=24763; +UPDATE `gameobject_template` SET `displayId`=199 WHERE `entry`=24764; +UPDATE `gameobject_template` SET `displayId`=4171 WHERE `entry`=25338; +UPDATE `gameobject_template` SET `displayId`=4171 WHERE `entry`=25339; +UPDATE `gameobject_template` SET `displayId`=4171 WHERE `entry`=25340; +UPDATE `gameobject_template` SET `displayId`=4171 WHERE `entry`=25355; +UPDATE `gameobject_template` SET `displayId`=4171 WHERE `entry`=25356; +UPDATE `gameobject_template` SET `displayId`=4171 WHERE `entry`=25357; +UPDATE `gameobject_template` SET `displayId`=199 WHERE `entry`=35593; +UPDATE `gameobject_template` SET `displayId`=199 WHERE `entry`=35594; +UPDATE `gameobject_template` SET `displayId`=199 WHERE `entry`=35595; +UPDATE `gameobject_template` SET `displayId`=199 WHERE `entry`=35596; +UPDATE `gameobject_template` SET `displayId`=199 WHERE `entry`=35597; +UPDATE `gameobject_template` SET `displayId`=199 WHERE `entry`=35598; +UPDATE `gameobject_template` SET `displayId`=396 WHERE `entry`=43116; +UPDATE `gameobject_template` SET `displayId`=396 WHERE `entry`=43117; +UPDATE `gameobject_template` SET `displayId`=396 WHERE `entry`=43118; +UPDATE `gameobject_template` SET `displayId`=396 WHERE `entry`=43119; +UPDATE `gameobject_template` SET `displayId`=396 WHERE `entry`=43120; +UPDATE `gameobject_template` SET `displayId`=396 WHERE `entry`=43121; +UPDATE `gameobject_template` SET `displayId`=396 WHERE `entry`=43122; +UPDATE `gameobject_template` SET `displayId`=174 WHERE `entry`=59850; +UPDATE `gameobject_template` SET `displayId`=39 WHERE `entry`=60395; +UPDATE `gameobject_template` SET `displayId`=39 WHERE `entry`=60438; +UPDATE `gameobject_template` SET `displayId`=39 WHERE `entry`=60439; +UPDATE `gameobject_template` SET `displayId`=39 WHERE `entry`=60440; +UPDATE `gameobject_template` SET `displayId`=39 WHERE `entry`=61919; +UPDATE `gameobject_template` SET `displayId`=39 WHERE `entry`=61920; +UPDATE `gameobject_template` SET `displayId`=39 WHERE `entry`=61921; +UPDATE `gameobject_template` SET `displayId`=39 WHERE `entry`=61922; +UPDATE `gameobject_template` SET `displayId`=39 WHERE `entry`=61923; +UPDATE `gameobject_template` SET `displayId`=39 WHERE `entry`=61924; +UPDATE `gameobject_template` SET `displayId`=39 WHERE `entry`=61925; +UPDATE `gameobject_template` SET `displayId`=681 WHERE `entry`=63195; +UPDATE `gameobject_template` SET `displayId`=200 WHERE `entry`=63196; +UPDATE `gameobject_template` SET `displayId`=4171 WHERE `entry`=63197; +UPDATE `gameobject_template` SET `displayId`=4171 WHERE `entry`=63198; +UPDATE `gameobject_template` SET `displayId`=718 WHERE `entry`=66780; +UPDATE `gameobject_template` SET `displayId`=39 WHERE `entry`=106638; +UPDATE `gameobject_template` SET `displayId`=39 WHERE `entry`=106641; +UPDATE `gameobject_template` SET `displayId`=39 WHERE `entry`=107037; +UPDATE `gameobject_template` SET `displayId`=39 WHERE `entry`=107039; +UPDATE `gameobject_template` SET `displayId`=39 WHERE `entry`=107040; +UPDATE `gameobject_template` SET `displayId`=39 WHERE `entry`=107041; +UPDATE `gameobject_template` SET `displayId`=39 WHERE `entry`=107042; +UPDATE `gameobject_template` SET `displayId`=538 WHERE `entry`=112898; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=130668; +UPDATE `gameobject_template` SET `displayId`=39 WHERE `entry`=138614; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=141838; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=141841; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=142078; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=144133; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=147435; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=147436; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=147437; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=147438; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=147439; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=147440; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=147441; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=147442; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=147443; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=147444; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=147445; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=147446; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=147447; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=147448; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=147449; +UPDATE `gameobject_template` SET `displayId`=383 WHERE `entry`=147450; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=153459; +UPDATE `gameobject_template` SET `displayId`=719 WHERE `entry`=164908; +UPDATE `gameobject_template` SET `displayId`=3091 WHERE `entry`=165578; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173096; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173118; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173119; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173120; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173121; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173122; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173129; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173130; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173131; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173132; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173133; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173134; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173135; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173136; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173149; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173150; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173151; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173152; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173153; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173154; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173155; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173156; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173178; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173179; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173180; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173181; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173182; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173183; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173184; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173185; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173186; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173188; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173195; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173196; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=175144; +UPDATE `gameobject_template` SET `displayId`=1327 WHERE `entry`=175964; +UPDATE `gameobject_template` SET `displayId`=327 WHERE `entry`=176110; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=176460; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=176509; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=176516; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=176517; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=176518; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=176519; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=176520; +UPDATE `gameobject_template` SET `displayId`=224 WHERE `entry`=177272; +UPDATE `gameobject_template` SET `displayId`=1407 WHERE `entry`=177273; +UPDATE `gameobject_template` SET `displayId`=1407 WHERE `entry`=177274; +UPDATE `gameobject_template` SET `displayId`=1407 WHERE `entry`=177275; +UPDATE `gameobject_template` SET `displayId`=1407 WHERE `entry`=177278; +UPDATE `gameobject_template` SET `displayId`=1407 WHERE `entry`=177279; +UPDATE `gameobject_template` SET `displayId`=1407 WHERE `entry`=177280; +UPDATE `gameobject_template` SET `displayId`=1407 WHERE `entry`=177281; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=177727; +UPDATE `gameobject_template` SET `displayId`=1287 WHERE `entry`=178164; +UPDATE `gameobject_template` SET `displayId`=725 WHERE `entry`=179736; +UPDATE `gameobject_template` SET `displayId`=725 WHERE `entry`=179737; +UPDATE `gameobject_template` SET `displayId`=725 WHERE `entry`=179738; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=179844; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=179863; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=179886; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=180913; +UPDATE `gameobject_template` SET `displayId`=306 WHERE `entry`=181130; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=3888; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=3894; +UPDATE `gameobject_template` SET `displayId`=201 WHERE `entry`=3906; +UPDATE `gameobject_template` SET `displayId`=201 WHERE `entry`=3904; +UPDATE `gameobject_template` SET `displayId`=201 WHERE `entry`=3900; +UPDATE `gameobject_template` SET `displayId`=654 WHERE `entry`=3909; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=3901; +UPDATE `gameobject_template` SET `displayId`=201 WHERE `entry`=3908; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=174847; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=3891; +UPDATE `gameobject_template` SET `displayId`=201 WHERE `entry`=3892; +UPDATE `gameobject_template` SET `displayId`=654 WHERE `entry`=3893; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=3897; +UPDATE `gameobject_template` SET `displayId`=201 WHERE `entry`=3898; +UPDATE `gameobject_template` SET `displayId`=201 WHERE `entry`=3902; +UPDATE `gameobject_template` SET `displayId`=201 WHERE `entry`=3905; +UPDATE `gameobject_template` SET `displayId`=201 WHERE `entry`=3911; +UPDATE `gameobject_template` SET `displayId`=408 WHERE `entry`=173187; + +-- Data for GAMEOBJECT_TYPE_DOOR = 0 +UPDATE `gameobject_template` SET `data0`=0, `data2`=196608 WHERE `entry`=176576; +UPDATE `gameobject_template` SET `data0`=0, `data2`=196608 WHERE `entry`=176562; +UPDATE `gameobject_template` SET `name`='Doodad_BlackRockDoors01', `data2`=196608 WHERE `entry`=170556; +UPDATE `gameobject_template` SET `data2`=0 WHERE `entry`=175350; +UPDATE `gameobject_template` SET `data2`=0 WHERE `entry`=175354; +UPDATE `gameobject_template` SET `data2`=0 WHERE `entry`=175355; +UPDATE `gameobject_template` SET `data0`=0 WHERE `entry`=175153; +UPDATE `gameobject_template` SET `data2`=0 WHERE `entry`=175351; +UPDATE `gameobject_template` SET `data2`=196608 WHERE `entry`=175370; +UPDATE `gameobject_template` SET `name`='Gate', `data2`=196608 WHERE `entry`=176694; +UPDATE `gameobject_template` SET `type`=2, `displayId`=306 WHERE `entry`=177727; + +-- Miblon's Door +UPDATE `gameobject_template` SET `type`=5 WHERE `entry`=164729; +UPDATE `gameobject` SET `spawntimesecsmin`=180, `spawntimesecsmax`=180 WHERE `id`=164729; +DELETE FROM `event_scripts` WHERE `id`=3718; +INSERT INTO `event_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (3718, 0, 39, 9467, 0, 0, 0, 9467, 50, 8, 3, 100, 0, 0, 0, 0, 0, 0, 0, 0, 'The Videre Elixir: Miblon Snarltooth - Start Script'); +INSERT INTO `event_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (3718, 5, 81, 17428, 180, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'The Videre Elixir: Miblon\'s Door - Despawn'); +DELETE FROM `event_scripts` WHERE `id`=9467; +INSERT INTO `event_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (9467, 0, 4, 147, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'The Videre Elixir: Miblon Snarltooth - Remove Gossip Flag'); +INSERT INTO `event_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (9467, 2, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'The Videre Elixir: Miblon Snarltooth - Set Facing to Miblon\'s Bait'); +INSERT INTO `event_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (9467, 2, 0, 2, 0, 0, 0, 0, 0, 0, 0, 4836, 0, 0, 0, 0, 0, 0, 0, 0, 'The Videre Elixir: Miblon Snarltooth - Say Emoted Text 1'); +INSERT INTO `event_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (9467, 3, 25, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'The Videre Elixir: Miblon Snarltooth - Set Run'); +INSERT INTO `event_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (9467, 4, 3, 2, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 'The Videre Elixir: Miblon Snarltooth - Move to Miblon\'s Bait'); +INSERT INTO `event_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (9467, 7, 0, 2, 0, 0, 0, 0, 0, 0, 0, 4768, 0, 0, 0, 0, 0, 0, 0, 0, 'The Videre Elixir: Miblon Snarltooth - Say Emoted Text 2'); +INSERT INTO `event_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (9467, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4766, 0, 0, 0, 0, 0, 0, 0, 0, 'The Videre Elixir: Miblon Snarltooth - Say Text 3'); +INSERT INTO `event_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (9467, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4771, 0, 0, 0, 0, 0, 0, 0, 0, 'The Videre Elixir: Miblon Snarltooth - Say Emoted Text 4'); +INSERT INTO `event_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (9467, 18, 20, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'The Videre Elixir: Miblon Snarltooth - Move Home'); +INSERT INTO `event_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (9467, 20, 4, 147, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'The Videre Elixir: Miblon Snarltooth - Add Gossip Flag'); + +-- Data for GAMEOBJECT_TYPE_BUTTON = 1 +UPDATE `gameobject_template` SET `type`=0 WHERE `entry`=124371; +UPDATE `gameobject_template` SET `data2`=0 WHERE `entry`=177404; +UPDATE `gameobject_template` SET `data2`=0 WHERE `entry`=180524; +UPDATE `gameobject_template` SET `data2`=327680 WHERE `entry`=178560; + +-- Altar of the Deeps. +DELETE FROM `gameobject_template` WHERE `entry`=103016; +INSERT INTO `gameobject_template` (`entry`, `patch`, `type`, `displayId`, `name`, `faction`, `flags`, `size`, `data0`, `data1`, `data2`, `data3`, `data4`, `data5`, `data6`, `data7`, `data8`, `data9`, `data10`, `data11`, `data12`, `data13`, `data14`, `data15`, `data16`, `data17`, `data18`, `data19`, `data20`, `data21`, `data22`, `data23`, `mingold`, `maxgold`, `script_name`) VALUES (103016, 0, 1, 402, 'Altar of the Deeps', 0, 16, 1, 0, 93, 65536, 94040, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ''); +INSERT INTO `gameobject_template` (`entry`, `patch`, `type`, `displayId`, `name`, `faction`, `flags`, `size`, `data0`, `data1`, `data2`, `data3`, `data4`, `data5`, `data6`, `data7`, `data8`, `data9`, `data10`, `data11`, `data12`, `data13`, `data14`, `data15`, `data16`, `data17`, `data18`, `data19`, `data20`, `data21`, `data22`, `data23`, `mingold`, `maxgold`, `script_name`) VALUES (103016, 7, 1, 402, 'Altar of the Deeps', 0, 16, 1, 0, 93, 65536, 94039, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ''); +DELETE FROM `gameobject_template` WHERE `entry`=94040 && `patch`=7; +UPDATE `gameobject` SET `patch_max`=6 WHERE `guid`=14106; +INSERT INTO `gameobject` (`guid`, `id`, `map`, `position_x`, `position_y`, `position_z`, `orientation`, `rotation0`, `rotation1`, `rotation2`, `rotation3`, `spawntimesecsmin`, `spawntimesecsmax`, `animprogress`, `state`, `spawn_flags`, `visibility_mod`, `patch_min`, `patch_max`) VALUES (14107, 94039, 48, -839.619, -477.904, -33.7343, 3.14159, 0, 0, 0.926452, 0.376412, 300, 300, 255, 1, 0, 0, 7, 10); + +-- Data for GAMEOBJECT_TYPE_QUESTGIVER = 2 +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=256; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=47; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=60; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=68; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=711; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=3972; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=1763; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=2008; +UPDATE `gameobject_template` SET `data1`=3628 WHERE `entry`=174607; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=177904; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=2713; +UPDATE `gameobject_template` SET `data6`=0, `data7`=0 WHERE `entry`=176392; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=164867; +UPDATE `gameobject_template` SET `data1`=3622 WHERE `entry`=174596; +UPDATE `gameobject_template` SET `data6`=0 WHERE `entry`=175524; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=142122; +UPDATE `gameobject_template` SET `data0`=93, `data3`=1047 WHERE `entry`=142475; +UPDATE `gameobject_template` SET `data0`=93, `data3`=1049 WHERE `entry`=142476; +UPDATE `gameobject_template` SET `data1`=3652 WHERE `entry`=174686; +UPDATE `gameobject_template` SET `data1`=3555 WHERE `entry`=171942; +UPDATE `gameobject_template` SET `data1`=3355 WHERE `entry`=164887; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=150075; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=156561; +UPDATE `gameobject_template` SET `data6`=0, `data7`=0 WHERE `entry`=176393; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=164868; +UPDATE `gameobject_template` SET `data1`=3354 WHERE `entry`=164886; +UPDATE `gameobject_template` SET `data1`=3611 WHERE `entry`=173284; +UPDATE `gameobject_template` SET `data1`=3612 WHERE `entry`=173324; +UPDATE `gameobject_template` SET `data1`=3613 WHERE `entry`=173327; +UPDATE `gameobject_template` SET `data1`=3620 WHERE `entry`=174594; +UPDATE `gameobject_template` SET `data1`=3624 WHERE `entry`=174598; +UPDATE `gameobject_template` SET `data1`=3615 WHERE `entry`=174600; +UPDATE `gameobject_template` SET `data1`=3616 WHERE `entry`=174601; +UPDATE `gameobject_template` SET `data1`=3618 WHERE `entry`=174603; +UPDATE `gameobject_template` SET `data1`=3626 WHERE `entry`=174605; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=174682; +UPDATE `gameobject_template` SET `data1`=3651 WHERE `entry`=174684; +UPDATE `gameobject_template` SET `data1`=3673 WHERE `entry`=174708; +UPDATE `gameobject_template` SET `data1`=3674 WHERE `entry`=174709; +UPDATE `gameobject_template` SET `data1`=3671 WHERE `entry`=174712; +UPDATE `gameobject_template` SET `data1`=3672 WHERE `entry`=174713; +UPDATE `gameobject_template` SET `data6`=0 WHERE `entry`=179888; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=175320; +UPDATE `gameobject_template` SET `data6`=0 WHERE `entry`=176090; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=176115; +UPDATE `gameobject_template` SET `data6`=0, `data7`=0 WHERE `entry`=176361; +UPDATE `gameobject_template` SET `data6`=0, `data7`=0 WHERE `entry`=177289; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=179827; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=179913; + +-- Tablet of the Seven +INSERT INTO `conditions` (`condition_entry`, `type`, `value1`, `value2`, `value3`, `value4`, `flags`) VALUES (4296, 9, 4296, 1, 0, 0, 0); +UPDATE `gossip_menu` SET `text_id`=2819 WHERE `entry`=2187; +UPDATE `gossip_menu` SET `text_id`=2820 WHERE `entry`=2186; +INSERT INTO `gossip_menu_option` (`menu_id`, `id`, `option_icon`, `option_text`, `OptionBroadcastTextID`, `option_id`, `npc_option_npcflag`, `action_menu_id`, `action_poi_id`, `action_script_id`, `box_coded`, `box_money`, `box_text`, `BoxBroadcastTextID`, `condition_id`) VALUES (2187, 0, 0, 'Transcribe the tablet.', 5177, 1, 1, 2186, 0, 218700, 0, 0, '', 0, 4296); +DELETE FROM `gossip_scripts` WHERE `id`=218700; +INSERT INTO `gossip_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (218700, 0, 15, 15065, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Tablet of the Seven - Cast Spell Create Tablet Transcript'); +DELETE FROM `gameobject_involvedrelation` WHERE `quest`=4296; +UPDATE `gameobject_template` SET `flags`=0, `script_name`='' WHERE `entry`=169294; + +-- Guarded Thunder Ale Barrel +UPDATE `gameobject_template` SET `data1`=192, `data5`=0 WHERE `entry`=269; +UPDATE `gameobject` SET `spawntimesecsmin`=60, `spawntimesecsmax`=60 WHERE `id`=269; +UPDATE `gameobject` SET `spawntimesecsmin`=-60, `spawntimesecsmax`=-60, `position_x`=-5607.24, `position_y`=-547.934, `position_z`=392.985, `orientation`=0.471239 WHERE `guid`=35875; +INSERT INTO `quest_end_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (308, 0, 81, 1037, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Distracting Jarven: Guarded Thunder Ale Barrel - Despawn'); + +-- The Scarab Gong +UPDATE `gameobject_template` SET `type`=5, `data1`=1, `script_name`='' WHERE `entry`=180718; +UPDATE `gameobject_questrelation` SET `id`=180717 WHERE `quest`=8743; +UPDATE `gameobject_involvedrelation` SET `id`=180717 WHERE `quest`=8743; +REPLACE INTO `gameobject_template` (`entry`, `type`, `displayId`, `name`, `faction`, `flags`, `size`, `data0`, `data1`, `data2`, `data3`, `data4`, `data5`, `data6`, `data7`, `data8`, `data9`, `data10`, `data11`, `data12`, `data13`, `data14`, `data15`, `data16`, `data17`, `data18`, `data19`, `data20`, `data21`, `data22`, `data23`, `mingold`, `maxgold`, `script_name`) VALUES (180717, 2, 4675, 'The Scarab Gong', 0, 4, 1, 0, 7155, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'go_scarab_gong'); +UPDATE `gameobject` SET `id`=180717 WHERE `id`=180718; + +-- Data for GAMEOBJECT_TYPE_CHEST = 3 +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=3642; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=3704; +UPDATE `gameobject_template` SET `data0`=43, `data9`=0 WHERE `entry`=153471; +UPDATE `gameobject_template` SET `data0`=43, `data9`=0 WHERE `entry`=3659; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=176112; +UPDATE `gameobject_template` SET `data9`=60 WHERE `entry`=176308; +UPDATE `gameobject_template` SET `data0`=43, `data9`=0 WHERE `entry`=3658; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=321; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=2855; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=181085; +UPDATE `gameobject_template` SET `data0`=43, `data9`=0 WHERE `entry`=3695; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=176944; +UPDATE `gameobject_template` SET `data4`=1, `data5`=2 WHERE `entry`=324; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=165739; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=1723; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=19020; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=1765; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=152608; +UPDATE `gameobject_template` SET `data0`=380, `data3`=1, `data4`=2, `data5`=4 WHERE `entry`=181108; +UPDATE `gameobject_template` SET `data0`=43, `data9`=0 WHERE `entry`=3694; +UPDATE `gameobject_template` SET `data0`=93 WHERE `entry`=178184; +UPDATE `gameobject_template` SET `data2`=0, `data3`=1 WHERE `entry`=2708; +UPDATE `gameobject_template` SET `data0`=43, `data9`=0 WHERE `entry`=3707; +UPDATE `gameobject_template` SET `data0`=43, `data9`=0 WHERE `entry`=164958; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=126049; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=123329; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=177726; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=2744; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=2084; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=153453; +UPDATE `gameobject_template` SET `name`='Horde Chest', `data9`=0, `data15`=0 WHERE `entry`=105578; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=179497; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=3689; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=2039; +UPDATE `gameobject_template` SET `data15`=0 WHERE `entry`=131979; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=19018; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=75295; +UPDATE `gameobject_template` SET `data5`=0, `data6`=0 WHERE `entry`=176487; +UPDATE `gameobject_template` SET `data0`=43, `data9`=0 WHERE `entry`=153473; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=179493; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=2849; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=2843; +UPDATE `gameobject_template` SET `data0`=43, `data9`=0 WHERE `entry`=3693; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=2842; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=2852; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=164798; +UPDATE `gameobject_template` SET `data2`=0, `data3`=1 WHERE `entry`=2707; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=3705; +UPDATE `gameobject_template` SET `data2`=0, `data3`=1 WHERE `entry`=2709; +UPDATE `gameobject_template` SET `data0`=43, `data9`=0 WHERE `entry`=3706; +UPDATE `gameobject_template` SET `data2`=0, `data3`=1 WHERE `entry`=2710; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=176248; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=2850; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=2857; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=2883; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=3640; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=3660; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=3661; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=3662; +UPDATE `gameobject_template` SET `data0`=43, `data9`=0 WHERE `entry`=3690; +UPDATE `gameobject_template` SET `data0`=43, `data9`=0 WHERE `entry`=3691; +UPDATE `gameobject_template` SET `data15`=0 WHERE `entry`=3714; +UPDATE `gameobject_template` SET `name`='Alliance Chest', `data9`=0, `data15`=0 WHERE `entry`=3715; +UPDATE `gameobject_template` SET `data0`=43, `data9`=0 WHERE `entry`=3719; +UPDATE `gameobject_template` SET `data8`=0 WHERE `entry`=20920; +UPDATE `gameobject_template` SET `data2`=0, `data3`=1 WHERE `entry`=19284; +UPDATE `gameobject_template` SET `name`='Alliance Chest', `data9`=0, `data15`=0 WHERE `entry`=4096; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=4149; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=164781; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=75293; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=11713; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=11714; +UPDATE `gameobject_template` SET `data0`=43, `data9`=0 WHERE `entry`=153470; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=13359; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=13891; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=165738; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=19017; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=19019; +UPDATE `gameobject_template` SET `data2`=0, `data3`=1 WHERE `entry`=19283; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=19541; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=19542; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=169243; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=103820; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=175965; +UPDATE `gameobject_template` SET `type`=1 WHERE `entry`=179558; +UPDATE `gameobject_template` SET `data9`=0, `data10`=0, `data15`=0 WHERE `entry`=161495; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=173234; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=106318; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=175334; +UPDATE `gameobject_template` SET `data0`=93 WHERE `entry`=102985; +UPDATE `gameobject_template` SET `data15`=0 WHERE `entry`=125477; +UPDATE `gameobject_template` SET `data5`=0, `data6`=0 WHERE `entry`=176486; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=176215; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=28604; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=176213; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=74447; +UPDATE `gameobject_template` SET `name`='Alliance Chest', `data9`=0, `data15`=0 WHERE `entry`=105579; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=157936; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=164779; +UPDATE `gameobject_template` SET `data0`=43, `data9`=0 WHERE `entry`=153472; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=179498; +UPDATE `gameobject_template` SET `data4`=2, `data5`=4 WHERE `entry`=177388; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=74448; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=75296; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=75298; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=75299; +UPDATE `gameobject_template` SET `data14`=0 WHERE `entry`=178195; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=179496; +UPDATE `gameobject_template` SET `data4`=1, `data5`=2 WHERE `entry`=176643; +UPDATE `gameobject_template` SET `data15`=0 WHERE `entry`=105570; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=103821; +UPDATE `gameobject_template` SET `name`='Alliance Chest', `data9`=0, `data15`=0 WHERE `entry`=105581; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=106319; +UPDATE `gameobject_template` SET `name`='Alliance Chest', `data9`=0, `data15`=0 WHERE `entry`=111095; +UPDATE `gameobject_template` SET `data15`=0 WHERE `entry`=175949; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=123333; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=141596; +UPDATE `gameobject_template` SET `data15`=0 WHERE `entry`=113757; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=123331; +UPDATE `gameobject_template` SET `data4`=1, `data5`=2 WHERE `entry`=123848; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=128293; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=179486; +UPDATE `gameobject_template` SET `displayId`=1327, `data9`=0 WHERE `entry`=175964; +UPDATE `gameobject_template` SET `data15`=0 WHERE `entry`=142088; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=142191; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=160836; +UPDATE `gameobject_template` SET `data4`=1, `data5`=2 WHERE `entry`=150082; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=152094; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=153451; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=153454; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=153464; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=153469; +UPDATE `gameobject_template` SET `data9`=0, `data10`=0, `data15`=0 WHERE `entry`=160845; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=164778; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=164780; +UPDATE `gameobject_template` SET `data8`=0, `data10`=0 WHERE `entry`=165554; +UPDATE `gameobject_template` SET `data0`=43, `data14`=0 WHERE `entry`=171938; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=173232; +UPDATE `gameobject_template` SET `data7`=175535, `data9`=60 WHERE `entry`=176304; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=175245; +UPDATE `gameobject_template` SET `data4`=2, `data5`=4 WHERE `entry`=175404; +UPDATE `gameobject_template` SET `data15`=0 WHERE `entry`=175785; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=175802; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=175886; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=177750; +UPDATE `gameobject_template` SET `data15`=0 WHERE `entry`=175950; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=179494; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=176188; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=176224; +UPDATE `gameobject_template` SET `data9`=60 WHERE `entry`=176307; +UPDATE `gameobject_template` SET `data9`=60 WHERE `entry`=176309; +UPDATE `gameobject_template` SET `data5`=0, `data6`=0 WHERE `entry`=176484; +UPDATE `gameobject_template` SET `data5`=0, `data6`=0 WHERE `entry`=176485; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=176582; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=176635; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=179487; +UPDATE `gameobject_template` SET `data15`=0 WHERE `entry`=177241; +UPDATE `gameobject_template` SET `data15`=0 WHERE `entry`=177964; +UPDATE `gameobject_template` SET `data0`=93 WHERE `entry`=178185; +UPDATE `gameobject_template` SET `data0`=93 WHERE `entry`=178186; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=178609; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=179488; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=179490; +UPDATE `gameobject_template` SET `type`=1 WHERE `entry`=179556; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=3703; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=131978; +UPDATE `gameobject_template` SET `data9`=0 WHERE `entry`=17155; +UPDATE `gameobject_template` SET `data9`=0, `data15`=0 WHERE `entry`=75300; +UPDATE `gameobject_template` SET `data15`=0 WHERE `entry`=75297; +UPDATE `gameobject_template` SET `data15`=0 WHERE `entry`=141979; + +-- Joseph Redpath's Monument +DELETE FROM `event_scripts` WHERE `id`=20000; +DELETE FROM `gameobject_scripts` WHERE `id`=45332; +INSERT INTO `gameobject_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (45332, 2, 10, 10936, 3000, 0, 0, 0, 0, 0, 0, 0, 0, 6, 3, 1165, -1719, 57, 2, 0, 'A Strange Historian: Joseph Redpath\'s Monument - Summon Joseph Redpath'); +INSERT INTO `gameobject_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (45332, 4, 0, 4, 0, 0, 0, 10936, 50, 8, 2, 6274, 0, 0, 0, 0, 0, 0, 0, 0, 'A Strange Historian: Joseph Redpath - Whisper Text'); +UPDATE `gameobject_template` SET `data6`=0 WHERE `entry`=176145; + +-- Shadowforge Cache +DELETE FROM `event_scripts` WHERE `id`=7091; +DELETE FROM `gameobject_scripts` WHERE `id`=40694; +INSERT INTO `gameobject_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (40694, 1, 10, 7091, 120000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 24.745, 413.288, -44.823, 3, 0, 'Shadowforge Cache - Summon Shadowforge Ambusher 1'); +INSERT INTO `gameobject_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (40694, 1, 10, 7091, 120000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 22.386, 410.042, -44.606, 2.3, 0, 'Shadowforge Cache - Summon Shadowforge Ambusher 2'); +INSERT INTO `gameobject_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (40694, 1, 10, 7091, 120000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 19.174, 412.888, -44.872, 0.3, 4029, 'Shadowforge Cache - Summon Shadowforge Ambusher 3 (Pre-1.12)'); +INSERT INTO `gameobject_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (40694, 1, 10, 7091, 120000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 20.165, 415.724, -45.221, 5.3, 4029, 'Shadowforge Cache - Summon Shadowforge Ambusher 4 (Pre-1.12)'); +UPDATE `gameobject_template` SET `data6`=0 WHERE `entry`=113757; + +-- Half-Buried Bottle +UPDATE `gameobject_template` SET `data1`=2032, `data9`=0 WHERE `entry`=2560; +UPDATE `gameobject_loot_template` SET `entry`=2032 WHERE `entry`=2560; + +-- Venture Co. Strongbox. This was part of unused quest 2020. +DELETE FROM `gameobject_loot_template` WHERE `entry`=4770; +INSERT INTO `gameobject_loot_template` (`entry`, `item`, `ChanceOrQuestChance`, `groupid`, `mincountOrRef`, `maxcount`, `condition_id`) VALUES (4770, 7389, -100, 0, 1, 1, 0); +UPDATE `gameobject_template` SET `data1`=4770 WHERE `entry`=105176; + +-- Quest Ambushed In The Forest was replaced by Children's Week in patch 1.4. +DELETE FROM `quest_template` WHERE `entry`=172; +INSERT INTO `quest_template` (`entry`, `patch`, `Method`, `ZoneOrSort`, `MinLevel`, `MaxLevel`, `QuestLevel`, `Type`, `RequiredClasses`, `RequiredRaces`, `RequiredSkill`, `RequiredSkillValue`, `RepObjectiveFaction`, `RepObjectiveValue`, `RequiredMinRepFaction`, `RequiredMinRepValue`, `RequiredMaxRepFaction`, `RequiredMaxRepValue`, `SuggestedPlayers`, `LimitTime`, `QuestFlags`, `SpecialFlags`, `PrevQuestId`, `NextQuestId`, `ExclusiveGroup`, `NextQuestInChain`, `SrcItemId`, `SrcItemCount`, `SrcSpell`, `Title`, `Details`, `Objectives`, `OfferRewardText`, `RequestItemsText`, `EndText`, `ObjectiveText1`, `ObjectiveText2`, `ObjectiveText3`, `ObjectiveText4`, `ReqItemId1`, `ReqItemId2`, `ReqItemId3`, `ReqItemId4`, `ReqItemCount1`, `ReqItemCount2`, `ReqItemCount3`, `ReqItemCount4`, `ReqSourceId1`, `ReqSourceId2`, `ReqSourceId3`, `ReqSourceId4`, `ReqSourceCount1`, `ReqSourceCount2`, `ReqSourceCount3`, `ReqSourceCount4`, `ReqCreatureOrGOId1`, `ReqCreatureOrGOId2`, `ReqCreatureOrGOId3`, `ReqCreatureOrGOId4`, `ReqCreatureOrGOCount1`, `ReqCreatureOrGOCount2`, `ReqCreatureOrGOCount3`, `ReqCreatureOrGOCount4`, `ReqSpellCast1`, `ReqSpellCast2`, `ReqSpellCast3`, `ReqSpellCast4`, `RewChoiceItemId1`, `RewChoiceItemId2`, `RewChoiceItemId3`, `RewChoiceItemId4`, `RewChoiceItemId5`, `RewChoiceItemId6`, `RewChoiceItemCount1`, `RewChoiceItemCount2`, `RewChoiceItemCount3`, `RewChoiceItemCount4`, `RewChoiceItemCount5`, `RewChoiceItemCount6`, `RewItemId1`, `RewItemId2`, `RewItemId3`, `RewItemId4`, `RewItemCount1`, `RewItemCount2`, `RewItemCount3`, `RewItemCount4`, `RewRepFaction1`, `RewRepFaction2`, `RewRepFaction3`, `RewRepFaction4`, `RewRepFaction5`, `RewRepValue1`, `RewRepValue2`, `RewRepValue3`, `RewRepValue4`, `RewRepValue5`, `RewXP`, `RewOrReqMoney`, `RewMoneyMaxLevel`, `RewSpell`, `RewSpellCast`, `RewMailTemplateId`, `RewMailDelaySecs`, `RewMailMoney`, `PointMapId`, `PointX`, `PointY`, `PointOpt`, `DetailsEmote1`, `DetailsEmote2`, `DetailsEmote3`, `DetailsEmote4`, `DetailsEmoteDelay1`, `DetailsEmoteDelay2`, `DetailsEmoteDelay3`, `DetailsEmoteDelay4`, `IncompleteEmote`, `CompleteEmote`, `OfferRewardEmote1`, `OfferRewardEmote2`, `OfferRewardEmote3`, `OfferRewardEmote4`, `OfferRewardEmoteDelay1`, `OfferRewardEmoteDelay2`, `OfferRewardEmoteDelay3`, `OfferRewardEmoteDelay4`, `StartScript`, `CompleteScript`) VALUES (172, 0, 2, 10, 26, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Ambushed In The Forest', 'Lord Ebonlocke sent me to Stormwind to represent Darkshire at the recent council of the House of Nobles. I was tasked with requesting military aid in light of the undead infestation which has taken over the forest.\r\n\r\nBut on my way back a band of thieves ambushed me. I was forced to drive my cart to The Rotting Orchard in southern Duskwood.\r\n\r\nBefore the thieves could rob me of my goods, a pack of ferocious Worgen overtook the thugs. Now I need you to retrieve my satchel from the chest in the wagon.', 'Retrieve Ambassador Berrybuck\'s satchel and bring it back to him in Darkshire.', '', NULL, NULL, NULL, NULL, NULL, NULL, 1923, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 0, 0, 0, 0, 100, 0, 0, 0, 0, 2350, 2500, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); +INSERT INTO `quest_template` (`entry`, `patch`, `Method`, `ZoneOrSort`, `MinLevel`, `MaxLevel`, `QuestLevel`, `Type`, `RequiredClasses`, `RequiredRaces`, `RequiredSkill`, `RequiredSkillValue`, `RepObjectiveFaction`, `RepObjectiveValue`, `RequiredMinRepFaction`, `RequiredMinRepValue`, `RequiredMaxRepFaction`, `RequiredMaxRepValue`, `SuggestedPlayers`, `LimitTime`, `QuestFlags`, `SpecialFlags`, `PrevQuestId`, `NextQuestId`, `ExclusiveGroup`, `NextQuestInChain`, `SrcItemId`, `SrcItemCount`, `SrcSpell`, `Title`, `Details`, `Objectives`, `OfferRewardText`, `RequestItemsText`, `EndText`, `ObjectiveText1`, `ObjectiveText2`, `ObjectiveText3`, `ObjectiveText4`, `ReqItemId1`, `ReqItemId2`, `ReqItemId3`, `ReqItemId4`, `ReqItemCount1`, `ReqItemCount2`, `ReqItemCount3`, `ReqItemCount4`, `ReqSourceId1`, `ReqSourceId2`, `ReqSourceId3`, `ReqSourceId4`, `ReqSourceCount1`, `ReqSourceCount2`, `ReqSourceCount3`, `ReqSourceCount4`, `ReqCreatureOrGOId1`, `ReqCreatureOrGOId2`, `ReqCreatureOrGOId3`, `ReqCreatureOrGOId4`, `ReqCreatureOrGOCount1`, `ReqCreatureOrGOCount2`, `ReqCreatureOrGOCount3`, `ReqCreatureOrGOCount4`, `ReqSpellCast1`, `ReqSpellCast2`, `ReqSpellCast3`, `ReqSpellCast4`, `RewChoiceItemId1`, `RewChoiceItemId2`, `RewChoiceItemId3`, `RewChoiceItemId4`, `RewChoiceItemId5`, `RewChoiceItemId6`, `RewChoiceItemCount1`, `RewChoiceItemCount2`, `RewChoiceItemCount3`, `RewChoiceItemCount4`, `RewChoiceItemCount5`, `RewChoiceItemCount6`, `RewItemId1`, `RewItemId2`, `RewItemId3`, `RewItemId4`, `RewItemCount1`, `RewItemCount2`, `RewItemCount3`, `RewItemCount4`, `RewRepFaction1`, `RewRepFaction2`, `RewRepFaction3`, `RewRepFaction4`, `RewRepFaction5`, `RewRepValue1`, `RewRepValue2`, `RewRepValue3`, `RewRepValue4`, `RewRepValue5`, `RewXP`, `RewOrReqMoney`, `RewMoneyMaxLevel`, `RewSpell`, `RewSpellCast`, `RewMailTemplateId`, `RewMailDelaySecs`, `RewMailMoney`, `PointMapId`, `PointX`, `PointY`, `PointOpt`, `DetailsEmote1`, `DetailsEmote2`, `DetailsEmote3`, `DetailsEmote4`, `DetailsEmoteDelay1`, `DetailsEmoteDelay2`, `DetailsEmoteDelay3`, `DetailsEmoteDelay4`, `IncompleteEmote`, `CompleteEmote`, `OfferRewardEmote1`, `OfferRewardEmote2`, `OfferRewardEmote3`, `OfferRewardEmote4`, `OfferRewardEmoteDelay1`, `OfferRewardEmoteDelay2`, `OfferRewardEmoteDelay3`, `OfferRewardEmoteDelay4`, `StartScript`, `CompleteScript`) VALUES (172, 2, 2, -284, 10, 0, 60, 0, 0, 178, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18597, 1, 0, 'Children\'s Week', 'You\'re willing to help us here at the orphanage? Bless you, friend; your aid during Children\'s Week will be invaluable.$B$BTake this whistle. You will only be able to use it for a short amount of time - typically not longer than Children\'s Week itself. When you use it, you will be able to talk with the child you\'ve agreed to look after. Using it again will dismiss the child.$B$BBy all means $N - use the whistle and meet your ward! I\'m sure the child will be most eager to meet you.', 'Use the Orcish Orphan Whistle to talk with the child you will be looking after during Children\'s Week.', 'Zug zug! My name is Grunth, and I guess you\'re looking after me? You\'re an adventurer, like my mom and dad were. My matron says that they died with honor in battle. I\'m happy to meet you.$B$BI hope we\'ll do plenty of things together. I have some things I\'d like to do, and the matron says you\'ll be like a big $gbrother:sister; to me during this week. I\'d like that a whole bunch.', NULL, '', '', '', '', '', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 67, 0, 0, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); +INSERT INTO `creature_questrelation` (`id`, `quest`, `patch_min`, `patch_max`) VALUES (271, 172, 0, 1); +INSERT INTO `creature_involvedrelation` (`id`, `quest`, `patch_min`, `patch_max`) VALUES (271, 172, 0, 1); +DELETE FROM gameobject_loot_template WHERE entry=1697; +INSERT INTO gameobject_loot_template (`entry`, `item`, `ChanceOrQuestChance`, `groupid`, `mincountOrRef`, `maxcount`, `condition_id`) VALUES (1697, 1923, -100, 0, 1, 1, 0); +UPDATE `gameobject_template` SET `data1`=1697 WHERE `entry`=41; + +-- Marshal Haggard's Chest: Summon Forlorn Spirit +DELETE FROM `event_scripts` WHERE `id`=264; +INSERT INTO `event_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (264, 0, 10, 2044, 300000, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, -9552.67, -1431.93, 62.3, 5.03, 0, 'Marshal Haggard\'s Chest: Summon Forlorn Spirit'); +UPDATE `gameobject_template` SET `data6`=264, `script_name`='' WHERE `entry`=1562; + +-- Dusty Spellbooks: Summon Moonrage Darkrunner +DELETE FROM `event_scripts` WHERE `id`=259; +INSERT INTO `event_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (259, 0, 10, 1770, 90000, 1, 10, 0, 0, 0, 1, 8, 1770, 0, 1, 875.38, 1232.43, 52.6, 3.16, 0, 'Dusty Spellbooks: Summon Moonrage Darkrunner'); +DELETE FROM `event_scripts` WHERE `id`=1770; +INSERT INTO `event_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (1770, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 502, 0, 0, 0, 0, 0, 0, 0, 0, 'Moonrage Darkrunner - Say Text'); +UPDATE `gameobject_template` SET `data6`=259, `script_name`='' WHERE `entry`=1571; + +-- Event script ids for Blacksmithing Plans are switched. +UPDATE `event_scripts` SET `id`=905301 WHERE `id`=5301; +UPDATE `event_scripts` SET `id`=5301 WHERE `id`=5300; +UPDATE `event_scripts` SET `id`=5300 WHERE `id`=905301; +UPDATE `gameobject_template` SET `data6`=5301, `data9`=0 WHERE `entry`=176327; +UPDATE `gameobject_template` SET `data6`=5300, `data9`=0 WHERE `entry`=176325; + +-- Document Chest and Pitted Iron Chest share loot id yet have different loot. +INSERT INTO `conditions` (`condition_entry`, `type`, `value1`) VALUES (966, 52, 17201); +INSERT INTO `conditions` (`condition_entry`, `type`, `value1`) VALUES (967, 52, 17199); +INSERT INTO `conditions` (`condition_entry`, `type`, `value1`) VALUES (968, 52, 17200); +INSERT INTO `conditions` (`condition_entry`, `type`, `value1`) VALUES (969, 16, 13949); +DELETE FROM `gameobject_loot_template` WHERE `entry` IN (2775, 190483, 190484); +DELETE FROM `gameobject_template` WHERE `entry` IN (190483, 190484); +UPDATE `gameobject` SET `id`=176344 WHERE `id` IN (190483, 190484); +DELETE FROM `gameobject_loot_template` WHERE `entry`=2774; +INSERT INTO `gameobject_loot_template` (`entry`, `item`, `ChanceOrQuestChance`, `groupid`, `mincountOrRef`, `maxcount`, `condition_id`, `patch_min`, `patch_max`) VALUES (2774, 12765, -100, 0, 1, 1, 966, 0, 10); +INSERT INTO `gameobject_loot_template` (`entry`, `item`, `ChanceOrQuestChance`, `groupid`, `mincountOrRef`, `maxcount`, `condition_id`, `patch_min`, `patch_max`) VALUES (2774, 12766, -100, 0, 1, 1, 967, 0, 10); +INSERT INTO `gameobject_loot_template` (`entry`, `item`, `ChanceOrQuestChance`, `groupid`, `mincountOrRef`, `maxcount`, `condition_id`, `patch_min`, `patch_max`) VALUES (2774, 12768, -100, 0, 1, 1, 968, 0, 10); +INSERT INTO `gameobject_loot_template` (`entry`, `item`, `ChanceOrQuestChance`, `groupid`, `mincountOrRef`, `maxcount`, `condition_id`, `patch_min`, `patch_max`) VALUES (2774, 5359, -100, 0, 1, 1, 969, 0, 10); +UPDATE `gameobject_template` SET `data1`=2774, `data14`=0 WHERE `entry`=176344; + +-- Buccaneer's Strongbox does not contain anything in patch 1.12. +DELETE FROM `gameobject_template` WHERE `entry`=123330; +INSERT INTO `gameobject_template` (`entry`, `patch`, `type`, `displayId`, `name`, `faction`, `flags`, `size`, `data0`, `data1`, `data2`, `data3`, `data4`, `data5`, `data6`, `data7`, `data8`, `data9`, `data10`, `data11`, `data12`, `data13`, `data14`, `data15`, `data16`, `data17`, `data18`, `data19`, `data20`, `data21`, `data22`, `data23`, `mingold`, `maxgold`, `script_name`) VALUES (123330, 0, 3, 10, 'Buccaneer\'s Strongbox', 0, 2, 1, 5, 5426, 30, 1, 0, 0, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ''); +INSERT INTO `gameobject_template` (`entry`, `patch`, `type`, `displayId`, `name`, `faction`, `flags`, `size`, `data0`, `data1`, `data2`, `data3`, `data4`, `data5`, `data6`, `data7`, `data8`, `data9`, `data10`, `data11`, `data12`, `data13`, `data14`, `data15`, `data16`, `data17`, `data18`, `data19`, `data20`, `data21`, `data22`, `data23`, `mingold`, `maxgold`, `script_name`) VALUES (123330, 8, 3, 10, 'Buccaneer\'s Strongbox', 0, 2, 1, 5, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ''); +UPDATE `gameobject_loot_template` SET `patch_max`=7 WHERE `entry`=5426; + +-- Draconic for Dummies objects give the item from gossip, they are not lootable. +INSERT INTO `conditions` (`condition_entry`, `type`, `value1`, `value2`, `value3`, `value4`, `flags`) VALUES (141, 2, 21106, 1, 0, 0, 1); +INSERT INTO `conditions` (`condition_entry`, `type`, `value1`, `value2`, `value3`, `value4`, `flags`) VALUES (142, 2, 21107, 1, 0, 0, 1); +INSERT INTO `conditions` (`condition_entry`, `type`, `value1`, `value2`, `value3`, `value4`, `flags`) VALUES (143, 2, 21109, 1, 0, 0, 1); +INSERT INTO `conditions` (`condition_entry`, `type`, `value1`, `value2`, `value3`, `value4`, `flags`) VALUES (149, -1, 9, 141, 0, 0, 0); -- (Quest ID 8620 Taken AND Player Has Less Than 1 of Item ID 21106 in Inventory/Bank) +INSERT INTO `conditions` (`condition_entry`, `type`, `value1`, `value2`, `value3`, `value4`, `flags`) VALUES (150, -1, 9, 142, 0, 0, 0); -- (Quest ID 8620 Taken AND Player Has Less Than 1 of Item ID 21107 in Inventory/Bank) +INSERT INTO `conditions` (`condition_entry`, `type`, `value1`, `value2`, `value3`, `value4`, `flags`) VALUES (151, -1, 9, 143, 0, 0, 0); -- (Quest ID 8620 Taken AND Player Has Less Than 1 of Item ID 21109 in Inventory/Bank) +INSERT INTO `gossip_menu` (`entry`, `text_id`, `condition_id`) VALUES (6668, 7937, 0); +INSERT INTO `gossip_menu` (`entry`, `text_id`, `condition_id`) VALUES (6669, 7937, 0); +INSERT INTO `gossip_menu` (`entry`, `text_id`, `condition_id`) VALUES (6670, 7937, 0); +INSERT INTO `gossip_menu_option` (`menu_id`, `id`, `option_icon`, `option_text`, `OptionBroadcastTextID`, `option_id`, `npc_option_npcflag`, `action_menu_id`, `action_poi_id`, `action_script_id`, `box_coded`, `box_money`, `box_text`, `BoxBroadcastTextID`, `condition_id`) VALUES (6668, 0, 0, '', 11114, 1, 1, -1, 0, 6668, 0, 0, NULL, 0, 151); +INSERT INTO `gossip_menu_option` (`menu_id`, `id`, `option_icon`, `option_text`, `OptionBroadcastTextID`, `option_id`, `npc_option_npcflag`, `action_menu_id`, `action_poi_id`, `action_script_id`, `box_coded`, `box_money`, `box_text`, `BoxBroadcastTextID`, `condition_id`) VALUES (6669, 0, 0, '', 11114, 1, 1, -1, 0, 6669, 0, 0, NULL, 0, 150); +INSERT INTO `gossip_menu_option` (`menu_id`, `id`, `option_icon`, `option_text`, `OptionBroadcastTextID`, `option_id`, `npc_option_npcflag`, `action_menu_id`, `action_poi_id`, `action_script_id`, `box_coded`, `box_money`, `box_text`, `BoxBroadcastTextID`, `condition_id`) VALUES (6670, 0, 0, '', 11114, 1, 1, -1, 0, 6670, 0, 0, NULL, 0, 149); +DELETE FROM `gossip_scripts` WHERE `id`=6668; +INSERT INTO `gossip_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (6668, 0, 17, 21109, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Give Draconic for Dummies Chap. VII'); +DELETE FROM `gossip_scripts` WHERE `id`=6669; +INSERT INTO `gossip_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (6669, 0, 17, 21107, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Give Draconic for Dummies Chap. V'); +DELETE FROM `gossip_scripts` WHERE `id`=6670; +INSERT INTO `gossip_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (6670, 0, 17, 21106, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Give Draconic for Dummies Chap. IV'); +DELETE FROM `gameobject_loot_template` WHERE `entry` IN (10002, 10001, 10000); +UPDATE `gameobject_template` SET `type`=2, `data0`=0, `data1`=0, `data3`=6669, `data9`=0 WHERE `entry`=180665; +UPDATE `gameobject_template` SET `type`=2, `data0`=0, `data1`=0, `data3`=6670, `data9`=0 WHERE `entry`=180666; +UPDATE `gameobject_template` SET `type`=2, `data0`=0, `data1`=0, `data3`=6668, `data9`=0 WHERE `entry`=180667; + +-- Data for GAMEOBJECT_TYPE_GENERIC = 5 +UPDATE `gameobject_template` SET `name`='Hanging, Door' WHERE `entry`=181021; +-- UPDATE `gameobject_template` SET `type`=1 WHERE `entry`=177746; -- trap has no data, so not sure how it should work + +-- GAMEOBJECT_TYPE_TRAP = 6 +UPDATE `gameobject_template` SET `data1`=0 WHERE `entry`=148837; +UPDATE `gameobject_template` SET `data2`=5 WHERE `entry`=164873; +UPDATE `gameobject_template` SET `data2`=5 WHERE `entry`=2561; +UPDATE `gameobject_template` SET `data2`=5 WHERE `entry`=164639; +UPDATE `gameobject_template` SET `data5`=0 WHERE `entry`=175124; +UPDATE `gameobject_template` SET `data1`=0 WHERE `entry`=177484; +UPDATE `gameobject_template` SET `data2`=5 WHERE `entry`=164638; +UPDATE `gameobject_template` SET `data2`=5 WHERE `entry`=164880; +UPDATE `gameobject_template` SET `data2`=0, `data5`=0 WHERE `entry`=165578; +UPDATE `gameobject_template` SET `data2`=5 WHERE `entry`=164839; +UPDATE `gameobject_template` SET `data2`=5 WHERE `entry`=164879; +-- UPDATE `gameobject_template` SET `data0`=95, `data2`=0 WHERE `entry`=109515; -- Trap for quest Plagued Lands. Doesn't work without radius. +UPDATE `gameobject_template` SET `data2`=10 WHERE `entry`=177764; +UPDATE `gameobject_template` SET `data5`=0 WHERE `entry`=144050; +UPDATE `gameobject_template` SET `data2`=5 WHERE `entry`=164872; +UPDATE `gameobject_template` SET `data2`=5 WHERE `entry`=164874; +UPDATE `gameobject_template` SET `data2`=5 WHERE `entry`=164875; +UPDATE `gameobject_template` SET `data2`=5 WHERE `entry`=164876; +UPDATE `gameobject_template` SET `data2`=5 WHERE `entry`=164877; +UPDATE `gameobject_template` SET `name`='Dawn\'s Gambit Trap', `data3`=18110, `data4`=1, `data8`=1 WHERE `entry`=176110; +UPDATE `gameobject_template` SET `data1`=0 WHERE `entry`=177485; +UPDATE `gameobject_template` SET `type`=8, `data1`=10, `data2`=0, `data3`=0, `data5`=0 WHERE `entry`=177524; + +-- Add missing GO template 175622 spawn by GO Rookery Egg 175124 (guessed data) +INSERT INTO `gameobject_template` (`entry`, `type`, `displayId`, `name`, `size`, `data0`, `data1`, `data2`, `data3`, `data4`, `data5`, `data6`, `data7`, `data8`, `data9`, `data10`, `data11`, `data12`, `data13`, `data14`, `data15`, `data16`, `data17`, `data18`, `data19`, `data20`, `data21`, `data22`, `data23`) VALUES (175622, 6, 477, 'Rookery Egg Spawner', 1, 0, 0, 2, 15745, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); + +-- Onyxia Egg Spawner +INSERT INTO `gameobject_template` (`entry`, `type`, `displayId`, `name`, `faction`, `flags`, `size`, `data0`, `data1`, `data2`, `data3`, `data4`, `data5`, `data6`, `data7`, `data8`, `data9`, `data10`, `data11`, `data12`, `data13`, `data14`, `data15`, `data16`, `data17`, `data18`, `data19`, `data20`, `data21`, `data22`, `data23`, `mingold`, `maxgold`, `script_name`) VALUES (176510, 5, 11686, 'Onyxia Whelp Spawner', 14, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ''); +UPDATE `gameobject_template` SET `data0`=821, `data3`=17647, `data6`=983040, `data7`=10 WHERE `entry`=176511; + +-- Data for GAMEOBJECT_TYPE_CHAIR = 7 +UPDATE `gameobject_template` SET `name`='Bench]' WHERE `entry`=170524; + +-- Data for GAMEOBJECT_TYPE_SPELL_FOCUS = 8 +UPDATE `gameobject_template` SET `data0`=4, `data2`=2061 WHERE `entry`=1911; +-- UPDATE `gameobject_template` SET `data0`=2061 WHERE `entry`=126337; +-- UPDATE `gameobject_template` SET `data0`=2061 WHERE `entry`=126340; +UPDATE `gameobject_template` SET `name`='Doodad_DwarvenBrazier196' WHERE `entry`=175666; +UPDATE `gameobject_template` SET `size`=0.948003 WHERE `entry`=32885; +-- UPDATE `gameobject_template` SET `data0`=2061 WHERE `entry`=126338; +-- UPDATE `gameobject_template` SET `data0`=2061 WHERE `entry`=126339; +-- UPDATE `gameobject_template` SET `data0`=2061 WHERE `entry`=126341; +-- UPDATE `gameobject_template` SET `data0`=2061 WHERE `entry`=126342; +-- UPDATE `gameobject_template` SET `data0`=2061 WHERE `entry`=126345; +UPDATE `gameobject_template` SET `name`='Doodad_DwarvenBrazier195' WHERE `entry`=175667; +UPDATE `gameobject_template` SET `type`=0, `data0`=0, `data1`=0, `data2`=0 WHERE `entry`=177000; +-- UPDATE `gameobject_template` SET `data0`=2061 WHERE `entry`=151951; +UPDATE `gameobject_template` SET `data2`=0 WHERE `entry`=151951; + +-- Data for GAMEOBJECT_TYPE_GOOBER = 10 +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180733; +UPDATE `gameobject_template` SET `type`=6, `data3`=24803, `data4`=0 WHERE `entry`=180502; +UPDATE `gameobject_template` SET `data1`=-1 WHERE `entry`=1770; +UPDATE `gameobject_template` SET `data1`=-1 WHERE `entry`=176159; +UPDATE `gameobject_template` SET `data1`=-1 WHERE `entry`=1722; +UPDATE `gameobject_template` SET `data1`=-1 WHERE `entry`=1721; +UPDATE `gameobject_template` SET `data1`=-1 WHERE `entry`=1761; +UPDATE `gameobject_template` SET `data1`=-1 WHERE `entry`=3644; +UPDATE `gameobject_template` SET `data3`=196608 WHERE `entry`=148998; +UPDATE `gameobject_template` SET `data1`=-1 WHERE `entry`=1768; +UPDATE `gameobject_template` SET `data1`=-1 WHERE `entry`=1769; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180703; +UPDATE `gameobject_template` SET `data1`=-1 WHERE `entry`=3190; +UPDATE `gameobject_template` SET `data1`=-1 WHERE `entry`=2704; +UPDATE `gameobject_template` SET `data1`=-1, `flags`=0 WHERE `entry`=61935; +UPDATE `gameobject_template` SET `data1`=-1, `flags`=0 WHERE `entry`=20352; +UPDATE `gameobject_template` SET `data1`=-1 WHERE `entry`=3189; +UPDATE `gameobject_template` SET `data1`=-1 WHERE `entry`=3192; +UPDATE `gameobject_template` SET `type`=2, `data3`=6799, `data19`=0 WHERE `entry`=180794; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=174621; +UPDATE `gameobject_template` SET `data1`=-1, `flags`=0 WHERE `entry`=4072; +UPDATE `gameobject_template` SET `data1`=-1 WHERE `entry`=20359; +UPDATE `gameobject_template` SET `type`=1, `data1`=93, `data2`=655360, `data3`=178963, `data4`=0, `data6`=0 WHERE `entry`=178965; +UPDATE `gameobject_template` SET `data1`=-1, `flags`=0 WHERE `entry`=61936; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180726; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180741; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180736; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180740; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180737; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180722; +UPDATE `gameobject_template` SET `data1`=-1 WHERE `entry`=176160; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180708; +UPDATE `gameobject_template` SET `type`=6, `data3`=0, `data4`=0, `data5`=0, `data6`=-65536 WHERE `entry`=178559; +UPDATE `gameobject_template` SET `type`=2, `data3`=6540, `data4`=0, `data5`=0 WHERE `entry`=180518; +UPDATE `gameobject_template` SET `data3`=196608 WHERE `entry`=148917; +UPDATE `gameobject_template` SET `data3`=196608 WHERE `entry`=166872; +UPDATE `gameobject_template` SET `data3`=196608, `data5`=0 WHERE `entry`=141832; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180730; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180721; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=164884; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180738; +UPDATE `gameobject_template` SET `data0`=43, `data2`=4083, `data3`=0 WHERE `entry`=171943; +UPDATE `gameobject_template` SET `type`=2, `data3`=6540, `data4`=0, `data5`=0 WHERE `entry`=180456; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=164882; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=173325; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=173326; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=174610; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=174612; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=174614; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=174615; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180704; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=174617; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=174618; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=174620; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=174711; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=174714; +UPDATE `gameobject_template` SET `data0`=43 WHERE `entry`=174715; +UPDATE `gameobject_template` SET `data1`=-1 WHERE `entry`=176161; +UPDATE `gameobject_template` SET `type`=6, `data5`=0, `data10`=0 WHERE `entry`=176211; +UPDATE `gameobject_template` SET `type`=6, `data3`=0 WHERE `entry`=177984; +UPDATE `gameobject_template` SET `data1`=-1 WHERE `entry`=177929; +UPDATE `gameobject_template` SET `type`=6, `data3`=0 WHERE `entry`=177985; +UPDATE `gameobject_template` SET `type`=6, `data1`=60, `data3`=21158, `data4`=0, `data10`=0 WHERE `entry`=178088; +UPDATE `gameobject_template` SET `data1`=-1 WHERE `entry`=178090; +UPDATE `gameobject_template` SET `type`=2, `data3`=6543, `data4`=0, `data5`=0 WHERE `entry`=180466; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180707; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180720; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180723; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180724; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180725; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180727; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180728; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180729; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180731; +UPDATE `gameobject_template` SET `type`=1, `data2`=196608, `data3`=0, `data13`=0, `data16`=0 WHERE `entry`=180739; +UPDATE `gameobject_template` SET `type`=5 WHERE `entry`=180788; +UPDATE `gameobject_template` SET `data3`=196608 WHERE `entry`=180857; + +-- Demon Portal +DELETE FROM `gameobject_scripts` WHERE `id` IN (30899, 32567, 32568, 32570, 32571, 32572, 32661, 32663); +INSERT INTO `gameobject_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES +(30899, 900, 82, 30899, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Demon Portal - Load to Map'), +(30899, 2, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Demon Portal - Delete Self on Use'), +(30899, 0, 10, 11937, 60000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 'Demon Portal - Summon Demon Portal Guardian'), +(32567, 900, 82, 32567, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Demon Portal - Load to Map'), +(32567, 2, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Demon Portal - Delete Self on Use'), +(32567, 0, 10, 11937, 60000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 'Demon Portal - Summon Demon Portal Guardian'), +(32568, 900, 82, 32568, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Demon Portal - Load to Map'), +(32568, 2, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Demon Portal - Delete Self on Use'), +(32568, 0, 10, 11937, 60000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 'Demon Portal - Summon Demon Portal Guardian'), +(32570, 900, 82, 32570, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Demon Portal - Load to Map'), +(32570, 2, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Demon Portal - Delete Self on Use'), +(32570, 0, 10, 11937, 60000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 'Demon Portal - Summon Demon Portal Guardian'), +(32571, 900, 82, 32571, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Demon Portal - Load to Map'), +(32571, 2, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Demon Portal - Delete Self on Use'), +(32571, 0, 10, 11937, 60000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 'Demon Portal - Summon Demon Portal Guardian'), +(32572, 900, 82, 32572, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Demon Portal - Load to Map'), +(32572, 2, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Demon Portal - Delete Self on Use'), +(32572, 0, 10, 11937, 60000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 'Demon Portal - Summon Demon Portal Guardian'), +(32661, 900, 82, 32661, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Demon Portal - Load to Map'), +(32661, 2, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Demon Portal - Delete Self on Use'), +(32661, 0, 10, 11937, 60000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 'Demon Portal - Summon Demon Portal Guardian'), +(32663, 900, 82, 32663, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Demon Portal - Load to Map'), +(32663, 2, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Demon Portal - Delete Self on Use'), +(32663, 0, 10, 11937, 60000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 'Demon Portal - Summon Demon Portal Guardian'); +DELETE FROM `gameobject` WHERE `id`=177400; +INSERT INTO `gameobject` (`guid`, `id`, `map`, `position_x`, `position_y`, `position_z`, `orientation`, `rotation0`, `rotation1`, `rotation2`, `rotation3`, `spawntimesecsmin`, `spawntimesecsmax`, `animprogress`, `state`) VALUES +(30899, 177243, 1, -1944.78, 1844.43, 65.9396, 1.55334, 0, 0, 0.700909, 0.713251, 900, 900, 255, 1), +(32567, 177365, 1, -1922.37, 1808.77, 66.7608, 3.85718, 0, 0, -0.936671, 0.35021, 900, 900, 255, 1), +(32568, 177366, 1, -1985.62, 1944.33, 62.1731, -0.174533, 0, 0, 0.087156, -0.996195, 900, 900, 100, 1), +(32570, 177369, 1, -1928.12, 1757.31, 74.2315, 0.174532, 0, 0, 0.0871553, 0.996195, 900, 900, 255, 1), +(32571, 177397, 1, -1703.56, 1747.92, 60.5614, 4.2237, 0, 0, -0.857167, 0.515038, 900, 900, 255, 1), +(32572, 177398, 1, -1669.82, 1956.21, 61.4355, 6.05629, 0, 0, -0.113203, 0.993572, 900, 900, 255, 1), +(32661, 177399, 1, -1774.85, 1975.78, 61.1707, 0.122173, 0, 0, 0.0610485, 0.998135, 900, 900, 255, 1), +(32663, 177400, 1, -1865.29, 1990.25, 62.8822, 4.64258, 0, 0, -0.731354, 0.681998, 900, 900, 255, 1); +UPDATE `gameobject_template` SET `data5`=0, `data10`=0 WHERE `entry`=177366; +UPDATE `gameobject_template` SET `data5`=0, `data10`=0 WHERE `entry`=177369; +UPDATE `gameobject_template` SET `data5`=0 WHERE `entry`=177400; +UPDATE `gameobject_template` SET `data5`=0, `data10`=0 WHERE `entry`=177397; +UPDATE `gameobject_template` SET `data5`=0, `data10`=0 WHERE `entry`=177243; +UPDATE `gameobject_template` SET `data5`=0, `data10`=0 WHERE `entry`=177365; +UPDATE `gameobject_template` SET `data5`=0, `data10`=0 WHERE `entry`=177398; +UPDATE `gameobject_template` SET `data5`=0, `data10`=0 WHERE `entry`=177399; +UPDATE `gameobject_template` SET `script_name`='' WHERE `entry` IN (177366, 177369, 177400, 177397, 177243, 177365, 177398, 177399); + +-- Sacred Fire of Life (Arikara) +DELETE FROM `event_scripts` WHERE `id`=175944; +DELETE FROM `gameobject_scripts` WHERE `id`=16778; +INSERT INTO `gameobject_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (16778, 5, 10, 10882, 30000, 1, 30, 0, 0, 0, 0, 8, 0, 6, 1, -5002.89, -2103.46, 83.81, 1.365, 0, 'Sacred Fire of Life - Summon Arikara'); +UPDATE `gameobject_template` SET `data2`=0 WHERE `entry`=175944; + +-- Sharpbeak's Cage +DELETE FROM `event_scripts` WHERE `id`=14407001; +DELETE FROM `gameobject_scripts` WHERE `id`=46076; +INSERT INTO `gameobject_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (46076, 0, 77, 0, 0, 0, 0, 92997, 0, 9, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'Sharpbeak - Disable Flying'); +INSERT INTO `gameobject_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (46076, 1, 2, 138, 0, 0, 0, 92997, 0, 9, 2, 0, 0, 0, 0, 0, 0, 0, 0, 8023, 'Sharpbeak\'s Cage - Set Unit Field Bytes 1 (0) (Creature 8023)'); +INSERT INTO `gameobject_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (46076, 2, 60, 3, 0, 0, 1, 92997, 0, 9, 2, 8023, 0, 0, 0, 0, 0, 0, 0, 8023, 'Sharpbeak\'s Cage - On Script - Start Waypoints (Creature 8023)'); +UPDATE `gameobject_template` SET `data2`=0 WHERE `entry`=144070; + +-- Thaurissan Relic +DELETE FROM `event_scripts` WHERE `id`=3361; +INSERT INTO `event_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (3361, 0, 39, 336101, 336102, 0, 0, 0, 0, 0, 1, 50, 50, 0, 0, 0, 0, 0, 0, 0, 'Thaurissan Relic - Start Script'); +DELETE FROM `event_scripts` WHERE `id`=336101; +INSERT INTO `event_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (336101, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 4595, 4594, 4600, 4597, 0, 0, 0, 0, 0, 'Thaurissan Relic - Whisper Text'); +DELETE FROM `event_scripts` WHERE `id`=336102; +INSERT INTO `event_scripts` (`id`, `delay`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES (336102, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 4599, 4594, 4598, 4596, 0, 0, 0, 0, 0, 'Thaurissan Relic - Whisper Text'); +-- UPDATE `gameobject_template` SET `data1`=3702 WHERE `entry`=153556; -- blizzlike quest id is wrong? + + +-- Data for GAMEOBJECT_TYPE_MOTRANSPORT = 15 +UPDATE `gameobject_template` SET `data6`=0 WHERE `entry`=176310; +UPDATE `gameobject_template` SET `name`='TEST Ship', `data5`=0, `data6`=0 WHERE `entry`=20808; +UPDATE `gameobject_template` SET `data6`=0 WHERE `entry`=176231; +UPDATE `gameobject_template` SET `name`='Zeppelin - Grom\'Gol to Undercity', `data6`=0 WHERE `entry`=176495; +UPDATE `gameobject_template` SET `name`='Zeppelin - Orgrimmar to Undercity', `data6`=0 WHERE `entry`=164871; +UPDATE `gameobject_template` SET `data6`=0 WHERE `entry`=176244; +UPDATE `gameobject_template` SET `name`='Zeppelin - Grom\'Gol-Orgrimar', `data6`=0 WHERE `entry`=175080; +UPDATE `gameobject_template` SET `data6`=0 WHERE `entry`=177233; + +-- Data for GAMEOBJECT_TYPE_RITUAL = 18 +-- UPDATE `gameobject_template` SET `data2`=0, `data5`=0, `data7`=0 WHERE `entry`=36727; -- no visual for summoning ritual? + +-- Data for GAMEOBJECT_TYPE_MAILBOX = 19 +UPDATE `gameobject_template` SET `name`='Doodad_PostBoxGnome01' WHERE `entry`=175668; + +-- Data for GAMEOBJECT_TYPE_AUCTIONHOUSE = 20 +UPDATE `gameobject_template` SET `type`=5 WHERE `entry`=176924; + +-- Data for GAMEOBJECT_TYPE_MEETINGSTONE = 23 +UPDATE `gameobject_template` SET `data1`=18 WHERE `entry`=179596; +UPDATE `gameobject_template` SET `name`='Meeting', `data0`=46, `data1`=55 WHERE `entry`=178827; + +-- Data for GAMEOBJECT_TYPE_FISHINGHOLE = 25 +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180656; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180661; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180664; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180902; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180712; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180582; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180751; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180684; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180655; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180657; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180658; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180662; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180663; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180682; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180683; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180685; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180750; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180752; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180753; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180900; +UPDATE `gameobject_template` SET `data4`=0 WHERE `entry`=180901; + +-- Data for GAMEOBJECT_TYPE_CAPTUREPOINT = 29 +UPDATE `gameobject_template` SET `data20`=50 WHERE `entry`=182098; +UPDATE `gameobject_template` SET `data20`=50 WHERE `entry`=182097; +UPDATE `gameobject_template` SET `data20`=50 WHERE `entry`=181899; +UPDATE `gameobject_template` SET `data20`=50 WHERE `entry`=182096; + + +-- End of migration. +END IF; +END?? +delimiter ; +CALL add_migration(); +DROP PROCEDURE IF EXISTS add_migration; diff --git a/src/game/Commands/ObjectCommands.cpp b/src/game/Commands/ObjectCommands.cpp index 5cf9b797a..d52019b22 100644 --- a/src/game/Commands/ObjectCommands.cpp +++ b/src/game/Commands/ObjectCommands.cpp @@ -29,6 +29,7 @@ #include "GridNotifiers.h" #include "GridNotifiersImpl.h" #include "CellImpl.h" +#include bool ChatHandler::HandleGameObjectTargetCommand(char* args) { @@ -173,7 +174,15 @@ bool ChatHandler::HandleGameObjectInfoCommand(char* args) } PSendSysMessage("Entry: %u, GUID: %u\nName: %s\nType: %u, Display Id: %u\nGO State: %u, Loot State: %u", pGameObject->GetEntry(), pGameObject->GetGUIDLow(), pGameObject->GetGOInfo()->name, pGameObject->GetGoType(), pGameObject->GetDisplayId(), pGameObject->GetGoState(), pGameObject->getLootState()); - SendSysMessage(pGameObject->isSpawned() ? "Object is spawned." : "Not spawned."); + if (pGameObject->isSpawned()) + SendSysMessage("Object is spawned."); + else + { + time_t respawnTime = pGameObject->GetRespawnTime(); + std::tm* pTime = std::localtime(&respawnTime); + PSendSysMessage("Not spawned. Respawns in %u seconds (%u:%u:%u).", pGameObject->GetRespawnDelay(), pTime->tm_hour, pTime->tm_min, pTime->tm_sec); + } + return true; } diff --git a/src/game/Conditions.cpp b/src/game/Conditions.cpp index a896ac446..3b6d5fdd1 100644 --- a/src/game/Conditions.cpp +++ b/src/game/Conditions.cpp @@ -100,6 +100,7 @@ uint8 const ConditionTargetsInternal[] = CONDITION_REQ_TARGET_GAMEOBJECT, // 49 CONDITION_REQ_MAP_OR_WORLDOBJECT, // 50 CONDITION_REQ_TARGET_PLAYER, // 51 + CONDITION_REQ_SOURCE_WORLDOBJECT, // 52 }; // Starts from 4th element so that -3 will return first element. @@ -552,6 +553,14 @@ bool inline ConditionEntry::Evaluate(WorldObject const* target, Map const* map, } return false; } + case CONDITION_DB_GUID: + { + if (GameObject const* pGo = source->ToGameObject()) + return pGo->GetDBTableGUIDLow() == m_value1; + else if (Creature const* pCreature = source->ToCreature()) + return pCreature->GetDBTableGUIDLow() == m_value1; + return false; + } } return false; } @@ -713,7 +722,7 @@ bool ConditionEntry::IsValid() { if (!sSpellMgr.IsExistingSpellId(m_value1)) { - sLog.outErrorDb("Aura condition (entry %u, type %u) requires to have non existing spell (Id: %d), skipped", m_entry, m_condition, m_value1); + sLog.outErrorDb("Aura condition (entry %u, type %u) requires to have non-existent spell (Id: %d), skipped", m_entry, m_condition, m_value1); return false; } else @@ -724,7 +733,7 @@ bool ConditionEntry::IsValid() } if (m_value2 >= MAX_EFFECT_INDEX) { - sLog.outErrorDb("Aura condition (entry %u, type %u) requires to have non existing effect index (%u) (must be 0..%u), skipped", m_entry, m_condition, m_value2, MAX_EFFECT_INDEX - 1); + sLog.outErrorDb("Aura condition (entry %u, type %u) requires to have non-existent effect index (%u) (must be 0..%u), skipped", m_entry, m_condition, m_value2, MAX_EFFECT_INDEX - 1); return false; } break; @@ -737,7 +746,7 @@ bool ConditionEntry::IsValid() { if (!sObjectMgr.IsExistingItemId(m_value1)) { - sLog.outErrorDb("Item condition (entry %u, type %u) requires to have non existing item (%u), skipped", m_entry, m_condition, m_value1); + sLog.outErrorDb("Item condition (entry %u, type %u) requires to have non-existent item (%u), skipped", m_entry, m_condition, m_value1); return false; } else @@ -761,7 +770,7 @@ bool ConditionEntry::IsValid() { if (!sObjectMgr.IsExistingItemId(m_value1)) { - sLog.outErrorDb("ItemEquipped condition (entry %u, type %u) requires to have non existing item (%u) equipped, skipped", m_entry, m_condition, m_value1); + sLog.outErrorDb("ItemEquipped condition (entry %u, type %u) requires to have non-existent item (%u) equipped, skipped", m_entry, m_condition, m_value1); return false; } else @@ -777,7 +786,7 @@ bool ConditionEntry::IsValid() const auto *areaEntry = AreaEntry::GetById(m_value1); if (!areaEntry) { - sLog.outErrorDb("Zone condition (entry %u, type %u) requires to be in non existing area (%u), skipped", m_entry, m_condition, m_value1); + sLog.outErrorDb("Zone condition (entry %u, type %u) requires to be in non-existent area (%u), skipped", m_entry, m_condition, m_value1); return false; } break; @@ -788,7 +797,7 @@ bool ConditionEntry::IsValid() FactionEntry const* factionEntry = sObjectMgr.GetFactionEntry(m_value1); if (!factionEntry) { - sLog.outErrorDb("Reputation condition (entry %u, type %u) requires to have reputation non existing faction (%u), skipped", m_entry, m_condition, m_value1); + sLog.outErrorDb("Reputation condition (entry %u, type %u) requires to have reputation non-existent faction (%u), skipped", m_entry, m_condition, m_value1); return false; } @@ -814,7 +823,7 @@ bool ConditionEntry::IsValid() SkillLineEntry const* pSkill = sSkillLineStore.LookupEntry(m_value1); if (!pSkill) { - sLog.outErrorDb("Skill condition (entry %u, type %u) specifies non-existing skill (%u), skipped", m_entry, m_condition, m_value1); + sLog.outErrorDb("Skill condition (entry %u, type %u) specifies non-existent skill (%u), skipped", m_entry, m_condition, m_value1); return false; } if (m_value2 < 1 || m_value2 > sWorld.GetConfigMaxSkillValue()) @@ -834,7 +843,7 @@ bool ConditionEntry::IsValid() { if (!sObjectMgr.IsExistingQuestId(m_value1)) { - sLog.outErrorDb("Quest condition (entry %u, type %u) specifies non-existing quest (%u), skipped", m_entry, m_condition, m_value1); + sLog.outErrorDb("Quest condition (entry %u, type %u) specifies non-existent quest (%u), skipped", m_entry, m_condition, m_value1); return false; } else @@ -908,7 +917,7 @@ bool ConditionEntry::IsValid() { if (!sSpellMgr.IsExistingSpellId(m_value1)) { - sLog.outErrorDb("Spell condition (entry %u, type %u) requires to have non existing spell (Id: %d), skipped", m_entry, m_condition, m_value1); + sLog.outErrorDb("Spell condition (entry %u, type %u) requires to have non-existent spell (Id: %d), skipped", m_entry, m_condition, m_value1); return false; } else @@ -932,7 +941,7 @@ bool ConditionEntry::IsValid() { if (!sObjectMgr.IsExistingCreatureId(m_value1)) { - sLog.outErrorDb("Nearby creature condition (entry %u, type %u) specifies non-existing creature (%u), skipped", m_entry, m_condition, m_value1); + sLog.outErrorDb("Nearby creature condition (entry %u, type %u) specifies non-existent creature (%u), skipped", m_entry, m_condition, m_value1); return false; } else @@ -952,7 +961,7 @@ bool ConditionEntry::IsValid() { if (!sObjectMgr.IsExistingGameObjectId(m_value1)) { - sLog.outErrorDb("Nearby gameobject condition (entry %u, type %u) specifies non-existing gameobject (%u), skipped", m_entry, m_condition, m_value1); + sLog.outErrorDb("Nearby gameobject condition (entry %u, type %u) specifies non-existent gameobject (%u), skipped", m_entry, m_condition, m_value1); return false; } else @@ -1004,11 +1013,11 @@ bool ConditionEntry::IsValid() } case CONDITION_SOURCE_ENTRY: { - if (!sObjectMgr.GetCreatureTemplate(m_value1)) + if (!sObjectMgr.GetCreatureTemplate(m_value1) && !sObjectMgr.GetGameObjectInfo(m_value1)) { - if (!sObjectMgr.IsExistingCreatureId(m_value1)) + if (!sObjectMgr.IsExistingCreatureId(m_value1) && !sObjectMgr.IsExistingGameObjectId(m_value1)) { - sLog.outErrorDb("NPC Entry condition (entry %u, type %u) has invalid nonexistent NPC entry %u", m_entry, m_condition, m_value2); + sLog.outErrorDb("NPC Entry condition (entry %u, type %u) has invalid non-existent NPC entry %u", m_entry, m_condition, m_value2); return false; } else @@ -1089,7 +1098,7 @@ bool ConditionEntry::IsValid() { if (!sObjectMgr.IsExistingGameObjectGuid(m_value1)) { - sLog.outErrorDb("CONDITION_OBJECT_FIT_CONDITION (entry %u, type %u) uses nonexistent GameObject guid %u", m_entry, m_condition, m_value1); + sLog.outErrorDb("CONDITION_OBJECT_FIT_CONDITION (entry %u, type %u) uses non-existent GameObject guid %u", m_entry, m_condition, m_value1); return false; } ConditionEntry const* condition1 = sConditionStorage.LookupEntry(m_value2); @@ -1120,6 +1129,14 @@ bool ConditionEntry::IsValid() m_value1 = GetIndexOfUpdateFieldForCurrentBuild(m_value1); break; } + case CONDITION_DB_GUID: + { + if (!sObjectMgr.IsExistingCreatureGuid(m_value1) && !sObjectMgr.IsExistingGameObjectGuid(m_value1)) + { + sLog.outErrorDb("CONDITION_DB_GUID (entry %u, type %d) uses non-existent guid %u in value1, skipped", m_entry, m_condition, m_value1); + return false; + } + } case CONDITION_NONE: case CONDITION_INSTANCE_SCRIPT: case CONDITION_ACTIVE_HOLIDAY: diff --git a/src/game/Conditions.h b/src/game/Conditions.h index e5d29657d..a431e1507 100644 --- a/src/game/Conditions.h +++ b/src/game/Conditions.h @@ -216,6 +216,9 @@ enum ConditionType // Requirement: Player Target // Value1: rank // Value2: 0, 1 or 2 (0: equal to, 1: equal or higher than, 2: equal or less than) + CONDITION_DB_GUID = 52, // Checks source object's db guid. + // Requirement: WorldObject Source + // Value1: guid }; enum ConditionFlags diff --git a/src/game/Maps/Map.h b/src/game/Maps/Map.h index fe029f7a9..ad1f3549d 100644 --- a/src/game/Maps/Map.h +++ b/src/game/Maps/Map.h @@ -905,6 +905,8 @@ class MANGOS_DLL_SPEC Map : public GridRefManager, public MaNGOS::Obj bool ScriptCommand_JoinCreatureGroup(ScriptInfo const& script, WorldObject* source, WorldObject* target); bool ScriptCommand_LeaveCreatureGroup(ScriptInfo const& script, WorldObject* source, WorldObject* target); bool ScriptCommand_SetGoState(ScriptInfo const& script, WorldObject* source, WorldObject* target); + bool ScriptCommand_DespawnGameObject(ScriptInfo const& script, WorldObject* source, WorldObject* target); + bool ScriptCommand_LoadGameObject(ScriptInfo const& script, WorldObject* source, WorldObject* target); // Add any new script command functions to the array. ScriptCommandFunction const m_ScriptCommands[SCRIPT_COMMAND_MAX] = @@ -990,6 +992,8 @@ class MANGOS_DLL_SPEC Map : public GridRefManager, public MaNGOS::Obj &Map::ScriptCommand_JoinCreatureGroup, // 78 &Map::ScriptCommand_LeaveCreatureGroup, // 79 &Map::ScriptCommand_SetGoState, // 80 + &Map::ScriptCommand_DespawnGameObject, // 81 + &Map::ScriptCommand_LoadGameObject, // 82 }; public: diff --git a/src/game/Maps/ScriptCommands.cpp b/src/game/Maps/ScriptCommands.cpp index 2b4dc038d..e693ba9dc 100644 --- a/src/game/Maps/ScriptCommands.cpp +++ b/src/game/Maps/ScriptCommands.cpp @@ -330,9 +330,7 @@ bool Map::ScriptCommand_RespawnGameObject(ScriptInfo const& script, WorldObject* int32 time_to_despawn = script.respawnGo.despawnDelay < 5 ? 5 : script.respawnGo.despawnDelay; if (pGo->GetGoType() == GAMEOBJECT_TYPE_FISHINGNODE || - pGo->GetGoType() == GAMEOBJECT_TYPE_DOOR || - pGo->GetGoType() == GAMEOBJECT_TYPE_BUTTON || - pGo->GetGoType() == GAMEOBJECT_TYPE_TRAP) + pGo->GetGoType() == GAMEOBJECT_TYPE_DOOR) { sLog.outError("SCRIPT_COMMAND_RESPAWN_GAMEOBJECT (script id %u) can not be used with gameobject of type %u (guid: %u).", script.id, uint32(pGo->GetGoType()), script.respawnGo.goGuid); return ShouldAbortScript(script); @@ -412,21 +410,18 @@ bool Map::ScriptCommand_SummonCreature(ScriptInfo const& script, WorldObject* so break; default: { - if (Creature* pCreatureSummoner = pSummoner->ToCreature()) + if (Unit* pAttackTarget = ToUnit(GetTargetByType(pSummoner, ToUnit(target), script.summonCreature.attackTarget))) { - if (Unit* pAttackTarget = ToUnit(GetTargetByType(pCreatureSummoner, ToUnit(target), script.summonCreature.attackTarget))) + if (pCreature->AI()) { - if (pCreature->AI()) - { - // Hack: there is a visual bug where the melee animation - // does not play for summoned units if they enter combat - // immediately and their target is within melee range. - // Sending the packet a second time fixes the animation. - if (pCreature->AI()->IsMeleeAttackEnabled()) - pCreature->SendMeleeAttackStart(pAttackTarget); + // Hack: there is a visual bug where the melee animation + // does not play for summoned units if they enter combat + // immediately and their target is within melee range. + // Sending the packet a second time fixes the animation. + if (pCreature->AI()->IsMeleeAttackEnabled()) + pCreature->SendMeleeAttackStart(pAttackTarget); - pCreature->AI()->AttackStart(pAttackTarget); - } + pCreature->AI()->AttackStart(pAttackTarget); } } } @@ -2208,3 +2203,61 @@ bool Map::ScriptCommand_SetGoState(ScriptInfo const& script, WorldObject* source pGo->SetGoState(GOState(script.setGoState.state)); return false; } + +// SCRIPT_COMMAND_DESPAWN_GAMEOBJECT (81) +bool Map::ScriptCommand_DespawnGameObject(ScriptInfo const& script, WorldObject* source, WorldObject* target) +{ + GameObject* pGo = nullptr; + uint32 guidlow = script.despawnGo.goGuid; + + if (guidlow) + { + GameObjectData const* goData = sObjectMgr.GetGOData(guidlow); + if (!goData) + return ShouldAbortScript(script); // checked at load + + pGo = GetGameObject(ObjectGuid(HIGHGUID_GAMEOBJECT, goData->id, guidlow)); + } + else if (target && target->GetTypeId() == TYPEID_GAMEOBJECT) + pGo = static_cast(target); + else if (source && source->GetTypeId() == TYPEID_GAMEOBJECT) + pGo = static_cast(source); + + if (!pGo) + { + sLog.outError("SCRIPT_COMMAND_DESPAWN_GAMEOBJECT (script id %u) failed for gameobject(guid: %u).", script.id, guidlow); + return ShouldAbortScript(script); + } + + if (!pGo->isSpawned()) + return ShouldAbortScript(script); // gameobject already despawned + + pGo->SetLootState(GO_JUST_DEACTIVATED); + if (script.despawnGo.respawnDelay) + pGo->SetRespawnDelay(script.despawnGo.respawnDelay); // respawn object in ? seconds + + return false; +} + +// SCRIPT_COMMAND_LOAD_GAMEOBJECT (82) +bool Map::ScriptCommand_LoadGameObject(ScriptInfo const& script, WorldObject* source, WorldObject* target) +{ + GameObjectData const* pGameObjectData = sObjectMgr.GetGOData(script.loadGo.goGuid); + + if (GetId() != pGameObjectData->position.mapId) + { + sLog.outError("SCRIPT_COMMAND_LOAD_GAMEOBJECT (script id %u) tried to spawn guid %u on wrong map %u.", script.id, script.loadGo.goGuid, GetId()); + return ShouldAbortScript(script); + } + + if (GetGameObject(ObjectGuid(HIGHGUID_GAMEOBJECT, pGameObjectData->id, script.loadGo.goGuid))) + return ShouldAbortScript(script); // already spawned + + GameObject* pGameobject = new GameObject; + if (!pGameobject->LoadFromDB(script.loadGo.goGuid, this)) + delete pGameobject; + else + Add(pGameobject); + + return false; +} \ No newline at end of file diff --git a/src/game/ObjectMgr.cpp b/src/game/ObjectMgr.cpp index 3f80c05c4..f3193080d 100644 --- a/src/game/ObjectMgr.cpp +++ b/src/game/ObjectMgr.cpp @@ -8471,7 +8471,7 @@ void ObjectMgr::LoadGameObjectForQuests() } case GAMEOBJECT_TYPE_GOOBER: { - if (itr->goober.questId) //quests objects + if (itr->goober.questId > 0) //quests objects { m_GameObjectForQuestSet.insert(itr->id); count++; diff --git a/src/game/Objects/GameObject.cpp b/src/game/Objects/GameObject.cpp index 95383317e..d16b7c144 100644 --- a/src/game/Objects/GameObject.cpp +++ b/src/game/Objects/GameObject.cpp @@ -1160,7 +1160,7 @@ bool GameObject::ActivateToQuest(Player* pTarget) const } case GAMEOBJECT_TYPE_GOOBER: { - if (pTarget->GetQuestStatus(GetGOInfo()->goober.questId) == QUEST_STATUS_INCOMPLETE) + if (GetGOInfo()->goober.questId == -1 || pTarget->GetQuestStatus(GetGOInfo()->goober.questId) == QUEST_STATUS_INCOMPLETE) return true; break; } @@ -1390,6 +1390,7 @@ void GameObject::Use(Unit* user) if (user->GetTypeId() != TYPEID_PLAYER) return; + GetMap()->ScriptsStart(sGameObjectScripts, GetGUIDLow(), user, this); TriggerLinkedGameObject(user); return; } @@ -1519,7 +1520,7 @@ void GameObject::Use(Unit* user) } // possible quest objective for active quests - if (info->goober.questId && sObjectMgr.GetQuestTemplate(info->goober.questId)) + if (info->goober.questId > 0 && sObjectMgr.GetQuestTemplate(info->goober.questId)) { //Quest require to be active for GO using if (player->GetQuestStatus(info->goober.questId) != QUEST_STATUS_INCOMPLETE) @@ -1533,9 +1534,11 @@ void GameObject::Use(Unit* user) if (!sScriptMgr.OnProcessEvent(info->goober.eventId, player, this, true)) GetMap()->ScriptsStart(sEventScripts, info->goober.eventId, player, this); } + else + GetMap()->ScriptsStart(sGameObjectScripts, GetGUIDLow(), user, this); // possible quest objective for active quests - if (info->goober.questId && sObjectMgr.GetQuestTemplate(info->goober.questId)) + if (info->goober.questId > 0 && sObjectMgr.GetQuestTemplate(info->goober.questId)) { //Quest require to be active for GO using if (player->GetQuestStatus(info->goober.questId) != QUEST_STATUS_INCOMPLETE) diff --git a/src/game/Objects/GameObject.h b/src/game/Objects/GameObject.h index 7ea6ef0fa..e1e4c17fe 100644 --- a/src/game/Objects/GameObject.h +++ b/src/game/Objects/GameObject.h @@ -126,7 +126,7 @@ struct GameObjectInfo uint32 spellId; //3 uint32 charges; //4 need respawn (if > 0) uint32 cooldown; //5 time in secs - uint32 autoCloseTime; //6 + int32 autoCloseTime; //6 uint32 startDelay; //7 uint32 serverOnly; //8 uint32 stealthed; //9 @@ -164,12 +164,12 @@ struct GameObjectInfo struct { uint32 lockId; //0 -> Lock.dbc - uint32 questId; //1 + int32 questId; //1 uint32 eventId; //2 uint32 autoCloseTime; //3 uint32 customAnim; //4 uint32 consumable; //5 - uint32 cooldown; //6 + int32 cooldown; //6 uint32 pageId; //7 uint32 language; //8 uint32 pageMaterial; //9 diff --git a/src/game/Objects/Object.cpp b/src/game/Objects/Object.cpp index 720901194..638cf09de 100644 --- a/src/game/Objects/Object.cpp +++ b/src/game/Objects/Object.cpp @@ -4994,7 +4994,7 @@ void WorldObject::RemoveAllDynObjects() } } -void WorldObject::CastSpell(Unit* Victim, uint32 spellId, bool triggered, Item* castItem, Aura* triggeredByAura, ObjectGuid originalCaster, SpellEntry const* triggeredBy, SpellEntry const* triggeredByParent) +void WorldObject::CastSpell(Unit* pVictim, uint32 spellId, bool triggered, Item* castItem, Aura* triggeredByAura, ObjectGuid originalCaster, SpellEntry const* triggeredBy, SpellEntry const* triggeredByParent) { SpellEntry const* spellInfo = sSpellMgr.GetSpellEntry(spellId); @@ -5007,10 +5007,10 @@ void WorldObject::CastSpell(Unit* Victim, uint32 spellId, bool triggered, Item* return; } - CastSpell(Victim, spellInfo, triggered, castItem, triggeredByAura, originalCaster, triggeredBy, triggeredByParent); + CastSpell(pVictim, spellInfo, triggered, castItem, triggeredByAura, originalCaster, triggeredBy, triggeredByParent); } -void WorldObject::CastSpell(Unit* Victim, SpellEntry const* spellInfo, bool triggered, Item* castItem, Aura* triggeredByAura, ObjectGuid originalCaster, SpellEntry const* triggeredBy, SpellEntry const* triggeredByParent) +void WorldObject::CastSpell(Unit* pVictim, SpellEntry const* spellInfo, bool triggered, Item* castItem, Aura* triggeredByAura, ObjectGuid originalCaster, SpellEntry const* triggeredBy, SpellEntry const* triggeredByParent) { if (!spellInfo) { @@ -5046,9 +5046,9 @@ void WorldObject::CastSpell(Unit* Victim, SpellEntry const* spellInfo, bool trig // Don't set unit target on destination target based spells, otherwise the spell will cancel // as soon as the target dies or leaves the area of the effect if (spellInfo->Targets & TARGET_FLAG_DEST_LOCATION) - targets.setDestination(Victim->GetPositionX(), Victim->GetPositionY(), Victim->GetPositionZ()); + targets.setDestination(pVictim->GetPositionX(), pVictim->GetPositionY(), pVictim->GetPositionZ()); else - targets.setUnitTarget(Victim); + targets.setUnitTarget(pVictim); if (spellInfo->Targets & TARGET_FLAG_SOURCE_LOCATION) if (WorldObject* caster = spell->GetCastingObject()) @@ -5058,7 +5058,7 @@ void WorldObject::CastSpell(Unit* Victim, SpellEntry const* spellInfo, bool trig spell->prepare(std::move(targets), triggeredByAura); } -void WorldObject::CastCustomSpell(Unit* Victim, uint32 spellId, int32 const* bp0, int32 const* bp1, int32 const* bp2, bool triggered, Item* castItem, Aura* triggeredByAura, ObjectGuid originalCaster, SpellEntry const* triggeredBy) +void WorldObject::CastCustomSpell(Unit* pVictim, uint32 spellId, int32 const* bp0, int32 const* bp1, int32 const* bp2, bool triggered, Item* castItem, Aura* triggeredByAura, ObjectGuid originalCaster, SpellEntry const* triggeredBy) { SpellEntry const* spellInfo = sSpellMgr.GetSpellEntry(spellId); @@ -5071,10 +5071,10 @@ void WorldObject::CastCustomSpell(Unit* Victim, uint32 spellId, int32 const* bp0 return; } - CastCustomSpell(Victim, spellInfo, bp0, bp1, bp2, triggered, castItem, triggeredByAura, originalCaster, triggeredBy); + CastCustomSpell(pVictim, spellInfo, bp0, bp1, bp2, triggered, castItem, triggeredByAura, originalCaster, triggeredBy); } -void WorldObject::CastCustomSpell(Unit* Victim, SpellEntry const* spellInfo, int32 const* bp0, int32 const* bp1, int32 const* bp2, bool triggered, Item* castItem, Aura* triggeredByAura, ObjectGuid originalCaster, SpellEntry const* triggeredBy) +void WorldObject::CastCustomSpell(Unit* pVictim, SpellEntry const* spellInfo, int32 const* bp0, int32 const* bp1, int32 const* bp2, bool triggered, Item* castItem, Aura* triggeredByAura, ObjectGuid originalCaster, SpellEntry const* triggeredBy) { if (!spellInfo) { @@ -5115,7 +5115,7 @@ void WorldObject::CastCustomSpell(Unit* Victim, SpellEntry const* spellInfo, int spell->m_currentBasePoints[EFFECT_INDEX_2] = *bp2; SpellCastTargets targets; - targets.setUnitTarget(Victim); + targets.setUnitTarget(pVictim); spell->SetCastItem(castItem); spell->prepare(std::move(targets), triggeredByAura); } diff --git a/src/game/ScriptMgr.cpp b/src/game/ScriptMgr.cpp index 84b3f4a40..941f86b22 100644 --- a/src/game/ScriptMgr.cpp +++ b/src/game/ScriptMgr.cpp @@ -405,9 +405,7 @@ void ScriptMgr::LoadScripts(ScriptMapMap& scripts, char const* tablename) if (info->type == GAMEOBJECT_TYPE_FISHINGNODE || info->type == GAMEOBJECT_TYPE_FISHINGHOLE || - info->type == GAMEOBJECT_TYPE_DOOR || - info->type == GAMEOBJECT_TYPE_BUTTON || - info->type == GAMEOBJECT_TYPE_TRAP) + info->type == GAMEOBJECT_TYPE_DOOR) { sLog.outErrorDb("Table `%s` have gameobject type (%u) unsupported by command SCRIPT_COMMAND_RESPAWN_GAMEOBJECT for script id %u", tablename, info->id, tmp.id); continue; @@ -1192,6 +1190,45 @@ void ScriptMgr::LoadScripts(ScriptMapMap& scripts, char const* tablename) } break; } + case SCRIPT_COMMAND_DESPAWN_GAMEOBJECT: + { + if (tmp.GetGOGuid()) // cant check when using buddy\source\target instead + { + GameObjectData const* data = sObjectMgr.GetGOData(tmp.GetGOGuid()); + if (!data) + { + if (!sObjectMgr.IsExistingGameObjectGuid(tmp.GetGOGuid())) + { + sLog.outErrorDb("Table `%s` has invalid gameobject (GUID: %u) in SCRIPT_COMMAND_DESPAWN_GAMEOBJECT for script id %u", tablename, tmp.GetGOGuid(), tmp.id); + continue; + } + else + { + DisableScriptAction(tmp); + break; + } + } + } + break; + } + case SCRIPT_COMMAND_LOAD_GAMEOBJECT: + { + GameObjectData const* data = sObjectMgr.GetGOData(tmp.GetGOGuid()); + if (!data) + { + if (!sObjectMgr.IsExistingGameObjectGuid(tmp.GetGOGuid())) + { + sLog.outErrorDb("Table `%s` has invalid gameobject (GUID: %u) in SCRIPT_COMMAND_LOAD_GAMEOBJECT for script id %u", tablename, tmp.GetGOGuid(), tmp.id); + continue; + } + else + { + DisableScriptAction(tmp); + break; + } + } + break; + } } if (scripts.find(tmp.id) == scripts.end()) diff --git a/src/game/ScriptMgr.h b/src/game/ScriptMgr.h index ff87c2f9d..24fc77f3c 100644 --- a/src/game/ScriptMgr.h +++ b/src/game/ScriptMgr.h @@ -329,6 +329,11 @@ enum eScriptCommand SCRIPT_COMMAND_LEAVE_CREATURE_GROUP = 79, // source = Creature SCRIPT_COMMAND_SET_GO_STATE = 80, // source = GameObject // datalong = GOState + SCRIPT_COMMAND_DESPAWN_GAMEOBJECT = 81, // source = GameObject (from datalong, provided source or target) + // datalong = db_guid + // datalong2 = despawn_delay + SCRIPT_COMMAND_LOAD_GAMEOBJECT = 82, // source = Map + // datalong = db_guid SCRIPT_COMMAND_MAX, SCRIPT_COMMAND_DISABLED = 9999 // Script action was disabled during loading. @@ -997,6 +1002,17 @@ struct ScriptInfo uint32 state; // datalong } setGoState; + struct // SCRIPT_COMMAND_DESPAWN_GAMEOBJECT (81) + { + uint32 goGuid; // datalong + uint32 respawnDelay; // datalong2 + } despawnGo; + + struct // SCRIPT_COMMAND_LOAD_GAMEOBJECT (82) + { + uint32 goGuid; // datalong + } loadGo; + struct { uint32 data[9]; @@ -1023,6 +1039,8 @@ struct ScriptInfo switch(command) { case SCRIPT_COMMAND_RESPAWN_GAMEOBJECT: return respawnGo.goGuid; + case SCRIPT_COMMAND_DESPAWN_GAMEOBJECT: return despawnGo.goGuid; + case SCRIPT_COMMAND_LOAD_GAMEOBJECT: return loadGo.goGuid; case SCRIPT_COMMAND_OPEN_DOOR: return openDoor.goGuid; case SCRIPT_COMMAND_CLOSE_DOOR: return closeDoor.goGuid; default: return 0; diff --git a/src/game/Spells/Spell.cpp b/src/game/Spells/Spell.cpp index 8e4702b60..35317befd 100644 --- a/src/game/Spells/Spell.cpp +++ b/src/game/Spells/Spell.cpp @@ -3342,7 +3342,6 @@ SpellCastResult Spell::prepare(SpellCastTargets targets, Aura* triggeredByAura, SpellCastResult Spell::prepare(Aura* triggeredByAura, uint32 chance) { - m_spellState = SPELL_STATE_PREPARING; m_delayed = m_spellInfo->speed > 0.0f || (m_spellInfo->IsCCSpell() && m_targets.getUnitTarget() && m_targets.getUnitTarget()->IsPlayer()); diff --git a/src/scripts/eastern_kingdoms/elwynn_forest/elwynn_forest.cpp b/src/scripts/eastern_kingdoms/elwynn_forest/elwynn_forest.cpp index fb7263d59..d3fd6efea 100644 --- a/src/scripts/eastern_kingdoms/elwynn_forest/elwynn_forest.cpp +++ b/src/scripts/eastern_kingdoms/elwynn_forest/elwynn_forest.cpp @@ -82,69 +82,7 @@ CreatureAI* GetAI_npc_henze_faulk(Creature* pCreature) { return new npc_henze_faulkAI(pCreature); } -enum -{ -//guid 12609 entry 177673 Serpant statue - NPC_SPIRIT = 2044, - QUEST_STALVANS_LEGEND = 75 -}; -struct go_marshal_haggards_chestAI: public GameObjectAI -{ - go_marshal_haggards_chestAI(GameObject* pGo) : GameObjectAI(pGo) - { - timer = 0; - state = 0; - guid_spirit = 0; - } - uint64 guid_spirit; - uint32 timer; - bool state;//0 = usual, can launch. //1 = in use, cannot launch - - void UpdateAI(uint32 const uiDiff) override - { - if (state) - { - if (timer < uiDiff) - state = 0; - else - timer -= uiDiff; - } - } - bool CheckCanStartEvent() - { - return !state && !me->GetMap()->GetCreature(guid_spirit); - } - - void SetInUse(Creature* spirit) - { - guid_spirit = spirit->GetGUID(); - state = 1; - timer = 60000; - } -}; -GameObjectAI* GetAIgo_marshal_haggards_chest(GameObject *pGo) -{ - return new go_marshal_haggards_chestAI(pGo); -} -bool GOHello_go_marshal_haggards_chest(Player* pPlayer, GameObject* pGo) -{ - if (go_marshal_haggards_chestAI* pMarkAI = dynamic_cast(pGo->AI())) - { - if (pMarkAI->CheckCanStartEvent()) - { - if (pPlayer->GetQuestStatus(QUEST_STALVANS_LEGEND) == QUEST_STATUS_INCOMPLETE) - { - if (Creature* spirit = pGo->SummonCreature(NPC_SPIRIT, -9552.67f, -1431.93f, 62.3f, 5.03f, TEMPSUMMON_TIMED_OR_DEAD_DESPAWN, 300000)) - { - pMarkAI->SetInUse(spirit); - spirit->AI()->AttackStart(pPlayer); - } - } - } - } - return true; -} void AddSC_elwynn_forest() { Script* newscript; @@ -153,10 +91,4 @@ void AddSC_elwynn_forest() newscript->Name = "npc_henze_faulk"; newscript->GetAI = &GetAI_npc_henze_faulk; newscript->RegisterSelf(); - - newscript = new Script; - newscript->Name = "go_marshal_haggards_chest"; - newscript->GOGetAI = &GetAIgo_marshal_haggards_chest; - newscript->pGOHello = &GOHello_go_marshal_haggards_chest; - newscript->RegisterSelf(); } diff --git a/src/scripts/eastern_kingdoms/silverpine_forest/silverpine_forest.cpp b/src/scripts/eastern_kingdoms/silverpine_forest/silverpine_forest.cpp index cc07fa040..d576f86b4 100644 --- a/src/scripts/eastern_kingdoms/silverpine_forest/silverpine_forest.cpp +++ b/src/scripts/eastern_kingdoms/silverpine_forest/silverpine_forest.cpp @@ -702,70 +702,6 @@ CreatureAI* GetAI_npc_human_worgen(Creature *_creature) return new npc_human_worgenAI(_creature); } -/* - * Dusty Spellbooks - */ - -enum -{ - NPC_MOONRAGE_DARKRUNNER = 1770, - - QUEST_ARUGAL_FOLLY = 422, -}; - -#define DARKRUNNER_SAY "The Sons of Arugal will rise against all who challenge the power of the Moonrage!" - -struct go_dusty_spellbooksAI : GameObjectAI -{ - explicit go_dusty_spellbooksAI(GameObject* pGo) : GameObjectAI(pGo) - { - m_bJustUsed = false; - m_uiJustUsedTimer = 0; - } - - bool m_bJustUsed; - uint32 m_uiJustUsedTimer; - - bool OnUse(Unit* pCaster) override - { - auto pPlayer = pCaster->ToPlayer(); - - if (!pPlayer) return true; - - if (!(pPlayer->GetQuestStatus(QUEST_ARUGAL_FOLLY) == QUEST_STATUS_INCOMPLETE)) return true; - - if (!m_bJustUsed) - { - if (auto pCreature = me->SummonCreature(NPC_MOONRAGE_DARKRUNNER, 875.38f, 1232.43f, 52.6f, 3.16f, TEMPSUMMON_TIMED_OR_DEAD_DESPAWN, 90000)) - { - pCreature->MonsterSay(DARKRUNNER_SAY); - pCreature->AddThreat(pCaster); - m_bJustUsed = true; - m_uiJustUsedTimer = 1000; - } - } - - return true; - } - - void UpdateAI(uint32 const uiDiff) override - { - if (!m_bJustUsed) return; - - if (m_uiJustUsedTimer < uiDiff) - { - m_bJustUsed = false; - } - else - m_uiJustUsedTimer -= uiDiff; - } -}; - -GameObjectAI* GetAI_go_dusty_spellbooks(GameObject* pGo) -{ - return new go_dusty_spellbooksAI(pGo); -} - void AddSC_silverpine_forest() { Script* newscript; @@ -798,9 +734,4 @@ void AddSC_silverpine_forest() newscript->Name = "npc_councilman"; newscript->GetAI = &GetAI_npc_councilman; newscript->RegisterSelf(); - - newscript = new Script; - newscript->Name = "go_dusty_spellbooks"; - newscript->GOGetAI = &GetAI_go_dusty_spellbooks; - newscript->RegisterSelf(); } diff --git a/src/scripts/kalimdor/desolace/desolace.cpp b/src/scripts/kalimdor/desolace/desolace.cpp index 422456eac..1b0106c0f 100644 --- a/src/scripts/kalimdor/desolace/desolace.cpp +++ b/src/scripts/kalimdor/desolace/desolace.cpp @@ -703,42 +703,6 @@ void DefineMagramiMagnet(Creature * crea, uint64 gobjGUID) } } -enum -{ - NPC_PORTAL_DEMON_DEMON = 11937, -}; - -struct go_demon_portalAI: public GameObjectAI -{ - go_demon_portalAI(GameObject* pGo) : GameObjectAI(pGo) - { - } - ObjectGuid _demonGuid; - bool OnUse(Unit* caster) override - { - Unit* demon; - if (_demonGuid) - { - demon = me->GetMap()->GetCreature(_demonGuid); - if (demon && demon->IsAlive()) - return true; - } - demon = me->SummonCreature(NPC_PORTAL_DEMON_DEMON, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ(), caster ? me->GetAngle(caster) : 0.0, TEMPSUMMON_TIMED_OR_DEAD_DESPAWN, 60000); - if (demon) - { - _demonGuid = demon->GetObjectGuid(); - if (caster) - demon->AI()->AttackStart(caster); - } - return true; - } -}; - -GameObjectAI* GetAI_go_demon_portal(GameObject *go) -{ - return new go_demon_portalAI(go); -} - /* * Gizelton Caravan, Bodyguard For Hire support */ @@ -1352,11 +1316,6 @@ void AddSC_desolace() newscript->GetAI = &GetAI_npc_magrami_spetre; newscript->RegisterSelf(); - newscript = new Script; - newscript->Name = "go_demon_portal"; - newscript->GOGetAI = &GetAI_go_demon_portal; - newscript->RegisterSelf(); - newscript = new Script; newscript->Name = "npc_cork_gizelton"; newscript->GetAI = &GetAI_npc_cork_gizelton; diff --git a/src/scripts/kalimdor/dustwallow_marsh/onyxias_lair/instance_onyxia_lair.cpp b/src/scripts/kalimdor/dustwallow_marsh/onyxias_lair/instance_onyxia_lair.cpp index a65bb31e9..9182031fe 100644 --- a/src/scripts/kalimdor/dustwallow_marsh/onyxias_lair/instance_onyxia_lair.cpp +++ b/src/scripts/kalimdor/dustwallow_marsh/onyxias_lair/instance_onyxia_lair.cpp @@ -3,6 +3,12 @@ #define MAX_ENCOUNTER 1 +enum +{ + GO_WHELP_SPAWNER = 176510, + SPELL_SUMMON_WHELP = 17646, +}; + struct instance_onyxia_lair : public ScriptedInstance { instance_onyxia_lair(Map* pMap) : ScriptedInstance(pMap) @@ -40,6 +46,16 @@ struct instance_onyxia_lair : public ScriptedInstance break; } } + + void OnObjectCreate(GameObject* pGo) override + { + switch (pGo->GetEntry()) + { + case GO_WHELP_SPAWNER: + pGo->CastSpell(pGo->GetPositionX(), pGo->GetPositionY(), pGo->GetPositionZ(), SPELL_SUMMON_WHELP, true); + break; + } + } }; InstanceData* GetInstanceData_instance_onyxia_lair(Map* pMap) diff --git a/src/scripts/world/go_scripts.cpp b/src/scripts/world/go_scripts.cpp index 34819017e..785c57ec4 100644 --- a/src/scripts/world/go_scripts.cpp +++ b/src/scripts/world/go_scripts.cpp @@ -31,7 +31,6 @@ go_field_repair_bot_74A go_orb_of_command go_resonite_cask go_tablet_of_madness -go_tablet_of_the_seven go_silithyste go_restes_sha_ni go_Hive_Regal_Glyphed_Crystal @@ -245,22 +244,6 @@ bool GOHello_go_tablet_of_madness(Player* pPlayer, GameObject* pGo) return true; } -/*###### -## go_tablet_of_the_seven -######*/ - -//TODO: use gossip option ("Transcript the Tablet") instead, if Mangos adds support. -bool GOHello_go_tablet_of_the_seven(Player* pPlayer, GameObject* pGo) -{ - if (pGo->GetGoType() != GAMEOBJECT_TYPE_QUESTGIVER) - return true; - - if (pPlayer->GetQuestStatus(4296) == QUEST_STATUS_INCOMPLETE) - pPlayer->CastSpell(pPlayer, 15065, false); - - return true; -} - // go_silithyste bool GOHello_go_silithyste(Player* pPlayer, GameObject* pGo) { @@ -602,11 +585,6 @@ void AddSC_go_scripts() newscript->pGOHello = &GOHello_go_tablet_of_madness; newscript->RegisterSelf(); - newscript = new Script; - newscript->Name = "go_tablet_of_the_seven"; - newscript->pGOHello = &GOHello_go_tablet_of_the_seven; - newscript->RegisterSelf(); - newscript = new Script; newscript->Name = "go_silithyste"; newscript->pGOHello = &GOHello_go_silithyste;