void Start()
    {
        //playIntroAnimation();
        if (PlayerPrefs.GetInt("isIntro_AnimationDone") != 1)
        {
            changeBackground = false;
            playIntroAnimation();
        }
        else
        {
            changeBackground = true;
            GameObject        vine     = GameObject.Find("Vine");
            NF_VineAnimations vineAnim = (NF_VineAnimations)vine.GetComponent <NF_VineAnimations>();
            vineAnim.destroyVine();

            GameObject        icky     = GameObject.Find("Icky_Model");
            NF_IckyAnimations ickyAnim = (NF_IckyAnimations)icky.GetComponent <NF_IckyAnimations>();

            ickyAnim.setIckyPosition();
            ickyAnim.setInitialStateOfIcky();

            //load question now
            getAllComponentsRef();
            getInitialSetupFromDM();
        }
    }
    void resetAllLevelState()
    {
        //yield return new WaitForSeconds(delay);
        inputController.resetInputController();
        ropesGenerator.resetRopeGenerator();
        questionLoader.resetQuestionLoader();
        NF_IckyAnimations ickyAnim = (NF_IckyAnimations)GameObject.Find("Icky_Model").GetComponent <NF_IckyAnimations>();

        ickyAnim.setInitialStateOfIcky();

        getInitialSetupFromDM();
        isResetInProgress = false;
    }
    void playIntroAnimation()
    {
        GameObject        icky     = GameObject.Find("Icky_Model");
        NF_IckyAnimations ickyAnim = (NF_IckyAnimations)icky.GetComponent <NF_IckyAnimations>();

        ickyAnim.IckyIntroAnimation();

        GameObject olly = Instantiate(ollyModel, ollyModel.transform.position, Quaternion.identity) as GameObject;

        olly.transform.position = new Vector3(icky.transform.position.x - 200, icky.transform.position.y + 50, 750);
        NF_OllyAnimations ollyAnim = (NF_OllyAnimations)olly.GetComponent <NF_OllyAnimations>();

        ollyAnim.ollyTweenSequence(-650.0f, 0.0f, NF_OllyStates.olly_walking);
    }
    void monkeyAnimatedDown()
    {
        GameObject        icky     = GameObject.Find("Icky_Model");
        NF_IckyAnimations ickyAnim = (NF_IckyAnimations)icky.GetComponent <NF_IckyAnimations>();

        if (ickyAnim.ickyStates == NF_IckyAnimationStates.icky_weeping)
        {
            return;
        }
        else
        {
            //if(monkey.transform.position.y<50.0f){
            ickyAnim.ickyStates = NF_IckyAnimationStates.icky_weeping;
            ickyAnim.playSoundClip();
            //	}
        }
    }
    public void inputControllerInitializer(string qtitle, string resourceQTitle, GameObject correctRopeRef, int answerCount, int categoryID)
    {
        isRestarting       = false;
        categoryIDForSkill = categoryID;
        Debug.Log("Answer: " + qtitle);
        if (AGGameState.currentGameIndex == (int)AGGameIndex.k_NamingFruits && categoryID == (int)NamingFruits_CategoryID.id_AlplabeticOrder)
        {
            questionTitle = resourceQTitle;
        }
        else
        {
            questionTitle = qtitle;
        }
        resourceForParticles = resourceQTitle;
        _totalAnswersCount   = answerCount;
        GameObject ickyModel = GameObject.Find("Icky_Model");

        ickyAnim = (NF_IckyAnimations)ickyModel.GetComponent <NF_IckyAnimations>();
        getPathOfTheCategory(categoryID);
    }
 public void inputControllerInitializer(string qtitle,string resourceQTitle, GameObject correctRopeRef,int answerCount, int categoryID)
 {
     isRestarting=false;
     categoryIDForSkill = categoryID;
     Debug.Log("Answer: "+ qtitle);
     if(AGGameState.currentGameIndex == (int) AGGameIndex.k_NamingFruits && categoryID==(int)NamingFruits_CategoryID.id_AlplabeticOrder){
     questionTitle = resourceQTitle;
     }
     else{
     questionTitle=qtitle;
     }
     resourceForParticles = resourceQTitle;
     _totalAnswersCount = answerCount;
     GameObject ickyModel = GameObject.Find("Icky_Model");
     ickyAnim = (NF_IckyAnimations)ickyModel.GetComponent<NF_IckyAnimations>();
     getPathOfTheCategory(categoryID);
 }