using Wizard.Battle.View; namespace Wizard.Battle.Card.InnerOptions; public class PlayerCardInnerOptions : CardInnerOptionsBase { public override bool CheckMovable(IBattlePlayerView selfPlayerBattleView, IBattleCardView selfBattleCardView, bool isOnDraw, bool isSkipSelecting, bool isRecording) { if (selfPlayerBattleView == null) { return false; } if (!base.CheckMovable(selfPlayerBattleView, selfBattleCardView, isOnDraw, isSkipSelecting, isRecording)) { return false; } if (isRecording) { return true; } BattlePlayerView battlePlayerView = (BattlePlayerView)selfPlayerBattleView; if (battlePlayerView.IsSelecting && !isSkipSelecting) { return false; } if (battlePlayerView.IsMoving()) { return false; } if (isOnDraw) { return false; } if (selfPlayerBattleView.PlayQueueView.IsCardInQueue(selfBattleCardView)) { return false; } return true; } }