Advertisement
Guest User

Untitled

a guest
May 7th, 2014
259
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.64 KB | None | 0 0
  1. import java.applet.Applet;
  2. import java.awt.Color;
  3. import java.awt.Font;
  4. import java.awt.Graphics;
  5. import java.awt.Image;
  6. import java.awt.event.ActionEvent;
  7. import java.awt.event.ActionListener;
  8. import java.awt.event.KeyEvent;
  9. import java.awt.event.KeyListener;
  10. import javax.swing.Timer;
  11.  
  12. public class Snake extends Applet implements KeyListener, ActionListener {
  13.    
  14.     static Applet applet;
  15.    
  16.     Random random = new Random();
  17.     Ruch ruch = new Ruch();
  18.     Gra game = new Gra(this);
  19.    
  20.     Image tlo, snake, kulka, image;
  21.     Graphics graphics;
  22.    
  23.     static final int szerokoscRamki = 800, wysokoscRamki = 600;
  24.     static final int dot = 20;
  25.     static final int allDots = 900;
  26.     final int delay = 150;
  27.     static int dots;
  28.    
  29.     static int foodX = 60, foodY = 60;
  30.    
  31.     static final int[] x = new int[allDots];
  32.     static final int[] y = new int[allDots];
  33.    
  34.     static boolean left = false, up = false, right = false, down = false;
  35.     static boolean gra = true;
  36.    
  37.     Timer timer = new Timer(delay, this);
  38.    
  39.     public Snake() {
  40.         this.setFocusable(true);
  41.         this.addKeyListener(this);
  42.        
  43.         timer.start();
  44.     }
  45.    
  46.     public void init() {
  47.         setBackground(Color.black);
  48.         setSize(szerokoscRamki, wysokoscRamki);
  49.         tlo = getImage(getCodeBase(), "zdjecia/tlo.jpg");
  50.         snake = getImage(getCodeBase(), "zdjecia/snake.png");
  51.         kulka = getImage(getCodeBase(), "zdjecia/kulka.png");
  52.         image = createImage(szerokoscRamki, wysokoscRamki);
  53.         graphics = image.getGraphics();
  54.        
  55.         game.StartGra();
  56.     }
  57.    
  58.     public void update (Graphics g) {
  59.         graphics.clearRect(0, 0, szerokoscRamki, wysokoscRamki);
  60.         paint(graphics);
  61.         g.drawImage(image, 0, 0, applet);
  62.     }
  63.    
  64.     public void paint (Graphics g) {
  65.         //rysuje tło do gry
  66.         g.drawImage(tlo, 0, 0, szerokoscRamki-203, wysokoscRamki, this);
  67.         //rysuje obrazek snake
  68.         g.drawImage(snake, 600, 300, 200, 300, this);
  69.        
  70.         //rysuje snake
  71.         for (int i = 0; i < dots; i++) {
  72.             g.drawImage(kulka, x[i], y[i], 20, 20, this);
  73.         }
  74.        
  75.         //rysuje jedzenie
  76.         g.setColor(Color.RED);
  77.         g.fillOval(foodX, foodY, 16, 16);
  78.        
  79.         //punkty
  80.         g.setColor(Color.YELLOW);
  81.         Font font1 = new Font("Arial", Font.ITALIC + Font.BOLD, 15);
  82.         g.setFont(font1);
  83.         g.drawString("Punkty: " + random.punkty, 665, 15);
  84.        
  85.         //wiadomość po przegranej
  86.         if (gra == false) {
  87.             g.setColor(Color.RED);
  88.             Font font2 = new Font("Times New Roman", Font.ITALIC + Font.BOLD, 40);
  89.             g.setFont(font2);
  90.             g.drawString("PRZEGRAŁEŚ :(", 155, 300);
  91.            
  92.             g.setColor(Color.BLACK);
  93.             Font font3 = new Font("Arial", Font.ITALIC + Font.BOLD, 15);
  94.             g.setFont(font3);
  95.             g.drawString("Kliknij spację, aby zagrać ponownie", 170, 330);
  96.         }
  97.     }
  98.    
  99.     @Override
  100.     public void keyPressed(KeyEvent e) {
  101.        
  102.         int key = e.getKeyCode();
  103.        
  104.         if (key == KeyEvent.VK_LEFT && !right) {
  105.             left = true;
  106.             up = false;
  107.             right = false;
  108.             down = false;
  109.         }
  110.        
  111.         if (key == KeyEvent.VK_UP && !down) {
  112.             left = false;
  113.             up = true;
  114.             right = false;
  115.             down = false;
  116.         }
  117.        
  118.         if (key == KeyEvent.VK_RIGHT && !left) {
  119.             left = false;
  120.             up = false;
  121.             right = true;
  122.             down = false;
  123.         }
  124.        
  125.         if (key == KeyEvent.VK_DOWN && !up) {
  126.             left = false;
  127.             up = false;
  128.             right = false;
  129.             down = true;
  130.         }
  131.        
  132.         if (key == KeyEvent.VK_SPACE) {
  133.             random.punkty = 0;
  134.             game.StartGra();
  135.         }
  136.        
  137.         if (key == KeyEvent.VK_P) {
  138.             game.Stop();
  139.         }
  140.        
  141.         if (key == KeyEvent.VK_ENTER) {
  142.             game.GrajDalej();
  143.         }
  144.    
  145.     }
  146.  
  147.     @Override
  148.     public void keyReleased(KeyEvent e) {}
  149.  
  150.     @Override
  151.     public void keyTyped(KeyEvent e) {}
  152.  
  153.     @Override
  154.     public void actionPerformed(ActionEvent e) {
  155.         if(gra) {
  156.             random.Food();
  157.             ruch.Sterowanie();
  158.             game.Przegrana();
  159.         }
  160.         repaint();
  161.     }
  162.    
  163. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement