import java.awt.*; import java.awt.event.*; public class Hidden extends TextField implements KeyListener{ Global global; boolean keys[]=new boolean[1255]; int key; public Hidden(Global glob){ global=glob; // enableEvents(AWTEvent.KEY_EVENT_MASK); for(int i=0;i<1024;i++)keys[i]=false; addKeyListener(this); } /* public void processKeyEvent(KeyEvent ke) { if(!global.freezekeyboard ){ key=ke.getKeyCode(); if(key == global.UP) global.dir=-global.WIDTH*global.STEPP; if(key == global.DOWN) global.dir=global.WIDTH*global.STEPP; if(key == global.RIGHT){ global.dir=global.STEPP; } if(key == global.LEFT){ global.dir=-global.STEPP; } global.freezekeyboard=true; } ke.consume(); } */ /** * Notification of a key press * * @param e The event details */ public void keyPressed(KeyEvent e) { if (e.isConsumed()) { return; } keys[e.getKeyCode()] = true; if(!global.freezekeyboard ){ int key=e.getKeyCode(); if(key == global.UP) global.dir=-global.WIDTH*global.STEPP; if(key == global.DOWN) global.dir=global.WIDTH*global.STEPP; if(key == global.RIGHT){ global.dir=global.STEPP; } if(key == global.LEFT){ global.dir=-global.STEPP; } System.out.println(" KeybarD:"+key); global.freezekeyboard=true; } } /** * Notification of a key release * * @param e The event details */ public void keyReleased(KeyEvent e) { if (e.isConsumed()) { return; } KeyEvent nextPress = (KeyEvent) Toolkit.getDefaultToolkit().getSystemEventQueue().peekEvent(KeyEvent.KEY_PRESSED); if ((nextPress == null) || (nextPress.getWhen() != e.getWhen()) || (nextPress.getKeyCode() != e.getKeyCode())) { keys[e.getKeyCode()] = false; global.dir=0; } } /** * Notification that an event has occured in the AWT event * system * * @param e The event details */ public void eventDispatched(AWTEvent e) { if (e.getID() == KeyEvent.KEY_PRESSED) { keyPressed((KeyEvent) e); } if (e.getID() == KeyEvent.KEY_RELEASED) { keyReleased((KeyEvent) e); } } public void keyTyped(KeyEvent e){} }