Exemplo n.º 1
0
        public GameObject GetRandomEmptySlotObject()
        {
            int        randomRow    = Random.Range(0, slotGrid.Height);
            int        randomColumn = Random.Range(0, slotGrid.Width);
            GameObject randomSlot   = slotGrid.GetGridItemObjectByRowColumn(randomRow, randomColumn);
            PieceDestinationController pieceDestinationController = randomSlot.GetComponent <PieceDestinationController>();

            GameObject.DestroyImmediate(pieceDestinationController.Piece);
            pieceDestinationController.SetEmpty();
            pieceDestinationController.Clean();

            return(randomSlot);
        }
Exemplo n.º 2
0
        public void WhenEmptyStateAllNeighBorAreMovable()
        {
            grid = CreateSlotGrid(3, 3);
            PieceDestinationController currentSlot    = GetSlotByRowAndColumn(1, 1);
            PieceDestinationController leftNeighbor   = GetSlotByRowAndColumn(1, 0);
            PieceDestinationController rightNeighbor  = GetSlotByRowAndColumn(1, 2);
            PieceDestinationController upNeighbor     = GetSlotByRowAndColumn(0, 1);
            PieceDestinationController bottomNeighbor = GetSlotByRowAndColumn(2, 1);

            currentSlot.SetEmpty();
            currentSlot.Clean();

            Assert.IsTrue(currentSlot.CanReceivePiece());
            Assert.IsTrue(leftNeighbor.CanMovePiece());
            Assert.IsTrue(upNeighbor.CanMovePiece());
            Assert.IsTrue(rightNeighbor.CanMovePiece());
            Assert.IsTrue(bottomNeighbor.CanMovePiece());
        }
 public void Clean()
 {
     pieceDestinationController.Clean();
 }
Exemplo n.º 4
0
 public void TakePieceFromSlot(PieceDestinationController pieceDestinationController, Vector2 pieceDestinePosition)
 {
     pieceDestinationController.SetEmpty();
     pieceDestinationController.MovePieceToDestinePosition(pieceDestinePosition);
     pieceDestinationController.Clean();
 }