More work on refactor to interfaces
All checks were successful
Build / Build (push) Successful in 50s
All checks were successful
Build / Build (push) Successful in 50s
This commit is contained in:
@@ -38,8 +38,10 @@ public class BattleRandomImpl : RandomImpl, IBattleRandom
|
||||
/// <inheritdoc />
|
||||
public bool EffectChance(float chance, IExecutingMove executingMove, IPokemon target, byte hitNumber)
|
||||
{
|
||||
executingMove.RunScriptHook(script => script.ChangeEffectChance(executingMove, target, hitNumber, ref chance));
|
||||
target.RunScriptHook(script => script.ChangeIncomingEffectChance(executingMove, target, hitNumber, ref chance));
|
||||
executingMove.RunScriptHookInterface<IScriptChangeEffectChance>(script =>
|
||||
script.ChangeEffectChance(executingMove, target, hitNumber, ref chance));
|
||||
target.RunScriptHookInterface<IScriptChangeIncomingEffectChance>(script =>
|
||||
script.ChangeIncomingEffectChance(executingMove, target, hitNumber, ref chance));
|
||||
if (chance > 100.0)
|
||||
return true;
|
||||
if (chance < 0.0)
|
||||
|
||||
@@ -889,11 +889,12 @@ public class PokemonImpl : ScriptSource, IPokemon
|
||||
if (!force)
|
||||
{
|
||||
var prevented = false;
|
||||
this.RunScriptHook(script =>
|
||||
this.RunScriptHookInterface<IScriptPreventStatBoostChange>(script =>
|
||||
script.PreventStatBoostChange(this, stat, change, selfInflicted, ref prevented));
|
||||
if (prevented)
|
||||
return false;
|
||||
this.RunScriptHook(script => script.ChangeStatBoostChange(this, stat, selfInflicted, ref change));
|
||||
this.RunScriptHookInterface<IScriptChangeStatBoostChange>(script =>
|
||||
script.ChangeStatBoostChange(this, stat, selfInflicted, ref change));
|
||||
if (change == 0)
|
||||
return false;
|
||||
}
|
||||
@@ -917,7 +918,8 @@ public class PokemonImpl : ScriptSource, IPokemon
|
||||
}
|
||||
|
||||
RecalculateBoostedStats();
|
||||
this.RunScriptHook(script => script.OnAfterStatBoostChange(this, stat, selfInflicted, change));
|
||||
this.RunScriptHookInterface<IScriptOnAfterStatBoostChange>(script =>
|
||||
script.OnAfterStatBoostChange(this, stat, selfInflicted, change));
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user