private TextMesh tmPauseCountdown;	//count down numbers after resume
	
	// Use this for initialization
	void Start () 
	{
		//PlayerPrefs.DeleteAll();	//DEBUG
		Application.targetFrameRate = 60;		//ceiling the frame rate on 60 (debug only)
		RenderSettings.fog = true;				//turn on fog on launch
		

        //hMenuScriptCS = (MenuScriptCS)GameObject.Find("MenuGroup").GetComponent(typeof(MenuScriptCS));

		hSoundManagerCS = (SoundManagerCS)GameObject.Find("SoundManager").GetComponent(typeof(SoundManagerCS));
		hControllerScriptCS = (ControllerScriptCS)GetComponent(typeof(ControllerScriptCS));
		hPowerupsMainControllerCS = (PowerupsMainControllerCS)this.GetComponent(typeof(PowerupsMainControllerCS));
		hCameraControllerCS = (CameraControllerCS)GameObject.Find("Main Camera").GetComponent(typeof(CameraControllerCS));
		//hEnemyControllerCS = (EnemyControllerCS)this.GetComponent(typeof(EnemyControllerCS));
		//hMissionsControllerCS = (MissionsControllerCS)this.GetComponent(typeof(MissionsControllerCS));
		//hGlobalAchievementControllerCS = (GlobalAchievementControllerCS)this.GetComponent(typeof(GlobalAchievementControllerCS));
        hHUDControllerCS = GameObject.FindObjectOfType<HUDControllerCS>();
        //((MeshRenderer)GameObject.Find("HUDMainGroup/HUDPauseCounter").GetComponent(typeof(MeshRenderer))).enabled = false;
		
		CurrentEnergy = 100;
		iPauseStatus = 0;
		iDeathStatus = 0;
		iMenuStatus = 1;
		
		bGameOver = false;
		bGamePaused = true;

	}
Esempio n. 2
0
    // Use this for initialization
    void Start()
    {
        //PlayerPrefs.DeleteAll();	//DEBUG
        Application.targetFrameRate = 60;        //ceiling the frame rate on 60 (debug only)

        RenderSettings.fog = true;               //turn on fog on launch

        if (GameObject.Find("MenuGroup"))        //check while type of menu is active (custom or ngui)
        {
            customMenuEnabled = true;
            hMenuScriptCS     = (MenuScriptCS)GameObject.Find("MenuGroup").GetComponent(typeof(MenuScriptCS));
        }
        else
        {
            hNGUIMenuScript = (NGUIMenuScript)GameObject.Find("UI Root (2D)").GetComponent(typeof(NGUIMenuScript));
        }

        hSoundManagerCS                = (SoundManagerCS)GameObject.Find("SoundManager").GetComponent(typeof(SoundManagerCS));
        hControllerScriptCS            = (ControllerScriptCS)this.GetComponent(typeof(ControllerScriptCS));
        hPowerupsMainControllerCS      = (PowerupsMainControllerCS)this.GetComponent(typeof(PowerupsMainControllerCS));
        hCameraControllerCS            = (CameraControllerCS)GameObject.Find("Main Camera").GetComponent(typeof(CameraControllerCS));
        hEnemyControllerCS             = (EnemyControllerCS)this.GetComponent(typeof(EnemyControllerCS));
        hMissionsControllerCS          = (MissionsControllerCS)this.GetComponent(typeof(MissionsControllerCS));
        hGlobalAchievementControllerCS = (GlobalAchievementControllerCS)this.GetComponent(typeof(GlobalAchievementControllerCS));

        CurrentEnergy = 100;
        iPauseStatus  = 0;
        iDeathStatus  = 0;
        iMenuStatus   = 1;

        bGameOver   = false;
        bGamePaused = true;
    }
Esempio n. 3
0
    private State state;    //if the music is ON of OFF

    void Start()
    {
        hSoundManagerCS = (SoundManagerCS)GameObject.Find("SoundManager").GetComponent(typeof(SoundManagerCS));
        //	uicMusic = (UICheckbox)this.GetComponent(typeof(UICheckbox));

        //check if the script is a part of On or Off radio button
        if (this.name == "On")
        {
            state = State.On;
        }
        else
        {
            state = State.Off;
        }

        //set the Music radio button to On or Off
        if (state == State.On)
        {
            //	if (hSoundManagerCS.isMusicEnabled())
            //	uicMusic.isChecked = true;
            //	else
            //		uicMusic.isChecked = false;
        }
        else if (state == State.Off)
        {
            //	if (!hSoundManagerCS.isMusicEnabled())
            //		uicMusic.isChecked = true;
            //	else
            //		uicMusic.isChecked = false;
        }
    }    //end of Start()
	private Transform tHUDPUMeterBar;//the bar in the powerup meter on HUD
	
	void Start()
	{
		tPlayer = transform;	
		
		//powerup meter visual		
		iPowerupCount = PowerUps.GetValues(typeof(PowerUps)).Length-1;//get the total number of powerups
		
		bPowerupStatus = new bool[iPowerupCount];
		fPowerupStartTime = new float[iPowerupCount];	
		fPowerupTotalDuration = new float[iPowerupCount];
	
		hInGameScriptCS = (InGameScriptCS)this.GetComponent(typeof(InGameScriptCS));
		hControllerScriptCS = (ControllerScriptCS)this.GetComponent(typeof(ControllerScriptCS));
		hSoundManagerCS = (SoundManagerCS)GameObject.Find("SoundManager").GetComponent(typeof(SoundManagerCS));
		//hMissionsControllerCS = (MissionsControllerCS)this.GetComponent(typeof(MissionsControllerCS));
		//hGlobalAchievementControllerCS = (GlobalAchievementControllerCS)this.GetComponent(typeof(GlobalAchievementControllerCS));
		hPlayerFrontColliderScriptCS = (PlayerFrontColliderScriptCS)GameObject.Find("PlayerFrontCollider").GetComponent(typeof(PlayerFrontColliderScriptCS));
		hPlayerSidesColliderScriptCS = (PlayerSidesColliderScriptCS)GameObject.Find("PlayerSidesCollider").GetComponent(typeof(PlayerSidesColliderScriptCS));
		
        //power up meter
        //tHUDPUMeter = (Transform)GameObject.Find("HUDMainGroup/HUDPUMeter").GetComponent(typeof(Transform));
        //tHUDPUMeterBar = (Transform)GameObject.Find("HUDMainGroup/HUDPUMeter/HUD_PU_Meter_Bar_Parent").GetComponent(typeof(Transform));
        //tHUDPUMeter.transform.position -= new Vector3(0, 100, 0);//hide the powerup meter

				
		fMagnetismDefaultRadius = 200;
		fMangetismRadius = 200;		//default: pull currency toward the character
		iCurrencyUnits = 0;
		
		for(var i = 0; i <iPowerupCount ; i++)
		{
			bPowerupStatus[i] = false;
			fPowerupTotalDuration[i] = 10.0f;//active time duration of the powerups
		}
	}
Esempio n. 5
0
    void Start()
    {
        tPlayer = GameObject.Find("Player").transform;
        tEnemy  = this.transform;

        hInGameScriptCS     = (InGameScriptCS)GameObject.Find("Player").GetComponent(typeof(InGameScriptCS));
        hControllerScriptCS = (ControllerScriptCS)GameObject.Find("Player").GetComponent(typeof(ControllerScriptCS));
        hSoundManagerCS     = (SoundManagerCS)GameObject.Find("SoundManager").GetComponent(typeof(SoundManagerCS));
    }
Esempio n. 6
0
    void Start()
    {
        HUDCamera       = (Camera)GameObject.Find("HUDMainGroup/HUDCamera").GetComponent(typeof(Camera));
        hMenuScriptCS   = (MenuScriptCS)GameObject.Find("MenuGroup").GetComponent(typeof(MenuScriptCS));
        hInGameScriptCS = (InGameScriptCS)GameObject.Find("Player").GetComponent(typeof(InGameScriptCS));
        hSoundManagerCS = (SoundManagerCS)GameObject.Find("SoundManager").GetComponent(typeof(SoundManagerCS));

        tShopMenuTransforms = new Transform[ShopMenus.GetValues(typeof(ShopMenus)).Length];
        tShopMenuTransforms[(int)ShopMenus.ShopHome] = (Transform)this.transform.Find("ShopHome").GetComponent(typeof(Transform));

        //shop primary menu
        tShopHomeButtons    = new Transform[iShopHomeButtonCount];
        tShopHomeButtons[0] = (Transform)tShopMenuTransforms[(int)ShopMenus.ShopHome].Find("Buttons/Button_Back").GetComponent(typeof(Transform));
        tShopHomeButtons[1] = (Transform)tShopMenuTransforms[(int)ShopMenus.ShopHome].Find("Buttons/Button_Costumes").GetComponent(typeof(Transform));
        tShopHomeButtons[2] = (Transform)tShopMenuTransforms[(int)ShopMenus.ShopHome].Find("Buttons/Button_Powerups").GetComponent(typeof(Transform));
        tShopHomeButtons[3] = (Transform)tShopMenuTransforms[(int)ShopMenus.ShopHome].Find("Buttons/Button_Utilities").GetComponent(typeof(Transform));
        tShopHomeButtons[4] = (Transform)tShopMenuTransforms[(int)ShopMenus.ShopHome].Find("Buttons/Button_MoreCoins").GetComponent(typeof(Transform));

        //shop costumes menu
        tShopMenuTransforms[(int)ShopMenus.Costumes] = (Transform)this.transform.Find("CostumesShop").GetComponent(typeof(Transform));
        tShopCostumesButtons    = new Transform[iShopCostumesButtonCount];
        tShopCostumesButtons[0] = (Transform)tShopMenuTransforms[(int)ShopMenus.Costumes].Find("Button_Back").GetComponent(typeof(Transform));

        //shop powerups menu
        tShopMenuTransforms[(int)ShopMenus.Powerups] = (Transform)this.transform.Find("PowerupsShop").GetComponent(typeof(Transform));
        tShopPowerupsButtons    = new Transform[iShopPowerupsButtonsCount];
        tShopPowerupsButtons[0] = (Transform)tShopMenuTransforms[(int)ShopMenus.Powerups].Find("Button_Back").GetComponent(typeof(Transform));

        //shop utilities menu
        tShopMenuTransforms[(int)ShopMenus.Utilities] = (Transform)this.transform.Find("UtilitiesShop").GetComponent(typeof(Transform));
        tShopUtilitiesButtons    = new Transform[iShopUtilitiesButtonCount];
        tShopUtilitiesButtons[0] = (Transform)tShopMenuTransforms[(int)ShopMenus.Utilities].Find("Button_Back").GetComponent(typeof(Transform));

        //shop IAP
        tShopMenuTransforms[(int)ShopMenus.IAPs] = (Transform)this.transform.Find("MoreCoinsShop").GetComponent(typeof(Transform));
        tShopIAPButtons    = new Transform[iShopIAPButtonsCount];
        tShopIAPButtons[0] = (Transform)tShopMenuTransforms[(int)ShopMenus.IAPs].Find("Button_Back").GetComponent(typeof(Transform));

        //vertical scroll initilization
        iScrollState = 0;

        setShopScriptEnabled(false);
    }
    private UISlider uisHUDPUMeter;   //the power-up meter in the NGUI menus

    void Start()
    {
        tPlayer = transform;

        //powerup meter visual
        iPowerupCount = PowerUps.GetValues(typeof(PowerUps)).Length - 1;      //get the total number of powerups

        bPowerupStatus        = new bool[iPowerupCount];
        fPowerupStartTime     = new float[iPowerupCount];
        fPowerupTotalDuration = new float[iPowerupCount];

        hInGameScriptCS                = (InGameScriptCS)this.GetComponent(typeof(InGameScriptCS));
        hControllerScriptCS            = (ControllerScriptCS)this.GetComponent(typeof(ControllerScriptCS));
        hSoundManagerCS                = (SoundManagerCS)GameObject.Find("SoundManager").GetComponent(typeof(SoundManagerCS));
        hMissionsControllerCS          = (MissionsControllerCS)this.GetComponent(typeof(MissionsControllerCS));
        hGlobalAchievementControllerCS = (GlobalAchievementControllerCS)this.GetComponent(typeof(GlobalAchievementControllerCS));
        hPlayerFrontColliderScriptCS   = (PlayerFrontColliderScriptCS)GameObject.Find("PlayerFrontCollider").GetComponent(typeof(PlayerFrontColliderScriptCS));
        hPlayerSidesColliderScriptCS   = (PlayerSidesColliderScriptCS)GameObject.Find("PlayerSidesCollider").GetComponent(typeof(PlayerSidesColliderScriptCS));

        //check which type of menu (Custom or NGUI) to work with
        if (hInGameScriptCS.isCustomMenuEnabled())
        {
            tHUDPUMeter    = (Transform)GameObject.Find("HUDMainGroup/HUDPUMeter").GetComponent(typeof(Transform));
            tHUDPUMeterBar = (Transform)GameObject.Find("HUDMainGroup/HUDPUMeter/HUD_PU_Meter_Bar_Parent").GetComponent(typeof(Transform));
            tHUDPUMeter.transform.position -= new Vector3(0, 100, 0);            //hide the powerup meter
        }
        else
        {
            uisHUDPUMeter = (UISlider)GameObject.Find("UI Root (2D)/Camera/Anchor/HUDGroup/PowerupMeter/Progress Bar").GetComponent(typeof(UISlider));
            uisHUDPUMeter.transform.position = new Vector3(0, 1000, 0);          //hide the power-up meter by default
        }

        fMagnetismDefaultRadius = 200;
        fMangetismRadius        = 200;          //default: pull currency toward the character
        iCurrencyUnits          = 0;

        for (var i = 0; i < iPowerupCount; i++)
        {
            bPowerupStatus[i]        = false;
            fPowerupTotalDuration[i] = 10.0f;            //active time duration of the powerups
        }
    }
	void Start()
	{
		//script references
		hPatchesRandomizerCS = (PatchesRandomizerCS)this.GetComponent(typeof(PatchesRandomizerCS));
		//hMissionsControllerCS = (MissionsControllerCS)this.GetComponent(typeof(MissionsControllerCS));
		//hGlobalAchievementControllerCS = (GlobalAchievementControllerCS)this.GetComponent(typeof(GlobalAchievementControllerCS));
		hPlayerSidesColliderScriptCS = (PlayerSidesColliderScriptCS)GameObject.Find("PlayerSidesCollider").GetComponent(typeof(PlayerSidesColliderScriptCS));
		hPlayerFrontColliderScriptCS = (PlayerFrontColliderScriptCS)GameObject.Find("PlayerFrontCollider").GetComponent(typeof(PlayerFrontColliderScriptCS));
		hSoundManagerCS = (SoundManagerCS)GameObject.Find("SoundManager").GetComponent(typeof(SoundManagerCS));
		hInGameScriptCS = (InGameScriptCS)this.GetComponent(typeof(InGameScriptCS));
		hPitsMainControllerCS = (PitsMainControllerCS)this.GetComponent(typeof(PitsMainControllerCS));
		hCheckPointsMainCS = (CheckPointsMainCS)this.GetComponent(typeof(CheckPointsMainCS));
		hPowerupScriptCS = (PowerupsMainControllerCS)this.GetComponent(typeof(PowerupsMainControllerCS));
		//hEnemyControllerCS = (EnemyControllerCS)GameObject.Find("Enemy").GetComponent(typeof(EnemyControllerCS));
		hPowerupScriptCS = (PowerupsMainControllerCS)this.GetComponent(typeof(PowerupsMainControllerCS));
		hCameraControllerCS = (CameraControllerCS)GameObject.Find("Main Camera").GetComponent(typeof(CameraControllerCS));
		swipeLogic = (SwipeControlsCS)transform.GetComponent(typeof(SwipeControlsCS));
        //tPlayerMesh = (Transform)GameObject.Find("fatguy_").GetComponent(typeof(Transform));
		
		//check which type of menu (Custom or NGUI) to work with
		if (hInGameScriptCS.isCustomMenuEnabled())
		{
			//hMenuScriptCS = (MenuScriptCS)GameObject.Find("MenuGroup").GetComponent(typeof(MenuScriptCS));
			HUDCamera = GameObject.Find("HUDCamera").GetComponent<Camera>();
			
			tHUDGroup = GameObject.Find("HUDMainGroup/HUDGroup").transform;
			tPauseButton = GameObject.Find("HUDMainGroup/HUDGroup/HUDPause").transform;
		}
		
		tPlayer = transform;
		tPlayerRotation = transform.Find("PlayerRotation");
		
		//get the animation component of the player character
		if (this.transform.Find("PlayerRotation/PlayerMesh/Prisoner"))
		{
			mecanimEnabled = false;
			aPlayer = (Animation)this.transform.Find("PlayerRotation/PlayerMesh/Prisoner").GetComponent(typeof(Animation));			
			StartCoroutine("playIdleAnimations");//start playing idle animations
		}
		else if (this.transform.Find("PlayerRotation/PlayerMesh/Prisoner(MecAnim)"))//check for mecanim animated character
		{
			mecanimEnabled = true;
			aPlayerMecAnim = (Animator)this.transform.Find("PlayerRotation/PlayerMesh/Prisoner(MecAnim)").GetComponent(typeof(Animator));
			
			v3DefaultPlayerAnimPosition = aPlayerMecAnim.transform.localPosition;//get the default player position
			v3DefaultPlayerAnimRotation = aPlayerMecAnim.transform.localEulerAngles;//get the default player rotation		
		}
			
		tBlobShadowPlane = transform.Find("BlobShadowPlane");//get the shadow
		
		tPlayerSidesCollider = GameObject.Find("PlayerSidesCollider").transform;//get the sides collider to detect stumbles
		tFrontCollider = GameObject.Find("PlayerFrontCollider").transform;//get the front collider to detect collisions
		
		v3BNCDefaultScale = tFrontCollider.localScale;	
		v3BFCDefaultScale = tPlayerSidesCollider.localScale;
		
		bInAir = false;
		fCurrentDistanceOnPath = 50.0f;	//inital distance with respect to spline
		fCurrentDistance = 0.0f;
		fCurrentMileage = 0.0f;
		tCurrentAngle = 0.0f;	
		fPitFallLerpValue = 0.0f;
		fPitFallForwardSpeed = 0.0f;
		fPitPositionX = 0.0f;
		fDeathAnimStartTime = 0;
		bGroundhit = false;	
		bJumpFlag = false;
		bInJump = false;
		fCurrentUpwardVelocity = 0;
		fCurrentHeight = 0;
		
		bDirectionQueueFlag = false;
		directionQueue = SwipeControlsCS.SwipeDirection.Null;
		iLanePosition = 0;	//set current lane to mid	
		fCurrentWalkSpeed = fStartingWalkSpeed;
		
		//get the type of controls (swipe or gyro) set by user
		if (PlayerPrefs.HasKey("ControlsType"))
			swipeControlsEnabled = PlayerPrefs.GetInt("ControlsType") == 1 ? true : false;
		else
			PlayerPrefs.SetInt("ControlsType", (swipeControlsEnabled == true ? 1 : 0));
			
		//stop footsteps sound if playing
		hSoundManagerCS.stopSound(SoundManagerCS.CharacterSounds.Footsteps);
        stumbledXtimes = 0;
	}//end of Start()
    void Start()
    {
        //script references
        hPatchesRandomizerCS           = (PatchesRandomizerCS)this.GetComponent(typeof(PatchesRandomizerCS));
        hMissionsControllerCS          = (MissionsControllerCS)this.GetComponent(typeof(MissionsControllerCS));
        hGlobalAchievementControllerCS = (GlobalAchievementControllerCS)this.GetComponent(typeof(GlobalAchievementControllerCS));
        hPlayerSidesColliderScriptCS   = (PlayerSidesColliderScriptCS)GameObject.Find("PlayerSidesCollider").GetComponent(typeof(PlayerSidesColliderScriptCS));
        hPlayerFrontColliderScriptCS   = (PlayerFrontColliderScriptCS)GameObject.Find("PlayerFrontCollider").GetComponent(typeof(PlayerFrontColliderScriptCS));
        hSoundManagerCS       = (SoundManagerCS)GameObject.Find("SoundManager").GetComponent(typeof(SoundManagerCS));
        hInGameScriptCS       = (InGameScriptCS)this.GetComponent(typeof(InGameScriptCS));
        hPitsMainControllerCS = (PitsMainControllerCS)this.GetComponent(typeof(PitsMainControllerCS));
        hCheckPointsMainCS    = (CheckPointsMainCS)this.GetComponent(typeof(CheckPointsMainCS));
        hPowerupScriptCS      = (PowerupsMainControllerCS)this.GetComponent(typeof(PowerupsMainControllerCS));
        hEnemyControllerCS    = (EnemyControllerCS)GameObject.Find("Enemy").GetComponent(typeof(EnemyControllerCS));
        hPowerupScriptCS      = (PowerupsMainControllerCS)this.GetComponent(typeof(PowerupsMainControllerCS));
        hCameraControllerCS   = (CameraControllerCS)GameObject.Find("Main Camera").GetComponent(typeof(CameraControllerCS));
        swipeLogic            = (SwipeControlsCS)transform.GetComponent(typeof(SwipeControlsCS));

        //check which type of menu (Custom or NGUI) to work with
        if (hInGameScriptCS.isCustomMenuEnabled())
        {
            hMenuScriptCS = (MenuScriptCS)GameObject.Find("MenuGroup").GetComponent(typeof(MenuScriptCS));
            HUDCamera     = GameObject.Find("HUDCamera").GetComponent <Camera>();

            tHUDGroup    = GameObject.Find("HUDMainGroup/HUDGroup").transform;
            tPauseButton = GameObject.Find("HUDMainGroup/HUDGroup/HUDPause").transform;
        }

        tPlayer         = transform;
        tPlayerRotation = transform.Find("PlayerRotation");

        //get the animation component of the player character
        if (this.transform.Find("PlayerRotation/PlayerMesh/Prisoner"))
        {
            mecanimEnabled = false;
            aPlayer        = (Animation)this.transform.Find("PlayerRotation/PlayerMesh/Prisoner").GetComponent(typeof(Animation));
            StartCoroutine("playIdleAnimations");                                    //start playing idle animations
        }
        else if (this.transform.Find("PlayerRotation/PlayerMesh/Prisoner(MecAnim)")) //check for mecanim animated character
        {
            mecanimEnabled = true;
            aPlayerMecAnim = (Animator)this.transform.Find("PlayerRotation/PlayerMesh/Prisoner(MecAnim)").GetComponent(typeof(Animator));

            v3DefaultPlayerAnimPosition = aPlayerMecAnim.transform.localPosition;            //get the default player position
            v3DefaultPlayerAnimRotation = aPlayerMecAnim.transform.localEulerAngles;         //get the default player rotation
        }

        tBlobShadowPlane = transform.Find("BlobShadowPlane");                    //get the shadow

        tPlayerSidesCollider = GameObject.Find("PlayerSidesCollider").transform; //get the sides collider to detect stumbles
        tFrontCollider       = GameObject.Find("PlayerFrontCollider").transform; //get the front collider to detect collisions

        v3BNCDefaultScale = tFrontCollider.localScale;
        v3BFCDefaultScale = tPlayerSidesCollider.localScale;

        bInAir = false;
        fCurrentDistanceOnPath = 50.0f;         //inital distance with respect to spline
        fCurrentDistance       = 0.0f;
        fCurrentMileage        = 0.0f;
        tCurrentAngle          = 0.0f;
        fPitFallLerpValue      = 0.0f;
        fPitFallForwardSpeed   = 0.0f;
        fPitPositionX          = 0.0f;
        fDeathAnimStartTime    = 0;
        bGroundhit             = false;
        bJumpFlag = false;
        bInJump   = false;
        fCurrentUpwardVelocity = 0;
        fCurrentHeight         = 0;

        bDirectionQueueFlag = false;
        directionQueue      = SwipeControlsCS.SwipeDirection.Null;
        iLanePosition       = 0;        //set current lane to mid
        fCurrentWalkSpeed   = fStartingWalkSpeed;

        //get the type of controls (swipe or gyro) set by user
        if (PlayerPrefs.HasKey("ControlsType"))
        {
            swipeControlsEnabled = PlayerPrefs.GetInt("ControlsType") == 1 ? true : false;
        }
        else
        {
            PlayerPrefs.SetInt("ControlsType", (swipeControlsEnabled == true ? 1 : 0));
        }

        //stop footsteps sound if playing
        hSoundManagerCS.stopSound(SoundManagerCS.CharacterSounds.Footsteps);
    }    //end of Start()
Esempio n. 10
0
    private TextMesh tmPauseCountdown;          //count down numbers after resume


    void Start()
    {
        HUDCamera             = (Camera)GameObject.Find("HUDMainGroup/HUDCamera").GetComponent(typeof(Camera));
        hControllerScriptCS   = (ControllerScriptCS)GameObject.Find("Player").GetComponent(typeof(ControllerScriptCS));
        hSoundManagerScriptCS = (SoundManagerCS)GameObject.Find("SoundManager").GetComponent(typeof(SoundManagerCS));
        hInGameScriptCS       = (InGameScriptCS)GameObject.Find("Player").GetComponent(typeof(InGameScriptCS));
        hMissionsControllerCS = (MissionsControllerCS)GameObject.Find("Player").GetComponent(typeof(MissionsControllerCS));

        //the fResolutionFactor can be used to adjust components according to screen size
        aspectRatio       = ((Screen.height * 1.0f) / (Screen.width * 1.0f) - 1.77f);
        fResolutionFactor = (43.0f * (aspectRatio));

        tMenuGroup      = GameObject.Find("MenuGroup").transform;
        tMenuTransforms = new Transform[(int)MenuIDs.GetValues(typeof(MenuIDs)).Length];

        //main menu initialization
        tMenuTransforms[(int)MenuIDs.MainMenu] = (Transform)tMenuGroup.Find("MainMenu").GetComponent(typeof(Transform));
        tMainMenuButtons    = new Transform[iMainMenuButtonsCount];
        tMainMenuButtons[0] = tMenuTransforms[(int)MenuIDs.MainMenu].Find("Buttons/Button_TapToPlay");
        tMainMenuButtons[1] = tMenuTransforms[(int)MenuIDs.MainMenu].Find("Buttons/Button_Instructions");
        tMainMenuButtons[2] = tMenuTransforms[(int)MenuIDs.MainMenu].Find("Buttons/Button_Settings");
        tMainMenuButtons[3] = tMenuTransforms[(int)MenuIDs.MainMenu].Find("Buttons/Button_Shop");
        tMainMenuButtons[4] = tMenuTransforms[(int)MenuIDs.MainMenu].Find("Buttons/Button_Missions");
        tMainMenuButtons[5] = tMenuTransforms[(int)MenuIDs.MainMenu].Find("Buttons/Button_Achievements");

        //pause menu initialization
        tMenuTransforms[(int)MenuIDs.PauseMenu] = (Transform)tMenuGroup.Find("PauseMenu").GetComponent(typeof(Transform));
        tPauseButtons          = new Transform[iPauseButtonsCount];
        tPauseButtons[0]       = tMenuTransforms[(int)MenuIDs.PauseMenu].Find("Buttons/Button_Back");
        tPauseButtons[1]       = tMenuTransforms[(int)MenuIDs.PauseMenu].Find("Buttons/Button_Resume");
        tmPauseMenuMissionList = (TextMesh)tMenuTransforms[(int)MenuIDs.PauseMenu].Find("Text_MissionDescription").GetComponent(typeof(TextMesh));

        //game over menu initialization
        tMenuTransforms[(int)MenuIDs.GameOverMenu] = (Transform)tMenuGroup.Find("GameOver").GetComponent(typeof(Transform));
        tGameOverButtons    = new Transform[iGameOverButtonsCount];
        tGameOverButtons[0] = tMenuTransforms[(int)MenuIDs.GameOverMenu].Find("Buttons/Button_Back");
        tGameOverButtons[1] = tMenuTransforms[(int)MenuIDs.GameOverMenu].Find("Buttons/Button_Play");

        //instructions menu initialization
        tMenuTransforms[(int)MenuIDs.InstructionsMenu] = (Transform)tMenuGroup.Find("Instructions").GetComponent(typeof(Transform));
        tInstructionsButtons    = new Transform[iInstructionsButtonsCount];
        tInstructionsButtons[0] = (Transform)tMenuTransforms[(int)MenuIDs.InstructionsMenu].Find("Buttons/Button_Back").GetComponent(typeof(Transform));

        //settings menu initialization
        tMenuTransforms[(int)MenuIDs.SettingsMenu] = (Transform)tMenuGroup.Find("Settings").GetComponent(typeof(Transform));
        tSettingsButtons    = new Transform[iSettingsButtonsCount];
        tSettingsButtons[0] = tMenuTransforms[(int)MenuIDs.SettingsMenu].Find("Buttons/Button_Back");
        tSettingsButtons[1] = (Transform)tMenuTransforms[(int)MenuIDs.SettingsMenu].Find("ControlType/Button_Swipe/RadioButton_Background").GetComponent(typeof(Transform));
        tSettingsButtons[2] = (Transform)tMenuTransforms[(int)MenuIDs.SettingsMenu].Find("ControlType/Button_Gyro/RadioButton_Background").GetComponent(typeof(Transform));
        tSettingsButtons[3] = (Transform)tMenuTransforms[(int)MenuIDs.SettingsMenu].Find("Music/Button_ON/RadioButton_Background").GetComponent(typeof(Transform));
        tSettingsButtons[4] = (Transform)tMenuTransforms[(int)MenuIDs.SettingsMenu].Find("Music/Button_OFF/RadioButton_Background").GetComponent(typeof(Transform));
        tSettingsButtons[5] = (Transform)tMenuTransforms[(int)MenuIDs.SettingsMenu].Find("Sound/Button_ON/RadioButton_Background").GetComponent(typeof(Transform));
        tSettingsButtons[6] = (Transform)tMenuTransforms[(int)MenuIDs.SettingsMenu].Find("Sound/Button_OFF/RadioButton_Background").GetComponent(typeof(Transform));

        mrSwipeControls = (MeshRenderer)tMenuTransforms[(int)MenuIDs.SettingsMenu].Find("ControlType/Button_Swipe/RadioButton_Foreground").GetComponent(typeof(MeshRenderer));
        mrGyroControls  = (MeshRenderer)tMenuTransforms[(int)MenuIDs.SettingsMenu].Find("ControlType/Button_Gyro/RadioButton_Foreground").GetComponent(typeof(MeshRenderer));
        mrMusicON       = (MeshRenderer)tMenuTransforms[(int)MenuIDs.SettingsMenu].Find("Music/Button_ON/RadioButton_Foreground").GetComponent(typeof(MeshRenderer));
        mrMusicOFF      = (MeshRenderer)tMenuTransforms[(int)MenuIDs.SettingsMenu].Find("Music/Button_OFF/RadioButton_Foreground").GetComponent(typeof(MeshRenderer));
        mrSoundON       = (MeshRenderer)tMenuTransforms[(int)MenuIDs.SettingsMenu].Find("Sound/Button_ON/RadioButton_Foreground").GetComponent(typeof(MeshRenderer));
        mrSoundOFF      = (MeshRenderer)tMenuTransforms[(int)MenuIDs.SettingsMenu].Find("Sound/Button_OFF/RadioButton_Foreground").GetComponent(typeof(MeshRenderer));

        //shop
        tMenuTransforms[(int)MenuIDs.Shop] = tMenuGroup.Find("Shop").GetComponent(typeof(Transform)) as Transform;
        hShopScriptCS = (ShopScriptCS)tMenuTransforms[(int)MenuIDs.Shop].GetComponent(typeof(ShopScriptCS));

        //missions menu
        tMenuTransforms[(int)MenuIDs.MissionsMenu] = (Transform)tMenuGroup.Find("MissionsMenu").GetComponent(typeof(Transform));
        tMissionsMenuButtons      = new Transform[iMissionsMenuButtonsCount];
        tMissionsMenuButtons[0]   = (Transform)tMenuTransforms[(int)MenuIDs.MissionsMenu].Find("Buttons/Button_Back").GetComponent(typeof(Transform));      //back button
        tmMissionsMenuMissionList = (TextMesh)tMenuTransforms[(int)MenuIDs.MissionsMenu].Find("Text_MissionDescription").GetComponent(typeof(TextMesh));

        //achievements menu
        tMenuTransforms[(int)MenuIDs.AchievementsMenu] = (Transform)tMenuGroup.Find("AchievementsMenu").GetComponent(typeof(Transform));
        tAchievementMenuButtons       = new Transform[iAchievementMenuButtonsCount];
        tAchievementMenuButtons[0]    = (Transform)tMenuTransforms[(int)MenuIDs.AchievementsMenu].Find("Buttons/Button_Back").GetComponent(typeof(Transform));    //back button
        tmAchievementsMenuDescription = (TextMesh)tMenuTransforms[(int)MenuIDs.AchievementsMenu].Find("Text_Achievements").GetComponent(typeof(TextMesh));        //text mesh containing achievments

        ///////HUD//////
        ((MeshRenderer)GameObject.Find("HUDMainGroup/HUDPauseCounter").GetComponent(typeof(MeshRenderer))).enabled = false;

        //set the HUD position according to the screen resolution
        ((Transform)GameObject.Find("HUDMainGroup/HUDGroup/HUDCurrencyGroup").GetComponent(typeof(Transform))).transform.Translate(-fResolutionFactor, 0, 0);
        (GameObject.Find("HUDMainGroup/HUDGroup/HUDScoreGroup").GetComponent(typeof(Transform)) as Transform).transform.Translate(-fResolutionFactor, 0, 0);
        (GameObject.Find("HUDMainGroup/HUDGroup/HUDPause").GetComponent(typeof(Transform)) as Transform).transform.Translate(fResolutionFactor, 0, 0);

        ShowMenu((int)MenuIDs.MainMenu);                //show Main Menu on game launch
    }