Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using UnityEngine;
- using System.Collections;
- using UnityEngine.SceneManagement;
- using System.Collections.Generic;
- public class GameManager : MonoBehaviour {
- public int Multiplier = 0;
- public int Streak = 0;
- public GameObject PauseScreen;
- public HNote[] AllNotes;
- public AudioSource PauseSFX, ComboSFX1, ComboSFX2, ComboSFX3, Murmer, ScorePlayedSFX1, ScorePlayedSFX2, ScorePlayedSFX3, ScorePlayedSFX4, ScorePlayedSFX5, LoseSFX, FailSFX;
- public GameObject RedAct, GreenAct, BlueAct, YellowAct, Black;
- public bool Lost;
- public bool SoundPlayed1, SoundPlayed2, SoundPlayed3, ScorePlayed1, ScorePlayed2, ScorePlayed3, ScorePlayed4, ScorePlayed5;
- public Animator CrowdAnim, SpeakerAnim1, SpeakerAnim2, SpeakerAnim3, SpeakerAnim4;
- public Texture2D CursorTexture;
- public CursorMode Mode;
- public bool AnimPlayed1, AnimPlayed2, AnimPlayed3, AnimPlayed4, AnimPlayed5, AnimPlayed6, AnimPlayed7, AnimPlayed8, AnimPlayed9, AnimPlayed10, AnimPlayed11, AnimPlayed12, AnimPlayed13, AnimPlayed14, AnimPlayed15, AnimPlayed16, AnimPlayed17, AnimPlayed18, AnimPlayed19, AnimPlayed20;
- public Animation PointEnlarge;
- void Start () {
- //Turn off mouse cursor to prepare for custom cursor
- Cursor.visible = false;
- //Reset all saved values except highscore
- PlayerPrefs.SetInt ("Score", 0);
- PlayerPrefs.SetInt ("Inv", 0);
- PlayerPrefs.SetInt ("RockMeter", 25);
- PlayerPrefs.SetInt ("Streak", 0);
- PlayerPrefs.SetInt ("HighStreak", 0);
- PlayerPrefs.SetInt ("Mult", 0);
- PlayerPrefs.SetInt ("NotesHit", 0);
- PlayerPrefs.SetInt ("Total", 0);
- //Start game
- Invoke ("StartMusic", 4f);
- //Start the crowd murmers
- Murmer.Play ();
- //Find all notes in the scene
- AllNotes = GameObject.FindObjectsOfType<HNote> ();
- //Find the crowd and speaker animators
- CrowdAnim = GameObject.Find ("Crowd").GetComponent<Animator> ();
- SpeakerAnim1 = GameObject.Find ("Speaker1").GetComponent<Animator> ();
- SpeakerAnim2 = GameObject.Find ("Speaker2").GetComponent<Animator> ();
- SpeakerAnim3 = GameObject.Find ("Speaker3").GetComponent<Animator> ();
- SpeakerAnim4 = GameObject.Find ("Speaker4").GetComponent<Animator> ();
- }
- void Update () {
- //Pause game
- if (Input.GetKeyDown (KeyCode.P)) {
- OnPause ();
- }
- //Check various conditions to play sounds and animations
- SoundPlay ();
- ScoreSound ();
- ScoreScale ();
- }
- //Calculates the multiplier and keeps track of the streak number
- public void AddStreak () {
- if (PlayerPrefs.GetInt ("RockMeter") + 1 < 50)
- PlayerPrefs.SetInt ("RockMeter", PlayerPrefs.GetInt ("RockMeter") + 1);
- Streak++;
- if (Streak >= 101) {
- Multiplier = 5;
- } else if (Streak >= 51) {
- Multiplier = 4;
- } else if (Streak >= 26) {
- Multiplier = 3;
- } else if (Streak >= 11) {
- Multiplier = 2;
- } else
- Multiplier = 1;
- if (Streak > PlayerPrefs.GetInt ("HighStreak")) {
- PlayerPrefs.SetInt ("HighStreak", Streak);
- }
- PlayerPrefs.SetInt ("NotesHit", PlayerPrefs.GetInt ("NotesHit")+1);
- PlayerPrefs.SetInt ("Total", PlayerPrefs.GetInt ("Total")+1);
- UpdateGUI ();
- }
- //Resets the streak count and all sound/animation bools so they can be played again
- public void ResetStreak () {
- if (Lost == false) {
- PlayerPrefs.SetInt ("RockMeter", PlayerPrefs.GetInt ("RockMeter") - 3);
- if (PlayerPrefs.GetInt ("RockMeter") < 0) {
- LoseH ();
- }
- Streak = 0;
- Multiplier = 1;
- AnimPlayed1 = false;
- AnimPlayed2 = false;
- AnimPlayed3 = false;
- AnimPlayed4 = false;
- AnimPlayed5 = false;
- AnimPlayed6= false;
- AnimPlayed7 = false;
- AnimPlayed8 = false;
- AnimPlayed9 = false;
- AnimPlayed10 = false;
- AnimPlayed11 = false;
- AnimPlayed12 = false;
- AnimPlayed13 = false;
- AnimPlayed14 = false;
- AnimPlayed15 = false;
- AnimPlayed16 = false;
- AnimPlayed17 = false;
- AnimPlayed18 = false;
- AnimPlayed19 = false;
- AnimPlayed20 = false;
- SoundPlayed1 = (false);
- SoundPlayed2 = (false);
- SoundPlayed3 = (false);
- UpdateGUI ();
- }
- }
- //Plays the fail sound if the player's streak is over 25
- public void MissNote () {
- PlayerPrefs.SetInt ("Total", PlayerPrefs.GetInt ("Total") + 2);
- if (Streak > 25) {
- FailSFX.Play ();
- }
- }
- //Lose function
- void LoseH () {
- Lost = true;
- PlayerPrefs.SetInt ("Start",0);
- GameObject.Find("MusicManager").GetComponent<AudioSource>().Stop();
- LoseSFX.Play ();
- CrowdAnim.StopPlayback ();
- GameObject.Find ("MusicManager").GetComponent<MusicManager> ().Called = false;
- SpeakerAnim1.StopPlayback ();
- SpeakerAnim2.StopPlayback ();
- SpeakerAnim3.StopPlayback ();
- SpeakerAnim4.StopPlayback ();
- RedAct.GetComponent<Activator>().enabled = false;
- GreenAct.GetComponent<Activator>().enabled = false;
- BlueAct.GetComponent<Activator>().enabled = false;
- YellowAct.GetComponent<Activator>().enabled = false;
- foreach(HNote H in AllNotes) {
- H.speed = 0;
- if (H.Green != null) {
- H.Green.StopPlayback ();
- }
- if (H.Blue != null) {
- H.Blue.StopPlayback ();
- }
- if (H.Red != null) {
- H.Red.StopPlayback ();
- }
- if (H.Yellow != null) {
- H.Yellow.StopPlayback ();
- }
- }
- Invoke ("Reload", 2);
- }
- //Win function
- public void Win () {
- PlayerPrefs.SetInt ("Start",0);
- Cursor.visible = true;
- if(PlayerPrefs.GetInt("HighScore") < PlayerPrefs.GetInt("Score")) {
- PlayerPrefs.SetInt("HighScore",PlayerPrefs.GetInt("Score"));
- }
- SceneManager.LoadScene (4);
- }
- //Pause function
- public void OnPause () {
- PauseSFX.Play ();
- if (Time.timeScale < 1) {
- Time.timeScale = 1;
- Cursor.visible = false;
- PauseScreen.SetActive (false);
- } else {
- Time.timeScale = 0;
- Cursor.SetCursor(CursorTexture, new Vector2 (25,25), Mode);
- Cursor.visible = true;
- PauseScreen.SetActive (true);
- }
- }
- void UpdateGUI () {
- PlayerPrefs.SetInt ("Streak", Streak);
- PlayerPrefs.SetInt ("Mult", Multiplier);
- }
- public int GetScore () {
- return 1 * Multiplier;
- }
- //Retry function
- void Reload () {
- Cursor.visible = true;
- SceneManager.LoadScene (3);
- }
- //This is where the combo sounds are called
- void SoundPlay () {
- if (Multiplier == 3 && SoundPlayed1 == false) {
- ComboSFX1.Play ();
- SoundPlayed1 = (true);
- }
- if (Multiplier == 4 && SoundPlayed2 == false) {
- ComboSFX2.Play ();
- SoundPlayed2 = (true);
- }
- if (Multiplier == 5 && SoundPlayed3 == false) {
- ComboSFX3.Play ();
- SoundPlayed3 = (true);
- }
- }
- //This is where the total score sounds are called
- void ScoreSound () {
- if (PlayerPrefs.GetInt ("Score")== 50 && ScorePlayed1 == false) {
- ScorePlayedSFX1.Play ();
- ScorePlayed1 = (true);
- }
- if (PlayerPrefs.GetInt ("Score")== 100 && ScorePlayed2 == false) {
- ScorePlayedSFX2.Play ();
- ScorePlayed2 = (true);
- }
- if (PlayerPrefs.GetInt ("Score")== 250 && ScorePlayed3 == false) {
- ScorePlayedSFX3.Play ();
- ScorePlayed3 = (true);
- }
- if (PlayerPrefs.GetInt ("Score")== 500 && ScorePlayed4 == false) {
- ScorePlayedSFX4.Play ();
- ScorePlayed4 = (true);
- }
- if (PlayerPrefs.GetInt ("Score")== 1000 && ScorePlayed5 == false) {
- ScorePlayedSFX5.Play ();
- ScorePlayed5 = (true);
- }
- }
- //Function to start music
- public void StartMusic () {
- PlayerPrefs.SetInt ("Start", 1);
- }
- //Controls all the possible streak animations
- public void ScoreScale () {
- if (Streak == 10 && AnimPlayed1 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed1 = true;
- }
- if (Streak == 20 && AnimPlayed2 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed2 = true;
- }
- if (Streak == 30 && AnimPlayed3 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed3 = true;
- }
- if (Streak == 40 && AnimPlayed4 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed4 = true;
- }
- if (Streak == 50 && AnimPlayed5 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed5 = true;
- }
- if (Streak == 60 && AnimPlayed6 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed6 = true;
- }
- if (Streak == 70 && AnimPlayed7 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed7 = true;
- }
- if (Streak == 80 && AnimPlayed8 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed8 = true;
- }
- if (Streak == 90 && AnimPlayed9 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed9 = true;
- }
- if (Streak == 100 && AnimPlayed10 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed10 = true;
- }
- if (Streak == 110 && AnimPlayed11 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed11 = true;
- }
- if (Streak == 120 && AnimPlayed12 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed12 = true;
- }
- if (Streak == 130 && AnimPlayed13 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed13 = true;
- }
- if (Streak == 140 && AnimPlayed14 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed14 = true;
- }
- if (Streak == 150 && AnimPlayed15 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed15 = true;
- }
- if (Streak == 160 && AnimPlayed16 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed16 = true;
- }
- if (Streak == 170 && AnimPlayed17 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed17 = true;
- }
- if (Streak == 180 && AnimPlayed18 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed18 = true;
- }
- if (Streak == 190 && AnimPlayed19 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed19 = true;
- }
- if (Streak == 200 && AnimPlayed20 == false) {
- PointEnlarge.Play ("Streak");
- AnimPlayed20 = true;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement