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

基于JAVA的俄羅斯方塊游戲的設計與實現

2019-12-01 23:23:14劉恒重慶醫科大學附屬第二醫院
數碼世界 2019年4期
關鍵詞:游戲

劉恒 重慶醫科大學附屬第二醫院

1 引言

俄羅斯方塊是一款單機或聯機的益智小游戲。它是由俄羅斯人Alexei Pakitnov發明的。俄羅斯方塊的基本規則是利用方向鍵控制掉落小塊進行方向移動,將它排列成一條或多條線,消除后獲得分數。因為它操作簡單而又對人的預判能力有一定的要求,適合不同年齡段的人,所以俄羅斯方塊也是一款益智游戲。因此,運用書本所學知識以及實際操作項目,編寫了俄羅斯方塊游戲,并實現了一些擴展功能。

2 需求分析

2.1 系統開發環境

目前,最普遍的是使用Java語言來開發小型游戲,并且有時可以在互聯網上看到一些中型游戲也是Java開發的。Java程序本身提供了大量的API鏈接庫,包括繪圖、網絡和多媒體,甚至是3D。因此,使用Java程序設計可以獲得相當多的資源。

JBuilder的可視化集成開發環境包括文本編輯器、項目創建工具、對象瀏覽器和調試器。用戶可以在集成開發環境中創建和開放項目、打開和編輯文件,并運行和調試應用程序。可以這樣說,在JBuilder中開發Java程序是具有很高的效率。

2.2 系統玩法及規則

除了基本的控制方法和規則外,游戲還增加了新的游戲規則,花樣較多,游戲也會有耐玩性,并且更加容易操作,游戲主要通過鍵盤符號進行操作。相關的控制鍵顯示在下面的表1中。

如表1所列,除了常規控件外,還增加了諸如空間(直接著陸)等按鈕。這些按鈕都是可以加快游戲速度的控制鍵。其他助記符和快捷鍵沒有描述。

2.3 系統設計分析

Java是一種面向對象(OO)編程語言,其許多優點在此不作討論。從面向對象的概念出發,該程序可以分為以下幾個對象:

① 方塊類型數據

盡管塊類型的形狀不同,如下面的表3所示,它的狀態和行為是相同的。您可以使用不同于對象的繼承屬性的形狀特征來定義基本塊類(SuperBrick)。

② 程序運算邏輯

程序中的邏輯操作通常執行數值操作和分析,如塊判斷、塊行判斷、刪除判斷、塊移動或事件響應,以及結果排序。

③ 繪圖

圖紙將根據展示平臺而有所不同。例如,獨立機器和手機的顯示環境可能不一樣,或者顯示效果可能不同。例如,當游戲風格被修改時,可以產生不同的顯示效果。

④ 顯示平臺

“高可移植性”是Java的一個屬性。Java應用程序覆蓋了許多領域,比如移動電話、pda、獨立程序和瀏覽器,不同的平臺有不同的設置。如果顯示平臺是一個單獨的分類,它將會使主程序更加完整,并且遷移過程的更快。

3 俄羅斯方塊游戲中核心元素

游戲的核心元素包括三種類型:各種形狀的積木、障礙物和底部的游戲面板。游戲主要是控制面板上方塊的運動和變化,增加和消除障礙物。

3.1 方塊

經典的俄羅斯方塊游戲中方塊主要有7種類型,每一種類型又有若十種變形。所有方格均可由4 * 4網格表示。網格有兩個狀態:空白和填充。對于不同的形狀,填充部分是不同的,因此,一個由16個整數元素組成的一維數組可以用來表示一個特定的形狀。當你需要填充的時候,對應位置的數字是1,否則位置的個數是0。

一個二維數組用于存儲一種類型的塊。第一個維度表示第一個變量,第二個維度表示特定形狀的值。一個三維數組用于存儲所有的正方形;第一個維度表示哪個類型,第二個維度表示類型的第一個變量,第三維表示一個特定形狀的值。除了了解它的形狀之外,還需要知道它的位置,并且可以根據需要移動和變形。

3.2 障礙物

障礙實際上是一個不能移動的正方形的組合。隨著游戲的進程,障礙增加或減少。就像方塊一樣,你可以使用二維數組來存儲障礙物。

數組的大小是整個面板的水平和垂直方向上的網格數。對于需要填充的網格,該值被標記為1,而空白網格的值為0。在添加了一個障礙之后,需要確定它是否超出了邊界。如果超過了障礙,比賽就結束了。同時,你需要確定是否有一條完整的線,如果有滿行,則需要刪除障礙物。

3.3 游戲面板

游戲面板主要用于顯示塊和障礙物。有必要限定寬度和高度。為了使程序更靈活,面板的寬度和高度沒有確定固定數值。相反,網格被用作一個單元來指定包含多少個網格。靜態常量指定網格的數量和網格的邊緣。圖5顯示了游戲面板類的關鍵屬性和方法。

4 概要設計

4.1 系統介紹

俄羅斯方塊是一款傳統游戲,它重在測試玩家的反應靈敏度和幾何想象力,以下簡要介紹我們要寫的這款游戲的功能。

游戲的主要功能如下:

當游戲程序打開時,有一個登入頁面,用來顯示游戲的加載情況。

設計使用箭頭鍵和空格鍵來控制塊,向上箭頭是一個90度旋轉框,空格鍵用于直接落下塊,每種類型的塊都有自己的預覽圖。

在玩的過程中,顯示玩家級別、分數和消除的行數。

游戲有暫停、開始和結束等控制。

可以讓玩家來調整游戲的速度和游戲級別。

可以讓玩家設置游戲的聲音、背景音樂及音效。

在游戲結束時,如果玩家的分數進入了前10名,就會彈出輸入玩家昵稱的對話框,并將玩家的名字存入檔案之中。

4.2 系統簡單設計

由于我們將把這個游戲作為一個應用程序編寫,我們首先需要設計游戲的主框架和菜單。游戲的主要框架使用一個標準的Windows框架,有標題欄、菜單欄和工具欄,使玩家更容易掌握游戲。菜單欄和工具欄用于啟動、暫停、重新啟動和結束游戲。在框架的底部,還可以放置一個狀態欄來顯示游戲的當前狀態。

4.3 系統功能設計

⑴ 登入頁面

由一張圖片和一個進度條組成。

“圖片”:用來顯示游戲信息。

“進度條”:用來顯示游戲時間。

⑵ 游戲主頁面

由菜單條、游戲面板和狀態欄組成,分別說明如下:

① 菜單條:1、“游戲”菜單,包含2個菜單項和1個子菜單組成。

“開始游戲”:用來選擇游戲版本和運行游戲。

“放棄游戲”:用來退出當前游戲,返回主界面。

“退出游戲”:用來退出程序。

2、“設置”菜單,它包含6個菜單項。

“暫停游戲”:用來暫停游戲,再次點擊時可以取消暫停。

“重新開始”:重玩游戲。

“速度等級”:選擇游戲速度難度。

“障礙等級”:選擇游戲障礙難度。

“播放背景音樂”:用來播放場景音樂,版本不同,音樂不同。

“播放音效”:用來播放一些觸發音樂,它隨著版本不同而異。

3、“成績”菜單,它只包含1個菜單項。

“排行榜”:用來查看分數為前10名的玩家信息。

4、“幫助”菜單,它包含2個菜單項。

“游戲文字說明”:以文字的形式,說明游戲的功能和玩法。

“關于”:用來顯示游戲的一些版本信息。

② 游戲面板:1、“方塊活動區”,方塊程序在里面進行。

2、“預備方塊顯示區”,用來顯示預備的三個方塊組。

3、“成績狀態顯示區”,用來顯示游戲級別、分數和消除的行數。

③ 狀態欄:用來顯示游戲的狀態,它包含有三個狀態:游戲裝載完畢、游戲運行

中及暫停游戲。

⑶ 游戲結束頁面

由游戲結束顯示框和輸入個人信息顯示框組成。

① 游戲結束顯示框:顯示游戲已經結束,并讓玩家選擇退出游戲還是還是重新一局。

② 輸入個人信息顯示框:用于輸入玩家的一些個人信息保存。

4.4 如何實現方塊的移動

有兩種類型的塊運動:一種是定時自由落體;另一個是基于用戶的擊鍵的改變,例如左,右,下或旋轉。對于第一種類型的移動,通過單獨啟動一個線程,線程會定期執行Shape的向下移動方法,另外,在移動時,必須立即在面板上更新。因為shape級和gamepanel面板都不是相同的文件,所以不能直接進行相互轉換,但是可以使用中間控制器控制器。

4.5 方塊與障礙物的轉換及消除障礙物

障礙物是一個能看見但是移動不了的一個區域。如果模塊不能向下移動,則簡單地獲得模塊位置,并且將相應的障礙物位置設置為1并且重新打開,這樣可以轉換成障礙物。成為障礙后,幾次作成數據。如果一行的所有數據是1,則該行為填滿,并可以消除。

5結語

本文從面向對象編程的角度來看,解析了俄羅斯方塊游戲的主要內容和構造,將MVC模式作為一個整體,通過對象來控制遠程通信、數據傳輸、控制器,從而使其具有擴展和靈活性。對于初學者來說,提高Java知識的使用設計系統具有一定的研究意義。

猜你喜歡
游戲
做游戲
夜間游戲
游戲
送信游戲
數獨游戲
瘋狂的游戲
飛碟探索(2016年11期)2016-11-14 19:34:47
爆笑游戲
第八章直接逃出游戲
小學科學(2015年7期)2015-07-29 22:29:00
第八章 直接逃出游戲
小學科學(2015年6期)2015-07-01 14:30:14
游戲五計算
主站蜘蛛池模板: 国产自在线播放| 国产99在线观看| 精品伊人久久久久7777人| 欧美日韩免费在线视频| 日韩美毛片| 极品国产在线| aaa国产一级毛片| 久久精品视频亚洲| 成年免费在线观看| 免费国产高清视频| 97se亚洲综合在线天天| 91系列在线观看| 精品久久久久无码| 国产美女主播一级成人毛片| 99久久精品视香蕉蕉| 亚洲欧美日韩中文字幕一区二区三区 | 91久草视频| 亚洲男人的天堂网| 精品国产黑色丝袜高跟鞋| 无码AV高清毛片中国一级毛片| 国产一级二级三级毛片| 久久青草视频| 亚洲成aⅴ人片在线影院八| 国产一级毛片yw| 中文国产成人久久精品小说| 狠狠色噜噜狠狠狠狠奇米777| 又爽又大又黄a级毛片在线视频 | 亚洲色图欧美| 日本福利视频网站| 欧美在线伊人| 亚洲精品片911| 一级毛片在线播放免费| 色悠久久综合| 午夜福利网址| 欧美另类一区| 风韵丰满熟妇啪啪区老熟熟女| 亚洲高清资源| 日韩小视频在线播放| 久久人搡人人玩人妻精品| 在线视频一区二区三区不卡| 日本免费一级视频| av在线人妻熟妇| 欧美 国产 人人视频| 国产精鲁鲁网在线视频| 久久77777| 国产欧美性爱网| 亚洲日韩精品伊甸| 国产精品久久自在自线观看| 国产极品粉嫩小泬免费看| 日韩美一区二区| 伊人成人在线视频| 亚洲精选无码久久久| 日韩少妇激情一区二区| 一区二区三区四区精品视频 | 久久久噜噜噜| …亚洲 欧洲 另类 春色| 成人中文字幕在线| 国产精品亚洲va在线观看| 成人午夜福利视频| 香蕉伊思人视频| 试看120秒男女啪啪免费| 欧美黄网站免费观看| 三级视频中文字幕| 丁香婷婷激情网| 中美日韩在线网免费毛片视频| 欧美午夜在线播放| 国产永久无码观看在线| 欧美色伊人| 国产永久无码观看在线| 亚洲视频色图| 日本亚洲最大的色成网站www| 日韩精品一区二区三区免费| 999福利激情视频| 久久亚洲欧美综合| 亚洲国产精品不卡在线| 午夜啪啪网| 又大又硬又爽免费视频| 青青青国产精品国产精品美女| 国产亚洲精久久久久久久91| 久久中文字幕av不卡一区二区| 中文字幕1区2区| 国产好痛疼轻点好爽的视频|