Exemple #1
0
        public void CheckRecords(int Po)
        {
            StreamReader sr      = File.OpenText("Records.txt");
            string       input   = null;
            ArrayList    records = new ArrayList();

            while ((input = sr.ReadLine()) != null)
            {
                ClassResult CR = new ClassResult(ClassMoving.ToWords(input, 2)[0], Convert.ToInt32(ClassMoving.ToWords(input, 2)[1]));
                records.Add(CR);
            }

            sr.Close();

            records.Sort(ClassResult.SortByPoint);
            // самый младший рекорд в таблице
            ClassResult Cr = (ClassResult)records[0];

            // если его удалось победить
            if (Po > Cr.ResPoint)
            {
                //MessageBox.Show("Ваш результат - это новый рекорд!");
                Fr.FormClosing += new System.Windows.Forms.FormClosingEventHandler(Fr_FormClosing);
                Fr.tbName.Focus();
                Fr.ShowDialog();
                FileInfo     fi = new FileInfo("Records.txt");
                StreamWriter writer;
                // если результат влезает в десятку
                if (records.Count < 10)
                {
                    records.Add(new ClassResult(UserName, Po));
                    // и дописать файл новым рекордом
                    writer = fi.AppendText();
                    writer.WriteLine(UserName + " " + Po.ToString());
                    writer.Close();
                }
                // иначе - удалить последнего
                else
                //if (Po > Cr.ResPoint)
                {
                    records.Remove(records[0]);
                    records.Add(new ClassResult(UserName, Po));
                    // и дописать файл новым рекордом
                    writer = fi.CreateText();
                    for (int i = 0; i < records.Count; i++)
                    {
                        Cr = (ClassResult)records[i];
                        writer.WriteLine(Cr.ResName + " " + Cr.ResPoint.ToString());
                    }
                    writer.Close();
                }
            }
        }
Exemple #2
0
        private void FormArkanoid_Load(object sender, EventArgs e)
        {
            // создание мячика и ракетки (и отрисовка на панели)
            Ball           = new ClassBall(panel1);
            Ball.BallLost += new ClassBall.BallLost_event(Ball_BallLost);
            Racket         = new ClassRacket(panel1);

            timerArkanoid.Interval = 1;

            Moving = new ClassMoving(Ball, Racket, panel1.Size);
            Moving.BallCrossing += new ClassMoving.BallCrossing_event(Moving_BallCrossing);
            Moving.ToNextLevel  += new ClassMoving.ToNextLevel_event(Moving_ToNextLevel);
            Moving.NoLevels     += new ClassMoving.NoLevels_event(Moving_NoLevels);

            // Новая игра: загрузка карты уровня - случайно
            NewGame("Случайно");
        }
        private void FormTableRecs_Load(object sender, EventArgs e)
        {
            StreamReader sr    = File.OpenText("Records.txt");
            string       input = null;

            System.Collections.ArrayList records = new System.Collections.ArrayList();

            while ((input = sr.ReadLine()) != null)
            {
                ClassResult CR = new ClassResult(ClassMoving.ToWords(input, 2)[0], Convert.ToInt32(ClassMoving.ToWords(input, 2)[1]));
                records.Add(CR);
            }
            sr.Close();
            records.Sort(ClassResult.SortByPoint);
            records.Reverse();

            for (int i = 0; i < records.Count; i++)
            {
                ClassResult CR = (ClassResult)records[i];
                dgRecords.Rows.Add(CR.ResName, CR.ResPoint);
            }
        }