public Student(string name, int score, TagManager.GameDifficulty difficulty = TagManager.GameDifficulty.Easy) : base() { Name = name; Score = new int[numberOfDificulties]; for (int i = 0; i < Score.Length; i++) { Score [i] = 0; } SetScore(score, difficulty); Achievements = ""; }
private static int SwitchDifficulty(TagManager.GameDifficulty difficulty) { switch (difficulty) { case TagManager.GameDifficulty.Easy: return(0); case TagManager.GameDifficulty.Normal: return(1); case TagManager.GameDifficulty.Hard: return(2); } return(-1); }
void CheckScore(string name, int score, TagManager.GameDifficulty difficulty) { if (PYScoreData.GetStudentScore(name, difficulty) > score) { PYAlertPopup popup = PYAlertPopup.InvokeAlertPopup("Popups/AlertPopup_1b").SetTitle("ATENÇÃO!", 1).SetText("O resultado atual é inferior ao já registrado, e por isso será descartado.".ToUpper(), 1); popup.AddButton("PYButtonConfirm", null).AddButtonAction(0, () => { BackToMainMenu(); PYAudioManager.Instance.StartAudio(PYAudioTags.Voice_ptBR_Continuar); }); popup.ClosePopupByFader = false; popup.Open(); PYAudioManager.Instance.StartAudio(PYAudioTags.Voice_ptBR_RegistrarPop03).Delay(.25f).Play(); } else { RegisterScore(name, score, difficulty); } }
public static void RegisterStudent(string name, int score = 0, TagManager.GameDifficulty difficulty = TagManager.GameDifficulty.Easy, int classId = 0) { Student student = Students.Find(s => s.Name == name); if (student == null) { Students.Add(new Student(name, score, difficulty)); } else { student.SetScore(score, difficulty); } PYNamesManager.SaveName(name, classId); Save(); }
public void SetScore(int score, TagManager.GameDifficulty difficulty = TagManager.GameDifficulty.Easy) { switch (difficulty) { case TagManager.GameDifficulty.Easy: Score[0] = score; break; case TagManager.GameDifficulty.Normal: Score[1] = score; break; case TagManager.GameDifficulty.Hard: Score[2] = score; break; } }
public static void OrganizeScores(TagManager.GameDifficulty difficulty = TagManager.GameDifficulty.None) { if (Students.Count == 0) { return; } int diff = SwitchDifficulty(difficulty); if (diff == -1) { //Debug.Log("Organize Scores>ByName"); Students = Students.OrderByDescending(student => student.Name).ToList(); } else { //Debug.Log("Organize Scores>ByScore: difficulty " + diff); Students = Students.OrderByDescending((student) => student.Score[diff]).ThenBy(student => student.Name).ToList(); } }
void SetScore(string message, string name, int score, TagManager.GameDifficulty difficulty, PYAudioTags voiceMsg) { if (!char.IsLetter(name[0])) { return; } string[] studentNames = PYScoreData.GetStudentNames(); PlayTableKeyboard.Instance.SetText(name); PlayTableKeyboard.Instance.ShowText(); if (new List <string>(studentNames).Contains(name)) { string messageText = message; PYAudioManager.Instance.StartAudio(voiceMsg).Play(); PYAudioManager.Instance.StartAudio(PYAudioTags.Voice_ptBR_RegistrarPop01).Play(); PYAlertPopup popup = PYAlertPopup.InvokeAlertPopup("Popups/AlertPopup_2b").SetTitle("ATENÇÃO!", 1).SetText(messageText.ToUpper(), 1); popup.AddButton("PYButtonEffectManager", "NÃO").AddButtonAction(0, () => { PlayTableKeyboard.Instance.Close(); PYAudioManager.Instance.StartAudio(PYAudioTags.Voice_ptBR_No).Play(); }); popup.AddButton("PYButtonEffectManager_Smaller", "SIM").AddButtonAction(1, () => { CheckScore(name, score, difficulty); PYAudioManager.Instance.StartAudio(PYAudioTags.Voice_ptBR_Yes).Play(); }); popup.ClosePopupByFader = false; popup.Open(); } else { RegisterScore(name, score, difficulty); } }
public static int GetStudentScore(string name, TagManager.GameDifficulty difficulty) { int diff = SwitchDifficulty(difficulty); return(Students.Find(s => s.Name == name).Score[Mathf.Abs(diff)]); }
/// <summary> /// Usado para entrada no teclado /// </summary> /// <param name="name"></param> /// <param name="score"></param> /// <param name="difficulty"></param> public void EnterScore(string name, int score, TagManager.GameDifficulty difficulty) { //SetScore("Este nome já está registrado. Deseja continuar?", name, score, difficulty, PYAudioTags.Voice_Geral_RegistrarPop04); }
/// <summary> /// Usado para quando clicado na lista /// </summary> /// <param name="name"></param> /// <param name="score"></param> /// <param name="difficulty"></param> public void UpdateScore(string name, int score, TagManager.GameDifficulty difficulty) { SetScore("Deseja mesmo registar o resultado com este nome?", name, score, difficulty, PYAudioTags.Voice_ptBR_RegistrarPop02); }
void RegisterScore(string name, int score, TagManager.GameDifficulty difficulty) { PYScoreData.RegisterStudent(name, score, difficulty); Invoke("BackToMainMenu", 0.5f); }