ariel-
95bc5dcc40
Core/Spells: rework part 1: Improved positive detection logic
...
# Conflicts:
# src/server/game/Spells/SpellInfo.cpp
2022-09-12 09:15:12 +02:00
ariel-
64b9b1c28b
Core/Spells: kill unused parameter from Spell constructor
2022-09-12 09:15:10 +02:00
ariel-
0d6840ee7f
Core/Spell: killed deprecated code which randomly changed powercost for missed spells
2022-09-12 09:15:09 +02:00
ariel-
6fc5bfcd08
Core/Unit: fixed crash
2022-09-12 09:15:05 +02:00
ariel-
1d3fbff332
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
2022-09-12 09:15:04 +02:00
Shauren
d448ea4370
Core/Spells: Rename SpellAttr0 to use official attribute names
2022-09-12 09:15:04 +02:00
Ovahlord
67a5f43536
Core/Spells: no longer allow trigger npcs to trigger combat mechanics when launching or hitting spells
2022-07-02 18:15:16 +02:00
Chaouki Dhib
a588f62838
Core/Spells: Change the radius of PBAoEs following the feedback received on ( #16290 )
...
# Conflicts:
# src/server/game/Spells/Spell.cpp
2022-06-16 22:44:09 +02:00
Ovahlord
c63c81ef6c
Core/Packets: enable and implement SMSG_SUMMON_RAID_MEMBER_VALIDATE_FAILED
...
* refactored target based summoning to not longer store targets in the target map and pull the directly from the caster's target update field in the effect handler
* implement support for party based summoning and use the new opcode to send error messages when a player cannot be summoned. Note: this packet does support sending multiple reasons for multiple members but sniffs show that they are still being sent one by one instead. Just Blizzard things
2022-05-17 20:43:49 +02:00
Ovahlord
82c9e10a2a
Core/Spells: restore handling for src_area_x channel target selection
2022-03-28 22:51:41 +02:00
Ovahlord
1534ede45a
Core/Spells: updated proc flags for Cataclysm
2022-02-23 21:17:52 +01:00
Ovahlord
f641bcb2d1
Core/Spells: resolved a cherrypick error
2022-02-22 21:51:21 +01:00
Shauren
c307969695
Core/Spells: Changed channel triggered spells to inherit positive/negative status from main spells
2022-02-22 21:24:49 +01:00
Ovahlord
78896a132f
Core/Spells: ported proc flag updates from master branch
2022-02-22 21:19:09 +01:00
Chaouki Dhib
17c4d8f6d9
Core/Spells: fix wrong distance calculations in AoE spells [Needs testing] ( #16290 )
...
Core/Spells: Fix wrong distance calculations in AoE spells.
Pull request #16290 by chaodhib.
God bless, finally.
(cherry picked from commit a1f2f30c145f6ad9c4baeffeff32618e71ff537c)
2022-02-16 04:49:24 +01:00
xinef1
df9738aaa9
Core/Misc: Fixed player corpse looting, added player corpse loot and some more ( #19122 )
...
* Fixed corpse looting in wintergrasp
Added corpse loot for wintergrasp quests and To the Looter Go the Spoils (1166) achievement
Don't generate money for loot if no loot mode is available
Simplified few things
(cherry picked from commit 2412886ef69d305df1bd6e6422ca3134c0ab1449)
2022-02-16 04:49:24 +01:00
Ovahlord
2bef0ce3f6
Core/Spells: fixed logic for selecting a channel focus target
2022-01-23 12:44:08 +01:00
xinef1
9da4acce08
Core/Spells: Remade trajectory target selection ( #19048 )
...
* Remade trajectory target selection
* Added possibility to apply conditions to trajectory spells
* Properly recalculate delay time if CMSG_UPDATE_PROJECTILE_POSITION is received
(cherry picked from commit c6060dd0c511ddad3cb1f0423aa9ccf2de7aedec)
2022-01-22 22:29:20 +01:00
Ovahlord
9892d239a8
Core/Spells: renamed SPELL_ATTR5_INCLUDE_MELEE_RANGE to SPELL_ATTR5_TREAT_AS_AREA_EFFECT and handle the attribute in SpellInfo::IsAffectingArea
2022-01-16 11:44:49 +01:00
Ovahlord
319ef144b4
Core/Spells: SPELL_ATTR0_CU_CONE_LINE is no longer taking a target's combatreach into account to avoid being falsely hit when not even inside of the cone
2022-01-14 21:37:08 +01:00
Ovahlord
86d8443732
Core/Spells: further fixups for spell focusing and channel target selection
...
* SPELL_ATTR1_SELF_CHANNELED is now also considering targets when required
2022-01-14 21:36:13 +01:00
Ovahlord
520b53a5e0
Core/Spells: added a helper to determine whenever a periodic aura should roll over its duration on refresh
...
* introduce another custom spell attribute to grant full control over when or when not to roll over ticks
2022-01-14 18:46:03 +01:00
Ovahlord
9085526f9a
Core/Spells: define and implement SPELL_ATTR8_PERIODIC_CAN_CRIT
...
* SPELL_ATTR8_DONT_RESET_PERIODIC_TIMER has been moved to a custom attribute (SPELL_ATTR0_CU_DONT_RESET_PERIODIC)
2022-01-12 17:33:34 +01:00
Ovahlord
3ff8840fe2
Core/Items: ported several enchantment flag implementations from master branch
2022-01-09 18:15:38 +01:00
Shauren
a322e4eb37
Core/Spells: Implemented target 124 TARGET_UNIT_TARGET_TAP_LIST
2021-12-30 20:16:33 +01:00
Shauren
28f79765ca
Core/Spells: Implemented target 62 TARGET_DEST_CASTER_GROUND (the same as target 125)
2021-12-30 20:00:42 +01:00
Shauren
7ef17f416c
Core/Spells: Rename TARGET_UNIT_CONE_ENEMY_54 to TARGET_UNIT_CONE_180_DEG_ENEMY and add 180 degree fallback for this target type
2021-12-30 19:57:50 +01:00
Shauren
8e657a9b7c
Core/Spells: Implemented target 105 TARGET_UNIT_CASTER_AND_PASSENGERS
2021-12-30 19:55:29 +01:00
Shauren
0ef0498d13
Core/Spells: Rename TARGET_UNIT_CONE_ENEMY_104 to TARGET_UNIT_CONE_CASTER_TO_DEST_ENEMY
2021-12-30 19:46:50 +01:00
Shauren
fbf2a2e531
Core/Spells: Allow targeting script hooks to work with TARGET_DEST_DYNOBJ_ENEMY, TARGET_DEST_DYNOBJ_ALLY, TARGET_DEST_DYNOBJ_NONE, TARGET_DEST_DEST
...
# Conflicts:
# src/server/game/Spells/Spell.cpp
2021-12-30 19:40:19 +01:00
Ovahlord
47170c11c6
Core/Spells: fixed a typo in 3a2e3452e0
2021-11-17 18:44:40 +01:00
Ovahlord
3a2e3452e0
Core/Spells: implement TARGET_UNIT_CASTER_PASSENGERS (105)
...
closes #297
2021-11-17 17:47:18 +01:00
Ovahlord
edbbeba5a2
Core/Movement: ported client control logic updates from 335 branch
2021-11-06 23:41:34 +01:00
Ovahlord
b10f962ba3
Core/Creatures: several cleanups and improvements to spell focusing to reduce edge case issues
2021-10-21 13:18:24 +02:00
Ovahlord
949f92e0a1
Core/AI: ported charm updates from 335
2021-09-16 16:48:07 +02:00
Ovahlord
0dfa919f09
Core/Creatures: optimized sparring checks by handling them via variable instead of map lookups and expose its value to helpers to allow manipulation during runtime
2021-07-26 15:48:16 +02:00
Ovahlord
8011d2de29
Core/Spells: ported resistance and immunity updates from 3.3.5 branch
2021-06-12 14:10:44 +02:00
Ovahlord
2dce3955b2
Core/Spells: defined and implement SPELL_ATTR1_DISCOUNT_POWER_ON_MISS
2021-05-16 19:04:54 +02:00
Ovahlord
4436b46908
fixed build
2021-05-15 20:33:17 +02:00
Ovahlord
16675c0f2f
Core/Packets: converted CMSG_CAST_SPELL to packet class
2021-05-15 20:11:33 +02:00
Ovahlord
2bedccd8b0
Core/Spells: added more case-by-case checks to determine auto action resets
2021-05-01 10:02:58 +02:00
Ovahlord
fe909f8234
Core/Spells: tempoarily add an additional check to avoid many spells falsely resetting melee swing timers
2021-04-30 10:30:37 +02:00
Ovahlord
bf28dfcf0c
Core/Spells: corrected a check when retrieving mechanic immunities in cast and channel packets and fixed a typo in SMSG_CHANNEL_START that was overwriting school immunities with mechanic immunities instead
2021-04-27 15:42:50 +02:00
Ovahlord
eda56e744c
Core/Spells: corrected check of b29d84af98
2021-04-21 20:00:23 +02:00
Ovahlord
b29d84af98
Core/Spells: defined and implemented SPELL_ATTR2_INITIATE_COMBAT_POST_CAST
2021-04-21 19:07:15 +02:00
Ovahlord
9ff4bbd085
Core/Spells: ported implementations of SPELL_AURA_DISABLE_CASTING_EXCEPT_ABILITIES and SPELL_AURA_DISABLE_ATTACKING_EXCEPT_ABILITIES from master branch
...
closes #93
2021-04-21 18:51:34 +02:00
Ovahlord
0ae10d09a2
Core/Packets:
...
* converted SMSG_SPELL_FAILURE, SMSG_SPELL_FAILED_OTHER and SMSG_SPELL_DELAYED to packet class
* converted SMSG_RESURRECT_REQUEST to packet class and handle SPELL_ATTR3_IGNORE_RESURRECTION_TIMER
2021-04-16 17:53:18 +02:00
Ovahlord
96fe5e76a9
Core/Spells: fixed a typo when checking for SPELL_ATTR3_CANT_TRIGGER_TARGET_PROCS in prepareDataForTriggerSystem
2021-04-09 14:14:04 +02:00
Ovahlord
77158594ff
Core/Spells:
...
* renamed SPELL_ATTR3_CANT_TRIGGER_PROC to SPELL_ATTR3_CANT_TRIGGER_CASTER_PROCS and expanded its implementation
* renamed SPELL_ATTR3_NO_INITIAL_AGGRO to SPELL_ATTR3_CANT_TRIGGER_TARGET_PROCS and implement the attribute
* expanded implementation SPELL_ATTR2_NO_INITIAL_THREAT to cover all remaining spots
2021-03-30 17:50:27 +02:00
Ovahlord
e93a66d287
Core/Spells: defined and implemented SPELL_ATTR5_DONT_TARGET_PLAYERS
2021-03-30 10:26:15 +02:00