martaczaska

Poziominio

Jan 6th, 2020
266
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.60 KB | None | 0 0
  1. package com.company;
  2. import javax.imageio.ImageIO;
  3. import javax.swing.*;
  4. import java.awt.*;
  5. import java.awt.event.ActionEvent;
  6. import java.awt.event.ActionListener;
  7. import java.awt.image.BufferedImage;
  8. import java.io.File;
  9. import java.io.IOException;
  10. import java.util.TimerTask;
  11. import java.util.Timer;
  12.  
  13.  
  14. public class Poziomy extends JPanel implements ActionListener {
  15.     static int czas = 1;
  16.     static int time = 0;
  17.    
  18.     public BufferedImage tlo_lvl;
  19.     JButton latwy;
  20.     JButton sredni;
  21.     JButton trudny;
  22.    
  23.     TimerTask odlicz = new odliczanie();
  24.     static Timer timer = new Timer();
  25.  
  26.  
  27.     public Poziomy(){
  28.         setLayout(null);
  29.  
  30.         File zdj_lvl = new File("zdjecia/tlo_poziomy.png");
  31.         try{ tlo_lvl = ImageIO.read(zdj_lvl); }
  32.         catch(IOException e){ System.err.println("Blad odczytu obrazków"); }
  33.  
  34.         latwy = new JButton("łatwy");
  35.         sredni = new JButton("średni");
  36.         trudny = new JButton("trudny");
  37.  
  38.         latwy.addActionListener(this);
  39.         sredni.addActionListener(this);
  40.         trudny.addActionListener(this);
  41.  
  42.         latwy.setBounds(320, 100, 300, 80 );
  43.         latwy.setFont(new Font("Cambria", Font.BOLD, 35));
  44.         latwy.setBackground(Color.white);
  45.         sredni.setBounds(320, 300, 300, 80);
  46.         sredni.setFont(new Font("Cambria", Font.BOLD, 35));
  47.         sredni.setBackground(Color.white);
  48.         trudny.setBounds(320, 500, 300, 80);
  49.         trudny.setFont(new Font("Cambria", Font.BOLD, 35));
  50.         trudny.setBackground(Color.white);
  51.  
  52.         add(latwy);
  53.         add(sredni);
  54.         add(trudny);
  55.  
  56.     }
  57.  
  58.     public void actionPerformed(ActionEvent f){
  59.  
  60.         Object poziom = f.getSource();
  61.         if(poziom == latwy){
  62.             czas = 30;
  63.             time = 0;
  64.             timer = new Timer();
  65.             odlicz = new odliczanie();
  66.             timer.schedule(odlicz, 0, 1000);
  67.         }
  68.  
  69.         else if(poziom == sredni){
  70.             czas = 20;
  71.             time = 0;
  72.             timer = new Timer();
  73.             odlicz = new odliczanie();
  74.             timer.schedule(odlicz, 0, 1000);
  75.         }
  76.  
  77.         else if(poziom == trudny){
  78.             czas = 10;
  79.             time = 0;
  80.             timer = new Timer();
  81.             odlicz = new odliczanie();
  82.             timer.schedule(odlicz, 0, 1000);
  83.  
  84.         }
  85.     }
  86.  
  87.     public class odliczanie extends TimerTask{
  88.  
  89.         public void run() {
  90.             ++time;
  91.             Etap_1.label_timer.setText(String.valueOf(czas - time));
  92.  
  93.             przejscie(czas);
  94.         }
  95.     }
  96.  
  97.     public void przejscie(int tiktak){
  98.  
  99.         CardLayout CL_risky =(CardLayout)(Projekt.noweOkno.karty.getLayout());
  100.         CL_risky.show(Projekt.noweOkno.karty, "etap_1");
  101.         Etap_1.jt.requestFocusInWindow();
  102.  
  103.         if(tiktak != time) {
  104.                 CardLayout CL_2 = (CardLayout) (Projekt.noweOkno.karty.getLayout());
  105.                 CL_2.show(Projekt.noweOkno.karty, "etap_1");
  106.         }
  107.         if(tiktak == time){
  108.             timer.cancel();
  109.             JOptionPane.showMessageDialog(null, "Przechodzisz do kolejnego etapu, teraz z zebranych przed chwilą liter musisz ułożyć jak najwięcej słów. \n Powodzenia :)");
  110.  
  111.             Okno.karty.add( new Etap_3(), "etap_3");
  112.             CardLayout CL_3 =(CardLayout)(Projekt.noweOkno.karty.getLayout());
  113.             CL_3.show(Projekt.noweOkno.karty, "etap_3");
  114.             Etap_3.jt_pole.requestFocusInWindow();
  115.         }
  116.     }
  117.  
  118.  
  119.  
  120.     public void paintComponent(Graphics graphic) {
  121.         Graphics2D g2d = (Graphics2D) graphic;
  122.         g2d.drawImage(tlo_lvl, 0, 0, this);
  123.     }
  124.  
  125. }
Advertisement
Add Comment
Please, Sign In to add comment