Guest User

Untitled

a guest
Jan 14th, 2017
101
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import java.awt.Color;
  2. import java.awt.Container;
  3. import java.awt.Dimension;
  4. import java.awt.FlowLayout;
  5. import java.awt.Graphics;
  6.  
  7. import javax.swing.BorderFactory;
  8. import javax.swing.JFrame;
  9. import javax.swing.JPanel;
  10. import javax.swing.SwingUtilities;
  11.  
  12. public class Teste extends JFrame {
  13.    
  14.     JPanel jp;
  15.    
  16.     int dx = 175, dy = 125; //posicoes
  17.     int vx, vy; //velocidades
  18.    
  19.     public Teste() {
  20.        
  21.         super("Joguinho");
  22.        
  23.         Container c = getContentPane();
  24.         c.setLayout(new FlowLayout());
  25.         jp = new JPanel();
  26.         jp.setBackground(Color.black);
  27.         jp.setBorder(BorderFactory.createLineBorder(Color.BLUE, 5));
  28.         jp.setPreferredSize(new Dimension(380, 250));
  29.         c.add(jp);
  30.        
  31.         new Update().start();
  32.         setSize(400, 300);
  33.         setLocationRelativeTo(null);
  34.         setDefaultCloseOperation(EXIT_ON_CLOSE);
  35.     }
  36.    
  37.     @Override
  38.     public void paint(Graphics g) {
  39.  
  40.         super.paint(g);
  41.         g.setColor(Color.RED);
  42.         g.fillOval(dx, dy, 50, 50);
  43.     }
  44.     private void verificaColisao() {
  45.         if(dx < 0) {
  46.             System.out.println("bateu");
  47.         }
  48.        
  49.     }
  50.    
  51.     public class Update extends Thread {
  52.        
  53.         @Override
  54.         public void run() {
  55.             while(true) {
  56.                
  57.                 try {
  58.                     Thread.sleep(400);
  59.                     dx -= 20;
  60.                     verificaColisao();
  61.                 } catch (InterruptedException e) {
  62.                     e.printStackTrace();
  63.                     }
  64.                 repaint();
  65.                 }
  66.         }
  67.     }
  68.     public static void main(String[] args) {
  69.        
  70.         SwingUtilities.invokeLater(new Runnable() {
  71.            
  72.             @Override
  73.             public void run() {
  74.                 new Teste().setVisible(true);
  75.                
  76.             }
  77.         });
  78.     }
  79. }
RAW Paste Data