コード例 #1
0
 public void StartTheGame()
 {
     m_started = true;
     PMR_EventManager.TriggerEvent(PMR_EventSetup.Game.END_COUNTDOWN);
     InitSpectrum();
     PMR_NoteSpawner.Instance.m_initialized = true;
 }
コード例 #2
0
 /// <summary>
 /// Init animation (Ho-OH and Title appears)
 /// </summary>
 void InitMenu()
 {
     m_state = MENU_STATE.INIT;
     PMR_AudioManager.Instance.PlayMenuBGM();
     PMR_EventManager.TriggerEvent(PMR_EventSetup.Game.GO_TO_MENU);
     m_mainAnimator.SetTrigger("init");
 }
コード例 #3
0
 /// <summary>
 /// Method for changing the language. Calling this method will launch translate event so every text shows correctly
 /// </summary>
 /// <param name="language"></param>
 public void ChangeLanguage(SystemLanguage language)
 {
     m_currentLanguage      = language;
     m_currentLanguageIndex = m_activelanguages.IndexOf(m_currentLanguage);
     PlayerPrefs.SetInt(PMR_GameSetup.PlayerPrefs.LAST_LANGUAGE, m_currentLanguageIndex);
     PMR_EventManager.TriggerEvent(PMR_EventSetup.Localization.TRANSLATE_TEXTS);
 }
コード例 #4
0
 /// <summary>
 /// Get the language from index (a dropdown example) and translate every text
 /// </summary>
 /// <param name="language"></param>
 public void ChangeLanguageFromIndex(int language)
 {
     m_currentLanguage      = ActiveLanguages[language];
     m_currentLanguageIndex = language;
     PlayerPrefs.SetInt(PMR_GameSetup.PlayerPrefs.LAST_LANGUAGE, m_currentLanguageIndex);
     PMR_EventManager.TriggerEvent(PMR_EventSetup.Localization.TRANSLATE_TEXTS);
 }
コード例 #5
0
 /// <summary>
 /// When jigglipuff touches pikachu, we hide end panel
 /// </summary>
 /// <param name="collision"></param>
 private void OnCollisionEnter2D(Collision2D collision)
 {
     if (m_goIn && collision.gameObject.tag == PMR_GameSetup.Tags.PLAYER)
     {
         m_goIn = false;
         PMR_EventManager.TriggerEvent(PMR_EventSetup.Game.SHOW_END_PANEL);
     }
 }
コード例 #6
0
        public void PauseAndUnpause()
        {
            m_pause = !m_pause;

            if (m_pause)
            {
                PMR_EventManager.TriggerEvent(PMR_EventSetup.Game.PAUSE_GAME);
            }
            else
            {
                PMR_EventManager.TriggerEvent(PMR_EventSetup.Game.UNPAUSE_GAME);
            }
        }
コード例 #7
0
 public void ResetGame()
 {
     m_ingame = true;
     PMR_AudioManager.Instance.StopBGM();
     PMR_EventManager.TriggerEvent(PMR_EventSetup.Game.RESET);
     m_endPanel.SetActive(false);
     m_scoreText.gameObject.SetActive(true);
     m_pause          = false;
     m_ended          = false;
     m_started        = false;
     m_score          = 0;
     m_notes          = 0;
     m_scoreText.text = "x" + m_score;
     m_animator.SetTrigger(PMR_GameSetup.Triggers.COUNTDOWN);
 }
コード例 #8
0
        public void EndGame()
        {
            PMR_AudioManager.Instance.FadeOutBGM(2f);

            m_ended = true;
            int bestScore = PlayerPrefs.GetInt(PMR_GameSetup.PlayerPrefs.BEST_SCORE, 0);

            if (m_score > bestScore)
            {
                PlayerPrefs.SetInt(PMR_GameSetup.PlayerPrefs.BEST_SCORE, m_score);
            }

            m_endText.text        = PMR_TextManager.GetText(PMR_TextSetup.Game.END_TEXT);
            m_scoreEndText.text   = PMR_TextManager.GetText(PMR_TextSetup.Game.SCORE_TEXT) + m_score;
            m_restartbtnText.text = PMR_TextManager.GetText(PMR_TextSetup.Game.RESTART);
            m_backbtnText.text    = PMR_TextManager.GetText(PMR_TextSetup.Menu.BACK_TO_MENU);

            PMR_EventManager.TriggerEvent(PMR_EventSetup.Game.END_GAME);
        }
コード例 #9
0
 // Use this for initialization
 void Start()
 {
     PMR_EventManager.StartListening(PMR_EventSetup.Game.END_GAME, ResetManager);
 }
コード例 #10
0
 // Use this for initialization
 void Start()
 {
     m_originalPosition = new Vector3(transform.position.x, transform.position.y, transform.position.z);
     PMR_EventManager.StartListening(PMR_EventSetup.Game.END_GAME, GoIn);
     PMR_EventManager.StartListening(PMR_EventSetup.Game.RESET, ResetGame);
 }
コード例 #11
0
 /// <summary>
 /// Stop all listeners when ended
 /// </summary>
 void StopAllListeners()
 {
     PMR_EventManager.StopListening(PMR_EventSetup.Localization.TRANSLATE_TEXTS, TranslateTexts);
     PMR_EventManager.StopListening(PMR_EventSetup.Menu.INIT, InitMenu);
 }
コード例 #12
0
 void OnDestroy()
 {
     PMR_EventManager.StopListening(PMR_EventSetup.Game.END_GAME, ResetManager);
 }
コード例 #13
0
        public void InitSpectrum()
        {
            PMR_AudioManager.Instance.PlayGameBGM();

            m_gameLenght = PMR_AudioManager.Instance.BGMLength;

#if UNITY_WEBGL
            ///Unity doesn't work with spectrum on webgl OMG
            PMR_AudioManager.Instance.SetAudioSpeed(m_difficulty);
            PMR_NoteSpawner.Instance.m_noteBetweenDistance = 2f;

            for (int i = 0; i < m_samples; i++)
            {
                PMR_NoteSpawner.Instance.InstantiatePrefab(Random.Range(0, 3.2f), i);
                m_neededNotes++;
            }
#else
            m_samplesArray = PMR_AudioManager.Instance.SetBGMSpectrum(m_samples, m_difficulty);
            string str;
            float  newValue = 0f;

            PMR_NoteSpawner.Instance.m_noteBetweenDistance = 2f;

            if (m_samplesArray.Length > 0)
            {
                for (int i = 0; i < m_samplesArray.Length; i++)
                {
                    str = m_samplesArray[i].ToString();

                    if (str.Length > 0)
                    {
                        str      = (str.Length - 4 > 0) ? str.Remove(str.Length - 4) : str.Remove(0);
                        newValue = float.Parse(str, CultureInfo.InvariantCulture);

                        if (newValue > 2f && newValue < 3.5f)
                        {
                            newValue -= 2.5f;
                        }
                        else if (newValue > 3.5f)
                        {
                            newValue = 2.5f;
                        }

                        m_samplesArray[i] = newValue;
                    }

                    PMR_NoteSpawner.Instance.InstantiatePrefab(m_samplesArray[i], i);
                    m_neededNotes++;
                }
            }
            else
            {
                for (int i = 0; i < m_samples; i++)
                {
                    PMR_NoteSpawner.Instance.InstantiatePrefab(Random.Range(0, 2), i);
                    m_neededNotes++;
                }
            }
#endif
            PMR_EventManager.TriggerEvent(PMR_EventSetup.Game.SET_VELOCITY);
        }
コード例 #14
0
 private void Start()
 {
     PMR_EventManager.StartListening(PMR_EventSetup.Game.END_COUNTDOWN, StartTheGame);
     PMR_EventManager.StartListening(PMR_EventSetup.Game.RESET, ResetTheGame);
     PMR_EventManager.StartListening(PMR_EventSetup.Game.END_GAME, CantJump);
 }
コード例 #15
0
 void StopAllListeners()
 {
     PMR_EventManager.StopListening(PMR_EventSetup.Game.GO_TO_GAME, ResetGame);
     PMR_EventManager.StopListening(PMR_EventSetup.Game.SHOW_END_PANEL, ShowPanel);
 }
コード例 #16
0
 public void GoBackToMenu()
 {
     m_ingame = false;
     PMR_EventManager.TriggerEvent(PMR_EventSetup.Game.GO_TO_MENU);
     PMR_SceneManager.LoadScene(PMR_SceneSetup.SCENES.MAIN_MENU, 1f, PMR_EventSetup.Menu.INIT);
 }
コード例 #17
0
 private void OnDestroy()
 {
     PMR_EventManager.StopListening(PMR_EventSetup.Game.END_GAME, GoIn);
     PMR_EventManager.StopListening(PMR_EventSetup.Game.RESET, ResetGame);
 }