xxxx18一60岁hd中国/日韩女同互慰一区二区/西西人体扒开双腿无遮挡/日韩欧美黄色一级片 - 色护士精品影院www

資源簡介

基于Java的貪吃蛇游戲源代碼,非常完整,匹配的畢業論文請看我上傳的另一個資源,非常詳細完整!

資源截圖

代碼片段和文件信息

package?cn.snake.controller;

import?java.awt.Font;
import?java.awt.event.KeyAdapter;
import?java.awt.event.KeyEvent;
import?java.util.HashSet;
import?java.util.Set;

import?javax.swing.JLabel;

import?cn.snake.entities.Food;
import?cn.snake.entities.Ground;
import?cn.snake.entities.Snake;
import?cn.snake.listener.GameListener;
import?cn.snake.listener.SnakeListener;
import?cn.snake.util.Global;
import?cn.snake.view.GamePanel;

/**
?*?控制器

?*?控制Ground?Snake?Food

?*?負責游戲的邏輯

?*?處理按鍵事件

?*?

?*?實現了SnakeListener接口?可以處理Snake?觸發的事件

?*?方法?snakeEatFood()?處理蛇吃到食物后觸發的?snakeEatFood事件?但什么也沒做

?*?

?*?
?*/
public?class?Controller?extends?KeyAdapter?implements?SnakeListener?{

/*?地形?*/
private?Ground?ground;

/*?蛇?*/
private?Snake?snake;

/*?食物?*/
private?Food?food;

/*?顯示?*/
private?GamePanel?gamePanel;

/*?提示信息?*/
private?JLabel?gameInfoLabel;

private?boolean?playing;

private?int?map;

/*?控制器監聽器?*/
private?Set?listeners?=?new?HashSet();

/**
?*?處理按鍵事件

?*?接受按鍵?根據按鍵不同?發出不同的指令

?*?UP:?改變蛇的移動方向為向上

?*?DOWN:?改變蛇的移動方向為向下

?*?LEFT:?改變蛇的移動方向為向左?

?*?RIGHT:?改變蛇的移動方向為向右

?*?SPACE:?暫停/繼續

?*?PAGE?UP:?加快蛇的移動速度

?*?PAGE?DOWN:?減慢蛇的移動速度

?*?Y:?重新開始游戲
?*/
public?void?keyPressed(KeyEvent?e)?{
if?(e.getKeyCode()?!=?KeyEvent.VK_Y?&&?!playing)
return;
//?TODO?Auto-generated?method?stub
/*?根據按鍵不同?讓蛇改變不同的方向?*/
switch?(e.getKeyCode())?{

/*?方向鍵?上?*/
case?KeyEvent.VK_UP:
if?(snake.isPause())?{
snake.changePause();
for?(GameListener?l?:?listeners)
l.gameContinue();
}
snake.changeDirection(Snake.UP);
break;
/*?方向鍵?下?*/
case?KeyEvent.VK_DOWN:
if?(snake.isPause())?{
snake.changePause();
for?(GameListener?l?:?listeners)
l.gameContinue();
}
snake.changeDirection(Snake.DOWN);
break;
/*?方向鍵?左?*/
case?KeyEvent.VK_LEFT:
if?(snake.isPause())?{
snake.changePause();
for?(GameListener?l?:?listeners)
l.gameContinue();
}
snake.changeDirection(Snake.LEFT);
break;
/*?方向鍵?右?*/
case?KeyEvent.VK_RIGHT:
if?(snake.isPause())?{
snake.changePause();
for?(GameListener?l?:?listeners)
l.gameContinue();
}
snake.changeDirection(Snake.RIGHT);
break;
/*?回車或空格?(暫停)?*/
case?KeyEvent.VK_ENTER:
case?KeyEvent.VK_SPACE:
snake.changePause();
/*?===?*/
for?(GameListener?l?:?listeners)
if?(snake.isPause())
l.gamePause();
else
l.gameContinue();
break;
/*?PAGE_UP?加速?*/
case?KeyEvent.VK_PAGE_UP:
snake.speedUp();
break;
/*?PAGE_DOWN?減速?*/
case?KeyEvent.VK_PAGE_DOWN:
snake.speedDown();
break;
/*?字母鍵?Y?(重新開始游戲)?*/
case?KeyEvent.VK_Y:
if?(!isPlaying())
newGame();
break;
}

/*?重新顯示?*/
if?(gamePanel?!=?null)
gamePanel.redisplay(ground?snake?food);
/*?更新提示?*/
if?(gameInfoL

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2012-04-08?17:22??源代碼\
?????目錄???????????0??2012-04-08?16:56??源代碼\Snake\
?????文件?????????232??2008-01-28?09:37??源代碼\Snake\.classpath
?????文件?????????381??2011-12-12?21:32??源代碼\Snake\.project
?????目錄???????????0??2012-04-08?16:56??源代碼\Snake\.settings\
?????文件?????????629??2011-12-12?21:33??源代碼\Snake\.settings\org.eclipse.jdt.core.prefs
?????目錄???????????0??2012-04-08?17:17??源代碼\Snake\bin\
?????目錄???????????0??2012-04-08?17:06??源代碼\Snake\bin\cn\
?????目錄???????????0??2012-04-08?17:06??源代碼\Snake\bin\cn\snake\
?????目錄???????????0??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\controller\
?????文件????????7430??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\controller\Controller.class
?????目錄???????????0??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\entities\
?????文件????????1908??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\entities\Food.class
?????文件????????3921??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\entities\Ground.class
?????文件????????1455??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\entities\Snake$SnakeDriver.class
?????文件????????6317??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\entities\Snake.class
?????目錄???????????0??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\game\
?????文件????????1004??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\game\GameOptionPanel$1.class
?????文件????????6685??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\game\GameOptionPanel.class
?????文件????????1153??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\game\Mainframe$1.class
?????文件?????????906??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\game\Mainframe$10.class
?????文件?????????857??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\game\Mainframe$11.class
?????文件????????1282??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\game\Mainframe$12.class
?????文件????????1279??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\game\Mainframe$13.class
?????文件????????1751??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\game\Mainframe$14.class
?????文件????????1168??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\game\Mainframe$2.class
?????文件????????1136??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\game\Mainframe$3.class
?????文件????????1156??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\game\Mainframe$4.class
?????文件????????1145??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\game\Mainframe$5.class
?????文件????????1149??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\game\Mainframe$6.class
?????文件????????1230??2012-04-08?17:07??源代碼\Snake\bin\cn\snake\game\Mainframe$7.class
............此處省略33個文件信息

評論

共有 條評論