Exemplo n.º 1
0
    void GemMoving()
    {
        targetPosX = column;
        targetPosY = row;

        Vector3 tempPos;

        // Moving up and down
        if (Mathf.Abs(targetPosX - transform.position.x) > 0.1f)
        {
            tempPos            = new Vector3(targetPosX, transform.position.y, 0);
            transform.position = Vector3.Lerp(transform.position, tempPos, 0.3f);
            if (miniGame.board[column, row] != this.gameObject)
            {
                miniGame.board[column, row] = this.gameObject;
            }

            //findMatches.StartFinding();
            StartCoroutine(miniGame.FindAllMatches());
        }
        else
        {
            tempPos                     = new Vector3(targetPosX, transform.position.y, 0);
            transform.position          = tempPos;
            miniGame.board[column, row] = this.gameObject;
        }

        // Moving left and right
        if (Mathf.Abs(targetPosY - transform.position.y) > 0.1f)
        {
            tempPos            = new Vector3(transform.position.x, targetPosY, 0);
            transform.position = Vector3.Lerp(transform.position, tempPos, 0.25f);
            if (miniGame.board[column, row] != this.gameObject)
            {
                miniGame.board[column, row] = this.gameObject;
            }

            //findMatches.StartFinding();
            StartCoroutine(miniGame.FindAllMatches());
        }
        else
        {
            tempPos                     = new Vector3(transform.position.x, targetPosY, 0);
            transform.position          = tempPos;
            miniGame.board[column, row] = this.gameObject;
        }
    }