Beispiel #1
0
  /**
   * forgat metodus Id szerint tolt be egy kepet amit a konstruktorban parameterkent kap meg
   *
   * <p>ellenorzi h hany van felforditva es ennek fuggvenyeben dont a tovabbi ellenorzesek vagy a
   * tovabbi forgatas engedelyese teren
   */
  public void forgat() {
    int kep;
    if (((this.getErtek()) % 2) == 0) {
      kep =
          this
              .getErtek(); // beallitjuk a kepet aszerint h melyikre kattintottunk, h melyik kep
                           // legyen betoltodve
      // mivel a kepekt csak 1szer szerepelnek, ha paratlan ki kell vonni egyet
    } else {
      kep = this.getErtek() - 1;
    }
    // System.out.println(kep);

    if ((parok.getCount() == 0) && (this.fel == false)) {
      // ha meg nincs vege es amire kattintottunk nem volt meg felforditva

      parok.incCount(); // hanyadik forditasnal tartunk
      String s = "" + kep + ".jpg";
      this.setIcon(new ImageIcon(s));
      this.fel = true;
      parok.setIndex1(this.getID()); // felforditjuk aazt amire kattintottunk
      this.fel = true;

      parok.incLepes(); // a lepesek szamat is noveljuk
      parok.allitLepes(parok.getLepes());
      parok.setPar1(kep);
      //	System.out.println("par1="+par1+" par2: "+ par2);
    } else if ((parok.getCount() == 1) && (this.fel == false)) {
      // ha mar egy fel volt forditva, vagyis ez a masodik forgatas
      parok.incCount(); // noveljuk a felforditottak szamat
      String s = "" + kep + ".jpg";
      this.setIcon(new ImageIcon(s));
      this.fel = true; // felforditjuk
      parok.setIndex2(this.getID());
      this.fel = true;

      parok.incLepes(); // noveljuk a lepesszamot
      parok.allitLepes(parok.getLepes());
      parok.setPar2(kep);
      // System.out.println("par1="+getPar1()+" par2: "+ getPar2());
    } else if ((parok.getCount() == 2) && (this.fel == false)) { // ha mar ketto fel van forditva
      parok.setCount(); // lenullazuk
      int x1 = parok.getIndex1();
      int x2 = parok.getIndex2();
      // System.out.println("par1="+getPar1()+" par2: "+ getPar2());
      if (parok.getPar1() != parok.getPar2()) {
        parok.szinez(x1); // ha nem talalnak vissza kell forgatni
        parok.szinez(x2);

        parok.getGombByID(x1).fel = false;
        parok.getGombByID(x2).fel = false;
      }
      forgat(); // meghivjuk ujbol, mindaddig amig van meg fel nem forditott lap
    }
  }