mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-01-13 01:08:35 +00:00
Merge branch 'master' into Playerbot
This commit is contained in:
38
.github/labeler.yml
vendored
38
.github/labeler.yml
vendored
@@ -1,54 +1,54 @@
|
||||
file-cpp:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file:
|
||||
- src/**/*.cpp
|
||||
- src/**/*.h
|
||||
- deps/**/*.cpp
|
||||
- deps/**/*.h
|
||||
- 'src/**/*.cpp'
|
||||
- 'src/**/*.h'
|
||||
- 'deps/**/*.cpp'
|
||||
- 'deps/**/*.h'
|
||||
|
||||
DB:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: data/**/*.sql
|
||||
- any-glob-to-any-file: 'data/**/*.sql'
|
||||
|
||||
CORE:
|
||||
- all:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: 'src/**/*'
|
||||
- all-globs-to-all-files:
|
||||
- '!src/server/scripts/*'
|
||||
- '!src/tests/*'
|
||||
- '!src/server/scripts/**/*'
|
||||
- '!src/test/**/*'
|
||||
|
||||
Script:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file:
|
||||
- src/server/scripts/**/*.cpp
|
||||
- src/server/scripts/**/*.h
|
||||
- 'src/server/scripts/**/*.cpp'
|
||||
- 'src/server/scripts/**/*.h'
|
||||
|
||||
UnitTests:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: src/test/**/*
|
||||
- any-glob-to-any-file: 'src/test/**/*'
|
||||
|
||||
Documentation:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: ./*.md
|
||||
- any-glob-to-any-file: '*.md'
|
||||
|
||||
Bash:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file:
|
||||
- ./*.sh
|
||||
- apps/**/*.sh
|
||||
- conf/**/*.sh
|
||||
- deps/**/*.sh
|
||||
- modules/**/*.sh
|
||||
- '*.sh'
|
||||
- 'apps/**/*.sh'
|
||||
- 'conf/**/*.sh'
|
||||
- 'deps/**/*.sh'
|
||||
- 'modules/**/*.sh'
|
||||
|
||||
CMake:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: ./*.cmake
|
||||
- any-glob-to-any-file: '*.cmake'
|
||||
|
||||
Workflow:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: .github/workflows/*
|
||||
- any-glob-to-any-file: '.github/workflows/*'
|
||||
|
||||
Batch:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: apps/**/*.bat
|
||||
- any-glob-to-any-file: 'apps/**/*.bat'
|
||||
|
||||
16
.github/workflows/core-build-nopch.yml
vendored
16
.github/workflows/core-build-nopch.yml
vendored
@@ -19,22 +19,6 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- os: ubuntu-20.04
|
||||
compiler:
|
||||
CC: gcc-10
|
||||
CXX: g++-10
|
||||
- os: ubuntu-20.04
|
||||
compiler:
|
||||
CC: clang-12
|
||||
CXX: clang++-12
|
||||
- os: ubuntu-22.04
|
||||
compiler:
|
||||
CC: clang-15
|
||||
CXX: clang++-15
|
||||
- os: ubuntu-22.04
|
||||
compiler:
|
||||
CC: gcc-12
|
||||
CXX: g++-12
|
||||
- os: ubuntu-24.04
|
||||
compiler:
|
||||
CC: clang-18
|
||||
|
||||
20
.github/workflows/core-build-pch.yml
vendored
20
.github/workflows/core-build-pch.yml
vendored
@@ -16,30 +16,10 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- os: ubuntu-20.04
|
||||
compiler:
|
||||
CC: gcc-10
|
||||
CXX: g++-10
|
||||
- os: ubuntu-20.04
|
||||
compiler:
|
||||
CC: clang-12
|
||||
CXX: clang++-12
|
||||
- os: ubuntu-22.04
|
||||
compiler:
|
||||
CC: clang-15
|
||||
CXX: clang++-15
|
||||
- os: ubuntu-22.04
|
||||
compiler:
|
||||
CC: gcc-12
|
||||
CXX: g++-12
|
||||
- os: ubuntu-24.04
|
||||
compiler:
|
||||
CC: clang-18
|
||||
CXX: clang++-18
|
||||
- os: ubuntu-24.04
|
||||
compiler:
|
||||
CC: gcc-14
|
||||
CXX: g++-14
|
||||
runs-on: ${{ matrix.os }}
|
||||
name: ${{ matrix.os }}-${{ matrix.compiler }}-pch
|
||||
env:
|
||||
|
||||
2
.github/workflows/import_pending.yml
vendored
2
.github/workflows/import_pending.yml
vendored
@@ -8,7 +8,7 @@ jobs:
|
||||
import-pending:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
runs-on: ubuntu-20.04
|
||||
runs-on: ubuntu-24.04
|
||||
permissions: write-all
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk' && !github.event.pull_request.draft
|
||||
steps:
|
||||
|
||||
2
.github/workflows/pr_labeler.yml
vendored
2
.github/workflows/pr_labeler.yml
vendored
@@ -4,7 +4,7 @@ on:
|
||||
|
||||
jobs:
|
||||
triage:
|
||||
runs-on: ubuntu-20.04
|
||||
runs-on: ubuntu-24.04
|
||||
permissions: write-all
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk'
|
||||
steps:
|
||||
|
||||
2
.github/workflows/tools_build.yml
vendored
2
.github/workflows/tools_build.yml
vendored
@@ -15,7 +15,7 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
# the result of the matrix will be the combination of all attributes, so we get os*compiler builds
|
||||
os: [ubuntu-20.04]
|
||||
os: [ubuntu-24.04]
|
||||
compiler: [clang]
|
||||
runs-on: ${{ matrix.os }}
|
||||
name: ${{ matrix.os }}-${{ matrix.compiler }}
|
||||
|
||||
198
data/sql/updates/db_world/2024_06_06_00.sql
Normal file
198
data/sql/updates/db_world/2024_06_06_00.sql
Normal file
@@ -0,0 +1,198 @@
|
||||
-- DB update 2024_06_02_00 -> 2024_06_06_00
|
||||
--
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Ancona Chicken' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7394;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Azure Whelpling' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7547;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Black Kingsnake' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7565;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Black Tabby Cat' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7383;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Blue Dragonhawk Hatchling' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=21056;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Blue Moth' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=21010;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Bombay Cat' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7385;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Brown Prairie Dog' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=14421;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Brown Rabbit' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=20472;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Brown Snake' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7562;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Cobra Hatchling' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=32591;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Cockroach' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7395;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Cornish Rex Cat' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7384;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Crimson Snake' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7567;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Crimson Whelpling' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7544;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Dark Whelpling' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7543;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Egbert' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=23258;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Emerald Whelpling' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7545;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Frosty' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=28883;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Ghostly Skull' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=29147;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Golden Dragonhawk Hatchling' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=21055;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Great Horned Owl' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7553;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Green Wing Macaw' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7387;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Hawk Owl' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7555;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Hyacinth Macaw' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7391;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Jubling' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=14878;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Lifelike Toad' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=12419;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Magical Crawdad' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=18839;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Mana Wyrmling' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=20408;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Mechanical Chicken' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=8376;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Mechanical Squirrel' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=2671;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Miniwing' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=22445;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Orange Tabby Cat' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7382;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Peddlefeet' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=16085;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Pengu' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=32595;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Proto-Drake Whelp' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=32592;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Red Dragonhawk Hatchling' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=21064;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Red Moth' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=21009;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Senegal' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7389;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Siamese Cat' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7380;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Silver Dragonhawk Hatchling' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=21063;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Silver Tabby Cat' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7381;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Sinister Squashling' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=23909;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Smolderweb Hatchling' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=10598;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Snowshoe Rabbit' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7560;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Speedy' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=16547;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Spirit of Summer' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=16701;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Sprite Darter Hatchling' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=9662;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Stinker' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=23274;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Tickbird Hatchling' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=32589;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Tree Frog' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7549;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Westfall Chicken' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=30379;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Whiskers the Rat' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=16549;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - White Kitten' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7386;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - White Moth' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=21018;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - White Tickbird Hatchling' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=32590;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Wood Frog' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=7550;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Worg Pup' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=10259;
|
||||
UPDATE `conditions` SET `Comment`='Target Non-Combat Pet - Yellow Moth' WHERE `SourceTypeOrReferenceId`=13 AND `SourceGroup`=1 AND `SourceEntry`=48649 AND `ConditionValue2`=21008;
|
||||
|
||||
DELETE FROM `conditions` WHERE (`SourceTypeOrReferenceId` = 13) AND (`SourceGroup` = 1) AND (`SourceEntry` = 48649)
|
||||
AND (`ConditionValue2` IN (14633,33205,14143,32841,18152,15661,23234,11236,15356,7563,7546,34364,40624,31128,26056,7390,32591,7388,36871,7558,28267,33530,33529,35396,7551,35395,15429,33194,33198,7570,33200,27346,27914,7548,9256,21076,40198,31575,25146,15360,7569,34694,36908,35400,16069,14632,17255,7552,35156,34930,32643,35387,36979,9657,40703,32939,23114,23198,15358,34770,35155,11326,42078,29089,24480,29726,16548,24389,33219,15361,33578,40721,15186,28470,18381,35399,35468,36607,11325,36911,27849,23266,37865,9656,29482,26119,15359,24753,27865,32818,16456,7392,15357,21266,35397,35398,35394,7568,25109,34531,15944,7566,25706,33810,34724,25147,26050,7554,36511,27217,7559,32791,33226,33188,16445,27196,27197,14755,35157,14756,25062,33197,15699,24388,38374,28513,7393,17254,23231,36909,15706,22943,36910));
|
||||
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
|
||||
(13, 1, 48649, 0, 59, 31, 0, 3, 14633, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Albino Snapjaw'),
|
||||
(13, 1, 48649, 0, 60, 31, 0, 3, 33205, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Ammen Vale Lashling'),
|
||||
(13, 1, 48649, 0, 61, 31, 0, 3, 14143, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Ar\'lia'),
|
||||
(13, 1, 48649, 0, 62, 31, 0, 3, 32841, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Baby Blizzard Bear'),
|
||||
(13, 1, 48649, 0, 63, 31, 0, 3, 18152, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Baby Murloc'),
|
||||
(13, 1, 48649, 0, 64, 31, 0, 3, 15661, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Baby shark'),
|
||||
(13, 1, 48649, 0, 65, 31, 0, 3, 23234, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Bananas'),
|
||||
(13, 1, 48649, 0, 66, 31, 0, 3, 11236, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Blood Parrot'),
|
||||
(13, 1, 48649, 0, 67, 31, 0, 3, 15356, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Blue Baby Murloc'),
|
||||
(13, 1, 48649, 0, 68, 31, 0, 3, 7563, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Blue Racer'),
|
||||
(13, 1, 48649, 0, 69, 31, 0, 3, 7546, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Bronze Whelpling'),
|
||||
(13, 1, 48649, 0, 70, 31, 0, 3, 34364, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Calico Cat'),
|
||||
(13, 1, 48649, 0, 71, 31, 0, 3, 40624, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Celestial Dragon'),
|
||||
(13, 1, 48649, 0, 72, 31, 0, 3, 31128, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Chilly'),
|
||||
(13, 1, 48649, 0, 73, 31, 0, 3, 26056, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Chuck'),
|
||||
(13, 1, 48649, 0, 74, 31, 0, 3, 7390, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Cockatiel'),
|
||||
(13, 1, 48649, 0, 75, 31, 0, 3, 32591, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Cobra Hatchling'),
|
||||
(13, 1, 48649, 0, 76, 31, 0, 3, 7388, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Cockatoo'),
|
||||
(13, 1, 48649, 0, 77, 31, 0, 3, 36871, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Core Hound Pup'),
|
||||
(13, 1, 48649, 0, 78, 31, 0, 3, 7558, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Cottontail Rabbit'),
|
||||
(13, 1, 48649, 0, 79, 31, 0, 3, 28267, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Coyote Spirit'),
|
||||
(13, 1, 48649, 0, 80, 31, 0, 3, 33530, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Curious Oracle Hatchling'),
|
||||
(13, 1, 48649, 0, 81, 31, 0, 3, 33529, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Curious Wolvar Pup'),
|
||||
(13, 1, 48649, 0, 82, 31, 0, 3, 35396, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Darting Hatchling'),
|
||||
(13, 1, 48649, 0, 83, 31, 0, 3, 7551, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Dart Frog'),
|
||||
(13, 1, 48649, 0, 84, 31, 0, 3, 35395, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Deviate Hatchling'),
|
||||
(13, 1, 48649, 0, 85, 31, 0, 3, 15429, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Disgusting Oozeling'),
|
||||
(13, 1, 48649, 0, 86, 31, 0, 3, 33194, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Dun Morogh Cub'),
|
||||
(13, 1, 48649, 0, 87, 31, 0, 3, 33198, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Durotar Scorpion'),
|
||||
(13, 1, 48649, 0, 88, 31, 0, 3, 7570, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Elven Wisp'),
|
||||
(13, 1, 48649, 0, 89, 31, 0, 3, 33200, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Elwynn Lamb'),
|
||||
(13, 1, 48649, 0, 90, 31, 0, 3, 27346, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Essence of Competition'),
|
||||
(13, 1, 48649, 0, 91, 31, 0, 3, 27914, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Ethereal Soul-Trader'),
|
||||
(13, 1, 48649, 0, 92, 31, 0, 3, 7548, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Faeling'),
|
||||
(13, 1, 48649, 0, 93, 31, 0, 3, 9256, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Farm Chicken'),
|
||||
(13, 1, 48649, 0, 94, 31, 0, 3, 21076, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Firefly'),
|
||||
(13, 1, 48649, 0, 95, 31, 0, 3, 40198, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Frigid Frostling'),
|
||||
(13, 1, 48649, 0, 96, 31, 0, 3, 31575, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Giant Sewer Rat'),
|
||||
(13, 1, 48649, 0, 97, 31, 0, 3, 25146, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Golden Pig'),
|
||||
(13, 1, 48649, 0, 98, 31, 0, 3, 15360, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Green Baby Murloc'),
|
||||
(13, 1, 48649, 0, 99, 31, 0, 3, 7569, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Green Water snake'),
|
||||
(13, 1, 48649, 0, 100, 31, 0, 3, 34694, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Grunty'),
|
||||
(13, 1, 48649, 0, 101, 31, 0, 3, 36908, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Gryphon Hatchling'),
|
||||
(13, 1, 48649, 0, 102, 31, 0, 3, 35400, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Gundrak Hatchling'),
|
||||
(13, 1, 48649, 0, 103, 31, 0, 3, 16069, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Gurky'),
|
||||
(13, 1, 48649, 0, 104, 31, 0, 3, 14632, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Hawksbill Snapjaw'),
|
||||
(13, 1, 48649, 0, 105, 31, 0, 3, 17255, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Hippogryph Hatchling'),
|
||||
(13, 1, 48649, 0, 106, 31, 0, 3, 7552, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Island Frog'),
|
||||
(13, 1, 48649, 0, 107, 31, 0, 3, 35156, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Jade Panda'),
|
||||
(13, 1, 48649, 0, 108, 31, 0, 3, 34930, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Jade Tiger'),
|
||||
(13, 1, 48649, 0, 109, 31, 0, 3, 32643, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Kirin Tor Familiar'),
|
||||
(13, 1, 48649, 0, 110, 31, 0, 3, 35387, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Leaping Hatchling'),
|
||||
(13, 1, 48649, 0, 111, 31, 0, 3, 36979, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Lil\' K.T.'),
|
||||
(13, 1, 48649, 0, 112, 31, 0, 3, 9657, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Lil\' Smoky'),
|
||||
(13, 1, 48649, 0, 113, 31, 0, 3, 40703, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Lil\' XT'),
|
||||
(13, 1, 48649, 0, 114, 31, 0, 3, 32939, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Little Fawn'),
|
||||
(13, 1, 48649, 0, 115, 31, 0, 3, 23114, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Lucky'),
|
||||
(13, 1, 48649, 0, 116, 31, 0, 3, 23198, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Lucky'),
|
||||
(13, 1, 48649, 0, 117, 31, 0, 3, 15358, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Lucky'),
|
||||
(13, 1, 48649, 0, 118, 31, 0, 3, 34770, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Macabre Marionette'),
|
||||
(13, 1, 48649, 0, 119, 31, 0, 3, 35155, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Mana Spirit'),
|
||||
(13, 1, 48649, 0, 120, 31, 0, 3, 11326, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Mini Diablo'),
|
||||
(13, 1, 48649, 0, 121, 31, 0, 3, 42078, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Mini Thor'),
|
||||
(13, 1, 48649, 0, 122, 31, 0, 3, 29089, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Mini Tyrael'),
|
||||
(13, 1, 48649, 0, 123, 31, 0, 3, 24480, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Mojo'),
|
||||
(13, 1, 48649, 0, 124, 31, 0, 3, 29726, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Mr. Chilly'),
|
||||
(13, 1, 48649, 0, 125, 31, 0, 3, 16548, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Mr. Wiggles'),
|
||||
(13, 1, 48649, 0, 126, 31, 0, 3, 24389, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Muckbreath'),
|
||||
(13, 1, 48649, 0, 127, 31, 0, 3, 33219, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Mulgore Hatchling'),
|
||||
(13, 1, 48649, 0, 128, 31, 0, 3, 15361, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Murki'),
|
||||
(13, 1, 48649, 0, 129, 31, 0, 3, 33578, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Murkimus the Gladiator'),
|
||||
(13, 1, 48649, 0, 130, 31, 0, 3, 40721, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Murkimus the Gladiator'),
|
||||
(13, 1, 48649, 0, 131, 31, 0, 3, 15186, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Murky'),
|
||||
(13, 1, 48649, 0, 132, 31, 0, 3, 28470, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Nether Ray Fry'),
|
||||
(13, 1, 48649, 0, 133, 31, 0, 3, 18381, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Netherwhelp'),
|
||||
(13, 1, 48649, 0, 134, 31, 0, 3, 35399, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Obsidian Hatchling'),
|
||||
(13, 1, 48649, 0, 135, 31, 0, 3, 35468, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Onyx Panther'),
|
||||
(13, 1, 48649, 0, 136, 31, 0, 3, 36607, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Onyxian Whelpling'),
|
||||
(13, 1, 48649, 0, 137, 31, 0, 3, 11325, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Panda Cub'),
|
||||
(13, 1, 48649, 0, 138, 31, 0, 3, 36911, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Pandaren Monk'),
|
||||
(13, 1, 48649, 0, 139, 31, 0, 3, 27849, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Patchy'),
|
||||
(13, 1, 48649, 0, 140, 31, 0, 3, 23266, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Peanut'),
|
||||
(13, 1, 48649, 0, 141, 31, 0, 3, 37865, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Perky Pug'),
|
||||
(13, 1, 48649, 0, 142, 31, 0, 3, 9656, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Pet Bombling'),
|
||||
(13, 1, 48649, 0, 143, 31, 0, 3, 29482, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Pet Skunk'),
|
||||
(13, 1, 48649, 0, 144, 31, 0, 3, 26119, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Phoenix Hatchling'),
|
||||
(13, 1, 48649, 0, 145, 31, 0, 3, 15359, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Pink Baby Murloc'),
|
||||
(13, 1, 48649, 0, 146, 31, 0, 3, 24753, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Pint-Sized Pink Pachyderm'),
|
||||
(13, 1, 48649, 0, 147, 31, 0, 3, 27865, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Plagued pet'),
|
||||
(13, 1, 48649, 0, 148, 31, 0, 3, 32818, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Plump Turkey'),
|
||||
(13, 1, 48649, 0, 149, 31, 0, 3, 16456, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Poley'),
|
||||
(13, 1, 48649, 0, 150, 31, 0, 3, 7392, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Prairie Chicken'),
|
||||
(13, 1, 48649, 0, 151, 31, 0, 3, 15357, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Purple Baby Murloc'),
|
||||
(13, 1, 48649, 0, 152, 31, 0, 3, 21266, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Ravager Hatchling'),
|
||||
(13, 1, 48649, 0, 153, 31, 0, 3, 35397, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Ravasaur Hatchling'),
|
||||
(13, 1, 48649, 0, 154, 31, 0, 3, 35398, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Razormaw Hatchling'),
|
||||
(13, 1, 48649, 0, 155, 31, 0, 3, 35394, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Razzashi Hatchling'),
|
||||
(13, 1, 48649, 0, 156, 31, 0, 3, 7568, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Ribbon Snake'),
|
||||
(13, 1, 48649, 0, 157, 31, 0, 3, 25109, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Rocket Chicken'),
|
||||
(13, 1, 48649, 0, 158, 31, 0, 3, 34531, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Roo'),
|
||||
(13, 1, 48649, 0, 159, 31, 0, 3, 15944, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Ruby Serpent'),
|
||||
(13, 1, 48649, 0, 160, 31, 0, 3, 7566, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Scarlet Snake'),
|
||||
(13, 1, 48649, 0, 161, 31, 0, 3, 25706, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Scorchling'),
|
||||
(13, 1, 48649, 0, 162, 31, 0, 3, 33810, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Sen\'jin Fetish'),
|
||||
(13, 1, 48649, 0, 163, 31, 0, 3, 34724, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Shimmering Wyrmling'),
|
||||
(13, 1, 48649, 0, 164, 31, 0, 3, 25147, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Silver Pig'),
|
||||
(13, 1, 48649, 0, 165, 31, 0, 3, 26050, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Snarly'),
|
||||
(13, 1, 48649, 0, 166, 31, 0, 3, 7554, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Snowy Owl'),
|
||||
(13, 1, 48649, 0, 167, 31, 0, 3, 36511, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Spectral Tiger Cub'),
|
||||
(13, 1, 48649, 0, 168, 31, 0, 3, 27217, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Spirit of Competition'),
|
||||
(13, 1, 48649, 0, 169, 31, 0, 3, 7559, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Spotted Rabbit'),
|
||||
(13, 1, 48649, 0, 170, 31, 0, 3, 32791, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Spring Rabbit'),
|
||||
(13, 1, 48649, 0, 171, 31, 0, 3, 33226, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Strand Scrawler'),
|
||||
(13, 1, 48649, 0, 172, 31, 0, 3, 33188, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Teldrassil Sproutling'),
|
||||
(13, 1, 48649, 0, 173, 31, 0, 3, 16445, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Terky'),
|
||||
(13, 1, 48649, 0, 174, 31, 0, 3, 27196, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Tiny Blue Dragon'),
|
||||
(13, 1, 48649, 0, 175, 31, 0, 3, 27197, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Tiny Gold Dragon'),
|
||||
(13, 1, 48649, 0, 176, 31, 0, 3, 14755, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Tiny Green Dragon'),
|
||||
(13, 1, 48649, 0, 177, 31, 0, 3, 35157, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Tiny Jade Dragon'),
|
||||
(13, 1, 48649, 0, 178, 31, 0, 3, 14756, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Tiny Red Dragon'),
|
||||
(13, 1, 48649, 0, 179, 31, 0, 3, 25062, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Tiny Sporebat'),
|
||||
(13, 1, 48649, 0, 180, 31, 0, 3, 33197, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Tirisfal Batling'),
|
||||
(13, 1, 48649, 0, 181, 31, 0, 3, 15699, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Tranquil Mechanical Yeti'),
|
||||
(13, 1, 48649, 0, 182, 31, 0, 3, 24388, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Toothy'),
|
||||
(13, 1, 48649, 0, 183, 31, 0, 3, 38374, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Toxic Wasteling'),
|
||||
(13, 1, 48649, 0, 184, 31, 0, 3, 28513, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Vampiric Batling'),
|
||||
(13, 1, 48649, 0, 185, 31, 0, 3, 7393, 0, 0, 0, 0, '', 'Target Non-Combat Pet - White Plymouth Rock'),
|
||||
(13, 1, 48649, 0, 186, 31, 0, 3, 17254, 0, 0, 0, 0, '', 'Target Non-Combat Pet - White Tiger Cub'),
|
||||
(13, 1, 48649, 0, 187, 31, 0, 3, 23231, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Willy'),
|
||||
(13, 1, 48649, 0, 188, 31, 0, 3, 36909, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Wind Riber Cub'),
|
||||
(13, 1, 48649, 0, 189, 31, 0, 3, 15706, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Winter Reindeer'),
|
||||
(13, 1, 48649, 0, 190, 31, 0, 3, 22943, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Wolpertinger'),
|
||||
(13, 1, 48649, 0, 191, 31, 0, 3, 36910, 0, 0, 0, 0, '', 'Target Non-Combat Pet - Zipao Tiger');
|
||||
128
data/sql/updates/db_world/2024_06_07_00.sql
Normal file
128
data/sql/updates/db_world/2024_06_07_00.sql
Normal file
@@ -0,0 +1,128 @@
|
||||
-- DB update 2024_06_06_00 -> 2024_06_07_00
|
||||
DELETE FROM `waypoints` WHERE `entry`=104350;
|
||||
INSERT INTO `waypoints` VALUES
|
||||
(104350, 1, 3684.35, -3605.47, 137.872, NULL, 0, NULL),
|
||||
(104350, 2, 3700.3, -3604.13, 139.578, NULL, 0, NULL),
|
||||
(104350, 3, 3723.08, -3600.48, 142.359, NULL, 0, NULL),
|
||||
(104350, 4, 3723.08, -3600.48, 142.359, NULL, 0, NULL);
|
||||
|
||||
UPDATE `creature_template` SET `AIName` = 'SmartAI' WHERE `entry` = 10435;
|
||||
DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 10435);
|
||||
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
|
||||
(10435, 0, 0, 0, 0, 0, 100, 0, 3000, 5000, 2000, 6000, 0, 0, 11, 16791, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Magistrate Barthilas - In Combat - Cast \'Furious Anger\''),
|
||||
(10435, 0, 1, 0, 0, 0, 100, 0, 6000, 10000, 12000, 21000, 0, 0, 11, 10887, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Magistrate Barthilas - In Combat - Cast \'Crowd Pummel\''),
|
||||
(10435, 0, 2, 0, 0, 0, 100, 0, 11000, 12000, 15000, 15000, 0, 0, 11, 14099, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 'Magistrate Barthilas - In Combat - Cast \'Mighty Blow\''),
|
||||
(10435, 0, 3, 0, 0, 0, 100, 0, 4000, 4000, 12000, 15000, 0, 0, 11, 16793, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 'Magistrate Barthilas - In Combat - Cast \'Draining Blow\''),
|
||||
(10435, 0, 4, 0, 6, 0, 100, 0, 0, 0, 0, 0, 0, 0, 11, 16794, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Magistrate Barthilas - On Just Died - Cast \'Transformation\''),
|
||||
(10435, 0, 5, 0, 37, 0, 100, 0, 0, 0, 0, 0, 0, 0, 11, 16794, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Magistrate Barthilas - On Initialize - Cast \'Transformation\''),
|
||||
(10435, 0, 6, 7, 4, 0, 100, 512, 0, 0, 0, 0, 0, 0, 118, 1, 0, 0, 0, 0, 0, 20, 175377, 70, 0, 0, 0, 0, 0, 0, 'Magistrate Barthilas - On aggro - Set Closest gameobject (175377) to GO_STATE_READY'),
|
||||
(10435, 0, 7, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 118, 1, 0, 0, 0, 0, 0, 20, 175372, 90, 0, 0, 0, 0, 0, 0, 'Magistrate Barthilas - On aggro - Set Closest gameobject (175372) to GO_STATE_READY'),
|
||||
(10435, 0, 8, 9, 6, 0, 100, 512, 0, 0, 0, 0, 0, 0, 118, 2, 0, 0, 0, 0, 0, 20, 175377, 70, 0, 0, 0, 0, 0, 0, 'Magistrate Barthilas - On death - Set Closest gameobject (175377) to GO_STATE_ACTIVE_ALTERNATIVE'),
|
||||
(10435, 0, 9, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 118, 2, 0, 0, 0, 0, 0, 20, 175372, 90, 0, 0, 0, 0, 0, 0, 'Magistrate Barthilas - On death - Set Closest gameobject (175372) to GO_STATE_ACTIVE_ALTERNATIVE'),
|
||||
(10435, 0, 10, 11, 25, 0, 100, 512, 0, 0, 0, 0, 0, 0, 118, 2, 0, 0, 0, 0, 0, 20, 175377, 70, 0, 0, 0, 0, 0, 0, 'Magistrate Barthilas - On reset - Set Closest gameobject (175377) to GO_STATE_ACTIVE_ALTERNATIVE'),
|
||||
(10435, 0, 11, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 118, 2, 0, 0, 0, 0, 0, 20, 175372, 90, 0, 0, 0, 0, 0, 0, 'Magistrate Barthilas - On reset - Set Closest gameobject (175372) to GO_STATE_ACTIVE_ALTERNATIVE'),
|
||||
(10435, 0, 12, 13, 38, 0, 100, 0, 0, 1, 0, 0, 0, 0, 53, 1, 104350, 0, 0, 0, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'On data[0] set to 1 - Self: Start path #104350, run, do not repeat, Aggressive'),
|
||||
(10435, 0, 13, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'On data[0] set to 1 - Self: Talk 0 to invoker'),
|
||||
(10435, 0, 14, 0, 40, 0, 100, 0, 2, 104350, 0, 0, 0, 0, 54, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'On wapoint 2 of path 104350 reached - Self: Pause path for 1000 ms'),
|
||||
(10435, 0, 15, 0, 58, 0, 100, 0, 0, 104350, 0, 0, 0, 0, 67, 1, 100, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'On any waypoint of path 104350 ended - Trigger timed event timedEvent[1] in 100 - 100 ms // -meta_wait'),
|
||||
(10435, 0, 16, 0, 59, 0, 100, 0, 1, 0, 0, 0, 0, 0, 34, 6, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'On timed event timedEvent[1] triggered - Set instance data #6 to 3'),
|
||||
(10435, 0, 17, 18, 11, 0, 100, 0, 0, 0, 0, 0, 0, 0, 62, 329, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 4068.74, -3535.97, 122.825, 2.47837, 'On respawn - Self: Teleport to (4068.74, -3535.97, 122.825, 2.47837) on map stratholme (329)'),
|
||||
(10435, 0, 18, 0, 61, 0, 100, 0, 0, 0, 0, 0, 0, 0, 101, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'On respawn - Self: Set home position to current position');
|
||||
|
||||
DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId` = 22 AND `SourceEntry` = 10435 AND `SourceId` = 0;
|
||||
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `Comment`) VALUES
|
||||
(22, 6, 10435, 0, 0, 36, 0, 0, 0, 0, 1, 'Action invoker is dead'),
|
||||
(22, 13, 10435, 0, 0, 21, 1, 16384, 0, 0, 1, 'Object doesn\'t have unit state UNIT_STATE_ATTACK_PLAYER'),
|
||||
(22, 18, 10435, 0, 0, 13, 1, 6, 3, 0, 0, 'instance data 6 equals 3');
|
||||
|
||||
-- Service Entrance Gate smart ai
|
||||
SET @ENTRY := -6851;
|
||||
UPDATE `gameobject_template` SET `AIName` = 'SmartGameObjectAI' WHERE `entry` = @ENTRY;
|
||||
DELETE FROM `smart_scripts` WHERE `source_type` = 1 AND `entryOrGuid` = @ENTRY;
|
||||
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
|
||||
(@ENTRY, 1, 0, 1, 64, 0, 100, 0, 1, 0, 0, 0, 45, 0, 1, 0, 0, 0, 0, 10, 54237, 10435, 0, 0, 0, 0, 0, 'On player opened gossip - Creature Magistrate Barthilas (10435) with guid 54237 (fetching): Set creature data #0 to 1'),
|
||||
(@ENTRY, 1, 1, 0, 61, 0, 100, 0, 0, 0, 0, 0, 34, 6, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'On player opened gossip - Set instance data #6 to 1');
|
||||
|
||||
DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId` = 22 AND `SourceEntry` = -6851 AND `SourceId` = 1;
|
||||
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `Comment`) VALUES
|
||||
(22, 1, -6851, 1, 0, 13, 0, 6, 0, 0, 0, 'instance data 6 equals 0');
|
||||
|
||||
-- Aurius
|
||||
-- Added Combat AI ready to fix the Aurius event to help players kill the baron Rivendare
|
||||
UPDATE `creature_template` SET `AIName` = 'SmartAI' WHERE `entry` = 10917;
|
||||
DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 10917);
|
||||
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
|
||||
(10917, 0, 0, 0, 9, 0, 100, 0, 0, 5, 6000, 9000, 0, 11, 14517, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 'Aurius - Cast Crusader Strike'),
|
||||
(10917, 0, 1, 0, 0, 0, 100, 0, 6000, 14000, 8000, 11000, 0, 11, 17149, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 'Aurius - Cast Exorcism'),
|
||||
(10917, 0, 2, 0, 14, 0, 100, 0, 3000, 40, 12000, 16000, 0, 11, 13952, 0, 0, 0, 0, 0, 26, 40, 0, 0, 0, 0, 0, 0, 0, 'Aurius - Cast Holy Light on Friendly Missing HP'),
|
||||
(10917, 0, 3, 0, 2, 0, 100, 0, 0, 50, 21000, 28000, 0, 11, 13874, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Aurius - Cast Divine Shield at 50% HP'),
|
||||
|
||||
-- Entering the dungeon near Aurius he will stand up - turn around - salute
|
||||
(10917, 0, 4, 0, 101, 0, 100, 1, 1, 15, 0, 500, 500, 80, 1091700, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Aurius -Play_Emote - Emot Event');
|
||||
DELETE FROM `smart_scripts` WHERE (`source_type` = 9 AND `entryorguid` = 1091700);
|
||||
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
|
||||
(1091700, 9, 0, 0, 0, 0, 100, 512, 0, 0, 0, 0, 0, 91, 8, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Aurius - UNIT_STAND_STATE_STAND'),
|
||||
(1091700, 9, 1, 0, 0, 0, 100, 0, 0, 0, 0, 0, 0, 40, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Aurius - SHEATH_STATE_UNARMED'),
|
||||
(1091700, 9, 2, 0, 0, 0, 100, 0, 1500, 1500, 0, 0, 0, 66, 14, 0, 0, 0, 0, 0, 21, 14, 0, 0, 0, 0, 0, 0, 0, 'Aurius - SetFacing To Player'),
|
||||
(1091700, 9, 3, 0, 0, 0, 100, 0, 1000, 1000, 0, 0, 0, 5, 2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Aurius - EMOTE_ONESHOT_BOW'),
|
||||
(1091700, 9, 4, 0, 0, 0, 100, 0, 2000, 2000, 0, 0, 0, 40, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Aurius - SHEATH_STATE_MELEE');
|
||||
|
||||
-- say --
|
||||
|
||||
-- Crimson Gallant
|
||||
DELETE FROM `creature_text` WHERE `CreatureID`=10424;
|
||||
INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES
|
||||
(10424, 0, 0, 'They have broken into the Hall of Lights! We must stop the intruders!', 14, 7, 100, 0, 0, 0, 6379, 0, 'Crimson Gallant'),
|
||||
(10424, 1, 0, 'The Scourge have broken through in all wings! May the light defeat these foul creatures! We shall fight to the last!', 14, 7, 100, 0, 0, 0, 6439, 0, 'Crimson Gallant');
|
||||
|
||||
-- Crimson Monk
|
||||
DELETE FROM `creature_text` WHERE `CreatureID` = 11043;
|
||||
INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES
|
||||
(11043, 0, 0, 'You carry the taint of the Scourge. Prepare to enter the Twisting Nether.', 12, 7, 100, 0, 0, 0, 2625, 0, 'Crimson Monk'),
|
||||
(11043, 0, 1, 'There is no escape for you. The Crusade shall destroy all who carry the Scourge\'s taint.', 12, 7, 100, 0, 0, 0, 2626, 0, 'Crimson Monk'),
|
||||
(11043, 0, 2, 'The Light condemns all who harbor evil. Now you will die!', 12, 7, 100, 0, 0, 0, 2627, 0, 'Crimson Monk'),
|
||||
(11043, 0, 3, 'The Scarlet Crusade shall smite the wicked and drive evil from these lands!', 12, 7, 100, 0, 0, 0, 2628, 0, 'Crimson Monk'),
|
||||
(11043, 1, 0, 'This will not be the end of the Scarlet Crusade! You will not break our line!', 14, 7, 100, 0, 0, 0, 6380, 0, 'Crimson Monk');
|
||||
|
||||
-- Grand Crusader Dathrohan
|
||||
DELETE FROM `creature_text` WHERE `CreatureID`=10812;
|
||||
INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES
|
||||
(10812, 0, 0, 'Today you have unmade what took me years to create! For this you shall all die by my hand!', 14, 0, 100, 0, 0, 0, 6441, 0, 'Grand Crusader Dathrohan'),
|
||||
-- This text must be inserted, otherwise the server will start with an error
|
||||
(10812, 1, 0, 'You fools think you can defeat me so easily? Face the true might of the Nathrezim!', 14, 0, 100, 0, 0, 0, 6447, 0, 'Grand Crusader Dathrohan'),
|
||||
(10812, 2, 0, 'Damn you mortals! All my plans of revenge, all my hate...I will be avenged...', 12, 0, 100, 0, 0, 0, 6442, 0, 'Grand Crusader Dathrohan');
|
||||
|
||||
DELETE FROM `creature_text` WHERE `CreatureID`=10813;
|
||||
INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES
|
||||
(10813, 1, 0, 'You fools think you can defeat me so easily? Face the true might of the Nathrezim!', 14, 0, 100, 0, 0, 0, 6447, 0, 'Grand Crusader Dathrohan'),
|
||||
(10813, 2, 0, 'Damn you mortals! All my plans of revenge, all my hate...I will be avenged...', 12, 0, 100, 0, 0, 0, 6442, 0, 'Grand Crusader Dathrohan');
|
||||
|
||||
UPDATE `creature_template` SET `AIName` = 'SmartAI' WHERE `entry` = 10812;
|
||||
DELETE FROM `smart_scripts` WHERE (`entryorguid` = 10812) AND (`source_type` = 0) AND (`id` IN (9,15));
|
||||
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
|
||||
(10812, 0, 9, 0, 0, 2, 100, 1, 1000, 1000, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Grand Crusader Dathrohan - In Combat - Balnazzar Say Line 0'),
|
||||
(10812, 0, 15, 16, 6, 0, 100, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Grand Crusader Dathrohan - On Death - Say Line 1');
|
||||
|
||||
-- Baron Rivendare add Broadcast*TextId
|
||||
UPDATE `creature_text` SET `BroadcastTextId`=11812 WHERE `CreatureID`=10440 AND `GroupID`=0 AND `ID`=0;
|
||||
UPDATE `creature_text` SET `BroadcastTextId`=6289 WHERE `CreatureID`=10440 AND `GroupID`=1 AND `ID`=0;
|
||||
UPDATE `creature_text` SET `BroadcastTextId`=11813 WHERE `CreatureID`=10440 AND `GroupID`=2 AND `ID`=0;
|
||||
UPDATE `creature_text` SET `BroadcastTextId`=11815 WHERE `CreatureID`=10440 AND `GroupID`=3 AND `ID`=0;
|
||||
UPDATE `creature_text` SET `BroadcastTextId`=11814 WHERE `CreatureID`=10440 AND `GroupID`=4 AND `ID`=0;
|
||||
UPDATE `creature_text` SET `BroadcastTextId`=6398 WHERE `CreatureID`=10440 AND `GroupID`=5 AND `ID`=0;
|
||||
UPDATE `creature_text` SET `BroadcastTextId`=6401 WHERE `CreatureID`=10440 AND `GroupID`=6 AND `ID`=0;
|
||||
UPDATE `creature_text` SET `BroadcastTextId`=6511 WHERE `CreatureID`=10440 AND `GroupID`=7 AND `ID`=0;
|
||||
UPDATE `creature_text` SET `BroadcastTextId`=6512 WHERE `CreatureID`=10440 AND `GroupID`=8 AND `ID`=0;
|
||||
|
||||
-- Bile Spewer
|
||||
DELETE FROM `creature_text` WHERE `CreatureID`=10416 AND `GroupID`=0 AND `ID`=0;
|
||||
INSERT INTO `creature_text` VALUES (10416, 0, 0, '%s belches out a disgusting Bile Slime!', 16, 0, 100, 0, 0, 0, 6258, 0, 'Bile Spewer');
|
||||
|
||||
-- Ysida Harmon What is the same text content as GroupID 0 and 1?
|
||||
UPDATE `creature_text` SET `BroadcastTextId`=11931 WHERE `CreatureID`=16031 AND `GroupID`=1 AND `ID`=0;
|
||||
|
||||
-- Crimson Gallant
|
||||
DELETE FROM `creature_text` WHERE `CreatureID`=10424;
|
||||
INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES
|
||||
(10424, 0, 0, 'They have broken into the Hall of Lights! We must stop the intruders!', 14, 7, 100, 0, 0, 0, 6379, 0, 'Crimson Gallant'),
|
||||
(10424, 1, 0, 'The Scourge have broken through in all wings! May the light defeat these foul creatures! We shall fight to the last!', 14, 7, 100, 0, 0, 0, 6439, 0, 'Crimson Gallant');
|
||||
3
data/sql/updates/db_world/2024_06_07_01.sql
Normal file
3
data/sql/updates/db_world/2024_06_07_01.sql
Normal file
@@ -0,0 +1,3 @@
|
||||
-- DB update 2024_06_07_00 -> 2024_06_07_01
|
||||
--
|
||||
UPDATE `achievement_reward` SET `Subject`='Heroic: Glory of the Ulduar Raider' WHERE `ID`=2958;
|
||||
18184
data/sql/updates/db_world/2024_06_07_02.sql
Normal file
18184
data/sql/updates/db_world/2024_06_07_02.sql
Normal file
File diff suppressed because it is too large
Load Diff
3
data/sql/updates/db_world/2024_06_07_03.sql
Normal file
3
data/sql/updates/db_world/2024_06_07_03.sql
Normal file
@@ -0,0 +1,3 @@
|
||||
-- DB update 2024_06_07_02 -> 2024_06_07_03
|
||||
--
|
||||
UPDATE `item_template` SET `HolidayId` = 181 WHERE `entry` = 45067;
|
||||
@@ -36,7 +36,7 @@ enum BG_EY_Timers
|
||||
BG_EY_FLAG_RESPAWN_TIME = 10 * IN_MILLISECONDS,
|
||||
BG_EY_FLAG_ON_GROUND_TIME = 10 * IN_MILLISECONDS,
|
||||
BG_EY_FPOINTS_CHECK_TIME = 2 * IN_MILLISECONDS,
|
||||
BG_EY_FPOINTS_TICK_TIME = 1 * IN_MILLISECONDS
|
||||
BG_EY_FPOINTS_TICK_TIME = 2 * IN_MILLISECONDS
|
||||
};
|
||||
|
||||
enum BG_EY_WorldStates
|
||||
|
||||
@@ -3984,8 +3984,8 @@ void Player::DeleteFromDB(ObjectGuid::LowType lowGuid, uint32 accountId, bool up
|
||||
sTicketMgr->CloseTicket(ticket->GetId(), playerGuid);
|
||||
|
||||
// remove from group
|
||||
if (uint32 groupId = sCharacterCache->GetCharacterGuildIdByGuid(playerGuid))
|
||||
if (Group* group = sGroupMgr->GetGroupByGUID(groupId))
|
||||
if (ObjectGuid groupId = sCharacterCache->GetCharacterGroupGuidByGuid(playerGuid))
|
||||
if (Group* group = sGroupMgr->GetGroupByGUID(groupId.GetCounter()))
|
||||
RemoveFromGroup(group, playerGuid);
|
||||
|
||||
// Remove signs from petitions (also remove petitions if owner);
|
||||
|
||||
@@ -892,7 +892,7 @@ void Player::FailQuest(uint32 questId)
|
||||
{
|
||||
QuestStatus qStatus = GetQuestStatus(questId);
|
||||
// xinef: if quest is marked as failed, dont do it again
|
||||
if (qStatus != QUEST_STATUS_INCOMPLETE)
|
||||
if ((qStatus != QUEST_STATUS_INCOMPLETE) && (!quest->HasSpecialFlag(QUEST_SPECIAL_FLAGS_TIMED)))
|
||||
return;
|
||||
|
||||
SetQuestStatus(questId, QUEST_STATUS_FAILED);
|
||||
|
||||
@@ -50,6 +50,10 @@ static const Position aGateTrap[] =
|
||||
{3919.88f, -3547.34f, 134.269f, 2.94961f} // Undead side
|
||||
};
|
||||
|
||||
Position const MindlessUndeadPos = { 3941.75f, -3393.06f, 119.70f, 0.0f };
|
||||
Position const BarthilasPos = { 4068.74f, -3535.97f, 122.825f, 2.478367567062377929f };
|
||||
Position const SlaughterPos = { 4032.20f, -3378.06f, 119.75f, 4.67f };
|
||||
|
||||
// uint32 m_uiGateTrapTimers[2][3] = { {0,0,0}, {0,0,0} };
|
||||
|
||||
class instance_stratholme : public InstanceMapScript
|
||||
@@ -86,6 +90,8 @@ public:
|
||||
if (_baronRunTime > 0)
|
||||
if (Aura* aura = player->AddAura(SPELL_BARON_ULTIMATUM, player))
|
||||
aura->SetDuration(_baronRunTime * MINUTE * IN_MILLISECONDS);
|
||||
if (_barthilasrunProgress == DONE)
|
||||
instance->LoadGrid(3663.229980f, -3619.139893f);
|
||||
}
|
||||
|
||||
void OnCreatureCreate(Creature* creature) override
|
||||
@@ -112,6 +118,11 @@ public:
|
||||
if (_slaughterProgress == 3)
|
||||
++_slaughterNPCs;
|
||||
break;
|
||||
case NPC_BARTHILAS:
|
||||
_barthilasGUID = creature->GetGUID();
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -122,8 +133,7 @@ public:
|
||||
if (Creature* baron = instance->GetCreature(_baronRivendareGUID))
|
||||
baron->AI()->Talk(SAY_BRAON_SUMMON_RAMSTEIN);
|
||||
|
||||
Position pos = {4032.20f, -3378.06f, 119.75f, 4.67f};
|
||||
instance->SummonCreature(NPC_RAMSTEIN_THE_GORGER, pos);
|
||||
instance->SummonCreature(NPC_RAMSTEIN_THE_GORGER, SlaughterPos);
|
||||
}
|
||||
if (_slaughterProgress == 2)
|
||||
{
|
||||
@@ -243,6 +253,8 @@ public:
|
||||
go->AllowSaveToDB(true);
|
||||
_trapGatesGUIDs[3] = go->GetGUID();
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -282,65 +294,79 @@ public:
|
||||
switch (type)
|
||||
{
|
||||
case TYPE_BARON_RUN:
|
||||
{
|
||||
if (_baronRunProgress == DATA_BARON_RUN_NONE)
|
||||
{
|
||||
if (_baronRunProgress == DATA_BARON_RUN_NONE)
|
||||
{
|
||||
_baronRunProgress = DATA_BARON_RUN_GATE;
|
||||
_baronRunTime = 45;
|
||||
DoCastSpellOnPlayers(SPELL_BARON_ULTIMATUM);
|
||||
events.ScheduleEvent(EVENT_BARON_TIME, 60000);
|
||||
_baronRunProgress = DATA_BARON_RUN_GATE;
|
||||
_baronRunTime = 45;
|
||||
DoCastSpellOnPlayers(SPELL_BARON_ULTIMATUM);
|
||||
events.ScheduleEvent(EVENT_BARON_TIME, 60000);
|
||||
|
||||
instance->LoadGrid(4035.83f, -3336.31f);
|
||||
if (Creature* baron = instance->GetCreature(_baronRivendareGUID))
|
||||
baron->AI()->Talk(SAY_BARON_INIT_YELL);
|
||||
}
|
||||
break;
|
||||
instance->LoadGrid(4035.83f, -3336.31f);
|
||||
if (Creature* baron = instance->GetCreature(_baronRivendareGUID))
|
||||
baron->AI()->Talk(SAY_BARON_INIT_YELL);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TYPE_ZIGGURAT1:
|
||||
{
|
||||
if (data == _zigguratState1 + 1)
|
||||
++_zigguratState1;
|
||||
{
|
||||
if (data == _zigguratState1 + 1)
|
||||
++_zigguratState1;
|
||||
|
||||
if (_zigguratState1 == 1)
|
||||
if (GameObject* ziggurat = instance->GetGameObject(_zigguratDoorsGUID1))
|
||||
ziggurat->SetGoState(GO_STATE_ACTIVE);
|
||||
if (_zigguratState1 == 1)
|
||||
if (GameObject* ziggurat = instance->GetGameObject(_zigguratDoorsGUID1))
|
||||
ziggurat->SetGoState(GO_STATE_ACTIVE);
|
||||
|
||||
CheckZiggurats();
|
||||
break;
|
||||
}
|
||||
CheckZiggurats();
|
||||
break;
|
||||
}
|
||||
case TYPE_ZIGGURAT2:
|
||||
{
|
||||
if (data == _zigguratState2 + 1)
|
||||
++_zigguratState2;
|
||||
{
|
||||
if (data == _zigguratState2 + 1)
|
||||
++_zigguratState2;
|
||||
|
||||
if (_zigguratState2 == 1)
|
||||
if (GameObject* ziggurat = instance->GetGameObject(_zigguratDoorsGUID2))
|
||||
ziggurat->SetGoState(GO_STATE_ACTIVE);
|
||||
if (_zigguratState2 == 1)
|
||||
if (GameObject* ziggurat = instance->GetGameObject(_zigguratDoorsGUID2))
|
||||
ziggurat->SetGoState(GO_STATE_ACTIVE);
|
||||
|
||||
CheckZiggurats();
|
||||
break;
|
||||
}
|
||||
CheckZiggurats();
|
||||
break;
|
||||
}
|
||||
case TYPE_ZIGGURAT3:
|
||||
{
|
||||
if (data == _zigguratState3 + 1)
|
||||
++_zigguratState3;
|
||||
{
|
||||
if (data == _zigguratState3 + 1)
|
||||
++_zigguratState3;
|
||||
|
||||
if (_zigguratState3 == 1)
|
||||
if (GameObject* ziggurat = instance->GetGameObject(_zigguratDoorsGUID3))
|
||||
ziggurat->SetGoState(GO_STATE_ACTIVE);
|
||||
if (_zigguratState3 == 1)
|
||||
if (GameObject* ziggurat = instance->GetGameObject(_zigguratDoorsGUID3))
|
||||
ziggurat->SetGoState(GO_STATE_ACTIVE);
|
||||
|
||||
CheckZiggurats();
|
||||
break;
|
||||
}
|
||||
CheckZiggurats();
|
||||
break;
|
||||
}
|
||||
case TYPE_BARON_FIGHT:
|
||||
{
|
||||
if (GameObject* gate = instance->GetGameObject(_zigguratDoorsGUID5))
|
||||
gate->SetGoState(data == IN_PROGRESS ? GO_STATE_READY : GO_STATE_ACTIVE);
|
||||
return;
|
||||
}
|
||||
{
|
||||
if (GameObject* gate = instance->GetGameObject(_zigguratDoorsGUID5))
|
||||
gate->SetGoState(data == IN_PROGRESS ? GO_STATE_READY : GO_STATE_ACTIVE);
|
||||
return;
|
||||
}
|
||||
case TYPE_MALLOW:
|
||||
++_postboxesOpened;
|
||||
break;
|
||||
case TYPE_BARTHILAS_RUN:
|
||||
if (data == DONE)
|
||||
{
|
||||
if (Creature* barthilas = instance->GetCreature(_barthilasGUID))
|
||||
{
|
||||
if (barthilas->IsAlive())
|
||||
{
|
||||
barthilas->NearTeleportTo(BarthilasPos.GetPositionX(), BarthilasPos.GetPositionY(), BarthilasPos.GetPositionZ(), BarthilasPos.GetOrientation());
|
||||
barthilas->SetHomePosition(BarthilasPos);
|
||||
}
|
||||
}
|
||||
}
|
||||
_barthilasrunProgress = data;
|
||||
break;
|
||||
}
|
||||
|
||||
SaveToDB();
|
||||
@@ -355,7 +381,7 @@ public:
|
||||
data >> _zigguratState3;
|
||||
data >> _slaughterProgress;
|
||||
data >> _postboxesOpened;
|
||||
|
||||
data >> _barthilasrunProgress;
|
||||
if (_baronRunTime)
|
||||
{
|
||||
events.ScheduleEvent(EVENT_BARON_TIME, 60000);
|
||||
@@ -375,7 +401,8 @@ public:
|
||||
<< _zigguratState2 << ' '
|
||||
<< _zigguratState3 << ' '
|
||||
<< _slaughterProgress << ' '
|
||||
<< _postboxesOpened;
|
||||
<< _postboxesOpened << ' '
|
||||
<< _barthilasrunProgress;
|
||||
}
|
||||
|
||||
uint32 GetData(uint32 type) const override
|
||||
@@ -390,6 +417,8 @@ public:
|
||||
return _zigguratState3;
|
||||
case TYPE_MALLOW:
|
||||
return _postboxesOpened;
|
||||
case TYPE_BARTHILAS_RUN:
|
||||
return _barthilasrunProgress;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
@@ -475,91 +504,92 @@ public:
|
||||
gate_critter_delay(GATE2);
|
||||
break;
|
||||
case EVENT_BARON_TIME:
|
||||
{
|
||||
--_baronRunTime;
|
||||
instance->LoadGrid(4035.83f, -3336.31f);
|
||||
Creature* baron = instance->GetCreature(_baronRivendareGUID);
|
||||
if (baron && !baron->IsInCombat())
|
||||
{
|
||||
--_baronRunTime;
|
||||
instance->LoadGrid(4035.83f, -3336.31f);
|
||||
Creature* baron = instance->GetCreature(_baronRivendareGUID);
|
||||
if (baron && !baron->IsInCombat())
|
||||
switch (_baronRunTime)
|
||||
{
|
||||
switch (_baronRunTime)
|
||||
{
|
||||
case 10:
|
||||
baron->AI()->Talk(SAY_BARON_10M);
|
||||
break;
|
||||
case 5:
|
||||
baron->AI()->Talk(SAY_BARON_5M);
|
||||
if (Creature* ysida = baron->FindNearestCreature(NPC_YSIDA, 50.0f))
|
||||
ysida->AI()->SetData(1, 1);
|
||||
break;
|
||||
case 0:
|
||||
baron->AI()->Talk(SAY_BARON_0M);
|
||||
DoRemoveAurasDueToSpellOnPlayers(SPELL_BARON_ULTIMATUM);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (_baronRunTime > 0)
|
||||
events.ScheduleEvent(EVENT_BARON_TIME, 60s);
|
||||
else
|
||||
events.ScheduleEvent(EVENT_EXECUTE_PRISONER, 0ms);
|
||||
|
||||
SaveToDB();
|
||||
break;
|
||||
}
|
||||
case EVENT_EXECUTE_PRISONER:
|
||||
{
|
||||
instance->LoadGrid(4035.83f, -3336.31f);
|
||||
Creature* baron = instance->GetCreature(_baronRivendareGUID);
|
||||
if (baron && baron->IsAlive())
|
||||
{
|
||||
if (!baron->IsInCombat())
|
||||
{
|
||||
baron->HandleEmoteCommand(EMOTE_ONESHOT_ATTACK1H);
|
||||
case 10:
|
||||
baron->AI()->Talk(SAY_BARON_10M);
|
||||
break;
|
||||
case 5:
|
||||
baron->AI()->Talk(SAY_BARON_5M);
|
||||
if (Creature* ysida = baron->FindNearestCreature(NPC_YSIDA, 50.0f))
|
||||
Unit::Kill(baron, ysida);
|
||||
}
|
||||
else
|
||||
events.ScheduleEvent(EVENT_EXECUTE_PRISONER, 1s);
|
||||
ysida->AI()->SetData(1, 1);
|
||||
break;
|
||||
case 0:
|
||||
baron->AI()->Talk(SAY_BARON_0M);
|
||||
DoRemoveAurasDueToSpellOnPlayers(SPELL_BARON_ULTIMATUM);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
if (_baronRunTime > 0)
|
||||
events.ScheduleEvent(EVENT_BARON_TIME, 60s);
|
||||
else
|
||||
events.ScheduleEvent(EVENT_EXECUTE_PRISONER, 0ms);
|
||||
|
||||
SaveToDB();
|
||||
break;
|
||||
}
|
||||
case EVENT_EXECUTE_PRISONER:
|
||||
{
|
||||
instance->LoadGrid(4035.83f, -3336.31f);
|
||||
Creature* baron = instance->GetCreature(_baronRivendareGUID);
|
||||
if (baron && baron->IsAlive())
|
||||
{
|
||||
if (!baron->IsInCombat())
|
||||
{
|
||||
baron->HandleEmoteCommand(EMOTE_ONESHOT_ATTACK1H);
|
||||
if (Creature* ysida = baron->FindNearestCreature(NPC_YSIDA, 50.0f))
|
||||
Unit::Kill(baron, ysida);
|
||||
}
|
||||
else
|
||||
events.ScheduleEvent(EVENT_EXECUTE_PRISONER, 1s);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case EVENT_SPAWN_MINDLESS:
|
||||
{
|
||||
Position pos = {3941.75f, -3393.06f, 119.70f, 0.0f};
|
||||
instance->SummonCreature(NPC_MINDLESS_UNDEAD, pos);
|
||||
break;
|
||||
}
|
||||
{
|
||||
instance->SummonCreature(NPC_MINDLESS_UNDEAD, MindlessUndeadPos);
|
||||
break;
|
||||
}
|
||||
case EVENT_FORCE_SLAUGHTER_EVENT:
|
||||
{
|
||||
Map::PlayerList const& PlayerList = instance->GetPlayers();
|
||||
if (!PlayerList.IsEmpty())
|
||||
for (Map::PlayerList::const_iterator i = PlayerList.begin(); i != PlayerList.end(); ++i)
|
||||
if (Player* player = i->GetSource())
|
||||
if (player->GetDistance2d(4034.97f, -3402.13f) < 50.0f)
|
||||
{
|
||||
ProcessSlaughterEvent();
|
||||
return;
|
||||
}
|
||||
{
|
||||
Map::PlayerList const& PlayerList = instance->GetPlayers();
|
||||
if (!PlayerList.IsEmpty())
|
||||
for (Map::PlayerList::const_iterator i = PlayerList.begin(); i != PlayerList.end(); ++i)
|
||||
if (Player* player = i->GetSource())
|
||||
if (player->GetDistance2d(4034.97f, -3402.13f) < 50.0f)
|
||||
{
|
||||
ProcessSlaughterEvent();
|
||||
return;
|
||||
}
|
||||
|
||||
events.ScheduleEvent(EVENT_FORCE_SLAUGHTER_EVENT, 3s);
|
||||
break;
|
||||
}
|
||||
events.ScheduleEvent(EVENT_FORCE_SLAUGHTER_EVENT, 3s);
|
||||
break;
|
||||
}
|
||||
case EVENT_SPAWN_BLACK_GUARD:
|
||||
{
|
||||
for (uint8 i = 0; i < 5; ++i)
|
||||
if (Creature* guard = instance->SummonCreature(NPC_BLACK_GUARD, BlackGuardPos[i]))
|
||||
{
|
||||
guard->SetWalk(true);
|
||||
guard->GetMotionMaster()->MovePoint(0, BlackGuardPos[i + 5]);
|
||||
guard->SetHomePosition(BlackGuardPos[i + 5]);
|
||||
if (i == 0 && guard->AI())
|
||||
guard->AI()->Talk(SAY_BLACK_GUARD_INIT);
|
||||
}
|
||||
{
|
||||
for (uint8 i = 0; i < 5; ++i)
|
||||
if (Creature* guard = instance->SummonCreature(NPC_BLACK_GUARD, BlackGuardPos[i]))
|
||||
{
|
||||
guard->SetWalk(true);
|
||||
guard->GetMotionMaster()->MovePoint(0, BlackGuardPos[i + 5]);
|
||||
guard->SetHomePosition(BlackGuardPos[i + 5]);
|
||||
if (i == 0 && guard->AI())
|
||||
guard->AI()->Talk(SAY_BLACK_GUARD_INIT);
|
||||
}
|
||||
|
||||
if (GameObject* gate = instance->GetGameObject(_zigguratDoorsGUID4))
|
||||
gate->SetGoState(GO_STATE_ACTIVE);
|
||||
break;
|
||||
}
|
||||
if (GameObject* gate = instance->GetGameObject(_zigguratDoorsGUID4))
|
||||
gate->SetGoState(GO_STATE_ACTIVE);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -571,6 +601,7 @@ public:
|
||||
uint32 _zigguratState3;
|
||||
uint32 _slaughterProgress;
|
||||
uint32 _slaughterNPCs;
|
||||
uint32 _barthilasrunProgress{};
|
||||
uint32 _postboxesOpened;
|
||||
EventMap events;
|
||||
|
||||
@@ -582,6 +613,7 @@ public:
|
||||
ObjectGuid _slaughterGateGUID;
|
||||
ObjectGuid _gauntletGateGUID;
|
||||
ObjectGuid _baronRivendareGUID;
|
||||
ObjectGuid _barthilasGUID;
|
||||
|
||||
bool _gateTrapsCooldown[2];
|
||||
ObjectGuid _trappedPlayerGUID;
|
||||
|
||||
@@ -31,6 +31,7 @@ enum DataTypes
|
||||
TYPE_ZIGGURAT3 = 3,
|
||||
TYPE_BARON_FIGHT = 4,
|
||||
TYPE_MALLOW = 5,
|
||||
TYPE_BARTHILAS_RUN = 6,
|
||||
|
||||
DATA_BARON_RUN_NONE = 0,
|
||||
DATA_BARON_RUN_GATE = 1,
|
||||
@@ -40,6 +41,7 @@ enum DataTypes
|
||||
|
||||
enum CreatureIds
|
||||
{
|
||||
NPC_BARTHILAS = 10435,
|
||||
NPC_BARON_RIVENDARE = 10440,
|
||||
NPC_BILE_SPEWER = 10416,
|
||||
NPC_VENOM_BELCHER = 10417,
|
||||
|
||||
@@ -60,7 +60,7 @@ public:
|
||||
|
||||
scheduler.Schedule(20s, 28s, [this](TaskContext context)
|
||||
{
|
||||
if (DoCastRandomTarget(SPELL_CARRION_SWARM, 0, 60.f) == SPELL_CAST_OK)
|
||||
if (DoCastRandomTarget(SPELL_CARRION_SWARM, 0, 60.f, false) == SPELL_CAST_OK)
|
||||
Talk(SAY_SWARM);
|
||||
context.Repeat(10s, 15s);
|
||||
}).Schedule(25s, 32s, [this](TaskContext context)
|
||||
|
||||
@@ -342,6 +342,10 @@ struct boss_archimonde : public BossAI
|
||||
DoCastRandomTarget(SPELL_FINGER_OF_DEATH);
|
||||
}
|
||||
}, 3500ms);
|
||||
ScheduleTimedEvent(10min, [&]
|
||||
{
|
||||
DoCastRandomTarget(SPELL_FINGER_OF_DEATH);
|
||||
}, 3500ms);
|
||||
|
||||
instance->SetData(DATA_SPAWN_WAVES, 1);
|
||||
}
|
||||
@@ -360,22 +364,22 @@ struct boss_archimonde : public BossAI
|
||||
{
|
||||
switch (player->getClass())
|
||||
{
|
||||
case CLASS_PRIEST:
|
||||
case CLASS_PALADIN:
|
||||
case CLASS_PRIEST:
|
||||
case CLASS_WARLOCK:
|
||||
player->CastSpell(me, SPELL_SOUL_CHARGE_RED, true);
|
||||
break;
|
||||
case CLASS_DEATH_KNIGHT:
|
||||
case CLASS_MAGE:
|
||||
case CLASS_ROGUE:
|
||||
case CLASS_WARRIOR:
|
||||
player->CastSpell(me, SPELL_SOUL_CHARGE_YELLOW, true);
|
||||
break;
|
||||
case CLASS_DRUID:
|
||||
case CLASS_SHAMAN:
|
||||
case CLASS_HUNTER:
|
||||
case CLASS_SHAMAN:
|
||||
player->CastSpell(me, SPELL_SOUL_CHARGE_GREEN, true);
|
||||
break;
|
||||
case CLASS_DEATH_KNIGHT:
|
||||
case CLASS_NONE:
|
||||
default:
|
||||
break;
|
||||
|
||||
@@ -70,7 +70,7 @@ public:
|
||||
context.Repeat(18s, 20s);
|
||||
}).Schedule(45s, 55s, [this](TaskContext context)
|
||||
{
|
||||
DoCastRandomTarget(SPELL_DOOM, 1, 100.f, true, false, false);
|
||||
DoCastAOE(SPELL_DOOM);
|
||||
Talk(SAY_DOOM);
|
||||
context.Repeat();
|
||||
}).Schedule(10min, [this](TaskContext context)
|
||||
@@ -118,9 +118,27 @@ private:
|
||||
bool _recentlySpoken;
|
||||
};
|
||||
|
||||
class spell_azgalor_doom : public AuraScript
|
||||
class spell_azgalor_doom : public SpellScript
|
||||
{
|
||||
PrepareAuraScript(spell_azgalor_doom);
|
||||
PrepareSpellScript(spell_azgalor_doom);
|
||||
|
||||
void FilterTargets(std::list<WorldObject*>& targets)
|
||||
{
|
||||
if (Unit* victim = GetCaster()->GetVictim())
|
||||
{
|
||||
targets.remove_if(Acore::ObjectGUIDCheck(victim->GetGUID(), true));
|
||||
}
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_azgalor_doom::FilterTargets, EFFECT_0, TARGET_UNIT_SRC_AREA_ENEMY);
|
||||
}
|
||||
};
|
||||
|
||||
class spell_azgalor_doom_aura : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_azgalor_doom_aura);
|
||||
|
||||
void OnRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)
|
||||
{
|
||||
@@ -133,12 +151,12 @@ class spell_azgalor_doom : public AuraScript
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectRemove += AuraEffectRemoveFn(spell_azgalor_doom::OnRemove, EFFECT_0, SPELL_AURA_PERIODIC_TRIGGER_SPELL, AURA_EFFECT_HANDLE_REAL);
|
||||
OnEffectRemove += AuraEffectRemoveFn(spell_azgalor_doom_aura::OnRemove, EFFECT_0, SPELL_AURA_PERIODIC_TRIGGER_SPELL, AURA_EFFECT_HANDLE_REAL);
|
||||
}
|
||||
};
|
||||
|
||||
void AddSC_boss_azgalor()
|
||||
{
|
||||
RegisterHyjalAI(boss_azgalor);
|
||||
RegisterSpellScript(spell_azgalor_doom);
|
||||
RegisterSpellAndAuraScriptPair(spell_azgalor_doom, spell_azgalor_doom_aura);
|
||||
}
|
||||
|
||||
@@ -220,41 +220,41 @@ public:
|
||||
{
|
||||
switch (creature->GetEntry())
|
||||
{
|
||||
case NPC_NECRO:
|
||||
case NPC_ABOMI:
|
||||
case NPC_GHOUL:
|
||||
case NPC_BANSH:
|
||||
case NPC_CRYPT:
|
||||
case NPC_GARGO:
|
||||
case NPC_FROST:
|
||||
case NPC_INFER:
|
||||
case NPC_STALK:
|
||||
if (unit->ToCreature()->IsSummon())
|
||||
{
|
||||
if (_bossWave)
|
||||
case NPC_NECRO:
|
||||
case NPC_ABOMI:
|
||||
case NPC_GHOUL:
|
||||
case NPC_BANSH:
|
||||
case NPC_CRYPT:
|
||||
case NPC_GARGO:
|
||||
case NPC_FROST:
|
||||
case NPC_INFER:
|
||||
case NPC_STALK:
|
||||
if (creature->IsSummon())
|
||||
{
|
||||
DoUpdateWorldState(WORLD_STATE_ENEMYCOUNT, --trash); // Update the instance wave count on new trash death
|
||||
_encounterNPCs.erase(unit->ToCreature()->GetGUID()); // Used for despawning on wipe
|
||||
if (_bossWave)
|
||||
{
|
||||
DoUpdateWorldState(WORLD_STATE_ENEMYCOUNT, --trash); // Update the instance wave count on new trash death
|
||||
_encounterNPCs.erase(creature->GetGUID()); // Used for despawning on wipe
|
||||
|
||||
if (trash == 0) // It can reach negatives if trash spawned after a retreat are killed, it shouldn't affect anything. Also happens on retail
|
||||
SetData(DATA_SPAWN_WAVES, 1);
|
||||
if (trash == 0) // It can reach negatives if trash spawned after a retreat are killed, it shouldn't affect anything. Also happens on retail
|
||||
SetData(DATA_SPAWN_WAVES, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case NPC_TOWERING_INFERNAL:
|
||||
case NPC_LESSER_DOOMGUARD:
|
||||
_summonedNPCs.erase(unit->ToCreature()->GetGUID());
|
||||
break;
|
||||
case NPC_WINTERCHILL:
|
||||
case NPC_ANETHERON:
|
||||
case NPC_KAZROGAL:
|
||||
case NPC_AZGALOR:
|
||||
if (Creature* jaina = GetCreature(DATA_JAINA))
|
||||
jaina->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP);
|
||||
if (Creature* thrall = GetCreature(DATA_THRALL))
|
||||
thrall->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP);
|
||||
SetData(DATA_RESET_WAVES, 1);
|
||||
break;
|
||||
break;
|
||||
case NPC_TOWERING_INFERNAL:
|
||||
case NPC_LESSER_DOOMGUARD:
|
||||
_summonedNPCs.erase(creature->GetGUID());
|
||||
break;
|
||||
case NPC_WINTERCHILL:
|
||||
case NPC_ANETHERON:
|
||||
case NPC_KAZROGAL:
|
||||
case NPC_AZGALOR:
|
||||
if (Creature* jaina = GetCreature(DATA_JAINA))
|
||||
jaina->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP);
|
||||
if (Creature* thrall = GetCreature(DATA_THRALL))
|
||||
thrall->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP);
|
||||
SetData(DATA_RESET_WAVES, 1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -268,19 +268,23 @@ public:
|
||||
_retreat = DATA_ALLIANCE_RETREAT;
|
||||
// Spawn Ancient Gems
|
||||
for (ObjectGuid const& guid : _ancientGemAlliance)
|
||||
instance->GetGameObject(guid)->Respawn();
|
||||
if (GameObject* gem = instance->GetGameObject(guid))
|
||||
gem->Respawn();
|
||||
|
||||
// Move all alliance NPCs near Jaina (only happens in this base, not Horde's)
|
||||
if (Creature* jaina = GetCreature(DATA_JAINA))
|
||||
{
|
||||
for (ObjectGuid const& guid : _baseAlliance)
|
||||
{
|
||||
if (instance->GetCreature(guid) && instance->GetCreature(guid)->IsAlive())
|
||||
if (Creature* creature = instance->GetCreature(guid))
|
||||
{
|
||||
float x, y, z;
|
||||
jaina->GetNearPoint(instance->GetCreature(guid), x, y, z, 10.f, 0, jaina->GetAngle(instance->GetCreature(guid)));
|
||||
instance->GetCreature(guid)->SetWalk(true);
|
||||
instance->GetCreature(guid)->GetMotionMaster()->MovePoint(1, x, y, z);
|
||||
if (creature->IsAlive())
|
||||
{
|
||||
float x, y, z;
|
||||
jaina->GetNearPoint(creature, x, y, z, 10.f, 0, jaina->GetAngle(creature));
|
||||
creature->SetWalk(true);
|
||||
creature->GetMotionMaster()->MovePoint(1, x, y, z);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -296,7 +300,10 @@ public:
|
||||
_scheduler.Schedule(30s, [this](TaskContext)
|
||||
{
|
||||
for (ObjectGuid const& guid : _roaringFlameAlliance)
|
||||
instance->GetGameObject(guid)->Respawn();
|
||||
{
|
||||
if (GameObject* flame = instance->GetGameObject(guid))
|
||||
flame->Respawn();
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
@@ -309,18 +316,24 @@ public:
|
||||
_bossWave = 0;
|
||||
_retreat = DATA_HORDE_RETREAT;
|
||||
for (ObjectGuid const& guid : _ancientGemHorde)
|
||||
instance->GetGameObject(guid)->Respawn();
|
||||
{
|
||||
if (GameObject* gem = instance->GetGameObject(guid))
|
||||
gem->Respawn();
|
||||
}
|
||||
|
||||
if (Creature* jaina = GetCreature(DATA_JAINA))
|
||||
{
|
||||
for (ObjectGuid const& guid : _baseHorde)
|
||||
{
|
||||
if (instance->GetCreature(guid) && instance->GetCreature(guid)->IsAlive())
|
||||
if (Creature* creature = instance->GetCreature(guid))
|
||||
{
|
||||
float x, y, z;
|
||||
jaina->GetNearPoint(instance->GetCreature(guid), x, y, z, 10.f, 0, jaina->GetAngle(instance->GetCreature(guid)));
|
||||
instance->GetCreature(guid)->SetWalk(true);
|
||||
instance->GetCreature(guid)->GetMotionMaster()->MovePoint(1, x, y, z);
|
||||
if (creature->IsAlive())
|
||||
{
|
||||
float x, y, z;
|
||||
jaina->GetNearPoint(creature, x, y, z, 10.f, 0, jaina->GetAngle(creature));
|
||||
creature->SetWalk(true);
|
||||
creature->GetMotionMaster()->MovePoint(1, x, y, z);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -334,7 +347,8 @@ public:
|
||||
_scheduler.Schedule(30s, [this](TaskContext)
|
||||
{
|
||||
for (ObjectGuid const& guid : _roaringFlameHorde)
|
||||
instance->GetGameObject(guid)->Respawn();
|
||||
if (GameObject* flame = instance->GetGameObject(guid))
|
||||
flame->Respawn();
|
||||
});
|
||||
});
|
||||
|
||||
@@ -466,7 +480,8 @@ public:
|
||||
if (Creature* creature = instance->GetCreature(guid))
|
||||
creature->DespawnOrUnsummon();
|
||||
|
||||
GetCreature(DATA_ARCHIMONDE)->DespawnOrUnsummon();
|
||||
if (Creature* archimonde = GetCreature(DATA_ARCHIMONDE))
|
||||
archimonde->DespawnOrUnsummon();
|
||||
|
||||
_scheduler.Schedule(300s, [this](TaskContext)
|
||||
{
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
#define GOSSIP_ITEM_1 "Brann, it would be our honor!"
|
||||
#define GOSSIP_ITEM_2 "Let's move Brann, enough of the history lessons!"
|
||||
#define GOSSIP_ITEM_3 "We dont have time for this right now, we have to keep going."
|
||||
#define GOSSIP_ITEM_3 "There will be plenty of time for this later Brann, we need to get moving!"
|
||||
#define GOSSIP_ITEM_4 "We're with you Brann! Open it!"
|
||||
#define TEXT_ID_START 13100
|
||||
|
||||
|
||||
@@ -718,11 +718,15 @@ struct npc_pet_gen_toxic_wasteling : public PassiveAI
|
||||
}
|
||||
};
|
||||
|
||||
enum FetchBall
|
||||
{
|
||||
SPELL_PET_TOY_FETCH_BALL_COME_HERE = 48649,
|
||||
SPELL_PET_TOY_FETCH_BALL_HAS_BALL = 48708
|
||||
};
|
||||
|
||||
struct npc_pet_gen_fetch_ball : public NullCreatureAI
|
||||
{
|
||||
npc_pet_gen_fetch_ball(Creature* c) : NullCreatureAI(c)
|
||||
{
|
||||
}
|
||||
npc_pet_gen_fetch_ball(Creature* c) : NullCreatureAI(c) { }
|
||||
|
||||
uint32 checkTimer;
|
||||
ObjectGuid targetGUID;
|
||||
@@ -735,12 +739,12 @@ struct npc_pet_gen_fetch_ball : public NullCreatureAI
|
||||
me->SetOwnerGUID(summoner->GetGUID());
|
||||
checkTimer = 0;
|
||||
targetGUID.Clear();
|
||||
me->CastSpell(me, 48649 /*SPELL_PET_TOY_FETCH_BALL_COME_HERE*/, true);
|
||||
me->CastSpell(me, SPELL_PET_TOY_FETCH_BALL_COME_HERE, true);
|
||||
}
|
||||
|
||||
void SpellHitTarget(Unit* target, SpellInfo const* spellInfo) override
|
||||
{
|
||||
if (spellInfo->Id == 48649 /*SPELL_PET_TOY_FETCH_BALL_COME_HERE*/)
|
||||
if (spellInfo->Id == SPELL_PET_TOY_FETCH_BALL_COME_HERE)
|
||||
{
|
||||
target->GetMotionMaster()->MovePoint(50, me->GetHomePosition());
|
||||
targetGUID = target->GetGUID();
|
||||
@@ -757,8 +761,8 @@ struct npc_pet_gen_fetch_ball : public NullCreatureAI
|
||||
if (me->GetDistance2d(target) < 2.0f)
|
||||
{
|
||||
target->AI()->EnterEvadeMode();
|
||||
target->CastSpell(target, 48708 /*SPELL_PET_TOY_FETCH_BALL_HAS_BALL*/, true);
|
||||
me->DespawnOrUnsummon(1);
|
||||
target->CastSpell(target, SPELL_PET_TOY_FETCH_BALL_HAS_BALL, true);
|
||||
me->DespawnOrUnsummon();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -173,8 +173,8 @@ protected:
|
||||
}
|
||||
}
|
||||
|
||||
for (int removeIndex : newSocketsToRemoveIndexes)
|
||||
_newSockets.erase(_newSockets.begin() + removeIndex);
|
||||
for (auto it = newSocketsToRemoveIndexes.rbegin(); it != newSocketsToRemoveIndexes.rend(); ++it)
|
||||
_newSockets.erase(_newSockets.begin() + *it);
|
||||
}
|
||||
|
||||
void Run()
|
||||
|
||||
Reference in New Issue
Block a user