22 lines
604 B
C#
22 lines
604 B
C#
namespace PkmnLib.Plugin.Gen7.Scripts.Pokemon;
|
|
|
|
[Script(ScriptCategory.Pokemon, "imprison")]
|
|
public class ImprisonEffect : Script, IScriptPreventMoveSelection
|
|
{
|
|
private readonly IBattlePokemon _user;
|
|
|
|
public ImprisonEffect(IBattlePokemon user)
|
|
{
|
|
_user = user;
|
|
}
|
|
|
|
/// <inheritdoc />
|
|
public void PreventMoveSelection(IMoveChoice choice, ref bool prevent)
|
|
{
|
|
if (choice.User.BattleSide == _user.BattleSide)
|
|
return;
|
|
|
|
if (_user.Moves.WhereNotNull().Any(x => x.MoveData.Name == choice.ChosenMove.MoveData.Name))
|
|
prevent = true;
|
|
}
|
|
} |