コード例 #1
0
        /// <summary>
        /// "Hjerteslaget" - metoden som kaldet i et loop hver gang der skal slås med terningerne
        /// </summary>
        public void Næste()
        {
            if (antalSlagIAlt == 0)
            {
                StartHændelse?.Invoke(this, new YatzySpilEventArgs {
                    Spil = this
                });
            }

            if (AktuelSpillerAntalSlag < 3)
            {
                AktuelSpillerAntalSlag++;
                antalSlagIAlt++;
                Bæger.Ryst();
            }
            else
            {
                Bæger.FjernHoldFraAlleTerninger();
                Bæger.Ryst();
                AktuelSpillerAntalSlag = 1;
                int index = Spillere.IndexOf(AktuelSpiller);
                if (index < Spillere.Count() - 1)
                {
                    AktuelSpiller = Spillere[index + 1];
                }
                else
                {
                    AktuelSpiller = Spillere[0];
                }
            }

            NæsteHændelse?.Invoke(this, new YatzySpilEventArgs {
                Spil = this
            });

            if (S**t())
            {
                SlutHændelse?.Invoke(this, new YatzySpilEventArgs {
                    Spil = this
                });
            }
        }
コード例 #2
0
        private void addaddon(string filename, string line)
        {
            string addonname = line.Split(new[] { ':' })[0].Trim();
            string toggled   = line.Split(new[] { ':' })[1].Trim();

            string[] parts       = filename.Split(new[] { '\\' });
            string   spillernavn = parts[parts.Count() - 2];

            // Har vi allerede spillernavnet på listen? I så fald find indekset
            int i = -1;

            foreach (spiller sp in Spillere)
            {
                if (sp.name == spillernavn)
                {
                    i = Spillere.IndexOf(sp);
                    break;
                }
            }

            // Opret spilleren på listen og returner indekset.
            if (i == -1)
            {
                i = Spillere.Count();
                var chr = new spiller();
                chr.name     = spillernavn;
                chr.filename = filename;
                chr.index    = i;
                Spillere.Add(chr);
            }

            bool      opdatering;
            AddOnData add;

            TilføjAddon(addonname, out opdatering, out add);

            switch (i)
            {
            case 0:
                add.enabled0 = (toggled == "enabled");
                break;

            case 1:
                add.enabled1 = (toggled == "enabled");
                break;

            case 2:
                add.enabled2 = (toggled == "enabled");
                break;

            case 3:
                add.enabled3 = (toggled == "enabled");
                break;

            case 4:
                add.enabled4 = (toggled == "enabled");
                break;

            case 5:
                add.enabled5 = (toggled == "enabled");
                break;

            case 6:
                add.enabled6 = (toggled == "enabled");
                break;

            case 7:
                add.enabled7 = (toggled == "enabled");
                break;

            case 8:
                add.enabled8 = (toggled == "enabled");
                break;

            case 9:
                add.enabled9 = (toggled == "enabled");
                break;

            case 10:
                add.enabled10 = (toggled == "enabled");
                break;

            case 11:
                add.enabled11 = (toggled == "enabled");
                break;

            default:
                break;
            }

            if (!opdatering)
            {
                add.indeks = SortAddOnCollection.Count();
                SortAddOnCollection.Add(add);
            }
        }