示例#1
0
 @Override
 public void actionPerformed(ActionEvent e) {
   Tlacitko o = (Tlacitko) e.getSource();
   if (counter % 2 == 0) {
     tah.setCisloOdkud(o.getA());
     tah.setPismenoOdkud(o.getB());
     o.setBorder(new LineBorder(Color.RED, 2));
     counter++;
   } else {
     if (o.getA() == tah.getCisloOdkud() && o.getB() == tah.getPismenoOdkud()) {
       o.setBorder(UIManager.getBorder("Button.border"));
       counter++;
     } else {
       tah.setCisloKam(o.getA());
       tah.setPismenoKam(o.getB());
       tahni(sachovnice, tah);
       counter++;
     }
   }
   ;
 }
示例#2
0
 @Override
 public void tahni(Sachovnice sachovnice, Tah tah) {
   boolean povoleno;
   povoleno = false;
   if (sachovnice.jeNaSachovnici(
       tah.getCisloOdkud(),
       tah.getPismenoOdkud())) { // kontroluje, zda existuje policko, pokud ano, jestli je na nem
     // prislusna figurka
     if (sachovnice.figurka(sachovnice.getSach()[tah.getCisloOdkud()][tah.getPismenoOdkud()])) {
       if ((sachovnice.barva(sachovnice.getSach()[tah.getCisloOdkud()][tah.getPismenoOdkud()])
               && sachovnice.kdoHraje())
           || (!sachovnice.barva(sachovnice.getSach()[tah.getCisloOdkud()][tah.getPismenoOdkud()])
               && !sachovnice.kdoHraje())) {
         povoleno = true;
       }
     }
   }
   boolean povolen = false;
   if (sachovnice.jeNaSachovnici(
       tah.getCisloKam(),
       tah.getPismenoKam())) { // zda existuje policko, pokud ano, jestli je prazdne
     if (!sachovnice.figurka(sachovnice.getSach()[tah.getCisloKam()][tah.getPismenoKam()])) {
       povolen = true;
     }
   }
   if (!sachovnice.pohyb(
           tah.getCisloOdkud(), tah.getPismenoOdkud(), tah.getCisloKam(), tah.getPismenoKam())
       && !sachovnice.skok(
           tah.getCisloOdkud(), tah.getPismenoOdkud(), tah.getCisloKam(), tah.getPismenoKam())) {
     povolen = false; // pokud neni tah v souladu s pravidly
   }
   if (sachovnice.jeNaSachovnici(tah.getCisloKam(), tah.getPismenoKam())
       && sachovnice.pohybDama(
           tah.getCisloOdkud(), tah.getPismenoOdkud(), tah.getCisloKam(), tah.getPismenoKam())) {
     povolen = true;
   }
   if (povoleno && povolen) {
     sachovnice.zamenFigurky(
         tah.getPismenoOdkud(), tah.getCisloOdkud(), tah.getPismenoKam(), tah.getCisloKam());
     if (sachovnice.getPocetBily() == 0) {
       System.out.println("Vyhral cerny");
       System.exit(0);
     }
     if (sachovnice.getPocetCerny() == 0) {
       System.out.println("Vyhral bily");
       System.exit(0);
     }
   }
   sachovnice.vypisSachovnici();
 }