Пример #1
0
    public void UpdateMusic(GameController.GameState state)
    {
        switch (state)
        {
        case GameController.GameState.Menu:
            credits.TransitionTo(transition);
            break;

        case GameController.GameState.Credits:
            credits.TransitionTo(transition);
            break;

        case GameController.GameState.Playing:
            racing.TransitionTo(transition);
            break;

        case GameController.GameState.Selection:
            selection.TransitionTo(transition);
            break;

        case GameController.GameState.Win:
            win.TransitionTo(transition);
            break;

        case GameController.GameState.Lose:
            lose.TransitionTo(transition);
            break;
        }
    }
Пример #2
0
    protected void OnStateChanged(GameController.GameState oldState, GameController.GameState newState)
    {
        switch (newState)
        {
        case GameController.GameState.Player1Roll:
            StateText.text = "White: Roll";
            break;

        case GameController.GameState.Player2Roll:
            StateText.text = "Black: Roll";
            break;

        case GameController.GameState.Player1Select:
            StateText.text = "White: Move";
            break;

        case GameController.GameState.Player2Select:
            StateText.text = "Black: Move";
            break;
        }

        if (newState == GameController.GameState.Player1Roll || newState == GameController.GameState.Player2Roll)
        {
            CurrentRollText.fontSize = 14;
            CurrentRollText.text     = "Roll";
        }
    }
 void OnChangeGameState(GameController.GameState state)
 {
     if (state == GameController.GameState.Retry)
     {
         animator.SetBool("IsOpen", false);
     }
 }
Пример #4
0
    /* Fragt die eingehenden Signale regelmaessig ab.
     * Laeuft die Anwendung nicht in der Cave, wird aus dieser Funktion herausgesprungen.
     * Fragt auch ab ob die Tastatur oder der Gamecontroller verwendet wird.
     * Ist die Anwendung am laufen und der Stop-Knopf wurde gedruekt, so wird die Anwendung gestoppt.
     * Ist die Anwengung am laufen und der Reset-Knof wurde gedruekt, so wird die Anwendung neu gestartet.
     * Wartet die Anwendung auf den (ersten) Start und der Start-Knopf wurde gedruekt, so startet das Spiel.
     *
     */
    void Update()
    {
        if (Input.GetKey(ButtonQuit))
        {
            // can be done with every input device and also by clients
            //dan
            //GameController.EndGame ();
        }

        if (!Config.IsServer)
        {
            return;
        }

        CheckControllerChange();

//dan
        GameController.GameState state = GameController.GetState();
        if (ButtonStop.GetButtonDown() && state == GameController.GameState.Started)
        {
            GameController.StopGame();
        }
        else if (ButtonReset.GetButtonDown() && state == GameController.GameState.Started)
        {
            GameController.RestartGame();
        }
        else if (ButtonStart.GetButtonDown() &&
                 (state == GameController.GameState.WaitForStart || state == GameController.GameState.WaitForFirstStart))
        {
            GameController.StartGame();
        }

        CheckStateChange();
    }
Пример #5
0
    // string for button instructions on screen by GameState
    private string GetButtonString()
    {
        string text = "";

//dan
        GameController.GameState state = GameController.GetState();
        switch (state)
        {
        case GameController.GameState.WaitForFirstStart:
            if (Config.InputDevice != Config.Device.Keyboard)
            {
                text += "Press  " + ButtonStart.GetCurrentButton(Config.Device.Keyboard) +
                        "  to Play    and    change to Keyboard" + System.Environment.NewLine;
            }
            break;

        case GameController.GameState.WaitForStart:
            text += "Press  " + ButtonStart.GetCurrentButton() + "  to Play";
            break;

        case GameController.GameState.Started:
            text += "Press  " + ButtonReset.GetCurrentButton() + "  to Restart      ";
            text += "Press  " + ButtonStop.GetCurrentButton() + "  to Stop";
            break;

        default:
            break;
        }

        return(text);
    }
Пример #6
0
 private void InitTeleports(GameController.GameState gameState)
 {
     if (!teleporterManager)
     {
         teleporterManager = Instantiate <TeleporterManager>(teleporterManagerPrefab);
         teleporterManager.SetBoardManager(this);
     }
 }
Пример #7
0
 public void ShowTextPanel(GameController.GameState state)
 {
     textPanel.SetActive(true);
     if (state == GameController.GameState.DressupScreen)
     {
         actualText.text = textIntro;
     }
 }
 private void OnGameStateChanged(GameController.GameState gameState)
 {
     if (!currentPoint)
     {
         currentPoint       = boardManager.BoardViews.FindBoardViewByIndexBoard(1);
         nextPoint          = NextBoardPosition();
         transform.position = boardManagerPosition + currentPoint.BoardPosition;
     }
 }
Пример #9
0
//dan

    /* Ueberwacht den Status des Spiels.
     * Dabei werden folgende Zustaende unterschieden:
     *  - WaitForClientsSERVERONLY:	Der Server wartet auf die Clients.
     *  - WaitForFirstStart:		Es wird auf den ersten Start des Spiels gewartet.
     *  - WaitForStart:				Es wird auf den Start des Spiels gewartet.
     *  - Started:					Das Spiel ist gestartet.
     */
    private void CheckStateChange()
    {
        GameController.GameState currentState = GameController.GetState();
        if (currentState != LastState)
        {
            SetButtonsOnAllSERVERONLY(GetButtonString());
        }

        LastState = currentState;
    }
Пример #10
0
 void GameStateChange(GameController.GameState state)
 {
     if (state == GameController.GameState.GameOver)
     {
         label.enabled = true;
     }
     else
     {
         label.enabled = false;
     }
 }
Пример #11
0
    void Update()
    {
        estaEnElSuelo = transform.position.y == posicionInicialY;
        GameController.GameState estadoDelJuego = juego.GetComponent <GameController>().estadoDelJuego;
        bool jugadorPresionaSaltar = (Input.GetKeyDown(KeyCode.Space) || Input.GetKeyDown(KeyCode.UpArrow));

        if (estadoDelJuego == GameController.GameState.Playing && jugadorPresionaSaltar)
        {
            Saltar();
        }
    }
Пример #12
0
 public void showEndScreen(GameController.GameState state)
 {
     if (state == GameController.GameState.Succeed)
     {
         succeedMenu.SetActive(true);
     }
     else if (state == GameController.GameState.Failed)
     {
         failedMenu.SetActive(true);
     }
     else
     {
         Debug.LogError("Game State Error");
     }
 }
Пример #13
0
    void ChangeGameState(GameController.GameState state)
    {
        switch (state)
        {
        case GameController.GameState.Title:
            enabled = false;
            break;

        case GameController.GameState.Play:
            enabled = true;
            break;

        case GameController.GameState.GameOver:
            break;
        }
    }
Пример #14
0
 public void RestartButtonClicked()
 {
     restartPanel.SetActive(true);
     Time.timeScale = 0.0f;
     // set gamestate
     previousState    = controller.state;
     controller.state = GameController.GameState.RestartConfirm;
     // save buttons state for use if canceled
     buttonsMapping[startButton.GetComponent <Button>()]  = startButton.GetComponent <Button>().enabled;
     buttonsMapping[pauseButton.GetComponent <Button>()]  = pauseButton.GetComponent <Button>().enabled;
     buttonsMapping[goBackButton.GetComponent <Button>()] = goBackButton.GetComponent <Button>().enabled;
     // disable all buttons except for restart
     startButton.GetComponent <Button>().enabled  = false;
     pauseButton.GetComponent <Button>().enabled  = false;
     goBackButton.GetComponent <Button>().enabled = false;
 }
Пример #15
0
    public IEnumerator _gameOver(GameController.GameState state)
    {
        player.died -= onPlayerDied;
        player.interactedWithCircle -= onPlayerInteraction;
        player.reflectionStarted    -= onPlayerStartReflection;

        if (state == GameController.GameState.Win)
        {
            yield return(StartCoroutine(player._gameOver()));

            foreach (CirclePart circlePart in parts.Shuffle(new System.Random()))
            {
                StartCoroutine(circlePart._gameOver());
                yield return(new WaitForSeconds(.05f));
            }
        }
    }
Пример #16
0
    // =============================================================================



    // =============================================================================
    // METHODS UNITY ---------------------------------------------------------------


    /* Initialisierung der Objekte ButtonStart, ButtonReset und ButtonStop.
     * Der GameController GameController wird auf Instance gesetzt.
     * Die Variable LastState wird auf den Status von GameController gesetzt, welcher beim Start der Klasse aktiv ist.
     */
    void Awake()
    {
        Config = GameObject.FindWithTag("Config").GetComponent <Config> ();

        NetView = networkView;
//dan

        Debug.Log(">>>>>PlayerInteractionGame_Awake");
        GameController = GameController.Instance;
        LastState      = GameController.GetState();

        ButtonStart = new InteractionKey(InteractionKey.MouseKey.Right, "[0]", "START", "(1)");
        ButtonStart.Initialize();
        ButtonReset = new InteractionKey(InteractionKey.MouseKey.None, "[0]", "START", "(1)");
        ButtonReset.Initialize();
        ButtonStop = new InteractionKey(InteractionKey.MouseKey.None, "[1]", "BACK", "(2)");
        ButtonStop.Initialize();
    }
Пример #17
0
    // =============================================================================
    // =============================================================================
    // METHODS UNITY ---------------------------------------------------------------
    /* Initialisierung der Objekte ButtonStart, ButtonReset und ButtonStop.
     * Der GameController GameController wird auf Instance gesetzt.
     * Die Variable LastState wird auf den Status von GameController gesetzt, welcher beim Start der Klasse aktiv ist.
     */
    void Awake()
    {
        Config = GameObject.FindWithTag ( "Config" ).GetComponent<Config> ();

        NetView = networkView;
        //dan

        Debug.Log(">>>>>PlayerInteractionGame_Awake");
        GameController = GameController.Instance;
        LastState = GameController.GetState ();

        ButtonStart = new InteractionKey(InteractionKey.MouseKey.Right, "[0]", "START" , "(1)");
        ButtonStart.Initialize ();
        ButtonReset = new InteractionKey(InteractionKey.MouseKey.None, "[0]", "START" , "(1)");
        ButtonReset.Initialize ();
        ButtonStop = new InteractionKey(InteractionKey.MouseKey.None, "[1]", "BACK" , "(2)");
        ButtonStop.Initialize ();
    }
    void OnChangeGameState(GameController.GameState state)
    {
        switch (state)
        {
        case GameController.GameState.Title:
            gameObject.SetActive(true);
            label.text = "START";
            break;

        case GameController.GameState.GameOver:
            gameObject.SetActive(true);
            label.text = "RETRY";
            break;

        case GameController.GameState.Play:
            gameObject.SetActive(false);
            break;
        }
    }
    void ChangeGameState(GameController.GameState state)
    {
        switch (state)
        {
        case GameController.GameState.Title:
            enabled = false;
            rigidbody2D.isKinematic = true;
            break;

        case GameController.GameState.Play:
            enabled = true;
            rigidbody2D.isKinematic = false;
            break;

        case GameController.GameState.GameOver:
            enabled = false;
            rigidbody2D.velocity = Vector3.zero;
            break;
        }
    }
Пример #20
0
    public async void gameOver(GameController.GameState state)
    {
        progress.hide();

        await Task.Delay(500);

        continuePanel.showProgress(gameController.score);

        //switch (state) {
        //    case GameController.GameState.Lose: {
        //        break;
        //    }
        //    case GameController.GameState.Win: {
        //        break;
        //    }
        //    default: break;
        //}

        await Task.Delay(1000);

        continuePanel.showContinueButton();
    }
Пример #21
0
    // Update is called once per frame
    void Update()
    {
        GameController.GameState state = GameController.Instance.GetState();
        switch (state)
        {
        case GameController.GameState.STARTED:
            score.SetText("SCORE " + GameController.Instance.SCORE);
            break;
        }

        if (Input.GetKeyDown(KeyCode.Escape))
        {
            if (state == GameController.GameState.PAUSED)
            {
                Resume();
            }
            else if (state == GameController.GameState.STARTED)
            {
                Pause();
            }
        }
    }
Пример #22
0
    public void HandleGameStateChange(object sender, GameController.GameState state)
    {
        switch (state)
        {
        case GameController.GameState.Start:

            ShowPanel(false);
            break;

        case GameController.GameState.Pause:

            SetPanelText(_pauseHeader, _pauseText);
            ShowPanel(true);
            break;

        case GameController.GameState.Resume:

            ShowPanel(false);
            break;

        case GameController.GameState.WaveFailed:

            SetPanelText(_waveFailedHeader, _waveFailedText);
            ShowPanel(true);
            break;

        case GameController.GameState.GameOver:

            SetPanelText(_gameOverHeader, _gameOverText);
            ShowPanel(true);
            break;

        default:
            break;
        }
    }
 public void ManageCanvas(GameController.GameState gameState, float timeScale = 0f)
 {
     gameUI.SetActive(gameState == GameController.GameState.Running);
     pauseMenu.SetActive(gameState == GameController.GameState.Paused);
     Time.timeScale = timeScale;
 }
Пример #24
0
    //dan
    /* Ueberwacht den Status des Spiels.
     * Dabei werden folgende Zustaende unterschieden:
     * 	- WaitForClientsSERVERONLY:	Der Server wartet auf die Clients.
     * 	- WaitForFirstStart:		Es wird auf den ersten Start des Spiels gewartet.
     *  - WaitForStart:				Es wird auf den Start des Spiels gewartet.
     * 	- Started:					Das Spiel ist gestartet.
     */
    private void CheckStateChange()
    {
        GameController.GameState currentState = GameController.GetState ();
        if ( currentState != LastState )
        {
            SetButtonsOnAllSERVERONLY ( GetButtonString () );
        }

        LastState = currentState;
    }
Пример #25
0
    void UpdateGameUI(GameController.GameState gameState)
    {
        switch (gameState)
        {
        case GameController.GameState.TITLE_SCREEN:
        {
            if (null != m_TitleScreen)
            {
                m_TitleScreen.SetActive(true);
            }

            if (null != m_GameOverScreen)
            {
                m_GameOverScreen.SetActive(false);
            }

            if (null != m_HUD)
            {
                m_HUD.SetActive(false);
            }

            break;
        }

        case GameController.GameState.PLAYING:
        {
            if (null != m_TitleScreen)
            {
                m_TitleScreen.SetActive(false);
            }

            if (null != m_GameOverScreen)
            {
                m_GameOverScreen.SetActive(false);
            }

            if (null != m_HUD)
            {
                m_HUD.SetActive(true);
            }

            break;
        }

        case GameController.GameState.GAME_OVER:
        {
            if (null != m_TitleScreen)
            {
                m_TitleScreen.SetActive(false);
            }

            if (null != m_GameOverScreen)
            {
                m_GameOverScreen.SetActive(true);
            }

            if (null != m_HUD)
            {
                m_HUD.SetActive(false);
            }

            break;
        }
        }
    }
Пример #26
0
    private void GameStateChanged(GameController.GameState state)
    {
        System.Text.StringBuilder debugInfo = new System.Text.StringBuilder();
        debugInfo.AppendLine("New game state is " + state.ToString());
        debugInfo.AppendLine(string.Format("Playing mission {0} of {1}",
                                           GameController.Instance.GameData.MissionList.Count + 1,
                                           GameController.Instance.GameData.NumberOfMissions));

        switch (state)
        {
        default:
        case GameController.GameState.Default:
            // Clear all UI
            foreach (IPlayer v in playerViews)
            {
                v.SetState(IPlayerState.Idle);
            }
            break;

        case GameController.GameState.TeamAssembly:
            foreach (IPlayer v in playerViews)
            {
                v.SetState(IPlayerState.Idle);
            }
            playerViews[GameController.Instance.LeaderId].PopulatePlayerPicker(
                GameController.Instance.PlayerList,
                GameController.Instance.CurrentMission.Settings.NumberOfAttendees);
            playerViews[GameController.Instance.LeaderId].SetState(IPlayerState.GroupAssembly);
            playerViews[GameController.Instance.LeaderId].OnTeamPicked += TeamPicked;

            debugInfo.AppendLine(string.Format("Going on a mission with {0} players.", GameController.Instance.CurrentMission.Settings.NumberOfAttendees));
            debugInfo.AppendLine(string.Format("This is attempt number {0} of {1}",
                                               GameController.Instance.CurrentMission.TeamCompositionVoteList.Count,
                                               GameController.Instance.CurrentMission.Settings.MaxVoteRounds));
            break;

        case GameController.GameState.TeamCompositionVote:
            // TODO show mission view stuff here

            foreach (IPlayer v in playerViews)
            {
                v.SetState(IPlayerState.GroupCompositionVote);
            }
            debugInfo.AppendLine(string.Format("This is voting attempt number {0} of {1}",
                                               GameController.Instance.CurrentMission.TeamCompositionVoteList.Count,
                                               GameController.Instance.CurrentMission.Settings.MaxVoteRounds));
            break;

        case GameController.GameState.MissionVote:
            Mission m = GameController.Instance.CurrentMission;
            for (int i = 0; i < playerViews.Count; i++)
            {
                if (m.MissionVoteList.Find((PlayerVote v) => { return(v.PlayerID == i); }) != null)
                {
                    playerViews[i].SetState(IPlayerState.MissionVote);
                }
                else
                {
                    playerViews[i].SetState(IPlayerState.Idle);
                }
            }
            break;

        case GameController.GameState.Finished:
            // TODO: Display who won
            debugInfo.AppendLine("Game is finished");
            debugInfo.AppendLine("This should show which team won, but it's not implemented yet");

            SceneManager.LoadScene(0);

            break;
        }

        debugLabel.text = debugInfo.ToString();
    }
Пример #27
0
 public GameStateChangedSignal(GameController.GameState state)
 {
     State = state;
 }