Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2020
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.82 KB | None | 0 0
  1. import java .awt.* ;
  2. import java.util.ArrayList;
  3. import java.util.List;
  4. import java.util.Random;
  5. import java.awt.event.* ;
  6. import javax.swing.*;
  7. import static java.lang.Math.*;
  8. import java.util.Scanner;
  9.  
  10.  
  11. class Skarby extends JFrame{
  12.  
  13.     int rozmiar = 8;
  14.     int liczba_skarbow =  (rozmiar*rozmiar) / 4;
  15.     int liczba_podpowiedzi = (rozmiar*rozmiar) / 4;
  16.     int liczba_nieodnalezionych_skarbów = liczba_skarbow;
  17.    
  18.     Random random = new Random();
  19.    
  20.     int plaza[][] = new int[15][15];
  21.  
  22.    
  23.     JButton tab[][] = new JButton[20][20];
  24.     JPanel plansza = new JPanel();
  25.     JPanel sterowanie = new JPanel();
  26.     JTextField t = new JTextField(20);
  27.     JButton nowagra = new JButton("Nowa Gra");
  28.     JButton sprawdz = new JButton("Sprawdz");
  29.     JTextField r = new JTextField();
  30.     JButton trudniej = new JButton("Trudniej");
  31.     JButton latwiej = new JButton("Latwiej");
  32.     JButton zapisz = new JButton("Zapisz");
  33.     JButton wczytaj = new JButton("Wczytaj");
  34.     JButton tutorial = new JButton("Tutorial");
  35.    
  36.  
  37.     public Skarby() {
  38.         Container cp = getContentPane();
  39.         cp.setLayout(new GridLayout(1,2));
  40.         cp.add(plansza);
  41.         cp.add(sterowanie);
  42.        
  43.         // Sterowanie :
  44.         sterowanie.setLayout(new GridLayout(3,3));
  45.  
  46. //      t.setFont(t.getFont().deriveFont(15.0f));
  47.         t.setText("Rozpocznij Nowa Grę \n wciskając Nowa Gra");
  48.         sterowanie.add(nowagra);
  49.         sterowanie.add(t);
  50.         sterowanie.add(sprawdz);
  51.         sterowanie.add(latwiej);
  52.         sterowanie.add(r);
  53.         sterowanie.add(trudniej);
  54.         sterowanie.add(zapisz);
  55.         sterowanie.add(wczytaj);
  56.         sterowanie.add(tutorial);
  57.         r.setText("Rozmiar planszy : " + rozmiar + "x" + rozmiar);
  58.  
  59.        
  60.         latwiej.addActionListener(new latwiej_przycisk());
  61.         trudniej.addActionListener(new trudniej_przycisk());
  62.         nowagra.addActionListener(new nowa_gra());
  63.        
  64.        
  65.         // Plansza :
  66.         plansza.setLayout(new GridLayout(rozmiar,rozmiar));
  67.         for (int i=0; i<rozmiar; i++) {
  68.             for (int j=0; j<rozmiar; j++) {
  69.                 tab[i][j] = new JButton("");
  70.                 plansza.add(tab[i][j]);
  71.             }
  72.            
  73.         }
  74.         setDefaultCloseOperation(EXIT_ON_CLOSE);
  75.     }
  76.    
  77.    
  78.     class latwiej_przycisk implements ActionListener {
  79.         public void actionPerformed(ActionEvent e) {
  80.            
  81.             if (rozmiar > 3) {
  82.             rozmiar = rozmiar - 1;
  83.             r.setText("Rozmiar planszy : " + rozmiar + "x" + rozmiar);
  84.             }
  85.             else {
  86.             r.setText("Rozmiar planszy : " + rozmiar + "x" + rozmiar);
  87.             }
  88.            
  89.         }
  90.        
  91.     }
  92.    
  93.     class trudniej_przycisk implements ActionListener {
  94.         public void actionPerformed(ActionEvent e) {
  95.            
  96.             if (rozmiar < 15) {
  97.             rozmiar = rozmiar + 1;
  98.             r.setText("Rozmiar planszy : " + rozmiar + "x" + rozmiar);
  99.             }
  100.             else {
  101.             r.setText("Rozmiar planszy : " + rozmiar + "x" + rozmiar);
  102.             }
  103.            
  104.         }
  105.        
  106.     }
  107.    
  108.     class nowa_gra implements ActionListener {
  109.         public void actionPerformed(ActionEvent e) {
  110.          plansza.removeAll();
  111.          plansza.setLayout(new GridLayout(rozmiar,rozmiar));
  112.          for (int i=0; i<rozmiar; i++) {
  113.                 for (int j=0; j<rozmiar; j++) {
  114.                     tab[i][j] = new JButton("");
  115.                     plansza.add(tab[i][j]);
  116.                 }
  117.                
  118.             }
  119.          liczba_skarbow = 1 + rozmiar / 4;
  120.          Gra();
  121.          
  122.          
  123.          plansza.updateUI();
  124.         }
  125.        
  126.        
  127.        
  128.     }
  129.    
  130. private void Gra() {
  131.        
  132.         // Zaznaczone polu gdzie skarb = X || skarb to 3
  133.         // Podpowiedz to cyfra
  134.         // Znaleziony skarb to :D
  135.        
  136.         liczba_skarbow =  (rozmiar*rozmiar)/4;
  137.         liczba_podpowiedzi = (rozmiar*rozmiar)/4;
  138.         liczba_nieodnalezionych_skarbów = liczba_skarbow;
  139.         int x = 0;
  140.         int kolumna = 0;
  141.         int wiersz = 0;
  142.        
  143.         while (x < liczba_skarbow) {
  144.            
  145.             kolumna = (int) random.nextInt() % rozmiar;
  146.             wiersz = (int) random.nextInt() % rozmiar;
  147.            
  148.             if (plaza[wiersz][kolumna] != 3) {
  149.                 plaza[wiersz][kolumna] = 3; x++;
  150.                 }
  151.            
  152.  
  153.         }
  154.        
  155.        
  156.        
  157.        
  158.     }
  159.  
  160.  
  161.  
  162.  public static void main(String[] arg){
  163.  
  164.   JFrame gi = new Skarby() ;
  165.   gi.setSize(1000,800) ;
  166.   gi.setLocation(100,100);
  167.   gi.setVisible(true);
  168.  }
  169. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement