Exemplo n.º 1
0
        public void SwapGems(GemLogic gem1, GemLogic gem2)
        {
            Debug.Log("Swapping");
            var tmpPos = gem1.GetVectorPos();
            gem1.SetPos(gem2.X, gem2.Y);
            gem2.SetPos((int) tmpPos.x, (int) tmpPos.y);

            _lastMovedGem1 = gem1;
            _lastMovedGem2 = gem2;
            Invoke("CheckReverseTurn", Constants.GemTransitionTime/2);

            _gameManager.SetAnimationState(Constants.GemTransitionTime);
        }
Exemplo n.º 2
0
 /// <summary>
 ///     Пытается подвинуть гем на пустое место. Если клетка занята - вернет false
 /// </summary>
 public bool MoveGem(GemLogic gem, int x, int y)
 {
     var isMoved = false;
     if (GetGem(x, y) == null && IsFreeTile(x, y)){
         gem.SetPos(x, y);
         isMoved = true;
     }
     return isMoved;
 }