999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Java的射擊游戲的開發與設計

2014-04-29 00:44:03曾令思余婷席一
電腦迷 2014年15期

曾令思 余婷 席一

摘 要 隨著計算機時代的到來,游戲受到人們越來越多的青睞。以單機游戲為背景,探討了射擊類游戲的諸多設計要點,包括體系結構,系統安全等。本游戲是一款休閑益智的射擊游戲。在JAVA的基礎上,極大的優化了代碼,減少了代碼冗余,而且易于查看游戲的運行界面。

關鍵詞 射擊游戲 代碼實現 JAVA游戲系統

中圖分類號:TP311.52 文獻標識碼:A

1系統架構

系統構架主要有兩方面組成,一個是開始界面,另一個是主函數。開始界面主要功能是實現跳轉,在開始界面中也應當具有背景,音樂等。在主函數中,主要調用我方子彈,桃心,我方滅火器,敵方蜜蜂,背景類,音樂類等功能模塊。

(1)在用戶點擊開始界面的“PLAY”按鈕后,可自動跳轉到主游戲界面。這是通過ActionListener實現監聽鍵盤動作的。在GameButton中主要是通過如下方式監聽鍵盤點擊的:

@Override

public void actionPerformed(ActionEvent e) {

if(e.getActionCommand( ).equals("btn")){

close_MainWindows( );

new GameButtonStart( ).showGame( );

return;

(2)實現方在窗體顯示方法中添加關閉監聽:

this.addWindowListener(new closeWindow()); this.setVisible(true);

再在窗體顯示方法外建立關閉窗口方法:

public void close_MainWindows( ) {

this.setVisible(false);}

(3)在游戲中可調用音樂類,實現播放音樂的功能。其主要實現方法是在類外部定義一個Music類,新建一個有音樂的music文件夾,再在主類中調用Music類。

2游戲設計中需要解決的主要問題分析

(1)背景圖層的循環顯示和閃爍。由于背景圖層只有一張圖片,若想讓游戲有移動的真實感,則應當讓圖片一直不停的移動。以圖片為參照物,就會感覺蜜蜂,滅火器的移動更加逼真。另外,圖片初始時會 出現閃爍問題,這時應當調用update()方法消除閃爍。

(2)蜜蜂和滅火器的碰撞。這時,可在我方滅火器的子彈類中,和蜜蜂類中獲取蜜蜂的矩形:

//獲取蜜蜂的矩形

public Rectangle getRectangle(){

return new Rectangle(planeBulletX, planeBulletY, planeBulletWidth, planeBulletHeight);}

3關鍵技術

(1)背景的實現:滾動背景主要通過move()來實現。在主程序調用BackGround類中的draMe(Graphics)時,就會自動的調用move()函數,實現屏幕的滾動播放。

(2)內存的優:很多程序由于沒有采用正確的方法分配和使用內存,不僅占用內存較多,而且運行效率不高。

4游戲的實現

本游戲的開發是在Microsoft Windows 2007操作系統下,使用JAVA語言開發的。

(1)開始界面的實現:用戶進入游戲系統后,首先出現的是開始界。在開始界面中,用戶點擊“PLAY”按鈕,在偵聽到點擊了“PLAY”按鈕后,跳轉到游戲進行界面。

(2)滾動屏幕的實現:在游戲界面中,會出現背景圖片。BackGround的實例化bg的初始化是在GameStart中,并且把GameStart的當前值傳給bg對象,以便于在程序退出時,能夠用主類調用它的退出方法closeWindow。在BackGround類中,設置一個bgwidth 和一個bgHeight分別設置背景圖片的寬和高。再設置一個bgY1 和一個bgY2 用來控制圖片的移動。在BackGround中,寫一個movie()方法,隨著時間的改變而改變。這時,就會出現滾動的屏幕。

(3)主程序的實現:當玩家按下W,A,S,D分別對應的上,左,下,右時,函數Plane類中的move()方法的變量y,x加5或減5。相對應的,滅火器的位置會向上,左,下,右飛行一定距離。當鍵盤松開時,滅火器會停止不動。在moie()方法中,會調用方法location()。

public void location() {

if (bU && !bD && !bL && !bR) {

planeDir = Direction.U;

}

if (!bU && bD && !bL && !bR) {

planeDir = Direction.D;

}

if (!bU && !bD && bL && !bR) {

planeDir = Direction.L;

}

if (!bU && !bD && !bL && bR) {

planeDir = Direction.R;

}

if (!bU && !bD && !bL && !bR) {

planeDir = Direction.STOP;

參考文獻

[1] Bruce Eckel,陳昊鵬.Java編程思想[M].北京:機械工業出版社,2002.

[2] Adam Drozdex,數據結構與算法(Java語言版)[M].北京:機械工業出版社,2003.

[3] Curtis D.Java,RM I and Corba[M].white paper of Object Management Group,1996.

主站蜘蛛池模板: 久久亚洲AⅤ无码精品午夜麻豆| 91在线日韩在线播放| 日本一区二区三区精品国产| 午夜精品一区二区蜜桃| 高清大学生毛片一级| 免费国产黄线在线观看| 亚洲第一黄片大全| 视频二区中文无码| 日韩少妇激情一区二区| 国产迷奸在线看| 精品福利视频网| 精品五夜婷香蕉国产线看观看| 亚洲精品第一页不卡| 日韩欧美一区在线观看| 久久中文字幕不卡一二区| 香蕉eeww99国产精选播放| 在线观看亚洲精品福利片| 亚洲日韩每日更新| 99久久国产综合精品2023| 国产成熟女人性满足视频| 欧洲av毛片| 深夜福利视频一区二区| 夜夜拍夜夜爽| 这里只有精品免费视频| 久久国产高清视频| 国产综合在线观看视频| 女人爽到高潮免费视频大全| 久久综合亚洲色一区二区三区| 91成人在线免费观看| 日韩少妇激情一区二区| 99青青青精品视频在线| 亚洲人在线| 免费激情网址| 日本黄网在线观看| 色天天综合| 一区二区三区成人| 久久性妇女精品免费| 免费在线色| 欧美日韩精品一区二区在线线| 伊人狠狠丁香婷婷综合色 | 国产鲁鲁视频在线观看| 三上悠亚一区二区| 青青久在线视频免费观看| 国产一级片网址| 好久久免费视频高清| 日本亚洲成高清一区二区三区| 国产成人91精品| 国产伦精品一区二区三区视频优播| 国产呦精品一区二区三区下载| 国产在线97| 久久这里只精品热免费99| 青草视频在线观看国产| 国产在线视频欧美亚综合| 中字无码av在线电影| 国产电话自拍伊人| Jizz国产色系免费| 亚洲黄色激情网站| 91精品国产自产在线观看| 欧美精品H在线播放| 国产香蕉97碰碰视频VA碰碰看 | 亚洲国产天堂久久综合| 91网红精品在线观看| 日本免费一区视频| 91青青草视频在线观看的| 亚洲妓女综合网995久久| 少妇精品网站| 伊人精品视频免费在线| 97视频免费在线观看| 91久久大香线蕉| 日韩大乳视频中文字幕| 精品国产成人三级在线观看| 国产导航在线| 国产成人高清精品免费| 日本少妇又色又爽又高潮| 丝袜久久剧情精品国产| 久久综合伊人 六十路| 国产黄色视频综合| 国产精品美女自慰喷水| 97se亚洲综合在线天天| 日韩在线中文| 特级毛片免费视频| 欧美福利在线观看|