public static void CycleUseModes() { switch (LockOnHelper.UseMode) { case LockOnHelper.LockOnMode.FocusTarget: LockOnHelper.UseMode = LockOnHelper.LockOnMode.TargetClosest; break; case LockOnHelper.LockOnMode.TargetClosest: LockOnHelper.UseMode = LockOnHelper.LockOnMode.ThreeDS; break; case LockOnHelper.LockOnMode.ThreeDS: LockOnHelper.UseMode = LockOnHelper.LockOnMode.TargetClosest; break; } }
private static void FindMostViableTarget(LockOnHelper.LockOnMode context, ref int targetVar) { targetVar = -1; if (LockOnHelper.UseMode != context || !LockOnHelper.CanUseLockonSystem()) { return; } List <int> t1_1 = new List <int>(); int t1_2 = -1; Utils.Swap <List <int> >(ref t1_1, ref LockOnHelper._targets); Utils.Swap <int>(ref t1_2, ref LockOnHelper._pickedTarget); LockOnHelper.RefreshTargets(Main.MouseWorld, 2000f); LockOnHelper.GetClosestTarget(Main.MouseWorld); Utils.Swap <List <int> >(ref t1_1, ref LockOnHelper._targets); Utils.Swap <int>(ref t1_2, ref LockOnHelper._pickedTarget); if (t1_2 >= 0) { targetVar = t1_1[t1_2]; } t1_1.Clear(); }