Example #1
0
    IEnumerator CreateStateWithFade(MoneyManagementSubTask _subTask, Level _level, int _state)
    {
        visualM.FadeOut();
        for (; ;)
        {
            if (visualM.faded)
            {
                break;
            }
            yield return(null);
        }

        CreateState(_subTask, _level, _state);
        visualM.FadeIn();
    }
Example #2
0
    void CreateState(MoneyManagementSubTask _subTask, Level _level, int _state)
    {
        generalManagerS.ActiveSubTask = (int)_subTask;
        generalManagerS.ActiveLevel   = _level;
        state = _state;

        GameObject tempObj = null;

        timerS.setStateStartTime();

        Debug.Log(_subTask + ", " + _level + ", " + _state);

        switch (_subTask)
        {
            #region CREATE_Recognizing
        case MoneyManagementSubTask.Recognizing:
            switch (_level)
            {
            case Level.Tutorial:
                switch (_state)
                {
                case 0:
                    //timing set
                    timerS.initializeTimes(0.0f, 60.0f, 300.0f);

                    //tutorial
                    visualM.tutorialSetNo = 0;
                    visualM.ActivateTutorial(true);
                    visualM.ActivatePictographs(false);
                    visualM.ActivateVisuals(false);
                    visualM.ActivateInfo(false);

                    //distracters off
                    generalManagerS.DistracterM.ActiveteDistracters(false);

                    //create customer
                    CleanObjects();
                    tempObj = Instantiate(customers[Random.Range(0, customers.Length)], customerPositions[1].position, customerPositions[1].rotation) as GameObject;
                    tempObj.transform.parent = creations;

                    //start save session
                    saverS.StartSaveSession();
                    saverS.instanceCount = 1;
                    timerS.setLevelStartTime();
                    break;

                case 1:
                    //START GAME
                    GetComponent <NetworkView>().RPC("StartSubTask", RPCMode.OthersBuffered, 0, 1);
                    break;

                case 100:                                               //WIN
                    //forman voice and visual
                    visualM.ActivatePictographs(false);
                    visualM.PlayVoice(3);
                    visualM.visualNo = 0;
                    visualM.ActivateVisuals(true);

                    //save session
                    saverS.result = 1;
                    saverS.SaveDataBase();
                    break;

                case 200:                                               //FAIL
                    //visual
                    visualM.ActivatePictographs(false);
                    visualM.visualNo = 1;
                    visualM.ActivateVisuals(true);

                    //save session
                    saverS.result = 2;
                    saverS.SaveDataBase();
                    break;
                }
                break;

            case Level.Train_without_Distracters:
                switch (_state)
                {
                case 0:
                    //timing set
                    timerS.initializeTimes(0.0f, 60.0f, 300.0f);

                    //visuals
                    visualM.ActivateTutorial(false);
                    visualM.ActivatePictographs(false);
                    visualM.ActivateVisuals(false);
                    visualM.ActivateInfo(false);
                    visualM.PlayVoice(6);

                    //distracters off
                    generalManagerS.DistracterM.ActiveteDistracters(false);

                    //create customer
                    CleanObjects();
                    int customerIndex = Random.Range(0, customers.Length);
                    tempObj = Instantiate(customers[customerIndex], customerPositions[0].position, customerPositions[0].rotation) as GameObject;
                    tempObj.transform.parent = creations;

                    int newCustomerIndex = -1;
                    do
                    {
                        newCustomerIndex = Random.Range(0, customers.Length);
                    }while (newCustomerIndex == customerIndex);
                    tempObj = Instantiate(customers[newCustomerIndex], customerPositions[1].position, customerPositions[1].rotation) as GameObject;
                    tempObj.transform.parent = creations;

                    //START GAME
                    randomInstanceCount = Random.Range(5, 8);
                    GetComponent <NetworkView>().RPC("StartSubTask", RPCMode.OthersBuffered, 0, randomInstanceCount);

                    //start save session
                    saverS.StartSaveSession();
                    saverS.instanceCount = randomInstanceCount;
                    timerS.setLevelStartTime();
                    break;

                case 100:                                               //WIN
                    //forman voice and visual
                    visualM.ActivatePictographs(false);
                    visualM.PlayVoice(8);
                    visualM.visualNo = 0;
                    visualM.ActivateVisuals(true);

                    //save session
                    saverS.result = 1;
                    saverS.SaveDataBase();
                    break;

                case 200:                                               //FAIL
                    //visual
                    visualM.ActivatePictographs(false);
                    visualM.visualNo = 1;
                    visualM.ActivateVisuals(true);

                    //save session
                    saverS.result = 2;
                    saverS.SaveDataBase();
                    break;
                }
                break;

            case Level.Train_with_Distracters:
                switch (_state)
                {
                case 0:
                    //timing set
                    timerS.initializeTimes(0.0f, 60.0f, 300.0f);

                    //visuals
                    visualM.ActivateTutorial(false);
                    visualM.ActivatePictographs(false);
                    visualM.ActivateVisuals(false);
                    visualM.ActivateInfo(false);
                    visualM.PlayVoice(6);

                    //distracters on
                    //generalManagerS.DistracterM.SetActiveDistracters(130048);
                    generalManagerS.DistracterM.SetDistracterTiming(30.0f, 5.0f);
                    generalManagerS.DistracterM.ActiveteDistracters(true);

                    //create customer
                    CleanObjects();
                    int customerIndex = Random.Range(0, customers.Length);
                    tempObj = Instantiate(customers[customerIndex], customerPositions[0].position, customerPositions[0].rotation) as GameObject;
                    tempObj.transform.parent = creations;

                    int newCustomerIndex = -1;
                    do
                    {
                        newCustomerIndex = Random.Range(0, customers.Length);
                    }while (newCustomerIndex == customerIndex);
                    tempObj = Instantiate(customers[newCustomerIndex], customerPositions[1].position, customerPositions[1].rotation) as GameObject;
                    tempObj.transform.parent = creations;

                    //START GAME
                    if (randomInstanceCount == 0)
                    {
                        randomInstanceCount = Random.Range(5, 8);
                    }
                    GetComponent <NetworkView>().RPC("StartSubTask", RPCMode.OthersBuffered, 0, randomInstanceCount);

                    //start save session
                    saverS.StartSaveSession();
                    saverS.instanceCount = randomInstanceCount;
                    timerS.setLevelStartTime();
                    break;

                case 100:                                               //WIN
                    //forman voice and visual
                    visualM.ActivatePictographs(false);
                    visualM.visualNo = 0;
                    visualM.ActivateVisuals(true);

                    //distracters off
                    generalManagerS.DistracterM.ActiveteDistracters(false);

                    //save session
                    saverS.result = 1;
                    saverS.SaveDataBase();
                    break;

                case 200:                                               //FAIL
                    //visual
                    visualM.ActivatePictographs(false);
                    visualM.visualNo = 1;
                    visualM.ActivateVisuals(true);

                    //distracters off
                    generalManagerS.DistracterM.ActiveteDistracters(false);

                    //save session
                    saverS.result = 2;
                    saverS.SaveDataBase();
                    break;
                }
                break;
            }
            break;

            #endregion
            #region CREATE_Counting
        case MoneyManagementSubTask.Counting:
            switch (_level)
            {
            case Level.Tutorial:
                switch (_state)
                {
                case 0:
                    //timing set
                    timerS.initializeTimes(0.0f, 60.0f, 300.0f);

                    //tutorial
                    visualM.tutorialSetNo = 1;
                    visualM.ActivateTutorial(true);
                    visualM.ActivatePictographs(false);
                    visualM.ActivateVisuals(false);
                    visualM.ActivateInfo(false);

                    //distracters off
                    generalManagerS.DistracterM.ActiveteDistracters(false);

                    //create customer
                    CleanObjects();
                    tempObj = Instantiate(customers[Random.Range(0, customers.Length)], customerPositions[1].position, customerPositions[1].rotation) as GameObject;
                    tempObj.transform.parent = creations;

                    //start save session
                    saverS.StartSaveSession();
                    saverS.instanceCount = 1;
                    timerS.setLevelStartTime();
                    break;

                case 1:
                    //START GAME
                    GetComponent <NetworkView>().RPC("StartSubTask", RPCMode.OthersBuffered, 1, 1);
                    break;

                case 100:                                               //WIN
                    //forman voice and visual
                    visualM.ActivatePictographs(false);
                    visualM.PlayVoice(4);
                    visualM.visualNo = 0;
                    visualM.ActivateVisuals(true);

                    //save session
                    saverS.result = 1;
                    saverS.SaveDataBase();
                    break;

                case 200:                                               //FAIL
                    //visual
                    visualM.ActivatePictographs(false);
                    visualM.visualNo = 1;
                    visualM.ActivateVisuals(true);

                    //save session
                    saverS.result = 2;
                    saverS.SaveDataBase();
                    break;
                }
                break;

            case Level.Train_without_Distracters:
                switch (_state)
                {
                case 0:
                    //timing set
                    timerS.initializeTimes(0.0f, 60.0f, 300.0f);

                    //visuals
                    visualM.ActivateTutorial(false);
                    visualM.ActivatePictographs(false);
                    visualM.ActivateVisuals(false);
                    visualM.ActivateInfo(false);
                    visualM.PlayVoice(9);

                    //distracters off
                    generalManagerS.DistracterM.ActiveteDistracters(false);

                    //create customer
                    CleanObjects();
                    int customerIndex = Random.Range(0, customers.Length);
                    tempObj = Instantiate(customers[customerIndex], customerPositions[0].position, customerPositions[0].rotation) as GameObject;
                    tempObj.transform.parent = creations;

                    int newCustomerIndex = -1;
                    do
                    {
                        newCustomerIndex = Random.Range(0, customers.Length);
                    }while (newCustomerIndex == customerIndex);
                    tempObj = Instantiate(customers[newCustomerIndex], customerPositions[1].position, customerPositions[1].rotation) as GameObject;
                    tempObj.transform.parent = creations;

                    //START GAME
                    randomInstanceCount = Random.Range(4, 7);
                    GetComponent <NetworkView>().RPC("StartSubTask", RPCMode.OthersBuffered, 1, randomInstanceCount);

                    //start save session
                    saverS.StartSaveSession();
                    saverS.instanceCount = randomInstanceCount;
                    timerS.setLevelStartTime();
                    break;

                case 100:                                               //WIN
                    //forman voice and visual
                    visualM.ActivatePictographs(false);
                    visualM.PlayVoice(11);
                    visualM.visualNo = 0;
                    visualM.ActivateVisuals(true);

                    //save session
                    saverS.result = 1;
                    saverS.SaveDataBase();
                    break;

                case 200:                                               //FAIL
                    //visual
                    visualM.ActivatePictographs(false);
                    visualM.visualNo = 1;
                    visualM.ActivateVisuals(true);

                    //save session
                    saverS.result = 2;
                    saverS.SaveDataBase();
                    break;
                }
                break;

            case Level.Train_with_Distracters:
                switch (_state)
                {
                case 0:
                    //timing set
                    timerS.initializeTimes(0.0f, 60.0f, 300.0f);

                    //visuals
                    visualM.ActivateTutorial(false);
                    visualM.ActivatePictographs(false);
                    visualM.ActivateVisuals(false);
                    visualM.ActivateInfo(false);
                    visualM.PlayVoice(9);

                    //distracters on
                    //generalManagerS.DistracterM.SetActiveDistracters(130048);
                    generalManagerS.DistracterM.SetDistracterTiming(30.0f, 5.0f);
                    generalManagerS.DistracterM.ActiveteDistracters(true);

                    //create customer
                    CleanObjects();
                    int customerIndex = Random.Range(0, customers.Length);
                    tempObj = Instantiate(customers[customerIndex], customerPositions[0].position, customerPositions[0].rotation) as GameObject;
                    tempObj.transform.parent = creations;

                    int newCustomerIndex = -1;
                    do
                    {
                        newCustomerIndex = Random.Range(0, customers.Length);
                    }while (newCustomerIndex == customerIndex);
                    tempObj = Instantiate(customers[newCustomerIndex], customerPositions[1].position, customerPositions[1].rotation) as GameObject;
                    tempObj.transform.parent = creations;

                    //START GAME
                    if (randomInstanceCount == 0)
                    {
                        randomInstanceCount = Random.Range(4, 7);
                    }
                    GetComponent <NetworkView>().RPC("StartSubTask", RPCMode.OthersBuffered, 1, randomInstanceCount);

                    //start save session
                    saverS.StartSaveSession();
                    saverS.instanceCount = randomInstanceCount;
                    timerS.setLevelStartTime();
                    break;

                case 100:                                               //WIN
                    //visual
                    visualM.ActivatePictographs(false);
                    visualM.visualNo = 0;
                    visualM.ActivateVisuals(true);

                    //distracters off
                    generalManagerS.DistracterM.ActiveteDistracters(false);

                    //save session
                    saverS.result = 1;
                    saverS.SaveDataBase();
                    break;

                case 200:                                               //FAIL
                    //visual
                    visualM.ActivatePictographs(false);
                    visualM.visualNo = 1;
                    visualM.ActivateVisuals(true);

                    //distracters off
                    generalManagerS.DistracterM.ActiveteDistracters(false);

                    //save session
                    saverS.result = 2;
                    saverS.SaveDataBase();
                    break;
                }
                break;
            }
            break;

            #endregion
            #region CREATE_Change
        case MoneyManagementSubTask.Change:
            switch (_level)
            {
            case Level.Tutorial:
                switch (_state)
                {
                case 0:
                    //timing set
                    timerS.initializeTimes(0.0f, 60.0f, 300.0f);

                    //tutorial
                    visualM.tutorialSetNo = 2;
                    visualM.ActivateTutorial(true);
                    visualM.ActivatePictographs(false);
                    visualM.ActivateVisuals(false);
                    visualM.ActivateInfo(false);

                    //distracters off
                    generalManagerS.DistracterM.ActiveteDistracters(false);

                    //create customer
                    CleanObjects();
                    tempObj = Instantiate(customers[Random.Range(0, customers.Length)], customerPositions[1].position, customerPositions[1].rotation) as GameObject;
                    tempObj.transform.parent = creations;

                    //start save session
                    saverS.StartSaveSession();
                    saverS.instanceCount = 1;
                    timerS.setLevelStartTime();
                    break;

                case 1:
                    //START GAME
                    GetComponent <NetworkView>().RPC("StartSubTask", RPCMode.OthersBuffered, 2, 1);
                    break;

                case 100:                                               //WIN
                    //forman voice and visual
                    visualM.ActivatePictographs(false);
                    visualM.PlayVoice(5);
                    visualM.visualNo = 0;
                    visualM.ActivateVisuals(true);

                    //save session
                    saverS.result = 1;
                    saverS.SaveDataBase();
                    break;

                case 200:                                               //FAIL
                    //visual
                    visualM.ActivatePictographs(false);
                    visualM.visualNo = 1;
                    visualM.ActivateVisuals(true);

                    //save session
                    saverS.result = 2;
                    saverS.SaveDataBase();
                    break;
                }
                break;

            case Level.Train_without_Distracters:
                switch (_state)
                {
                case 0:
                    //timing set
                    timerS.initializeTimes(0.0f, 60.0f, 300.0f);

                    //visuals
                    visualM.ActivateTutorial(false);
                    visualM.ActivatePictographs(false);
                    visualM.ActivateVisuals(false);
                    visualM.ActivateInfo(false);
                    visualM.PlayVoice(12);

                    //distracters off
                    generalManagerS.DistracterM.ActiveteDistracters(false);

                    //create customer
                    CleanObjects();
                    int customerIndex = Random.Range(0, customers.Length);
                    tempObj = Instantiate(customers[customerIndex], customerPositions[0].position, customerPositions[0].rotation) as GameObject;
                    tempObj.transform.parent = creations;

                    int newCustomerIndex = -1;
                    do
                    {
                        newCustomerIndex = Random.Range(0, customers.Length);
                    }while (newCustomerIndex == customerIndex);
                    tempObj = Instantiate(customers[newCustomerIndex], customerPositions[1].position, customerPositions[1].rotation) as GameObject;
                    tempObj.transform.parent = creations;

                    //START GAME
                    randomInstanceCount = Random.Range(4, 7);
                    GetComponent <NetworkView>().RPC("StartSubTask", RPCMode.OthersBuffered, 2, randomInstanceCount);

                    //start save session
                    saverS.StartSaveSession();
                    saverS.instanceCount = randomInstanceCount;
                    timerS.setLevelStartTime();
                    break;

                case 100:                                               //WIN
                    //forman voice and visual
                    visualM.ActivatePictographs(false);
                    visualM.PlayVoice(14);
                    visualM.visualNo = 0;
                    visualM.ActivateVisuals(true);

                    //save session
                    saverS.result = 1;
                    saverS.SaveDataBase();
                    break;

                case 200:                                               //FAIL
                    //visual
                    visualM.ActivatePictographs(false);
                    visualM.visualNo = 1;
                    visualM.ActivateVisuals(true);

                    //save session
                    saverS.result = 2;
                    saverS.SaveDataBase();
                    break;
                }
                break;

            case Level.Train_with_Distracters:
                switch (_state)
                {
                case 0:
                    //timing set
                    timerS.initializeTimes(0.0f, 60.0f, 300.0f);

                    //visuals
                    visualM.ActivateTutorial(false);
                    visualM.ActivatePictographs(false);
                    visualM.ActivateVisuals(false);
                    visualM.ActivateInfo(false);
                    visualM.PlayVoice(12);

                    //distracters on
                    //generalManagerS.DistracterM.SetActiveDistracters(130048);
                    generalManagerS.DistracterM.SetDistracterTiming(30.0f, 5.0f);
                    generalManagerS.DistracterM.ActiveteDistracters(true);

                    //create customer
                    CleanObjects();
                    int customerIndex = Random.Range(0, customers.Length);
                    tempObj = Instantiate(customers[customerIndex], customerPositions[0].position, customerPositions[0].rotation) as GameObject;
                    tempObj.transform.parent = creations;

                    int newCustomerIndex = -1;
                    do
                    {
                        newCustomerIndex = Random.Range(0, customers.Length);
                    }while (newCustomerIndex == customerIndex);
                    tempObj = Instantiate(customers[newCustomerIndex], customerPositions[1].position, customerPositions[1].rotation) as GameObject;
                    tempObj.transform.parent = creations;

                    //START GAME
                    if (randomInstanceCount == 0)
                    {
                        randomInstanceCount = Random.Range(4, 7);
                    }
                    GetComponent <NetworkView>().RPC("StartSubTask", RPCMode.OthersBuffered, 2, randomInstanceCount);

                    //start save session
                    saverS.StartSaveSession();
                    saverS.instanceCount = randomInstanceCount;
                    timerS.setLevelStartTime();
                    break;

                case 100:                                               //WIN
                    //forman voice and visual
                    visualM.ActivatePictographs(false);
                    visualM.visualNo = 0;
                    visualM.ActivateVisuals(true);

                    //distracters off
                    generalManagerS.DistracterM.ActiveteDistracters(false);

                    //save session
                    saverS.result = 1;
                    saverS.SaveDataBase();
                    break;

                case 200:                                               //FAIL
                    //visual
                    visualM.ActivatePictographs(false);
                    visualM.visualNo = 1;
                    visualM.ActivateVisuals(true);

                    //distracters off
                    generalManagerS.DistracterM.ActiveteDistracters(false);

                    //save session
                    saverS.result = 2;
                    saverS.SaveDataBase();
                    break;
                }
                break;
            }
            break;
            #endregion
        }

        //PHOTON CODE
        //generalManagerS.PhotonUpdate();
        //PHOTON CODE
    }