* Apply rune cooldown buff only for spell 48265
* Implement SPELL_AURA_MOD_POWER_REGEN_PERCENT work for POWER_RUNE
Thanks to Laise for problem research.
* Add IsHostileTo/IsFriendlyTo and implement expected way checks for diff. world object types.
For controlled object check redirected to specific owner, for wild gameobject base at gameobject faction.
If faction not set expected to be hostile to anyone.
* Update grid searchers to be usable with world object instead only unit case.
Some grid searches lost redundent second object arg, AnyAoETargetUnitInObjectRangeCheck lost hitHidden arg
(for hitHidden==true case added new AnyAoEVisibleTargetUnitInObjectRangeCheck)
* Updated grid searchers used with gameobject area casts now.
Note: Gameobject area spell cast animation will still wrong show around cast triggering target instead
center around gameobject.
* In case gameobject aura apply to target for restored use target itself as caster because
we not have currently another way apply aura form wild gameobject.
* Now expected item limit categories (for example for item 5513 and related)
correctly limited by its amount in inventory.
* Provide and use additional arg in SendEquipError for alt. way get affected
item prototype. This let send to function item id and prevent crash client at
limit category equip errors that required item prototype data.
Please note that it may not be correct to handle them all in the same way.
Some more research should be done regarding the whole issue with creatures and faking death (cheaters) and a possible difference between the spells.
Signed-off-by: NoFantasy <nofantasy@nf.no>
Rewrite base at area aura type check
* For positive area aura types show at non-caster target or caster-totem or non-passive aura at caster
* For negative area aura show at non-caster target
* For other auars show at any target if non passive auras or totem-caster
In fact make triggered spell replace main spell for channeling.
This also let drop hack for target death case interrupt channeling for spell.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
* Propertly add/remove required for specs work spells at 63624/63651.
* Copy current spec action bars to new spec at specs count increase, and delete action bars data at spec count decrease.
* Avoid undexpected action button data test for not active spec at loading/copy, but test action buttons data at spec activation.
* Reset active spec to default if active spec removed.
* Remove talent reset at spec switch that useless at this moment.
Also note that for future case this also can be not correct and batter unlearn/learn only talents that different in specs.
After this changes specs must fully work in action bar part without unexpected another effects.
* It was wasting CPU power as cell-level locking is not needed.
* Future multithreading will be on map-level.
* CellLock was just a 'proxy' between Cell and CellPair and in some cases carried redundant data.
* Some minor cleanup in Cell::Visit/Map::Visit.
* Also replace check/take functions for runes by single 2 mode function
* Implement proper check for dead runes case
* Implement proper rune selection for Aura::HandleAuraConvertRune