protected new void Awake()
 {
     base.Awake();
     office        = new OfficeManager(gameStats.OfficeInitialSize, officeGenerator, officeStats);
     money         = new MoneyManager(gameStats.InitialMoney);
     employees     = new EmployeeManager(employeeGenerator, employeeStats);
     time          = gameObject.GetComponent <TimeManager>();
     cameraManager = gameObject.GetComponent <CameraManager>();
     cvs           = new CVManager(cvGenerationStats);
     if (FindObjectOfType <AudioManager>())
     {
         FindObjectOfType <AudioManager>().SubscribeEvents();
     }
     OnLoseGame += GameMetaManager.Employee.AllEmployeesByTheWindow;
     // TO DO INSTANCIACION DE PRUEBA
     // employees.CreateNewEmployee(office.DeskList[0]);
 }
	// Use this for initialization
	void Start () {

		Jony = (GameObject.FindGameObjectWithTag ("Jony")).GetComponent<CharacterAnimator>();
		Abery = GameObject.FindGameObjectWithTag ("Abery").GetComponent<CharacterAnimator>();
		_extra_animator = GameObject.FindObjectOfType<ExtraAnimator> ();
		_scenario_text = GameObject.FindObjectOfType<ScenarioText> ();
		_view_camera = GameObject.FindObjectOfType<ChangeCamera> ();
		_camera_animator = GameObject.FindObjectOfType<CameraAnimator> ();
		_cv_reference = GameObject.FindObjectOfType<CVManager> ();
		_se_reference= GameObject.FindObjectOfType<SEManager> ();
		_start_count = GameObject.FindObjectOfType<StartCount> ();
		Style = new GUIStyle();
		State = new GUIStyleState();
        

		//CSVデータから、ルートごとに分けてテキストデータ等を読み込む
		var MasterTable = new CSVMasterTable();
		MasterTable.Load();
		foreach (var Master in MasterTable.All)
		{
			//一度データを取り出す。
			Scenariodate data = new  Scenariodate (
				Master.Scenario, Master.WatchTime, (Route)Master.NextRoute,
				Master.JonyAnimation, Master.AberyAnimation,
				Master.JonyState, Master.AberyState,
				Master.CameraNumber,Master.CameraAnimation,
				Master.ExtraAnimation,Master.SEPetern);

			//ルートにあわせて保存
			switch ((Route)Master.CurrentRoute) {
				 
			case Route.Main:
				
				_Main.Add (data);

				break;
			case Route.A:
				
				_A.Add(data);
				
				break;
			case Route.B:
				
				_B.Add(data);
				
				break;
			case Route.C:
				
				_C.Add(data);
				
				break;
				
			}
			
		}
		
		//	_A.Add(new Scenariodate("ENDTEXT",0,Route.Main));
		//_B.Add(new Scenariodate("ENDTEXT",0,Route.Main));
		//_C.Add(new Scenariodate("ENDTEXT",0,Route.Main));

		_cv_reference.Init();
		_next_route = Route.NULL;
        _do_skip_text = false;
		//UpdateScenerio (Route.Main);

		
	}