diff --git a/data/sql/updates/pending_db_world/rev_1617298257710087600.sql b/data/sql/updates/pending_db_world/rev_1617298257710087600.sql new file mode 100644 index 000000000..7c5917b20 --- /dev/null +++ b/data/sql/updates/pending_db_world/rev_1617298257710087600.sql @@ -0,0 +1,7142 @@ +INSERT INTO `version_db_world` (`sql_rev`) VALUES ('1617298257710087600'); + + +UPDATE creature_template SET InhabitType=1 WHERE entry IN (36725, 38058); + +UPDATE creature_template set unit_flags = unit_flags & ~32768; +UPDATE creature_template set unit_flags = unit_flags | 32768 where entry in ( +46, +68, +89, +95, +121, +122, +126, +127, +171, +232, +285, +315, +334, +349, +391, +397, +422, +435, +436, +437, +440, +449, +456, +458, +481, +485, +486, +502, +504, +513, +515, +517, +519, +520, +544, +545, +548, +578, +587, +588, +589, +590, +595, +596, +597, +599, +615, +645, +660, +667, +669, +670, +671, +672, +691, +694, +696, +697, +699, +701, +702, +732, +735, +747, +750, +751, +752, +780, +781, +782, +783, +784, +813, +814, +824, +871, +873, +875, +877, +879, +905, +946, +950, +1024, +1025, +1026, +1027, +1028, +1029, +1034, +1035, +1036, +1038, +1051, +1052, +1053, +1054, +1057, +1059, +1060, +1062, +1082, +1083, +1084, +1087, +1120, +1121, +1122, +1123, +1124, +1150, +1151, +1152, +1157, +1158, +1169, +1193, +1200, +1224, +1259, +1364, +1397, +1400, +1410, +1417, +1418, +1423, +1490, +1491, +1495, +1496, +1497, +1498, +1499, +1500, +1506, +1507, +1515, +1518, +1519, +1521, +1532, +1535, +1536, +1537, +1538, +1539, +1540, +1543, +1544, +1545, +1560, +1561, +1562, +1563, +1564, +1565, +1568, +1569, +1570, +1652, +1653, +1661, +1662, +1663, +1664, +1665, +1666, +1667, +1693, +1696, +1706, +1707, +1708, +1711, +1715, +1716, +1720, +1725, +1726, +1727, +1729, +1735, +1736, +1737, +1738, +1739, +1740, +1741, +1742, +1743, +1744, +1745, +1746, +1749, +1756, +1767, +1768, +1826, +1827, +1831, +1832, +1833, +1834, +1835, +1836, +1845, +1846, +1848, +1867, +1883, +1884, +1891, +1894, +1895, +1907, +1908, +1909, +1910, +1911, +1912, +1913, +1920, +1934, +1935, +1936, +1938, +1957, +1958, +1976, +1978, +2053, +2054, +2055, +2058, +2060, +2061, +2062, +2063, +2064, +2065, +2066, +2067, +2068, +2089, +2090, +2091, +2102, +2103, +2108, +2113, +2114, +2115, +2116, +2117, +2118, +2119, +2120, +2121, +2122, +2123, +2124, +2126, +2127, +2128, +2129, +2130, +2131, +2132, +2134, +2135, +2136, +2137, +2173, +2174, +2179, +2180, +2181, +2182, +2183, +2184, +2185, +2187, +2188, +2192, +2201, +2202, +2203, +2204, +2205, +2206, +2207, +2208, +2209, +2210, +2214, +2215, +2216, +2226, +2240, +2241, +2242, +2243, +2244, +2245, +2246, +2247, +2260, +2261, +2264, +2265, +2266, +2267, +2268, +2269, +2270, +2271, +2272, +2304, +2305, +2306, +2307, +2308, +2309, +2310, +2311, +2314, +2315, +2318, +2319, +2320, +2332, +2335, +2336, +2337, +2338, +2339, +2358, +2360, +2368, +2369, +2370, +2371, +2374, +2375, +2376, +2377, +2387, +2388, +2389, +2390, +2391, +2392, +2394, +2395, +2396, +2397, +2398, +2399, +2400, +2401, +2402, +2403, +2404, +2408, +2410, +2411, +2412, +2413, +2414, +2415, +2418, +2419, +2423, +2427, +2428, +2431, +2437, +2440, +2448, +2449, +2450, +2451, +2458, +2459, +2462, +2492, +2503, +2505, +2530, +2534, +2540, +2541, +2545, +2546, +2547, +2549, +2550, +2552, +2553, +2554, +2555, +2556, +2557, +2558, +2575, +2577, +2581, +2582, +2583, +2584, +2585, +2586, +2587, +2588, +2589, +2590, +2591, +2595, +2596, +2597, +2599, +2600, +2607, +2612, +2618, +2619, +2624, +2628, +2635, +2636, +2639, +2640, +2641, +2642, +2643, +2644, +2645, +2646, +2647, +2648, +2649, +2650, +2651, +2652, +2653, +2654, +2698, +2714, +2721, +2733, +2739, +2740, +2742, +2743, +2770, +2775, +2779, +2780, +2781, +2782, +2783, +2799, +2802, +2848, +2914, +2927, +2928, +2929, +2932, +2934, +2989, +2990, +3024, +3044, +3045, +3046, +3047, +3048, +3049, +3083, +3084, +3110, +3128, +3129, +3183, +3192, +3195, +3196, +3197, +3198, +3199, +3204, +3205, +3206, +3207, +3231, +3296, +3300, +3374, +3375, +3376, +3377, +3378, +3379, +3380, +3381, +3382, +3383, +3384, +3385, +3386, +3390, +3392, +3393, +3398, +3414, +3454, +3461, +3467, +3470, +3476, +3502, +3522, +3523, +3528, +3530, +3532, +3547, +3548, +3549, +3550, +3553, +3555, +3577, +3578, +3641, +3652, +3653, +3660, +3664, +3667, +3680, +3711, +3712, +3713, +3715, +3717, +3721, +3722, +3725, +3727, +3732, +3733, +3734, +3735, +3736, +3737, +3739, +3740, +3742, +3772, +3797, +3801, +3802, +3803, +3804, +3806, +3807, +3808, +3840, +3849, +3850, +3873, +3875, +3877, +3887, +3917, +3940, +3941, +3942, +3943, +3944, +3974, +3975, +3981, +3982, +3983, +4050, +4051, +4052, +4062, +4064, +4065, +4142, +4143, +4144, +4202, +4262, +4278, +4280, +4281, +4282, +4283, +4284, +4285, +4286, +4287, +4288, +4289, +4290, +4291, +4292, +4293, +4294, +4295, +4296, +4297, +4298, +4299, +4300, +4301, +4302, +4303, +4306, +4341, +4343, +4344, +4345, +4359, +4361, +4362, +4363, +4364, +4366, +4368, +4370, +4371, +4374, +4388, +4389, +4390, +4397, +4418, +4423, +4444, +4457, +4458, +4459, +4460, +4461, +4462, +4463, +4464, +4465, +4466, +4467, +4479, +4480, +4481, +4486, +4488, +4493, +4494, +4505, +4506, +4540, +4542, +4549, +4551, +4552, +4553, +4554, +4555, +4556, +4557, +4558, +4559, +4560, +4561, +4562, +4564, +4565, +4567, +4568, +4569, +4570, +4571, +4572, +4573, +4574, +4575, +4576, +4577, +4578, +4580, +4581, +4582, +4583, +4584, +4585, +4586, +4587, +4588, +4589, +4590, +4591, +4592, +4593, +4594, +4595, +4596, +4597, +4598, +4599, +4600, +4601, +4602, +4603, +4604, +4605, +4607, +4608, +4609, +4611, +4613, +4614, +4615, +4616, +4617, +4624, +4677, +4679, +4680, +4682, +4684, +4711, +4712, +4713, +4714, +4715, +4716, +4718, +4719, +4731, +4773, +4775, +4787, +4802, +4803, +4805, +4807, +4813, +4818, +4819, +4820, +4824, +4825, +4827, +4829, +4830, +4831, +4841, +4844, +4845, +4846, +4880, +4887, +4953, +5048, +5052, +5053, +5085, +5086, +5185, +5186, +5190, +5204, +5224, +5225, +5243, +5256, +5259, +5261, +5263, +5267, +5269, +5270, +5271, +5273, +5331, +5332, +5333, +5334, +5335, +5336, +5337, +5343, +5355, +5401, +5414, +5418, +5431, +5434, +5435, +5543, +5595, +5624, +5643, +5645, +5646, +5647, +5648, +5649, +5650, +5651, +5653, +5654, +5655, +5656, +5657, +5658, +5659, +5660, +5661, +5662, +5663, +5664, +5665, +5667, +5668, +5669, +5670, +5675, +5677, +5679, +5682, +5683, +5688, +5690, +5693, +5695, +5696, +5698, +5699, +5700, +5701, +5702, +5703, +5704, +5705, +5706, +5707, +5711, +5712, +5713, +5714, +5715, +5716, +5717, +5724, +5725, +5731, +5732, +5733, +5734, +5744, +5747, +5753, +5754, +5755, +5757, +5758, +5759, +5771, +5797, +5798, +5799, +5800, +5819, +5820, +5821, +5822, +5835, +5839, +5840, +5844, +5846, +5847, +5849, +5915, +5931, +5952, +5953, +5955, +5957, +5997, +6001, +6011, +6015, +6033, +6115, +6136, +6138, +6140, +6145, +6190, +6193, +6194, +6195, +6196, +6206, +6207, +6208, +6210, +6211, +6212, +6213, +6222, +6223, +6224, +6243, +6289, +6329, +6347, +6348, +6349, +6351, +6352, +6369, +6371, +6389, +6391, +6392, +6407, +6411, +6467, +6487, +6488, +6494, +6497, +6522, +6523, +6547, +6570, +6668, +6729, +6739, +6741, +6784, +6785, +7015, +7016, +7017, +7025, +7026, +7027, +7028, +7029, +7036, +7037, +7038, +7050, +7053, +7067, +7068, +7069, +7070, +7071, +7072, +7075, +7087, +7246, +7247, +7271, +7272, +7274, +7297, +7310, +7461, +7463, +7489, +7562, +7565, +7567, +7603, +7604, +7605, +7606, +7608, +7666, +7667, +7683, +7725, +7726, +7727, +7730, +7795, +7806, +7807, +7808, +7847, +7883, +7885, +7886, +7977, +7980, +7995, +7996, +8136, +8199, +8200, +8210, +8216, +8236, +8403, +8408, +8409, +8437, +8444, +8479, +8521, +8522, +8546, +8547, +8548, +8550, +8551, +8553, +8560, +8561, +8562, +8566, +8617, +8636, +8637, +8672, +8717, +8721, +8886, +8889, +8890, +8891, +8892, +8893, +8894, +8895, +8896, +8897, +8898, +8899, +8900, +8902, +8903, +8904, +8920, +8978, +8979, +9018, +9024, +9034, +9035, +9036, +9037, +9038, +9039, +9040, +9041, +9043, +9044, +9045, +9046, +9078, +9079, +9097, +9098, +9237, +9239, +9240, +9241, +9257, +9258, +9259, +9260, +9261, +9262, +9263, +9264, +9265, +9266, +9267, +9268, +9269, +9273, +9274, +9297, +9447, +9448, +9449, +9450, +9451, +9452, +9460, +9499, +9500, +9517, +9518, +9520, +9543, +9545, +9547, +9554, +9583, +9678, +9680, +9681, +9692, +9693, +9716, +9717, +9817, +9818, +9819, +9860, +9861, +9916, +9956, +9979, +9999, +10053, +10055, +10057, +10157, +10158, +10159, +10160, +10162, +10181, +10182, +10201, +10204, +10216, +10316, +10317, +10318, +10319, +10323, +10384, +10385, +10398, +10399, +10400, +10433, +10502, +10503, +10504, +10559, +10605, +10608, +10642, +10643, +10665, +10667, +10680, +10681, +10742, +10756, +10757, +10758, +10759, +10760, +10761, +10762, +10778, +10781, +10802, +10817, +10822, +10823, +10827, +10828, +10837, +10877, +10925, +10927, +10929, +10936, +10940, +10942, +10956, +10996, +11022, +11031, +11036, +11044, +11048, +11049, +11055, +11057, +11064, +11067, +11082, +11190, +11191, +11216, +11217, +11218, +11290, +11291, +11322, +11323, +11324, +11338, +11339, +11340, +11346, +11347, +11348, +11350, +11351, +11353, +11355, +11356, +11360, +11361, +11365, +11371, +11372, +11373, +11374, +11380, +11382, +11383, +11387, +11388, +11389, +11390, +11391, +11439, +11520, +11562, +11563, +11611, +11613, +11615, +11621, +11656, +11680, +11681, +11682, +11683, +11697, +11751, +11752, +11803, +11804, +11822, +11830, +11831, +11832, +11835, +11858, +11870, +11898, +11910, +11911, +11912, +11913, +11914, +11936, +11937, +11945, +12123, +12124, +12125, +12138, +12178, +12179, +12199, +12204, +12205, +12207, +12248, +12261, +12337, +12384, +12428, +12636, +12717, +12722, +12759, +12778, +12856, +12865, +12896, +12897, +12902, +12920, +12999, +13118, +13154, +13157, +13158, +13159, +13596, +13599, +13896, +14123, +14226, +14229, +14230, +14270, +14276, +14277, +14304, +14356, +14357, +14363, +14365, +14367, +14373, +14374, +14375, +14376, +14377, +14378, +14379, +14380, +14387, +14392, +14402, +14403, +14404, +14423, +14426, +14436, +14437, +14438, +14439, +14440, +14441, +14442, +14446, +14447, +14450, +14451, +14463, +14469, +14481, +14487, +14490, +14507, +14509, +14510, +14515, +14517, +14522, +14523, +14527, +14529, +14531, +14536, +14621, +14622, +14637, +14720, +14722, +14723, +14724, +14725, +14726, +14727, +14728, +14729, +14730, +14731, +14734, +14736, +14737, +14738, +14739, +14740, +14741, +14748, +14757, +14762, +14763, +14766, +14769, +14825, +14826, +14875, +14876, +14881, +14882, +14883, +14902, +14903, +14904, +14905, +14910, +14911, +14921, +14983, +14984, +14986, +14988, +14991, +15009, +15011, +15021, +15022, +15043, +15067, +15080, +15088, +15101, +15102, +15111, +15131, +15162, +15169, +15170, +15171, +15174, +15175, +15176, +15177, +15178, +15179, +15180, +15181, +15182, +15183, +15184, +15186, +15187, +15188, +15189, +15190, +15191, +15194, +15199, +15200, +15215, +15282, +15293, +15306, +15308, +15353, +15367, +15378, +15379, +15380, +15407, +15408, +15419, +15420, +15442, +15443, +15444, +15493, +15498, +15499, +15500, +15502, +15503, +15504, +15505, +15526, +15540, +15541, +15551, +15559, +15561, +15562, +15564, +15566, +15576, +15579, +15580, +15582, +15592, +15594, +15597, +15602, +15612, +15613, +15614, +15615, +15616, +15617, +15641, +15642, +15643, +15644, +15645, +15668, +15669, +15670, +15675, +15676, +15677, +15678, +15679, +15681, +15682, +15683, +15684, +15686, +15687, +15692, +15722, +15760, +15761, +15762, +15763, +15764, +15765, +15766, +15767, +15768, +15871, +15891, +15892, +15895, +15898, +15903, +15920, +15921, +15937, +15949, +15950, +15951, +15953, +15954, +15965, +15968, +15969, +15980, +15981, +16060, +16061, +16069, +16090, +16096, +16112, +16113, +16114, +16115, +16116, +16127, +16131, +16132, +16133, +16134, +16135, +16153, +16156, +16159, +16162, +16169, +16183, +16189, +16192, +16196, +16198, +16199, +16200, +16201, +16202, +16203, +16205, +16206, +16208, +16209, +16219, +16221, +16222, +16226, +16250, +16283, +16287, +16288, +16294, +16315, +16317, +16318, +16330, +16331, +16332, +16340, +16341, +16342, +16343, +16344, +16388, +16389, +16392, +16399, +16402, +16403, +16404, +16405, +16406, +16407, +16408, +16409, +16410, +16411, +16412, +16414, +16416, +16417, +16418, +16424, +16425, +16426, +16447, +16459, +16460, +16461, +16468, +16469, +16470, +16472, +16473, +16475, +16476, +16477, +16499, +16500, +16501, +16502, +16503, +16505, +16506, +16514, +16518, +16519, +16521, +16522, +16524, +16528, +16535, +16537, +16540, +16541, +16543, +16546, +16547, +16548, +16549, +16554, +16568, +16583, +16591, +16601, +16670, +16713, +16733, +16734, +16769, +16772, +16781, +16788, +16790, +16791, +16792, +16793, +16794, +16800, +16801, +16802, +16803, +16805, +16806, +16810, +16811, +16812, +16813, +16814, +16815, +16817, +16818, +16845, +16846, +16847, +16855, +16867, +16870, +16871, +16873, +16876, +16878, +16904, +16905, +16907, +16911, +16912, +16916, +16918, +16919, +16920, +16921, +16925, +16937, +16938, +16945, +16952, +16954, +16960, +16964, +16971, +16976, +16977, +16978, +17007, +17008, +17038, +17058, +17068, +17069, +17070, +17071, +17072, +17079, +17080, +17088, +17089, +17092, +17098, +17099, +17100, +17101, +17102, +17103, +17104, +17105, +17106, +17108, +17110, +17114, +17116, +17117, +17134, +17135, +17136, +17137, +17138, +17142, +17143, +17146, +17147, +17148, +17151, +17153, +17154, +17155, +17183, +17184, +17185, +17186, +17187, +17188, +17189, +17190, +17191, +17192, +17193, +17194, +17195, +17208, +17210, +17211, +17213, +17214, +17215, +17222, +17224, +17226, +17228, +17232, +17233, +17235, +17238, +17240, +17241, +17242, +17243, +17244, +17245, +17246, +17247, +17252, +17256, +17259, +17264, +17268, +17269, +17270, +17271, +17277, +17281, +17287, +17298, +17303, +17304, +17305, +17311, +17312, +17316, +17317, +17320, +17321, +17322, +17323, +17324, +17325, +17326, +17327, +17328, +17329, +17330, +17331, +17333, +17334, +17336, +17370, +17397, +17406, +17417, +17418, +17425, +17432, +17437, +17439, +17440, +17441, +17442, +17443, +17444, +17445, +17446, +17447, +17448, +17455, +17468, +17469, +17475, +17477, +17478, +17480, +17482, +17483, +17484, +17485, +17486, +17487, +17490, +17496, +17517, +17535, +17547, +17549, +17556, +17584, +17585, +17586, +17598, +17604, +17606, +17607, +17608, +17609, +17610, +17613, +17636, +17637, +17649, +17657, +17658, +17659, +17663, +17664, +17666, +17673, +17674, +17676, +17678, +17682, +17684, +17686, +17701, +17703, +17704, +17712, +17713, +17714, +17726, +17727, +17735, +17765, +17766, +17767, +17770, +17804, +17808, +17816, +17817, +17822, +17824, +17825, +17826, +17841, +17842, +17843, +17844, +17855, +17858, +17865, +17886, +17887, +17888, +17893, +17896, +17899, +17904, +17909, +17919, +17921, +17922, +17926, +17927, +17928, +17938, +17940, +17943, +17945, +17957, +17958, +17959, +17960, +17961, +17968, +17969, +17982, +17986, +18020, +18022, +18024, +18028, +18030, +18032, +18034, +18037, +18038, +18044, +18046, +18063, +18064, +18065, +18066, +18067, +18068, +18070, +18080, +18086, +18087, +18088, +18089, +18092, +18093, +18097, +18098, +18103, +18105, +18106, +18117, +18118, +18119, +18120, +18121, +18122, +18123, +18124, +18125, +18127, +18138, +18141, +18145, +18159, +18160, +18165, +18166, +18168, +18183, +18187, +18188, +18189, +18190, +18191, +18202, +18203, +18207, +18210, +18211, +18212, +18213, +18214, +18222, +18223, +18224, +18229, +18230, +18231, +18232, +18233, +18234, +18237, +18238, +18243, +18244, +18245, +18246, +18247, +18249, +18252, +18253, +18255, +18260, +18261, +18262, +18266, +18267, +18273, +18286, +18292, +18293, +18296, +18299, +18300, +18301, +18302, +18334, +18336, +18340, +18352, +18353, +18369, +18371, +18373, +18381, +18383, +18384, +18385, +18386, +18387, +18389, +18390, +18391, +18407, +18408, +18413, +18414, +18415, +18416, +18424, +18427, +18428, +18437, +18438, +18440, +18445, +18446, +18447, +18449, +18450, +18451, +18452, +18453, +18454, +18455, +18456, +18457, +18459, +18460, +18461, +18463, +18464, +18465, +18466, +18467, +18468, +18469, +18470, +18475, +18476, +18477, +18478, +18480, +18482, +18483, +18488, +18489, +18492, +18493, +18495, +18497, +18498, +18499, +18500, +18501, +18503, +18521, +18524, +18527, +18531, +18535, +18536, +18537, +18538, +18539, +18540, +18541, +18547, +18548, +18549, +18556, +18557, +18558, +18559, +18564, +18565, +18566, +18567, +18581, +18583, +18584, +18585, +18586, +18588, +18593, +18594, +18595, +18596, +18597, +18600, +18626, +18627, +18629, +18631, +18632, +18633, +18634, +18635, +18636, +18637, +18638, +18639, +18640, +18641, +18642, +18647, +18652, +18658, +18668, +18669, +18670, +18675, +18676, +18677, +18680, +18682, +18690, +18702, +18703, +18704, +18705, +18707, +18712, +18713, +18714, +18715, +18716, +18717, +18718, +18719, +18720, +18722, +18724, +18730, +18733, +18743, +18744, +18745, +18750, +18756, +18760, +18785, +18788, +18789, +18791, +18793, +18794, +18796, +18799, +18800, +18807, +18809, +18810, +18812, +18813, +18817, +18822, +18823, +18824, +18825, +18826, +18829, +18830, +18848, +18850, +18852, +18853, +18855, +18857, +18879, +18880, +18881, +18882, +18883, +18885, +18886, +18891, +18892, +18893, +18899, +18900, +18901, +18902, +18903, +18909, +18910, +18911, +18913, +18914, +18915, +18916, +18917, +18918, +18919, +18921, +18922, +18924, +18927, +18930, +18931, +18933, +18937, +18940, +18943, +18944, +18948, +18949, +18950, +18957, +18965, +18966, +18969, +18970, +18971, +18972, +18973, +18977, +18985, +18986, +18992, +18997, +18998, +18999, +19000, +19002, +19003, +19006, +19007, +19011, +19012, +19013, +19014, +19015, +19017, +19018, +19019, +19020, +19021, +19022, +19023, +19024, +19025, +19026, +19027, +19030, +19033, +19034, +19042, +19043, +19046, +19048, +19050, +19053, +19056, +19063, +19064, +19065, +19068, +19071, +19076, +19077, +19120, +19133, +19137, +19140, +19141, +19142, +19144, +19147, +19148, +19149, +19150, +19151, +19152, +19153, +19154, +19156, +19158, +19159, +19161, +19165, +19166, +19167, +19168, +19169, +19170, +19171, +19172, +19173, +19175, +19176, +19177, +19178, +19180, +19181, +19182, +19184, +19186, +19187, +19190, +19193, +19194, +19195, +19196, +19197, +19201, +19202, +19209, +19213, +19216, +19220, +19221, +19223, +19227, +19229, +19232, +19234, +19235, +19236, +19238, +19239, +19240, +19242, +19243, +19244, +19245, +19246, +19248, +19249, +19250, +19251, +19252, +19253, +19254, +19255, +19256, +19257, +19258, +19263, +19264, +19270, +19271, +19272, +19273, +19283, +19289, +19295, +19296, +19298, +19308, +19309, +19310, +19314, +19315, +19316, +19318, +19321, +19330, +19331, +19332, +19337, +19338, +19340, +19346, +19351, +19352, +19353, +19354, +19355, +19362, +19368, +19369, +19370, +19371, +19372, +19373, +19374, +19375, +19377, +19380, +19383, +19384, +19390, +19394, +19395, +19401, +19402, +19408, +19409, +19410, +19411, +19413, +19414, +19415, +19416, +19417, +19421, +19422, +19424, +19425, +19426, +19435, +19436, +19442, +19443, +19444, +19445, +19446, +19449, +19451, +19453, +19455, +19457, +19458, +19459, +19460, +19466, +19467, +19468, +19469, +19475, +19482, +19485, +19496, +19501, +19502, +19503, +19504, +19510, +19517, +19518, +19519, +19520, +19521, +19526, +19528, +19529, +19530, +19532, +19541, +19542, +19544, +19545, +19546, +19558, +19562, +19569, +19570, +19578, +19582, +19588, +19589, +19593, +19595, +19606, +19610, +19612, +19617, +19621, +19623, +19634, +19635, +19643, +19645, +19651, +19656, +19661, +19662, +19663, +19664, +19678, +19682, +19683, +19684, +19686, +19687, +19689, +19690, +19692, +19693, +19698, +19701, +19707, +19709, +19715, +19718, +19720, +19725, +19726, +19728, +19731, +19732, +19733, +19734, +19735, +19736, +19737, +19740, +19747, +19754, +19755, +19756, +19759, +19762, +19763, +19764, +19765, +19766, +19767, +19768, +19769, +19772, +19773, +19776, +19779, +19780, +19784, +19788, +19789, +19792, +19795, +19796, +19799, +19800, +19801, +19802, +19806, +19823, +19825, +19826, +19827, +19830, +19831, +19832, +19833, +19836, +19844, +19848, +19851, +19872, +19873, +19874, +19875, +19876, +19879, +19880, +19882, +19921, +19926, +19932, +19933, +19935, +19937, +19940, +19943, +19944, +19945, +19946, +19947, +19948, +19950, +19952, +19957, +19982, +19983, +19984, +19985, +19986, +19987, +19988, +19989, +19990, +19991, +19992, +19993, +19994, +19995, +19996, +19997, +19998, +20026, +20053, +20054, +20058, +20059, +20066, +20079, +20080, +20081, +20084, +20087, +20088, +20089, +20090, +20092, +20095, +20096, +20097, +20102, +20112, +20113, +20123, +20124, +20125, +20129, +20132, +20134, +20135, +20136, +20139, +20140, +20158, +20161, +20162, +20194, +20202, +20203, +20207, +20211, +20216, +20221, +20227, +20231, +20233, +20234, +20235, +20236, +20237, +20238, +20240, +20241, +20248, +20269, +20271, +20272, +20273, +20274, +20276, +20281, +20284, +20285, +20290, +20293, +20294, +20295, +20324, +20326, +20329, +20330, +20331, +20339, +20341, +20362, +20384, +20392, +20397, +20406, +20416, +20435, +20442, +20443, +20444, +20465, +20470, +20471, +20477, +20478, +20481, +20484, +20485, +20498, +20502, +20514, +20557, +20563, +20600, +20604, +20613, +20616, +20619, +20672, +20674, +20680, +20683, +20684, +20685, +20710, +20714, +20723, +20726, +20728, +20729, +20730, +20731, +20732, +20735, +20753, +20756, +20757, +20762, +20765, +20766, +20772, +20773, +20774, +20775, +20778, +20780, +20791, +20792, +20793, +20803, +20805, +20806, +20807, +20808, +20857, +20859, +20872, +20878, +20882, +20883, +20890, +20891, +20892, +20893, +20904, +20914, +20922, +20924, +20929, +20930, +20987, +20988, +20990, +21006, +21007, +21023, +21024, +21026, +21032, +21045, +21046, +21047, +21048, +21049, +21050, +21059, +21066, +21077, +21081, +21089, +21102, +21108, +21117, +21126, +21127, +21133, +21145, +21147, +21151, +21158, +21159, +21164, +21168, +21171, +21175, +21178, +21179, +21180, +21188, +21192, +21193, +21194, +21195, +21197, +21207, +21217, +21235, +21238, +21242, +21245, +21254, +21256, +21259, +21267, +21283, +21284, +21285, +21287, +21292, +21293, +21296, +21300, +21302, +21303, +21304, +21305, +21309, +21311, +21314, +21315, +21316, +21318, +21323, +21328, +21330, +21332, +21337, +21348, +21365, +21376, +21380, +21382, +21383, +21384, +21385, +21386, +21389, +21391, +21397, +21398, +21399, +21400, +21402, +21404, +21408, +21411, +21413, +21416, +21432, +21448, +21450, +21453, +21454, +21455, +21472, +21477, +21478, +21485, +21487, +21496, +21499, +21503, +21504, +21505, +21506, +21515, +21517, +21518, +21520, +21627, +21636, +21637, +21639, +21640, +21643, +21644, +21648, +21649, +21650, +21651, +21652, +21655, +21656, +21660, +21661, +21662, +21663, +21682, +21683, +21684, +21685, +21690, +21691, +21692, +21709, +21710, +21711, +21717, +21718, +21719, +21720, +21721, +21722, +21723, +21724, +21728, +21729, +21730, +21732, +21733, +21734, +21736, +21737, +21742, +21743, +21744, +21746, +21747, +21749, +21750, +21751, +21752, +21755, +21757, +21763, +21769, +21770, +21771, +21772, +21773, +21774, +21775, +21776, +21777, +21782, +21787, +21795, +21796, +21797, +21802, +21803, +21808, +21809, +21810, +21816, +21820, +21822, +21824, +21837, +21846, +21852, +21854, +21858, +21859, +21860, +21869, +21870, +21877, +21895, +21896, +21897, +21902, +21906, +21907, +21908, +21911, +21912, +21930, +21935, +21936, +21937, +21942, +21944, +21953, +21954, +21955, +21956, +21970, +21971, +21975, +21979, +21981, +21983, +21984, +21985, +21986, +22004, +22006, +22007, +22011, +22012, +22016, +22017, +22018, +22019, +22037, +22039, +22044, +22045, +22053, +22059, +22060, +22072, +22081, +22082, +22084, +22093, +22094, +22099, +22100, +22103, +22107, +22108, +22110, +22113, +22115, +22130, +22132, +22138, +22143, +22144, +22148, +22149, +22150, +22151, +22160, +22177, +22180, +22182, +22187, +22194, +22195, +22199, +22201, +22202, +22204, +22206, +22211, +22212, +22213, +22214, +22215, +22217, +22221, +22231, +22241, +22242, +22243, +22244, +22252, +22253, +22254, +22255, +22257, +22261, +22262, +22268, +22274, +22278, +22279, +22280, +22282, +22286, +22287, +22289, +22295, +22297, +22298, +22301, +22302, +22303, +22305, +22306, +22308, +22309, +22325, +22327, +22341, +22342, +22343, +22362, +22363, +22364, +22374, +22378, +22384, +22385, +22386, +22387, +22388, +22389, +22392, +22394, +22396, +22407, +22410, +22420, +22430, +22431, +22432, +22433, +22437, +22440, +22441, +22453, +22454, +22456, +22457, +22462, +22463, +22465, +22469, +22476, +22477, +22483, +22484, +22485, +22488, +22489, +22494, +22819, +22832, +22844, +22845, +22846, +22847, +22848, +22849, +22853, +22855, +22869, +22871, +22873, +22874, +22875, +22876, +22877, +22878, +22880, +22881, +22882, +22883, +22884, +22885, +22887, +22898, +22922, +22924, +22939, +22940, +22945, +22947, +22948, +22949, +22951, +22952, +22953, +22954, +22955, +22960, +22963, +22980, +22982, +23016, +23022, +23028, +23030, +23038, +23042, +23048, +23079, +23127, +23147, +23162, +23165, +23172, +23204, +23207, +23257, +23263, +23270, +23271, +23272, +23273, +23330, +23337, +23339, +23367, +23381, +23383, +23411, +23415, +23421, +23433, +23434, +23435, +23437, +23440, +23443, +23449, +23483, +23484, +23489, +23258, +22834, +22837, +15383, +15431, +15432, +15434, +15437, +15445, +15446, +15448, +15450, +15451, +15452, +15453, +15455, +15456, +15457, +15539, +15663, +15701, +15709, +15731, +15733, +15734, +15735, +21166, +22857, +22859, +22861, +22862, +22863, +22864, +22966, +23102, +23180, +23268, +23373, +23452, +23454, +23536, +23719, +1293, +3642, +5936, +14688, +15118, +15545, +15571, +15591, +15609, +15610, +15611, +15633, +15661, +15693, +15694, +15719, +15864, +15905, +15906, +15907, +15908, +15909, +15961, +16072, +16093, +16124, +16125, +16126, +16128, +16148, +16150, +16378, +16419, +23311, +17081, +17082, +17301, +25579, +25578, +25577, +25576, +25575, +18095, +18104, +18284, +25574, +25573, +25572, +25571, +25570, +25569, +25568, +25567, +25565, +25563, +25562, +25560, +25551, +25550, +18689, +19228, +25548, +25547, +25546, +24857, +23185, +22938, +21943, +21843, +21842, +21623, +21622, +21615, +21613, +21592, +21587, +21585, +21543, +21542, +21541, +21540, +21539, +21538, +21537, +21536, +21524, +21523, +21522, +20700, +20661, +20659, +20656, +20667, +20654, +20652, +20651, +20650, +20649, +20648, +20647, +20646, +20645, +20644, +20643, +20642, +20641, +20640, +20639, +20638, +21508, +20585, +20539, +20323, +20322, +20321, +20320, +20318, +20315, +20313, +20312, +20311, +20310, +20309, +20306, +20303, +20302, +20301, +20300, +20299, +20298, +20193, +20192, +20191, +20183, +20169, +20168, +22542, +22544, +22595, +22616, +22836, +23094, +23128, +23234, +23365, +23139, +23140, +23370, +23710, +23703, +23486, +24657, +24495, +23103, +21521, +20536, +22823, +22879, +22886, +22913, +22914, +22916, +22946, +22956, +22957, +22959, +22962, +22964, +22965, +23018, +23020, +23047, +23049, +23083, +23091, +23092, +23093, +23141, +23142, +23145, +23146, +23150, +23158, +23159, +23164, +23166, +23170, +23171, +23196, +23197, +23209, +23215, +23216, +23222, +23223, +23226, +23232, +23235, +23236, +23237, +23239, +23265, +23287, +23305, +23309, +23318, +23319, +23324, +23340, +23342, +23344, +23345, +23346, +23348, +23369, +23371, +23374, +23376, +23394, +23397, +23399, +23400, +23401, +23402, +23403, +23410, +23441, +23467, +23469, +23523, +23524, +23709, +23795, +23894, +24491, +24536, +23542, +23559, +23569, +23574, +23577, +23578, +23580, +23581, +23582, +23584, +23586, +23587, +23589, +23590, +23591, +23592, +23593, +23594, +23595, +23596, +23597, +23598, +23636, +23679, +23701, +23704, +23705, +23714, +23716, +23718, +23720, +23723, +23724, +23745, +23761, +23762, +23764, +23774, +23790, +23818, +23834, +23858, +23889, +23896, +23897, +23899, +23928, +23948, +23949, +23950, +23951, +24047, +24059, +24065, +24179, +24217, +24358, +24365, +24369, +24370, +24393, +24437, +24442, +24456, +24477, +24504, +24739, +24818, +24819, +24841, +24842, +24996, +24997, +24998, +25007, +25013, +25014, +25021, +25022, +25023, +25024, +25025, +25050, +25053, +25054, +25055, +25056, +25079, +25080, +25081, +25083, +25106, +25107, +25109, +25145, +25195, +25196, +25160, +24664, +24723, +24744, +24675, +24777, +24674, +25061, +24559, +24561, +24698, +24554, +24683, +24684, +24688, +24696, +24697, +24556, +24685, +24686, +24687, +24762, +24822, +24690, +25992, +25144, +24938, +25034, +24813, +25991, +25059, +26253, +25162, +25060, +25063, +25115, +25047, +24965, +24967, +24976, +25161, +25057, +25002, +25032, +24966, +24978, +24979, +24994, +26560, +24960, +25073, +25132, +25164, +25084, +16570, +21223, +24560, +24689, +24808, +24850, +19892, +24866, +24881, +24885, +24886, +24891, +24892, +24918, +24932, +24933, +25363, +25367, +25368, +25369, +25370, +25371, +25372, +25507, +25508, +25509, +25518, +19891, +19890, +19889, +19888, +19887, +19886, +19885, +19884, +18615, +18608, +18606, +18057, +18055, +25591, +25592, +25593, +25595, +25597, +25599, +25632, +25638, +25639, +25644, +25661, +25851, +25867, +25883, +25884, +25887, +25888, +25889, +25890, +25891, +25892, +25893, +25894, +25895, +25896, +25897, +25898, +25899, +25900, +25901, +25902, +25903, +25904, +25905, +25906, +25907, +25908, +25909, +25910, +25911, +25912, +25913, +25914, +25915, +25916, +25917, +25918, +25919, +25920, +25921, +25922, +25923, +25925, +25926, +25927, +25928, +25929, +25930, +25931, +25932, +25933, +25934, +25935, +25936, +25937, +25938, +25939, +25940, +25941, +25942, +25943, +25944, +25945, +25946, +25947, +25949, +25951, +25954, +25955, +25956, +25957, +25958, +25959, +25962, +25975, +25980, +25994, +26101, +26113, +26123, +26124, +18054, +18053, +18052, +18051, +18050, +18049, +18048, +27705, +27666, +27667, +29093, +28343, +28569, +28596, +28572, +28571, +28573, +27346, +27215, +26776, +29142, +29141, +29712, +29088, +29019, +29290, +29287, +29289, +26482, +29452, +25197, +30734, +30721, +26643, +30713, +30730, +32638, +32639, +26358, +26369, +28297, +29202, +29587, +28486, +27928, +28500, +29203, +29207, +29212, +29205, +29208, +28491, +28490, +28488, +29196, +28489, +29195, +29231, +29210, +29232, +30217, +25760, +28440, +24637, +27393, +29617, +25827, +25737, +29158, +25251, +25302, +26879, +27010, +25306, +25826, +25248, +25253, +24357, +25317, +25271, +25245, +25220, +25281, +25282, +26992, +32564, +26999, +26988, +25238, +25235, +27011, +25241, +25239, +25240, +26155, +27364, +27365, +26998, +26993, +26995, +27000, +26989, +26994, +26990, +25828, +25311, +27001, +26991, +26987, +26997, +27012, +25264, +25301, +25285, +25300, +25250, +27385, +29298, +28404, +25489, +28002, +30481, +25675, +23519, +23546, +23547, +23548, +23549, +23550, +23551, +23552, +23557, +23643, +23644, +23645, +23651, +23652, +23654, +23656, +23657, +23658, +23660, +23661, +23662, +23663, +23664, +23665, +23666, +23667, +23668, +23669, +23670, +23672, +23673, +23675, +23678, +23691, +23728, +23729, +23731, +23732, +23733, +23734, +23735, +23736, +23737, +23738, +23739, +23755, +23760, +23770, +23773, +23776, +23783, +23785, +23791, +23793, +23794, +23796, +23802, +23823, +23831, +23836, +23839, +23840, +23842, +23844, +23851, +23859, +23860, +23862, +23866, +23871, +23886, +23887, +23891, +23895, +23906, +23908, +23911, +23932, +23934, +23937, +23940, +23946, +23956, +23960, +23961, +23962, +23963, +23964, +23967, +23975, +23976, +23978, +23983, +23984, +23985, +23986, +23987, +23989, +23990, +23991, +23992, +24009, +24014, +24018, +24023, +24029, +24030, +24031, +24035, +24040, +24048, +24051, +24062, +24063, +24073, +24076, +24077, +24078, +24079, +24080, +24081, +24082, +24083, +24084, +24085, +24086, +24088, +24089, +24090, +24106, +24111, +24112, +24113, +24114, +24117, +24119, +24120, +24122, +24128, +24129, +24132, +24135, +24141, +24142, +24145, +24147, +24148, +24149, +24150, +24151, +24154, +24157, +24158, +24168, +24169, +24178, +24186, +24188, +24195, +24196, +24197, +24200, +24201, +24209, +24212, +24213, +24214, +24216, +24221, +24226, +24227, +24233, +24248, +24249, +24250, +24251, +24253, +24254, +24255, +24258, +24260, +24261, +24262, +24271, +24272, +24273, +24283, +24284, +24285, +24313, +24316, +24330, +24333, +24334, +24340, +24345, +24356, +24359, +24381, +24385, +24398, +24399, +24400, +24459, +24460, +24461, +24467, +24475, +24485, +24500, +24533, +24540, +24544, +24546, +24567, +24635, +24638, +24669, +24678, +24717, +24718, +24719, +24720, +24750, +24751, +24752, +24768, +24779, +24785, +24789, +24807, +24849, +24899, +24954, +24957, +25198, +25199, +25201, +25203, +25204, +25205, +25206, +25208, +25209, +25210, +25211, +25215, +25216, +25217, +25224, +25226, +25233, +25237, +25242, +25243, +25244, +25247, +25256, +25257, +25258, +25259, +25261, +25269, +25272, +25273, +25274, +25275, +25276, +25277, +25278, +25279, +25280, +25286, +25288, +25289, +25292, +25313, +25316, +25321, +25322, +25326, +25327, +25328, +25335, +25336, +25338, +25339, +25342, +25343, +25350, +25351, +25353, +25361, +25374, +25376, +25378, +25379, +25380, +25381, +25393, +25394, +25398, +25426, +25427, +25428, +25429, +25430, +25432, +25433, +25434, +25437, +25438, +25440, +25446, +25449, +25450, +25452, +25454, +25456, +25457, +25459, +25477, +25487, +25488, +25504, +25516, +25521, +25522, +25589, +25590, +25602, +25604, +25613, +25615, +25617, +25636, +25658, +25678, +25682, +25685, +25686, +25687, +25699, +25700, +25701, +25702, +25705, +25712, +25714, +25715, +25718, +25725, +25729, +25730, +25736, +25747, +25751, +25764, +25767, +25780, +25783, +25786, +25797, +25801, +25802, +25803, +25804, +25806, +25807, +25808, +25809, +25810, +25811, +25812, +25814, +25819, +25834, +25836, +25838, +25839, +25843, +25844, +25880, +25978, +25979, +25981, +25982, +25983, +26044, +26078, +26083, +26084, +26085, +26104, +26109, +26112, +26156, +26157, +26158, +26159, +26169, +26179, +26180, +26181, +26182, +26184, +26194, +26196, +26197, +26198, +26199, +26200, +26201, +26213, +26218, +26219, +26224, +26225, +26228, +26245, +26257, +26266, +26271, +26272, +26273, +26280, +26281, +26283, +26290, +26293, +26319, +26322, +26336, +26343, +26344, +26356, +26357, +26359, +26360, +26363, +26365, +26379, +26380, +26381, +26389, +26402, +26408, +26411, +26413, +26415, +26422, +26423, +26424, +26426, +26428, +26434, +26436, +26440, +26441, +26443, +26447, +26448, +26449, +26452, +26456, +26459, +26461, +26467, +26471, +26483, +26485, +26492, +26493, +26494, +26496, +26497, +26499, +26500, +26504, +26505, +26506, +26507, +26510, +26511, +26519, +26522, +26527, +26528, +26529, +26530, +26532, +26533, +26543, +26564, +26565, +26566, +26567, +26568, +26569, +26572, +26574, +26580, +26581, +26585, +26593, +26595, +26596, +26597, +26598, +26599, +26600, +26601, +26602, +26603, +26604, +26605, +26606, +26608, +26613, +26615, +26616, +26618, +26619, +26626, +26633, +26634, +26645, +26647, +26648, +26649, +26653, +26654, +26655, +26659, +26660, +26661, +26662, +26663, +26673, +26679, +26701, +26704, +26705, +26711, +26716, +26722, +26723, +26727, +26728, +26729, +26730, +26731, +26733, +26734, +26735, +26736, +26737, +26746, +26761, +26762, +26763, +26766, +26767, +26768, +26769, +26771, +26772, +26779, +26780, +26782, +26787, +26790, +26792, +26793, +26794, +26795, +26796, +26798, +26799, +26800, +26801, +26802, +26803, +26805, +26816, +26817, +26820, +26823, +26825, +26826, +26828, +26832, +26836, +26837, +26838, +26854, +26858, +26859, +26870, +26873, +26877, +26878, +26880, +26881, +26884, +26896, +26898, +26900, +26901, +26903, +26904, +26905, +26906, +26907, +26908, +26909, +26910, +26911, +26912, +26913, +26914, +26915, +26916, +26918, +26926, +26928, +26929, +26930, +26934, +26938, +26941, +26942, +26943, +26945, +26946, +26948, +26949, +26965, +26968, +26969, +26972, +26973, +26974, +26975, +26976, +26977, +26978, +26979, +26980, +26981, +26982, +26983, +26984, +26985, +27002, +27003, +27004, +27005, +27006, +27007, +27008, +27009, +27018, +27019, +27020, +27021, +27022, +27023, +27024, +27025, +27026, +27027, +27028, +27029, +27030, +27031, +27032, +27033, +27035, +27038, +27039, +27040, +27041, +27042, +27043, +27044, +27045, +27051, +27052, +27053, +27054, +27055, +27056, +27057, +27058, +27061, +27062, +27063, +27065, +27066, +27067, +27068, +27069, +27070, +27071, +27073, +27088, +27089, +27105, +27106, +27107, +27108, +27110, +27117, +27119, +27122, +27125, +27126, +27132, +27133, +27134, +27136, +27155, +27156, +27157, +27158, +27159, +27160, +27161, +27162, +27163, +27164, +27171, +27172, +27173, +27178, +27189, +27191, +27198, +27202, +27203, +27206, +27207, +27209, +27210, +27211, +27219, +27220, +27224, +27232, +27233, +27234, +27235, +27241, +27243, +27244, +27245, +27246, +27247, +27248, +27249, +27250, +27255, +27259, +27260, +27267, +27268, +27272, +27278, +27279, +27281, +27283, +27284, +27286, +27287, +27288, +27289, +27290, +27294, +27314, +27315, +27316, +27317, +27318, +27319, +27320, +27329, +27330, +27332, +27333, +27334, +27336, +27337, +27340, +27342, +27343, +27347, +27348, +27349, +27350, +27351, +27356, +27357, +27358, +27359, +27360, +27361, +27362, +27363, +27367, +27370, +27376, +27377, +27378, +27379, +27381, +27382, +27383, +27400, +27401, +27408, +27410, +27412, +27421, +27424, +27438, +27440, +27441, +27447, +27456, +27463, +27470, +27482, +27493, +27500, +27506, +27508, +27510, +27513, +27518, +27521, +27531, +27533, +27534, +27535, +27536, +27537, +27538, +27539, +27540, +27543, +27544, +27546, +27547, +27551, +27552, +27553, +27554, +27555, +27557, +27559, +27560, +27564, +27567, +27571, +27573, +27575, +27576, +27577, +27578, +27587, +27588, +27603, +27611, +27613, +27615, +27617, +27627, +27633, +27635, +27636, +27638, +27639, +27640, +27641, +27642, +27644, +27645, +27647, +27650, +27651, +27653, +27654, +27655, +27656, +27657, +27658, +27659, +27662, +27665, +27673, +27676, +27678, +27680, +27685, +27686, +27687, +27695, +27699, +27701, +27712, +27713, +27725, +27729, +27731, +27732, +27733, +27734, +27736, +27742, +27743, +27744, +27749, +27750, +27751, +27762, +27763, +27765, +27784, +27788, +27791, +27797, +27799, +27800, +27803, +27804, +27805, +27808, +27822, +27823, +27824, +27826, +27828, +27835, +27836, +27842, +27843, +27844, +27846, +27856, +27857, +27858, +27872, +27894, +27896, +27897, +27898, +27900, +27904, +27906, +27915, +27923, +27926, +27927, +27930, +27948, +27950, +27951, +27953, +27957, +27960, +27961, +27962, +27963, +27964, +27965, +27966, +27969, +27986, +27987, +27990, +28001, +28005, +28006, +28008, +28010, +28012, +28016, +28024, +28025, +28026, +28027, +28028, +28029, +28030, +28034, +28035, +28036, +28041, +28060, +28058, +28052, +28051, +28050, +28056, +28057, +28049, +28059, +28048, +28062, +28065, +28068, +28070, +28076, +28077, +28078, +28079, +28082, +28083, +28085, +28086, +28087, +28089, +28095, +28096, +28097, +28098, +28099, +28101, +28106, +28107, +28109, +28110, +28111, +28112, +28113, +28114, +28117, +28120, +28121, +28122, +28127, +28133, +28135, +28136, +28138, +28139, +28140, +28141, +28142, +28143, +28145, +28148, +28153, +28157, +28166, +28175, +28176, +28177, +28183, +28199, +28200, +28201, +28203, +28204, +28205, +28214, +28215, +28216, +28217, +28221, +28228, +28231, +28233, +28236, +28247, +28249, +28257, +28261, +28262, +28263, +28264, +28268, +28276, +28277, +28283, +28284, +28298, +28303, +28309, +28315, +28317, +28323, +28325, +28342, +28345, +28348, +28358, +28366, +28373, +28375, +28380, +28382, +28383, +28387, +28388, +28390, +28391, +28392, +28393, +28394, +28396, +28397, +28398, +28401, +28402, +28403, +28405, +28406, +28407, +28410, +28411, +28412, +28416, +28417, +28418, +28419, +28442, +28448, +28449, +28465, +28471, +28472, +28479, +28480, +28484, +28487, +28494, +28495, +28496, +28497, +28504, +28510, +28518, +28521, +28527, +28529, +28530, +28532, +28534, +28538, +28541, +28546, +28548, +28549, +28550, +28551, +28552, +28553, +28554, +28555, +28556, +28557, +28558, +28559, +28560, +28561, +28565, +28575, +28576, +28577, +28578, +28579, +28580, +28581, +28582, +28583, +28584, +28585, +28586, +28587, +28594, +28600, +28605, +28606, +28607, +28608, +28609, +28610, +28611, +28614, +28616, +28636, +28641, +28642, +28646, +28647, +28653, +28654, +28657, +28658, +28659, +28660, +28662, +28665, +28666, +28667, +28668, +28671, +28672, +28674, +28675, +28676, +28677, +28682, +28683, +28685, +28686, +28687, +28690, +28691, +28692, +28693, +28694, +28696, +28697, +28698, +28699, +28700, +28701, +28702, +28703, +28704, +28705, +28706, +28707, +28708, +28709, +28714, +28715, +28716, +28718, +28721, +28722, +28723, +28725, +28726, +28727, +28728, +28742, +28746, +28747, +28748, +28750, +28752, +28754, +28756, +28760, +28766, +28774, +28776, +28781, +28782, +28785, +28791, +28792, +28794, +28796, +28797, +28798, +28799, +28800, +28801, +28819, +28822, +28827, +28828, +28829, +28830, +28831, +28832, +28834, +28836, +28837, +28838, +28841, +28844, +28846, +28847, +28848, +28856, +28860, +28861, +28863, +28865, +28866, +28867, +28868, +28869, +28870, +28872, +28878, +28882, +28884, +28886, +28889, +28890, +28891, +28892, +28893, +28895, +28896, +28897, +28898, +28901, +28902, +28903, +28905, +28906, +28908, +28912, +28913, +28914, +28916, +28917, +28918, +28919, +28920, +28927, +28933, +28934, +28936, +28937, +28939, +28940, +28941, +28942, +28943, +28945, +28946, +28951, +28952, +28961, +28965, +28988, +28989, +28996, +29000, +29001, +29006, +29007, +29011, +29014, +29015, +29018, +29028, +29029, +29030, +29031, +29032, +29033, +29034, +29036, +29047, +29049, +29050, +29053, +29061, +29065, +29067, +29068, +29070, +29071, +29072, +29073, +29074, +29076, +29077, +29078, +29080, +29101, +29102, +29103, +29104, +29106, +29112, +29113, +29115, +29122, +29123, +29124, +29129, +29130, +29131, +29132, +29136, +29143, +29145, +29146, +29149, +29155, +29156, +29160, +29161, +29162, +29169, +29174, +29175, +29176, +29177, +29178, +29179, +29180, +29181, +29182, +29183, +29185, +29186, +29189, +29190, +29191, +29192, +29193, +29199, +29200, +29204, +29206, +29211, +29219, +29220, +29222, +29233, +29235, +29236, +29237, +29240, +29247, +29248, +29254, +29255, +29261, +29268, +29269, +29270, +29273, +29274, +29275, +29277, +29282, +29288, +29291, +29292, +29293, +29294, +29295, +29296, +29297, +29299, +29300, +29301, +29304, +29305, +29306, +29307, +29308, +29309, +29310, +29311, +29315, +29316, +29319, +29321, +29323, +29325, +29329, +29331, +29332, +29333, +29334, +29343, +29350, +29366, +29370, +29374, +29376, +29392, +29394, +29395, +29402, +29404, +29407, +29409, +29411, +29412, +29428, +29429, +29430, +29431, +29432, +29433, +29434, +29436, +29437, +29438, +29439, +29444, +29449, +29450, +29451, +29453, +29454, +29455, +29459, +29461, +29468, +29469, +29476, +29478, +29479, +29486, +29487, +29488, +29492, +29493, +29501, +29505, +29506, +29507, +29508, +29509, +29510, +29511, +29512, +29513, +29514, +29519, +29520, +29521, +29530, +29532, +29533, +29546, +29549, +29551, +29553, +29554, +29555, +29559, +29560, +29564, +29565, +29566, +29567, +29568, +29569, +29570, +29573, +29579, +29583, +29586, +29593, +29615, +29619, +29622, +29623, +29624, +29628, +29631, +29636, +29637, +29640, +29641, +29642, +29643, +29644, +29646, +29647, +29652, +29654, +29656, +29657, +29658, +29660, +29662, +29663, +29664, +29665, +29680, +29686, +29688, +29689, +29691, +29692, +29697, +29698, +29699, +29700, +29713, +29714, +29716, +29725, +29727, +29729, +29730, +29732, +29743, +29744, +29745, +29748, +29750, +29751, +29753, +29755, +29768, +29774, +29791, +29792, +29793, +29794, +29795, +29799, +29811, +29819, +29820, +29821, +29822, +29826, +29827, +29829, +29830, +29832, +29833, +29834, +29836, +29838, +29843, +29849, +29854, +29872, +29874, +29875, +29880, +29887, +29889, +29890, +29891, +29892, +29893, +29894, +29897, +29904, +29905, +29906, +29907, +29908, +29909, +29910, +29911, +29915, +29916, +29917, +29920, +29923, +29924, +29926, +29928, +29931, +29932, +29934, +29935, +29937, +29939, +29940, +29941, +29942, +29944, +29945, +29947, +29948, +29955, +29959, +29960, +29961, +29962, +29963, +29964, +29967, +29968, +29969, +29970, +29971, +29973, +29980, +29981, +29982, +29985, +29986, +29987, +29988, +29990, +29996, +30002, +30003, +30005, +30006, +30007, +30008, +30009, +30010, +30011, +30012, +30013, +30021, +30037, +30046, +30052, +30056, +30058, +30074, +30081, +30083, +30086, +30097, +30104, +30111, +30114, +30115, +30116, +30117, +30137, +30142, +30147, +30152, +30154, +30160, +30162, +30164, +30167, +30176, +30177, +30178, +30179, +30180, +30184, +30186, +30189, +30194, +30195, +30196, +30204, +30205, +30206, +30216, +30218, +30228, +30232, +30233, +30238, +30239, +30241, +30242, +30243, +30244, +30245, +30249, +30250, +30253, +30254, +30255, +30256, +30257, +30258, +30259, +30260, +30261, +30263, +30264, +30265, +30269, +30271, +30275, +30276, +30277, +30278, +30279, +30283, +30284, +30285, +30286, +30287, +30288, +30300, +30304, +30306, +30307, +30308, +30309, +30310, +30311, +30312, +30314, +30319, +30329, +30332, +30333, +30336, +30338, +30352, +30381, +30385, +30387, +30397, +30398, +30401, +30403, +30404, +30406, +30407, +30409, +30414, +30420, +30424, +30431, +30432, +30433, +30434, +30436, +30437, +30438, +30439, +30445, +30447, +30448, +30449, +30451, +30452, +30453, +30457, +30459, +30460, +30461, +30471, +30472, +30473, +30475, +30478, +30483, +30484, +30485, +30488, +30490, +30493, +30495, +30496, +30497, +30498, +30500, +30501, +30508, +30509, +30510, +30511, +30512, +30513, +30516, +30517, +30518, +30519, +30520, +30521, +30522, +30523, +30524, +30525, +30526, +30528, +30529, +30530, +30532, +30540, +30544, +30560, +30562, +30604, +30605, +30606, +30607, +30608, +30621, +30622, +30623, +30624, +30630, +30632, +30633, +30642, +30643, +30645, +30656, +30671, +30673, +30674, +30675, +30676, +30680, +30681, +30682, +30683, +30687, +30688, +30689, +30696, +30701, +30706, +30709, +30715, +30716, +30717, +30718, +30723, +30724, +30725, +30726, +30731, +30732, +30733, +30737, +30746, +30747, +30751, +30755, +30759, +30760, +30804, +30835, +30836, +30846, +30856, +30860, +30861, +30862, +30863, +30864, +30865, +30868, +30871, +30872, +30873, +30875, +30900, +30901, +30902, +30903, +30904, +30905, +30906, +30907, +30908, +30909, +30912, +30913, +30914, +30915, +30916, +30917, +30919, +30924, +30925, +30926, +30927, +30928, +30929, +30930, +30931, +30932, +30933, +30934, +30935, +30936, +30938, +30939, +30940, +30941, +30942, +30943, +30945, +30946, +30947, +30960, +30964, +30966, +30967, +30968, +30970, +30972, +30973, +30974, +30975, +30976, +30977, +30980, +30981, +30982, +30983, +30984, +30985, +30986, +30987, +30988, +30989, +30991, +30997, +30998, +30999, +31000, +31001, +31003, +31012, +31016, +31029, +31031, +31032, +31033, +31037, +31039, +31040, +31041, +31043, +31044, +31051, +31054, +31059, +31063, +31067, +31069, +31070, +31082, +31088, +31089, +31094, +31095, +31096, +31098, +31101, +31102, +31104, +31109, +31110, +31115, +31123, +31135, +31136, +31137, +31142, +31145, +31147, +31151, +31152, +31154, +31155, +31159, +31160, +31161, +31177, +31178, +31179, +31180, +31183, +31184, +31187, +31188, +31191, +31192, +31193, +31194, +31196, +31199, +31200, +31201, +31202, +31203, +31205, +31206, +31207, +31210, +31211, +31212, +31215, +31217, +31223, +31224, +31225, +31226, +31228, +31229, +31231, +31233, +31236, +31238, +31240, +31241, +31242, +31247, +31250, +31251, +31257, +31258, +31259, +31260, +31261, +31262, +31263, +31265, +31266, +31267, +31271, +31273, +31277, +31281, +31283, +31285, +31291, +31294, +31295, +31296, +31297, +31298, +31299, +31304, +31310, +31311, +31313, +31316, +31317, +31318, +31320, +31321, +31322, +31323, +31324, +31325, +31326, +31327, +31328, +31330, +31334, +31359, +31365, +31366, +31367, +31368, +31370, +31371, +31372, +31373, +31374, +31375, +31376, +31377, +31378, +31396, +31397, +31399, +31404, +31439, +31441, +31442, +31443, +31447, +31448, +31449, +31450, +31451, +31455, +31456, +31457, +31459, +31460, +31463, +31464, +31465, +31466, +31468, +31469, +31470, +31471, +31472, +31473, +31474, +31475, +31476, +31477, +31478, +31479, +31507, +31510, +31513, +31515, +31520, +31530, +31533, +31534, +31535, +31536, +31537, +31544, +31554, +31555, +31556, +31557, +31558, +31559, +31560, +31561, +31562, +31563, +31578, +31583, +31656, +31659, +31661, +31662, +31663, +31665, +31666, +31667, +31669, +31671, +31675, +31676, +31679, +31681, +31689, +31701, +31702, +31708, +31715, +31718, +31726, +31727, +31731, +31737, +31746, +31747, +31750, +31751, +31754, +31775, +31776, +31779, +31780, +31781, +31783, +31787, +31808, +31832, +31833, +31834, +31843, +31851, +31852, +31853, +31882, +31885, +31886, +31891, +31892, +31898, +31899, +31900, +31911, +31966, +31968, +32149, +32161, +32164, +32169, +32170, +32172, +32178, +32179, +32181, +32183, +32188, +32190, +32206, +32207, +32216, +32222, +32223, +32226, +32228, +32235, +32236, +32238, +32249, +32250, +32251, +32252, +32253, +32255, +32257, +32259, +32260, +32261, +32262, +32263, +32267, +32268, +32275, +32276, +32279, +32285, +32287, +32289, +32290, +32291, +32297, +32301, +32302, +32320, +32329, +32330, +32332, +32333, +32334, +32358, +32361, +32365, +32367, +32369, +32371, +32372, +32373, +32374, +32375, +32376, +32378, +32387, +32395, +32396, +32397, +32403, +32409, +32411, +32412, +32413, +32415, +32416, +32417, +32418, +32419, +32420, +32421, +32422, +32424, +32426, +32429, +32435, +32438, +32441, +32450, +32451, +32467, +32468, +32469, +32472, +32474, +32476, +32477, +32478, +32483, +32486, +32487, +32488, +32492, +32498, +32502, +32505, +32510, +32511, +32514, +32515, +32519, +32521, +32523, +32524, +32533, +32538, +32549, +32550, +32551, +32565, +32572, +32573, +32596, +32597, +32598, +32599, +32600, +32601, +32602, +32604, +32631, +32641, +32642, +32650, +32651, +32653, +32664, +32665, +32668, +32669, +32675, +32676, +32677, +32678, +32679, +32680, +32681, +32683, +32684, +32685, +32686, +32687, +32688, +32689, +32690, +32691, +32692, +32693, +32695, +32697, +32700, +32702, +32704, +32706, +32708, +32709, +32710, +32711, +32712, +32713, +32714, +32715, +32716, +32717, +32718, +32719, +32720, +32721, +32722, +32724, +32726, +32727, +32728, +32729, +32730, +32731, +32732, +32733, +32734, +32735, +32736, +32737, +32738, +32739, +32740, +32741, +32752, +32767, +32769, +32770, +32771, +32772, +32773, +32777, +32778, +32795, +32796, +32843, +32844, +32871, +33016, +33017, +33031, +33018, +33019, +33025, +33026, +33027, +32801, +32802, +32803, +32804, +32805, +32806, +32807, +32808, +32809, +32810, +32811, +32812, +32813, +32814, +32815, +32816, +32838, +32845, +32846, +32882, +32883, +32885, +32886, +32893, +32897, +32900, +32901, +32907, +32908, +32946, +32948, +32950, +32957, +33052, +33070, +33089, +33110, +33116, +33136, +33150, +33151, +33152, +33153, +33154, +33159, +33160, +33161, +33169, +33173, +33186, +33189, +33196, +33210, +33213, +33218, +33222, +33223, +33225, +33234, +33235, +33236, +33237, +33241, +33242, +33255, +33259, +33271, +33287, +33293, +33307, +33309, +33310, +33312, +33315, +33325, +33326, +33327, +33328, +33329, +33330, +33331, +33332, +33333, +33335, +33361, +33372, +33373, +33379, +33388, +33403, +33404, +33405, +33422, +33434, +33435, +33449, +33453, +33459, +33460, +33462, +33463, +33465, +33467, +33468, +33469, +33473, +33474, +33476, +33477, +33479, +33480, +33481, +33537, +33538, +33539, +33540, +33541, +33542, +33543, +33544, +33545, +33547, +33548, +33549, +33553, +33554, +33555, +33556, +33557, +33560, +33565, +33566, +33572, +33579, +33580, +33581, +33583, +33586, +33587, +33588, +33589, +33590, +33591, +33592, +33593, +33594, +33595, +33596, +33597, +33598, +33599, +33600, +33601, +33602, +33603, +33620, +33622, +33631, +33633, +33634, +33635, +33636, +33637, +33638, +33640, +33641, +33643, +33645, +33648, +33649, +33650, +33652, +33653, +33654, +33655, +33656, +33657, +33662, +33672, +33674, +33675, +33676, +33677, +33678, +33679, +33680, +33681, +33682, +33683, +33684, +33695, +33696, +33698, +33704, +33710, +33711, +33721, +33724, +33759, +33762, +33763, +33769, +33770, +33771, +33772, +33773, +33778, +33780, +33788, +33816, +33818, +33819, +33820, +33822, +33823, +33824, +33827, +33828, +33829, +33830, +33831, +33832, +33846, +33850, +33851, +33852, +33853, +33867, +33868, +33869, +33872, +33885, +33956, +33957, +33972, +33973, +33974, +33995, +33998, +33999, +34015, +34016, +34044, +34049, +34064, +34069, +34075, +34078, +34081, +34085, +34097, +34102, +34105, +34112, +34113, +34116, +34119, +34120, +34144, +34145, +34164, +34165, +34179, +34185, +34186, +34194, +34200, +34221, +34222, +34247, +34254, +34255, +34256, +34257, +34505, +35599, +35597, +35596, +35790, +35361, +35635, +35640, +35634, +35309, +35305, +35307, +35638, +35320, +35299, +35641, +35322, +35373, +35460, +35601, +35097, +34925, +35281, +34797, +34789, +35598, +35143, +35611, +35600, +34365, +34564, +35763, +34606, +34607, +34660, +34605, +36095, +36911, +36979, +35080, +35084, +35602, +34520, +34519, +34653, +34710, +35337, +34682, +34744, +34675, +34708, +35340, +34645, +34644, +34654, +34676, +34681, +34711, +34783, +35061, +35071, +35338, +35060, +35603, +34658, +35633, +35768, +34677, +34678, +34679, +34683, +34684, +34685, +34712, +34713, +34714, +34768, +34786, +34787, +35341, +35342, +35343, +35127, +35612, +35636, +35637, +36213, +36217, +36226, +36273, +36494, +36497, +36517, +36535, +36612, +36624, +36642, +36656, +36657, +36669, +36670, +36724, +36788, +36805, +36807, +36808, +36811, +36829, +36830, +36840, +36841, +36842, +36844, +36847, +36855, +36856, +36877, +36886, +36889, +36892, +36893, +36907, +36939, +36948, +36950, +36961, +36969, +36978, +36990, +36998, +37003, +37004, +37007, +37011, +37012, +37016, +37017, +37021, +37026, +37027, +37028, +37029, +37030, +37031, +37032, +37033, +37035, +37068, +37116, +37119, +37144, +37146, +37148, +37149, +37183, +37184, +37187, +37189, +37223, +37225, +37230, +37528, +37544, +37545, +37546, +37554, +37583, +37584, +37587, +37588, +37589, +37596, +37670, +37687, +37711, +37712, +37713, +37728, +37729, +37776, +37779, +37780, +37813, +37890, +37920, +37928, +37991, +37992, +37993, +37996, +38054, +38161, +38181, +38189, +38194, +38284, +38391, +38487, +38508, +38841, +38858, +37665, +37955, +37970, +37972, +37973, +38004, +38232, +37221, +37496, +37582, +37597, +37774, +38160, +37190, +37200, +36957, +36960, +36968, +36982, +37034, +37117, +37903, +37904, +36272, +36296, +36565, +38482, +38492, +38494, +37127, +37132, +37133, +37134, +38125, +38490, +36617, +37643, +37613, +37609, +37638, +37644, +37612, +37637, +37640, +37622, +37641, +37642, +37639, +36498, +38249, +38025, +38026, +37731, +37730, +37608, +37624, +37625, +37623, +37797, +37604, +37628, +37809, +37285, +38057, +38075, +38073, +38076, +38072, +38074, +38077, +38157, +38406, +38261, +38408, +38407, +38082, +38086, +38079, +38031, +38061, +38059, +38081, +38078, +38085, +38083, +38080, +38092, +38091, +38090, +38087, +38088, +38096, +38256, +38097, +38093, +38084, +38089, +38638, +35310, +38444, +38481, +38445, +38446, +38402, +38393, +38596, +38297, +37959, +38399, +38400, +38404, +38262, +38403, +38405, +38257, +38126, +38132, +38133, +38131, +38639, +38685, +38691, +38689, +38687, +38693, +38637, +35308, +38582, +38628, +38597, +38296, +37958, +38769, +38771, +38679, +38683, +38675, +38681, +38677, +37287, +38640, +38692, +38690, +38688, +38694, +38156, +35306, +38583, +38629, +38598, +38106, +37957, +38770, +38772, +38680, +38684, +38676, +38682, +38678, +42078, +35447, +34566, +34649, +34648, +34650, +35448, +35615, +35655, +35658, +35449, +35616, +35656, +35659, +35116, +38491, +37695, +37698, +37799, +38995, +40160, +40607, +36823, +38392, +38579, +35359, +38483, +38434, +38435, +38436, +38401, +38784, +38785, +37765, +39814, +39863, +40142, +40417, +40419, +40421, +40423, +40429, +38130, +38606, +38607, +38608, +38609, +38686, +38717, +39190, +39217, +39284, +39285, +39286, +39287, +39288, +39289, +39299, +39300, +39301, +39309, +39310, +39311, +39815, +39864, +39944, +39945, +40143, +40144, +40145, +40184, +40204, +40253, +40256, +40257, +40260, +40264, +40329, +40352, +40374, +40388, +40392, +40416, +40441); diff --git a/src/server/game/Entities/Creature/Creature.cpp b/src/server/game/Entities/Creature/Creature.cpp index 6afbd806e..ee8770d12 100644 --- a/src/server/game/Entities/Creature/Creature.cpp +++ b/src/server/game/Entities/Creature/Creature.cpp @@ -1703,8 +1703,8 @@ void Creature::setDeathState(DeathState s, bool despawn) m_formation->FormationReset(true); bool needsFalling = !despawn && (IsFlying() || IsHovering()) && !IsUnderWater(); - SetHover(false, false); - SetDisableGravity(false, false); + SetHover(false); + SetDisableGravity(false); if (needsFalling) GetMotionMaster()->MoveFall(0, true); @@ -1726,7 +1726,6 @@ void Creature::setDeathState(DeathState s, bool despawn) // pussywizard: if (HasUnitMovementFlag(MOVEMENTFLAG_FALLING)) RemoveUnitMovementFlag(MOVEMENTFLAG_FALLING); - UpdateEnvironmentIfNeeded(3); SetUInt32Value(UNIT_NPC_FLAGS, cinfo->npcflag); ClearUnitState(uint32(UNIT_STATE_ALL_STATE & ~(UNIT_STATE_IGNORE_PATHFINDING | UNIT_STATE_NO_ENVIRONMENT_UPD))); @@ -1734,11 +1733,12 @@ void Creature::setDeathState(DeathState s, bool despawn) Unit::setDeathState(ALIVE, despawn); - // Xinef: Load auras AFTER setting alive state - LoadCreaturesAddon(true); Motion_Initialize(); + LoadCreaturesAddon(true); if (GetCreatureData() && GetPhaseMask() != GetCreatureData()->phaseMask) SetPhaseMask(GetCreatureData()->phaseMask, false); + + UpdateEnvironmentIfNeeded(3); } } @@ -3013,7 +3013,7 @@ void Creature::SetObjectScale(float scale) if (IsPet()) combatReach = DEFAULT_COMBAT_REACH; - SetFloatValue(UNIT_FIELD_COMBATREACH, combatReach * GetFloatValue(OBJECT_FIELD_SCALE_X) * scale); + SetFloatValue(UNIT_FIELD_COMBATREACH, combatReach * scale); } void Creature::SetDisplayId(uint32 modelId) diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index fc7944eab..56badaa90 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -3671,7 +3671,7 @@ void Unit::UpdateEnvironmentIfNeeded(const uint8 option) float radiusWidth = GetCollisionRadius(); float radiusHeight = GetCollisionHeight() / 2; float radiusAvg = (radiusWidth + radiusHeight) / 2; - if (option <= 1 && GetExactDistSq(&m_last_environment_position) < radiusAvg*radiusAvg) + if (option <= 1 && GetExactDistSq(&m_last_environment_position) < radiusAvg * radiusAvg) return; m_last_environment_position.Relocate(GetPositionX(), GetPositionY(), GetPositionZ()); @@ -3687,7 +3687,8 @@ void Unit::UpdateEnvironmentIfNeeded(const uint8 option) m_is_updating_environment = false; return; } - bool canChangeFlying = option == 3 || GetMotionMaster()->GetCurrentMovementGeneratorType() != WAYPOINT_MOTION_TYPE; + + bool canChangeFlying = option == 3 || ((c->GetScriptId() == 0 || GetInstanceId() == 0) && GetMotionMaster()->GetMotionSlotType(MOTION_SLOT_CONTROLLED) == NULL_MOTION_TYPE); bool canFallGround = option == 0 && canChangeFlying && GetInstanceId() == 0 && !IsInCombat() && !GetVehicle() && !GetTransport() && !HasUnitMovementFlag(MOVEMENTFLAG_ONTRANSPORT) && !c->IsTrigger() && !c->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE) && GetMotionMaster()->GetCurrentMovementGeneratorType() <= RANDOM_MOTION_TYPE && !HasUnitState(UNIT_STATE_EVADE) && !IsControlledByPlayer(); float x = GetPositionX(), y = GetPositionY(), z = GetPositionZ(); bool isInAir = true; @@ -3747,16 +3748,17 @@ void Unit::UpdateEnvironmentIfNeeded(const uint8 option) } } + bool canUpdateEnvironment = !HasUnitState(UNIT_STATE_NO_ENVIRONMENT_UPD); + bool flyingBarelyInWater = false; // Refresh being in water if (m_last_isinwater_status) { if (!c->CanFly() || enoughWater) { - if (!HasUnitState(UNIT_STATE_NO_ENVIRONMENT_UPD) && c->CanSwim() && (!HasUnitMovementFlag(MOVEMENTFLAG_SWIMMING) || !HasUnitMovementFlag(MOVEMENTFLAG_DISABLE_GRAVITY))) + if (canUpdateEnvironment && c->CanSwim() && (!HasUnitMovementFlag(MOVEMENTFLAG_SWIMMING) || !HasUnitMovementFlag(MOVEMENTFLAG_DISABLE_GRAVITY))) { SetSwim(true); - // SetDisableGravity(true); changed = true; } isInAir = false; @@ -3770,11 +3772,9 @@ void Unit::UpdateEnvironmentIfNeeded(const uint8 option) if (!m_last_isinwater_status) { - if (!HasUnitState(UNIT_STATE_NO_ENVIRONMENT_UPD) && c->CanWalk() && HasUnitMovementFlag(MOVEMENTFLAG_SWIMMING)) + if (canUpdateEnvironment && c->CanWalk() && HasUnitMovementFlag(MOVEMENTFLAG_SWIMMING)) { SetSwim(false); - if (!c->CanFly()) // if can fly, this will be removed below if needed - SetDisableGravity(false); changed = true; } } @@ -3801,7 +3801,7 @@ void Unit::UpdateEnvironmentIfNeeded(const uint8 option) } } - if (!HasUnitState(UNIT_STATE_NO_ENVIRONMENT_UPD) && canChangeFlying) + if (canUpdateEnvironment && canChangeFlying) { // xinef: summoned vehicles are treated as always in air, fixes flying on such units if (IsVehicle() && !c->GetDBTableGUIDLow()) @@ -3822,7 +3822,6 @@ void Unit::UpdateEnvironmentIfNeeded(const uint8 option) } else if (c->CanFly() && isInAir && !c->IsFalling()) { - if (!HasUnitMovementFlag(MOVEMENTFLAG_CAN_FLY) || !HasUnitMovementFlag(MOVEMENTFLAG_DISABLE_GRAVITY)) { SetCanFly(true); @@ -3835,7 +3834,6 @@ void Unit::UpdateEnvironmentIfNeeded(const uint8 option) SetHover(false); changed = true; } - } else { @@ -3869,7 +3867,7 @@ void Unit::UpdateEnvironmentIfNeeded(const uint8 option) if (changed) propagateSpeedChange(); - if (!HasUnitState(UNIT_STATE_NO_ENVIRONMENT_UPD) && canFallGround && !c->CanFly() && !c->IsFalling() && !m_last_isinwater_status && (c->GetUnitMovementFlags() & (MOVEMENTFLAG_CAN_FLY | MOVEMENTFLAG_DISABLE_GRAVITY | MOVEMENTFLAG_HOVER | MOVEMENTFLAG_SWIMMING)) == 0 && z - ground_z > 5.0f && z - ground_z < 80.0f) + if (canUpdateEnvironment && canFallGround && !c->CanFly() && !c->IsFalling() && !m_last_isinwater_status && (c->GetUnitMovementFlags() & (MOVEMENTFLAG_CAN_FLY | MOVEMENTFLAG_DISABLE_GRAVITY | MOVEMENTFLAG_HOVER | MOVEMENTFLAG_SWIMMING)) == 0 && z - ground_z > 5.0f && z - ground_z < 80.0f) GetMotionMaster()->MoveFall(); m_is_updating_environment = false; @@ -20197,7 +20195,7 @@ float Unit::GetCollisionRadius() const float Unit::GetCollisionHeight() const { float scaleMod = GetObjectScale(); // 99% sure about this - float defaultHeight = DEFAULT_WORLD_OBJECT_SIZE * scaleMod; + float defaultHeight = DEFAULT_COLLISION_HEIGHT * scaleMod; CreatureDisplayInfoEntry const* displayInfo = sCreatureDisplayInfoStore.AssertEntry(GetNativeDisplayId()); CreatureModelDataEntry const* modelData = sCreatureModelDataStore.AssertEntry(displayInfo->ModelId); diff --git a/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp b/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp index f261cedd8..6fd98b256 100644 --- a/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp +++ b/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp @@ -48,7 +48,6 @@ bool ChaseMovementGenerator::DoUpdate(T* owner, uint32 time_diff) // the owner might be unable to move (rooted or casting), or we have lost the target, pause movement if (owner->HasUnitState(UNIT_STATE_NOT_MOVE) || HasLostTarget(owner) || (cOwner && cOwner->IsMovementPreventedByCasting())) { - i_path = nullptr; owner->StopMoving(); _lastTargetPosition.reset(); if (Creature* cOwner = owner->ToCreature()) @@ -234,7 +233,7 @@ bool FollowMovementGenerator::PositionOkay(T* owner, Unit* target, float rang if (owner->GetExactDistSq(target) > G3D::square(owner->GetCombatReach() + target->GetCombatReach() + range)) return false; - return !owner->IsPet() || !angle || angle->IsAngleOkay(target->GetRelativeAngle(owner)); // need to check - dont think we need !pet exception here because there are scripts with MoveFollow that require angle + return !angle || angle->IsAngleOkay(target->GetRelativeAngle(owner)); } template diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index eee192b94..7fbfda6d7 100644 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -2449,12 +2449,10 @@ void Spell::EffectSummonType(SpellEffIndex effIndex) TempSummonType summonType = (duration <= 0) ? TEMPSUMMON_DEAD_DESPAWN : TEMPSUMMON_TIMED_DESPAWN; - uint32 currMinionsCount = m_caster->m_Controlled.size(); - uint32 totalNumGuardians = numSummons + currMinionsCount; for (uint32 count = 0; count < numSummons; ++count) { Position pos; - if (totalNumGuardians == 1) + if (count == 0) pos = *destTarget; else // randomize position for multiple summons @@ -5069,7 +5067,7 @@ void Spell::EffectCharge(SpellEffIndex /*effIndex*/) m_caster->GetFirstCollisionPosition(pos, dist, angle); } - m_caster->GetMotionMaster()->MoveCharge(pos.m_positionX, pos.m_positionY, pos.m_positionZ); + m_caster->GetMotionMaster()->MoveCharge(pos.m_positionX, pos.m_positionY, pos.m_positionZ + Z_OFFSET_FIND_HEIGHT); } } diff --git a/src/server/scripts/EasternKingdoms/Scholomance/boss_kirtonos_the_herald.cpp b/src/server/scripts/EasternKingdoms/Scholomance/boss_kirtonos_the_herald.cpp index 50ddd2fcf..1967301fd 100644 --- a/src/server/scripts/EasternKingdoms/Scholomance/boss_kirtonos_the_herald.cpp +++ b/src/server/scripts/EasternKingdoms/Scholomance/boss_kirtonos_the_herald.cpp @@ -136,9 +136,9 @@ public: break; case INTRO_4: me->SetWalk(true); + me->SetCanFly(false); me->SetDisableGravity(false); me->CastSpell(me, SPELL_KIRTONOS_TRANSFORM, true); - me->SetCanFly(false); break; case INTRO_5: me->HandleEmoteCommand(EMOTE_ONESHOT_ROAR); diff --git a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kiljaeden.cpp b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kiljaeden.cpp index a023e0fcb..0cddeaf74 100644 --- a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kiljaeden.cpp +++ b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kiljaeden.cpp @@ -370,8 +370,8 @@ public: { if (summon->GetEntry() == NPC_ARMAGEDDON_TARGET) { - summon->SetDisableGravity(true); summon->SetCanFly(true); + summon->SetDisableGravity(true); summon->CastSpell(summon, SPELL_ARMAGEDDON_VISUAL, true); summon->SetPosition(summon->GetPositionX(), summon->GetPositionY(), summon->GetPositionZ() + 20.0f, 0.0f); summon->m_Events.AddEvent(new CastArmageddon(summon), summon->m_Events.CalculateTime(6000)); @@ -786,8 +786,8 @@ public: { if (param == ACTION_START_POST_EVENT) { - me->SetDisableGravity(false); me->SetCanFly(false); + me->SetDisableGravity(false); me->CastSpell(me, SPELL_TELEPORT_AND_TRANSFORM, true); events.ScheduleEvent(EVENT_SCENE_01, 35000); } diff --git a/src/server/scripts/Kalimdor/OnyxiasLair/boss_onyxia.cpp b/src/server/scripts/Kalimdor/OnyxiasLair/boss_onyxia.cpp index abbbb5655..1ef983fc1 100644 --- a/src/server/scripts/Kalimdor/OnyxiasLair/boss_onyxia.cpp +++ b/src/server/scripts/Kalimdor/OnyxiasLair/boss_onyxia.cpp @@ -153,7 +153,6 @@ public: me->SetReactState(REACT_AGGRESSIVE); me->SetCanFly(false); me->SetDisableGravity(false); - me->SetHover(false); me->SetSpeed(MOVE_RUN, me->GetCreatureTemplate()->speed_run, false); whelpSpam = false; @@ -277,7 +276,6 @@ public: case 13: me->SetCanFly(false); me->SetDisableGravity(false); - me->SetHover(false); me->SetSpeed(MOVE_RUN, me->GetCreatureTemplate()->speed_run, false); events.ScheduleEvent(EVENT_PHASE_3_ATTACK, 0); break; @@ -368,7 +366,6 @@ public: me->DisableSpline(); me->SetCanFly(true); me->SetDisableGravity(true); - me->SetHover(true); me->SetOrientation(OnyxiaMoveData[0].o); me->SendMovementFlagUpdate(); me->GetMotionMaster()->MoveTakeoff(11, OnyxiaMoveData[1].x + 1.0f, OnyxiaMoveData[1].y, OnyxiaMoveData[1].z, 12.0f); diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_twin_valkyr.cpp b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_twin_valkyr.cpp index 351434b85..8da2a67c3 100644 --- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_twin_valkyr.cpp +++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_twin_valkyr.cpp @@ -115,9 +115,8 @@ struct boss_twin_valkyrAI : public ScriptedAI if( IsHeroic() ) events.RescheduleEvent(EVENT_SPELL_TOUCH, urand(10000, 25000), 1); - me->SetDisableGravity(true); - me->SetHover(true); me->SetCanFly(true); + me->SetDisableGravity(true); } InstanceScript* pInstance; diff --git a/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/instance_halls_of_reflection.cpp b/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/instance_halls_of_reflection.cpp index ebe3b9d52..1d6efa5ac 100644 --- a/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/instance_halls_of_reflection.cpp +++ b/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/instance_halls_of_reflection.cpp @@ -478,8 +478,8 @@ public: { if (!c->IsAlive()) c->Respawn(); - c->SetDisableGravity(true); c->SetCanFly(true); + c->SetDisableGravity(true); c->SetVisible(true); Item* i; @@ -501,8 +501,8 @@ public: if (c->IsVisible()) { c->SetInCombatWithZone(); - c->SetDisableGravity(false); c->SetCanFly(false); + c->SetDisableGravity(false); c->GetMotionMaster()->MoveJump(fg->GetPositionX(), fg->GetPositionY(), fg->GetPositionZ(), 20.0f, 10.0f); } break; diff --git a/src/server/scripts/Northrend/FrozenHalls/PitOfSaron/pit_of_saron.cpp b/src/server/scripts/Northrend/FrozenHalls/PitOfSaron/pit_of_saron.cpp index bd8e517d9..e98458a8a 100644 --- a/src/server/scripts/Northrend/FrozenHalls/PitOfSaron/pit_of_saron.cpp +++ b/src/server/scripts/Northrend/FrozenHalls/PitOfSaron/pit_of_saron.cpp @@ -182,7 +182,6 @@ public: c->CastSpell(c, 69413, true); c->SetCanFly(true); c->SetDisableGravity(true); - c->SetHover(true); c->SendMovementFlagUpdate(); float dist = rand_norm() * 2.0f; float angle = rand_norm() * 2 * M_PI; @@ -227,7 +226,6 @@ public: continue; c->SetCanFly(false); c->SetDisableGravity(false); - c->SetHover(false); c->SendMovementFlagUpdate(); c->CastSpell(c, 69350, true); } @@ -1218,7 +1216,6 @@ public: { c->SetCanFly(true); c->SetDisableGravity(true); - c->SetHover(true); c->GetMotionMaster()->MovePoint(0, TSSindragosaPos2); } diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_queen_lana_thel.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_queen_lana_thel.cpp index 2ebeabf62..5621e9dcc 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_queen_lana_thel.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_queen_lana_thel.cpp @@ -208,7 +208,6 @@ public: minchar->SetUInt32Value(UNIT_NPC_EMOTESTATE, 0); minchar->SetCanFly(false); minchar->SetDisableGravity(false); - minchar->SetHover(false); minchar->RemoveAllAuras(); minchar->GetMotionMaster()->MoveCharge(4629.3711f, 2782.6089f, 401.5301f, SPEED_CHARGE / 3.0f); } @@ -226,7 +225,6 @@ public: me->StopMoving(); me->SetCanFly(true); me->SetDisableGravity(true); - me->SetHover(true); me->SendMovementFlagUpdate(); me->GetMotionMaster()->MovePoint(POINT_MINCHAR, mincharPos); } @@ -246,7 +244,6 @@ public: { me->SetCanFly(false); me->SetDisableGravity(false); - me->SetHover(false); _JustReachedHome(); if (bEnteredCombat) @@ -284,7 +281,6 @@ public: case POINT_GROUND: me->SetCanFly(false); me->SetDisableGravity(false); - me->SetHover(false); me->SetReactState(REACT_AGGRESSIVE); if (Unit* target = me->SelectVictim()) AttackStart(target); @@ -492,7 +488,6 @@ public: me->DisableSpline(); me->SetCanFly(true); me->SetDisableGravity(true); - me->SetHover(true); me->SendMovementFlagUpdate(); me->GetMotionMaster()->MoveTakeoff(POINT_AIR, airPos, 0.642857f * 7.0f); break; diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp index d33b5864e..924fff468 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp @@ -281,8 +281,8 @@ public: if (!_summoned) { - me->SetDisableGravity(true); me->SetCanFly(true); + me->SetDisableGravity(true); } } @@ -353,8 +353,8 @@ public: instance->SetBossState(DATA_SINDRAGOSA, FAIL); if (_summoned) { - me->SetDisableGravity(false); me->SetCanFly(false); + me->SetDisableGravity(false); } } @@ -396,7 +396,6 @@ public: me->setActive(true); me->SetCanFly(true); me->SetDisableGravity(true); - me->SetHover(true); me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE); me->SetSpeed(MOVE_RUN, 4.28571f); float moveTime = me->GetExactDist(&SindragosaFlyInPos) / (me->GetSpeed(MOVE_RUN) * 0.001f); @@ -422,9 +421,8 @@ public: { case POINT_FROSTWYRM_LAND: me->setActive(false); - me->SetDisableGravity(false); - me->SetHover(false); me->SetCanFly(false); + me->SetDisableGravity(false); me->SetSpeed(MOVE_RUN, me->GetCreatureTemplate()->speed_run); me->SetHomePosition(SindragosaLandPos); me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE); @@ -451,8 +449,8 @@ public: case POINT_LAND_GROUND: { _isInAirPhase = false; - me->SetDisableGravity(false); me->SetCanFly(false); + me->SetDisableGravity(false); me->SetSpeed(MOVE_RUN, me->GetCreatureTemplate()->speed_run); me->SetReactState(REACT_AGGRESSIVE); if (Unit* target = me->SelectVictim()) @@ -603,7 +601,6 @@ public: me->StopMoving(); me->SetCanFly(true); me->SetDisableGravity(true); - me->SetHover(true); me->SendMovementFlagUpdate(); me->GetMotionMaster()->MoveTakeoff(POINT_TAKEOFF, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ() + 20.0f, 10.0f); events.CancelEventGroup(EVENT_GROUP_LAND_PHASE); @@ -1395,7 +1392,6 @@ public: { me->SetCanFly(true); me->SetDisableGravity(true); - me->SetHover(true); } } @@ -1406,7 +1402,6 @@ public: { me->SetCanFly(false); me->SetDisableGravity(false); - me->SetHover(false); } } @@ -1451,7 +1446,6 @@ public: me->setActive(false); me->SetCanFly(false); me->SetDisableGravity(false); - me->SetHover(false); me->SetHomePosition(SpinestalkerLandPos); me->SetFacingTo(SpinestalkerLandPos.GetOrientation()); me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_IMMUNE_TO_PC); @@ -1532,7 +1526,6 @@ public: { me->SetCanFly(true); me->SetDisableGravity(true); - me->SetHover(true); } } @@ -1543,7 +1536,6 @@ public: { me->SetCanFly(false); me->SetDisableGravity(false); - me->SetHover(false); } } @@ -1590,7 +1582,6 @@ public: me->setActive(false); me->SetCanFly(false); me->SetDisableGravity(false); - me->SetHover(false); me->SetHomePosition(RimefangLandPos); me->SetFacingTo(RimefangLandPos.GetOrientation()); me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_IMMUNE_TO_PC); @@ -1599,7 +1590,6 @@ public: { me->SetCanFly(false); me->SetDisableGravity(false); - me->SetHover(false); me->SetReactState(REACT_DEFENSIVE); if (Unit* victim = me->SelectVictim()) AttackStart(victim); @@ -1644,7 +1634,6 @@ public: me->AttackStop(); me->SetCanFly(true); me->SetDisableGravity(true); - me->SetHover(true); me->SendMovementFlagUpdate(); float floorZ = me->GetMapHeight(me->GetPositionX(), me->GetPositionY(), me->GetPositionZ()); float destZ; diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_the_lich_king.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_the_lich_king.cpp index 31b7560e6..009782bda 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_the_lich_king.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_the_lich_king.cpp @@ -798,13 +798,12 @@ public: if (_phase == PHASE_OUTRO) { - if (!me->HasByteFlag(UNIT_FIELD_BYTES_1, UNIT_BYTES_1_OFFSET_ANIM_TIER, UNIT_BYTE1_FLAG_HOVER)) + if (!me->IsLevitating()) damage = me->GetHealth() > 1 ? 1 : 0; else if (damage >= me->GetHealth()) // dying... { damage = me->GetHealth() - 1; me->SetDisableGravity(false); - me->RemoveByteFlag(UNIT_FIELD_BYTES_1, UNIT_BYTES_1_OFFSET_ANIM_TIER, UNIT_BYTE1_FLAG_ALWAYS_STAND | UNIT_BYTE1_FLAG_HOVER); me->SendMonsterMove(me->GetPositionX() + 0.25f, me->GetPositionY(), 840.86f, 300, SPLINEFLAG_FALLING); me->m_positionZ = 840.86f; me->SetOrientation(0.0f); @@ -1546,7 +1545,6 @@ public: theLichKing->CastSpell((Unit*)nullptr, SPELL_SOUL_BARRAGE, TRIGGERED_IGNORE_CAST_IN_PROGRESS); sCreatureTextMgr->SendSound(theLichKing, SOUND_PAIN, CHAT_MSG_MONSTER_YELL, 0, TEXT_RANGE_NORMAL, TEAM_NEUTRAL, false); theLichKing->SetDisableGravity(true); - theLichKing->SetByteFlag(UNIT_FIELD_BYTES_1, UNIT_BYTES_1_OFFSET_ANIM_TIER, UNIT_BYTE1_FLAG_ALWAYS_STAND | UNIT_BYTE1_FLAG_HOVER); theLichKing->GetMotionMaster()->MovePoint(0, OutroFlying); _events.ScheduleEvent(EVENT_OUTRO_AFTER_SOUL_BARRAGE, 3000); @@ -2656,9 +2654,8 @@ public: break; case EVENT_MOVE_TO_DROP_POS: me->AddUnitState(UNIT_STATE_NO_ENVIRONMENT_UPD); - me->SetDisableGravity(false); - me->SetHover(false); me->SetCanFly(false); + me->SetDisableGravity(false); me->GetMotionMaster()->MovePoint(POINT_DROP_PLAYER, _destPoint, false); me->SetDisableGravity(true, true); me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE); @@ -2666,9 +2663,8 @@ public: case EVENT_MOVE_TO_SIPHON_POS: me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE); // just in case if passenger disappears so quickly that EVENT_MOVE_TO_DROP_POS is never executed { int32 bp0 = 80; me->CastCustomSpell(me, 1557, &bp0, nullptr, nullptr, true); } - me->SetDisableGravity(true); - me->SetHover(true); me->SetCanFly(true); + me->SetDisableGravity(true); me->SendMovementFlagUpdate(); me->GetMotionMaster()->MovePoint(POINT_START_SIPHON, _destPoint); break; diff --git a/src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.cpp b/src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.cpp index 6d1ebf2dd..191f16a67 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.cpp @@ -989,7 +989,6 @@ public: me->SetReactState(REACT_PASSIVE); me->SetCanFly(true); me->SetDisableGravity(true); - me->SetHover(true); me->SendMovementFlagUpdate(); } @@ -1112,7 +1111,6 @@ public: me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_IMMUNE_TO_PC | UNIT_FLAG_IMMUNE_TO_NPC); me->SetCanFly(false); me->SetDisableGravity(false); - me->SetHover(false); me->SetReactState(REACT_AGGRESSIVE); DoZoneInCombat(nullptr, 150.0f); } @@ -3048,9 +3046,8 @@ public: { npc_icc_spire_frostwyrmAI(Creature* creature) : ScriptedAI(creature) { - me->SetDisableGravity(true); - me->SetHover(true); me->SetCanFly(true); + me->SetDisableGravity(true); } EventMap events; @@ -3078,9 +3075,8 @@ public: { if (type == EFFECT_MOTION_TYPE && id == 1) { - me->SetDisableGravity(false); - me->SetHover(false); me->SetCanFly(false); + me->SetDisableGravity(false); if (Player* p = SelectTargetFromPlayerList(100.0f)) { @@ -3329,6 +3325,7 @@ public: events.ScheduleEvent(1, urand(3000, 10000)); // Crypt Scarabs events.ScheduleEvent(2, urand(15000, 25000)); // Dark Mending events.ScheduleEvent(3, urand(8000, 15000)); // Web Wrap + me->AddUnitState(UNIT_STATE_NO_ENVIRONMENT_UPD); } void MoveInLineOfSight(Unit* who) override @@ -3374,15 +3371,11 @@ public: me->SetDisableGravity(false); me->SetOrientation(0.0f); me->NearTeleportTo(me->GetPositionX(), me->GetPositionY(), me->GetPositionZ(), me->GetOrientation()); + me->ClearUnitState(UNIT_STATE_NO_ENVIRONMENT_UPD); } } } - bool CanAIAttack(const Unit* /*target*/) const override - { - return !me->IsLevitating(); - } - void UpdateAI(uint32 diff) override { if (!UpdateVictim()) @@ -3540,7 +3533,6 @@ public: if (summon->GetPositionZ() > 220.0f) { summon->SetDisableGravity(true); - summon->SetHover(true); summon->SetWalk(true); } } diff --git a/src/server/scripts/Northrend/Naxxramas/boss_sapphiron.cpp b/src/server/scripts/Northrend/Naxxramas/boss_sapphiron.cpp index cbc0f4249..41ff89338 100644 --- a/src/server/scripts/Northrend/Naxxramas/boss_sapphiron.cpp +++ b/src/server/scripts/Northrend/Naxxramas/boss_sapphiron.cpp @@ -293,7 +293,6 @@ public: me->SendMeleeAttackStop(me->GetVictim()); me->HandleEmoteCommand(EMOTE_ONESHOT_LIFTOFF); me->SetDisableGravity(true); - me->SetHover(true); currentTarget = 0; events.ScheduleEvent(EVENT_FLIGHT_ICEBOLT, 3000); iceboltCount = RAID_MODE(2, 3); @@ -377,7 +376,6 @@ public: case EVENT_LAND: me->HandleEmoteCommand(EMOTE_ONESHOT_LAND); me->SetDisableGravity(false); - me->SetHover(false); events.ScheduleEvent(EVENT_GROUND, 1500); return; case EVENT_GROUND: diff --git a/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp b/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp index 4354c5e94..585649ce5 100644 --- a/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp +++ b/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp @@ -222,7 +222,6 @@ public: me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISABLE_MOVE); me->SetCanFly(true); me->SetDisableGravity(true); - //me->SetHover(true); me->SendMovementFlagUpdate(); if (pInstance) @@ -277,7 +276,6 @@ public: case MI_POINT_INTRO_LAND: me->SetCanFly(false); me->SetDisableGravity(false); - //me->SetHover(false); events.RescheduleEvent(EVENT_START_FIGHT, 0, 1); break; case MI_POINT_VORTEX_TAKEOFF: @@ -286,7 +284,6 @@ public: case MI_POINT_VORTEX_LAND: me->SetCanFly(false); me->SetDisableGravity(false); - //me->SetHover(false); events.RescheduleEvent(EVENT_VORTEX_LAND_1, 0, 1); break; case MI_POINT_CENTER_AIR_PH_2: @@ -458,7 +455,6 @@ public: me->StopMoving(); me->SetCanFly(true); me->SetDisableGravity(true); - //me->SetHover(true); me->SendMovementFlagUpdate(); me->GetMotionMaster()->MoveTakeoff(MI_POINT_VORTEX_TAKEOFF, me->GetPositionX(), me->GetPositionY(), CenterPos.GetPositionZ() + 20.0f, 7.0f); @@ -1366,7 +1362,6 @@ public: events.ScheduleEvent(1, 9000); me->SetCanFly(true); me->SetDisableGravity(true); - me->SetHover(true); } EventMap events; diff --git a/src/server/scripts/Northrend/Nexus/Oculus/boss_eregos.cpp b/src/server/scripts/Northrend/Nexus/Oculus/boss_eregos.cpp index b161de363..6a78a0cd4 100644 --- a/src/server/scripts/Northrend/Nexus/Oculus/boss_eregos.cpp +++ b/src/server/scripts/Northrend/Nexus/Oculus/boss_eregos.cpp @@ -215,7 +215,6 @@ public: { pa->SetCanFly(true); pa->SetDisableGravity(true); - pa->SetHover(true); pa->SendMovementFlagUpdate(); pa->CastSpell(pa, SPELL_PLANAR_AURA_VISUAL, true); pa->CastSpell(pa, SPELL_PLANAR_AURA_DAMAGE, true); diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_razorscale.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_razorscale.cpp index 236f8e0b8..b6596e238 100644 --- a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_razorscale.cpp +++ b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_razorscale.cpp @@ -145,7 +145,6 @@ public: me->SetCanFly(true); me->SetDisableGravity(true); - me->SetHover(true); me->SendMovementFlagUpdate(); me->setActive(true); @@ -284,7 +283,6 @@ public: me->SetFacingTo(M_PI / 2); me->SetCanFly(false); me->SetDisableGravity(false); - me->SetHover(false); me->CastSpell(me, 62794, true); events.ScheduleEvent(EVENT_WARN_DEEP_BREATH, 30000); } @@ -498,7 +496,6 @@ public: me->StopMoving(); me->SetCanFly(true); me->SetDisableGravity(true); - me->SetHover(true); me->SendMovementFlagUpdate(); me->GetMotionMaster()->MoveTakeoff(1, CORDS_AIR, 25.0f); events.ScheduleEvent(EVENT_RESUME_FIXING, 22000); diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_ingvar_the_plunderer.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_ingvar_the_plunderer.cpp index 382cfd1f4..fe8626e5d 100644 --- a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_ingvar_the_plunderer.cpp +++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_ingvar_the_plunderer.cpp @@ -170,7 +170,6 @@ public: ValkyrGUID = s->GetGUID(); s->SetCanFly(true); s->SetDisableGravity(true); - s->SetHover(true); s->SetPosition(s->GetPositionX(), s->GetPositionY(), s->GetPositionZ() + 35.0f, s->GetOrientation()); s->SetFacingTo(s->GetOrientation()); } diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/utgarde_keep.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/utgarde_keep.cpp index 2617083c5..688b5020e 100644 --- a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/utgarde_keep.cpp +++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/utgarde_keep.cpp @@ -126,9 +126,8 @@ public: if (Creature* rider = p->ToCreature()) rider->SetHomePosition(me->GetPositionX(), me->GetPositionY(), me->GetPositionZ(), 0.25f); - me->SetDisableGravity(false); - me->SetHover(false); me->SetCanFly(false); + me->SetDisableGravity(false); me->SetFacingTo(0.25f); me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_IMMUNE_TO_PC | UNIT_FLAG_IMMUNE_TO_NPC); } @@ -139,9 +138,8 @@ public: if (type == TYPE_PROTODRAKE_AT && data == DATA_PROTODRAKE_MOVE && !_setData && me->IsAlive() && me->GetDistance(protodrakeCheckPos) < 10.0f) { _setData = true; - me->SetDisableGravity(true); - me->SetHover(true); me->SetCanFly(true); + me->SetDisableGravity(true); me->GetMotionMaster()->MovePath(PATH_PROTODRAKE, false); } } diff --git a/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_vazruden_the_herald.cpp b/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_vazruden_the_herald.cpp index 9d421c168..3815af266 100644 --- a/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_vazruden_the_herald.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_vazruden_the_herald.cpp @@ -183,8 +183,8 @@ public: { if (type == POINT_MOTION_TYPE && id == POINT_MIDDLE) { - me->SetDisableGravity(false); me->SetCanFly(false); + me->SetDisableGravity(false); events.ScheduleEvent(EVENT_RESTORE_COMBAT, 0); events.ScheduleEvent(EVENT_SPELL_CONE_OF_FIRE, 5000); if (IsHeroic())