private void CheckPieceMovement(MouseState mouseState) { if (this._selectedPiece == null || this._lastMouseState == null) return; if (this._lastMouseState.LeftButton == ButtonState.Pressed && mouseState.LeftButton == ButtonState.Released) { int j = (mouseState.X + 2) / 58; int i = (mouseState.Y + 2) / 58; BoardPosition position = new BoardPosition(i, j); if (position.I < 8 && position.J < 8 && position.I >= 0 && position.J >= 0) { Square originalSquare = this._squares[this._selectedPiece.BoardPosition.I, this._selectedPiece.BoardPosition.J]; Square hoveringSquare = this._squares[position.I, position.J]; bool valid = RulesValidator.Instance.ValidateNewPosition(this._selectedPiece, originalSquare, hoveringSquare); if (valid) { for (i = 0; i < 8; i++) for (j = 0; j < 8; j++) if (this._squares[i, j].Valid) { this._squares[i, j].Valid = false; DrawingManager.Instance.DrawableObjects.Add(this._squares[i, j]); } RulesValidator.Instance.ApplyMovement(this._selectedPiece, originalSquare, hoveringSquare); } } } }
public void Update(MouseState mouseState) { this.UpdateSquares(mouseState); this.CheckPieceMovement(mouseState); this._lastMouseState = mouseState; }
public void Update(MouseState mouseState) { //MouseState mouseState = Mouse.GetState(); this._board.Update(mouseState); }
private void CheckAndExecuteSelection(MouseState mouseState) { if (this._lastMouseState == null) return; if (mouseState.LeftButton == ButtonState.Released && this._lastMouseState.LeftButton == ButtonState.Pressed && mouseState.X >= this._bounds.Left && mouseState.X <= this._bounds.Right && mouseState.Y >= this._bounds.Top && mouseState.Y <= this._bounds.Bottom) { CancelEventArgs e = new CancelEventArgs(); if (this.Selecting != null) this.Selecting(this, e); if (!e.Cancel) this._selected = true; } this._lastMouseState = mouseState; }
public void Update(MouseState mouseState) { this.CheckAndExecuteSelection(mouseState); this._lastMouseState = mouseState; }
private void UpdateSquares(MouseState mouseState) { for (int i = 0; i < 8; i++) for (int j = 0; j < 8; j++) this._squares[i, j].Update(mouseState); }
public void Update(MouseState mouseState) { if (this._piece != null) this._piece.Update(mouseState); }