public void AddEvento(Evento ev)
 {
     eventList.Add(ev);
     if (ev.Tipo == TypeEvent.Join)
     {
         if (!PlayerList.Exists(p=>p.Id == ev.PlayerA.Id))
         {
             PlayerList.Add(ev.PlayerA);
         }
     }
 }
Beispiel #2
0
        private List<Partida> montaObjetos(string[] lines)
        {
            List<Partida> listPartida = new List<Partida>();
            Partida partida = null;
            int contPartidas = 0;

            foreach (string line in lines)
            {
                if (line.Contains("InitGame"))
                {
                    partida = new Partida() { Id = (++contPartidas).ToString() };
                    continue;
                }
                else if (line.Contains("ExitLevel:"))
                {

                    listPartida.Add(partida);
                    partida = null;
                }

                if (partida != null)
                {
                    string[] words = line.Split(';');
                    if (words[0].EndsWith("J"))
                    {
                        Evento ev = new Evento() { Tipo = TypeEvent.Join, Time = new DateTime(), PlayerA = new Player() { Id = words[1], Nome = words[3] } };
                        partida.AddEvento(ev);
                    }
                    else if (words[0].EndsWith("D") || words[0].EndsWith("K"))
                    {
                        TypeEvent typeEv = TypeEvent.Undefined;
                        if (words[0].EndsWith("D"))
                        {
                            typeEv = TypeEvent.Damage;
                        }
                        else
                        {
                            typeEv = TypeEvent.Kill;
                        }

                        Evento ev = new Evento()
                        {
                            Tipo = typeEv,
                            Time = new DateTime(),
                            PlayerA = new Player() { Id = words[1], Nome = words[4], Time = Evento.GetTime(words[3]) },
                            PlayerB = new Player() { Id = words[5], Nome = words[8], Time = Evento.GetTime(words[7]) },
                            Modificador = Evento.GetModificador(words[11]),
                            Arma = Evento.GetArma(words[9]),
                            Onde = Evento.GetOnde(words[12]),
                        };
                        partida.AddEvento(ev);
                    }
                }
            }
            return listPartida;
        }