一. 《貪吃蛇》課程設計報告
接對人鏈接:http://www.cnblogs.com/kongxiangyu/p/4492396.html
二. 貪吃蛇Github鏈接:https://github.com/wanghailing/test/blob/master/tanchishe
三.測試模塊分析及運行結果截圖
3.1貪吃蛇游戲設計與實現,主要分為以下二個模塊:游戲主界面模塊和游戲控制模塊。在此只實現游戲的游戲主界面模塊、游戲控制模塊。並且只是實現移動速度、暫停、重新開始等功能。
游戲主界面模塊:
游戲的主界面是進入游戲后,能夠給玩家第一感官的部分,主要包括游戲圖形區域界面、游戲的速度選擇更新界面、新生方塊的預覽、暫停游戲按鈕、重新開始游戲按鈕。從很大程度上決定了玩家對游戲的興趣問題,因此,游戲的主界面應該力求美觀,爽心悅目。
游戲控制模塊:
這個模塊是游戲的中心環節,主要完成控制游戲的開始、暫停、重新開始等功能。為了能夠給玩家一個很好的游戲環境,這部分應該做到易懂、易操作。
本設計所開發的是基於Java的一個貪吃蛇游戲軟件,主要實現游戲的速度控制、游戲的暫停、游戲的退出等功能,分為: 游戲主界面模塊、游戲控制模塊以二個模塊。
3.1.2程序概述
本程序是一個利用Java應用軟件制作的貪食蛇小游戲。在游戲過程中,用戶通過點擊小鍵盤區的方向鍵來控制蛇的運行方向;游戲運行過程中,如果想暫停,只需要按F3鍵即可。重新開始游戲的按鍵為F2。當蛇沒有吃到食物且碰到牆壁或自己的身體時游戲結束。
本程序的另一個功能是在程序運行窗口的左上角顯示,用戶在游戲過程中的移動和長度。
3.1.3程序流程圖
本次游戲設計的處理流程如圖1所示。
3.1.4 總設計模塊的划分
根據游戲需求中游戲所要實現的功能,整個游戲分為二個模塊進行具體的設計,如圖2所示。
游戲控制模塊的主要框架如圖3所示。
。
游戲暫停控制:點擊“F3”按鈕,游戲暫停;再單擊,游戲繼續。
游戲重新開始控制:點擊“F2”鍵后,點擊確定,即游戲重新開始。
游戲退出控制:點擊“F4”鍵好,點擊確定,退出游戲界面。
3.1.5類、方法、屬性說明
(1)成員變量
表1 主要成員變量(屬性)
成員變量描述 |
變量類型 |
名稱 |
文件菜單中子菜單“新建” |
JMenuItem |
mFile_New |
編輯菜單中子菜單“撤消” |
JMenuItem |
mEdit_Undo |
格式菜單中子菜單“顏色” |
JMenu |
formatMenu_Color |
幫助菜單中子菜單“幫助主題” |
MenuItem |
mHelp_HelpTopics |
(2)方法
表2 主要方法
方法名 |
功能 |
備注 |
Notepad4() |
描述記事本 |
無 |
Text.setBackground(Color.black) |
設置編輯區默認背景色 |
無 |
Text.setForeground(Color.black) |
設置編輯區默認前景色 |
無 |
3.1.6設計結果與分析
本程序在運行后,能夠正常的相應按鍵事件。由於程序的主要部分已經集成為一個對象SnakeModel,所以利用鍵盤就可以實現操作。蛇前行的過程中,可以任意向其左或右方向改變方向。點擊F3鍵后游戲就暫停了。點擊F2鍵游戲重新開始。點擊F4游戲退出。運行結果如下圖4所示:
當蛇沒有吃到食物且碰到邊界或碰撞到自己的身體時,游戲結束。如果想重新開始即點擊“確定”后按F2鍵,運行結果如下圖5所示:
四.心得體會
通過這次課程設計,我跟結對人孔祥玉對這學期所學的JAVA語言程序設計有一個更深刻的了解,將所學的知識應用於實踐,由於所學知識有限,為了使游戲能夠實現自己預先的構想,我們倆通過上網和去圖書館找程序,比較好的流程圖及功能模塊,不斷閱讀修改代碼使程序達到預期所要實現的目標,我負責寫程序,孔祥玉一旁查資料,並且觀察我寫代碼是否規范,一邊給我提出錯誤,解決問題,我也從中學會了很多。完成課程設計后,可以感覺到自己對Java程序的又有了新的認識。總之,通過本次的課程設計,使我平時學到的理論知識得到了很好地升華,理論與實際得到一次很好的結合,為我今后參加工作打下了堅實的基礎,使我受益匪淺。而且我體會到兩個人合作完成一個程序,真的需要很多耐心和配合,感謝老師給我們這個機會,我會好好加油的