示例#1
0
    /// <summary>
    /// Changes the main cameras field of view when switching in between game states
    /// </summary>
    public void ChangeCameraView(StateManager.GameState state)
    {
        if (state == StateManager.GameState.Game)
        {
            transition = true;
        }

        else if (state == StateManager.GameState.MainMenu)
        {
            transition = true;
        }
    }
示例#2
0
    // Update is called once per frame
    void Update()
    {
        if (SceneManager.GetActiveScene().name == "MainGame")
        {
            // 古いノートデータを消す
            if (state.stage != stateManager.stage)
            {
                int p            = state.player - 1;
                int other_player = state.player == 1 ? 2 : 1;

                if (stateManager.stage == StateManager.GameState.Stage.Enter)
                {
                    for (int i = 0; i < note_count; i++)
                    {
                        note_entry[p, i]  = -1;
                        mimic_entry[p, i] = -1;
                        DeleteInfo(other_player, i);
                        DeleteCircle(other_player, i);
                    }
                }
                if (stateManager.stage == StateManager.GameState.Stage.Wait)
                {
                    for (int i = 0; i < note_count; i++)
                    {
                        note_miss[other_player - 1, i] = -1;
                    }
                }
                if (!default_object[other_player - 1].activeSelf)
                {
                    DeleteChara(other_player);
                    default_object[other_player - 1].SetActive(true);
                }
            }

            state = stateManager.state;

            //foreach (Note note in MIDI_notes)

            if (clipManager.GetTime() > 0)
            {
                if (clipManager.GetClosestGridIndex() <= stateManager.gameendgrid)
                {
                    for (int note_number = 0; note_number < MIDI_notes.Length; note_number++)
                    {
                        Note note = MIDI_notes[note_number];

                        for (int player = 1; player <= 2; player++)
                        {
                            if (player != stateManager.player)
                            {
                                continue;
                            }

                            if (GetNoteDown(player, note) && (stateManager.stage == StateManager.GameState.Stage.Mimic || stateManager.stage == StateManager.GameState.Stage.Enter))
                            {
                                ProcessNote(player, note, note_number);
                                PushButtonOn(note);
                            }
                            // if (GetNoteUp(player, note) && (stateManager.stage == StateManager.GameState.Stage.Mimic || stateManager.stage == StateManager.GameState.Stage.Enter))
                            // {
                            //     PushButtonOff(note);
                            // }
                        }
                    }
                }

                for (int player = 1; player <= 2; player++)
                {
                    MissJudge(player);
                    ScoreDisplay(player);
                }
            }

            if (stateManager.MusicEndTime <= clipManager.GetTime())
            {
                GoResult();
            }
        }
    }
示例#3
0
 void HandleOnGameStateChanged(StateManager.GameState targetState)
 {
     Debug.Log(targetState);
     Debug.Log((int)targetState);
 }