public FormPatentamt(Form1 form, Gameplay party) { InitializeComponent(); myForm = form; this.party = party; s = party.ActivePlayer; }
public void Haendler_Verkaufen() { Spieler s = ActivePlayer; s.Gold += s.AktuelleAuswahl.Count(); GameManager.Discard(s.HandKarten, KomponentenAblageDeck, s.AktuelleAuswahl); s.AnzahlAktionen--; s.AktuelleAuswahl.Clear(); }
public void Veranda(int count) { Spieler s = ActivePlayer; GameManager.Deal(s.HandKarten, IdeenNachziehDeck, count); s.HandKarten = GameManager.SortCards(s.HandKarten); s.AnzahlAktionen--; }
public void Haendler_Ziehen() { Spieler s = ActivePlayer; if (KomponentenNachziehDeck.Count() <= 1) { GameManager.RefreshDrawDeck(KomponentenNachziehDeck, KomponentenAblageDeck); KomponentenNachziehDeck = GameManager.ShuffleDeck(KomponentenNachziehDeck); } GameManager.Deal(s.HandKarten, KomponentenNachziehDeck, 2); s.HandKarten = GameManager.SortCards(s.HandKarten); s.AnzahlAktionen--; }
public void Foyer_Anheuern(Karte k) { Spieler s = ActivePlayer; if (DienerNachziehDeck.Count() == 0) { GameManager.RefreshDrawDeck(DienerNachziehDeck, DienerAblageDeck); KomponentenNachziehDeck = GameManager.ShuffleDeck(DienerNachziehDeck); } GameManager.DealSpecific(s.DienerPlaettchen, DienerNachziehDeck, k); s.DienerPlaettchen = GameManager.SortCards(s.DienerPlaettchen); s.AnzahlAktionen--; s.Gold -= 2; }
public void Haendler_Kaufen(Karte k) { Spieler s = ActivePlayer; if (KomponentenNachziehDeck.Count() == 0) { GameManager.RefreshDrawDeck(KomponentenNachziehDeck, KomponentenAblageDeck); KomponentenNachziehDeck = GameManager.ShuffleDeck(KomponentenNachziehDeck); } GameManager.DealSpecific(s.HandKarten, KomponentenNachziehDeck, k); s.HandKarten = GameManager.SortCards(s.HandKarten); s.AnzahlAktionen--; s.Gold -= 2; }
public void Haendler_Tauschen() { Spieler s = ActivePlayer; //falls nicht mehr genug Nachziehkarten, dann aus Ablagestapel neu bilden und mischen if (s.AktuelleAuswahl.Count() > KomponentenNachziehDeck.Count()) { GameManager.RefreshDrawDeck(KomponentenNachziehDeck, KomponentenAblageDeck); KomponentenNachziehDeck = GameManager.ShuffleDeck(KomponentenNachziehDeck); } GameManager.Change(s.HandKarten, s.AktuelleAuswahl, KomponentenNachziehDeck, KomponentenAblageDeck); s.HandKarten = GameManager.SortCards(s.HandKarten); s.AktuelleAuswahl.Clear(); s.AnzahlAktionen--; }
public FormArbeitszimmer(Form1 form, Gameplay party, bool isAction) { InitializeComponent(); myForm = form; this.party = party; s = party.ActivePlayer; this.isAction = isAction; if (isAction) { buttonUebertragen.Enabled = true; buttonFertig.Enabled = true; } ZimmerKartenEntfernen(); ZimmerKartenAnzeigen(); }
private void InitializePlayerInfo() { for (int i = 0; i < party.Players.Count; i++) { GroupBox g = (GroupBox)panelPlayerInfo.Controls[i]; Spieler s = party.Players[i]; TableLayoutPanel t = (TableLayoutPanel)g.Controls[1]; g.Visible = true; ((Label)g.Controls[2]).Text = "Karten im Arbeitszimmer: " + s.ArbeitszimmerKarten.Count; ((Label)g.Controls[3]).Text = "Gold: " + s.Gold; ((Label)g.Controls[3]).Text = "Gold: " + s.Gold; ((Label)g.Controls[4]).Text = "Punkte: " + s.Punkte; ((Label)g.Controls[5]).Text = s.Name; InitializeFoyerTable(t); } }
public FormHaendler(Form1 form, Gameplay party) { InitializeComponent(); komponenten = new List <Image>(); komponenten.Add(Image.FromFile("Wood.jpg")); komponenten.Add(Image.FromFile("steel.png")); komponenten.Add(Image.FromFile("copper.png")); komponenten.Add(Image.FromFile("glass.jpg")); komponenten.Add(Image.FromFile("screw.jpg")); komponenten.Add(Image.FromFile("gear.png")); InitializeComponentTable(); myForm = form; this.party = party; s = party.ActivePlayer; }
private void buttonStart_Click(object sender, EventArgs e) { panelStart.Visible = false; panelActionSelect.Visible = true; party.InitializeGame( party.GameContentDb.KomponentenVorrat, party.GameContentDb.IdeenVorrat, party.GameContentDb.DienerVorrat); LabelAktionAnpassen(); RefreshBoard(); RefreshDeckInfo(); InitializePlayerInfo(); InitializeFoyerTable(tableLayoutPanelFoyer); s = party.ActivePlayer; KartenEntfernen(); }
public void Patentamt_GoldBerechnen(Idee id) { Spieler s = ActivePlayer; if (id.Patente.Count > 0) { foreach (Idee i in id.Patente) { if ((i.Erfinder != s) && (!i.PatentGeprueft)) { s.ZuZahlen += i.Patentwert; i.Erfinder.ZuErhalten += i.Patentwert; } i.PatentGeprueft = true; Patentamt_GoldBerechnen(i); } } }
private void buttonHinzufuegen_Click(object sender, EventArgs e) { if (party.Players.Count >= 4) { labelSpieleranzahlError.Text = "Es können maximal 4 Spieler spielen. Bitte starte das Spiel."; } else { Spieler neu = new Spieler(); neu.Name = textBoxSpieler.Text; party.Players.Add(neu); listBoxSpieler.Items.Add(neu); textBoxSpieler.Clear(); textBoxSpieler.Focus(); } if ((party.Players.Count >= 2) && (buttonStart.Enabled == false)) { buttonStart.Enabled = true; } }
private void buttonFertig_Click(object sender, EventArgs e) { //Bilder aus Pictureboxen entfernen und Panels unsichtbar machen KartenEntfernen(); if (party.GameEnd) { party.EndGame(); BlockAll(); labelAktionWaehlen.Text = "Spiel vorbei." + Environment.NewLine + party.Winner + "hat gewonnen!"; } else { //Nächster Spieler wird aktiver Spieler und erhält eine Aktion int activeIndex = party.Players.IndexOf(party.ActivePlayer) + 1; if (activeIndex > party.Players.Count - 1) { activeIndex = 0; } party.ActivePlayer = party.Players[activeIndex]; party.ActivePlayer.AnzahlAktionen = 1; s = party.ActivePlayer; LabelAktionAnpassen(); //Foyer unsichtbar machen bzw. clearen labelFoyer.Visible = false; tableLayoutPanelFoyer.Visible = false; FoyerEntfernen(); //Aktionen verfügbar machen buttonArbeitszimmer.Enabled = true; buttonHaendler.Enabled = true; buttonVeranda.Enabled = true; buttonPatentamt.Enabled = true; buttonFoyer.Enabled = true; } }
public bool Patentamt_KomponentenPruefen(Idee id) { Spieler s = ActivePlayer; //erst für alle Karten prüfen, ob genug vorhanden for (int kompIndex = 0; kompIndex < 6; kompIndex++) { if (s.HandKarten.Count(k => k.RefElement.GlobalIndex == kompIndex) < id.KompKosten[kompIndex]) { return(false); } } //nur wenn alle verfügbar, alle Kosten entfernen for (int kompIndex2 = 0; kompIndex2 < 6; kompIndex2++) { for (int j = 0; j < id.KompKosten[kompIndex2]; j++) { s.HandKarten.Remove(s.HandKarten.Find(k => k.RefElement.GlobalIndex == kompIndex2)); } } return(true); }
private void comboBoxSpielerAuswahl_SelectedIndexChanged(object sender, EventArgs e) { anzugreifen = (Spieler)comboBoxSpielerAuswahl.SelectedItem; buttonConfirm.Enabled = true; }