public void PerformBattle() { AutomataApi.UseSameSnapIn(OnTurnStarted); AutomataApi.Wait(2); var wereNpsClicked = false; if (Preferences.Instance.EnableAutoSkill) { wereNpsClicked = AutoSkill.Execute(); AutoSkill.ResetNpTimer(); } if (!HasClickedAttack) { ClickAttack(); } if (Card.CanClickNpCards) { // We shouldn't do the long wait due to NP spam/danger modes // They click on NPs even when not charged // So, don't assign wereNpsClicked here Card.ClickNpCards(); } Card.ClickCommandCards(5); Card.ResetCommandCards(); AutomataApi.Wait(wereNpsClicked ? 25 : 5); }
public void PerformBattle() { AutomataApi.UseSameSnapIn(OnTurnStarted); AutomataApi.Wait(2); var NpsClicked = false; if (Preferences.Instance.EnableAutoSkill) { NpsClicked = AutoSkill.Execute(); AutoSkill.ResetNpTimer(); } if (!HasClickedAttack) { ClickAttack(); } if (Card.CanClickNpCards) { NpsClicked = Card.ClickNpCards(); } Card.ClickCommandCards(5); if (Preferences.Instance.UnstableFastSkipDeadAnimation) { SkipDeathAnimation(); } Card.ResetCommandCards(); AutomataApi.Wait(NpsClicked ? 25 : 5); }
Dictionary <CardScore, List <int> > GetCommandCards() { var storagePerPriority = new Dictionary <CardScore, List <int> >(); AutomataApi.UseSameSnapIn(() => { for (var cardSlot = 0; cardSlot < 5; ++cardSlot) { var score = GetCardAffinity(Game.BattleCardAffinityRegionArray[cardSlot]) | GetCardType(Game.BattleCardTypeRegionArray[cardSlot]); if (!storagePerPriority.ContainsKey(score)) { storagePerPriority.Add(score, new List <int>()); } storagePerPriority[score].Add(cardSlot); } }); return(storagePerPriority); }