far_light

Field

Nov 15th, 2017
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.04 KB | None | 0 0
  1. package com.vladislav;
  2.  
  3. // Import libraries for create UI, event and I/O
  4. import javax.imageio.*;
  5. import javax.swing.*;
  6. import java.awt.*;
  7. import java.awt.event.*;
  8. import java.io.File;
  9.  
  10. // Field contain player, background, etc.
  11. public class Field extends JPanel {
  12.     // Image and x-coordinate for player
  13.     private Image background, player;
  14.     public int x = 400;
  15.     private int hard;
  16.     private Prize[] prize;
  17.  
  18.  
  19.     public Field(int hard) {
  20.         this.hard = hard;
  21.  
  22.         // Timer for update prizes
  23.         Timer timerUpdate = new Timer(3000, new ActionListener() {
  24.             public void actionPerformed(ActionEvent e) {
  25.                 updateStart();
  26.             }
  27.         });
  28.  
  29.         // Timer for FPS and start him
  30.         Timer timer = new Timer(50, new ActionListener() {
  31.             public void actionPerformed(ActionEvent e) {
  32.                 repaint();
  33.             }
  34.         });
  35.  
  36.         timer.start();
  37.         timerUpdate.start();
  38.  
  39.         // Load image
  40.         prize = new Prize[7];
  41.         try {
  42.             background = ImageIO.read(new File("background.jpg"));
  43.             player = ImageIO.read(new File("head.jpg"));
  44.  
  45.             for (int i = 0; i < 7; i++)
  46.                 prize[i] = new Prize(ImageIO.read(new File("prize" + i + ".png")));
  47.         } catch (Exception e) {
  48.             System.out.print("Downloading error!");
  49.             System.exit(1);
  50.         }
  51.     }
  52.  
  53.     private void updateStart() {
  54.         int count = 0;
  55.  
  56.         for (int i = 0; i < 7; i++) {
  57.             if (prize[i].activity == false && count < hard) {
  58.                 prize[i].start();
  59.                 break;
  60.             } else
  61.                 count++;
  62.         }
  63.     }
  64.  
  65.     // Draw graphics
  66.     public void paintComponent(Graphics graph) {
  67.         super.paintComponent(graph);
  68.  
  69.         // First - background, second - player
  70.         graph.drawImage(background, 0, 0, 800, 600, null);
  71.         graph.drawImage(player, x, 320, null);
  72.  
  73.         for (int i = 0; i < 7; i++)
  74.             prize[i].draw(graph);
  75.     }
  76. }
Add Comment
Please, Sign In to add comment