Exemplo n.º 1
0
    // ------------------- Between user and client --------------------------- //

    void ManageState()
    {
        switch (state)
        {
        case TimeLineLi.WaitingUserIdentification:

            if (uiController.GotUserIdentification())
            {
                state = TimeLineLi.GotUserIdentification;

                LogState();
            }
            break;

        case TimeLineLi.GotUserIdentification:

            userName = uiController.GetUserName();
            password = uiController.GetUserPassword();

            parameters.SetUserName(userName);
            parameters.SetPassword(password);

            client.AskConnection(userName, password);

            state = TimeLineLi.WaitingConnection;

            LogState();
            break;

        case TimeLineLi.WaitingConnection:

            if (client.GotConnection())
            {
                state = TimeLineLi.GotConnection;

                LogState();
            }
            else if (client.GotAnErrorOfIdentification())
            {
                state = TimeLineLi.ErrorIdenfication;

                LogState();
            }
            break;

        case TimeLineLi.GotConnection:

            uiController.Connected();

            sceneToLoad = sceneLookForPlaying;

            StartCoroutine(ActionWithDelay(uiController.QuitScene, 0.5f));

            state = TimeLineLi.WaitEndAnimationQuitScene;

            LogState();
            break;

        case TimeLineLi.ErrorIdenfication:

            uiController.ErrorOfConnection();
            state = TimeLineLi.WaitingUserIdentification;

            LogState();
            break;

        case TimeLineLi.ComeBackHome:

            sceneToLoad = sceneMain;
            uiController.QuitScene();
            state = TimeLineLi.WaitEndAnimationQuitScene;

            LogState();
            break;

        case TimeLineLi.WaitEndAnimationQuitScene:
            break;

        case TimeLineLi.EndAnimationQuitScene:

            LoadNewScene();
            state = TimeLineLi.Dead;

            LogState();
            break;

        case TimeLineLi.Dead:
            break;

        default:
            throw new System.Exception("GameController: Bad state.");
        }
    }
Exemplo n.º 2
0
 public void UserChooseHome()
 {
     state = TimeLineLi.ComeBackHome;
 }
Exemplo n.º 3
0
 void Start()
 {
     state = TimeLineLi.WaitingUserIdentification;
     Screen.sleepTimeout = SleepTimeout.NeverSleep;
 }
Exemplo n.º 4
0
    // ----------- From UIManager ---------------- //

    public void EndAnimationQuitScene()
    {
        state = TimeLineLi.EndAnimationQuitScene;
    }