IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Pomoc s hrou nechce mi vykreslit obrazovku

V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Blickr Goodfray:16.5.2016 23:59

Niekto schopny na pomoc s programom ? poslem Source code

 
Odpovědět
16.5.2016 23:59
Avatar
vajkuba1234
Člen
Avatar
Odpovídá na Blickr Goodfray
vajkuba1234:17.5.2016 0:07

Posli ho tady

Nahoru Odpovědět
17.5.2016 0:07
No hope, no future, JUST WAR!
Avatar
Odpovídá na vajkuba1234
Blickr Goodfray:17.5.2016 0:41

Poslat ho cely aj s obrazkami ?

 
Nahoru Odpovědět
17.5.2016 0:41
Avatar
vajkuba1234
Člen
Avatar
Odpovídá na Blickr Goodfray
vajkuba1234:17.5.2016 0:45

Jasne, posli tady kod (pomoci </>), posli i chyby, ktere ti to pise a klidne i pridej obrazky...

Nahoru Odpovědět
17.5.2016 0:45
No hope, no future, JUST WAR!
Avatar
Blickr Goodfray:17.5.2016 0:49
package data;

import java.awt.Image;

/**
 *
 * @author david
 */
public class Blok{
  private  Image blok;
  byte[] bloky;
  private  byte b1, b2, b3, b4;
  //pre detekciu kolizii
  private byte b5;
  private int x = 0;
  private int y = 0;
  private int cisloBloku;

  public Blok(Image obrazok, int cislo, byte b1, byte b2, byte b3, byte b4, byte b5) {
      this.blok = obrazok;
      this.cisloBloku = cislo;
      this.b1 = b1;
      this.b2 = b2;
      this.b3 = b3;
      this.b4 = b4;
      this.b5 = b5;
      this.bloky = new byte[] {b1,b2,b3,b4};
    }
  public Blok(Blok b) {
      this.blok = b.dajBlok();
      this.cisloBloku = b.dajCisloBloku();
      this.b1 = b.dajBlokByte(0);
      this.b2 = b.dajBlokByte(1);
      this.b3 = b.dajBlokByte(2);
      this.b4 = b.dajBlokByte(3);
      this.b5 = b.dajKoliznyTyp();
      this.bloky = b.dajBlokyByte();


  }

  public byte[] dajBlokyByte() {
      return bloky;
  }

  public byte dajBlokByte(int indexBloku) {
      if (indexBloku < bloky.length || indexBloku >= 0) {
          return bloky[indexBloku];
      } else {
          System.out.println("Chyba: Nespravny index.");
          return 0;
      }
  }

  public byte dajKoliznyTyp() {
      return b5;
  }

  public Image dajBlok() {
      return blok;
  }

  public void nastavnazovBloku(Image obrazok) {
      this.blok = obrazok;
  }

  public void nastavX(int x) {
      this.x = x;
  }

  public void nastavY(int y) {
      this.y = y;
  }

  public int dajX() {
      return x;
  }

  public int dajY() {
      return y;
  }

  public int dajCisloBloku() {
      return cisloBloku;
  }

  public String toString() {
      return "Cislo Bloku: " + cisloBloku + " b5: " + b5 + "Kolizne Bloky: " + b1 + ", " + b2 + ", " + b4 + " X: " + dajX() + " Y: " + dajY();
  }
}
package data;

import java.awt.Graphics;
import java.awt.Image;

import java.awt.Rectangle;
import java.awt.event.KeyEvent;
import java.awt.image.BufferedImage;

import javax.swing.JPanel;

public class Hrac extends JPanel {

    int x, y, vzdialenost, key;
    private int smerX, smerY;
    Image[][] sprite = new Image[4][3];
    private int rychlost;
    private Rectangle obdlznik;
    private Image obrazok;
    private boolean prerusenie = false;
    private int intPrerusenie;

    private BufferedImage postava;


    public Hrac(int x, int y, Image[][] sprite) {

        this.x = x;
        this.y = y;
        this.smerX = 0;
        this.smerY = 0;

       System.arraycopy(sprite[0],0, this.sprite[0], 0, 3);
       System.arraycopy(sprite[1],0, this.sprite[1], 0, 3);
       System.arraycopy(sprite[2],0, this.sprite[2], 0, 3);
       System.arraycopy(sprite[3],0, this.sprite[3], 0, 3);


    }

    public int dajX() {
        return x;
    }

    public int dajY() {
        return y;
    }

     public int dajVzdialenost() {
        return vzdialenost;
    }

    @Override
    public void paintComponent(Graphics g) {
        super.paintComponent(g);



        g.drawImage(obrazok, x, y, null);


    }

    void pohyb( boolean[] kolizie, int[] vzdialenosti) {
        this.prerusenie = false;
        for(int i = 0; i < kolizie.length; i++) {
            if(kolizie[i]) {
                prerusenie = true;
                intPrerusenie = vzdialenosti[i];
                break;
            }
        }

        if(prerusenie) {
            switch(intPrerusenie){
                case 0:
                    if (smerY != -1) {
                        y += smerY + 1;
                    }
                    break;
                case 1:
                    if(smerX != 1) {
                        x += smerX - 1;
                    }
                    break;
                case 2:
                    if(smerY != 1) {
                        y += smerY - 1;
                    }
                    break;
                case 3:
                    if(smerX != -1) {
                        x += smerX + 1;
                    }
                    break;
            }
        } else {
            x += smerX;
            y += smerY;
        }

    }
     public void keyPressed(KeyEvent e) {

        key = e.getKeyCode();

        switch(key) {
            case KeyEvent.VK_UP:
                smerY = -1;
                vzdialenost = 0;
                break;
            case KeyEvent.VK_DOWN:
                smerY = 1;
                vzdialenost = 2;
                break;
            case KeyEvent.VK_LEFT:
                smerX = -1;
                vzdialenost = 3;
                break;
            case KeyEvent.VK_RIGHT:
                smerX = 1;
                vzdialenost = 1;
                break;
        }

    }

    public void keyReleased(KeyEvent e) {

        key = e.getKeyCode();

        switch(key) {
            case KeyEvent.VK_UP:
                smerY = 0;
                break;
            case KeyEvent.VK_DOWN:
                smerY = 0;
                break;
            case KeyEvent.VK_LEFT:
                smerX = 0;
                break;
            case KeyEvent.VK_RIGHT:
                smerX = 0;
                break;
        }

    }
}
package data;

import java.awt.Rectangle;

/**
 *
 * @author david
 */
public class KontrolaKolizii {

    private Rectangle obd;
    private Rectangle obdCely;
    private Rectangle obd1;
    private Rectangle obd2;
    private Rectangle obd3;
    private Rectangle obd4;

    private boolean rozdelenieBloku = false;

    public boolean kontrolaKolizie(Hrac hrac, Blok blok) {
        this.rozdelenieBloku = false;
        this.obd = new Rectangle(hrac.dajX(),hrac.dajY(), 24, 32);
        if (blok.dajBlokyByte() != null) {
            for (int i = 0; i < blok.bloky.length; i++) {
                if (blok.bloky[i] != 0) {
                    rozdelenieBloku = true;
                }

            }

        }

        if (blok.dajKoliznyTyp() != 0 && rozdelenieBloku == false) {
            obdCely = new Rectangle(blok.dajX(), blok.dajY(), 32, 32);

            if (obd.intersects(obdCely)) {
                return true;
            }else return obdCely.intersects(obd);

        }else if (rozdelenieBloku) {

            obd1 = new Rectangle(blok.dajX(), blok.dajY(), 16, 16);
            obd2 = new Rectangle(blok.dajX() + 16, blok.dajY(), 16, 16);
            obd3 = new Rectangle(blok.dajX(), blok.dajY() + 16, 16, 16);
            obd4 = new Rectangle(blok.dajX() + 16, blok.dajY() + 16, 16, 16);

            if (blok.bloky[0] == 1) {
                if (obd.intersects(obd1)) {
                    return true;
                } else return obd1.intersects(obd);
            } else if (blok.bloky[1] == 1) {
                if (obd.intersects(obd2)) {
                    return true;
                } else return obd2.intersects(obd);
            } else if (blok.bloky[2] == 1) {
                if (obd.intersects(obd3)) {
                    return true;
                } else return obd3.intersects(obd);
            } else if (blok.bloky[3] == 1) {
                if (obd.intersects(obd4)) {
                    return true;
                } else return obd4.intersects(obd);
            } else {
                return false;
                }
            } else {
            return false;

        }

    }

    public int vzdialenostKolizie(Hrac hrac) {
        return hrac.dajVzdialenost();
    }




}
package data;

import Loader.BlokLoader;
import Loader.MapaLoader;
import Loader.SpriteLoader;
import java.awt.BorderLayout;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.Timer;

public class Program implements ActionListener {
    JFrame ram;
    Vykreslovac panel;
    Posluchac klavesnica;
    MapaLoader citac;
    Timer cas;
    Hrac hrac;
    BlokLoader nacitavacBlokov;
    KontrolaKolizii kontrolor;
    SpriteLoader nacitavacObrazkov;

    private Blok[] bloks;
    private int animacia;
    private int[][] cislaBlokovMapa;
    private int x = 0, y = 0, m = 0, n =0, zvys = 0, t =  0;
    private boolean[] koliziaBoolean = new boolean[25000];
    private int[] koliziaInt = new int[25000];










    public Program() {
       this.nacitavacBlokov = new BlokLoader();
       this.nacitavacBlokov.nacitajBloky();
       this.ram = new JFrame("Epic Game 3000 !!!");
       this.panel = new Vykreslovac();
       this.klavesnica = new Posluchac();
       this.citac = new MapaLoader();
       this.citac.nacitajMapu();
       this.nacitavacObrazkov = new SpriteLoader();
       this.nacitavacObrazkov.nacitaj();
       this.hrac = new Hrac(0,0,nacitavacObrazkov.dajSprite());
       this.cislaBlokovMapa = citac.dajBloky();
       this.bloks = new Blok[25000];
       this.kontrolor = new KontrolaKolizii();


    }

    public static void main(String[] args) {
        Program program = new Program();
        program.nastavenieProgramu();
    }

    public void nastavenieProgramu() {
        ram.setSize(800, 600);
        ram.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        ram.getContentPane().add(BorderLayout.CENTER, panel);
        panel.setFocusable(true);
        panel.addKeyListener(klavesnica);
        ram.setVisible(true);

        vytvorenieMapy();

        this.cas = new Timer(5, this);
        this.cas.start();


    }

    public void actionPerformed(ActionEvent e) {

        for (int i = 0; i < bloks.length; i++) {
            if (bloks[i] != null) {
                koliziaBoolean[i] = kontrolor.kontrolaKolizie(hrac, bloks[i]);
                koliziaInt[i] = kontrolor.vzdialenostKolizie(hrac);
            }
        }
        hrac.pohyb(koliziaBoolean, koliziaInt);
        ram.repaint();
    }

    public void vytvorenieMapy() {

        for (int i = 0; i < cislaBlokovMapa.length * 32; i++) {

            if (x == cislaBlokovMapa.length * 32) {
                this.x = 0;
                this.y = y + 32;
            }

            if (n > cislaBlokovMapa[m].length - 1) {
                this.n = 0;
                this.m ++;

            }

            for (int j = 1; j < nacitavacBlokov.bloky.length; j++) {

                if (cislaBlokovMapa[m][n] == j) {

                    bloks[zvys] = new Blok(nacitavacBlokov.dajBlok(j));
                    bloks[zvys].nastavX(x);
                    bloks[zvys].nastavY(y);

                   zvys++;

                }
            }

            n++;
            x = x + 32;

    }
    }






















       public class Vykreslovac extends JPanel {

        @Override
        public void paintComponent(Graphics g) {

            g.drawRect(0,0,ram.getWidth(), ram.getHeight());
            for (int i = 0; i < bloks.length; i++) {
                if(bloks[i] != null) {
                    g.drawImage(bloks[i].dajBlok(), bloks[i].dajX(), bloks[i].dajY(), 32, 32, null);
                }
            }
            boolean drawImage = g.drawImage(hrac.sprite[hrac.dajVzdialenost()][1], hrac.x, hrac.y, 24, 32, null);
            animacia++;

            if(animacia >= 30 && animacia < 80) {
                g.drawImage(hrac.sprite[hrac.dajVzdialenost()][0], hrac.x, hrac.y, 24, 32, null);
            } else if (animacia >= 80 && animacia < 150) {
                g.drawImage(hrac.sprite[hrac.dajVzdialenost()][2], hrac.x, hrac.y, 24, 32, null);
                animacia = 0;
            }
            g.drawString("Kolizia: (" + hrac.dajX() + ", " + hrac.dajY() + ")", 0, 290);
            for(int i = 0; i < koliziaBoolean.length; i++) {
                if(koliziaBoolean[i]) {
                    g.drawString("KOLIZIA!", 0, 300);
                }
            }
            }
        }




    public class Posluchac extends KeyAdapter {

        @Override
        public void keyPressed(KeyEvent e) {
            hrac.keyPressed(e);
        }

        @Override
        public void keyReleased(KeyEvent e) {
            hrac.keyReleased(e);
        }

    }
}
package Loader;

import data.Blok;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;

/**
 *
 * @author david
 */
public class BlokLoader {
    public Blok[] bloky = new Blok[256];
    private int cisloBloku;
    private int i;
    private int x;

    public void nacitajBloky() {
        BufferedImage obrazokBloku = null;

        try {
            obrazokBloku = ImageIO.read(new File("build\\classes\\res\\obrazky\\tilesheet2.png"));
            i = 0;
            x = 0;
         for(int y = 0; y < 512; y += 0) {

             if(i < bloky.length) {
                 switch(i) {
                     case 0:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)0,(byte)0,(byte)0,(byte)0,(byte)0);
                            break;
                        case 1:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)0,(byte)0,(byte)0,(byte)0,(byte)0);
                            break;
                        case 2:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)1,(byte)1,(byte)1,(byte)1,(byte)1);
                            break;
                        case 3:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)1,(byte)1,(byte)1,(byte)1,(byte)1);
                            break;
                        case 4:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)1,(byte)1,(byte)0,(byte)0,(byte)10);
                            break;
                        case 5:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)0,(byte)1,(byte)0,(byte)1,(byte)10);
                            break;
                        case 6:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)0,(byte)1,(byte)0,(byte)0,(byte)10);
                            break;
                        case 7:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)0,(byte)0,(byte)0,(byte)1,(byte)10);
                            break;
                        case 8:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)0,(byte)0,(byte)1,(byte)1,(byte)10);
                            break;
                        case 9:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)1,(byte)0,(byte)1,(byte)0,(byte)10);
                            break;
                        case 10:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)0,(byte)0,(byte)1,(byte)0,(byte)10);
                            break;
                        case 11:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)1,(byte)0,(byte)0,(byte)0,(byte)10);
                            break;
                        case 12:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)10,(byte)10,(byte)10,(byte)10,(byte)1);
                            break;
                        case 13:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)10,(byte)10,(byte)10,(byte)10,(byte)1);
                            break;
                        case 14:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)10,(byte)10,(byte)10,(byte)10,(byte)1);
                            break;
                        case 15:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)10,(byte)10,(byte)10,(byte)10,(byte)1);
                            break;
                        case 16:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)10,(byte)10,(byte)10,(byte)10,(byte)1);
                            break;
                        case 17:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)10,(byte)10,(byte)10,(byte)10,(byte)1);
                            break;
                        case 18:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)10,(byte)10,(byte)10,(byte)10,(byte)1);
                            break;
                        case 19:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)10,(byte)10,(byte)10,(byte)10,(byte)1);
                            break;
                 }
             }

             i++;
             x = x+ 32;

             if(x == 512) {
                 x = 0;
                 y = + 32;
             }
             if(y == 512) {
                break;

         }

        }

    }catch (IOException e) {
        System.out.println("CHYBA: Neuspesne nacitanie obrazku.");
    }
  }
    public Blok[] dajBloky() {
            return bloky;
        }
    public Blok dajBlok(int cislo) {
        return bloky[cislo-1];
    }

}
package Loader;

import java.io.File;
import java.io.IOException;
import java.util.Scanner;

/**
 *
 * @author david
 */
public class MapaLoader {
    private File mapa;
    private Scanner skener;

    private String[][] stringCisloBloku = new String[500][500];
    private int[][] cislaBlokov = new int[500][500];

    public MapaLoader(File f) {
        this.mapa = f;
    }
    public MapaLoader() {
        this.mapa = new File("build\\classes\\res\\mapa\\map.txt");
    }

    public void nacitajMapu() {

        try {
            this.skener = new Scanner(mapa);
            int x = 0;
            int y = 0;

            while(skener.hasNext()) {
                stringCisloBloku[y] = skener.next().split(",");
                y++;
            }

            for (int i = 0; i < stringCisloBloku.length; i++) {
                for (int j = 0; j < stringCisloBloku[i].length; j++) {
                    if (stringCisloBloku[i][j] == null) {
                        cislaBlokov[i][j] = -1;

                    }else {
                        cislaBlokov[i][j] = Integer.parseInt(stringCisloBloku[i][j]);
                    }
                }
            }
        } catch (IOException ex) {

        }
    }
    public int [][] dajBloky() {
        return cislaBlokov;
    }



}
package Loader;

import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;
import java.io.IOException;

/**
 *
 * @author david
 */
public class SpriteLoader {
    File sprites;
    BufferedImage spriteSheet;
    Image[][] hracSprites = new Image[4][3];


    public SpriteLoader() {

        this.sprites =  new File("build\\classes\\res\\obrazky\\spritesheet.png");
    }
    public void nacitaj() {

        try {
            spriteSheet = ImageIO.read(sprites);
            int i = 0;
            int j = 0;

            for (int y = 2; y < 135; y = y +32) {
                for (int x = 0; x < 71; x = x + 24) {
                    if (j == 4) {
                        break;
                    }else {
                        hracSprites[j][i] = spriteSheet.getSubimage(x, y, 24, 32);
                        i++;
                    }
                }
                i =0;
                j++;
            }
        }catch (IOException ex) {
            System.out.println("CHYBA: Neuspesne nacitanie sprites.");
        }
    }
    public Image[][] dajSprite() {
        return hracSprites;
    }

            }

plus je tam este mapa.txt subor nechce mi vykreslit hraca a ani mapu a ked dam spustit main tak mi stale bezi a nic neukaze ale ako nahle program skompilujem a spravim jar subor spustim ho vykresli mi okno a suradnice bez hraca a mapy

 
Nahoru Odpovědět
17.5.2016 0:49
Avatar
vajkuba1234
Člen
Avatar
Odpovídá na Blickr Goodfray
vajkuba1234:17.5.2016 0:57

Zkousel jsi to projet debuggerem?

Nahoru Odpovědět
17.5.2016 0:57
No hope, no future, JUST WAR!
Avatar
Blickr Goodfray:17.5.2016 1:03

S Debuggerom sme sa nejak extra neucili robit takze som to neprechadzal :/ jedine kde sme sa to ucili bol Bluej prvy semester bol by som ti vdacny za pomoc ak by sa dalo Dakujem

 
Nahoru Odpovědět
17.5.2016 1:03
Avatar
vajkuba1234
Člen
Avatar
Odpovídá na Blickr Goodfray
vajkuba1234:17.5.2016 1:20

Tam kde vytvaris hrace a mapu si dej breakpoint (treba na zacatek metody) - pomoci kliknuti na cislo radku na leve strane (NetBeans) a pote vyber v hornim menu Debug a pomoci sipek v menu to krokuj. Uvidis co se kde dela hezky postupne... Staci takhle?

Nahoru Odpovědět
17.5.2016 1:20
No hope, no future, JUST WAR!
Avatar
Blickr Goodfray:17.5.2016 8:07

No skor by som preferoval riesenie mojho problemu kedze nemam moc casu :/ ale aj tak dakujem

 
Nahoru Odpovědět
17.5.2016 8:07
Avatar
Lubor Pešek
Člen
Avatar
Lubor Pešek:17.5.2016 9:31

ach jo... kdybys fakt aspoń napsal co a kde ti hází exceptionu-.- nezdá se ti hloupé to sem tak hodit a defakto všem říct: "postarejte se o to"? soudím, že to máš za úkol do školy a moc tomu nerozumíš, ale příště zkus ten problém trošku specifikovat...

jdu se ti na to mrknout, ale mezitím zkus aspoň napsat účel programu, ať mám aspoň představu o výsledku...

Nahoru Odpovědět
17.5.2016 9:31
Existují dva způsoby, jak vyřešit problém. Za prvé vyhoďte počítač z okna. Za druhé vyhoďte okna z počítače.
Avatar
vajkuba1234
Člen
Avatar
Odpovídá na Blickr Goodfray
vajkuba1234:17.5.2016 9:39

Pouzij debugger a uvidis chybu.

Nahoru Odpovědět
17.5.2016 9:39
No hope, no future, JUST WAR!
Avatar
Lubor Pešek
Člen
Avatar
Lubor Pešek:17.5.2016 9:48

hoď sem ještě i třídu BlokLoader

Nahoru Odpovědět
17.5.2016 9:48
Existují dva způsoby, jak vyřešit problém. Za prvé vyhoďte počítač z okna. Za druhé vyhoďte okna z počítače.
Avatar
Blickr Goodfray:17.5.2016 11:32
package Loader;

import data.Blok;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;

/**
 *
 * @author david
 */
public class BlokLoader {
    public Blok[] bloky = new Blok[256];
    private int cisloBloku;
    private int i;
    private int x;

    public void nacitajBloky() {
        BufferedImage obrazokBloku = null;

        try {
            obrazokBloku = ImageIO.read(new File("build\\classes\\res\\obrazky\\tilesheet2.png"));
            i = 0;
            x = 0;
         for(int y = 0; y < 512; y += 0) {

             if(i < bloky.length) {
                 switch(i) {
                     case 0:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)0,(byte)0,(byte)0,(byte)0,(byte)0);
                            break;
                        case 1:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)0,(byte)0,(byte)0,(byte)0,(byte)0);
                            break;
                        case 2:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)1,(byte)1,(byte)1,(byte)1,(byte)1);
                            break;
                        case 3:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)1,(byte)1,(byte)1,(byte)1,(byte)1);
                            break;
                        case 4:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)1,(byte)1,(byte)0,(byte)0,(byte)10);
                            break;
                        case 5:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)0,(byte)1,(byte)0,(byte)1,(byte)10);
                            break;
                        case 6:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)0,(byte)1,(byte)0,(byte)0,(byte)10);
                            break;
                        case 7:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)0,(byte)0,(byte)0,(byte)1,(byte)10);
                            break;
                        case 8:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)0,(byte)0,(byte)1,(byte)1,(byte)10);
                            break;
                        case 9:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)1,(byte)0,(byte)1,(byte)0,(byte)10);
                            break;
                        case 10:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)0,(byte)0,(byte)1,(byte)0,(byte)10);
                            break;
                        case 11:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)1,(byte)0,(byte)0,(byte)0,(byte)10);
                            break;
                        case 12:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)10,(byte)10,(byte)10,(byte)10,(byte)1);
                            break;
                        case 13:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)10,(byte)10,(byte)10,(byte)10,(byte)1);
                            break;
                        case 14:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)10,(byte)10,(byte)10,(byte)10,(byte)1);
                            break;
                        case 15:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)10,(byte)10,(byte)10,(byte)10,(byte)1);
                            break;
                        case 16:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)10,(byte)10,(byte)10,(byte)10,(byte)1);
                            break;
                        case 17:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)10,(byte)10,(byte)10,(byte)10,(byte)1);
                            break;
                        case 18:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)10,(byte)10,(byte)10,(byte)10,(byte)1);
                            break;
                        case 19:
                            bloky[i] = new Blok(obrazokBloku.getSubimage(x, y, 32, 32),i,(byte)10,(byte)10,(byte)10,(byte)10,(byte)1);
                            break;
                 }
             }

             i++;
             x = x+ 32;

             if(x == 512) {
                 x = 0;
                 y = + 32;
             }
             if(y == 512) {
                break;

         }

        }

    }catch (IOException e) {
        System.out.println("CHYBA: Neuspesne nacitanie obrazku.");
    }
  }
    public Blok[] dajBloky() {
            return bloky;
        }
    public Blok dajBlok(int cislo) {
        return bloky[cislo-1];
    }

}
 
Nahoru Odpovědět
17.5.2016 11:32
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 13 zpráv z 13.