Move all battle state from IPokemon to an ephemeral IBattlePokemon wrapper
This commit is contained in:
@@ -7,15 +7,15 @@ namespace PkmnLib.Plugin.Gen7.Scripts.Moves;
|
||||
public class Instruct : Script, IScriptOnSecondaryEffect
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public void OnSecondaryEffect(IExecutingMove move, IPokemon target, byte hit)
|
||||
public void OnSecondaryEffect(IExecutingMove move, IBattlePokemon target, byte hit)
|
||||
{
|
||||
if (!target.IsUsable)
|
||||
return;
|
||||
var battleData = move.User.BattleData;
|
||||
var battleData = move.User;
|
||||
if (battleData == null)
|
||||
return;
|
||||
|
||||
var lastMoveChoiceByTarget = target.BattleData?.LastMoveChoice;
|
||||
var lastMoveChoiceByTarget = target.LastMoveChoice;
|
||||
|
||||
if (lastMoveChoiceByTarget == null || !battleData.Battle.CanUse(lastMoveChoiceByTarget) ||
|
||||
!lastMoveChoiceByTarget.ChosenMove.MoveData.CanCopyMove())
|
||||
|
||||
Reference in New Issue
Block a user