Core/Unit: Spell focusing now no longer nonsensical. HasSpellFocus always const. Error logs for various stuff.

Port From (https://github.com/TrinityCore/TrinityCore/commit/14c38a1c529e634b068a67b3e7475ddcf599086b)
This commit is contained in:
hondacrx
2022-01-02 19:49:21 -05:00
parent 82d3e3d8f4
commit 92c90bf777
6 changed files with 76 additions and 91 deletions
@@ -27,11 +27,7 @@ namespace Game.Entities
CreatureTemplate m_creatureInfo;
CreatureData m_creatureData;
Spell _focusSpell; // Locks the target during spell cast for proper facing
uint _spellFocusDelay;
bool _shouldReacquireSpellFocusTarget;
ObjectGuid _suppressedSpellFocusTarget; // Stores the creature's "real" target while casting
float _suppressedSpellFocusOrientation; // Stores the creature's "real" orientation while casting
SpellFocusInfo _spellFocusInfo;
long _lastDamagedTime; // Part of Evade mechanics
MultiMap<byte, byte> m_textRepeat = new();
@@ -104,4 +100,12 @@ namespace Game.Entities
Active, // in move list
Inactive // in move list but should not move
}
struct SpellFocusInfo
{
public Spell spell;
public uint delay; // ms until the creature's target should snap back (0 = no snapback scheduled)
public ObjectGuid target; // the creature's "real" target while casting
public float orientation; // the creature's "real" orientation while casting
}
}