public void warAttack() { if (bolge1.ordu.askerSayisi > 1 && bolge2.ordu.askerSayisi > 0) { Random random = new Random(); int bb1; int bb2; bb1 = random.Next(1, randomAraligi + (bolge1.ordu.askerSayisi / 5)); bb2 = random.Next(1, randomAraligi + (bolge2.ordu.askerSayisi / 5)); if (bb1 > bb2) { bolge2.ordu.askerSayisi--; form1.changeLabel(bolge2); textBox3.Text = bolge2.ordu.askerSayisi.ToString(); if (bolge2.ordu.askerSayisi == 0) { bolge2.sahip.bolgeler.Remove(bolge2); bolge1.sahip.bolgeler.Add(bolge2); bolge2.sahip = bolge1.sahip; bolge1.ordu.askerSayisi--; bolge2.ordu.askerSayisi++; this.Visible = false; int b1 = bolge1.ordu.askerSayisi; int b2 = bolge2.ordu.askerSayisi; ArmyMove am = new ArmyMove(bolge1, bolge2, form1); am.ShowDialog(); if (form1.isArmyMoved) { form1.changeLabel(bolge1); form1.changeLabel(bolge2); form1.isArmyMoved = false; } else { form1.changeLabel(bolge1); form1.changeLabel(bolge2); bolge1.ordu.askerSayisi = b1; bolge2.ordu.askerSayisi = b2; } form1.changeLabel(bolge1); form1.changeLabel(bolge2); form1.changeTerritoryColor(bolge2, bolge2.sahip); } } else if (bb1 < bb2) { bolge1.ordu.askerSayisi--; form1.changeLabel(bolge1); textBox2.Text = bolge1.ordu.askerSayisi.ToString(); } else { //Devam.. } } }
public void warDoORDie() { string temp = ""; temp += bolge1.isim + ":" + bolge1.ordu.askerSayisi.ToString() + "\n"; temp += bolge2.isim + ":" + bolge2.ordu.askerSayisi.ToString() + "\n---------\n"; while (bolge1.ordu.askerSayisi > 1 && bolge2.ordu.askerSayisi > 0) { int bb1; int bb2; bb1 = random.Next(1, randomAraligi + (bolge1.ordu.askerSayisi / 5)); System.Threading.Thread.Sleep(20); for (int i = 1; i <= 11; i++) { random.Next();} bb2 = random.Next(1, randomAraligi + (bolge2.ordu.askerSayisi / 5)); temp += bb1.ToString() + " - " + bb2.ToString() + "\n"; if (bb1 > bb2) { bolge2.ordu.askerSayisi--; form1.changeLabel(bolge2); textBox3.Text=bolge2.ordu.askerSayisi.ToString(); if (bolge2.ordu.askerSayisi == 0) { bolge2.sahip.bolgeler.Remove(bolge2); bolge1.sahip.bolgeler.Add(bolge2); bolge2.sahip = bolge1.sahip; bolge1.ordu.askerSayisi--; bolge2.ordu.askerSayisi++; this.Visible = false; int b1 = bolge1.ordu.askerSayisi; int b2 = bolge2.ordu.askerSayisi; ArmyMove am = new ArmyMove(bolge1, bolge2, form1); am.ShowDialog(); if (form1.isArmyMoved) { form1.changeLabel(bolge1); form1.changeLabel(bolge2); form1.isArmyMoved = false; } else { bolge1.ordu.askerSayisi = b1; bolge2.ordu.askerSayisi = b2; form1.changeLabel(bolge1); form1.changeLabel(bolge2); } form1.changeTerritoryColor(bolge2, bolge2.sahip); break; } } if (bb1 < bb2) { bolge1.ordu.askerSayisi--; form1.changeLabel(bolge1); textBox2.Text = bolge1.ordu.askerSayisi.ToString(); } refreshSaldiriEkrani(); form1.refreshGame(); } //MessageBox.Show(temp); }
private void pictureBox1_Click(object sender, EventArgs e) { if (players[turn].isHuman) { //Kodlar buraya gelecek //Tıklanan yerin kordinatını ve rengini gösterir Bitmap bm = new Bitmap(pictureBox1.Image); Point localmousePosition = pictureBox1.PointToClient(System.Windows.Forms.Cursor.Position); Color col = bm.GetPixel(localmousePosition.X, localmousePosition.Y); //MessageBox.Show("X= " + localmousePosition.X.ToString() + "\nY= " + localmousePosition.Y.ToString() +"\nRenk:"+ col.Name); foreach (Bolge bol in bolgeler) { bool broke = false; foreach (Nokta n in bol.noktalar) { if (n.point == localmousePosition) { //MessageBox.Show(bol.isim); //öncelikle Bölgeler Seçilecek if (!butunBolgelerSecildiMi()) { if (!bol.sahipli) { bol.sahip = players[turn]; bol.sahipli = true; players[turn].bolgeler.Add(bol); changeTerritoryColor(bol, players[turn]); //txtInfo.Text = players[getNextTurn()].name + " please choose a territory"; if (butunBolgelerSecildiMi()) { changeInfo("Game Starts..."); } changeTurn(); changeLabel(bol); } if (butunBolgelerSecildiMi()) { //changeInfo(players[turn].name + " please place your army. [" + Math.Floor((double)(ilkAskerler / players.Count)).ToString() + "]"); showHistoryToolStripMenuItem.Enabled = true; } } else { //Kodlar Buraya Gelecek if (ilkAskerler > 0)//İlk Askerleri Dağıtılmasıması bitene kadar { if (bol.sahip == players[turn]) { ilkAskerler--; players[turn].ilkAskerSayisi--; bol.ordu.askerSayisi++; changeLabel(bol); changeTurn(); //changeInfo(players[turn].name + " please place your army. [" +players[turn].ilkAskerSayisi .ToString() + "]"); } if (ilkAskerler == 0) { changeInfo("You have " + players[turn].yeniAskerler + " armies left to place [+SHIFT=place all]"); ganimetBolgseiniBildir(); ToolTip buttonToolTip = new ToolTip(); buttonToolTip.UseFading = true; buttonToolTip.UseAnimation = true; //buttonToolTip.IsBalloon = true; buttonToolTip.ShowAlways = true; buttonToolTip.AutoPopDelay = 5000; buttonToolTip.InitialDelay = 1000; buttonToolTip.ReshowDelay = 500; buttonToolTip.Show("Gold is here!", label, 4000); //buttonToolTip.SetToolTip(label, "Gold is Here!"); } }//ilk Askerlerin Dağıtılması Bittikten Sonra else { //Öncelikle her turn de verilen askerlerin yerine yerleştirilmesi lazım if (players[turn].yeniAskerler > 0) { if (bol.sahip == players[turn]) { if (Control.ModifierKeys == Keys.Shift) { bol.ordu.askerSayisi += players[turn].yeniAskerler; players[turn].yeniAskerler = 0; changeLabel(bol); txtInfo.Text = "Attack or pass (press to spacebar)"; } else { players[turn].yeniAskerler--; bol.ordu.askerSayisi++; changeLabel(bol); changeInfo("You have " + players[turn].yeniAskerler + " armies left to place [+SHIFT=place all]"); } if (players[turn].yeniAskerler == 0) { button2.Enabled = true; } } } if (players[turn].yeniAskerler == 0) { //Askerler Dağıtıldı şimdi hucum yapılabilir if (state == 0 && bol.sahip == players[turn])//İlk kez kendi yerine tıklıyor { state = 1; txtInfo.Text = "From " + bol.isim + ". Choose a territory to attack or move to (spacebar to pass)"; ilkTiklananBolge = bol; } else if (state == 1 && bol.komsular.Contains(ilkTiklananBolge))//komşusuna tıklamış { if (bol.sahip == players[turn])//kendi bölgesine transfer { if (ilkTiklananBolge.ordu.askerSayisi > 1 || bol.ordu.askerSayisi > 1) { int b1 = ilkTiklananBolge.ordu.askerSayisi; int b2 = bol.ordu.askerSayisi; ArmyMove am = new ArmyMove(ilkTiklananBolge, bol, this); am.ShowDialog(); if (isArmyMoved) { changeLabel(ilkTiklananBolge); changeLabel(bol); changeTurn(); isArmyMoved = false; } else { ilkTiklananBolge.ordu.askerSayisi = b1; bol.ordu.askerSayisi = b2; } } state = 0; ilkTiklananBolge = null; } else //Düşman bölgesine saldırı { if (ilkTiklananBolge.ordu.askerSayisi > 1) { SaldiriEkrani saldiriekrani = new SaldiriEkrani(ilkTiklananBolge, bol, this); saldiriekrani.ShowDialog(); isArmyMoved = false; } ilkTiklananBolge = null; state = 0; } } else { state = 0; ilkTiklananBolge = null; } } } } broke = true; break; } } if (broke) break; } olduMu(); changeStatistics(); } }
public void warDoORDie() { string temp = ""; temp += bolge1.isim + ":" + bolge1.ordu.askerSayisi.ToString() + "\n"; temp += bolge2.isim + ":" + bolge2.ordu.askerSayisi.ToString() + "\n---------\n"; while (bolge1.ordu.askerSayisi > 1 && bolge2.ordu.askerSayisi > 0) { int bb1; int bb2; bb1 = random.Next(1, randomAraligi + (bolge1.ordu.askerSayisi / 5)); System.Threading.Thread.Sleep(20); for (int i = 1; i <= 11; i++) { random.Next(); } bb2 = random.Next(1, randomAraligi + (bolge2.ordu.askerSayisi / 5)); temp += bb1.ToString() + " - " + bb2.ToString() + "\n"; if (bb1 > bb2) { bolge2.ordu.askerSayisi--; form1.changeLabel(bolge2); textBox3.Text = bolge2.ordu.askerSayisi.ToString(); if (bolge2.ordu.askerSayisi == 0) { bolge2.sahip.bolgeler.Remove(bolge2); bolge1.sahip.bolgeler.Add(bolge2); bolge2.sahip = bolge1.sahip; bolge1.ordu.askerSayisi--; bolge2.ordu.askerSayisi++; this.Visible = false; int b1 = bolge1.ordu.askerSayisi; int b2 = bolge2.ordu.askerSayisi; ArmyMove am = new ArmyMove(bolge1, bolge2, form1); am.ShowDialog(); if (form1.isArmyMoved) { form1.changeLabel(bolge1); form1.changeLabel(bolge2); form1.isArmyMoved = false; } else { bolge1.ordu.askerSayisi = b1; bolge2.ordu.askerSayisi = b2; form1.changeLabel(bolge1); form1.changeLabel(bolge2); } form1.changeTerritoryColor(bolge2, bolge2.sahip); break; } } if (bb1 < bb2) { bolge1.ordu.askerSayisi--; form1.changeLabel(bolge1); textBox2.Text = bolge1.ordu.askerSayisi.ToString(); } refreshSaldiriEkrani(); form1.refreshGame(); } //MessageBox.Show(temp); }