Esempio n. 1
0
        public static void Foul_nebenereignisse(TSpiele spiel, string aoderb, int add, string mannschaft, int spielerID = 0)
        {
            try
            {
                string Spielername = "";
                if (spielerID != 0)
                {
                    Spieler sp = ClsMannschaftenControler.Spieler(spielerID);
                    Spielername = sp.Nachname + ", " + sp.Vorname;
                }

                // prüfen ob Ereignis gespeichert werden muss
                string SpielzeitStr = ClsDBVariablen.Instance.GetTextVariableWert("S08");
                if (ClsZeitkontroler.Instance.GetClockStatus(2))                 //(ClsSpielzeitControler.Instance.Nachspielzeitlaeuft)
                {
                    SpielzeitStr = SpielzeitStr + "+" + ClsDBVariablen.Instance.GetTextVariableWert("S35");
                }

                DateTime cpu = DateTime.Now;

                string freiSpielereignisse = ClsOptionsControler.Options3("Spielfreieereignisse").Value;

                if (spiel != null)
                {
                    if (spiel.Spiel != 0 || (spiel.Spiel == 0 && freiSpielereignisse == "True"))
                    {
                        TEreignisse e = new TEreignisse
                        {
                            TurnierID         = spiel.TurnierID,
                            TurnierNr         = spiel.TurnierNr,
                            Spiel             = spiel.Spiel,
                            Mannschaft        = mannschaft,
                            Spielzeit         = SpielzeitStr,
                            Spielzeitrichtung = ClsTimerControler.Timer(ClsTimerControler.TimerID(1)).Countdown.ToString(),                             //ClsOptionsControler.Options3("Spielzeitrichtung").Value,
                            CPUZeit           = DateTime.Now,
                            Ereignistyp       = "06"
                        };

                        e.Spieler        = Spielername;
                        e.Details        = add.ToString();
                        e.Spielabschnitt = ClsDBVariablen.Instance.GetBildVariableWert("S09");                         // ClsSpielzeitControler.Instance.Spielabschnitt;
                        ClsEreignisControler.AddEreignis(e);
                    }
                }

                ClsDBVariablen.Instance.SetTabellenVariableWert("T03", ClsTabellenfunktionen.EreignisseToVariable_Json(ClsGlobal.Instance.TurnierID));
                ClsDBVariablen.Instance.SetTextVariableWert("S38", spielerID.ToString());

                if (ClsGlobal.Instance.TurnierID != 0)
                {
                    //// ClsTurnierControler.SaveFoul(ClsGlobal.Instance.AktivesSpiel);
                    //// Foulstand wird bisher nicht an spiel gespeichert
                    //// Fouls werden während des spiels manchmal genullt z.B.: 5 Fouls = 1 x 7 Meter starfstoß
                }
            }
            catch (Exception ex)
            {
                ClsError.Error(Name, MethodBase.GetCurrentMethod().ToString(), ex);
            }
        }
        public static void SaveSpiel(TSpiele spiel)
        {
            try
            {
                TSpiele l;

                using (fsbDB FSBDB = new fsbDB())
                {
                    l = (from x in FSBDB.TSpiele
                         where x.ID == spiel.ID
                         select x).FirstOrDefault();

                    foreach (PropertyInfo pi in spiel.GetType().GetProperties())
                    {
                        if (pi.CanWrite)
                        {
                            pi.SetValue(l, pi.GetValue(spiel, null), null);
                        }
                    }

                    FSBDB.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                ClsError.CoreError(Name, MethodBase.GetCurrentMethod().ToString(), ex);
            }
        }
Esempio n. 3
0
        private static void SpielPunkteSpeichern(int turnierID, int spielNr)
        {
            try
            {
                TSpiele spiel = ClsTurnierControler.Spiel(turnierID, spielNr);

                // Feststellen wer gewinner ist und Punkte verteilen
                int sPunkte = Convert.ToInt32(ClsOptionsControler.Options3("Siegerpunkte").Value);
                int vPunkte = Convert.ToInt32(ClsOptionsControler.Options3("Verliererpunkte").Value);
                int uPunkte = Convert.ToInt32(ClsOptionsControler.Options3("Unentschiedenpunkte").Value);

                if (spiel.ToreA == spiel.ToreB)
                {
                    spiel.PunkteA = uPunkte;
                    spiel.PunkteB = uPunkte;
                }
                else if (spiel.ToreA < spiel.ToreB)
                {
                    spiel.PunkteA = vPunkte;
                    spiel.PunkteB = sPunkte;
                }
                else if (spiel.ToreA > spiel.ToreB)
                {
                    spiel.PunkteA = sPunkte;
                    spiel.PunkteB = vPunkte;
                }

                ClsTurnierControler.SaveSpiel(spiel);
            }
            catch (Exception ex)
            {
                ClsError.Error(Name, MethodBase.GetCurrentMethod().ToString(), ex);
            }
        }
Esempio n. 4
0
 /// <summary>
 /// Setzt ein Spiel als nächst anstehendes Spiel
 /// </summary>
 /// <param name="rb"></param>
 public static void SetNext(TSpiele spiel)
 {
     try
     {
         ClsGlobal.Instance.NextSpiel = spiel;
     }
     catch (Exception ex)
     {
         ClsError.Error(Name, MethodBase.GetCurrentMethod().ToString(), ex);
     }
 }
Esempio n. 5
0
        public static void TurnierSpeichern(ClsTurnier Turnier)
        {
            try
            {
                int turnierID = ClsTurnierControler.AddTurnierKopf(Turnier.Kopf);

                for (int i = 0; i < Turnier.Runden.Count; i++)
                {
                    TRunden t = Turnier.Runden[i];
                    t.TurnierID = turnierID;
                    if (t.Runde == 1)
                    {
                        t.status = 1;
                    }
                    ClsTurnierControler.AddRunden(t);
                }

                for (int i = 0; i < Turnier.Tabellen.Count; i++)
                {
                    TTabellen et = Turnier.Tabellen[i];
                    et.TurnierID = turnierID;
                    ClsTurnierControler.AddTabellen(et);
                }

                for (int i = 0; i < Turnier.Spiele.Count; i++)
                {
                    TSpiele er = Turnier.Spiele[i];
                    er.TurnierID = turnierID;
                    er.Datum     = "";
                    er.Uhrzeit   = "";
                    ClsTurnierControler.AddSpiele(er);
                }

                List <string> grp = (from x in Turnier.Tabellen select x.Gruppe).Distinct().ToList();
                for (int i = 0; i < grp.Count; i++)
                {
                    TGruppen gr = new TGruppen();
                    gr.TurnierID = turnierID;
                    gr.TurnierNr = 0;
                    gr.Gruppe    = grp[i];
                    gr.status    = 0;
                    gr.Runde     = Convert.ToInt32(grp[i].Substring(0, grp[i].Length - 1));
                    ClsTurnierControler.AddGruppen(gr);
                }
            }
            catch (Exception ex)
            {
                ClsError.CoreError(Name, MethodBase.GetCurrentMethod().ToString(), ex);
            }
        }
Esempio n. 6
0
        public static async void Foul_change(TSpiele spiel, string aoderb, int add, int spielerID = 0)
        {
            try
            {
                string mannschaft = string.Empty;
                switch (aoderb)
                {
                case "A":
                    if (spiel != null)
                    {
                        mannschaft = spiel.IstMannA;
                    }

                    int foul1 = Convert.ToInt32("0" + ClsDBVariablen.Instance.GetTextVariableWert("S18")) + add;

                    if (foul1 < 0)
                    {
                        foul1 = 0;
                    }

                    ClsDBVariablen.Instance.SetTextVariableWert("S18", foul1.ToString());

                    break;

                case "B":
                    if (spiel != null)
                    {
                        mannschaft = spiel.IstMannB;
                    }

                    int foul2 = Convert.ToInt32("0" + ClsDBVariablen.Instance.GetTextVariableWert("S19")) + add;

                    if (foul2 < 0)
                    {
                        foul2 = 0;
                    }

                    ClsDBVariablen.Instance.SetTextVariableWert("S19", foul2.ToString());

                    break;
                }

                await Task.Run(() => Foul_nebenereignisse(spiel, aoderb, add, mannschaft, spielerID));
            }
            catch (Exception ex)
            {
                ClsError.Error(Name, MethodBase.GetCurrentMethod().ToString(), ex);
            }
        }
Esempio n. 7
0
        public static async void Tore_change(TSpiele spiel, string aoderb, int add, int spielerID = 0)
        {
            try
            {
                string mannschaft = "";
                switch (aoderb)
                {
                case "A":
                    if (spiel != null)
                    {
                        mannschaft = spiel.IstMannA;
                    }

                    int tore1 = spiel.ToreA + add;

                    if (spiel != null)
                    {
                        spiel.ToreA = tore1;
                    }

                    ClsDBVariablen.Instance.SetTextVariableWert("S05", tore1.ToString());

                    break;

                case "B":
                    if (spiel != null)
                    {
                        mannschaft = spiel.IstMannB;
                    }

                    int tore2 = spiel.ToreB + add;

                    if (spiel != null)
                    {
                        spiel.ToreB = tore2;
                    }

                    ClsDBVariablen.Instance.SetTextVariableWert("S06", tore2.ToString());

                    break;
                }

                await Task.Run(() => Tor_nebenereignisse(spiel, aoderb, add, mannschaft, spielerID));
            }
            catch (Exception ex)
            {
                ClsError.Error(Name, MethodBase.GetCurrentMethod().ToString(), ex);
            }
        }
 public static void AddSpiele(TSpiele spiel)
 {
     try
     {
         using (fsbDB FSBDB = new fsbDB())
         {
             long newID = (from x in FSBDB.TSpiele select x.ID).DefaultIfEmpty(0).Max() + 1;
             spiel.ID = newID;
             FSBDB.TSpiele.Add(spiel);
             FSBDB.SaveChanges();
         }
     }
     catch (Exception ex)
     {
         ClsError.CoreError(Name, MethodBase.GetCurrentMethod().ToString(), ex);
     }
 }
        private static void SetSpiel0()
        {
            // Spiel 0 initialisieren
            TSpiele spiel = new TSpiele
            {
                Spiel  = 0,
                Runde  = 0,
                Gruppe = "0",
            };

            ClsGlobal.Instance.AktivesSpiel = spiel;
            ClsSpielfunktionen.SetManName("A", "Heim");
            ClsSpielfunktionen.SetManName("B", "Gast");
            ClsDBVariablen.Instance.SetTextVariableWert("S05", "0");
            ClsDBVariablen.Instance.SetTextVariableWert("S06", "0");
            ClsDBVariablen.Instance.SetTextVariableWert("S15", "Heim : Gast");
            ClsDBVariablen.Instance.SetTextVariableWert("S12", ClsFunktionen.Setspielstand());
        }
        ////public static void SaveFoul(TSpiele spiel)
        ////{
        ////    // es muss die datenbankklasse für Spiele erweitert werden
        ////    ////try
        ////    ////{
        ////    ////    TSpiele e;
        ////    ////
        ////    ////    using (fsbDB FSBDB = new fsbDB())
        ////    ////    {
        ////    ////        e = (from s in FSBDB.TSpiele where s.TurnierID == spiel.TurnierID && s.Spiel == spiel.Spiel select s).FirstOrDefault();
        ////    ////        e.FoulA = Convert.ToInt32(ClsVariablen.Instance.Foul1);
        ////    ////        e.FoulB = Convert.ToInt32(ClsVariablen.Instance.Foul2);
        ////    ////        FSBDB.SaveChanges();
        ////    ////    }
        ////    ////}
        ////    ////catch (Exception ex)
        ////    ////{
        ////    ////    ClsError.CoreError(Name, MethodBase.GetCurrentMethod().ToString(), ex);
        ////    ////}
        ////}



        public static void SaveSpielStatus(TSpiele spiel, int status)
        {
            try
            {
                TSpiele e;

                using (fsbDB FSBDB = new fsbDB())
                {
                    e = (from s in FSBDB.TSpiele
                         where s.TurnierID == spiel.TurnierID && s.Spiel == spiel.Spiel
                         select s).Single();

                    e.Status = status;
                    FSBDB.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                ClsError.CoreError(Name, MethodBase.GetCurrentMethod().ToString(), ex);
            }
        }
Esempio n. 11
0
        /// <summary>
        /// manuelles setzen von Toren und/oder beenden des Spiels
        /// </summary>
        public static void SetMatch(int SpielID, int ToreA, int ToreB, string SpielendeOpt)
        {
            TSpiele spiel = ClsTurnierControler.Spiel(SpielID);

            spiel.ToreA = ToreA;
            spiel.ToreB = ToreB;
            ClsTurnierControler.SaveSpiel(spiel);

            if (SpielendeOpt == "1")
            {
                Spiel_beenden(spiel);
            }

            if (SpielendeOpt == "2")
            {
                // nichts notwendig da Spiel offen bleiben muss
            }

            if (SpielendeOpt == "3")
            {
                Spiel_beenden(spiel, true);
            }
        }
Esempio n. 12
0
        public static void Tore_Reset(TSpiele spiel)
        {
            ClsDBVariablen.Instance.SetTextVariableWert("S05", "0");
            ClsDBVariablen.Instance.SetTextVariableWert("S06", "0");

            // Ereignis schreiben
            string SpielzeitStr = ClsDBVariablen.Instance.GetTextVariableWert("S08");

            if (ClsZeitkontroler.Instance.GetClockStatus(2))             // ClsSpielzeitControler.Instance.Nachspielzeitlaeuft)
            {
                SpielzeitStr = SpielzeitStr + "+" + ClsDBVariablen.Instance.GetTextVariableWert("S35");
            }

            DateTime cpu = DateTime.Now;

            string freiSpielereignisse = ClsOptionsControler.Options3("Spielfreieereignisse").Value;

            if (spiel.Spiel != 0 || (spiel.Spiel == 0 && freiSpielereignisse == "True"))
            {
                TEreignisse e = new TEreignisse
                {
                    TurnierID         = spiel.TurnierID,
                    TurnierNr         = spiel.TurnierNr,
                    Spiel             = spiel.Spiel,
                    Mannschaft        = "",
                    Spielzeit         = SpielzeitStr,
                    Spielzeitrichtung = ClsTimerControler.Timer(ClsTimerControler.TimerID(1)).Countdown.ToString(),                     //ClsOptionsControler.Options3("Spielzeitrichtung").Value,
                    CPUZeit           = DateTime.Now,
                    Ereignistyp       = "10",
                    Details           = spiel.ToreA.ToString() + ":" + spiel.ToreB.ToString(),
                    Spielabschnitt    = ClsDBVariablen.Instance.GetBildVariableWert("S09")
                };

                ClsEreignisControler.AddEreignis(e);
            }
        }
Esempio n. 13
0
        /// <summary>
        /// Nach Rundenplazierung die Mannschften in den Folgerunden eintragen.
        /// </summary>
        /// <param name="spiel">todo: describe spiel parameter on IstMannschaftenGegenueber</param>
        private static void IstMannschaftenGegenueber(TSpiele spiel)
        {
            try
            {
                // Gruppenübergereifende Plaetze ermitten und mannschaften in folgerunden eintragen (1ter 1ter, 2ter 1ter,...)
                int grpManAnz = ClsTurnierControler.Tabellen((int)ClsGlobal.Instance.TurnierID, spiel.Gruppe).Count;

                // So oft wie Mannschaften je Gruppe (Anzeahl der Mannschaften wird al Platzzaehler verwendet)
                for (int p = 1; p <= grpManAnz; p += 1)
                {
                    // alle Tabelleneintraege der Runde
                    List <TTabellen> erg1 = ClsTurnierControler.Tabellen((int)ClsGlobal.Instance.TurnierID, spiel.Runde);

                    // Alle x-platzierten lesen
                    List <TTabellen> erg = (from d in erg1
                                            where d.Platz == p
                                            select d).ToList();
                    if (erg != null)
                    {
                        // nach vorgaben sortieren
                        erg = ClsFunktionen.STTabellem(erg);

                        // erg enthaelt nun alle x-platzierten nach sortiervorgabe
                        int platz = 1;

                        for (int i = 0; i < erg.Count; i++)
                        {
                            string         suchstr = platz.ToString() + "ter " + p.ToString() + "ter-Runde " + spiel.Runde.ToString();
                            List <TSpiele> s0      = ClsTurnierControler.Spiele(ClsGlobal.Instance.TurnierID);
                            List <TSpiele> s1      = (from s in s0
                                                      where s.Status < 2
                                                      select s).ToList();

                            List <TSpiele> p1 = (from s in s1
                                                 where s.IstMannA == suchstr
                                                 select s).ToList();
                            if (p1.Any())
                            {
                                for (int j = 0; j < p1.Count; j++)
                                {
                                    p1[j].IstMannA = erg[i].Mannschaft;
                                    p1[j].Status   = p1[j].Status + 1;
                                    ClsTurnierControler.SaveSpiel(p1[j]);
                                }
                            }

                            List <TSpiele> p2 = (from s in s1
                                                 where s.IstMannB == suchstr
                                                 select s).ToList();
                            if (p2.Any())
                            {
                                for (int j = 0; j < p1.Count; j++)
                                {
                                    p2[j].IstMannB = erg[i].Mannschaft;
                                    p2[j].Status   = p2[j].Status + 1;
                                    ClsTurnierControler.SaveSpiel(p2[j]);
                                }
                            }

                            platz += 1;

                            // suche Tabelleneinträge der folgerunde und ersetzte Mannschftsnamen
                            List <TTabellen> tab      = ClsTurnierControler.Tabellen(ClsGlobal.Instance.TurnierID);
                            TTabellen        gefunden = (from x in tab
                                                         where x.Mannschaft == suchstr
                                                         select x).FirstOrDefault();
                            if (gefunden != null)
                            {
                                gefunden.Mannschaft = erg[i].Mannschaft;
                                ClsTurnierControler.SaveTabellen(gefunden);
                            }
                        }

                        ClsDBVariablen.Instance.SetTabellenVariableWert("T02", ClsTabellenfunktionen.SpielplanToVariable_Json(ClsGlobal.Instance.TurnierID));
                    }
                }
            }
            catch (Exception ex)
            {
                ClsError.Error(Name, MethodBase.GetCurrentMethod().ToString(), ex);
            }
        }
Esempio n. 14
0
        /// <summary>
        /// Spielendebehandlung
        /// </summary>
        /// <param name="spiel"></param>
        /// <param name="beidenichts"></param>
        /// <returns></returns>
        public static int Spiel_beenden(TSpiele spiel, bool beidenichts = false)
        {
            try
            {
                bool rundenwechsel = false;
                if (beidenichts == false)
                {
                    // wenn nur 2 Mannschaften in Gruppe dann Unentschieden nicht erlaubt
                    List <TSpiele> sl1      = ClsTurnierControler.Spiele(ClsGlobal.Instance.TurnierID);
                    int            anzGrMan = (from TSpiele tee in sl1
                                               where tee.Gruppe == spiel.Gruppe
                                               select tee).Count();

                    if (anzGrMan == 1 && spiel.ToreA == spiel.ToreB)
                    {
                        ClsMessage.SendMessage("In dieser Gruppe ist kein Unentschieden erlaubt.\nSpiel nicht beendet.", "Geht nicht...");
                        ////ClsTranslateControls.ShowMessage("M0016", "Meldung", new object[] { "\n" }, MessageBoxButtons.OK);
                        return(0);
                    }
                }

                // Spiel beenden
                if (beidenichts == false)
                {
                    ClsTurnierControler.SaveSpielStatus(spiel, 3);
                }
                else
                {
                    ClsTurnierControler.SaveSpielStatus(spiel, 4);
                }

                ClsDBVariablen.Instance.SetTabellenVariableWert("T02", ClsTabellenfunktionen.SpielplanToVariable_Json(ClsGlobal.Instance.TurnierID));

                // Punkte vergeben
                if (beidenichts == false)
                {
                    SpielPunkteSpeichern(ClsGlobal.Instance.TurnierID, spiel.Spiel);
                }

                // Tabelle berechnen
                TabCalc(ClsGlobal.Instance.TurnierID, spiel.Gruppe);

                // prüfen ob Spiel um platz wenn ja, platz in Tabelle eintragen
                TKopf tkk = ClsTurnierControler.Turnier(ClsGlobal.Instance.TurnierID);
                if (tkk.Platzierungstyp == "P")
                {
                    if (spiel.SPlatz != 0)
                    {
                        if (spiel.ToreA > spiel.ToreB)
                        {
                            SaveTabellenplatz(spiel.Gruppe, spiel.IstMannA, spiel.SPlatz);
                        }
                        else if (spiel.ToreA < spiel.ToreB)
                        {
                            SaveTabellenplatz(spiel.Gruppe, spiel.IstMannB, spiel.SPlatz);
                        }
                    }

                    if (spiel.VPlatz != 0)
                    {
                        if (spiel.ToreA > spiel.ToreB)
                        {
                            SaveTabellenplatz(spiel.Gruppe, spiel.IstMannB, spiel.VPlatz);
                        }
                        else if (spiel.ToreA < spiel.ToreB)
                        {
                            SaveTabellenplatz(spiel.Gruppe, spiel.IstMannA, spiel.VPlatz);
                        }
                    }
                }

                // Prüfen ob alle Spiele der Gruppe beendet sind
                List <TSpiele> spiele1 = ClsTurnierControler.Spiele(ClsGlobal.Instance.TurnierID, spiel.Gruppe);
                int            g       = (from grp in spiele1
                                          where grp.Status < 3
                                          select grp).Count();
                if (g == 0)
                {
                    // Gruppe abgeschlossen

                    // wenn alle Spiele beendet dann Gruppe als beendet buchen
                    ClsTurnierControler.SaveGruppenStatus(ClsGlobal.Instance.TurnierID, spiel.Gruppe, 3);

                    // Mannschaften in folgerunden eintragen
                    IstMannschaftenGI(spiel.Gruppe);

                    // prüfen ob alle gruppen in Runde beendet
                    List <TSpiele> spiele = ClsTurnierControler.Spiele(ClsGlobal.Instance.TurnierID, spiel.Runde);
                    int            r      = (from x in spiele
                                             where x.Status < 3
                                             select x).Count();
                    if (r == 0)
                    {
                        rundenwechsel = true;

                        // Runde als beendet buchen
                        ClsTurnierControler.SaveRundenStatus(ClsGlobal.Instance.TurnierID, GetActualRoundNo(ClsGlobal.Instance.TurnierID), 3);

                        // istmanschaften bei Gruppenübergereifender Folgerunde
                        IstMannschaftenGegenueber(spiel);

                        // wenn Folgerunde existent
                        if (tkk.Matrix != "AdHoc")
                        {
                            int rundenAnz = ClsTurnierControler.Runden(ClsGlobal.Instance.TurnierID).Count;
                            if (spiel.Runde < rundenAnz)
                            {
                                int neueRunde = spiel.Runde;
                                neueRunde += 1;
                                ClsDBVariablen.Instance.SetTextVariableWert("S17", neueRunde.ToString());
                                // ClsLocalisationFunctions.Keytext("Text", "01") + " " + runde;
                                ClsMessage.SendMessage("Runde beendet", "rundenwechsel...");
                                ClsTurnierControler.SaveRundenStatus(ClsGlobal.Instance.TurnierID, neueRunde, 1);
                            }
                        }
                    }

                    // prüfen ob alle Spiele in allen Runden in Turnier beendet
                    List <TSpiele> spiele3 = ClsTurnierControler.Spiele(ClsGlobal.Instance.TurnierID);
                    int            ts      = (from grp in spiele3
                                              where grp.Status < 3
                                              select grp).Count();

                    if (ts == 0)
                    {
                        ClsTurnierControler.SaveTurnierStatus(ClsGlobal.Instance.TurnierID, 3);

                        // ClsFunktionen.fillTreeViewdetails( turniernr, tvBrowser);
                        ClsMessage.SendMessage("Turnier beendet.", "Geschaft...");
                        ////ClsTranslateControls.ShowMessage("M0017", "Meldung", new object[] { "\n" }, MessageBoxButtons.OK);
                    }
                }

                ClsDBVariablen.Instance.SetTabellenVariableWert("T01", ClsTabellenfunktionen.TabelleToVariable_Json(ClsGlobal.Instance.TurnierID));
                if (rundenwechsel == true)
                {
                    return(2);
                }

                return(1);
            }
            catch (Exception ex)
            {
                ClsError.Error(Name, MethodBase.GetCurrentMethod().ToString(), ex);
                return(0);
            }
        }
Esempio n. 15
0
 public static void DownChange(TSpiele spiel, bool add, bool nullen = false, bool autoevent = false)
 {
 }
Esempio n. 16
0
        public static void TimeOutLeftChange(TSpiele spiel, string aoderb, string wert, bool nullen = false)
        {
            try
            {
                string mannschaft = string.Empty;
                switch (aoderb)
                {
                case "A":
                    if (spiel != null)
                    {
                        mannschaft = spiel.IstMannA;
                    }

                    ClsDBVariablen.Instance.SetTextVariableWert("S39", wert);

                    break;

                case "B":
                    if (spiel != null)
                    {
                        mannschaft = spiel.IstMannB;
                    }

                    ClsDBVariablen.Instance.SetTextVariableWert("S40", wert);

                    break;
                }

                // prüfen ob Ereignis gespeichert werden muss
                string SpielzeitStr = ClsDBVariablen.Instance.GetTextVariableWert("S08");
                if (ClsZeitkontroler.Instance.GetClockStatus(2))                 //(ClsSpielzeitControler.Instance.Nachspielzeitlaeuft)
                {
                    SpielzeitStr = SpielzeitStr + "+" + ClsDBVariablen.Instance.GetTextVariableWert("S35");
                }

                DateTime cpu = DateTime.Now;

                string freiSpielereignisse = ClsOptionsControler.Options3("Spielfreieereignisse").Value;

                if (spiel != null)
                {
                    if (spiel.Spiel != 0 || (spiel.Spiel == 0 && freiSpielereignisse == "True"))
                    {
                        TEreignisse e = new TEreignisse();
                        e.TurnierID         = spiel.TurnierID;
                        e.TurnierNr         = spiel.TurnierNr;
                        e.Spiel             = spiel.Spiel;
                        e.Mannschaft        = mannschaft;
                        e.Spielzeit         = SpielzeitStr;
                        e.Spielzeitrichtung = ClsTimerControler.Timer(ClsTimerControler.TimerID(1)).Countdown.ToString();                         //ClsOptionsControler.Options3("Spielzeitrichtung").Value;
                        e.CPUZeit           = DateTime.Now;
                        e.Ereignistyp       = "16";

                        if (nullen)
                        {
                            e.Mannschaft  = string.Empty;
                            e.Ereignistyp = "17";
                        }

                        e.Spieler        = "";
                        e.Details        = wert;
                        e.Spielabschnitt = ClsDBVariablen.Instance.GetBildVariableWert("S09");                         // ClsSpielzeitControler.Instance.Spielabschnitt;
                        ClsEreignisControler.AddEreignis(e);
                    }
                }

                // update der Ereignistabelle
                ClsDBVariablen.Instance.SetTabellenVariableWert("T03", ClsTabellenfunktionen.EreignisseToVariable_Json(ClsGlobal.Instance.TurnierID));
            }
            catch (Exception ex)
            {
                ClsError.Error(Name, MethodBase.GetCurrentMethod().ToString(), ex);
            }
        }
Esempio n. 17
0
 public static void YardsToGoChange(TSpiele spiel, bool add, bool nullen = false, bool autoevent = false)
 {
 }
        public static int LoadTurnier(int turnierID)
        {
            try
            {
                TKopf k = ClsTurnierControler.Turnier(turnierID);
                if (k == null)
                {
                    k           = new TKopf();
                    k.TurnierNr = 0;
                }

                ClsDBVariablen.Instance.SetTextVariableWert("S13", k.TurnierNr.ToString());

                if (turnierID == 0)
                {
                    // Turniername auf "freies Spielen" setzen
                    ClsDBVariablen.Instance.SetTextVariableWert("S14", "freies Spielen");

                    // Spiel 0 initialisieren
                    SetSpiel0();

                    // Spiel next initialisieren
                    TSpiele nextspiel = null;
                    ClsGlobal.Instance.NextSpiel = nextspiel;
                    ClsDBVariablen.Instance.SetTextVariableWert("S16", "");
                    ClsDBVariablen.Instance.SetTextVariableWert("S48", "0");                     // Runde_next
                    ClsDBVariablen.Instance.SetTextVariableWert("S49", "0");                     // Gruppe_next
                    ClsDBVariablen.Instance.SetTextVariableWert("S50", "0");                     // Spiel_next

                    // Spielabschnitt auf 1 setzten
                    ClsSpielAbschnittControler.Instance.Spielabschnitt = 1;

                    // Zeiten initialisieren
                    ClsZeitkontroler.Instance.ResetAlleUhren();

                    // Tabellenvariablen füllen
                    Turnierwechsel(turnierID);

                    return(0);
                }

                // prüfen ob turnier bereits beendet
                if (k.status == 3)
                {
                    // MessageBox.Show("Turnier ist bereits beendet und kann nicht geladen werden.", "Meldung...");
                    ////ClsTranslateControls.ShowMessage("M0014", "Meldung", new object[] { "\n" }, MessageBoxButtons.OK);
                    ClsDBVariablen.Instance.SetTextVariableWert("S48", "");                     // Runde_next
                    ClsDBVariablen.Instance.SetTextVariableWert("S49", "");                     // Gruppe_next
                    ClsDBVariablen.Instance.SetTextVariableWert("S50", "");                     // Spiel_next
                }

                // neues Turnier laden
                // tk - TurnierKopf
                TKopf tkk = ClsTurnierControler.Turnier(turnierID);
                if (tkk != null)
                {
                    // tk.Add(tkk);
                    ClsDBVariablen.Instance.SetTextVariableWert("S14", tkk.Beschreibung);
                }

                // aktuelle Runde ermitteln
                List <TRunden> runden = ClsTurnierControler.Runden(turnierID);
                int            runde  = (from r in runden
                                         where r.TurnierID == ClsGlobal.Instance.TurnierID && r.status == 1
                                         select r.Runde).FirstOrDefault();

                // Naechste Begegnungen
                ClsSpielfunktionen.SetNext(ClsSpielfunktionen.FindNext(0, turnierID));


                // aktives spiel auf null setzen
                ClsGlobal.Instance.AktivesSpiel = null;

                // Tabellenvariablen füllen
                Turnierwechsel(turnierID);

                return(0);
            }
            catch (Exception ex)
            {
                ClsError.Error(Name, MethodBase.GetCurrentMethod().ToString(), ex);
                return(0);
            }
        }
Esempio n. 19
0
        private static void Tor_nebenereignisse(TSpiele spiel, string aoderb, int add, string mannschaft, int spielerID)
        {
            try
            {
                ClsDBVariablen.Instance.SetTextVariableWert("S12", ClsFunktionen.Setspielstand());

                // spiel speichern
                if (spiel != null)
                {
                    if (spiel.Spiel != 0)
                    {
                        ClsTurnierControler.SaveSpiel(ClsGlobal.Instance.AktivesSpiel);
                    }
                }

                // prüfen ob Ereignis gespeichert werden muss
                string SpielzeitStr = ClsDBVariablen.Instance.GetTextVariableWert("S08");
                if (ClsZeitkontroler.Instance.GetClockStatus(2))                 // ClsSpielzeitControler.Instance.Nachspielzeitlaeuft)
                {
                    SpielzeitStr = SpielzeitStr + "+" + ClsDBVariablen.Instance.GetTextVariableWert("S35");
                }

                DateTime cpu = DateTime.Now;

                string freiSpielereignisse = ClsOptionsControler.Options3("Spielfreieereignisse").Value;


                string Spielername = "";
                if (spielerID != 0)
                {
                    Spieler spieler = ClsMannschaftenControler.Spieler(spielerID);
                    Spielername = spieler.Nachname + ", " + spieler.Vorname;
                }

                if (spiel.Spiel != 0 || (spiel.Spiel == 0 && freiSpielereignisse == "True"))
                {
                    TEreignisse e = new TEreignisse
                    {
                        TurnierID         = spiel.TurnierID,
                        TurnierNr         = spiel.TurnierNr,
                        Spiel             = spiel.Spiel,
                        Mannschaft        = mannschaft,
                        Spieler           = Spielername,
                        Spielzeit         = SpielzeitStr,
                        Spielzeitrichtung = ClsTimerControler.Timer(ClsTimerControler.TimerID(1)).Countdown.ToString(),                         //ClsOptionsControler.Options3("Spielzeitrichtung").Value,
                        CPUZeit           = DateTime.Now,
                        Ereignistyp       = "05"
                    };


                    ClsEreignisControler.AddEreignis(e);
                }

                // update der Ereignistabelle
                ClsDBVariablen.Instance.SetTabellenVariableWert("T03", ClsTabellenfunktionen.EreignisseToVariable_Json(ClsGlobal.Instance.TurnierID));

                // update der Torschützentabelle
                ClsTabellenfunktionen.TorschuetzeToVariable(ClsGlobal.Instance.TurnierID);

                // einstellen des Torschützen als aktive gewählten Spieler
                ClsDBVariablen.Instance.SetTextVariableWert("S38", spielerID.ToString());

                // prüfen ob ein Torton abgespielt werden soll
                if (add > 0)
                {
                    string torton = string.Empty;

                    if (ClsOptionsControler.Options3("individualTorsound").Value != "True")
                    {
                        torton = ClsOptionsControler.Options3("Tor").Value;
                    }
                    else
                    {
                        DB.Mannschaften m = new DB.Mannschaften();
                        if (aoderb == "A")
                        {
                            m = ClsMannschaftenControler.Mannschaft(spiel.IstMannA);
                        }
                        else
                        {
                            m = ClsMannschaftenControler.Mannschaft(spiel.IstMannB);
                        }

                        if (m != null)
                        {
                            torton = m.Torton;
                        }
                    }

                    if (torton != string.Empty)
                    {
                        ClsSoundplayer.Instance.TPlay(torton + "|" + "30");
                    }
                }
            }
            catch (Exception ex)
            {
                ClsError.Error(Name, MethodBase.GetCurrentMethod().ToString(), ex);
            }
        }