diff --git a/data/sql/updates/pending_db_world/rev_1622194253034538200.sql b/data/sql/updates/pending_db_world/rev_1622194253034538200.sql new file mode 100644 index 000000000..f935401ad --- /dev/null +++ b/data/sql/updates/pending_db_world/rev_1622194253034538200.sql @@ -0,0 +1,7 @@ +INSERT INTO `version_db_world` (`sql_rev`) VALUES ('1622194253034538200'); + +ALTER TABLE `creature_template` ADD COLUMN `detection_range` FLOAT NOT NULL DEFAULT 20 AFTER `speed_run`; + +UPDATE `creature_template` SET `detection_range` = 1 WHERE `entry` IN (10440,28445,28910,29109,30549); +UPDATE `creature_template` SET `detection_range` = 18 WHERE `entry` IN (1,3,30,36,40,43,46,48,54,60,66,68,74,78,89,92,94,95,97,98,113,114,115,116,117,118,119,121,122,123,124,125,126,127,128,151,152,154,157,167,171,190,196,197,198,199,202,203,205,206,210,212,213,215,217,218,222,223,225,226,227,228,232,233,235,237,238,239,240,241,244,246,247,248,250,251,252,253,255,258,261,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,284,285,288,289,294,295,297,300,302,305,306,307,308,311,313,315,325,327,328,329,330,331,332,338,340,341,342,343,344,345,346,348,359,364,372,374,375,376,377,379,381,382,383,384,385,390,391,392,395,415,416,417,422,423,424,426,428,429,430,431,432,433,434,435,437,440,441,442,445,446,449,450,452,453,454,456,458,459,460,461,464,465,467,468,473,474,475,476,478,480,481,482,483,485,487,488,489,490,491,494,495,499,500,501,502,504,505,510,511,513,514,515,517,518,524,525,531,533,539,541,543,544,545,547,548,550,565,568,569,570,575,576,578,579,580,582,583,587,588,589,590,595,597,598,604,615,620,621,628,631,633,656,658,659,660,661,663,664,667,669,670,671,672,674,675,676,677,681,682,683,684,685,686,687,688,689,690,691,694,696,697,698,699,701,702,703,711,712,713,714,716,717,718,721,727,729,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,750,751,752,754,755,756,757,759,760,761,762,764,765,766,767,768,769,770,772,773,775,777,780,781,782,783,784,785,786,787,789,790,791,793,794,795,796,797,798,799,800,801,802,804,805,806,807,810,811,812,814,815,819,820,821,822,823,824,826,827,828,829,830,831,832,833,834,836,837,840,842,843,844,847,848,849,850,851,852,853,854,855,856,858,859,861,862,863,864,865,866,867,868,869,870,874,876,878,880,881,883,885,886,887,888,889,890,891,892,893,894,895,896,898,900,903,905,906,908,909,910,911,912,913,914,915,916,917,918,920,921,922,923,925,926,927,928,930,932,933,934,935,936,937,938,939,940,941,942,943,944,945,948,949,950,951,952,954,955,956,957,958,959,960,963,976,977,978,979,980,981,982,983,984,985,986,987,988,989,999,1001,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1038,1039,1040,1041,1042,1043,1044,1057,1059,1061,1062,1064,1065,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1081,1082,1083,1084,1085,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1103,1104,1105,1108,1109,1110,1111,1114,1115,1116,1117,1118,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1131,1133,1134,1135,1138,1139,1141,1142,1144,1146,1147,1148,1149,1150,1151,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1169,1172,1173,1174,1175,1176,1177,1182,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1201,1202,1203,1204,1205,1206,1207,1212,1213,1214,1215,1216,1217,1218,1222,1224,1226,1228,1229,1231,1232,1234,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1261,1263,1265,1266,1267,1268,1269,1270,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1285,1286,1287,1289,1291,1292,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1307,1308,1309,1310,1311,1312,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1358,1360,1362,1365,1366,1367,1368,1370,1371,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1385,1386,1393,1395,1397,1400,1402,1404,1405,1407,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1426,1427,1428,1429,1430,1431,1432,1433,1435,1436,1437,1439,1440,1441,1442,1443,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1487,1488,1489,1490,1491,1495,1496,1497,1498,1499,1500,1511,1514,1515,1516,1518,1519,1520,1521,1522,1523,1525,1526,1527,1528,1529,1532,1534,1535,1536,1537,1538,1539,1540,1543,1544,1545,1547,1548,1549,1550,1551,1553,1554,1555,1557,1558,1560,1561,1562,1563,1564,1565,1568,1569,1570,1632,1642,1645,1646,1650,1651,1652,1653,1654,1655,1656,1657,1658,1660,1661,1662,1664,1665,1668,1669,1670,1671,1672,1673,1674,1675,1676,1678,1679,1680,1681,1682,1683,1684,1685,1686,1687,1689,1690,1691,1692,1693,1694,1695,1697,1698,1699,1700,1701,1702,1703,1713,1718,1719,1721,1727,1733,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1749,1750,1751,1752,1753,1754,1755,1756,1764,1765,1766,1767,1768,1769,1770,1772,1773,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1787,1789,1791,1793,1794,1795,1796,1797,1800,1801,1802,1804,1806,1808,1809,1812,1813,1815,1816,1817,1821,1822,1824,1845,1854,1860,1863,1865,1866,1867,1868,1869,1870,1871,1872,1880,1901,1907,1908,1909,1912,1913,1921,1922,1923,1924,1931,1933,1934,1935,1937,1938,1939,1940,1941,1942,1943,1946,1950,1951,1952,1953,1954,1955,1956,1957,1958,1959,1960,1961,1963,1964,1965,1971,1972,1973,1974,1975,1976,1977,1978,1981,1983,1992,1993,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2017,2018,2019,2020,2021,2022,2025,2027,2029,2030,2033,2034,2038,2039,2041,2042,2043,2044,2046,2050,2051,2053,2054,2055,2056,2057,2058,2069,2070,2071,2077,2078,2079,2080,2081,2082,2083,2084,2086,2089,2092,2093,2094,2096,2097,2099,2102,2103,2104,2105,2107,2110,2111,2112,2113,2114,2115,2116,2117,2118,2119,2120,2121,2122,2123,2124,2126,2127,2128,2129,2130,2131,2132,2134,2135,2136,2137,2140,2142,2149,2150,2151,2152,2153,2155,2156,2157,2158,2159,2160,2162,2163,2164,2165,2167,2168,2169,2170,2171,2173,2174,2176,2177,2178,2179,2180,2181,2182,2183,2185,2187,2188,2189,2190,2198,2201,2202,2203,2204,2205,2206,2207,2208,2209,2210,2212,2214,2216,2224,2227,2228,2229,2230,2231,2232,2233,2234,2235,2236,2237,2238,2239,2240,2241,2242,2243,2244,2245,2246,2247,2248,2249,2250,2251,2252,2253,2260,2261,2263,2264,2265,2266,2267,2268,2269,2271,2272,2274,2275,2277,2278,2284,2285,2303,2305,2306,2307,2308,2309,2310,2311,2314,2315,2316,2317,2318,2319,2320,2321,2322,2323,2324,2326,2327,2329,2330,2331,2332,2333,2334,2335,2336,2337,2338,2347,2348,2349,2350,2351,2352,2354,2356,2357,2358,2359,2360,2361,2362,2363,2364,2365,2366,2367,2368,2369,2370,2371,2372,2373,2374,2375,2376,2377,2378,2379,2380,2381,2382,2383,2384,2385,2386,2387,2388,2390,2391,2392,2393,2394,2395,2396,2397,2398,2399,2400,2401,2402,2403,2404,2405,2406,2407,2408,2410,2411,2412,2413,2414,2415,2418,2419,2423,2427,2428,2429,2430,2431,2434,2435,2436,2437,2438,2439,2440,2442,2448,2449,2450,2451,2454,2455,2456,2457,2458,2459,2460,2461,2462,2465,2466,2468,2469,2470,2473,2474,2475,2479,2480,2481,2482,2483,2485,2486,2487,2488,2489,2490,2491,2492,2493,2494,2495,2496,2497,2498,2499,2500,2501,2502,2503,2504,2505,2506,2507,2508,2509,2510,2511,2512,2513,2514,2515,2516,2517,2518,2519,2521,2522,2523,2524,2525,2526,2527,2528,2530,2531,2532,2533,2534,2535,2536,2537,2540,2542,2543,2544,2545,2546,2547,2548,2549,2550,2551,2552,2553,2554,2555,2556,2557,2559,2560,2561,2562,2563,2564,2565,2566,2567,2572,2573,2574,2575,2577,2578,2579,2580,2581,2582,2586,2587,2589,2592,2594,2595,2596,2608,2610,2616,2618,2619,2620,2621,2622,2623,2624,2625,2626,2627,2628,2630,2634,2636,2638,2639,2640,2649,2650,2651,2652,2653,2654,2655,2656,2657,2658,2659,2663,2664,2667,2668,2669,2670,2671,2672,2673,2674,2675,2676,2678,2679,2680,2682,2683,2684,2685,2686,2687,2688,2691,2692,2693,2694,2695,2696,2697,2698,2699,2700,2701,2703,2704,2705,2706,2708,2711,2712,2713,2714,2715,2716,2717,2718,2719,2720,2721,2723,2725,2727,2728,2729,2730,2731,2732,2733,2734,2735,2736,2737,2739,2740,2742,2743,2753,2760,2761,2762,2764,2765,2766,2767,2768,2769,2770,2771,2772,2774,2775,2776,2778,2785,2786,2787,2788,2789,2790,2791,2792,2793,2795,2796,2798,2799,2801,2802,2803,2805,2806,2808,2810,2812,2814,2816,2817,2818,2819,2820,2821,2829,2830,2831,2832,2834,2836,2837,2838,2839,2840,2842,2843,2844,2845,2846,2847,2848,2849,2852,2853,2855,2856,2857,2860,2870,2876,2878,2879,2880,2881,2887,2888,2893,2894,2906,2907,2908,2909,2910,2911,2912,2913,2915,2916,2917,2918,2919,2920,2921,2922,2923,2924,2925,2926,2927,2928,2929,2930,2934,2943,2944,2945,2946,2947,2948,2949,2950,2951,2956,2957,2958,2959,2960,2962,2963,2964,2965,2967,2968,2969,2970,2971,2972,2973,2974,2980,2981,2982,2983,2984,2985,2986,2987,2988,2989,2990,2991,2992,2993,2994,2996,2997,2998,2999,3000,3001,3002,3003,3004,3005,3007,3008,3009,3010,3011,3012,3013,3014,3015,3016,3017,3018,3019,3020,3021,3022,3023,3024,3025,3026,3027,3028,3029,3030,3031,3032,3033,3034,3035,3036,3037,3038,3039,3040,3041,3042,3043,3044,3045,3046,3047,3048,3049,3050,3051,3052,3053,3054,3055,3058,3059,3060,3061,3062,3063,3064,3065,3066,3067,3069,3072,3073,3074,3075,3076,3077,3078,3079,3080,3081,3083,3085,3086,3087,3088,3089,3090,3091,3092,3093,3094,3095,3096,3097,3099,3100,3103,3104,3105,3106,3107,3108,3110,3111,3112,3113,3114,3115,3116,3117,3118,3119,3120,3121,3122,3123,3125,3126,3127,3128,3129,3130,3133,3134,3135,3136,3137,3138,3139,3140,3141,3142,3143,3144,3145,3147,3149,3150,3153,3154,3155,3156,3157,3158,3159,3160,3161,3162,3163,3164,3165,3166,3167,3168,3169,3170,3171,3172,3173,3174,3175,3177,3178,3179,3180,3181,3182,3184,3185,3186,3187,3188,3189,3190,3191,3192,3193,3194,3195,3196,3197,3198,3199,3203,3204,3205,3206,3207,3208,3209,3210,3211,3212,3213,3214,3215,3216,3217,3218,3219,3220,3221,3222,3223,3224,3225,3226,3227,3228,3230,3231,3232,3233,3234,3235,3236,3237,3238,3239,3240,3241,3242,3243,3244,3245,3246,3247,3248,3249,3250,3251,3252,3254,3255,3256,3257,3258,3260,3261,3263,3265,3266,3267,3268,3269,3271,3272,3273,3274,3275,3276,3277,3278,3279,3280,3287,3289,3290,3291,3292,3293,3294,3297,3298,3301,3304,3306,3309,3312,3313,3314,3315,3316,3317,3318,3319,3320,3321,3322,3323,3324,3325,3326,3327,3328,3329,3330,3331,3332,3333,3334,3335,3336,3337,3339,3341,3342,3344,3345,3346,3347,3348,3349,3350,3351,3352,3353,3354,3355,3356,3357,3358,3359,3360,3361,3362,3363,3364,3365,3366,3367,3368,3369,3370,3371,3372,3373,3374,3375,3376,3377,3378,3379,3380,3384,3385,3386,3387,3388,3389,3390,3391,3392,3393,3394,3395,3396,3397,3399,3400,3401,3402,3403,3404,3405,3406,3407,3408,3409,3410,3411,3412,3413,3414,3415,3416,3417,3418,3419,3421,3424,3425,3426,3428,3429,3430,3431,3432,3433,3434,3435,3436,3438,3439,3441,3442,3443,3444,3445,3446,3447,3448,3449,3450,3451,3452,3453,3454,3455,3456,3457,3458,3459,3461,3463,3464,3465,3466,3467,3468,3469,3471,3472,3473,3474,3475,3476,3477,3478,3479,3480,3481,3482,3483,3484,3485,3486,3487,3488,3489,3490,3491,3492,3493,3494,3495,3496,3497,3498,3499,3500,3503,3504,3505,3507,3508,3509,3510,3511,3512,3513,3514,3515,3517,3518,3519,3520,3521,3522,3523,3524,3527,3534,3536,3537,3538,3539,3540,3541,3542,3543,3544,3545,3546,3547,3548,3549,3550,3551,3552,3553,3554,3555,3556,3557,3560,3561,3562,3566,3567,3568,3569,3570,3572,3573,3574,3577,3578,3579,3582,3583,3584,3585,3587,3588,3589,3590,3591,3592,3593,3594,3595,3596,3597,3598,3599,3600,3601,3602,3603,3604,3605,3606,3607,3608,3609,3610,3611,3612,3613,3614,3616,3617,3619,3620,3621,3622,3624,3626,3627,3628,3629,3639,3644,3649,3650,3657,3658,3659,3660,3661,3662,3663,3664,3665,3666,3667,3679,3680,3681,3682,3683,3684,3685,3688,3689,3690,3692,3693,3694,3695,3696,3698,3700,3701,3702,3703,3704,3705,3706,3707,3708,3711,3712,3713,3715,3717,3721,3722,3732,3733,3734,3736,3737,3739,3740,3742,3743,3745,3746,3748,3749,3750,3752,3754,3755,3757,3758,3759,3762,3763,3765,3767,3770,3771,3772,3774,3779,3780,3781,3782,3783,3784,3789,3791,3797,3799,3801,3802,3803,3804,3806,3807,3808,3809,3810,3811,3812,3814,3815,3816,3817,3818,3819,3820,3821,3823,3824,3825,3833,3834,3835,3836,3837,3842,3843,3844,3845,3846,3847,3848,3880,3881,3882,3883,3884,3885,3888,3891,3892,3893,3894,3897,3898,3899,3900,3901,3902,3903,3904,3906,3907,3908,3909,3911,3912,3913,3915,3916,3917,3919,3920,3921,3922,3923,3924,3925,3926,3928,3931,3932,3933,3934,3935,3936,3937,3939,3940,3941,3942,3943,3944,3945,3946,3948,3950,3951,3952,3953,3954,3955,3956,3958,3959,3960,3961,3962,3963,3964,3965,3967,3968,3969,3970,3978,3979,3980,3981,3982,3986,3987,3994,3995,3996,3998,3999,4001,4002,4003,4004,4005,4006,4007,4008,4009,4011,4012,4013,4014,4016,4017,4018,4019,4020,4021,4022,4023,4024,4025,4026,4027,4028,4029,4031,4032,4034,4035,4036,4037,4038,4040,4041,4042,4043,4044,4046,4047,4048,4049,4051,4053,4054,4057,4059,4062,4063,4067,4068,4072,4073,4074,4076,4077,4078,4079,4080,4081,4082,4083,4084,4085,4086,4087,4088,4089,4090,4091,4092,4093,4094,4095,4096,4097,4099,4100,4101,4104,4107,4109,4110,4111,4112,4113,4114,4116,4117,4118,4119,4120,4124,4126,4127,4128,4129,4130,4131,4133,4138,4139,4140,4142,4143,4144,4146,4147,4150,4151,4154,4155,4156,4158,4159,4160,4161,4163,4164,4165,4167,4168,4169,4170,4171,4172,4173,4175,4177,4180,4181,4182,4183,4184,4185,4186,4187,4188,4189,4190,4191,4192,4193,4194,4195,4196,4197,4198,4200,4201,4202,4203,4204,4205,4208,4209,4210,4211,4212,4213,4214,4215,4216,4217,4218,4219,4220,4221,4222,4223,4225,4226,4228,4229,4230,4231,4232,4233,4234,4235,4236,4240,4241,4242,4243,4244,4248,4249,4250,4251,4252,4253,4254,4256,4258,4259,4260,4261,4263,4264,4265,4266,4269,4273,4276,4277,4305,4307,4308,4309,4310,4311,4316,4320,4323,4324,4328,4329,4331,4334,4341,4342,4343,4344,4345,4346,4347,4348,4351,4352,4355,4356,4357,4358,4359,4360,4361,4362,4363,4376,4378,4379,4382,4385,4386,4387,4388,4389,4390,4391,4392,4393,4396,4397,4398,4399,4400,4401,4402,4403,4404,4405,4408,4410,4411,4412,4413,4414,4415,4416,4419,4423,4444,4451,4452,4453,4454,4455,4456,4457,4458,4459,4460,4461,4463,4466,4467,4472,4474,4475,4479,4480,4481,4483,4484,4485,4486,4488,4489,4490,4493,4495,4496,4498,4501,4502,4503,4504,4505,4506,4507,4509,4510,4521,4544,4545,4546,4547,4548,4549,4550,4552,4553,4554,4555,4556,4557,4558,4559,4560,4561,4562,4563,4564,4565,4566,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,4606,4607,4608,4609,4610,4611,4612,4613,4614,4615,4616,4617,4618,4619,4620,4625,4627,4629,4630,4631,4632,4633,4634,4635,4636,4637,4638,4639,4640,4641,4642,4643,4644,4645,4646,4647,4648,4649,4651,4652,4653,4654,4655,4656,4657,4658,4659,4660,4661,4662,4670,4671,4672,4673,4674,4675,4676,4677,4678,4679,4680,4681,4682,4684,4685,4688,4689,4690,4692,4693,4694,4695,4696,4697,4699,4706,4707,4708,4709,4710,4711,4712,4713,4714,4715,4716,4718,4719,4720,4721,4722,4723,4726,4727,4728,4729,4730,4731,4732,4752,4753,4772,4773,4775,4778,4779,4780,4781,4782,4783,4784,4785,4786,4787,4791,4792,4794,4795,4841,4875,4876,4877,4878,4879,4880,4883,4884,4885,4886,4888,4889,4890,4891,4892,4893,4894,4895,4896,4897,4898,4899,4900,4901,4902,4921,4922,4923,4924,4926,4941,4943,4944,4945,4946,4947,4948,4950,4951,4952,4954,4958,4959,4960,4961,4962,4963,4964,4965,4966,4967,4969,4971,4972,4973,4974,4977,4980,4981,4982,4983,4984,5032,5037,5038,5040,5041,5042,5045,5046,5047,5049,5052,5053,5054,5055,5057,5058,5081,5082,5083,5087,5088,5089,5090,5091,5092,5093,5094,5095,5096,5097,5099,5100,5101,5102,5103,5106,5107,5108,5109,5110,5111,5112,5113,5114,5115,5116,5117,5119,5120,5121,5122,5123,5124,5125,5126,5127,5128,5129,5130,5132,5133,5137,5138,5140,5141,5142,5143,5144,5145,5146,5147,5148,5149,5150,5151,5152,5153,5154,5155,5156,5157,5158,5159,5160,5161,5162,5163,5164,5165,5166,5167,5169,5170,5171,5172,5173,5174,5175,5177,5178,5188,5189,5190,5191,5193,5194,5195,5196,5197,5198,5199,5200,5202,5204,5229,5232,5234,5236,5237,5238,5239,5240,5241,5244,5245,5246,5247,5249,5251,5253,5254,5255,5258,5260,5262,5268,5272,5274,5276,5278,5286,5287,5288,5292,5293,5295,5296,5297,5299,5300,5304,5305,5306,5307,5308,5327,5328,5331,5332,5333,5334,5335,5336,5337,5353,5362,5363,5364,5366,5384,5385,5386,5387,5388,5389,5390,5391,5392,5393,5394,5395,5396,5397,5398,5404,5405,5406,5407,5409,5411,5412,5413,5414,5416,5418,5419,5420,5421,5422,5423,5424,5425,5426,5427,5428,5429,5430,5431,5441,5450,5451,5452,5453,5454,5455,5456,5457,5458,5459,5460,5461,5462,5464,5465,5471,5472,5473,5474,5475,5476,5477,5479,5480,5481,5482,5483,5484,5485,5489,5490,5491,5492,5493,5494,5495,5496,5497,5498,5499,5500,5501,5502,5503,5504,5505,5506,5508,5509,5510,5511,5512,5513,5514,5515,5516,5517,5518,5519,5520,5523,5543,5546,5547,5564,5565,5566,5567,5569,5570,5591,5592,5593,5594,5597,5598,5599,5600,5601,5602,5603,5605,5606,5607,5608,5609,5610,5611,5612,5613,5614,5615,5616,5617,5618,5620,5622,5623,5624,5634,5635,5636,5637,5638,5639,5640,5641,5642,5643,5644,5651,5653,5654,5655,5656,5657,5658,5659,5660,5661,5662,5663,5664,5665,5666,5667,5668,5669,5670,5674,5675,5676,5677,5679,5682,5683,5685,5686,5687,5688,5690,5691,5692,5693,5694,5695,5696,5697,5698,5699,5700,5701,5702,5703,5704,5705,5706,5707,5723,5724,5725,5726,5727,5728,5729,5730,5731,5732,5733,5734,5739,5741,5742,5743,5744,5747,5748,5749,5750,5752,5753,5754,5757,5758,5759,5765,5766,5767,5768,5769,5770,5771,5772,5773,5781,5783,5784,5792,5806,5810,5811,5812,5814,5815,5816,5817,5819,5820,5821,5839,5840,5850,5852,5853,5854,5855,5856,5857,5858,5870,5871,5873,5874,5875,5878,5879,5880,5881,5882,5883,5884,5885,5886,5887,5888,5891,5892,5893,5894,5895,5898,5899,5900,5901,5902,5905,5906,5907,5908,5909,5910,5911,5913,5917,5918,5919,5920,5921,5922,5923,5925,5926,5927,5929,5938,5939,5940,5941,5942,5943,5944,5946,5947,5948,5949,5950,5951,5955,5957,5958,5974,5975,5976,5977,5978,5979,5981,5982,5983,5984,5985,5988,5990,5991,5992,5993,5994,5997,6001,6010,6011,6012,6013,6014,6015,6016,6017,6018,6019,6020,6027,6028,6030,6031,6033,6034,6047,6066,6068,6069,6070,6071,6072,6073,6075,6076,6089,6090,6091,6093,6094,6110,6111,6112,6113,6114,6116,6117,6119,6120,6121,6122,6123,6124,6125,6126,6127,6128,6133,6135,6136,6137,6138,6139,6141,6142,6145,6166,6167,6169,6170,6171,6172,6173,6174,6175,6176,6177,6178,6179,6180,6181,6182,6184,6185,6186,6187,6188,6189,6190,6193,6194,6195,6196,6198,6199,6200,6201,6202,6207,6221,6224,6236,6238,6241,6244,6245,6246,6247,6248,6250,6251,6252,6253,6254,6266,6267,6268,6271,6272,6286,6287,6288,6289,6290,6291,6292,6293,6294,6295,6297,6298,6299,6300,6301,6306,6328,6347,6348,6349,6350,6351,6352,6366,6367,6369,6370,6371,6372,6373,6374,6375,6376,6377,6378,6379,6380,6382,6386,6387,6388,6389,6390,6393,6394,6395,6408,6410,6411,6412,6446,6466,6467,6491,6492,6494,6495,6496,6497,6505,6506,6507,6508,6509,6510,6511,6512,6513,6514,6516,6517,6518,6519,6520,6521,6522,6527,6546,6547,6548,6550,6551,6552,6553,6554,6555,6556,6557,6559,6566,6567,6568,6569,6570,6571,6572,6573,6574,6575,6576,6577,6579,6586,6606,6607,6626,6653,6666,6667,6668,6670,6707,6727,6728,6729,6730,6731,6732,6734,6735,6736,6737,6738,6739,6740,6741,6746,6747,6749,6766,6768,6774,6775,6776,6777,6778,6779,6780,6781,6782,6784,6785,6786,6787,6788,6790,6791,6806,6807,6826,6846,6866,6867,6868,6886,6887,6909,6911,6912,6913,6927,6928,6929,6930,6932,6946,6966,6986,6987,7007,7010,7011,7012,7024,7025,7026,7027,7028,7029,7031,7032,7033,7034,7035,7036,7037,7038,7039,7047,7048,7049,7050,7051,7052,7055,7056,7067,7068,7069,7072,7073,7074,7075,7076,7077,7078,7086,7087,7088,7089,7091,7092,7093,7097,7098,7099,7100,7101,7105,7106,7107,7108,7109,7110,7111,7125,7126,7132,7138,7139,7149,7153,7154,7155,7156,7157,7158,7161,7166,7167,7168,7172,7175,7207,7208,7209,7226,7230,7231,7232,7234,7235,7266,7269,7276,7287,7292,7293,7294,7295,7296,7297,7298,7307,7308,7309,7310,7311,7312,7313,7315,7316,7317,7318,7319,7323,7324,7325,7333,7334,7340,7343,7344,7346,7349,7360,7363,7364,7365,7366,7367,7368,7369,7370,7371,7372,7376,7379,7386,7387,7389,7390,7391,7392,7394,7395,7396,7397,7398,7399,7400,7402,7403,7404,7405,7406,7407,7408,7409,7411,7412,7413,7414,7415,7416,7423,7424,7425,7430,7431,7432,7433,7434,7438,7439,7440,7441,7442,7443,7444,7445,7446,7447,7448,7449,7450,7451,7452,7453,7454,7455,7456,7457,7458,7459,7460,7464,7465,7466,7467,7468,7469,7483,7484,7485,7486,7487,7489,7503,7504,7505,7506,7507,7508,7509,7523,7524,7527,7543,7544,7545,7546,7547,7548,7549,7550,7551,7552,7553,7554,7555,7556,7558,7559,7560,7561,7562,7564,7565,7566,7567,7568,7569,7570,7572,7583,7584,7603,7623,7643,7683,7704,7706,7707,7708,7709,7710,7711,7712,7713,7714,7724,7725,7726,7727,7729,7731,7732,7733,7736,7737,7738,7739,7740,7744,7749,7750,7763,7764,7765,7766,7767,7768,7769,7770,7771,7772,7773,7774,7775,7776,7777,7778,7779,7780,7783,7784,7785,7786,7787,7788,7790,7792,7793,7794,7798,7799,7801,7802,7803,7804,7805,7806,7807,7808,7809,7825,7826,7844,7845,7847,7848,7849,7850,7852,7853,7854,7863,7864,7866,7867,7868,7869,7870,7871,7876,7877,7878,7879,7880,7881,7882,7883,7884,7885,7886,7897,7898,7900,7902,7903,7904,7907,7915,7916,7917,7918,7936,7940,7941,7942,7943,7944,7945,7946,7947,7948,7949,7950,7951,7952,7953,7954,7955,7956,7957,7976,7978,7997,8017,8021,8022,8023,8024,8025,8026,8035,8055,8115,8116,8117,8118,8119,8121,8122,8123,8124,8125,8126,8128,8129,8131,8136,8137,8138,8139,8140,8141,8142,8143,8144,8145,8146,8150,8151,8152,8153,8155,8157,8158,8159,8160,8161,8176,8177,8178,8179,8236,8256,8257,8276,8284,8305,8306,8307,8308,8309,8310,8311,8318,8319,8320,8324,8337,8338,8356,8357,8358,8359,8360,8361,8362,8363,8364,8376,8378,8379,8380,8381,8382,8385,8387,8388,8390,8392,8393,8394,8395,8396,8397,8398,8399,8401,8403,8404,8405,8408,8409,8416,8417,8418,8420,8421,8436,8437,8439,8441,8444,8446,8477,8478,8496,8505,8506,8507,8508,8509,8510,8516,8517,8519,8520,8521,8522,8523,8524,8525,8526,8527,8528,8529,8530,8531,8532,8534,8535,8538,8539,8540,8541,8542,8543,8544,8556,8557,8558,8563,8564,8565,8576,8578,8579,8581,8582,8583,8584,8585,8586,8587,8588,8596,8597,8598,8600,8601,8602,8603,8605,8606,8607,8608,8611,8612,8615,8616,8617,8656,8657,8658,8659,8661,8662,8664,8665,8666,8667,8668,8669,8670,8671,8672,8673,8674,8675,8678,8679,8681,8696,8719,8720,8721,8722,8723,8724,8736,8737,8738,8759,8760,8761,8762,8763,8764,8766,8767,8776,8816,8836,8837,8856,8876,8877,8878,8879,8884,8886,8887,8888,8921,8922,8927,8931,8934,8937,8956,8957,8958,8959,8960,8961,8962,8963,8965,8977,8980,8996,8997,9047,9076,9077,9078,9079,9080,9081,9082,9083,9084,9085,9086,9087,9099,9116,9117,9118,9119,9136,9157,9162,9163,9164,9165,9166,9167,9176,9177,9178,9179,9238,9256,9270,9271,9272,9273,9274,9296,9297,9298,9299,9316,9317,9318,9336,9356,9377,9396,9397,9416,9436,9453,9454,9462,9464,9465,9467,9477,9496,9498,9501,9503,9517,9518,9523,9524,9527,9528,9529,9536,9538,9539,9540,9542,9544,9546,9548,9549,9550,9551,9552,9553,9555,9556,9558,9559,9560,9561,9562,9563,9564,9565,9566,9584,9598,9599,9601,9605,9616,9618,9619,9620,9621,9622,9623,9636,9637,9657,9660,9662,9676,9683,9684,9687,9688,9689,9690,9691,9694,9695,9696,9697,9698,9699,9700,9701,9705,9706,9707,9708,9776,9777,9778,9779,9796,9836,9856,9857,9858,9859,9860,9861,9862,9876,9877,9878,9879,9916,9936,9937,9956,9976,9977,9978,9979,9980,9981,9982,9983,9984,9985,9986,9987,9988,9989,9990,9996,9997,9998,9999,10016,10017,10036,10037,10038,10040,10041,10042,10045,10046,10047,10048,10049,10050,10051,10052,10053,10054,10055,10056,10057,10058,10059,10060,10061,10062,10063,10079,10085,10086,10088,10089,10090,10118,10136,10157,10158,10159,10160,10161,10176,10177,10180,10183,10216,10217,10218,10219,10221,10259,10260,10261,10266,10267,10276,10277,10278,10290,10293,10300,10301,10302,10303,10304,10305,10306,10307,10323,10361,10369,10370,10373,10375,10377,10378,10379,10380,10383,10387,10388,10389,10411,10427,10428,10431,10445,10455,10456,10459,10460,10467,10468,10479,10480,10481,10482,10485,10537,10539,10541,10556,10557,10577,10578,10580,10582,10598,10599,10600,10604,10606,10610,10611,10612,10616,10617,10618,10619,10636,10637,10638,10645,10648,10656,10657,10658,10659,10660,10661,10665,10666,10667,10668,10676,10678,10682,10684,10685,10696,10697,10698,10699,10716,10717,10718,10719,10720,10739,10756,10757,10778,10779,10780,10781,10782,10783,10784,10785,10786,10787,10788,10789,10790,10791,10792,10793,10794,10795,10796,10797,10798,10799,10800,10801,10803,10804,10805,10816,10836,10837,10838,10839,10840,10856,10857,10876,10877,10878,10879,10880,10881,10896,10902,10903,10904,10905,10916,10917,10918,10920,10921,10922,10923,10924,10925,10926,10927,10928,10930,10936,10940,10941,10943,10945,10951,10952,10955,10956,10976,10977,10978,10979,10980,10993,11016,11017,11018,11019,11020,11024,11025,11026,11027,11028,11029,11031,11033,11034,11035,11036,11037,11038,11039,11040,11041,11042,11044,11046,11047,11048,11049,11050,11051,11052,11053,11055,11056,11057,11063,11065,11066,11067,11068,11069,11070,11071,11072,11073,11074,11075,11076,11077,11078,11079,11081,11083,11084,11096,11097,11098,11100,11101,11103,11104,11105,11106,11116,11117,11118,11119,11122,11136,11137,11140,11145,11146,11147,11150,11151,11152,11153,11154,11155,11156,11176,11177,11178,11179,11181,11182,11183,11184,11185,11186,11187,11188,11189,11190,11191,11192,11193,11196,11199,11200,11216,11217,11218,11219,11236,11258,11259,11260,11263,11276,11278,11281,11282,11283,11285,11286,11287,11290,11291,11316,11317,11325,11326,11327,11328,11360,11368,11378,11387,11388,11389,11390,11391,11397,11401,11406,11407,11437,11438,11460,11476,11477,11516,11536,11546,11547,11548,11552,11553,11554,11555,11556,11557,11558,11559,11560,11561,11562,11563,11564,11576,11577,11578,11596,11608,11609,11610,11611,11613,11614,11615,11616,11623,11624,11625,11626,11627,11628,11629,11684,11685,11686,11687,11690,11696,11697,11699,11700,11701,11702,11703,11704,11705,11706,11707,11708,11709,11710,11711,11712,11713,11714,11715,11716,11717,11718,11720,11727,11735,11736,11737,11738,11739,11740,11741,11744,11745,11746,11747,11748,11749,11750,11751,11752,11753,11754,11755,11756,11757,11758,11776,11783,11795,11796,11797,11798,11799,11800,11801,11802,11803,11804,11805,11806,11807,11808,11810,11811,11812,11813,11814,11815,11816,11817,11818,11819,11820,11821,11823,11824,11825,11826,11827,11828,11829,11833,11834,11835,11836,11856,11857,11858,11859,11860,11861,11862,11863,11864,11872,11873,11874,11875,11876,11877,11884,11886,11914,11915,11916,11917,11918,11936,11937,11939,11940,11941,11942,11943,11944,11945,11956,11957,11979,11994,11996,12019,12021,12022,12023,12024,12025,12026,12027,12028,12029,12030,12031,12032,12033,12034,12042,12043,12045,12046,12120,12136,12137,12138,12140,12141,12144,12145,12146,12147,12150,12152,12178,12179,12196,12199,12202,12208,12216,12217,12218,12244,12245,12246,12247,12248,12249,12250,12251,12252,12253,12254,12255,12256,12257,12261,12276,12277,12296,12297,12298,12299,12319,12320,12321,12322,12336,12340,12341,12342,12343,12344,12347,12348,12351,12352,12353,12354,12355,12356,12357,12358,12359,12360,12361,12362,12363,12364,12365,12367,12368,12369,12370,12371,12372,12373,12375,12376,12377,12378,12381,12382,12383,12384,12385,12387,12418,12419,12423,12426,12427,12428,12429,12430,12434,12473,12480,12481,12576,12581,12656,12657,12658,12676,12677,12678,12696,12716,12717,12718,12719,12720,12721,12722,12723,12724,12736,12738,12757,12758,12759,12776,12777,12778,12779,12780,12781,12782,12783,12784,12785,12786,12787,12788,12789,12790,12791,12792,12793,12794,12795,12796,12797,12798,12799,12805,12807,12816,12818,12819,12837,12858,12860,12861,12862,12863,12864,12866,12867,12877,12898,12903,12904,12918,12919,12920,12921,12922,12923,12924,12925,12936,12937,12938,12939,12940,12941,12942,12943,12944,12956,12957,12958,12959,12960,12961,12962,12976,12977,12996,12997,12998,13016,13017,13018,13022,13036,13076,13136,13148,13157,13158,13159,13220,13276,13277,13279,13283,13301,13338,13417,13418,13420,13429,13430,13431,13432,13433,13434,13435,13436,13444,13445,13456,13476,13477,13599,13619,13620,13636,13656,13696,13698,13699,13717,13736,13737,13743,13756,13778,13796,13836,13837,13842,13843,13876,13916,13917,13936,14022,14023,14024,14025,14041,14081,14121,14122,14123,14182,14183,14301,14305,14306,14307,14309,14310,14311,14312,14329,14330,14331,14332,14333,14334,14335,14337,14338,14350,14355,14356,14361,14362,14366,14370,14372,14373,14374,14385,14386,14395,14396,14397,14400,14421,14422,14434,14436,14437,14443,14444,14449,14450,14451,14453,14455,14458,14459,14460,14462,14463,14465,14466,14469,14470,14480,14481,14482,14489,14495,14497,14498,14499,14500,14501,14504,14508,14514,14522,14523,14539,14540,14541,14542,14543,14544,14545,14546,14547,14548,14549,14550,14551,14552,14553,14554,14555,14556,14557,14558,14560,14561,14562,14563,14564,14566,14567,14568,14581,14602,14603,14604,14606,14623,14624,14625,14626,14627,14628,14629,14630,14631,14632,14633,14634,14637,14638,14639,14640,14645,14646,14661,14662,14663,14664,14666,14667,14668,14722,14723,14724,14725,14726,14727,14728,14729,14731,14732,14736,14737,14738,14739,14740,14741,14742,14743,14748,14751,14752,14755,14756,14757,14758,14761,14822,14826,14827,14828,14829,14832,14833,14841,14842,14843,14844,14845,14846,14847,14850,14857,14859,14860,14864,14866,14867,14868,14871,14872,14873,14874,14878,14879,14884,14892,14893,14894,14901,14908,14909,14961,14962,14963,14964,14983,14984,14986,14987,14989,14994,15001,15002,15003,15004,15005,15010,15011,15012,15021,15022,15041,15061,15062,15065,15066,15069,15071,15072,15073,15077,15078,15079,15090,15091,15101,15104,15109,15112,15116,15117,15119,15124,15125,15131,15135,15136,15137,15138,15140,15141,15164,15165,15168,15169,15170,15171,15172,15174,15175,15176,15179,15180,15183,15186,15187,15188,15189,15190,15191,15194,15200,15202,15214,15216,15217,15218,15221,15222,15261,15270,15282,15293,15300,15303,15304,15306,15309,15310,15313,15314,15315,15316,15317,15333,15349,15350,15351,15353,15354,15361,15363,15364,15368,15374,15394,15395,15415,15419,15425,15426,15428,15429,15436,15441,15454,15463,15464,15466,15498,15499,15507,15514,15520,15524,15526,15545,15546,15549,15553,15555,15556,15557,15558,15559,15560,15561,15562,15563,15564,15565,15566,15567,15568,15569,15570,15572,15573,15574,15575,15576,15577,15578,15579,15581,15582,15583,15584,15585,15586,15587,15588,15590,15592,15593,15594,15595,15596,15597,15598,15599,15600,15601,15602,15603,15604,15605,15606,15607,15624,15631,15659,15660,15661,15664,15665,15666,15667,15675,15676,15677,15678,15679,15681,15682,15683,15684,15686,15695,15698,15699,15705,15706,15710,15711,15712,15713,15714,15715,15716,15717,15720,15721,15722,15725,15726,15730,15731,15732,15733,15734,15735,15736,15737,15738,15739,15745,15746,15760,15761,15762,15763,15764,15765,15766,15767,15768,15778,15780,15781,15782,15783,15784,15785,15786,15787,15788,15789,15790,15791,15792,15793,15794,15795,15797,15798,15799,15800,15801,15802,15803,15809,15839,15840,15841,15842,15843,15844,15845,15846,15847,15848,15849,15850,15851,15864,15865,15867,15871,15872,15873,15874,15875,15876,15877,15878,15879,15880,15881,15882,15883,15884,15885,15886,15887,15888,15889,15890,15893,15894,15895,15896,15897,15898,15901,15902,15904,15909,15910,15911,15912,15913,15914,15915,15916,15918,15922,15925,15933,15957,15962,15964,15972,16001,16002,16003,16004,16005,16006,16007,16008,16009,16012,16013,16014,16015,16016,16030,16031,16032,16033,16043,16044,16045,16046,16047,16048,16066,16069,16070,16075,16076,16079,16082,16085,16086,16090,16092,16093,16094,16095,16100,16103,16104,16105,16106,16107,16108,16109,16110,16111,16117,16119,16121,16123,16129,16136,16137,16141,16166,16172,16211,16212,16218,16229,16230,16241,16255,16256,16281,16283,16284,16285,16298,16299,16306,16336,16338,16356,16359,16361,16369,16372,16373,16374,16376,16384,16386,16394,16395,16398,16399,16400,16401,16416,16417,16418,16420,16421,16422,16423,16430,16431,16433,16434,16435,16436,16437,16438,16445,16458,16478,16479,16484,16490,16493,16494,16495,16508,16509,16510,16512,16513,16531,16543,16547,16548,16549,16592,16606,16697,16701,16779,16786,16787,16979,16980,16985,16986,16987,16988,16989,16990,16998,17003,17025,17038,17049,17050,17051,17066,17068,17070,17074,17079,17080,17081,17082,17090,17231,17252,17255,17266,17286,17598,17635,17647,17688,17689,17690,17691,17696,17697,17698,17699,17794,17795,17804,17895,17897,17898,17932,17936,17937,17967,17995,17996,18180,19405,20342,20344,20355,20363,20365,20368,20370,20377,20378,20419,20433,21992,21994,21995,22203,22515,23876,24248,24320,24446,24477,24667,24668,24671,24672,25225,25439,25462,26124,26393,26394,26396,26397,26525,26527,27222,27223,27856,27915,27986,28244,28451,28498,28619,28635,28765,28804,28987,29110,29157,29178,29179,29180,29183,29220,29259,29264,29394,30187,30443,30555,30556,30557,30558,30565,30997,31013,31045,31083,31301,31420,31421,31422,31423,31424,31425,31427,31429,31430,31433,31802,32184,32249,32379,32381,32382,32383,32443,32537,32615,32626,33441,33686,33782,33863,34000,34001,34036,34037,34038,34039,34040,34043,34073,34074,34075,34079,34080,34081,34156,34686,34687,35179,35180,35322,35445,35459,35644,35877,36557,36737,36848,36954,37063,37181,37226,37810,37857,37887,37944,37994,38028,38039,38040,38041,38042,38043,38044,38045,38153,38182,38500,38867,39633,39647,40231,40425,40502,14187,11998,15139,603,14848,14186,11997,13816,13817,4255,12097,3343,5134,5139,4257,3625,10367,12096,5135,10364,2225,13086,13079,13088,11657,11677,13078,14188,14185,10990,13317,13316,10981,14282,13396,13397,11600,11602,10987,13448,11678,10986,11675,13676,13618,14283,11603,11604,11605,10982,11840,11839,10991,11838,11837,14274,15956,16698,17055,16142,16385,16363,16390,16124,16474,16286,16486,10646,27734,34191,35610,36070,11262,36597,37698,14681,20434,15107,14496,3989,3991,4070,20424,2975,3381,11598,5889,5890,11030,8933,3131,5763,5043,5896,4075,10441,4166,5774,8883,8926,1434,8881,2339,15201,4953,2914,4979,5085,4996,4995,6237,8928,5595,37775,1914,1888,1915,1889,2976,2979,2978,3283,3285,3284,3993,3992,3988,14965,5736,5680,5735,5681,2977,5738,3725,3728,3730,3727,3501,8016,5914,3296,18950,31416,37869,38050,6748,3382,3383,5044,6087,8015,12160,12896,12897,6086,3571,15373,5897,6249,6240,1949,4430,6368,7071,7070,6771,13321,8885,5996,5998,5999,6000,6002,6003,6006,6004,6009,6008,6005,7668,7670,7671,7669,1211,5568,6222,7857,15375,7855,7856,7858,15685,7899,7901,7843,7939,3502,4624,15724,4429,3282,3286,8096,8147,8154,10390,11197,8389,8402,5844,15692,5846,8442,5843,6007,7865,8566,8637,14635,9545,9547,8915,8896,8902,8897,8900,9600,8904,8917,8920,8932,8925,11789,8916,8901,10116,10117,3084,37860,10262,10391,5952,5953,7730,10461,14881,38228,10316,10536,16068,10603,8882,2098,10721,7975,9525,10758,10760,10761,10759,10919,1530,1831,1826,1833,1884,1883,4494,28608,28895,10605,1835,10950,10947,10948,8547,8546,8551,8550,8553,8562,8561,8560,10399,11099,15108,16511,11180,11054,11064,4700,4702,4701,10988,11521,11288,11289,8548,15219,11277,11280,11279,11296,7113,7114,7115,7112,7118,7120,4665,4663,4666,4705,13019,4664,4667,4668,9460,14486,11194,2211,11621,11637,11636,7401,11822,11880,11882,11881,11883,11887,11681,14718,11680,11912,11910,11911,11913,12047,12048,12127,12052,12053,11620,12338,12856,13000,12051,12859,13160,13327,13324,13333,13331,13326,13325,13335,12050,13328,13332,13329,13336,13334,13330,13337,13080,13098,13089,13422,13427,13421,13428,13424,13425,13426,13358,13359,13099,13081,13548,13546,13097,13547,13537,13096,13538,13539,13536,13534,13535,13543,13544,13545,13087,13551,13549,13550,13540,13541,13542,13552,13553,13554,13555,13556,13557,12380,12379,31417,32367,14304,35460,7980,14484,14485,14493,16225,16232,4262,37790,14622,14849,14869,15045,15046,15063,15064,15074,15075,15086,15087,15089,15113,15115,14990,15106,15105,14991,15102,15103,15110,15163,15260,15213,15423,15475,15476,15542,15663,15696,15723,15694,15719,15838,15835,15729,15832,15917,15892,15891,15905,15906,15908,15907,16228,16371,16377,16781,17041,17048,3879,5184,4834,27335,27290,29897,26183,14734,14730,6789); +UPDATE `creature_template` SET `detection_range` = 10 WHERE `entry` IN (6,38,80,103,257,358,704,705,706,707,708,724,808,946,1501,1503,1504,1505,1506,1507,1508,1509,1512,1513,1667,1688,1890,1916,1917,1918,1919,1984,1985,1986,1988,1989,1994,2031,2032,2952,2953,2954,2955,2966,3098,3101,3102,3124,3183,2961,3229,3281,8554,12204,12205,3300,8386); diff --git a/src/server/database/Database/Implementation/WorldDatabase.cpp b/src/server/database/Database/Implementation/WorldDatabase.cpp index 98fdcc75a..2ebac78c6 100644 --- a/src/server/database/Database/Implementation/WorldDatabase.cpp +++ b/src/server/database/Database/Implementation/WorldDatabase.cpp @@ -65,7 +65,7 @@ void WorldDatabaseConnection::DoPrepareStatements() PrepareStatement(WORLD_SEL_WAYPOINT_SCRIPT_ID_BY_GUID, "SELECT id FROM waypoint_scripts WHERE guid = ?", CONNECTION_SYNCH); PrepareStatement(WORLD_DEL_CREATURE, "DELETE FROM creature WHERE guid = ?", CONNECTION_ASYNC); PrepareStatement(WORLD_SEL_COMMANDS, "SELECT name, security, help FROM command", CONNECTION_SYNCH); - PrepareStatement(WORLD_SEL_CREATURE_TEMPLATE, "SELECT entry, difficulty_entry_1, difficulty_entry_2, difficulty_entry_3, KillCredit1, KillCredit2, modelid1, modelid2, modelid3, modelid4, name, subname, IconName, gossip_menu_id, minlevel, maxlevel, exp, faction, npcflag, speed_walk, speed_run, scale, `rank`, dmgschool, DamageModifier, BaseAttackTime, RangeAttackTime, BaseVariance, RangeVariance, unit_class, unit_flags, unit_flags2, dynamicflags, family, trainer_type, trainer_spell, trainer_class, trainer_race, type, type_flags, lootid, pickpocketloot, skinloot, PetSpellDataId, VehicleId, mingold, maxgold, AIName, MovementType, InhabitType, HoverHeight, HealthModifier, ManaModifier, ArmorModifier, RacialLeader, movementId, RegenHealth, mechanic_immune_mask, spell_school_immune_mask, flags_extra, ScriptName FROM creature_template WHERE entry = ?", CONNECTION_SYNCH); + PrepareStatement(WORLD_SEL_CREATURE_TEMPLATE, "SELECT entry, difficulty_entry_1, difficulty_entry_2, difficulty_entry_3, KillCredit1, KillCredit2, modelid1, modelid2, modelid3, modelid4, name, subname, IconName, gossip_menu_id, minlevel, maxlevel, exp, faction, npcflag, speed_walk, speed_run, detection_range, scale, `rank`, dmgschool, DamageModifier, BaseAttackTime, RangeAttackTime, BaseVariance, RangeVariance, unit_class, unit_flags, unit_flags2, dynamicflags, family, trainer_type, trainer_spell, trainer_class, trainer_race, type, type_flags, lootid, pickpocketloot, skinloot, PetSpellDataId, VehicleId, mingold, maxgold, AIName, MovementType, InhabitType, HoverHeight, HealthModifier, ManaModifier, ArmorModifier, RacialLeader, movementId, RegenHealth, mechanic_immune_mask, spell_school_immune_mask, flags_extra, ScriptName FROM creature_template WHERE entry = ?", CONNECTION_SYNCH); PrepareStatement(WORLD_SEL_WAYPOINT_SCRIPT_BY_ID, "SELECT guid, delay, command, datalong, datalong2, dataint, x, y, z, o FROM waypoint_scripts WHERE id = ?", CONNECTION_SYNCH); PrepareStatement(WORLD_SEL_ITEM_TEMPLATE_BY_NAME, "SELECT entry FROM item_template WHERE name = ?", CONNECTION_SYNCH); PrepareStatement(WORLD_SEL_CREATURE_BY_ID, "SELECT guid FROM creature WHERE id = ?", CONNECTION_SYNCH); diff --git a/src/server/game/AI/CreatureAI.cpp b/src/server/game/AI/CreatureAI.cpp index aa460d654..2957153df 100644 --- a/src/server/game/AI/CreatureAI.cpp +++ b/src/server/game/AI/CreatureAI.cpp @@ -120,7 +120,7 @@ void CreatureAI::MoveInLineOfSight(Unit* who) if (me->IsMoveInLineOfSightDisabled()) if (me->GetCreatureType() == CREATURE_TYPE_NON_COMBAT_PET || // nothing more to do, return !who->IsInCombat() || // if not in combat, nothing more to do - !me->IsWithinDist(who, ATTACK_DISTANCE)) // if in combat and in dist - neutral to all can actually assist other creatures + !me->IsWithinDist(who, ATTACK_DISTANCE, true, false)) // if in combat and in dist - neutral to all can actually assist other creatures return; if (me->CanStartAttack(who)) diff --git a/src/server/game/AI/ScriptedAI/ScriptedCreature.cpp b/src/server/game/AI/ScriptedAI/ScriptedCreature.cpp index bf554a3d6..36f69e47f 100644 --- a/src/server/game/AI/ScriptedAI/ScriptedCreature.cpp +++ b/src/server/game/AI/ScriptedAI/ScriptedCreature.cpp @@ -469,7 +469,7 @@ Player* ScriptedAI::SelectTargetFromPlayerList(float maxdist, uint32 excludeAura std::vector tList; for(Map::PlayerList::const_iterator itr = pList.begin(); itr != pList.end(); ++itr) { - if (!me->IsWithinDistInMap(itr->GetSource(), maxdist) || !itr->GetSource()->IsAlive() || itr->GetSource()->IsGameMaster()) + if (!me->IsWithinDistInMap(itr->GetSource(), maxdist, true, false) || !itr->GetSource()->IsAlive() || itr->GetSource()->IsGameMaster()) continue; if (excludeAura && itr->GetSource()->HasAura(excludeAura)) continue; diff --git a/src/server/game/AI/ScriptedAI/ScriptedEscortAI.cpp b/src/server/game/AI/ScriptedAI/ScriptedEscortAI.cpp index fa9e2aaac..66b05425b 100644 --- a/src/server/game/AI/ScriptedAI/ScriptedEscortAI.cpp +++ b/src/server/game/AI/ScriptedAI/ScriptedEscortAI.cpp @@ -216,10 +216,10 @@ bool npc_escortAI::IsPlayerOrGroupInRange() { for (GroupReference* groupRef = group->GetFirstMember(); groupRef != nullptr; groupRef = groupRef->next()) if (Player* member = groupRef->GetSource()) - if (me->IsWithinDistInMap(member, GetMaxPlayerDistance())) + if (me->IsWithinDistInMap(member, GetMaxPlayerDistance(), true, false)) return true; } - else if (me->IsWithinDistInMap(player, GetMaxPlayerDistance())) + else if (me->IsWithinDistInMap(player, GetMaxPlayerDistance(), true, false)) return true; } diff --git a/src/server/game/AI/ScriptedAI/ScriptedFollowerAI.cpp b/src/server/game/AI/ScriptedAI/ScriptedFollowerAI.cpp index f0e66454e..d3170346f 100644 --- a/src/server/game/AI/ScriptedAI/ScriptedFollowerAI.cpp +++ b/src/server/game/AI/ScriptedAI/ScriptedFollowerAI.cpp @@ -197,7 +197,7 @@ void FollowerAI::UpdateAI(uint32 uiDiff) { Player* member = groupRef->GetSource(); - if (member && me->IsWithinDistInMap(member, MAX_PLAYER_DISTANCE)) + if (member && me->IsWithinDistInMap(member, MAX_PLAYER_DISTANCE, true, false)) { bIsMaxRangeExceeded = false; break; @@ -206,7 +206,7 @@ void FollowerAI::UpdateAI(uint32 uiDiff) } else { - if (me->IsWithinDistInMap(player, MAX_PLAYER_DISTANCE)) + if (me->IsWithinDistInMap(player, MAX_PLAYER_DISTANCE, true, false)) bIsMaxRangeExceeded = false; } } diff --git a/src/server/game/Entities/Creature/Creature.cpp b/src/server/game/Entities/Creature/Creature.cpp index c33bea18f..1799aa8d9 100644 --- a/src/server/game/Entities/Creature/Creature.cpp +++ b/src/server/game/Entities/Creature/Creature.cpp @@ -168,7 +168,7 @@ Creature::Creature(bool isWorldObject): Unit(isWorldObject), MovableMapObject(), m_transportCheckTimer(1000), lootPickPocketRestoreTime(0), m_reactState(REACT_AGGRESSIVE), m_defaultMovementType(IDLE_MOTION_TYPE), m_spawnId(0), m_equipmentId(0), m_originalEquipmentId(0), m_originalAnimTier(UNIT_BYTE1_FLAG_GROUND), m_AlreadyCallAssistance(false), m_AlreadySearchedAssistance(false), m_regenHealth(true), m_AI_locked(false), m_meleeDamageSchoolMask(SPELL_SCHOOL_MASK_NORMAL), m_originalEntry(0), m_moveInLineOfSightDisabled(false), m_moveInLineOfSightStrictlyDisabled(false), - m_homePosition(), m_transportHomePosition(), m_creatureInfo(nullptr), m_creatureData(nullptr), m_waypointID(0), m_path_id(0), m_formation(nullptr), _lastDamagedTime(nullptr), m_cannotReachTarget(false), m_cannotReachTimer(0), + m_homePosition(), m_transportHomePosition(), m_creatureInfo(nullptr), m_creatureData(nullptr), m_detectionDistance(20.0f), m_waypointID(0), m_path_id(0), m_formation(nullptr), _lastDamagedTime(nullptr), m_cannotReachTarget(false), m_cannotReachTimer(0), _isMissingSwimmingFlagOutOfCombat(false), m_assistanceTimer(0) { m_regenTimer = CREATURE_REGEN_INTERVAL; @@ -521,6 +521,8 @@ bool Creature::UpdateEntry(uint32 Entry, const CreatureData* data, bool changele UpdateEnvironmentIfNeeded(3); + SetDetectionDistance(cInfo->detection_range); + LoadSpellTemplateImmunity(); return true; } @@ -617,7 +619,7 @@ void Creature::Update(uint32 diff) } Unit* owner = GetCharmerOrOwner(); - if (IsCharmed() && !IsWithinDistInMap(owner, GetMap()->GetVisibilityRange())) + if (IsCharmed() && !IsWithinDistInMap(owner, GetMap()->GetVisibilityRange(), true, false)) { RemoveCharmAuras(); } @@ -1710,7 +1712,7 @@ bool Creature::CanStartAttack(Unit const* who) const assist = true; if (!assist) - if (IsNeutralToAll() || !IsWithinDistInMap(who, GetAggroRange(who) + m_CombatDistance)) // pussywizard: +m_combatDistance for turrets and similar + if (IsNeutralToAll() || !IsWithinDistInMap(who, GetAggroRange(who) + m_CombatDistance, true, false)) // pussywizard: +m_combatDistance for turrets and similar return false; if (!CanCreatureAttack(who)) @@ -2978,17 +2980,20 @@ float Creature::GetAggroRange(Unit const* target) const if (aggroRate == 0) return 0.0f; - uint32 targetLevel = target->getLevelForTarget(this); - uint32 myLevel = getLevelForTarget(target); - int32 levelDiff = int32(targetLevel) - int32(myLevel); + auto creatureLevel = target->getLevelForTarget(this); + auto playerLevel = getLevelForTarget(target); + int32 levelDiff = int32(creatureLevel) - int32(playerLevel); // The maximum Aggro Radius is capped at 45 yards (25 level difference) if (levelDiff < -25) levelDiff = -25; // The base aggro radius for mob of same level - float aggroRadius = 20.0f; - + auto aggroRadius = GetDetectionRange(); + if (aggroRadius < 1) + { + return 0.0f; + } // Aggro Radius varies with level difference at a rate of roughly 1 yard/level aggroRadius -= (float)levelDiff; diff --git a/src/server/game/Entities/Creature/Creature.h b/src/server/game/Entities/Creature/Creature.h index 5a4702a03..b5c2d76b3 100644 --- a/src/server/game/Entities/Creature/Creature.h +++ b/src/server/game/Entities/Creature/Creature.h @@ -176,6 +176,7 @@ public: [[nodiscard]] CreatureTemplate const* GetCreatureTemplate() const { return m_creatureInfo; } [[nodiscard]] CreatureData const* GetCreatureData() const { return m_creatureData; } + void SetDetectionDistance(float dist){ m_detectionDistance = dist; } [[nodiscard]] CreatureAddon const* GetCreatureAddon() const; [[nodiscard]] std::string GetAIName() const; @@ -224,6 +225,7 @@ public: bool CanStartAttack(Unit const* u) const; float GetAggroRange(Unit const* target) const; float GetAttackDistance(Unit const* player) const; + [[nodiscard]] float GetDetectionRange() const { return m_detectionDistance; } void SendAIReaction(AiReaction reactionType); @@ -413,6 +415,7 @@ protected: CreatureTemplate const* m_creatureInfo; // in difficulty mode > 0 can different from sObjectMgr->GetCreatureTemplate(GetEntry()) CreatureData const* m_creatureData; + float m_detectionDistance; uint16 m_LootMode; // bitmask, default LOOT_MODE_DEFAULT, determines what loot will be lootable [[nodiscard]] bool IsInvisibleDueToDespawn() const override; diff --git a/src/server/game/Entities/Creature/CreatureData.h b/src/server/game/Entities/Creature/CreatureData.h index 831f3bba5..5e37957b7 100644 --- a/src/server/game/Entities/Creature/CreatureData.h +++ b/src/server/game/Entities/Creature/CreatureData.h @@ -92,6 +92,7 @@ struct CreatureTemplate uint32 npcflag; float speed_walk; float speed_run; + float detection_range; // Detection Range for Line of Sight aggro float scale; uint32 rank; uint32 dmgschool; diff --git a/src/server/game/Entities/GameObject/GameObject.h b/src/server/game/Entities/GameObject/GameObject.h index 6678d3b27..a31c003d7 100644 --- a/src/server/game/Entities/GameObject/GameObject.h +++ b/src/server/game/Entities/GameObject/GameObject.h @@ -993,7 +993,7 @@ private: void UpdatePackedRotation(); //! Object distance/size - overridden from Object::_IsWithinDist. Needs to take in account proper GO size. - bool _IsWithinDist(WorldObject const* obj, float dist2compare, bool /*is3D*/) const override + bool _IsWithinDist(WorldObject const* obj, float dist2compare, bool /*is3D*/, bool /*useBoundingRadius = true*/) const override { //! Following check does check 3d distance dist2compare += obj->GetObjectSize(); diff --git a/src/server/game/Entities/Object/Object.cpp b/src/server/game/Entities/Object/Object.cpp index 787a5685c..47c50a8c1 100644 --- a/src/server/game/Entities/Object/Object.cpp +++ b/src/server/game/Entities/Object/Object.cpp @@ -1069,9 +1069,9 @@ float WorldObject::GetDistanceZ(const WorldObject* obj) const return (dist > 0 ? dist : 0); } -bool WorldObject::_IsWithinDist(WorldObject const* obj, float dist2compare, bool is3D) const +bool WorldObject::_IsWithinDist(WorldObject const* obj, float dist2compare, bool is3D, bool useBoundingRadius) const { - float sizefactor = GetObjectSize() + obj->GetObjectSize(); + float sizefactor = useBoundingRadius ? GetObjectSize() + obj->GetObjectSize() : 0.0f; float maxdist = dist2compare + sizefactor; if (m_transport && obj->GetTransport() && obj->GetTransport()->GetGUID() == m_transport->GetGUID()) diff --git a/src/server/game/Entities/Object/Object.h b/src/server/game/Entities/Object/Object.h index 99deeaefc..4e865bc72 100644 --- a/src/server/game/Entities/Object/Object.h +++ b/src/server/game/Entities/Object/Object.h @@ -870,13 +870,13 @@ public: bool IsWithinDist2d(const Position* pos, float dist) const { return IsInDist2d(pos, dist + GetObjectSize()); } // use only if you will sure about placing both object at same map - bool IsWithinDist(WorldObject const* obj, float dist2compare, bool is3D = true) const + bool IsWithinDist(WorldObject const* obj, float dist2compare, bool is3D = true, bool useBoundingRadius = true) const { - return obj && _IsWithinDist(obj, dist2compare, is3D); + return obj && _IsWithinDist(obj, dist2compare, is3D, useBoundingRadius); } - bool IsWithinDistInMap(WorldObject const* obj, float dist2compare, bool is3D = true) const + bool IsWithinDistInMap(WorldObject const* obj, float dist2compare, bool is3D = true, bool useBoundingRadius = true) const { - return obj && IsInMap(obj) && InSamePhase(obj) && _IsWithinDist(obj, dist2compare, is3D); + return obj && IsInMap(obj) && InSamePhase(obj) && _IsWithinDist(obj, dist2compare, is3D, useBoundingRadius); } [[nodiscard]] bool IsWithinLOS(float x, float y, float z, LineOfSightChecks checks = LINEOFSIGHT_ALL_CHECKS) const; bool IsWithinLOSInMap(WorldObject const* obj, LineOfSightChecks checks = LINEOFSIGHT_ALL_CHECKS) const; @@ -1076,7 +1076,7 @@ private: uint16 m_notifyflags; uint16 m_executed_notifies; - virtual bool _IsWithinDist(WorldObject const* obj, float dist2compare, bool is3D) const; + virtual bool _IsWithinDist(WorldObject const* obj, float dist2compare, bool is3D, bool useBoundingRadius = true) const; bool CanNeverSee(WorldObject const* obj) const; virtual bool CanAlwaysSee(WorldObject const* /*obj*/) const { return false; } diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp index 4bcf9b00b..6bd0e4187 100644 --- a/src/server/game/Globals/ObjectMgr.cpp +++ b/src/server/game/Globals/ObjectMgr.cpp @@ -465,15 +465,15 @@ void ObjectMgr::LoadCreatureTemplates() // 0 1 2 3 4 5 6 7 8 QueryResult result = WorldDatabase.Query("SELECT entry, difficulty_entry_1, difficulty_entry_2, difficulty_entry_3, KillCredit1, KillCredit2, modelid1, modelid2, modelid3, " -// 9 10 11 12 13 14 15 16 17 18 19 20 - "modelid4, name, subname, IconName, gossip_menu_id, minlevel, maxlevel, exp, faction, npcflag, speed_walk, speed_run, " -// 21 22 23 24 25 26 27 28 29 30 31 +// 9 10 11 12 13 14 15 16 17 18 19 20 21 + "modelid4, name, subname, IconName, gossip_menu_id, minlevel, maxlevel, exp, faction, npcflag, speed_walk, speed_run, detection_range, " +// 22 23 24 25 26 27 28 29 30 31 32 "scale, `rank`, dmgschool, DamageModifier, BaseAttackTime, RangeAttackTime, BaseVariance, RangeVariance, unit_class, unit_flags, unit_flags2, " -// 32 33 34 35 36 37 38 +// 33 34 35 36 37 38 39 "dynamicflags, family, trainer_type, trainer_spell, trainer_class, trainer_race, type, " -// 39 40 41 42 43 44 45 46 47 48 +// 40 41 42 43 44 45 46 47 48 49 "type_flags, lootid, pickpocketloot, skinloot, PetSpellDataId, VehicleId, mingold, maxgold, AIName, MovementType, " -// 49 50 51 52 53 54 55 56 57 58 59 60 +// 50 51 52 53 54 55 56 57 58 59 60 61 "InhabitType, HoverHeight, HealthModifier, ManaModifier, ArmorModifier, RacialLeader, movementId, RegenHealth, mechanic_immune_mask, spell_school_immune_mask, flags_extra, ScriptName " "FROM creature_template;"); @@ -555,28 +555,29 @@ void ObjectMgr::LoadCreatureTemplate(Field* fields) creatureTemplate.npcflag = fields[18].GetUInt32(); creatureTemplate.speed_walk = fields[19].GetFloat(); creatureTemplate.speed_run = fields[20].GetFloat(); - creatureTemplate.scale = fields[21].GetFloat(); - creatureTemplate.rank = uint32(fields[22].GetUInt8()); - creatureTemplate.dmgschool = uint32(fields[23].GetInt8()); - creatureTemplate.DamageModifier = fields[24].GetFloat(); - creatureTemplate.BaseAttackTime = fields[25].GetUInt32(); - creatureTemplate.RangeAttackTime = fields[26].GetUInt32(); - creatureTemplate.BaseVariance = fields[27].GetFloat(); - creatureTemplate.RangeVariance = fields[28].GetFloat(); - creatureTemplate.unit_class = uint32(fields[29].GetUInt8()); - creatureTemplate.unit_flags = fields[30].GetUInt32(); - creatureTemplate.unit_flags2 = fields[31].GetUInt32(); - creatureTemplate.dynamicflags = fields[32].GetUInt32(); - creatureTemplate.family = uint32(fields[33].GetUInt8()); - creatureTemplate.trainer_type = uint32(fields[34].GetUInt8()); - creatureTemplate.trainer_spell = fields[35].GetUInt32(); - creatureTemplate.trainer_class = uint32(fields[36].GetUInt8()); - creatureTemplate.trainer_race = uint32(fields[37].GetUInt8()); - creatureTemplate.type = uint32(fields[38].GetUInt8()); - creatureTemplate.type_flags = fields[39].GetUInt32(); - creatureTemplate.lootid = fields[40].GetUInt32(); - creatureTemplate.pickpocketLootId = fields[41].GetUInt32(); - creatureTemplate.SkinLootId = fields[42].GetUInt32(); + creatureTemplate.detection_range = fields[21].GetFloat(); + creatureTemplate.scale = fields[22].GetFloat(); + creatureTemplate.rank = uint32(fields[23].GetUInt8()); + creatureTemplate.dmgschool = uint32(fields[24].GetInt8()); + creatureTemplate.DamageModifier = fields[25].GetFloat(); + creatureTemplate.BaseAttackTime = fields[26].GetUInt32(); + creatureTemplate.RangeAttackTime = fields[27].GetUInt32(); + creatureTemplate.BaseVariance = fields[28].GetFloat(); + creatureTemplate.RangeVariance = fields[29].GetFloat(); + creatureTemplate.unit_class = uint32(fields[30].GetUInt8()); + creatureTemplate.unit_flags = fields[31].GetUInt32(); + creatureTemplate.unit_flags2 = fields[32].GetUInt32(); + creatureTemplate.dynamicflags = fields[33].GetUInt32(); + creatureTemplate.family = uint32(fields[34].GetUInt8()); + creatureTemplate.trainer_type = uint32(fields[35].GetUInt8()); + creatureTemplate.trainer_spell = fields[36].GetUInt32(); + creatureTemplate.trainer_class = uint32(fields[37].GetUInt8()); + creatureTemplate.trainer_race = uint32(fields[38].GetUInt8()); + creatureTemplate.type = uint32(fields[39].GetUInt8()); + creatureTemplate.type_flags = fields[40].GetUInt32(); + creatureTemplate.lootid = fields[41].GetUInt32(); + creatureTemplate.pickpocketLootId = fields[42].GetUInt32(); + creatureTemplate.SkinLootId = fields[43].GetUInt32(); for (uint8 i = SPELL_SCHOOL_HOLY; i < MAX_SPELL_SCHOOL; ++i) { @@ -588,24 +589,24 @@ void ObjectMgr::LoadCreatureTemplate(Field* fields) creatureTemplate.spells[i] = 0; } - creatureTemplate.PetSpellDataId = fields[43].GetUInt32(); - creatureTemplate.VehicleId = fields[44].GetUInt32(); - creatureTemplate.mingold = fields[45].GetUInt32(); - creatureTemplate.maxgold = fields[46].GetUInt32(); - creatureTemplate.AIName = fields[47].GetString(); - creatureTemplate.MovementType = uint32(fields[48].GetUInt8()); - creatureTemplate.InhabitType = uint32(fields[49].GetUInt8()); - creatureTemplate.HoverHeight = fields[50].GetFloat(); - creatureTemplate.ModHealth = fields[51].GetFloat(); - creatureTemplate.ModMana = fields[52].GetFloat(); - creatureTemplate.ModArmor = fields[53].GetFloat(); - creatureTemplate.RacialLeader = fields[54].GetBool(); - creatureTemplate.movementId = fields[55].GetUInt32(); - creatureTemplate.RegenHealth = fields[56].GetBool(); - creatureTemplate.MechanicImmuneMask = fields[57].GetUInt32(); - creatureTemplate.SpellSchoolImmuneMask = fields[58].GetUInt8(); - creatureTemplate.flags_extra = fields[59].GetUInt32(); - creatureTemplate.ScriptID = GetScriptId(fields[60].GetCString()); + creatureTemplate.PetSpellDataId = fields[44].GetUInt32(); + creatureTemplate.VehicleId = fields[45].GetUInt32(); + creatureTemplate.mingold = fields[46].GetUInt32(); + creatureTemplate.maxgold = fields[47].GetUInt32(); + creatureTemplate.AIName = fields[48].GetString(); + creatureTemplate.MovementType = uint32(fields[49].GetUInt8()); + creatureTemplate.InhabitType = uint32(fields[50].GetUInt8()); + creatureTemplate.HoverHeight = fields[51].GetFloat(); + creatureTemplate.ModHealth = fields[52].GetFloat(); + creatureTemplate.ModMana = fields[53].GetFloat(); + creatureTemplate.ModArmor = fields[54].GetFloat(); + creatureTemplate.RacialLeader = fields[55].GetBool(); + creatureTemplate.movementId = fields[56].GetUInt32(); + creatureTemplate.RegenHealth = fields[57].GetBool(); + creatureTemplate.MechanicImmuneMask = fields[58].GetUInt32(); + creatureTemplate.SpellSchoolImmuneMask = fields[59].GetUInt8(); + creatureTemplate.flags_extra = fields[60].GetUInt32(); + creatureTemplate.ScriptID = GetScriptId(fields[61].GetCString()); } void ObjectMgr::LoadCreatureTemplateResistances() diff --git a/src/server/game/Grids/Notifiers/GridNotifiers.h b/src/server/game/Grids/Notifiers/GridNotifiers.h index 9d681b696..1e5f0e1f4 100644 --- a/src/server/game/Grids/Notifiers/GridNotifiers.h +++ b/src/server/game/Grids/Notifiers/GridNotifiers.h @@ -1060,7 +1060,7 @@ namespace Acore } bool operator()(Unit* u) { - if (!me->IsWithinDistInMap(u, m_range)) + if (!me->IsWithinDistInMap(u, m_range, true, false)) return false; if (!me->IsValidAttackTarget(u)) @@ -1086,7 +1086,7 @@ namespace Acore explicit NearestHostileUnitInAttackDistanceCheck(Creature const* creature, float dist) : me(creature), m_range(dist) {} bool operator()(Unit* u) { - if (!me->IsWithinDistInMap(u, m_range)) + if (!me->IsWithinDistInMap(u, m_range, true, false)) return false; if (!me->CanStartAttack(u)) diff --git a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_twinemperors.cpp b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_twinemperors.cpp index 0e7e2168e..719b3ea1c 100644 --- a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_twinemperors.cpp +++ b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_twinemperors.cpp @@ -280,7 +280,7 @@ struct boss_twinemperorsAI : public ScriptedAI if (me->_CanDetectFeignDeathOf(who) && me->CanCreatureAttack(who)) { - if (me->IsWithinDistInMap(who, PULL_RANGE) && me->GetDistanceZ(who) <= /*CREATURE_Z_ATTACK_RANGE*/7 /*there are stairs*/) + if (me->IsWithinDistInMap(who, PULL_RANGE, true, false) && me->GetDistanceZ(who) <= /*CREATURE_Z_ATTACK_RANGE*/7 /*there are stairs*/) { //if (who->HasStealthAura()) // who->RemoveSpellsCausingAura(SPELL_AURA_MOD_STEALTH);