public int CheckTopScore() { BinaryReader br = new BinaryReader(new FileStream("ScoreData.txt", FileMode.Open)); while (br.PeekChar() != -1) { SavePlayerScore sps = new SavePlayerScore(br.ReadString(), br.ReadInt32()); SPSArrayList.Add(sps); } br.Close(); SortOnPlayerScore sops = new SortOnPlayerScore(); SPSArrayList.Sort(sops); int Listsize = 0; foreach (SavePlayerScore ba in SPSArrayList) { Listsize++; Console.WriteLine("{0}", ba.GetScore()); } int[] WhoIsTheTop = new int[Listsize]; int count2 = 0; foreach (SavePlayerScore ba in SPSArrayList) { WhoIsTheTop[count2] = ba.GetScore(); count2++; } if (Listsize >= 1) return WhoIsTheTop[0]; else return 0; }
public void FindTop5() { BinaryReader br = new BinaryReader(new FileStream("ScoreData.txt", FileMode.Open)); while (br.PeekChar() != -1) { SavePlayerScore sps = new SavePlayerScore(br.ReadString(), br.ReadInt32()); SPSArrayList.Add(sps); } br.Close(); SortOnPlayerScore sops = new SortOnPlayerScore(); SPSArrayList.Sort(sops); }
// 지렁이 사후처리과정 public void AfterDead() { sound.DieSoundPlayer().PlaySync(); timer1.Enabled = false; sound.MainSoundPlayer().Stop(); if (CheckTop5(Score)) { sound.NewScoreSoundPlayer().Play(); MessageBox.Show("\t◇ ◆ [ 신기록달성 ] ◆ ◇\t\n\n\t신기록 달성을 축하합니다\n\n\t 신기록 달성을 축하고자\n\n\t 기록을 남길 수 있는\n\n\t 기회을 드립니다\n\n\t 다시한번 축하드립니다", " 게임종료"); PlayerName = Microsoft.VisualBasic.Interaction.InputBox("이름을 5자 이내로 작성하세요\n\n한번 저장된 점수는 수정이 불가능합니다\n\n획득한 점수 : " + Score + "점", "점수 기록", ""); while (true) { if (PlayerName.Length == 0) { PlayerName = Microsoft.VisualBasic.Interaction.InputBox("이름이 입력되지 않았습니다\n\n다시 입력해주세요\n\n획득한 점수 : " + Score + "점", "점수 기록", ""); } else if (PlayerName.Length > 5) { PlayerName = Microsoft.VisualBasic.Interaction.InputBox("이름은 5자를 넘을수 없습니다\n\n다시 입력해주세요\n\n획득한 점수 : " + Score + "점", "점수 기록", ""); } else break; } BinaryWriter bw = new BinaryWriter(new FileStream("ScoreData.txt", FileMode.Append)); SavePlayerScore sps = new SavePlayerScore(PlayerName, Score); SPSList.Add(sps); foreach (SavePlayerScore be in SPSList) { bw.Write(be.GetName()); bw.Write(be.GetScore()); } bw.Close(); this.Close(); sound.IntroSoundPlayer().PlayLooping(); } else { MessageBox.Show("\t [GameOver]\n\n\t 신기록이 아닙니다\n\n\t신기록 달성시 이름과 함께\t\n\n\t점수를 기록할 수 있습니다\t\n\n\t==================\t\n\n\t점수 : " + Score + "\n\n\t==================\t", " 게임종료"); this.Close(); sound.IntroSoundPlayer().PlayLooping(); } }
private void ScoreBoardForm_Load(object sender, EventArgs e) { BinaryReader br = new BinaryReader(new FileStream("ScoreData.txt", FileMode.Open)); while (br.PeekChar() != -1) { SavePlayerScore sps = new SavePlayerScore(br.ReadString(), br.ReadInt32()); SPSArrayList.Add(sps); } br.Close(); SortOnPlayerScore sops = new SortOnPlayerScore(); SPSArrayList.Sort(sops); foreach (SavePlayerScore ba in SPSArrayList) { ScoreDisplaylabel.Text = ScoreDisplaylabel.Text + ba.GetScore() + "점 (" + ba.GetName() + ")" + Environment.NewLine + "" + Environment.NewLine; } // 기록창을 새로 열때 누적되는 현상 방지용 clear SPSArrayList.Clear(); }
public bool CheckTop5(int NowScore) { BinaryReader br = new BinaryReader(new FileStream("ScoreData.txt", FileMode.Open)); while (br.PeekChar() != -1) { SavePlayerScore sps = new SavePlayerScore(br.ReadString(), br.ReadInt32()); SPSList.Add(sps); } br.Close(); SortOnPlayerScore sops = new SortOnPlayerScore(); SPSList.Sort(sops); int Listsize = 0; foreach (SavePlayerScore ba in SPSList) { Listsize++; Console.WriteLine("{0}", ba.GetScore()); } int[] WhoIsTheTop = new int[Listsize]; int count2 = 0; foreach (SavePlayerScore ba in SPSList) { WhoIsTheTop[count2] = ba.GetScore(); count2++; } // 기록창을 새로 열때 누적되는 현상 방지용 clear SPSList.Clear(); if (Listsize >= 5 && NowScore >= WhoIsTheTop[4]) return true; else if (Listsize < 5) return true; else return false; }