/// <inheritdoc/> public override bool Move(IActive unit, Direction d) { if (unit is AbstractMoveableUnit) { (unit as AbstractMoveableUnit).Location += BoardCoordinate.FromDirection(d); unit.UnitState = new UnitMovedState(); return(true); } return(false); }