2016-02-16 03:42:12 -05:00
|
|
|
package diveengine2d;
|
|
|
|
|
|
|
|
|
|
import java.awt.event.KeyEvent;
|
|
|
|
|
import java.awt.event.KeyListener;
|
2016-02-23 23:10:45 -05:00
|
|
|
import java.awt.event.MouseEvent;
|
|
|
|
|
import java.awt.event.MouseListener;
|
|
|
|
|
import java.awt.event.MouseMotionListener;
|
2016-02-16 03:42:12 -05:00
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
|
2016-02-23 23:10:45 -05:00
|
|
|
public class Input implements KeyListener, MouseListener, MouseMotionListener{
|
2016-02-16 03:42:12 -05:00
|
|
|
|
|
|
|
|
private static boolean[] keys = new boolean[512];
|
|
|
|
|
private static List<KeyListener> listeners = new ArrayList<KeyListener>();
|
2016-02-23 23:10:45 -05:00
|
|
|
public static int mouseX, mouseY;
|
2016-03-11 00:10:51 -05:00
|
|
|
public static boolean mouse = false;
|
2016-02-16 03:42:12 -05:00
|
|
|
|
|
|
|
|
public static void addKeyListener(KeyListener listener) {
|
|
|
|
|
listeners.add(listener);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public static boolean getKeyDown(int keyCode) {
|
|
|
|
|
return keys[keyCode];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public static boolean getKeyUp(int keyCode) {
|
|
|
|
|
return !keys[keyCode];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void keyTyped(KeyEvent e) {}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void keyPressed(KeyEvent e) {
|
|
|
|
|
keys[e.getKeyCode()] = true;
|
|
|
|
|
for(KeyListener l : listeners) l.keyPressed(e);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void keyReleased(KeyEvent e) {
|
|
|
|
|
keys[e.getKeyCode()] = false;
|
|
|
|
|
for(KeyListener l : listeners) l.keyReleased(e);
|
|
|
|
|
}
|
2016-02-23 23:10:45 -05:00
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void mouseClicked(MouseEvent e) {
|
|
|
|
|
// TODO Auto-generated method stub
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void mouseEntered(MouseEvent e) {
|
|
|
|
|
// TODO Auto-generated method stub
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void mouseExited(MouseEvent e) {
|
|
|
|
|
// TODO Auto-generated method stub
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void mousePressed(MouseEvent e) {
|
2016-03-11 00:10:51 -05:00
|
|
|
mouse = true;
|
2016-02-23 23:10:45 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void mouseReleased(MouseEvent e) {
|
2016-03-11 00:10:51 -05:00
|
|
|
mouse = false;
|
2016-02-23 23:10:45 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void mouseDragged(MouseEvent e) {
|
|
|
|
|
// TODO Auto-generated method stub
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void mouseMoved(MouseEvent e) {
|
|
|
|
|
mouseX = e.getX();
|
|
|
|
|
mouseY = e.getY();
|
|
|
|
|
}
|
2016-02-16 03:42:12 -05:00
|
|
|
}
|