private void TileConteiner_Click(object sender, RoutedEventArgs e) { if (TileClick != null) { TileClick.Invoke(sender, e); } }
// Use this for initialization void Start() { if (this.tileClick == null) { tileClick = FindObjectOfType <TileClick>(); } this.tileClick.onTileClicked += TileClick_onTileClicked; this.tileClick.enabled = false; }
private void NewVideoBox_Click(object sender, RoutedEventArgs e) { Tile videoBox = sender as Tile; if (TileClick != null) { TileClick.Invoke(videoBox.Tag, new EventArgs()); } }
private void Tile_MouseDown(object sender, MouseButtonEventArgs e) { Tile tile = Tiles.Find(t => t.Shape.Equals((Shape)sender)); if (tile != null) { TileClick?.Invoke(tile.Position); } }
protected override void OnMouseDown(MouseEventArgs e) { selectedTileCoords = new Point((e.X / (zoomedTileSize.Width + zoomedTileGap)), (e.Y / (zoomedTileSize.Height + zoomedTileGap))); selectedTileRect = new Rectangle( selectedTileCoords.X * (zoomedTileSize.Width + zoomedTileGap), selectedTileCoords.Y * (zoomedTileSize.Height + zoomedTileGap), zoomedTileSize.Width - 1, zoomedTileSize.Height - 1); Select(); TileClick?.Invoke(this, new TileClickEventArgs(e.Button, selectedTileCoords)); }
private void NewVideoBox_Click(object sender, RoutedEventArgs e) { try { Tile videoBox = sender as Tile; if (TileClick != null) { TileClick.Invoke(videoBox.Tag, new EventArgs()); } } catch (Exception ex) { App.SendException(ex); } }
private void Awake() { Vector3 scaleOfObject = backGround.GetComponent <Renderer>().bounds.size; //backGround.GetComponent<Transform>().lossyScale; Debug.Log($"x= " + scaleOfObject.x); Debug.Log($"Y= " + scaleOfObject.y); Debug.Log($"z= " + scaleOfObject.z); bool changeDirectionOftile = true; int posX = 0; int posY = 0; for (float y = backGround.transform.transform.position.y - scaleOfObject.y; y < scaleOfObject.y; y += 0.95f) { posY++; posX = 0; List <TileClick> tileRow = new List <TileClick>(); for (float x = backGround.transform.transform.position.x - scaleOfObject.x; x < scaleOfObject.x * 2 * sizeOfMapBlock; x += sizeOfMapBlock) { posX++; if (changeDirectionOftile) { var obj = Instantiate(gameTile, new Vector3(x * sizeOfMapBlock, y, 0), Quaternion.Euler(0, 0, 180)); obj.transform.parent = backGround.transform; TileClick myTile = (TileClick)obj.GetComponent <TileClick>();//accesing my class for the tile object myTile.setTileCoordinates(new Vector2(posX, posY)); tileRow.Add(myTile); changeDirectionOftile = !changeDirectionOftile; continue; } else { var obj = Instantiate(gameTile, new Vector3(x * sizeOfMapBlock, y, 0), Quaternion.Euler(0, 0, 0)); obj.transform.parent = backGround.transform; TileClick myTile = (TileClick)obj.GetComponent <TileClick>();//accesing my class for the tile object myTile.setTileCoordinates(new Vector2(posX, posY)); tileRow.Add(myTile); changeDirectionOftile = !changeDirectionOftile; continue; } } maptiles.Add(tileRow); } }
private void PnlData_Click(object sender, MouseEventArgs e) { TileClick?.Invoke(this, new MouseEventArgs(e.Button, e.Clicks, e.X + gameTile.Width, e.Y, e.Delta)); }
private void FlpMain_MouseClick(object sender, MouseEventArgs e) { TileClick?.Invoke(this, e); }
private void GameTile_TileClick(object sender, MouseEventArgs e) { TileClick?.Invoke(this, e); }
protected virtual void OnTileClick(TileEventArgs e) { TileClick?.Invoke(this, e); }
private void OnMouseClick(object sender, MouseEventArgs args) { TileClick?.Invoke(this, Viewport.TranslateMouse(args.X, args.Y)); }
// public IActionResult ClickedTile(string clickedTile, string gameId, string selectedTile, List<string> canMove, List<string> canTake) public IActionResult ClickedTile([FromBody] TileClick data) { var gameId = data.GameID; var clickedTile = data.ClickedTile; var selectedTile = data.SelectedTile; var canMove = data.CanMove; var canTake = data.CanTake; var didMove = false; List <string> changedTiles = new List <string>(); changedTiles.AddRange(canMove); changedTiles.AddRange(canTake); string userId = _signInManager.UserManager.GetUserId(User); RefreshUser(User); GameStateDTO gamestate = _GameRepo.GetGamestate(gameId); char userColor = _GameRepo.GetPlayerColor(gameId, userId); if (!_GameRepo.IsActivePlayer(gameId, userId)) { // Not players turn return(Json("")); } else if (selectedTile == clickedTile) { // Clicked already selected tile. Deselect it. changedTiles.Add(selectedTile); selectedTile = null; canMove = new List <string>(); canTake = new List <string>(); } else if (_chessLogicManager.PositionIsColor(gamestate.Board, clickedTile, userColor)) { // Clicked own piece. Get possible moves. SelectedPieceDTO selectedPiece = new SelectedPieceDTO { Board = gamestate.Board, PlayerColor = userColor, Selected = clickedTile }; var moves = _chessLogicManager.GetPossibleMoves(selectedPiece); canMove = moves.PositionsPieceCanMoveTo; canTake = moves.PositionsPieceCanKillAt; changedTiles.AddRange(canMove); changedTiles.AddRange(canTake); if (selectedTile != null) { changedTiles.Add(selectedTile); } changedTiles.Add(clickedTile); selectedTile = clickedTile; } else if (selectedTile != null) { //a tile is already selected, and clicked an enemy or empty tile //Can the selected piece move there? MovePlanDTO movePlan = new MovePlanDTO { Board = gamestate.Board, From = selectedTile, To = clickedTile, PlayerColor = userColor }; changedTiles.Add(clickedTile); changedTiles.Add(selectedTile); if (_chessLogicManager.IsValidMove(movePlan)) { //yes, the selected piece can move there //Apply the game logic, save the new board state, and log the move. string[,] newBoard = _chessLogicManager.DoMove(movePlan); NewMoveDTO newMove = new NewMoveDTO { NewBoard = newBoard, From = selectedTile, To = clickedTile, GameID = gameId }; _GameRepo.AddNewMove(newMove); _GameRepo.SetChangedTiles(gameId, new List <string> { clickedTile, selectedTile }); didMove = true; if (_chessLogicManager.IsBlackCheckMate(newBoard) || _chessLogicManager.IsWhiteCheckMate(newBoard)) { _GameRepo.SetGameToFinished(gameId); _GameRepo.SetGameToFinished(gameId); } } // Either a move was made, or the tile was deselected by clicking // a tile where a move wasn't possible. Remove highlights. canMove = new List <string>(); canTake = new List <string>(); selectedTile = null; } gamestate = _GameRepo.GetGamestate(gameId); ChessboardPartialViewModel board = new ChessboardPartialViewModel { GameState = gamestate, SelectedTile = selectedTile, CanMoveToAndTakeTiles = canTake, CanMoveToTiles = canMove, GameId = gameId, PlayerColor = userColor, ChangedTiles = changedTiles, DidMove = didMove }; return(Json(board)); }