Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.awt.Frame;
- import java.awt.Graphics;
- import java.awt.Rectangle;
- import java.awt.event.KeyEvent;
- import java.awt.event.KeyListener;
- import java.awt.event.MouseEvent;
- import java.awt.event.MouseMotionListener;
- public class MovementTest extends Frame implements Runnable, MouseMotionListener, KeyListener {
- private static Thread thread;
- private int mouseX, mouseY;
- private boolean movingRight;
- private boolean movingLeft;
- private boolean movingUp;
- private boolean movingDown;
- private Rectangle player = new Rectangle(50, 50, 100, 100);
- private Rectangle wallOne = new Rectangle(400, 50, 100, 100);
- public MovementTest() {
- setSize(800, 600);
- setVisible(true);
- addKeyListener(this);
- addMouseMotionListener(this);
- }
- public static void main(String[] args) {
- thread = new Thread(new MovementTest());
- thread.start();
- }
- @Override
- public void run() {
- try {
- while(true) {
- if(player.intersects(wallOne)) {
- thread.stop();
- break;
- }
- if(movingRight) {
- player.x++;
- } else if(movingLeft) {
- player.x--;
- }
- if(movingUp) {
- player.y--;
- } else if(movingDown) {
- player.y++;
- }
- paint(getGraphics());
- Thread.sleep(5);
- }
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- }
- @Override
- public void keyPressed(KeyEvent e) {
- int key = e.getKeyCode();
- if (key == KeyEvent.VK_D)
- movingRight = true;
- if (key == KeyEvent.VK_A)
- movingLeft = true;
- if (key == KeyEvent.VK_W)
- movingUp = true;
- if (key == KeyEvent.VK_S)
- movingDown = true;
- }
- @Override
- public void keyReleased(KeyEvent e) {
- int key = e.getKeyCode();
- if (key == KeyEvent.VK_D)
- movingRight = false;
- if (key == KeyEvent.VK_A)
- movingLeft = false;
- if (key == KeyEvent.VK_W)
- movingUp = false;
- if (key == KeyEvent.VK_S)
- movingDown = false;
- }
- @Override
- public void keyTyped(KeyEvent arg0) {
- // TODO Auto-generated method stub
- }
- public void paint(Graphics g) {
- g.drawString("x: " + mouseX + " y: " + mouseY, 5, 35);
- g.drawRect(player.x, player.y, 100, 100);
- g.drawRect(wallOne.x, wallOne.y, 100, 100);
- repaint();
- }
- @Override
- public void mouseDragged(MouseEvent e) {
- // TODO Auto-generated method stub
- }
- @Override
- public void mouseMoved(MouseEvent e) {
- mouseX = e.getX();
- mouseY = e.getY();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement