Commit Graph

19374 Commits

Author SHA1 Message Date
ariel-
abe514d548 Core/Scripts: fix some copy paste and indentation mistake in Chimera Shot script 2016-10-08 17:13:27 -03:00
ariel-
11650e4008 Core/Scripts: updated Lock and Load script with new hooks, DamageInfo might be null, so check for that too 2016-10-08 16:48:03 -03:00
SnapperRy
eb1a7297cf Core/Wintergrasp: cleanup and codestyle. 2016-10-08 21:13:05 +02:00
jackpoz
2edfedc2b6 Scripts/Azjol-Nerub: fix static analysis issues 2016-10-08 19:21:40 +02:00
Kittnz
eee7fa3fa7 Core/Scripts: Initialize rnd and remove where it was not needed 2016-10-08 16:43:08 +02:00
Kittnz
963278459a Core/Event: Pirate Day Music during the event 2016-10-08 15:49:18 +02:00
Kittnz
e3560f3f51 Core/Event: Add Darkmoon Fair Music during the event 2016-10-08 15:43:13 +02:00
Kittnz
19f8acdb61 Core/Event: Add Midsummer Music during the event 2016-10-08 15:38:17 +02:00
SnapperRy
7ce3811913 Remove unused variable. 2016-10-08 14:26:17 +02:00
SnapperRy
a0c9d33ed6 Battlefield/Wintergrasp: improvements:
- Move Wintergrasp Keep guard spawns from core to db, removing all duplicates in the meanwhile.
- Add Alliance Brigadier General inside the relic room.

Closes #7593.
2016-10-08 14:16:05 +02:00
SnapperRy
d72b025fcb Core/Wintergrasp: fix Defend the Siege quests.
Closes #7953.
2016-10-08 03:54:09 +02:00
ariel-
b93ee312fa Core/Auras: prevent stack overflow while processing SPELL_EFFECT_ADD_EXTRA_ATTACKS 2016-10-07 12:52:01 -03:00
ariel-
d078029124 Revert "Core/Unit: prevent m_extraAttacks underflow. Fixes a freeze with SPELL_EFFECT_ADD_EXTRA_ATTACKS"
This reverts commit f09e7cbbfe.
2016-10-07 12:50:08 -03:00
ariel-
2a5548a13e Core/Channels: remove unneeded default constructor 2016-10-07 12:04:35 -03:00
ariel-
66688a7855 Core/Channel: revamp channel system (#17980)
* Core/Channel: change the way channels are stored and sent to client.

- Fixes multiple channels per zone when using different locales
- Connected clients will receive locally the name of the channel for their apropiate locale (if available)
- In other cases default locale name will be sent, so as to prevent breaking channel chat for those players

Closes #8411
2016-10-07 00:59:56 -03:00
ariel-
ce45e1bf95 Core/Globals: cache SpellSpecific and AuraState information instead of computing them each time they're needed 2016-10-07 00:51:52 -03:00
ariel-
f58de52de3 Core/Auras: stop some compilers from complaining 2016-10-07 00:23:02 -03:00
ariel-
dbba3ad5a5 Core/Scripts: Fix some runtime errors 2016-10-07 00:14:46 -03:00
ariel-
3b6fd226be Core/Misc: fix interaction of spells like Shadowmeld with Threat reducing effects
- SPELL_AURA_MOD_TOTAL_THREAT should be temporary and not added/subtracted from total, only computed
- Cleanup of reference related code
- Kill getLast() and reverse iterator obsevers, LinkedList iterator can't be used as a standard reverse_iterator (ie with operator++). They weren't used anyways
2016-10-06 23:14:51 -03:00
Naios
8775f8b28a Core/Grids: Allow arbitrary containers in grid searchers that support push_back
* Makes it possible to use vector and dequeue with grid searchers.
2016-10-06 21:17:06 +02:00
Kittnz
3eacc25e5d Core/Event: Fix Brewfest Music
Was only playing the same song over and over again.
2016-10-06 20:14:53 +02:00
SnapperRy
79c1b5942c Revert "Core/Creature: don't give kill and achievement credit if a creature kills itself."
Causes an issue where a creature killed by a reflected spell will not give credits.

Thanks Aokromes for noticing. Reverting this until a better solution is found.

This reverts commit 5417a1a37f.
2016-10-06 11:16:05 +02:00
SnapperRy
5417a1a37f Core/Creature: don't give kill and achievement credit if a creature kills itself.
Prevents Wintergrasp vehicles from giving credit when killed by Wintergrasp Water and other similar exploits.
2016-10-06 10:50:50 +02:00
ariel-
8a82a3ba81 Core/Unit: implemented crit suppression
Thanks Riztazz for the infos :P
2016-10-06 01:06:37 -03:00
ariel-
a0e317b991 Core/Scripts: De-hack glyph of Barkskin with proper spell 2016-10-06 00:59:26 -03:00
ariel-
f09e7cbbfe Core/Unit: prevent m_extraAttacks underflow. Fixes a freeze with SPELL_EFFECT_ADD_EXTRA_ATTACKS 2016-10-05 22:46:26 -03:00
SnapperRy
81d4c02f34 Fix non PCH build. 2016-10-06 00:17:28 +02:00
Kittnz
002b0a7a65 Core/Event: Add Brewfest Music during the event
Note: Dark Iron invasion music can be added with a trigger at a later stage
2016-10-05 22:34:04 +02:00
ariel-
5b7078c30a Core/Unit: fix weapon skill up.
Closes #18044
2016-10-05 13:07:44 -03:00
ariel-
b5e8e0a5db Core/Auras: reset periodic aura timers by default. Except when aura comes from triggered spell
Closes #17961
2016-10-05 03:10:05 -03:00
ariel-
d482b0e368 Core/Scripts: add a workaround for Will of the Forsaken shared cooldown
Closes #7151
2016-10-05 01:40:00 -03:00
ariel-
d9e4c8e04f Core/Spells: add Target Processing (SMSG_SPELLLOGEXECUTE) to LAUNCH_TARGET phase.
Move EffectInterruptCast to LAUNCH_TARGET Phase.

Closes #3718
Closes #6042
2016-10-04 23:35:50 -03:00
ariel-
51493a63e2 Core/Scripts: fix 2 runtime error logs 2016-10-04 22:34:39 -03:00
ariel-
016b31a1b6 Core/Spells: add proc cooldown on item equip. 2016-10-04 21:43:45 -03:00
ariel-
66749470ef Core/Scripts: add even more headers 2016-10-04 21:13:27 -03:00
ariel-
192f8186bd Core/Scripts: add more headers required for NoPCH 2016-10-04 21:10:57 -03:00
ariel-
dc7a1894c5 Core/Scripts: add headers required for NoPCH build 2016-10-04 21:08:03 -03:00
ariel-
2ff855054f Core/Scripts: Convert spells to new proc system
- Converted Unit::HandleDummyAuraProc function to AuraScripts
  * Extra: DMC: Madness now uses DB texts. yay!
  * Extra: improvements on Imp. Spell Reflection (range and max targets, filter caster with conditions)

- Fixed Glyph of Succubus. (Closes #6599)

- Changed old (not-blizz) behavior of Vampiric Embrace:
  * Before: party heal affected the priest too and self heal was reduced by that amount to not over-heal
  * Now: self heal amount not affected, rather filter the priest out of the party heal using conditions :)

- Solve bug in AQ 3p set bonus, it should only trigger when healing others, not self heals.
- Priest T10 2p bonus (heal) now rolls its effect properly

- Use brand new GetEffectiveHeal to fix #17142
- While we're at it, also close #17034 for good
- Converted Unit::HandleAuraProc function to AuraScripts (#17941)
- Converted Unit::HandleAuraProc function to AuraScripts (cont'd) (#17955)
- Corrected Flametongue weapon damage formula
- Actually check offhand weapon for flametongue in Lava Lash script
- Implemented halved proc chance for Missile Barrage on Arcane Barrage, Fireball, Frostbolt and Frostfire Bolt cast
- Converted Unit::HandleProcTriggerSpell function to AuraScripts (#17956)
- De-hack Earth shield. Fixes #13808
- Updated Honor among Thieves
- Implemented mana proc for Mark of Conquest in case of ranged attack
- Fixed Scent of Blood giving more stacks than the talent rank currently learnt.
- Ported old proc table. Proc system is dead. Long live the proc system!
- Recklessness should get charges removed per cast. Closes #15529
- Use proc system to remove Molten Core charges on Incinerate/Soul Fire cast. Closes #15942

Closes #3463
Closes #5401
Closes #15595
Closes #15974
Closes #16679
Closes #17925
2016-10-04 20:21:58 -03:00
ariel-
e641d0c7d7 Core/Spells: Implementation of QAston proc system
- Move checks from Unit::IsTriggeredAtSpellProcEvent (old system) to Aura::IsProcTriggeredOnEvent (new system)
- Templatize SpellModOp param of Player::ApplySpellMod, also killed charge counter from SpellModifier and Player system for handling charges... no point in having 3 different systems doing the same thing
- Automatically add default entries to spellProcMap, based on spellinfo (else auras won't proc without an entry) Based on old Unit::ProcDamageAndSpellFor
- Old Unit::ProcDamageAndSpellFor renamed to Unit::ProcSkillsAndReactives and made private, will no longer handle auras.
- Start making use of HealInfo::AbsorbHeal in unit calculations, add effective healing info to HealInfo struct
- Changes in spell reflection system, emulates old behaviour, delaying aura drop
- Removed old charge count hacks in SpellMgr::LoadSpellInfoCorrections
- Removed bogus error log when procChance is 0: Some auras have initial 0 procChance but modified by SPELLMOD_CHANCE_OF_SUCCESS
- Fixed TriggerAurasProcOnEvent logic that tried to trigger twice from actor.
- Allow non damaging spells with DamageClass Melee or Ranged to proc character enchants. Ref issue #17034:

  * http://web.archive.org/web/20110309092008/http://elitistjerks.com/f47/t49865-paladin_retribution_pve/
  * When an auto-attack lands (does not dodge/parry/miss) that can proc a seal the of the following things happen independently of each other (see 2 roll system).

  * 1) A "hidden strike" which uses melee combat mechanics occurs. If it lands it refreshes/stacks SoV DoT. Only white swings can trigger a refresh or stack. (This hidden strike mechanic can also proc things like berserking..)
  * 2) A weapon damage based proc will occur if you used a special (CS/DS/judge) or if you have a 5 stack (from auto attacks). This attack can not be avoided.

  * Holy Vengeance is the "hidden strike" it has an apply aura effect and damage class melee.
- Fixed Blood Tap interaction with Death Runes (btw, don't know what was going on with those MiscValueB, spell 45529 doesn't have any MiscValueB in SPELL_EFFECT_ACTIVATE_RUNE)
- Ported some AuraEffect checks from old Unit.cpp function. added new AuraScript hook to check procs of an specific effect
- Allow only AuraEffects that passed the check to proc, this won't block whole aura from proccing (and lose charges) if at least one of the effects procs, though
- Changes in spell mod system (for SPELLMOD_CASTING_TIME). fixes #17558.
- Added an exception for SPELLMOD_CRITICAL_CHANCE too, fixes #15193
2016-10-04 20:21:55 -03:00
Shauren
23902ff266 Core/Spells: Calculate hitMask and store it in DamageInfo/HealInfo structures 2016-10-04 20:19:12 -03:00
Aokromes
308a2413a1 Scripts/Wintergrasp: Fix vehicle teleporter (#17550)
By WoWErrorDev, closes #5831.
2016-10-04 20:55:05 +02:00
Shauren
256d07f26f Core/Units: Clear UNIT_NPC_EMOTESTATE on death (blizzlike)
Closes #15263
Closes #18027

(cherry picked from commit cd326db30f)
2016-10-04 20:32:51 +02:00
SnapperRy
b60db6c44e Core/Wintergrasp: fix leaving Wintergrasp via the minimap button. 2016-10-04 19:13:11 +02:00
SnapperRy
63215dd15a Core/Wintergrasp: properly set and remove GO_FLAG_NOT_SELECTABLE from the Wintergrasp Relic, allowing the attacking faction to capture it. 2016-10-04 19:07:46 +02:00
SnapperRy
fd620ca7d6 Core/Conditions: partially revert 723c253, replacing CONDITION_WINTERGRASP_HORDE with a ConditionScript. 2016-10-04 18:47:58 +02:00
SnapperRy
c22d3886ce Core/Wintergrasp: give quest credit for southern towers destroyed.
Updates #7953.
2016-10-04 17:23:36 +02:00
SnapperRy
df36e4b95d DB/Conditions: quests Southern Sabotage and Toppling the Towers are only available if the respective faction is defending Wintergrasp.
Also codestyle stealthfix.
2016-10-04 15:51:44 +02:00
ariel-
83771597c1 Core/Scripts: kill whitespace 2016-10-04 10:15:37 -03:00
ariel-
3bd5e0bf2f Core/Unit: fix a copy/paste mistake 2016-10-04 10:11:00 -03:00
treeston
84cf239fda Various: Fix coverity reported issues. 2016-10-04 13:49:05 +02:00