public void AddScore(int score, string name) { int i = 0; //New custom comparer created to allow for sorting by score ScoreComparer comparer = new ScoreComparer(); highScores.Sort(comparer); Debug.Log("Adding score: " + score); if (score > ((HighScoreEntry)highScores[0]).GetScore()) { Debug.Log(score + ">" + ((HighScoreEntry)highScores[0]).GetScore()); //Accounts for instances of many 0's! while (score < ((HighScoreEntry)highScores[i]).GetScore() && ((HighScoreEntry)highScores[i]).GetScore() == ((HighScoreEntry)highScores[i + 1]).GetScore()) { i++; } highScores.Insert(i, new HighScoreEntry(score, name)); Debug.Log("highScores at " + i + ": " + ((HighScoreEntry)highScores[i]).GetScore()); //highScores.Reverse(); // if (highScores.Count > 11) //{ // highScores.RemoveAt(0); //} } highScores.Reverse(); Save(); }
private void WriteByScore(StreamWriter writer, ArrayList rulers) { writer.WriteLine("<h2>Total Planet{0}/Number of Planets</h2>", CultureModule.getContent("score")); writer.WriteLine("<table>"); writer.WriteLine("<tr>"); writer.WriteLine("<th>#</td>"); writer.WriteLine("<th>Ruler</td>"); writer.WriteLine("<th>Planets</td>"); writer.WriteLine("<th>{0}</td>", "Average"); writer.WriteLine("</tr>"); for (int i = 0; i < NumberOfRulers; ++i) { Ruler ruler = (Ruler)rulers[i]; writer.WriteLine("<tr>"); writer.WriteLine("<td>{0}</td>", i + 1); writer.WriteLine("<td>{0}</td>", OrionGlobals.getLink(ruler)); writer.WriteLine("<td>{0}</td>", ruler.Planets.Length); writer.WriteLine("<td>{0}</td>", OrionGlobals.format((int)Math.Round(ScoreComparer.Count(ruler)))); writer.WriteLine("</tr>"); } writer.WriteLine("</table>"); }
private void Start() { scoreComparer = new ScoreComparer(); spritesArray = new Sprite[] { empty, mine1, mine2, mine3, mine4, mine5, mine6, mine7, mine8, mine, flag, covered, }; switch (MenuScript.level) { case 2: map = new Map(15, 20, transform.position, parent); break; case 3: map = new Map(30, 21, transform.position, parent); break; default: map = new Map(10, 10, transform.position, parent); break; } transform.Find("GameOverScreen").gameObject.SetActive(false); transform.Find("WinnerScreen").gameObject.SetActive(false); transform.Find("HighScoreAchievedScreen").gameObject.SetActive(false); timer = transform.Find("CanvasTimer").Find("SecondsText").GetComponent <TMP_Text>(); int secs = Convert.ToInt32(timer.text); FunctionPeriodic.Create(() => { if (transform.Find("GameOverScreen").gameObject.activeSelf || transform.Find("WinnerScreen").gameObject.activeSelf) { return; } secs++; timer.text = secs + ""; }, 1f); }
private void WikiWriteByScore(StreamWriter writer, ArrayList rulers) { writer.WriteLine("!!!Total PlanetScore/Number of Planets"); writer.Write("||{!^}*#*"); writer.Write("||{!^}*Ruler*"); writer.Write("||{!^}*Planets*"); writer.WriteLine("||{!^}*Average*||"); for (int i = 0; i < NumberOfRulers; ++i) { Ruler ruler = (Ruler)rulers[i]; writer.Write("||{0}", i + 1); writer.Write("||{0}", ruler.Name); writer.Write("||{0}", ruler.Planets.Length); writer.WriteLine("||{0}||", OrionGlobals.format((int)Math.Round(ScoreComparer.Count(ruler)))); } }
public void CompareTestSameScoresAndLastNameDifferntFirstName() { ScoreComparer sc = new ScoreComparer(); scoreRecord higherPositionCandidate = new scoreRecord(); scoreRecord lowerPositionCandidate = new scoreRecord(); higherPositionCandidate.firstName = "ABC"; higherPositionCandidate.lastName = "XYZ"; higherPositionCandidate.score = 50; lowerPositionCandidate.firstName = "DEF"; lowerPositionCandidate.lastName = "XYZ"; lowerPositionCandidate.score = 50; Assert.IsTrue(sc.Compare(lowerPositionCandidate, higherPositionCandidate) > 0); Assert.IsTrue(sc.Compare(higherPositionCandidate, lowerPositionCandidate) < 0); Assert.IsTrue(sc.Compare(higherPositionCandidate, higherPositionCandidate) == 0); }
public void CompareTestDifferentScores() { ScoreComparer sc = new ScoreComparer(); scoreRecord higherPositionCandidate = new scoreRecord(); scoreRecord lowerPositionCandidate = new scoreRecord(); higherPositionCandidate.firstName = "ABC"; higherPositionCandidate.lastName = "XYZ"; higherPositionCandidate.score = 99; lowerPositionCandidate.firstName = "ABC"; lowerPositionCandidate.lastName = "XYZ"; lowerPositionCandidate.score = 80; Assert.IsTrue(sc.Compare(lowerPositionCandidate, higherPositionCandidate) > 0); Assert.IsTrue(sc.Compare(higherPositionCandidate, lowerPositionCandidate) < 0); Assert.IsTrue(sc.Compare(higherPositionCandidate, higherPositionCandidate) == 0); }
private void sortScores() { ScoreComparer sc = new ScoreComparer(); scores.Sort(sc); }