예제 #1
0
파일: Skill.cs 프로젝트: BUFORD/Funky
        ///<summary>
        ///Sets values related to Ability usage
        ///</summary>
        public void OnSuccessfullyUsed(bool reorderAbilities = true)
        {
            LastUsed = DateTime.Now;
            PowerCacheLookup.lastGlobalCooldownUse = DateTime.Now;

            //Chart our starting combat location..
            if (Bot.Settings.Backtracking.EnableBacktracking && Bot.Settings.Backtracking.TrackStartOfCombatEngagment && Bot.Targeting.Cache.StartingLocation.Equals(Vector3.Zero))
            {
                Bot.Targeting.Cache.StartingLocation = Bot.Character.Data.Position;
            }

            if (ExecutionType.HasFlag(AbilityExecuteFlags.ZigZagPathing))
            {
                //Reset Blockcounter --
                Bot.Targeting.Movement.BlockedMovementCounter   = 0;
                Bot.Targeting.Movement.NonMovementCounter       = 0;
                Bot.Targeting.Movement.LastMovementDuringCombat = DateTime.Now;
            }

            //Disable Reordering for Channeling Abilities!
            if (IsChanneling)
            {
                reorderAbilities = false;
            }

            if (SuccessfullyUsed != null)
            {
                SuccessfullyUsed(this, reorderAbilities);
            }
        }
예제 #2
0
파일: Skill.cs 프로젝트: BUFORD/Funky
 private void UsePower()
 {
     if (!ExecutionType.HasFlag(AbilityExecuteFlags.RemoveBuff))
     {
         SuccessUsed = ZetaDia.Me.UsePower(Power, TargetPosition, WorldID, TargetACDGUID);
     }
     else
     {
         ZetaDia.Me.GetBuff(Power).Cancel();
         SuccessUsed = true;
     }
 }