📄 keyparser.java
字号:
package netwar.gui;
import java.awt.event.*;
import netwar.game.Player;
import netwar.game.GameObject;
public class KeyParser implements KeyListener {
private static KeyParser kp;
private KeyParser(){}
public void keyPressed (java.awt.event.KeyEvent keyEvent) {
if (keyEvent.getKeyCode()== KeyEvent.VK_UP){
HexViewer.getHexViewer().getTransform().translate(0,50);
HexViewer.getHexViewer().updateBackground();
}
else if (keyEvent.getKeyCode()== KeyEvent.VK_DOWN) {
HexViewer.getHexViewer().getTransform().translate(0,-50);
HexViewer.getHexViewer().updateBackground();
}
else if (keyEvent.getKeyCode()== KeyEvent.VK_LEFT) {
HexViewer.getHexViewer().getTransform().translate(50,0);
HexViewer.getHexViewer().updateBackground();
}
else if (keyEvent.getKeyCode()== KeyEvent.VK_RIGHT) {
HexViewer.getHexViewer().getTransform().translate(-50,0);
HexViewer.getHexViewer().updateBackground();
}
else {
switch(keyEvent.getKeyChar()){
// Zooming in
case '+':
case '=':
if(HexViewer.getHexViewer().parser.zoomLevel < MouseParser.maxZoom) {
HexViewer.getHexViewer().getTransform().zoom (2.0f, (int)HexViewer.getHexViewer().getBounds().width / 2, (int)HexViewer.getHexViewer().getBounds().height / 2);
HexViewer.getHexViewer().parser.zoomLevel++;
HexViewer.getHexViewer().updateBackground();
}
break;
// zooming out
case '-':
case '_':
if(HexViewer.getHexViewer().parser.zoomLevel > MouseParser.minZoom) {
HexViewer.getHexViewer().getTransform().zoom (0.5f, (int)HexViewer.getHexViewer().getBounds().width / 2, (int)HexViewer.getHexViewer().getBounds().height / 2);
HexViewer.getHexViewer().parser.zoomLevel--;
HexViewer.getHexViewer().updateBackground();
}
break;
// selecting all units
case 'a':
case 'A':
Player pl = Player.getLocal();
int sel[] = new int[pl.numObject() - ((pl.baseDead())?(0):(1))];
HexViewer.getHexViewer().parser.selarray = sel;
HexViewer.getHexViewer().parser.selTime = 0.0f;
if(sel.length == 0) break;
sel[0] = pl.getFirstObject().getID();
for(int i = ((pl.baseDead())?(1):(0)); i < sel.length; i++)
sel[i] = pl.getNextObject().getID();
String[][] s = GameObject.getObjectWithID(sel[0]).getProperties();
((netwar.gui.NetwarPanel)netwar.Netwar.netwar.getDataViewer()).updateDisplay(s,sel[0]);
break;
}
}
}
public void keyReleased (java.awt.event.KeyEvent keyEvent) {
}
public void keyTyped (java.awt.event.KeyEvent keyEvent) {
}
public static KeyParser getKeyParser(){
if (kp==null){
kp = new KeyParser();
}
return kp;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -