Commit Graph

26588 Commits

Author SHA1 Message Date
treeston
8eaf00a11f Fixed a potential crash when resuming a SplineChainMovementGenerator.
(cherry picked from commit e5301e2c98)
2020-07-16 22:00:28 +02:00
Treeston
51ce3b1c1d [3.3.5] Get zone/area IDs from vmap data in the liquid update (#19840)
* Add new method Map::getFullVMapDataForPosition to get area info and liquid info in a single vmap lookup
* Use this lookup in Map:: relocation methods to update m_areaId and m_zoneId fields on WorldObject
* Adjust GetZoneId/GetAreaId on WorldObject to always return these cached fields
* Clean up liquid state handling on Unit and Player
* Hand floor's Z coord up through GetFullTerrainStatusForPosition, use it to update a new field in WorldObject, and use that to feed a new GetFloorZ call on WorldObject.

Closes #16489

(cherry picked from commit f6c849729b)
2020-07-16 22:00:24 +02:00
Treeston
f7a7d02a7f Pet/Guardian AI hook re-organizing (#19824)
* Pet/Guardian AI hook re-organizing:
- Adjust OwnerAttacked/OwnerAttackedBy hooks on CreatureAI to fire for all owned units, not just player pets. This should allow guardians to more reliably recognize valid targets.
- Kill off the AttackedBy hook. While it was defined in CreatureAI.h as virtual, it was only ever invoked for player pets in specific situations. This makes it classic developer bait.
  - Adjust PetAI to use DamageTaken instead of AttackedBy.
  - Adjust behavior of AttackStart on PetAI to compensate.

(cherry picked from commit 1660bb7d27)
2020-07-16 21:47:28 +02:00
ariel-
5903a10a83 Core/AI: segregate GameObject ReportUse from normal Use (lock open/normal click)
Closes #19819

(cherry picked from commit 2335b9de1a)
2020-07-16 21:47:28 +02:00
Carbenium
f27b7ba285 Core/Player: Reserve TELE_TO_TRANSPORT_TELEPORT used in 3.3.5 2020-07-16 21:47:27 +02:00
treeston
bb7061407f SAI fixes follow-up: I missed one.
(cherry picked from commit cb265e02aa)
2020-07-16 21:47:27 +02:00
treeston
e6145a8ec4 Fix a whole set of possible infinite loop crashes in SAI (events triggering themselves even with cooldown set).
(cherry picked from commit 823007934a)
2020-07-16 21:47:27 +02:00
treeston
323e3b9cde Re-check target evade state on projectile impact and adjust accordingly. This fixes the incorrect message ("Absorb" instead of "Evade"), and also removes the root cause of the original evade follow bug (that was prevented in 1945874).
(cherry picked from commit b983ec11bd)
2020-07-16 21:47:27 +02:00
Shauren
fbdf8784a5 Core/Instances: Fixed and optimized instance id reuse
(cherry picked from commit 2639056071)
2020-07-16 21:47:27 +02:00
Keader
f4ac8146b6 Core/Spells: Allows Dispersion under Freeze (stun by hunter trap)
(cherry picked from commit 672bc29df9)
2020-07-16 21:47:27 +02:00
TecDian
1aaf09b199 Core/Scripts: simplify speech for DK races quests
(cherry picked from commit 3f34c2f5eb)
2020-07-16 21:47:27 +02:00
ariel-
960bfcabc3 Core/SAI: properly validate stored targets when using SmartTrigger and fix a related crash
(cherry picked from commit 866074b689)
2020-07-16 21:47:27 +02:00
Keader
87c5ddeab6 Core/Spells: Allows Dispersion and Barkskin to be used under death coil
(cherry picked from commit abc749034e)
2020-07-16 21:47:27 +02:00
sirikfoll
1d99860757 Core/Scripts: Updated Sunwell Plateau instance model
(cherry picked from commit 2984def452)
2020-07-16 21:47:27 +02:00
treeston
4179036bbe Some improvements to .debug raidreset command. Now supports heroic difficulty 5-man dungeons and outputs sensible text, as opposed to silently doing (or not doing) stuff.
(cherry picked from commit a3b198c7e1)
2020-07-16 21:47:15 +02:00
ariel-
259bde5914 Core/SAI: Change SmartScript::GetTargets to return an ObjectList instead of a ObjectList*
Applied the same treatment to GetWorldObjectsInDist

Honestly no idea why the original idea insisted so much
on using pointers. No more missing null checks or deletes.

SmartAI's "ObjectList" is now a std::vector instead of a std::list
because no where it was being used as an actual list.

Original idea by DDuarte :P

(cherry picked from commit a97439e8d6)
2020-07-16 20:59:25 +02:00
Shauren
2ff1fd0e95 Core/DataStores: Replace harcoded prepared statement offsets with named constants 2020-07-13 21:30:33 +02:00
Shauren
49a99811de Tools: Update RetardCheck() 2020-07-09 15:14:16 +02:00
Shauren
87fea85431 Core/Spells: Fixed crash in SpellInfo::GetAuraRankForLevel 2020-07-07 22:27:26 +02:00
Shauren
d195646593 Core/Auras: Named two test realm aura types 2020-07-07 12:16:02 +02:00
Shauren
20e2f3632a Core/Maps: Added optional *.tilelist file to map_extractor output which contains a list of existing tiles to speed up map creation in worldserver 2020-07-06 16:36:30 +02:00
Shauren
59f1f60a83 Core/DBLayer: Optimize string based query results by eliminating unneeded buffer copies 2020-07-05 12:17:47 +02:00
Shauren
beceafc39f Core/DataStores: Skip loading hotfixes for locales that are not loaded from files first 2020-07-04 20:18:57 +02:00
funjoker
590f541019 Core/Hotfixes: Add locales to hotfix_blob (#24913) 2020-07-04 19:09:36 +02:00
Shauren
6cbd6476f0 Nopch fix 2020-07-02 00:37:50 +02:00
Shauren
661470c658 Core/PacketIO: Convert all leftover packets to use packet classes 2020-07-02 00:07:38 +02:00
Shauren
4499f203a3 Core/DataStores: Fixed sending localized hotfixes and improved db2 loading error messages 2020-07-01 00:34:51 +02:00
Shauren
79cd94d26d Core/Misc: Changed GetLocaleByName to return invalid value on invalid input instead of LOCALE_enUS
* Also added IsValidLocale helper function
2020-06-30 00:22:25 +02:00
Shauren
40c71ea9fc Core/Misc: Remove unused variables 2020-06-29 09:23:38 +02:00
Shauren
2fcb79e2de Core/DataStores: Fixed loading db2 strings
Closes #24916
2020-06-29 00:10:37 +02:00
Shauren
6040f8eb31 Core/Collision: Port new parts for retrieving area/liquid data from gameobjects added when porting 42f9deb21e to 3.3.5 2020-06-28 12:26:39 +02:00
Shauren
deca201f77 Core/DataStores: Simplified string memory allocation in db2 files, dropped unneccessary level of indirection 2020-06-27 13:33:17 +02:00
Shauren
176c75e8db Core/Spells: Include more than first 2 spell effects when determining if a spell is negative 2020-06-26 00:23:46 +02:00
Shauren
bbdabd7d77 Core/Players: Remove deprecated skill related config AlwaysMaxWeaponSkill and command .maxskill 2020-06-25 14:45:28 +02:00
Carbenium
9969d6e194 Fix non-PCH build
(cherry picked from commit 05025d79f3)
2020-06-24 14:35:10 +02:00
Peter Keresztes Schmidt
bab5fd87a3 Core/Misc: Replace Trinity::make_unique with std (#24869) 2020-06-23 08:54:12 +02:00
Shauren
c3dcbe04dc Core/Spells: Assign spell effect handles for new apply aura effects 2020-06-22 11:04:57 +02:00
ForesterDev
01d098830a DB/Account: update account_access table (#24788)
* DB/Account: update account_access table:

- rename fields id -> AccountID, gmlevel -> SecurityLevel
- add Comment field
- rename command .acc set gmlevel to .acc set seclevel

* Update auth database

* Fix primary key

* Temporary restore old command account set gmlevel with same handler as account set seclevel

Use Optional  for realmID - if not set, use -1 (for all realms)

* Rename 2020_XX_XX_00_auth.sql to 2020_06_20_00_auth.sql

* Update auth_database.sql

* Rename 2020_XX_XX_00_world.sql to 2020_06_20_06_world.sql

Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
(cherry picked from commit 8e0365d8a6)
2020-06-22 11:03:31 +02:00
Shauren
fce9fca900 Core/Spells: Implemented new target types
* TARGET_UNIT_TARGET_ALLY_OR_RAID
* TARGET_UNIT_CASTER_AND_SUMMONS
* TARGET_UNIT_AREA_THREAT_LIST
* TARGET_UNIT_AREA_TAP_LIST
* TARGET_DEST_CASTER_GROUND
* TARGET_DEST_SUMMONER
* TARGET_DEST_TARGET_ALLY

Closes #18558
Closes #18867
Closes #24295
2020-06-21 15:59:43 +02:00
Shauren
7d9880252c Tools/mmaps_generator: Print readme with --help 2020-06-19 17:49:56 +02:00
Shauren
22a3cb4432 Core/Auction House: Fixed sorting in non-equipment categories 2020-06-18 10:57:26 +02:00
Shauren
c715e635cf Merge pull request #24554 from funjoker/cherry-picks 2020-06-15 00:26:08 +02:00
Carbenium
abff505a6e common: Add a missing include guard 2020-06-15 00:22:12 +02:00
ariel-
7c2e83604c Core/Scripts: moved Wild Growth calculation to script and fixed formula
Thanks ccrs for the formula

(cherry picked from commit 96ee23487f)
2020-06-14 23:49:05 +02:00
ariel-
8e44a6a381 Core/AI: restore old check forcing PetAI on Pets using SmartAI
includes more template love

Closes #19837

(cherry picked from commit 9c24ec5c96)
2020-06-14 23:49:05 +02:00
ForesterDev
15609a197e Scripts/Gossip: fix go_ahune_ice_stone (#19835)
(cherry picked from commit f9a01c4b69)
2020-06-14 23:49:05 +02:00
ariel-
3cf5db1831 Core/Globals: add more AIName and MovementType checks to ObjectMgr
- Ninja fix AI factories (restores prev behaviour of not selecting stuff with PERMIT_BASE_NO)

Closes #19831

(cherry picked from commit d56a28afee)
2020-06-14 23:49:05 +02:00
Keader
e50a95839c Core/Scripts: Fixed some events that not should triggered by non-players on Illidan encounter
(cherry picked from commit 0c6829f7f2)
2020-06-14 23:49:05 +02:00
Shauren
1fd59700d7 Core/Groups: Fixed calculating canReset attribute
Broken in d6df19cd99.

(cherry picked from commit 0222d9fc1a)
2020-06-14 23:49:05 +02:00
Shauren
042418cf26 Revert "Core/Groups: fix wrong query for loading group instance data. canReset attribute was calculated in the wrong way"
This reverts commit 0c1dd398bd.

Closes #19745

(cherry picked from commit 023d252155)
2020-06-14 23:49:05 +02:00