Exemple #1
0
        public void Remove(Team teamToDelete)
        {
            //return; //TEAM INDEXES UPDATE AFTER DELETION!!!!!
            sbyte teamIndex = (sbyte)AllTeams.FindIndex(delegate(Team t) { return(t == teamToDelete); });

            AllTeams.Remove(teamToDelete);
            //TeamClumps.FindAll(delegate (CompetingModels CM) { return CM.Teams().Count == 0; }).ForEach(delegate (CompetingModels CM) { TeamClumps.Remove(CM); });
            //GenerateTeamSets();



            TeamClumps.ForEach(delegate(CompetingModels CM)
            {
                while (CM.TeamSets.Find(delegate(TeamSet TS) { return(TS.Set.ToList().Contains(teamIndex)); }) != null)
                {
                    CM.TeamSets.Remove(CM.TeamSets.Find(delegate(TeamSet TS) { return(!TS.First.Enabled && !TS.Second.Enabled && !TS.Third.Enabled); }));
                    //return;
                }
                //delete all empty clumps
                while (CM.TeamSets.Find(delegate(TeamSet TS) { return(!TS.First.Enabled && !TS.Second.Enabled && !TS.Third.Enabled); }) != null)
                {
                    CM.TeamSets.Remove(CM.TeamSets.Find(delegate(TeamSet TS) { return(!TS.First.Enabled && !TS.Second.Enabled && !TS.Third.Enabled); }));
                    //return;
                }
            });
        }
Exemple #2
0
        public void Add(Team Team)
        {
            AllTeams.Add(Team);
            var TC = TeamClumps.Find(delegate(CompetingModels CM) { return(CM.CompetingModel == Team.ModelName); });

            if (TC == null)
            {
                TeamClumps.Add(new CompetingModels()
                {
                    CompetingModel = Team.ModelName
                });
            }
            //FO IT SMALLER
            bool Added = false;

            if (Team.CM == null)
            {
                return;
            }
            foreach (var TS in Team.CM.TeamSets)
            {
                if (TS.First.Enabled && TS.Second.Enabled && TS.Third.Enabled)
                {
                    continue;
                }
                //bool HasSameP = false;
                foreach (var T in TS.GetAsList())
                {
                    if (!T.Enabled)
                    {
                        continue;
                    }
                    if (!T.HasSameParticipant(Team))
                    {
                        TS.Add(T);
                        Added = true;
                        //HasSameP = true;
                    }
                }
                if (!Added)
                {
                    Team.CM.TeamSets.Add(new TeamSet()
                    {
                        First = Team
                    });
                }
            }
            //GenerateTeamSets();
        }