Commit Graph

1347 Commits

Author SHA1 Message Date
Giacomo Pozzoni
89afeed41b Core/MMAPs: Adjust walkable climb and fix a lot of mmap raycast issues (#24539)
* Core/MMAPs: Adjust walkable climb

Adjust walkable climb as recast using walkableClimb also to find the poly from a position, giving priority to polys that are below the position but closer than walkableClimb.

* Temporarily disable static collision (the whole check should be removed)

* Core/Spells: removed deprecated mmap path check for TARGET_DEST_CASTER_FRONT_LEAP

* Core/Objects: allow flying units to use the helper as well (flying units casting radius based spells)

* Code refactor

* Handle raycasts that end in a point with no height in the mmap mesh as PATHFIND_NOPATH

* Walk back a bit from raycast hitpoints as sometime the 2D result point is outside of the polygons due to floating point errors.

* Remove whitespace

* Revert 4a197ba22a as a raycast point path should have the Z retrieved with getPolyHeight(). Raycast will only return a 2-point path with Start and Hitpoint/End

* Cleanup PathGenerator raycast case

* Fix PathGenerator raycast broken if start and end are on same poly.
Fix PathGenerator raycast broken if no wall is hit.
Remove unused case of using raycast with an existing previous path (can be added back properly if needed).
Remove forcing poly length to 2 when we actually have already the right number.

* Use closestPointOnPolyBoundary on the second try of finding a point on poly for raycast.
Note that in this case the mesh height is not used which might cause issues. The poly boundary height will be used instead.

* Handle cases where getPolyHeight() fails because the point is on polygon border (and caused by floating point imprecision)

* Add far from poly flags

* Set PATHFIND_INCOMPLETE in raycast case if startFarFromPoly or endFarFromPoly

* Fix blink close to walls with no valid polygon behind the wall

* Require to re-extract mmaps

Co-authored-by: Ovah <dreadkiller@gmx.de>
(cherry picked from commit c0b75bf40d)
2022-01-04 15:33:04 +01:00
Shauren
c0f976d23d Core/Spells: Added helper function to select random injured healing spell targets 2022-01-03 13:07:30 +01:00
Sorikoff
74174332c6 Scripts/Pet: Lil' K.T (#24528)
* Lil' K.T.

* Rename 9999_99_99_99_world_335.sql to 2020_05_10_00_world.sql

Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
(cherry picked from commit 34fecde022)
2022-01-02 19:24:18 +01:00
Shauren
2565af5fd3 Scripts/Spells: Fixed startup errors in spell_gen_war_mode_enlisted 2021-12-31 14:16:59 +01:00
Shauren
70f1eaac48 Core/Spells: Rename TARGET_UNIT_CONE_ENEMY_104 to TARGET_UNIT_CONE_CASTER_TO_DEST_ENEMY 2021-12-29 00:12:07 +01:00
aquadeus
108eeea327 Scripts/Spells: Fix shaman talent Nature's Guardian proc (#27482) 2021-12-28 21:18:50 +01:00
aquadeus
f230af918b Scripts/Spells: Fix shaman talent Downpour (#27477) 2021-12-26 21:46:07 +01:00
aquadeus
fed9d73f66 Scripts/Spells Fix shaman talent Aftershock (#27469) 2021-12-26 20:13:41 +01:00
Matan Shukry
b821a72973 Core/Player: Initial War Mode support (#25926)
* Enable PvP talents
* War Mode buff aura
* Forced PvP flagging

Co-authored-by: Shauren <shauren.trinity@gmail.com>
2021-12-26 19:14:46 +01:00
Shauren
e6ba1fbd53 Scripts/Spells: Fixed Lightning Bolt Overload, Chain Lightning Overload, Elemental Blast and Elemental Blast Overload energize effects 2021-12-25 22:45:23 +01:00
aquadeus
47d8b17e9f Scripts/Spells: Fix chain lightning energize (elemental) (#27468)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2021-12-25 22:15:11 +01:00
aquadeus
c95b1784df Scripts/Spells: Fixed lightning bolt energize (elemental) (#27467)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2021-12-25 21:55:23 +01:00
Shauren
5be16577f7 Build fix for older boost version 2021-12-25 21:53:47 +01:00
Matan Shukry
a3d06f2f32 Scripts/Spells: Implemented various rogue spells (#26319)
* Ruthlessness
* Mastery: Main Gauche
* Venomous Wounds
* Symbols of Death
* Backstab
* Premeditation
* Grand Melee
* True Bearing
* Slice and Dice
* Roll the Bones
2021-12-25 21:25:54 +01:00
Meji
924182f692 Core/BattlePets: Misc fixes (#27446)
* Added script for "Summon Battle Pet" spell (118301).
* Set the saved display of the battle pet when summoning it.
* If a summon has SummonPropertiesFlags::SummonFromBattlePetJournal it will remove NpcFlag UNIT_NPC_FLAG_WILD_BATTLE_PET (Wild battle pets).
* When a creature is summoned with SummonTitle::Companion, it will check to see if it has SummonPropertiesFlags::SummonFromBattlePetJournal before updating the battle pet's update fields. (If you have a summoned battle pet and summon a creature with that SummonTitle, it will incorrectly update the battle pet's update fields with the summoned battle pet's data).
* Implemented SummonPropertiesFlags::UseCreatureLevel. If a summon has this flag, it will use the owner's level (If the summon doesn't have SummonProperties it will always use the selected level).
2021-12-25 15:27:58 +01:00
aquadeus
8ac0388870 Scripts/Spells: Fix paladin talent Holy Prism (#27442) 2021-12-25 14:10:10 +01:00
aquadeus
90cdb1ed0d Scripts/Spells: Fixed warlock shadow bolt energize (#27440) 2021-12-25 12:51:35 +01:00
aquadeus
b01d85e966 Scripts/Spells: Convert shaman spell scripts to new script registration syntax (#27457) 2021-12-25 12:49:32 +01:00
Rushor
10cf49e130 Spell/Script: Spawn Blood Pool
Closes #23878

(cherry picked from commit 3ddc6e70df)
2021-12-23 00:21:24 +01:00
Alan Deutscher
cd72ecce78 Scripts/Spells: fix Turkey Timer duration (#24048)
* spell_gen_turkey_marker::OnPeriodic: Pop expired stack timestamps from tracking list.

* Be a bit more explicit about the data type of removedCount.

* Formatting nudge.

* Remove brackets.

(cherry picked from commit a0c07655eb)
2021-12-20 21:24:37 +01:00
Eridium
2b27278516 Spell/Script: Egg Nog (#24007)
Closes  #23996

(cherry picked from commit b60786a916)
2021-12-19 15:48:29 +01:00
aquadeus
07015cc052 Scripts/Spells: Fix paladin talent Eye for an Eye (#27426) 2021-12-19 11:53:17 +01:00
aquadeus
5750466259 Scripts/Spells: Fixed priest talent Masochism (#27420) 2021-12-19 11:41:33 +01:00
Keader
f358ac39cc Build fix
(cherry picked from commit ecd4ffc1ce)
2021-12-19 01:42:27 +01:00
Killyana
16ddcdfd0a DB/Quest: Take Down Tethyr!
Closes #22407

(cherry picked from commit c22b1e6cb4)
2021-12-19 01:42:16 +01:00
Killyana
cf95274ace Quest: Weakness to Lightning
Closes #23916

(cherry picked from commit 6db4bf6671)
2021-12-19 01:09:15 +01:00
Giacomo Pozzoni
9bede687ce Core/GameObjects: Skip LoS checks for traps (#23936)
* Core/GameObjects: Skip LoS checks for traps

* Core/GameObjects: Fix spells cast by traps missing always

* Scripts/Spells: Fix WSG heal buff not healing

The WSG green heal buff is now cast by a GameObject so the spell target should be used to calculate the healing, not the GameObject.

(cherry picked from commit 909941e1b4)
2021-12-19 01:05:54 +01:00
Sorikoff
374db51bae Scripts/Spells: Code style adjustments for druid scripts (#23725)
(cherry picked from commit 63bbf4a4be)
2021-12-18 21:14:53 +01:00
Sorikoff
568e60ef51 Scripts/Spells: Port druid scripts to new script registration syntax (2 of 3) (#23696)
* Scripts/Spells: Port Druid Scripts to New Script Registration

* Revert

* Revert 2

* Revert 3

* Revert 4

(cherry picked from commit 9a8a01925a)
2021-12-18 21:11:58 +01:00
Sorikoff
6cf301d4f6 Scripts/Spells: Port druid scripts to new script registration syntax (3 of 3) (#23714)
(cherry picked from commit f7793e7800)
2021-12-18 20:42:13 +01:00
Sorikoff
66f5275d26 Scripts/Spells: Runic Healing Injector (#23690)
* Scripts/Spells: Runic Healing Injector

* Rename 9999_99_99_99_world.sql to 2019_08_08_00_world.sql

(cherry picked from commit 382f563571)
2021-12-18 19:15:11 +01:00
Sorikoff
26f0c1182a Scripts/Spells: Port Part of Druid Scripts to New Script Registration (#23691)
(cherry picked from commit 996d4f7cc4)
2021-12-18 19:11:34 +01:00
aquadeus
da8d6b5180 Scripts/Spells: Fix Incanters Flow (#27395) 2021-12-18 11:24:10 +01:00
aquadeus
01ac538cd2 Scripts/Spells: Fix priest Mind Bomb (#27415) 2021-12-17 12:27:12 +01:00
Sorikoff
a947a0e85e Scripts/Spells: Brittle Armor & Mercurial Shield (#23576)
(cherry picked from commit a64d7df662)
2021-12-15 00:17:32 +01:00
ForesterDev
104ec7a81a Core/Unit: Implement more helper methods (#23555)
(cherry picked from commit c44fb37f74)
2021-12-14 20:42:32 +01:00
ForesterDev
27886c7f5d Core/Player: add helper methods GetNativeGender/SetNativeGender/SetGender (#23520)
* Core/Player: add helper methods GetNativeGender/SetNativeGender/SetGender and fix some cases, where we should get player gender, instead of modified by display gender

* fix merge

* Add virtual methods for Unit class

(cherry picked from commit b47bb59e2a)
2021-12-13 00:42:20 +01:00
ccrs
4e6c59dca7 Core/Unit: rename several getters to follow codestyle
uint8 GetLevel()
        uint8 GetLevelForTarget(WorldObject const* /*target*/)
        void SetLevel(uint8 lvl)
        uint8 GetRace()
        uint32 GetRaceMask()
        uint8 GetClass()
        uint32 GetClassMask()
        uint8 GetGender()

(cherry picked from commit 5c09ff51f7)
2021-12-13 00:42:20 +01:00
Sorikoff
b8d675eba7 Scripts/Spells: Dimensional Ripper - Everlook (#23547)
(cherry picked from commit 5c09ff51f7)
2021-12-13 00:42:20 +01:00
ccrs
cadbf42ea4 Misc: some corrections after recent merges
(cherry picked from commit 626a24822b)
2021-12-13 00:42:18 +01:00
Sorikoff
996b7c1f0e Scripts/Spells: Ultrasafe Transporter: Toshley's Station (#23537)
* Scripts/Spells: Ultrasafe Transporter: Toshley's Station

* Rename 9999_99_99_99_world.sql to 2019_06_29_01_world.sql

(cherry picked from commit 33b4ad5a89)
2021-12-13 00:42:18 +01:00
Sorikoff
ea4c1ae7d0 Scripts/Spells: Dimensional Ripper - Area 52 (#23505)
* Scripts/Spells: Dimensional Ripper - Area 52

* Rename 9999_99_99_99_world.sql to 2019_06_28_00_world.sql

(cherry picked from commit 63f548921c)
2021-12-13 00:42:18 +01:00
Meji
1a84641549 Core/BattlePets: Added default cooldown to revive battle pets (#27383)
* Added SpellHistory function to retrieve remaining category cooldown
* Changed SpellHistory::ModifySpellCooldown to allow adjusting only regular spell cooldown without touching category
2021-12-12 18:35:15 +01:00
Sorikoff
8fc52bc5e5 Scripts/Spells: Migrate Teleporting to Script (#23458)
* Scripts/Spells: Migrate Teleporting to Script

* Rename 9999_99_99_99_world.sql to 2019_06_21_02_world.sql

(cherry picked from commit e9d803ccee)
2021-12-11 22:28:55 +01:00
Wyrserth
6b7bc82641 Core/Spell: allow Northrend Inscription Research to unlock three recipes the first time it is cast. (#23401)
Also prevent double skill-up because of duplicate UpdateCraftSkill() calls.

(cherry picked from commit 2315d43b2c)
2021-12-11 12:06:54 +01:00
Killyana
adb5535483 Spell/Script: Stasis Field
Closes #23355

(cherry picked from commit 7dd87e3df4)
2021-12-10 21:37:45 +01:00
Giacomo Pozzoni
5f545f5402 3.3.5 gameobject summoner (#23289)
* Scripts/Misc: Change IsSummonedBy(Unit*) to IsSummonedBy(WorldObject*)

* Scripts/Misc: Fix build

* Core/TempSummons: Rename GetSummoner() to GetSummonerUnit()

* Core/TempSummons: Add support to TempSummons::GetSummoner() to return GameObject too

* Fix build

* Core/TempSummons: Allow GameObject to be owner of TempSummon

* Core/TempSummons: Add support to SAI for GameObject owner of TempSummon

* Scripts/Misc: Fix no-pch build

* Core/TempSummons: Implement PR comments

(cherry picked from commit 797fba98e9)
2021-12-07 00:02:03 +01:00
jackpoz
7fc359559f Core/Misc: Fix static analysis issues reported by Coverity
(cherry picked from commit a0bd68cf46)
2021-12-05 22:44:38 +01:00
Wyrserth
fd030069f7 Core/Spell: add proper cooldowns to some spells used by vehicles (#23260)
* Core/Spell: add proper cooldowns to some spells used by vehicles, thanks to jackpoz and sirikfoll.

* Add Wing Buffet and Stampy's Stompy-Stomp.

* Add Tag Greater Felfire Diemetradon and Touch of Darkness.

* Rename 9999_99_99_99_world.sql to 2019_05_17_00_world.sql

(cherry picked from commit 4d04344b41)
2021-12-05 18:44:59 +01:00
Killyana
5163559c1e Quest/Script: Breakfast Of Champions
Set both Earthshaker Drum Events to 50%

(cherry picked from commit 14445088ea)
2021-12-02 19:35:47 +01:00