static void Main(string[] args) { Bæger b = new Bæger(); b.Tilføj(new YatzyTerning()); b.Tilføj(new LudoTerning()); LudoTerning e = b.Terninger()[1] as LudoTerning; Console.WriteLine(e.ErGlobus()); Bæger1 <LudoTerning> b1 = new Bæger1 <LudoTerning>(); b1.Tilføj(new LudoTerning()); b1.Tilføj(new LudoTerning()); //b1.Tilføj(new YatzyTerning()); --Vil fejle, da Bæger1 er generisk LudoTerning e1 = b1.Terninger()[1]; Console.WriteLine(e1.ErGlobus()); if (System.Diagnostics.Debugger.IsAttached) { Console.Write("Press any key to continue . . . "); Console.ReadKey(); } }
/// <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 }); } }
public void GivPoint(string mulighed, Bæger bæger) //Tager teksten fra combo-boksen og laver den om til bægerets antal øjne { switch (mulighed) { case "1'ere": enere.Text = OpdaterDelSum(bæger.Point1ere()); //delsummen opdateres hver gang point1'erne sættes break; case "2'ere": toere.Text = OpdaterDelSum(bæger.Point2ere()); break; case "3'ere": treere.Text = OpdaterDelSum(bæger.Point3ere()); break; case "4'ere": fireere.Text = OpdaterDelSum(bæger.Point4ere()); break; case "5'ere": femmere.Text = OpdaterDelSum(bæger.Point5ere()); break; case "6'ere": seksere.Text = OpdaterDelSum(bæger.Point6ere()); break; case "1 Par": etpar.Text = OpdaterSum(bæger.Point1par()); break; case "2 Par": topar.Text = OpdaterSum(bæger.Point2par()); break; case "3 Ens": treens.Text = OpdaterSum(bæger.Point3ens()); break; case "4 Ens": fireens.Text = OpdaterSum(bæger.Point4ens()); break; case "Lille Straight": Lille.Text = OpdaterSum(bæger.PointLille()); break; case "Stor Straight": Stor.Text = OpdaterSum(bæger.PointStor()); break; case "Fuldt Hus": Hus.Text = OpdaterSum(bæger.PointHus()); break; case "Chancen": Chancen.Text = OpdaterSum(bæger.PointChancen()); break; case "Yatzy": Yatzy.Text = OpdaterSum(bæger.PointYatzy()); break; } }
public MainWindow() : base(Gtk.WindowType.Toplevel) { Build(); //Automatisk kommet - bygger GUI op //Her begynder festen bæger = new Bæger(new global::Gtk.Entry[] { Terning1, Terning2, Terning3, Terning4, Terning5 }, new global::Gtk.CheckButton[] { HoldTerning1, HoldTerning2, HoldTerning3, HoldTerning4, HoldTerning5 }); //Vi bruger to lister til at adskille tekstfelterne og Hold-boksene Spiller1 = new YatzySpiller(NavnSpiller1, enereSpiller1, toereSpiller1, treensSpiller1, fireensSpiller1, femmereSpiller1, seksereSpiller1, DelSumSpiller1, BonusSpiller1, etparSpiller1, toparSpiller1, treensSpiller1, fireensSpiller1, LilleSpiller1, StorSpiller1, HusSpiller1, ChancenSpiller1, YatzySpiller1, SumSpiller1); //Vi kobler spillerne på felterne. Felterne er variabler (indeholder data) Spiller2 = new YatzySpiller(NavnSpiller2, enereSpiller2, toereSpiller2, treensSpiller2, fireensSpiller2, femmereSpiller2, seksereSpiller2, DelSumSpiller2, BonusSpiller2, etparSpiller2, toparSpiller2, treensSpiller2, fireensSpiller2, LilleSpiller2, StorSpiller2, HusSpiller2, ChancenSpiller2, YatzySpiller2, SumSpiller2); //Det samme Spiller3 = new YatzySpiller(NavnSpiller3, enereSpiller3, toereSpiller3, treensSpiller3, fireensSpiller3, femmereSpiller3, seksereSpiller3, DelSumSpiller3, BonusSpiller3, etparSpiller3, toparSpiller3, treensSpiller3, fireensSpiller3, LilleSpiller3, StorSpiller3, HusSpiller3, ChancenSpiller3, YatzySpiller3, SumSpiller3); //Det samme setSpiller(1); // Spiller 1 er den første spiller }