* New CreatureAI::SummonedCreatureJustDie called for owner at temporary summoned creature die.
* New EVENT_T_SUMMONED_JUST_DIE (25) for proccess CreatureAI::SummonedCreatureJustDie event
* New EVENT_T_SUMMONED_JUST_DESPAWN (26) for proccess CreatureAI::SummonedCreatureJustDespawn event
* Some code cleanups.
Original way have many reported problems.
New also maybe not allways working but less problematic.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
All non generic spells expected to be cancellable and part of buff abilities.
(based on commit 7f5310b from insider42/mangos).
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
After sql update apply new and old charactrs for affected class/race pairs
will receive spell at first/next login.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
Also move calculation to function. And avoid use operator[] for access to per-area base xp table data.
* This allow pet use own speed (and all speed affects appiedto pet itself) in combat.
* Apply this speed synhronization to minipets/guardians also.
* Also rename Unit::SetSpeed to SetSpeedRate as more close to real functionality.
Not send MOVEMENTFLAG_FORWARD (even if expected). As result npc will not run in same position when npc becomes visible at client side.
Signed-off-by: NoFantasy <nofantasy@nf.no>
* Re-number enums by function groups and use where possible new defined masks in code instead raw enum |-lists.
* Avoid use movement generator generic state markers like UNIT_STAT_CONFUSED for mark movement stoped.
Add special shadow UNIT_STAT_CONFUSED_MOVE/etc states for like use.
UNIT_STAT_CONFUSED in like case will be safe expect use for normal checks confused state presence
And UNIT_STAT_CONFUSED_MOVE for check real move in this state
This commit specially made indeepndent from other changes for show problem
in my prev. commit where 2 new movegens added.
For proper call Initilize/Finilize/Reset/Interrupt/Update functions _important_
set second template arg in MovementGeneratorMedium< T, D >
in _last_ class in class chain. In other case in chase/follow instead TargetedMovementGeneratorMedium
In other cases will called referenced functions from TargetedMovementGeneratorMedium
instead proper subclasses.
NOTE: this is mostly just formal adding 2 movegens with very limited cleanups.
Real result from adding 2 new movegens possible after apply more deep cleanups/fixes
in UNIT_STAT_CHASE/UNIT_STAT_FOLLOW set. But this will need more cereful changes
because we have currently sometime strange dependences and places for set for this flags.
Similar cleanups required for other movegen related flags. Infact i have related patches but
need more testing before apply step by step.
* Use AddMonsterMoveFlag instead SetMonsterMoveFlags for set walk-mode
* Apply walk/run mode to all copntrolled units (except totems).
* Synchronize walk/run mode at pet creating/loading.
This let use now default requirement for not set in `battleground_template` min/max values (or =0)
In other cases just set expected data into template table.