Remove ref passing, but keep devirtualizations
This commit is contained in:
@@ -1,32 +1,20 @@
|
||||
namespace Craftimizer.Simulator.Actions;
|
||||
|
||||
internal sealed class ByregotsBlessing : BaseAction
|
||||
internal sealed class ByregotsBlessing() : BaseAction(
|
||||
ActionCategory.Quality, 50, 100339,
|
||||
increasesQuality: true,
|
||||
defaultCPCost: 24,
|
||||
defaultEfficiency: 100)
|
||||
{
|
||||
public int CP = 24;
|
||||
public override int Efficiency(Simulator s) =>
|
||||
100 + (20 * s.GetEffectStrength(EffectType.InnerQuiet));
|
||||
|
||||
public ByregotsBlessing()
|
||||
public override bool CouldUse(Simulator s) =>
|
||||
s.HasEffect(EffectType.InnerQuiet) && base.CouldUse(s);
|
||||
|
||||
public override void UseSuccess(Simulator s)
|
||||
{
|
||||
Category = ActionCategory.Quality;
|
||||
Level = 50;
|
||||
ActionId = 100339;
|
||||
IncreasesQuality = true;
|
||||
}
|
||||
|
||||
public override void CPCost(Simulator s, ref int cost)
|
||||
{
|
||||
cost = CP;
|
||||
}
|
||||
|
||||
public override void Efficiency(Simulator s, ref int eff)
|
||||
{
|
||||
eff = 100 + (20 * s.GetEffectStrength(EffectType.InnerQuiet));
|
||||
}
|
||||
|
||||
public override bool CouldUse(Simulator s, ref int cost) => s.HasEffect(EffectType.InnerQuiet) && base.CouldUse(s, ref cost);
|
||||
|
||||
public override void UseSuccess(Simulator s, ref int eff)
|
||||
{
|
||||
base.UseSuccess(s, ref eff);
|
||||
base.UseSuccess(s);
|
||||
s.RemoveEffect(EffectType.InnerQuiet);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user