游戏帮助和游戏关于
private Image helpImg;
private Image aboutImg;
private void drawAbout(Graphics g) {
g.setColor(Color.BLACK);
g.fillRect(0,0,FRAME_WIDTH,FRAME_HEIGHT);
if(aboutImg == null){
aboutImg = MyUtil.createImage("res/about.png");
}
int width = aboutImg.getWidth(null);
int height = aboutImg.getHeight(null);
int x =FRAME_WIDTH - width >>1;
int y =FRAME_HEIGHT -height>>1;
g.drawImage(aboutImg,x,y,null);
g.setColor(Color.WHITE);
g.drawString("任意键继续",10,FRAME_HEIGHT-10);
}
private void drawHelp(Graphics g) {
g.setColor(Color.BLACK);
g.fillRect(0,0,FRAME_WIDTH,FRAME_HEIGHT);
if(helpImg == null){
helpImg = MyUtil.createImage("res/help.png");
}
int width = helpImg.getWidth(null);
int height = helpImg.getHeight(null);
int x = FRAME_WIDTH - width >>1;
int y = FRAME_HEIGHT - height >>1;
g.drawImage(helpImg,x,y,null);
g.setColor(Color.WHITE);
g.drawString("任意键继续",10,FRAME_HEIGHT-10);
}
private void KeyEventAbout(int keyCode) {
setGameState(STATE_MENU);
}
private void KeyEventHelp(int keyCode) {
setGameState(STATE_MENU);
}
//菜单状态下的按键的处理,向下向上不断地选择
private void KeyEventMenu(int keyCode) {
switch (keyCode) {
case KeyEvent.VK_UP:
case KeyEvent.VK_W:
menuIndex--;
if (menuIndex < 0) {
menuIndex = MENUS.length - 1;
}
// repaint(); //启动线程之后不再需要
break;
case KeyEvent.VK_DOWN:
case KeyEvent.VK_S:
menuIndex++;
if (menuIndex > MENUS.length - 1) {
menuIndex = 0;
}
// repaint(); //启动线程之后不再需要
break;
case KeyEvent.VK_ENTER: //按下enter键启动游戏
switch (menuIndex){
case 0:
newGame(1);
break;
case 1:
//继续游戏。进入选择关卡的界面
break;
case 2:
setGameState(STATE_HELP);
break;
case 3:
setGameState(STATE_ABOUT);
break;
case 4:
System.exit(0);
break;
}
}
}
private void KeyEventOver(int keyCode) {
if(keyCode==KeyEvent.VK_ESCAPE)
System.exit(0);
else if(keyCode== KeyEvent.VK_ENTER) {
setGameState(STATE_MENU);
resetGame();
}
}