using Shogi.Domain.YetToBeAssimilatedIntoDDD.Pathing; using System.Collections.ObjectModel; namespace Shogi.Domain.ValueObjects { internal record class King : Piece { internal static readonly ReadOnlyCollection KingPaths = new(new List(8) { new Path(Direction.Forward), new Path(Direction.Left), new Path(Direction.Right), new Path(Direction.Backward), new Path(Direction.ForwardLeft), new Path(Direction.ForwardRight), new Path(Direction.BackwardLeft), new Path(Direction.BackwardRight) }); public King(WhichPlayer owner, bool isPromoted = false) : base(WhichPiece.King, owner, isPromoted) { } public override IEnumerable MoveSet => KingPaths; } }