Commit Graph

20784 Commits

Author SHA1 Message Date
Treeston
cfc77fd843 Scripts/SmartAI: SetData now has an invoker (if the setting is done by something using SmartAI).
Also, some refactors. SMARTAI IS SUCH A FUCKING CLUSTERFUCK I SWEAR.
2018-02-15 11:44:37 +01:00
Gooyeth
b9aec3b4d3 Core/Scripts: Add bossId in state error log. (#21421) 2018-02-15 09:00:48 +01:00
ariel-
f1f6976f91 Core/Auras: make area and dynauras condition compliant by using the spellarea searcher instead of script searchers
Closes #17317
2018-02-15 03:07:41 -03:00
ariel-
a145a14166 Core/Handlers: fix bogus check that skipped CMSG_CAST_SPELL packet under certain conditions, missing a target change
Closes #21390
2018-02-14 23:11:38 -03:00
ariel-
93cbe815cb Core/Spells: fixed server being too overzealous with autoshot
- Interrupting it when casting another spell and switching targets

Ref #21390
2018-02-14 23:10:41 -03:00
ariel-
1edd81f9d5 Core/Scripts: fix Healing Stream Totem coefficient and animation 2018-02-14 22:07:06 -03:00
Keader
63c436f5fb Core/Scripts: Fixed some delayed enrage
Closes #15367
2018-02-14 17:32:29 -03:00
ariel-
a93d74c8df Core/Scripts: fix nopch 2018-02-14 16:36:56 -03:00
ariel-
4101bc287d DB/Spell: clear spell_bonus_data of redundant entries, now read from DBCs
Ref #21415
2018-02-14 05:58:56 -03:00
ariel-
df5afca278 Core/Scripts: implemented Seed of Corruption scaling damage tolerance 2018-02-14 05:58:56 -03:00
ariel-
1826437c09 Core/Spells: implemented bonus SP coefficient from DBC
Ref #21415
2018-02-14 05:58:56 -03:00
Treeston
264d4e1d30 Entities/GO: Add forceRespawnTimer support to DespawnOrUnsummon. Use it in SAI. 2018-02-14 02:24:13 +01:00
Treeston
f071fa9e93 Entities/GO: GameObjects now support (delayed) despawning in a reasonable manner. Closes #21406. 2018-02-13 22:08:49 +01:00
Treeston
2cd5992f37 oops, now it builds (and a bonus refactor that annoyed me) 2018-02-13 18:42:28 +01:00
Treeston
6fb0bc1038 Scripts/SmartAI: Forward invoker to invoked action list actions. Also JustAppeared -> InitializeAI. 2018-02-13 18:29:38 +01:00
Treeston
0e401c7d96 Scripts/TheBarrens: Fix "The Escape" (863) - I don't think this one ever worked, honestly. 2018-02-13 17:49:40 +01:00
Treeston
482328bddf Scripts/SmartAI: SMART_TARGET_INVOKER cleanup step 1. The core will now log errors on start-up if SMART_TARGET_INVOKER abuse is found, but will continue to load the scripts as deprecated for now.
Note that a lot of these scripts may either not currently work, not work reliably, or may be prone to breaking unexpectedly when core internals change. SMART_TARGET_INVOKER is undefined behavior on any event that doesn't directly specify its invoker.

(We are considering options for allowing INVOKER to make sense in timed action lists in a reliable fashion, so they are exempted at this time.)
2018-02-13 16:59:32 +01:00
Treeston
ac8b9be5d6 Core/Spell: Properly remove REACT_PASSIVE on permanent feign death unapply. Fixes and closes #21156. 2018-02-13 15:47:44 +01: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
ccrs
28c6db0807 Core/Movement: fe1ba18905 followup
ref fe1ba18905 (r27507316)

plus I noticed a logic error on speedchange call
2018-02-12 23:44:18 +01:00
ariel-
59fb0a581c Core/Spells: fix Vampiric touch dispel effect inheriting damage done pct twice 2018-02-12 19:32:59 -03: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-
c7095375c3 Core/Unit: kill unused parameter from SpellxxxBonusTaken 2018-02-12 18:36:10 -03:00
ariel-
404240fb68 Core/Scripts: remove Tenacity hack, implemented with proper aura 2018-02-12 18:35:06 -03:00
tkrokli
57553ed96a Build fix (unused parameter 'stack' in Unit.cpp)
Ref. commit 4d14f613f3
2018-02-12 22:22:34 +01:00
Wilcalaf
0c1aaac219 Archaedas should properly start now when clicking on the altar. (#21401) 2018-02-12 21:38:08 +01:00
ariel-
4d14f613f3 Core/Unit: corrected calculation for SPELL_AURA_MOD_DAMAGE_TAKEN/SPELL_AURA_MOD_HEALING auras
- Spell bonus calculation and penalty was done twice, but it's simply flat +SP, which should be taken into account before other bonuses
- Fixed missing code from SpellDamageBonusDone/SpellHealingBonusDone and killed multiplication by stack amount twice for default coefficient spells (already multiplied on level penalty)
2018-02-12 16:52:59 -03:00
ariel-
e73bfe8df8 Core/Spells: implemented SpellPriority field from SpellEntry to cleanup charged mod proc behaviour
- Only one charged mod will be consumed per SpellMod apply, and it'll be compared against other mod priority
- This is proper way of handling Backdraft/Backlash and Deathchill/Killing Machine

Thanks to killerwife for info
2018-02-12 03:09:22 -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
ariel-
dfa861593e Core/Spells: add log on load about improper use of attribute PROC_ATTR_REQ_SPELLMOD 2018-02-12 00:21:26 -03:00
ariel-
546a605bd0 Core/Spells: implement SPELLVALUE_CRIT_CHANCE and SPELL_ATTR4_INHERIT_CRIT_FROM_AURA
Closes #18813
2018-02-12 00:21:26 -03:00
ariel-
52873a7072 Core/Spells: calculate crit chance only for spells that do damage/healing
Refs #18813
2018-02-12 00:21:26 -03:00
Treeston
e4e6e2209c Core/AI: EscortAI init logic moved from JustAppeared to InitializeAI. There are no escort NPCs using compatibility mode anymore, so this is equivalent.
As a result, inheriting scripts calling Start in on-create hooks (like JustSummoned) will now work properly again.

Tagging #20310.
2018-02-12 03:25:05 +01:00
Treeston
f6bf9bc04d Revert "Scripts/ScarletEnclave: fix Massacre at Light's Point mine cart escort to work again (tag #20310)"
This reverts commit 6ff71dffbb.
2018-02-12 03:23:54 +01: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
Treeston
6ff71dffbb Scripts/ScarletEnclave: fix Massacre at Light's Point mine cart escort to work again (tag #20310) 2018-02-12 02:58:51 +01:00
Treeston
fe1ba18905 Core/Movement: WaypointMovementGenerator cleanup 2018-02-12 02:57:55 +01:00
Treeston
d02f481d9a Core/Movement: Creatures' idle movement generator can no longer override player mover control.
Tagging #20310, partial fix.
2018-02-12 01:50:36 +01:00
ariel-
477878630e Core/Scripts: implemented Combined Toxins proc only from poisons 2018-02-11 21:10:56 -03:00
ariel-
9d0e90829c Core/Auras: fix periodic ticks proc after previous commit 2018-02-11 21:09:41 -03:00
ariel-
b42ade918a Core/Spells: require phasemask set for periodic damage procflag
Closes #21379
2018-02-11 20:42:06 -03:00
jackpoz
3576a38f6c Core/Player: Add some asserts
Assert PlayerInfo for race/class pair in a few Player functions
2018-02-11 17:43:12 +01: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
Jildor
edd6e7d524 Whitespace cleanup in Transaction.cpp
Removing white space after commit 54b0b8f5ea
2018-02-11 13:23:53 +01:00
jackpoz
54b0b8f5ea Shared/Database: Improve dead-lock error handling
Improve dead-lock error handling in async transactions by retrying the transaction for up to 60 seconds instead of just 5 times
2018-02-10 16:07:56 +01:00
Treeston
a4fc32dd86 Scripts/Instance: Transition Gnomeregan to boss states (instance spawn group prep) 2018-02-09 19:21:49 +01:00
Keader
2994abeae6 Scripts/Icecrown Citadel: Fixed Sindragosa spawn after grid unload
ty sirikfoll :)
2018-02-09 16:02:00 -02:00
Treeston
b456915f9a Game/AI: InvalidAIException internal cleanup 2018-02-09 18:07:57 +01:00
ariel-
303efcf0e4 Core/Spells: remove 'Vanish Purge' hack, the spell is present on DB and is copy of one in vanilla DBC
Thanks to killerwife for the heads-up
2018-02-08 23:18:45 -03:00