Commit Graph
1782 Commits
Author SHA1 Message Date
Shauren 8cc232054a Build fix 2017-04-03 08:03:01 +02:00
Shauren 8f49a32d13 Core/Spells: Removed even more uses of SpellIcon to identify spells 2017-04-03 00:27:16 +02:00
Shauren 2a8294031b Core/Spells: Removed most uses of SpellIcon to identify spells 2017-04-02 23:29:26 +02:00
Shauren fd256884d9 Core/Units: Fixed cherry-pick crash in Unit::GetUnitBlockChance
Closes #19270
2017-03-11 12:51:28 +01:00
ariel- f585c83124 Update Unit.cpp
Kill an unused parameter warning
2017-03-07 13:40:21 -03:00
ariel- 80a4f3c181 Update Unit.cpp
Kill unused variable warning
2017-03-07 12:16:23 -03:00
ariel- 3674356c9e Core/Unit: rewrite of the attack table system
- Removed a bunch of duplicated code
- Fix off-by-one errors in Unit::RollMeleeOutcomeAgainst and Unit::MeleeSpellHitResult (TC's combat table was actually of 100.01%)
- Implemented boss-level hit table (6.5% dodge/14% parry), bosses only had 5.6% of each until now
- Updated formula for chance and damage of Glancing hits

Sources:
- http://wow.gamepedia.com/index.php?title=Attack_table&oldid=2071465
- http://web.archive.org/web/20100903145646/http://www.mmo-champion.com/threads/650071-Expertise-Hit-for-Paladins-%28updated-for-3.3%29?daysprune=60

(cherry picked from commit 0c24e4ee0e1f0bbb37f740aa6f0d45c384ee955d)

Core/Unit: fix a copy/paste mistake

(cherry picked from commit 3bd5e0bf2fc3665d32ca08c96e7faccf2363429b)
2017-03-06 21:09:57 -03:00
Shauren 76a594d8be Core/Spells: Calculate hitMask and store it in DamageInfo/HealInfo structures
(cherry picked from commit 23902ff266c28fa83f3bab5646b3e5b93ab55380)
2017-03-05 03:19:41 +01:00
SnapperRy 35eeb76506 Core/Unit: don't reset offhand timer for players when starting attack.
Creatures are unaffected by this change. Not sure how they should behave in this case, so leaving it alone for now.

Closes #945.

(cherry picked from commit c25f7c48b5ba3982fc83b8c88a8cff619f72b162)
2017-03-05 01:06:45 +01:00
Shauren 16698e5b25 Core/Movement: Defined many unknown MovementFlags2 2017-03-03 20:26:45 +01:00
treeston 205ec4c3bf Core/Unit: Standardize SetFacingTo and SetFacingToObject behavior while moving. Both now fail while moving unless arg2 bool is true.
Movement/SplineChain: Bump value range for DB chainId up to uint16 (0 to 65535) from uint8 (0 to 255). Turns out sniffs generate far more chains than I expected.

(cherry picked from commit 2170541a51ced3c15675b8854e0ae49461884f8c)

Code style follow-up, I blame Notepad++.
(cherry picked from commit 7860da0de6e53c7740862cae18840c9d399dda7f)
2017-03-02 20:47:29 +01:00
Treeston 9b4ad0022b Map/Instances: Greatly simplify PermBindAllPlayers logic. (#17940)
(cherry picked from commit cf628880d586b049fa376e4533154d78d02a8ce8)
2017-02-28 20:25:20 +01:00
SnapperRy 9da35aa3bd Core/Achievement: do not consider overkill damage for ACHIEVEMENT_CRITERIA_TYPE_DAMAGE_DONE.
(cherry picked from commit 4eb799560ccf340c3ec8313069c97f137c1e4a68)

Fix wrong copy-paste from last commit.

Sorry.
(cherry picked from commit c41b4000f9babb23df9d62952070a339174cf7b0)
2017-02-27 21:59:02 +01:00
Shauren c7cd51e8f5 Core/Movement: New names for a few spline flags 2017-02-27 19:30:44 +01:00
ariel- c229816104 Core/Entities: moved duplicated triggered cast proc check to Unit::ProcDamageAndSpellFor, it was preventing some always triggered auras from proccing.
(cherry picked from commit 19e757af5cb6bbde3f9263f0f4aaec87a7e0301c)
2017-02-26 15:30:14 +01:00
Shauren 8db72348ee Build fix 2017-02-19 00:59:43 +01:00
Shauren 5e437f5d3d Core/Movement: Implement SpellEffectExtraData curve modifiers 2017-02-18 21:55:28 +01:00
ariel- 255dd29562 Core/Spell: no need to bloat existing parameter lists. (f81754a306a8b1f24f0b130ded3c8170e9b146c5 follow up)
(cherry picked from commit 4829cca9fb81b27cd9a057355ee7b03ff71e0a14)

Note to self: drycoding is bad
(cherry picked from commit 7e8a08c3516d8f5e48882a01a2ccdb8881dd8283)

Another build fix.

(it was probably better to just revert the commit instead)
(cherry picked from commit be8d1136994fd5f0a90b03a52d21c9503857f15f)
2017-02-18 18:07:07 +01:00
ariel- 7a971d7ed2 Core/Spells: register SPELLMOD_CRITICAL_CHANCE in casting spell modifiers.
(cherry picked from commit f81754a306a8b1f24f0b130ded3c8170e9b146c5)
2017-02-18 17:57:55 +01:00
treeston e0b557c858 Entities/Unit: Add overload to NearTeleportTo taking Position const&.
(cherry picked from commit 211eee0fce0bf9720511ad05fae271512b24f48e)
2017-02-18 17:16:10 +01:00
SnapperRy 668abbf18b Core/Unit: do not refresh last damaged timer if hit by SPELL_AURA_DAMAGE_SHIELD.
Fixes spells like Retribution Aura, Thorns and Damage Shield that were preventing units from evading.

(cherry picked from commit 42a32a3c7c840a518744381607193405bfba9335)
2017-02-18 17:16:10 +01:00
ariel- 4910966f18 Core/Unit: removed ancient workaround changing spell caster based on triggering aura.
Keep an eye out for those broken scripts!

Closes #17739

(cherry picked from commit f183ed3c50cdcf13cd9fe608e0f4791177f120a4)
2017-02-18 14:29:24 +01:00
Gennady 6e6bccce1c Core/Unit: Some improved function RemoveAuraFromStack (#19119) 2017-02-13 21:19:34 +01:00
Treeston 8b7934f718 Core/Spells: Fix orientation- and targeting-related issues if the creature isn't currently engaged in combat. (#17120)
Also disable spell focus system for vehicle control auras.

Closes #16572
Closes #17016
(cherry picked from commit 6f85422f0b7221dd38eaa70320b8a28b5fe7a2ef)
2017-02-12 17:04:08 +01:00
Treeston 346e4824be Entities/Unit: Cleanup refactor. Changes: (#17819)
+ Unit::m_movedPlayer -> Unit::m_playerMovingMe
+ Player::m_mover -> Player::m_unitMovedByMe
+ Unit::GetMover() -> Unit::GetUnitBeingMoved()
+ Unit::GetPlayerMover() -> Unit::GetPlayerBeingMoved()
+ NEW: Unit::GetClientControllingPlayer()
(cherry picked from commit 8deda7ed7f18615937ec5db2d30a6badc3b157c1)

# Conflicts:
#	src/server/game/Entities/Player/Player.cpp
#	src/server/game/Entities/Unit/Unit.cpp
#	src/server/game/Handlers/MiscHandler.cpp
#	src/server/game/Handlers/MovementHandler.cpp
#	src/server/game/Handlers/SpellHandler.cpp
#	src/server/game/Server/WorldSession.cpp
#	src/server/game/Spells/SpellEffects.cpp
#	src/server/game/Spells/SpellInfo.cpp
2017-02-12 16:24:25 +01:00
Chaouki Dhib 66d36839f0 Core/Units: Fixed melee range check (#17693)
* Split Spell::CheckRange() into 2 methods since that method had more than one responsibility.
* Moved melee range logic into its own function
* Moved melee range logic method GetMeleeRange from Spell to Unit class. Unit::IsWithinMeleeRange() and Spell::GetMinMaxRange() both use that method.
(cherry picked from commit d7600f1126d2780fecdfcdfc66a598a48cee0136)

# Conflicts:
#	src/server/game/Entities/Unit/Unit.cpp
#	src/server/game/Entities/Unit/Unit.h
#	src/server/game/Spells/Spell.cpp
2017-02-12 15:32:29 +01:00
robinsch d94f0f3427 Core/Spell: Remove all raid auras on party leave (#17663)
(cherry picked from commit dd67f4ed966875e6e68f6b0a8d56cdf190d0f352)
2017-02-12 15:11:20 +01:00
Aokromes db668cde46 Core/Logs: Fine tunning some logs
(cherry picked from commit b51409a5d3201e86bd189d1ea7dfd1dc1ca8a35f)

# Conflicts:
#	src/server/game/Texts/CreatureTextMgr.cpp
2017-02-11 22:35:00 +01:00
ariel- 07f2f37329 Core/Spell: fix one logic fail when calculating level penalty
(http://wow.gamepedia.com/index.php?title=Spell_power&oldid=1751770#Spells_learned_before_level_20)

(cherry picked from commit c271e196c8bb02705d8a3e4a7432bbc2959f0b1a)
2017-02-11 17:58:59 +01:00
Killyana 611bc7d838 Core/Entities: Remove wrong immunity
Closes #17363

(cherry picked from commit 0be0606593cf6ce8a08735b070e64efa6b6f1667)
2017-02-11 16:49:56 +01:00
ForesterDev b65bb30090 Core/Entities: add missing null pointer checks in HandleProcTriggerSpell. CID 1356245 (#17629)
(cherry picked from commit 22c4e87ebbf22ad1adc8b66a96ecad7b5b44231b)

# Conflicts:
#	src/server/game/Entities/Unit/Unit.cpp
2017-02-11 15:30:51 +01:00
ariel- 8d45095e28 Core/Entities: implement SPELL_AURA_MOD_CRIT_CHANCE_FOR_CASTER, fixes talent Point of no Escape
(cherry picked from commit 2feb53ecb69d66bb6df3f48d9a5f4e6a00aec1f7)

# Conflicts:
#	src/server/game/Entities/Unit/Unit.cpp
#	src/server/game/Spells/Auras/SpellAuraDefines.h
#	src/server/game/Spells/Auras/SpellAuraEffects.cpp
2017-02-11 15:14:04 +01:00
SnapperRy 90be9d143b Core/Unit: remove emote state when creature attacks another unit (#17542)
(cherry picked from commit a732749d721eefe7558d23e44c5f8dc18194e6d4)
2017-02-05 17:36:37 +01:00
Meruemu e575a6a03e Core/Entities: Fix flag CREATURE_FLAG_EXTRA_NO_PARRY_HASTEN implementation. (#17548)
(cherry picked from commit 4a46fee03ef204289bbd96e8e1e07117b3bebd9f)
2017-02-05 16:37:49 +01:00
Golrag 140d7828c8 Core/Unit: Add proc cooldown to all units (#17546)
(cherry picked from commit 0b9854428657bd5c988e7aeda5b6e4df9a72131a)

# Conflicts:
#	src/server/game/Entities/Unit/Unit.cpp
2017-02-05 00:57:18 +01:00
ariel- ad6e0b6d79 Core/Unit: remove duplicate resist roll in Unit::MeleeSpellHitResult (#17520)
(cherry picked from commit cfbfa8158ac1220aaed669fde77e1fd96e70a96e)

# Conflicts:
#	src/server/game/Entities/Unit/Unit.cpp
2017-02-04 23:59:07 +01:00
Aokromes 29668f732d Code/Battleground Opening a game object(banner) under absorb effects … (#17459)
* Code/Battleground Opening a game object(banner) under absorb effects in battlegrounds should result an interupt

By zwerg, closes #6222
(cherry picked from commit d34cce1edb818425935662582fd18cc79bb77b19)
2017-02-04 23:16:52 +01:00
DoctorKraft 9850e1eef6 Core/Player: Shapeshift Part 2 (#19025) 2017-02-02 18:08:45 +01:00
Traesh 6ab3877c91 Core/Entities: Basic AreaTrigger System (#18035)
* Implemented AreaTrigger Templates
* Implemented AreaTrigger Splines
* Implemented SPELL_AURA_AREA_TRIGGER
* and many more
2017-01-29 00:00:43 +01:00
joschiwald 71ffdccb5a Core/Movement: enable item use and spell cast when dismounting
Remove error message and allow spell cast or item use from
mounted state on ground, especially when sitting on
a landed flying mount. Current behavior is that the player
will get the error message "You can't do that while moving"
when trying to cast a spell or pick up an item
while sitting on a flying mount after having landed.

By joschiwald, closes #6236

(cherry picked from commit 19aac66bc262a835cae288fc3d0ccdc8e93d0fb9)
2017-01-12 03:36:32 +01:00
jackpoz 954b3c9617 Core/VMaps: Fix some vmap height edge cases
Fix Map::GetWaterOrGroundLevel() checking dynamic object only in phase 1 instead of current Unit phase.
Improve DynamicMapTree::getHeight() dynamic object check by casting the ray at +0.5f from the passed Z coordinate, this value will be tuned to improve even more the results.

(cherry picked from commit 1347d7cf7a8656f3db9d8b2f6e6d955e1fa8c129)
2017-01-12 00:13:55 +01:00
Trisjdc 781c5a3b82 Core/Creatures: Remove resetting of UNIT_FLAG_IMMUNE_TO_PC on combat clearing
(cherry picked from commit 34ef05ce0bfa34855ce33fcdf2bf82d257ae6672)
2017-01-12 00:02:30 +01:00
treeston & Keader 0897042998 AI/PlayerAI: Finally implement cast logic for controlled players.
(cherry picked from commit 25c5570f4714a8e26f4f1c5e61a1dab7767c8fbc)
2017-01-11 22:41:30 +01:00
sirikfoll 31e08b9722 Core/Unit Do not allow addition of threat to units in evade mode
(cherry picked from commit 7d769006aa1e014d6f01ef4c7fa450e827fc32fc)
2017-01-09 21:33:32 +01:00
Shauren dad19df69d Core/Units: Renamed and documented UNIT_FLAG_DISABLE_MOVE to prevent people from trying to use this flag to root a creature leaving them wondering why it doesn't do anything
(cherry picked from commit b36da771857554c5bd652bf8ccc1386d4be607b0)

Core/Scripts: build fix

(cherry picked from commit 258368a2bd0e7c2d395d98dc3220d8e32e65303f)
2017-01-09 21:16:36 +01:00
ForesterDev 5c2705fadc Core: updated creature type flags enum (#17128)
Core/Misc: Update CreatureTypeFlags enum according to TrinityCoreWiki
(cherry picked from commit fb0881398a106806fad48abe9ffd600e0caf175d)

# Conflicts:
#	src/server/game/AI/ScriptedAI/ScriptedEscortAI.cpp
#	src/server/game/AI/ScriptedAI/ScriptedFollowerAI.cpp
#	src/server/game/AI/SmartScripts/SmartAI.cpp
#	src/server/game/Entities/Unit/Unit.cpp
#	src/server/game/Miscellaneous/SharedDefines.h
2017-01-09 02:00:17 +01:00
Shauren 4799e5841d Core/Auras: Fixed cooldowns for procs calling PreventDefaultAction() in aura proc script
* This also fixes proc cooldows unneccessarily being sent to client
* Also removes the need for cooldown hacks when the proc trigger is selected randomly like for Deathbringer's Will

(cherry picked from commit 1e1fcd6847619629f4b6642faaccb81c4cf3755e)
2017-01-08 23:24:51 +01:00
mik1893 5a93f2b974 Core/Spells: Proc handler script converions (#17122)
* Blazing Speed (Mage)
* Blessed Recovery (Priest)
* Druid Forms Trinket
* Idol Of Mutilation
* Nature's Guardian (Shaman)
* Nether Protection (Warlock)
* Piercing Shots and Bonus 4P T9 Hunter
* Lightning Shield (Shaman)
* Acclimation (DK)
* Move DK T10 4P Melee Bonus
* Move DK Improved Blood Presence triggered heal (DK)
* Rogue T10 2P Bonus
* Illumination (Paladin)
* Soul Preserver
* Death Choice trinket
* stack trinket scripts (ToC25 Caster Trinket, Lightning Capacitor, Thunder Capacitor)
* Battle Experience (ICC - Gunship)
* Blood Reserve (enchant proc)
* Darkmoon Card Greatness
* Charm of the Amani Witch Doctor
* Mana Drain

(cherry picked from commit 5b8e68ee6335ecbc9fea253eaceecb20c50aa41e)
2017-01-08 22:37:18 +01:00
mik1893 4c60bbea0e Core/Unit: Pet shouldn't be notified for DOT damage on the owner (#17133)
- Fix by @MrSmite
- Closes #16894
(cherry picked from commit 4de1426d080084667da83a60857ee9c0492086fd)
2017-01-08 19:32:51 +01:00
Nawuko 955bfae5ef Core/Movement: Fix issues where creatures cancel spell casts chasing target and Implement SPELL_ATTR5_CAN_CHANNEL_WHEN_MOVING
(cherry picked from commit bf2cee8cce39e64590dc68bc35e5d3d2dd19cbaf)
2017-01-08 18:06:43 +01:00