Replace ActionHistory with persistent ActionStatuses
This commit is contained in:
@@ -6,7 +6,7 @@ internal sealed class AdvancedTouch : BaseAction
|
||||
public override int Level => 84;
|
||||
public override uint ActionId => 100411;
|
||||
|
||||
public override int CPCost => Simulation.IsPreviousAction(ActionType.StandardTouch) && Simulation.IsPreviousAction(ActionType.BasicTouch, 2) ? 18 : 46;
|
||||
public override int CPCost => Simulation.ActionStates.TouchComboIdx == 2 ? 18 : 46;
|
||||
public override float Efficiency => 1.50f;
|
||||
public override bool IncreasesQuality => true;
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ internal sealed class CarefulObservation : BaseAction
|
||||
public override int DurabilityCost => 0;
|
||||
public override bool IncreasesStepCount => false;
|
||||
|
||||
public override bool CanUse => Simulation.Input.Stats.IsSpecialist && Simulation.CountPreviousAction(ActionType.CarefulObservation) < 3;
|
||||
public override bool CanUse => Simulation.Input.Stats.IsSpecialist && Simulation.ActionStates.CarefulObservationCount < 3;
|
||||
|
||||
public override void UseSuccess() =>
|
||||
Simulation.StepCondition();
|
||||
|
||||
@@ -9,5 +9,5 @@ internal sealed class FocusedSynthesis : BaseAction
|
||||
public override int CPCost => 5;
|
||||
public override float Efficiency => 2.00f;
|
||||
public override bool IncreasesProgress => true;
|
||||
public override float SuccessRate => Simulation.IsPreviousAction(ActionType.Observe) ? 1.00f : 0.50f;
|
||||
public override float SuccessRate => Simulation.ActionStates.Observed ? 1.00f : 0.50f;
|
||||
}
|
||||
|
||||
@@ -9,5 +9,5 @@ internal sealed class FocusedTouch : BaseAction
|
||||
public override int CPCost => 18;
|
||||
public override float Efficiency => 1.50f;
|
||||
public override bool IncreasesQuality => true;
|
||||
public override float SuccessRate => Simulation.IsPreviousAction(ActionType.Observe) ? 1.00f : 0.50f;
|
||||
public override float SuccessRate => Simulation.ActionStates.Observed ? 1.00f : 0.50f;
|
||||
}
|
||||
|
||||
@@ -11,5 +11,5 @@ internal sealed class HeartAndSoul : BaseBuffAction
|
||||
|
||||
public override EffectType Effect => EffectType.HeartAndSoul;
|
||||
|
||||
public override bool CanUse => Simulation.Input.Stats.IsSpecialist && Simulation.CountPreviousAction(ActionType.HeartAndSoul) == 0;
|
||||
public override bool CanUse => Simulation.Input.Stats.IsSpecialist && !Simulation.ActionStates.UsedHeartAndSoul;
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@ internal sealed class StandardTouch : BaseAction
|
||||
public override int Level => 18;
|
||||
public override uint ActionId => 100004;
|
||||
|
||||
public override int CPCost => Simulation.IsPreviousAction(ActionType.BasicTouch) ? 18 : 32;
|
||||
public override int CPCost => Simulation.ActionStates.TouchComboIdx == 1 ? 18 : 32;
|
||||
public override float Efficiency => 1.25f;
|
||||
public override bool IncreasesQuality => true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user