public static void RecordSpell(TrinityPower power) { if (_history.Count >= SpellHistorySize) { _history.RemoveAt(0); } // todo, need a better way than looking up skill again. var skill = power.GetSkill(); if (skill != null) { if (skill.IsAttackSpender) { _lastSpenderCast = DateTime.UtcNow; } if (skill.IsGeneratorOrPrimary) { _lastGeneratorCast = DateTime.UtcNow; } } _history.Add(new SpellHistoryItem { Power = power, UseTime = DateTime.UtcNow, MyPosition = Core.Player.Position, TargetPosition = power.TargetPosition, TargetAcdId = power.TargetAcdId, }); LastSpellUseTime = DateTime.UtcNow; LastPowerUsed = power.SNOPower; }
public static void RecordSpell(SNOPower power, int targetAcdId) { SpellTracker.TrackSpellOnUnit(targetAcdId, power); var p = new TrinityPower(power) { TargetAcdId = targetAcdId }; RecordSpell(p); }
public static void RecordSpell(SNOPower power, Vector3 position, int targetAcdId) { SpellTracker.TrackSpellOnUnit(targetAcdId, power); var p = new TrinityPower(power) { TargetAcdId = targetAcdId, TargetPosition = position, }; RecordSpell(p); }