Refactor move selection prevention to use interface

This commit is contained in:
2025-06-28 10:36:43 +02:00
parent 04cf585f5a
commit 2319160b52
12 changed files with 59 additions and 27 deletions

View File

@@ -1,7 +1,7 @@
namespace PkmnLib.Plugin.Gen7.Scripts.Pokemon;
[Script(ScriptCategory.Pokemon, "imprison")]
public class ImprisonEffect : Script
public class ImprisonEffect : Script, IScriptPreventMoveSelection
{
private readonly IPokemon _user;
@@ -11,7 +11,7 @@ public class ImprisonEffect : Script
}
/// <inheritdoc />
public override void PreventMoveSelection(IMoveChoice choice, ref bool prevent)
public void PreventMoveSelection(IMoveChoice choice, ref bool prevent)
{
if (_user.Moves.WhereNotNull().Any(x => x.MoveData.Name == choice.ChosenMove.MoveData.Name))
prevent = true;