private void makeStrategy() { if (enemyHealth < 25) { strategy = new CriticalHealthStrategy(this); } else if (enemyHealth < 50) { strategy = new HidingStrategy(this); } else if (enemyHealth < 75) { strategy = new AttackingFromFarStrategy(this); } else { strategy = new FollowingStrategy(this); } }
public void SetMovingStrategy(MovingStrategy movingStrategy) { this.movingStrategy = movingStrategy; }
protected virtual void StartFleeing() { Destroy(movingStrategy); movingStrategy = FleeingStrategy.CreateComponent(gameObject); }
public Pawn(Board board, PieceColor color) : base(board, color) { _movingStrategy = new PawnMovingStrategy(Board); }
protected ChessPiece(Board board, PieceColor color) { Board = board; Color = color; MovingStrategy = new NormalMovingStrategy(Board); }
public King(Board board, PieceColor color) : base(board, color) { _movingStrategy = new KingMovingStrategy(Board); }