Example #1
0
    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();
    }
Example #2
0
        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);
    }
Example #4
0
        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);
        }
Example #7
0
    private void sortScores()
    {
        ScoreComparer sc = new ScoreComparer();

        scores.Sort(sc);
    }