void checkHitOnObject(Vector2 fingerPos)
    {
        RaycastHit hit;
        Ray        ray;

        ray = Camera.main.ScreenPointToRay(fingerPos);
        if (Physics.Raycast(ray, out hit, 10000))
        {
            if (hit.collider.tag == "tag_Fruits")
            {
                if (fruitObj != hit.collider.transform.gameObject)
                {
                    fruitObj = hit.collider.transform.gameObject;
                    qAttempts++;
                }
                if (hit.collider.name == questionTitle)
                {
                    NF_SoundManager.playSFX(ropeCutSFx);
                    isWrongAnswer = false;
                    selectedFruit = hit.transform.gameObject;
                    createTickSign();
                    StartCoroutine(destroyCreatedObject(qTickObj, 0.2f));

                    Transform rope = selectedFruit.transform.parent;
                    breakJoints = rope.GetComponent <NF_BreakRopeJoints>();
                    GameObject destroyedFood = Instantiate(EmptyFruit) as GameObject;
                    destroyedFood.transform.localScale          = breakJoints._hangingObject.transform.localScale;
                    destroyedFood.renderer.material.mainTexture = breakJoints._hangingObject.renderer.material.mainTexture;
                    destroyedFood.transform.position            = breakJoints._hangingObject.transform.position;

                    breakJoints.breakRopeNow();
                    ickyCorrentAnswer(destroyedFood);
                    StartCoroutine(breakJoints.deleteRopeCutUp(1.0f));
                    _totalAnswersCount--;
                    Debug.Log("answerCount:" + _totalAnswersCount);
                }
                else if (hit.collider.name != questionTitle)
                {
                    isTouchEnabled = false;
                    isWrongAnswer  = true;
                    createCrossSign();
                    ickyWrongAnswer();
                    StartCoroutine(destroyCreatedObject(qCrossObj, 0.2f));
                }
            }
            else if (hit.collider.tag == "RopeCollider")
            {
                GameObject         ropeSwiped = hit.collider.gameObject.transform.parent.gameObject;
                NF_BreakRopeJoints ropeObj    = ropeSwiped.GetComponent <NF_BreakRopeJoints>();

                if (fruitObj != ropeObj._hangingObject)
                {
                    fruitObj = hit.collider.transform.gameObject;
                    qAttempts++;
                }
                if (ropeObj._hangingObject.name == questionTitle)
                {
                    NF_SoundManager.playSFX(ropeCutSFx);
                    isWrongAnswer = false;
                    selectedFruit = hit.transform.gameObject;
                    createTickSign();
                    StartCoroutine(destroyCreatedObject(qTickObj, 0.2f));

                    Transform rope = selectedFruit.transform.parent;
                    breakJoints = rope.GetComponent <NF_BreakRopeJoints>();
                    GameObject destroyedFood = Instantiate(EmptyFruit) as GameObject;
                    destroyedFood.transform.localScale          = breakJoints._hangingObject.transform.localScale;
                    destroyedFood.renderer.material.mainTexture = breakJoints._hangingObject.renderer.material.mainTexture;
                    destroyedFood.transform.position            = breakJoints._hangingObject.transform.position;

                    breakJoints.breakRopeNow();
                    ickyCorrentAnswer(destroyedFood);
                    StartCoroutine(breakJoints.deleteRopeCutUp(1.0f));
                    _totalAnswersCount--;
                    Debug.Log("answerCount:" + _totalAnswersCount);
                }
                else if (hit.collider.name != questionTitle)
                {
                    isTouchEnabled = false;
                    isWrongAnswer  = true;
                    createCrossSign();
                    ickyWrongAnswer();
                    StartCoroutine(destroyCreatedObject(qCrossObj, 0.2f));
                }
            }
        }
    }
    void FingureGestures_OnTap(Vector2 fingurePos, int tapCount)
    {
        if(isTouchEnabled==false && isTouchesEnable_2==false){
            return;
        }
        RaycastHit hit;
        Ray ray;
        ray = Camera.main.ScreenPointToRay(fingurePos);
           	if(Physics.Raycast(ray, out hit,10000)){
        CancelInvoke("playInstructionalVO");

        if(hit.collider.tag=="tag_Fruits"){
                qAttempts++;
                Debug.Log("QuestionAttempts:" +qAttempts);
                if(hit.collider.name == questionTitle){

                            NF_SoundManager.playSFX(ropeCutSFx);
                            isWrongAnswer=false;
                            selectedFruit = hit.transform.gameObject;
                            createTickSign();
                            StartCoroutine(destroyCreatedObject(qTickObj,0.2f));
                            Transform rope = selectedFruit.transform.parent;
                            breakJoints = rope.GetComponent<NF_BreakRopeJoints>();
                            GameObject destroyedFood = Instantiate(EmptyFruit) as GameObject;
                            destroyedFood.transform.localScale = breakJoints._hangingObject.transform.localScale;
                            destroyedFood.renderer.material.mainTexture = breakJoints._hangingObject.renderer.material.mainTexture;
                            destroyedFood.transform.position = breakJoints._hangingObject.transform.position;
                            breakJoints.breakRopeNow();
                            ickyCorrentAnswer(destroyedFood);
                            StartCoroutine(breakJoints.deleteRopeCutUp(1.0f));
                            _totalAnswersCount--;
                            if(_totalAnswersCount<=0){
                                isTouchEnabled=false;
                                switchToNextQuestion();
                                    }
                                }
                        else if(hit.collider.name != questionTitle){
                                isWrongAnswer=true;
                                wrongAttempts++;
                                createCrossSign();
                                ickyWrongAnswer();
                                StartCoroutine(destroyCreatedObject(qCrossObj,0.2f));
                                    if(wrongAttempts==5){
                                        isTouchEnabled=false;
                                        gameController.loadNextQuestion(0);
                                        }
                            }

                        }
            else if (hit.collider.gameObject.name.Equals("Icky_Model")) {
                ickyGiggleAnimation();
            }
        }
        Invoke("playInstructionalVO",10.0f);
    }
    void FingureGestures_OnTap(Vector2 fingurePos, int tapCount)
    {
        if (isTouchEnabled == false && isTouchesEnable_2 == false)
        {
            return;
        }
        RaycastHit hit;
        Ray        ray;

        ray = Camera.main.ScreenPointToRay(fingurePos);
        if (Physics.Raycast(ray, out hit, 10000))
        {
            CancelInvoke("playInstructionalVO");

            if (hit.collider.tag == "tag_Fruits")
            {
                qAttempts++;
                Debug.Log("QuestionAttempts:" + qAttempts);
                if (hit.collider.name == questionTitle)
                {
                    NF_SoundManager.playSFX(ropeCutSFx);
                    isWrongAnswer = false;
                    selectedFruit = hit.transform.gameObject;
                    createTickSign();
                    StartCoroutine(destroyCreatedObject(qTickObj, 0.2f));
                    Transform rope = selectedFruit.transform.parent;
                    breakJoints = rope.GetComponent <NF_BreakRopeJoints>();
                    GameObject destroyedFood = Instantiate(EmptyFruit) as GameObject;
                    destroyedFood.transform.localScale          = breakJoints._hangingObject.transform.localScale;
                    destroyedFood.renderer.material.mainTexture = breakJoints._hangingObject.renderer.material.mainTexture;
                    destroyedFood.transform.position            = breakJoints._hangingObject.transform.position;
                    breakJoints.breakRopeNow();
                    ickyCorrentAnswer(destroyedFood);
                    StartCoroutine(breakJoints.deleteRopeCutUp(1.0f));
                    _totalAnswersCount--;
                    if (_totalAnswersCount <= 0)
                    {
                        isTouchEnabled = false;
                        switchToNextQuestion();
                    }
                }
                else if (hit.collider.name != questionTitle)
                {
                    isWrongAnswer = true;
                    wrongAttempts++;
                    createCrossSign();
                    ickyWrongAnswer();
                    StartCoroutine(destroyCreatedObject(qCrossObj, 0.2f));
                    if (wrongAttempts == 5)
                    {
                        isTouchEnabled = false;
                        gameController.loadNextQuestion(0);
                    }
                }
            }
            else if (hit.collider.gameObject.name.Equals("Icky_Model"))
            {
                ickyGiggleAnimation();
            }
        }
        Invoke("playInstructionalVO", 10.0f);
    }
    void checkHitOnObject(Vector2 fingerPos)
    {
        RaycastHit hit;
        Ray ray;
        ray = Camera.main.ScreenPointToRay(fingerPos);
        if(Physics.Raycast(ray, out hit,10000)){
            if(hit.collider.tag=="tag_Fruits"){
                    if(fruitObj != hit.collider.transform.gameObject){
                            fruitObj = hit.collider.transform.gameObject;
                            qAttempts++;
                            }
                    if(hit.collider.name == questionTitle){
                                NF_SoundManager.playSFX(ropeCutSFx);
                                isWrongAnswer =false;
                                selectedFruit = hit.transform.gameObject;
                                createTickSign();
                                StartCoroutine(destroyCreatedObject(qTickObj,0.2f));

                                Transform rope = selectedFruit.transform.parent;
                                breakJoints = rope.GetComponent<NF_BreakRopeJoints>();
                            GameObject destroyedFood = Instantiate(EmptyFruit) as GameObject;
                            destroyedFood.transform.localScale = breakJoints._hangingObject.transform.localScale;
                            destroyedFood.renderer.material.mainTexture =breakJoints._hangingObject.renderer.material.mainTexture;
                            destroyedFood.transform.position = breakJoints._hangingObject.transform.position;

                            breakJoints.breakRopeNow();
                            ickyCorrentAnswer(destroyedFood);
                            StartCoroutine(breakJoints.deleteRopeCutUp(1.0f));
                            _totalAnswersCount--;
                            Debug.Log("answerCount:"+_totalAnswersCount);
                                }
                        else if(hit.collider.name != questionTitle){
                            isTouchEnabled=false;
                            isWrongAnswer =true;
                            createCrossSign();
                            ickyWrongAnswer();
                            StartCoroutine(destroyCreatedObject(qCrossObj,0.2f));
                            }
                }
            else if (hit.collider.tag == "RopeCollider"){

                GameObject ropeSwiped = hit.collider.gameObject.transform.parent.gameObject;
                NF_BreakRopeJoints ropeObj = ropeSwiped.GetComponent<NF_BreakRopeJoints>();

                if(fruitObj != ropeObj._hangingObject){
                            fruitObj = hit.collider.transform.gameObject;
                            qAttempts++;
                            }
                if(ropeObj._hangingObject.name == questionTitle){
                                NF_SoundManager.playSFX(ropeCutSFx);
                                isWrongAnswer=false;
                                selectedFruit = hit.transform.gameObject;
                                createTickSign();
                                StartCoroutine(destroyCreatedObject(qTickObj,0.2f));

                                Transform rope = selectedFruit.transform.parent;
                                breakJoints = rope.GetComponent<NF_BreakRopeJoints>();
                            GameObject destroyedFood = Instantiate(EmptyFruit) as GameObject;
                            destroyedFood.transform.localScale = breakJoints._hangingObject.transform.localScale;
                            destroyedFood.renderer.material.mainTexture =breakJoints._hangingObject.renderer.material.mainTexture;
                            destroyedFood.transform.position = breakJoints._hangingObject.transform.position;

                            breakJoints.breakRopeNow();
                            ickyCorrentAnswer(destroyedFood);
                            StartCoroutine(breakJoints.deleteRopeCutUp(1.0f));
                            _totalAnswersCount--;
                            Debug.Log("answerCount:"+_totalAnswersCount);
                                }
                    else if(hit.collider.name != questionTitle){
                            isTouchEnabled=false;
                            isWrongAnswer =true;
                            createCrossSign();
                            ickyWrongAnswer();
                            StartCoroutine(destroyCreatedObject(qCrossObj,0.2f));
                    }
                }
        }
    }