/// <summary> /// Yritetään luoda uusi peli. Estetään asetusten /// muuttaminen ja näytetään odotuspaneli. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button1_Click(object sender, EventArgs e) { buttonPois.Visible = false; buttonLuoPeli.Visible = false; buttonPeruutaLuonti.Visible = true; progressBarYhdistys.MarqueeAnimationSpeed = 80; panelYhdistys.Visible = true; buttonLuoPeli.Visible = false; numerovalitsinLeveys.Klikattavissa = false; numerovalitsinKorkeus.Klikattavissa = false; numerovalitsinPortti.Klikattavissa = false; numerovalitsinVoittopituus.Klikattavissa = false; yhteys = new Liikenne(); //yhteysTemp.Alustusviestit = alustukset; yhteys.Palvelin = true; yhteys.avattu += new Yhteys(yhteys_avattu); yhteys.yhdistysEiOnnistu += new Yhteys(yhteys_eiOnnistu); yhteys.Portti = numerovalitsinPortti.Arvo; labelInfoYhdistetaan.Text = "Peli luotu osoitteeseen " + yhteys.palautaIP() + ", odotetaan yhteyttä..."; String virhe = yhteys.aloitaYhteys(); if (virhe != null) { paivitaTieto("virhe: " + virhe); nollaa(); } }
/// <summary> /// Luodaan uusi peli. Näytetään pelinluonti-ikkuna. /// Ikkunan sulkeutumisen jälkeen luodaan peli ikkunan /// nettiliikennekomponentin avulla. Jos ikkunan /// Katkaise-property on true, ei luoda peliä. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonLuoUusiPeli_Click(object sender, EventArgs e) { FormLuoPeli luonti = new FormLuoPeli(); luonti.Korkeus = Properties.Settings.Default.pituus; luonti.Leveys = Properties.Settings.Default.leveys; luonti.Voittorivi = Properties.Settings.Default.voittopituus; luonti.Portti = Properties.Settings.Default.portti; luonti.ShowDialog(); if (luonti.Yhteys == null) { return; } if (!luonti.Yhteys.Yhdistetty) { return; // keskeytetty katkaisu.... } nettiliikenne = luonti.Yhteys; nettiliikenne.Kanavat = kanavat; //Ensimmäinen viesti, joka sisältää kentän koon nettiliikenne.lahetaViesti("A" + VERSIO + "|" + textBoxNimi.Text + "|" + luonti.Voittorivi + ":" + luonti.Leveys + ":" + luonti.Korkeus, "protokolla"); nettiliikenne.uusiViesti += new Viesti(nettiliikenne_uusiViesti); nettiliikenne.LukuSeis = false; ristikkoPeliristikko.Vuorossa = true; labelInfo.Text = "Vuorossa: " + textBoxNimi.Text; alustaPeli(luonti.Korkeus, luonti.Leveys, luonti.Voittorivi); }
/// <summary> /// Peruutetaan yhteyden odottaminen. Toteutetaan /// siten, että luodaan uusi yhteys, joka suljetaan /// heti. Muutetaan tämän jälkeen katkaisumuuttuja /// trueksi. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonPeruutaLuonti_Click(object sender, EventArgs e) { paivitaTieto("peruutetaan luonti..."); katkaise = true; Liikenne nettiperuutus = new Liikenne(); nettiperuutus.Palvelin = false; nettiperuutus.Portti = numerovalitsinPortti.Arvo; nettiperuutus.Osoite = "127.0.0.1"; nettiperuutus.aloitaYhteys(); nettiperuutus.suljeYhteys(); }
/// <summary> /// Avataan peliinliittymisikkuna. Ikkuna sisältää mahdollisen /// luodun yhteyden. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonLiityPeliin_Click(object sender, EventArgs e) { FormLiity yhdistys = new FormLiity(); yhdistys.Portti = this.portti; yhdistys.Ip = this.ip; yhdistys.ShowDialog(); if (yhdistys.Yhteys == null) return; nettiliikenne = yhdistys.Yhteys; nettiliikenne.Kanavat = kanavat; nettiliikenne.uusiViesti += new Viesti(nettiliikenne_uusiViesti); nettiliikenne.LukuSeis = false; ristikkoPeliristikko.Vuorossa = false; }
/// <summary> /// Avataan peliinliittymisikkuna. Ikkuna sisältää mahdollisen /// luodun yhteyden. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonLiityPeliin_Click(object sender, EventArgs e) { FormLiity yhdistys = new FormLiity(); yhdistys.Portti = this.portti; yhdistys.Ip = this.ip; yhdistys.ShowDialog(); if (yhdistys.Yhteys == null) { return; } nettiliikenne = yhdistys.Yhteys; nettiliikenne.Kanavat = kanavat; nettiliikenne.uusiViesti += new Viesti(nettiliikenne_uusiViesti); nettiliikenne.LukuSeis = false; ristikkoPeliristikko.Vuorossa = false; }
/// <summary> /// Yritetään yhdistää lomakkeen tietojen mukaisesti /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonYhdista_Click(object sender, EventArgs e) { labelInfoYhdistetaan.Visible = true; labelInfoYhdistetaan.Text = "yhdistetään..."; progressBarYhdistys.MarqueeAnimationSpeed = 80; panelYhdistys.Visible = true; textBoxIPosoite.ReadOnly = true; numerovalitsinPortti.Klikattavissa = false; buttonYhdista.Visible = false; yhteys = new Liikenne(); yhteys.avattu += new Yhteys(yhteys_avattu); yhteys.yhdistysEiOnnistu += new Yhteys(yhteys_eiOnnistu); yhteys.Osoite = textBoxIPosoite.Text; yhteys.Portti = numerovalitsinPortti.Arvo; String virhe = yhteys.aloitaYhteys(); }
/// <summary> /// Tuo aloitusnäytön näkyviin. /// </summary> private void aloitaAlusta() { if (this.InvokeRequired) { this.BeginInvoke(new aloitaAlustaDelegate(aloitaAlusta), new Object[] {}); return; } panelRevanssinappulat.Visible = false; if (nettiliikenne != null) { nettiliikenne.suljeYhteys(); } nettiliikenne = null; peliKaynnissa = false; labelInfo.Visible = false; panelAlku.Visible = true; ristikkoPeliristikko.Visible = false; panelKeskustelu.Visible = false; buttonPaavalikkoon.Visible = false; this.Size = new Size(390, 240); }
/// <summary> /// Luodaan uusi peli. Näytetään pelinluonti-ikkuna. /// Ikkunan sulkeutumisen jälkeen luodaan peli ikkunan /// nettiliikennekomponentin avulla. Jos ikkunan /// Katkaise-property on true, ei luoda peliä. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonLuoUusiPeli_Click(object sender, EventArgs e) { FormLuoPeli luonti = new FormLuoPeli(); luonti.Korkeus = Properties.Settings.Default.pituus; luonti.Leveys = Properties.Settings.Default.leveys; luonti.Voittorivi = Properties.Settings.Default.voittopituus; luonti.Portti = Properties.Settings.Default.portti; luonti.ShowDialog(); if (luonti.Yhteys == null) return; if (!luonti.Yhteys.Yhdistetty) return; // keskeytetty katkaisu.... nettiliikenne = luonti.Yhteys; nettiliikenne.Kanavat = kanavat; //Ensimmäinen viesti, joka sisältää kentän koon nettiliikenne.lahetaViesti("A"+VERSIO+"|"+textBoxNimi.Text+"|"+luonti.Voittorivi+":"+luonti.Leveys+":"+luonti.Korkeus, "protokolla"); nettiliikenne.uusiViesti += new Viesti(nettiliikenne_uusiViesti); nettiliikenne.LukuSeis = false; ristikkoPeliristikko.Vuorossa = true; labelInfo.Text = "Vuorossa: " + textBoxNimi.Text; alustaPeli(luonti.Korkeus, luonti.Leveys, luonti.Voittorivi); }
/// <summary> /// Tuo aloitusnäytön näkyviin. /// </summary> private void aloitaAlusta() { if (this.InvokeRequired) { this.BeginInvoke(new aloitaAlustaDelegate(aloitaAlusta), new Object[] {}); return; } panelRevanssinappulat.Visible = false; if (nettiliikenne != null) nettiliikenne.suljeYhteys(); nettiliikenne = null; peliKaynnissa = false; labelInfo.Visible = false; panelAlku.Visible = true; ristikkoPeliristikko.Visible = false; panelKeskustelu.Visible = false; buttonPaavalikkoon.Visible = false; this.Size = new Size(390, 240); }