Want more features on Pastebin? Sign Up, it's FREE!
Guest

MovementTest

By: Chiddix on Oct 21st, 2011  |  syntax: Java  |  size: 2.39 KB  |  views: 54  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. import java.awt.Frame;
  2. import java.awt.Graphics;
  3. import java.awt.Rectangle;
  4. import java.awt.event.KeyEvent;
  5. import java.awt.event.KeyListener;
  6. import java.awt.event.MouseEvent;
  7. import java.awt.event.MouseMotionListener;
  8.  
  9.  
  10. public class MovementTest extends Frame implements Runnable, MouseMotionListener, KeyListener {
  11.  
  12.         private static Thread thread;
  13.         private int mouseX, mouseY;
  14.         private boolean movingRight;
  15.         private boolean movingLeft;
  16.         private boolean movingUp;
  17.         private boolean movingDown;
  18.  
  19.         private Rectangle player = new Rectangle(50, 50, 100, 100);
  20.         private Rectangle wallOne = new Rectangle(400, 50, 100, 100);
  21.  
  22.         public MovementTest() {
  23.                 setSize(800, 600);
  24.                 setVisible(true);
  25.                 addKeyListener(this);
  26.                 addMouseMotionListener(this);
  27.         }
  28.  
  29.         public static void main(String[] args) {
  30.                 thread = new Thread(new MovementTest());
  31.                 thread.start();
  32.         }
  33.  
  34.         @Override
  35.         public void run() {
  36.                 try {
  37.                         while(true) {
  38.                                 if(player.intersects(wallOne)) {
  39.                                         thread.stop();
  40.                                         break;
  41.                                 }
  42.                                 if(movingRight) {
  43.                                         player.x++;
  44.                                 } else if(movingLeft) {
  45.                                         player.x--;
  46.                                 }
  47.                                 if(movingUp) {
  48.                                         player.y--;
  49.                                 } else if(movingDown) {
  50.                                         player.y++;
  51.                                 }
  52.                                 paint(getGraphics());
  53.                                 Thread.sleep(5);
  54.                         }
  55.                 } catch (InterruptedException e) {
  56.                         e.printStackTrace();
  57.                 }
  58.         }
  59.  
  60.         @Override
  61.         public void keyPressed(KeyEvent e) {
  62.                 int key = e.getKeyCode();
  63.                 if (key == KeyEvent.VK_D)
  64.                         movingRight = true;
  65.                 if (key == KeyEvent.VK_A)
  66.                         movingLeft = true;
  67.                 if (key == KeyEvent.VK_W)
  68.                         movingUp = true;
  69.                 if (key == KeyEvent.VK_S)
  70.                         movingDown = true;
  71.         }
  72.  
  73.         @Override
  74.         public void keyReleased(KeyEvent e) {
  75.                 int key = e.getKeyCode();
  76.                 if (key == KeyEvent.VK_D)
  77.                         movingRight = false;
  78.                 if (key == KeyEvent.VK_A)
  79.                         movingLeft = false;
  80.                 if (key == KeyEvent.VK_W)
  81.                         movingUp = false;
  82.                 if (key == KeyEvent.VK_S)
  83.                         movingDown = false;
  84.         }
  85.  
  86.         @Override
  87.         public void keyTyped(KeyEvent arg0) {
  88.                 // TODO Auto-generated method stub
  89.                
  90.         }
  91.  
  92.         public void paint(Graphics g) {
  93.                 g.drawString("x: " + mouseX + " y: " + mouseY, 5, 35);
  94.                 g.drawRect(player.x, player.y, 100, 100);
  95.                 g.drawRect(wallOne.x, wallOne.y, 100, 100);
  96.                 repaint();
  97.         }
  98.  
  99.         @Override
  100.         public void mouseDragged(MouseEvent e) {
  101.                 // TODO Auto-generated method stub
  102.                
  103.         }
  104.  
  105.         @Override
  106.         public void mouseMoved(MouseEvent e) {
  107.                 mouseX = e.getX();
  108.                 mouseY = e.getY();
  109.         }
  110. }
  111.  
  112.  
clone this paste RAW Paste Data