public bool TryAddFigure(ILiveFigureGizmo figureGizmo) { if (figureGizmo.IsEmptyGizmo) { throw new ArgumentException("figureGizmo has empty figure"); } if (figureGizmo.Width > this.Width) { throw new ArgumentException("figureGizmo width must be greater than gamefield width"); } if (figureGizmo.Height > this.Height) { throw new ArgumentException("figureGizmo height must be greater than gamefield height"); } var center = new Point(Width / 2.0, figureGizmo.Height / 2.0); figureGizmo.MoveTo(center); if (IsOverlay(figureGizmo)) { return(false); } _activeFigureGizmoProxy.Image = figureGizmo; return(true); }
public Color?[][] TryAddFigure_ByDefault_AddFigureToTheCenterTop(int width, int height, ILiveFigureGizmo figureGizmo) { var gameField = GetGameField(width, height); var canAdd = gameField.TryAddFigure(figureGizmo); Assert.IsTrue(canAdd); var res = gameField.GetField(); return(res); }
private void MoveFigure(ILiveFigureGizmo figure, Vector vector) { figure.Move(vector); }
public FigureGizmoProxy(ILiveFigureGizmo image) { Image = image ?? throw new ArgumentNullException(); _center = Image.Center; _angle = Image.Angle; }