Remove threadlocal dependence

This commit is contained in:
Asriel Camora
2023-06-21 13:20:05 -07:00
parent 0f2267dabf
commit 5faaa02f1a
43 changed files with 279 additions and 244 deletions
+9 -9
View File
@@ -6,18 +6,18 @@ internal sealed class TricksOfTheTrade : BaseAction
public override int Level => 13;
public override uint ActionId => 100371;
public override int CPCost => 0;
public override int DurabilityCost => 0;
public override bool IsGuaranteedAction => false;
public override bool CanUse =>
(Simulation.Condition == Condition.Good || Simulation.Condition == Condition.Excellent || Simulation.HasEffect(EffectType.HeartAndSoul))
&& base.CanUse;
public override int CPCost(Simulator s) => 0;
public override void UseSuccess()
public override bool CanUse(Simulator s) =>
(s.Condition == Condition.Good || s.Condition == Condition.Excellent || s.HasEffect(EffectType.HeartAndSoul))
&& base.CanUse(s);
public override void UseSuccess(Simulator s)
{
Simulation.RestoreCP(20);
if (Simulation.Condition != Condition.Good && Simulation.Condition != Condition.Excellent)
Simulation.RemoveEffect(EffectType.HeartAndSoul);
s.RestoreCP(20);
if (s.Condition != Condition.Good && s.Condition != Condition.Excellent)
s.RemoveEffect(EffectType.HeartAndSoul);
}
}