Commit Graph

2112 Commits

Author SHA1 Message Date
Wilcalaf
2dd5735bd9 Scripts/Nexus: Fixed a rare bug when sometimes Magus telestra managed to die while invisible preventing players from looting. (#21436) 2018-02-17 23:02:58 -03:00
sirikfoll
076bd11002 Scripts/Icecrown Citadel: Prevent Lady Deathwhisper movement during first phase. 2018-02-17 20:11:37 -02:00
Wyreth
56874b44f0 Core/Entities: remove grid-wide visibility from setActive and implement another method for it (#20725) 2018-02-17 15:09:54 +01:00
Keader
f609589e22 Scripts/Ulduar: Fixed amount of Mole Machines in Razorscale 10 man 2018-02-16 00:03:40 -03:00
Treeston
789f3c5d37 Scripts/TotC: Reduce Twin Val'kyr berserk timer from 10 minutes to 8 minutes on normal mode (match DBM). This closes #15367, no matter what ccrs' bong says. 2018-02-16 00:13:43 +01:00
ariel-
29f7258dc8 Core/Spells: prevent creatures to focus channeled spells without SPELL_ATTR1_CHANNEL_TRACK_TARGET
- Creatures stuck here wouldn't try attacking because of this
- Remove one workaround in halion script, now it's unneeded

Ref #11311
2018-02-15 17:50:15 -03:00
Treeston
4da9321d2b Core/Combat: Unify combat permitted checks between CvC and PvC - only require "not friendly" in all cases. Fixes Yogg-Saron encounter. Closes #21380.
Also some bonus cleanup to Yogg's script to make transition cleaner.
2018-02-15 12:23:05 +01:00
Keader
63c436f5fb Core/Scripts: Fixed some delayed enrage
Closes #15367
2018-02-14 17:32:29 -03:00
Treeston
fe3b4de1cd Scripts/AzjolNerub: Clean up Hadronox to hopefully avoid any further evade issues. Tag #20310. 2018-02-13 15:47:04 +01:00
ariel-
bc2a4c816d Core/Scripts: fix Tenacity Aurascript (target is null on UpdatePeriodic)
- also aura amount increases with stack so we lose spellid info, calculate it from basepoints directly
- aura should be SPELL_AURA_MOD_HEALING_PCT instead of SPELL_AURA_MOD_HEALING_DONE_PERCENT (ie taken instead of done, confusing names)
2018-02-12 19:04:01 -03:00
ariel-
404240fb68 Core/Scripts: remove Tenacity hack, implemented with proper aura 2018-02-12 18:35:06 -03:00
ariel-
3edf90d167 Core/Scripts: fix nopch build mk II 2018-02-12 00:51:36 -03:00
ariel-
490f807a42 Core/Scripts: fix nopch build 2018-02-12 00:47:14 -03:00
Treeston
b243a7929b Scripts/AzjolNerub: Hadronox is a big spider mommy, and needs more room to pet her spider pets properly. Hopefully this'll reduce the number of evades happening during the encounter. Tag #20310. 2018-02-12 03:08:34 +01:00
ariel-
477878630e Core/Scripts: implemented Combined Toxins proc only from poisons 2018-02-11 21:10:56 -03:00
jackpoz
5aba5c7aff Scripting/Obsidian Sanctum: Fix crash
Fix crash caused by calling Reset() in constructor (which is not allowed)
2018-02-11 15:53:30 +01:00
Keader
2994abeae6 Scripts/Icecrown Citadel: Fixed Sindragosa spawn after grid unload
ty sirikfoll :)
2018-02-09 16:02:00 -02:00
Keader
31ad6358fb Core/Scripts: Fixed tabs issues introduced in 5bef3e426a 2018-02-08 10:16:19 -03:00
Keader
5bef3e426a Core/Scripts: Fixed possible crashs related with JustDied 2018-02-08 10:05:08 -03:00
ariel-
b490d3f5ad Core/Scripts: fix non-functional Celestial Planetarium Access GO
- Client only sends CMSG_GAMEOBJ_REPORT_USE for this one

Closes #19982
2018-02-06 13:59:08 -03:00
Treeston
4bd2d28119 Revert "Scripts/Northrend: Malygos now uses modifiable threat list when teleporting after vortex. Fixes a crash. Closes #21315."
This reverts commit 6bbc95f3a0, which is made unnecessary by 65709e1c30.
2018-02-05 10:14:00 +01:00
Treeston
6bbc95f3a0 Scripts/Northrend: Malygos now uses modifiable threat list when teleporting after vortex. Fixes a crash. Closes #21315. 2018-02-05 01:38:56 +01:00
Treeston
b3e0c89238 Scripts/Ulduar: Flame Leviathan used a very weird mixture of victim logic and REACT_PASSIVE, which broke during transition to the new system. Replaced with a working version.
Closes #21265.
2018-02-04 21:27:48 +01:00
Treeston
aefc25482f Scripts/ICC: Valithria Dreamwalker's script no longer despawns unrelated mobs in Frostwing Halls, and thus won't get them stuck in a despawned state due to linked_respawn.
Closes #21286.
2018-02-04 01:32:30 +01:00
sirikfoll
a217c0be92 Scripts/Icecrown Citadel: Corrected Val'kyr Shadowguard positioning on heroic mode (Lich King)
Movement was being prevented by spell cast
2018-01-31 00:59:14 -02:00
Shauren
aaab7ba9f4 Scripts/Icecrown Citadel: Added missing cosmetic colors and emotes to Big Ooze (Rotface) 2018-01-28 23:29:33 +01:00
ariel-
6dd465c441 Core/Scripts: reverted Auriaya spell script logic
Thanks Shauren for spotting it
2018-01-24 12:32:26 -03:00
ariel-
c099174ff7 Core/Misc: fix some /W4 warnings and some reported by GCC 6.3 2018-01-22 23:55:33 -03:00
ariel-
7c9722a4ae Core/Entities: killed Creature::SetInCombatWithZone and replaced with AI version
Closes #12108 (again)
2018-01-22 15:00:55 -03:00
joschiwald
5f54149107 Core/Battleground: Dropped battleground texts from trinity_string and replaced them with proper BroadcastText
(cherry picked from commit ed318fdc46)

Fixed nopch build
(cherry picked from commit 6eff69818b)

Fixed nopch build again
(cherry picked from commit 3039f4bf86)
2018-01-21 13:41:02 +01:00
ariel-
9f5d1e2b10 Core/Scripts: fix wrong uses of SetHitDamage hook.
This hook modifies damage AFTER it has been reduced by target auras/armor/resistances etc, it's useful if you want to scale damage by a factor, but not to add flat bonuses.
We're fixing those by moving calculation to Launch phase, where target taken bonuses haven't been used yet.

- Bronjahm: Magic's Bane
- BPC: Shadow Prison
- Oculus: Shock Lance
- Ymiron: Dark Slash (extra fix, it was wrongly damaging half of total health, it's supposed to be half of CURRENT health!)
- DK: Raise Ally Thrash spell (also extra fix: corrected formula)
- Warrior: Bloodthirst (shouldn't matter much as it's damage class none and those don't get bonuses by default)
- Warrior: Concussion Blow
- Warlock: extra fix for Haunt, healing part shouldn't scale with spell power

Closes #9560
2018-01-20 21:09:22 -03:00
Keader
96983fc6bb Scripts/Utgarde Keep: Fixed Ingvar evade in phase 2 (again)
Closes #21264
2018-01-19 20:56:27 -02:00
ariel-
0db5c2df3f Core/Scripts: added nullptr checks to DamageTaken hooks
Since cb9e72e521 attacker may not be in world when hook is called
2018-01-18 13:58:40 -03:00
Treeston
d9d26200f7 Scripts/AzjolNerub: Missing nullptr check in Hadronox. Closes #21258. 2018-01-18 16:47:31 +01:00
Treeston
0319c713a4 DB/SpawnGroup: instance_spawn_group data for map 576 (The Nexus) 2018-01-18 16:06:08 +01:00
Keader
0b09e9ee4e Scripts/Pit of Saron: Tyrannus followup
fix new issue caused by 947cb6a453
2018-01-16 20:38:38 -02:00
Keader
947cb6a453 Scripts/Pit of Saron: Fixed Tyrannus not working after evade 2018-01-16 18:32:17 -02:00
Keader
a41cd41695 Scripts/Trial Of The Crusader: Lord Jaraxxus rework (#21216) 2018-01-15 19:47:15 -03:00
ariel-
3b01cccd7e Core/Spell: SpellValueOverrides encapsulation
- No sense to let scripts use SpellValueOverrides, we already have modifiers in CastSpellExtraArgs struct
2018-01-13 20:49:43 -03:00
ariel-
cb9e72e521 Core/Auras: removed caster dependency from core
- Decoupled Unit logic: split of spell critical chance into done (caster bonuses) and taken (target bonuses), this allows to precalculate caster bonuses on aura apply and then check victim's auras on damage/healing calc
- Made static a bunch of methods (they no longer have this pointer because they are now called from periodic handlers which may or may not have an active caster in world)
- Simplified all AuraEffect bonuses into AuraEffect::_amount, no more duplicated code
- Critical chance and whether or not caster is player owned unit (for resilience calcs) is now saved one level upper, on Aura itself (it's impossible as of 3.3.5 to have different effects with different critical chances)
- Minor cleanup of SPELL_DAMAGE_CLASS_NONE and Arcane Potency (#18813) crit handling

Closes #19876
2018-01-13 06:45:21 -03:00
Treeston
f0a394753a 9ad11e6 follow-up, prevent Halion respawn without loot
tagging #21198
2018-01-07 23:13:20 +01:00
Treeston
663a6f2f23 typo fix 2018-01-07 20:35:24 +01:00
Treeston
9ad11e67fb Core/Threat: Fix a potential exploit allowing players to damage a boss without them taking damage.
Scripts/Halion: General cleanup of old hacks no longer needed under new combat system.
2018-01-07 20:32:30 +01:00
Treeston
3bb33e3108 Core/Map: New Map::ForceRespawn to override objections and force a respawn (equivalent to force = true). Use this to fix various GM commands.
Scripts/Valithria: Fix an issue that could get the encounter stuck in an unloaded state.
2018-01-07 19:53:39 +01:00
Moein
18f5eae835 MovementInform should overrides 2018-01-04 09:52:48 +01:00
Treeston
9f9507e6a1 Core/Misc: A variety of clean-up changes, mostly following up on 532ab1c to fix legacy bugs exposed by it:
- Triggers can no longer have a threat list (this may expose some ugliness in old legacy scripts)
- Threat entries are forced to OFFLINE if the AI refuses to attack the target
- Clean up passive creature evade behavior to be more consistent
- Fix a months old issue in spawn group management that would cause "Inactive" to incorrectly show in .list respawns for system groups outside of map 0
- Valithria script cleanups, remove old hacks and make it work with the new system. Closes #21174.
- Some strings cleanup
2018-01-04 04:46:41 +01:00
Treeston
532ab1c7f8 Core: Combat/threat system rewrite (PR #19930)
- PvE combat is now always mutual. UNIT_FLAG_IN_COMBAT is backed by actual references to the units we're in combat with.
- PvP combat is now also tracked, and almost always mutual; spells like Vanish and Feign Death can break this rule. That means we can easily determine a list of players we're fighting.
- By extension, IsInCombatWith now has sensible behavior when invoked on nonplayers.
- Threat and combat systems are no longer the same.
  - They still have an enforced relationship (threat implies combat - clearing combat clears threat)...
  - ...but we can have combat without threat. A creature (with threat list) isn't considered to be engaged until it has an entry on its threat list...
  - ...which means we can now faithfully replicate retail engage behavior. Combat on projectile launch - engagement start on projectile impact. Yay for progress!
- AI method refactor, as already ported in 6113b9d - `JustEngagedWith`, `JustEnteredCombat` and `JustExitedCombat`.
- Vehicle threat is now properly pooled on the main vehicle body (fixes #16542).
- Various edge case bug fixes for threat redirects (Misdirection "cancelling" Vigilance and similar).
- Target re-selection is now significantly faster.
- Fixed a ton of other smaller edge case bugs, probably.

Closes #7951 and #19998.
2018-01-03 20:04:19 +01:00
ariel-
de3fd4d076 Core/Scripts: fix issues with 'Squeeze' on Yogg-Saron encounter
- Unassigned spell script for 25-man difficulty
- Didn't remove aura on 25-man when tentacle killed
2018-01-02 01:33:35 -03:00
tkrokli
f6b6f57a6d Update copyright note for 2018
Best wishes for the new year.
2018-01-01 01:55:29 +01:00
Treeston
6113b9dec2 Core/AI: Some more refactoring prep for #19930. CreatureAI::EnterCombat is now called CreatureAI::JustEngagedWith. There's also two new methods on UnitAI, though they're never invoked right now. 2017-12-31 03:23:42 +01:00