예제 #1
0
        public bool AreUnderJudging = false; // När domarna har röstat klart -> ändra till true

        //MedlemsFunktioner
        public void add_contender(Contender con)    //ej klarat test
        {                                           //Adderar en deltagare i en lista fylld med andra deltagare-objekt
            ContenderList.Add(con);
        }
예제 #2
0
        private void buttonStartContest_Click(object sender, EventArgs e)   // hämtar all tävlingsinformation och lägger det i contest objekt till judgeclient
        {
            Contest _contest = new Contest();
            int     underJudging;
            int     contestFinished = 0;
            String  infoStringforJudges = String.Empty, PointString = String.Empty;

            if (File.Exists(contestComboBox.Text + ".txt"))
            {
                string firstline;
                using (StreamReader sr = new StreamReader(contestComboBox.Text + ".txt"))
                {
                    firstline = sr.ReadLine();
                    string[] holder = firstline.Split(';');
                    underJudging    = Convert.ToInt32(holder[4]);
                    contestFinished = Convert.ToInt32(holder[5]);
                }
                if (underJudging == 0 && contestFinished == 0)
                {
                    using (StreamReader sr = new StreamReader(contestComboBox.Text + ".txt"))
                    {
                        string line = "";
                        line = sr.ReadLine();
                        string[] holder = line.Split(';');
                        _contest.Name          = holder[0];
                        _contest.Date          = holder[1];
                        _contest.GenderContest = holder[2];
                        _contest.Jumpheight    = Convert.ToInt32(holder[3]);
                        underJudging           = Convert.ToInt32(holder[4]);
                        contestFinished        = Convert.ToInt32(holder[5]);

                        while ((line = sr.ReadLine()) != null && line.CompareTo("") != 0)
                        {
                            Contender _contender = new Contender();
                            holder                 = line.Split(';');
                            _contender.Name        = holder[0];
                            _contender.Id          = Convert.ToInt32(holder[1]);
                            _contender.Nationality = holder[2];
                            for (int i = 3; i < holder.Length; i = i + 2)
                            {
                                Jump _jump = new Jump();
                                _jump.Jumpstyle      = holder[i];
                                _jump.jumpDifficulty = double.Parse(holder[i + 1], CultureInfo.InvariantCulture);
                                _contender.add_jump(_jump);
                            }
                            _contest.add_contender(_contender);
                        }
                        _contest.printContest();
                    }
                    string[] lines = File.ReadAllLines(contestComboBox.Text + ".txt");
                    using (StreamWriter sw = new StreamWriter(contestComboBox.Text + ".txt"))
                    {
                        string[] holder = firstline.Split(';');
                        holder[5] = "1";
                        for (int i = 0; i < lines.Length; i++)
                        {
                            if (i == 0)
                            {
                                sw.WriteLine(holder[0] + ";" + holder[1] + ";" + holder[2] + ";" + holder[3] + ";" + holder[4] + ";" + holder[5]);
                            }
                            else
                            {
                                sw.WriteLine(lines[i]);
                            }
                        }
                    }
                    HandleTcpClient.TcpServer server = HandleTcpClient.TcpServer.Instance(); // mio Startar servern och börjar lyssna efter domarklienter

                    StartContest start = new StartContest();
                    while (contestFinished == 0) //När tävlingen är avslutad skickar funktionen ut en etta för att avbryta while loopen.
                    {
                        contestFinished = start.gogogo(server, _contest, infoStringforJudges, PointString, contestFinished);
                    }
                }
                else if (underJudging == 1)
                {
                    MessageBox.Show("Tävlingen pågår redan", "Starta tävling", MessageBoxButtons.OK);
                }
                else if (contestFinished == 1)
                {
                    MessageBox.Show("Tävlingen är redan avslutad", "Starta tävling", MessageBoxButtons.OK);
                }
                else
                {
                    MessageBox.Show("Tävling finns inte", "Starta tävling", MessageBoxButtons.OK);
                }
            }
        }