コード例 #1
0
 private void HracProvedlTah(SouradnicePole tah)
 {
     panelPlocha.Aktivni=false;
     Zprava.Text="";
     plocha.UmistiKamen(tah,barvaCloveka);
     panelPlocha.AktualizujKamen(tah);
     if(plocha.JeVitez)
     {
         Zprava.Text="Vyhr�l jsi.";
         panelPlocha.Aktivni=false;
         panelPlocha.Invalidate();
     }
     else
         ProvedTahEnginu();
 }
コード例 #2
0
 /// <summary>
 /// Umístìní hracího kamene na hrací plochu.
 /// </summary>
 /// <param name="souradnice">Souøadnice, kam bude kámen umístìn</param>
 /// <param name="barva">Barva kamene, který je tøeba umístit</param>
 /// <returns>Vrací true, pokud bylo pole neobsazené a kámen byl umístìn, jinak false</returns>
 public bool UmistiKamen(SouradnicePole souradnice, BarvaKamene barva)
 {
     if ((hraciPole[souradnice.Radek,souradnice.Sloupec]!=BarvaKamene.Zadny) || JeVitez)
         return false;
     else
     {
         hraciPole[souradnice.Radek,souradnice.Sloupec]=barva;
         ZkusNajitViteznouRaduPoli();
         return true;
     }
 }
コード例 #3
0
 private void PohybMysi(object sender, System.Windows.Forms.MouseEventArgs e)
 {
     double ctv=(Height<Width) ? (double) (Height-1)/SouradnicePole.VelikostPlochy : (double) (Width-1)/SouradnicePole.VelikostPlochy;
     int radek=(int) (((double)e.Y)/ctv);
     int sloupec=(int) (((double)e.X)/ctv);
     if((radek>=0)&&(radek<HraciPlocha.VelikostPlochy)&&(sloupec>=0)&&(sloupec<HraciPlocha.VelikostPlochy))
         VybranePole=new SouradnicePole(radek,sloupec);
     else
         VybranePole=null;
 }
コード例 #4
0
 private void OpusteniMysi(object sender, System.EventArgs e)
 {
     if(this.VybranePole!=null) VybranePole=null;
 }
コード例 #5
0
 /// <summary>
 /// Aktualizace zobrazení kamene
 /// </summary>
 /// <param name="s">Souøadnice kamene</param>
 public void AktualizujKamen(SouradnicePole s)
 {
     double ctv=(Height<Width) ? (double) (Height-1)/SouradnicePole.VelikostPlochy : (double) (Width-1)/SouradnicePole.VelikostPlochy;
     this.Invalidate(new Rectangle((int)(ctv*s.Sloupec), (int)(ctv*s.Radek),(int) ctv, (int) ctv)); //prekresleni prvku
 }
コード例 #6
0
 protected void OnProvedenTah(SouradnicePole s)
 {
     if(ProvedenTah!=null) ProvedenTah(s);
 }