【正文】
鍵、右鍵)或字母鍵 I、 K、 J、 L 對下落方塊進行向上(旋轉(zhuǎn)變形)、向下(加速下落)、向左移動、向右移動。 游戲形狀需求:用數(shù)組作為存儲方塊 28 種狀態(tài)的數(shù)據(jù)結(jié)構(gòu),即長條形、 Z 字形、反 Z 形、田字形、 7 字形、反 7 形、 T 字型一共 7 種形狀的向 4 個方向的旋轉(zhuǎn)變形,各個方塊要能實現(xiàn)它的任意變形,可設(shè)為順時針變形或逆時針變形,一般為逆時針變形。游戲功能需求如下: 游戲界面需求:設(shè)計良好的游戲界面可以讓玩家充分感受到游戲帶來的娛樂性,游戲的默認背景色是深綠色,主界面方塊默認用橘黃色 ,預(yù)顯方塊顏色默認為淡紫色。每消去一行,玩家得分增加 10 分,每滿 100 分,玩家等級增加一級。方塊自由下落,玩家通過鍵盤控制方塊的移動和旋轉(zhuǎn),把方塊擺放在適當?shù)奈恢?。作為工作成果的原始依?jù),系統(tǒng)的需求分析可以向潛在 用戶傳遞軟件功能、性能的需求,使其能夠判斷該軟件是否符合自己的需求。 2 2 系統(tǒng)的需求分析 對系統(tǒng)的需求分析就是用戶和開發(fā)人員在“系統(tǒng)必須做什么”這個問題上實現(xiàn)相互理解,達到共識,從而形成雙方認可的軟件產(chǎn)品的需求規(guī)格。無可爭議,它是永恒的娛樂經(jīng)典,且它的代碼簡單,界面簡潔,從最初發(fā)行時的單個游戲機到現(xiàn)在便捷的安裝到電腦、手機、 MP電子詞典、商務(wù)通、IPAD、 ITOUCH 等便攜設(shè)備,俄羅斯方塊風(fēng)靡世界,經(jīng)久不衰。 俄羅斯方塊游戲以其益智、簡單又不乏挑戰(zhàn)、創(chuàng)意獨特的游戲模式,吸引了眾多游戲愛好者,而且老少皆宜。 游戲軟件不計其數(shù) , 網(wǎng)上也有很多關(guān)于游戲?qū)崿F(xiàn)的復(fù)雜算法和設(shè)計 , 其難度讓一般初學(xué)者望而卻步。一般來說,游戲軟件也確實具有很高的技術(shù)難度 , 隨著開發(fā)工具和軟件開發(fā)方法學(xué)的不斷發(fā)展 , 自己 動手開發(fā)游戲也并非難事。游戲模式有的簡單、 有的復(fù)雜 , 但其根本原理是都是對隨機出現(xiàn)的方塊進行組合 , 來訓(xùn)練玩家的反應(yīng)能力、邏輯思維能力。它看似簡單但卻變化無窮,令人愛不釋手。后來幾經(jīng)修改,發(fā)展成我們現(xiàn)在所熟悉的經(jīng)典模式。Pentomino 一共有十二種形狀 , 各以七個方塊組合而成。帕杰諾夫曾在俄羅斯科學(xué)研究院電腦中心工作 , 當時他在 Eletronica 60的舊型俄羅斯主機上進行開發(fā)工作 , 這 種機器不支持圖形界面 , 和 PC也不兼容。帕杰諾夫 (Alexey Pajituov)所設(shè)計的作品 ,被公認為有史以來最暢銷的經(jīng)典游戲 ,至今魅力不減當年。 II Abstract Tetris is a popular global diversification of terminal enduring basic rules of the game is rotating, moving, automatic random output of 7 kinds of shape square game. It forms 28 kinds of shape, after rotating cube stacked together, forming plete one or more lines to eliminate score. Its level automatically rises with the score. The game is easy for young and old, has bee a household name. This paper not only give the detailed analysis of the traditional Tetris which based on the basic principle and simple rules but also develop the color variable model, such as random change the background color and foreground color and so on. Further more, in this paper, the above functions are given the implementation process, the detailed description, and some source code. The paper expounds the history of the game, develops the meaning of the game and the environment of design. According to the relevant knowledge of software engineering, the author reports the demand analysis, outline design, detailed design, planning and execution of the test. This design is under Microsoft Windows XP system, based on Java development language, the MyEclipse development platforms to carry on the design and implementation of the game. Key Words: Game, Tetris, Software engineering, MyEclipse III 目 錄 1 引 言 ............................................................... 1 2 系統(tǒng)的需求分析 ...................................................... 2 系統(tǒng)需求 ........................................................ 2 接口控制 ........................................................ 3 3 系統(tǒng)的概要設(shè)計 ...................................................... 4 軟件運行和開發(fā)工具 .............................................. 4 系統(tǒng)功能設(shè)計 .................................................... 4 手工處理業(yè)務(wù)的基本流程 ...................................... 4 基本流程的功能模塊 .......................................... 5 4 系統(tǒng)的詳細設(shè)計與實現(xiàn) ................................................ 8 游戲主界面顯示模塊 .............................................. 8 畫布、方塊顯示模塊 .............................................. 9 背景畫布模塊設(shè)計 ........................................... 10 預(yù)覽方塊模塊設(shè)計 ........................................... 11 方塊移動、旋轉(zhuǎn)設(shè)計 ......................................... 14 控制面板模塊 ................................................... 18 菜單欄模塊設(shè)計 ............................................. 18 控制面板按鈕設(shè)計 ........................................... 20 5 系統(tǒng)的調(diào)試運行 ..................................................... 21 測試的意義及注意事項 ........................................... 21 游戲代碼、算法的測試 ........................................... 21 游戲界面菜單選項的功能測試 ..................................... 22 按鍵事件的功能測試 ............................................. 24 方塊堆砌與消行測試 ............................................. 25 測試結(jié)果分析 ................................................... 26 6 結(jié) 論 ............................................................. 27 參考文獻 ............................................................. 28 致 謝 ................................................................ 29 1 1 引 言 俄羅斯方塊的影響已毋庸置疑 , 當今世界的電腦、手機到處都有俄羅斯方塊的蹤跡,同時它更是每個游戲平臺的必備游戲,相關(guān)的復(fù)制品不勝枚舉。 關(guān)鍵詞: 游戲;俄羅斯 方塊; 錯誤 !未找到引用源。 論文闡述了該游戲的歷史、開發(fā)此游戲的意義和環(huán)境并根據(jù)軟件工程的相關(guān)知識,進行系統(tǒng)的需求分析、概要設(shè)計、詳細設(shè)計與實現(xiàn)、調(diào)試運行進行描述。該游戲上手簡單、老少皆宜、家喻戶曉。 本科生畢業(yè)論文 (設(shè)計 ) 基于 Java 的俄羅斯方塊的設(shè)計與實現(xiàn) 姓 名 學(xué) 號 專 業(yè) 指導(dǎo)教師 2021年 5月 30日 I 摘 要 俄羅斯方塊作為一款風(fēng)靡全球的多樣化終端游戲,經(jīng)久不衰。俄羅斯方塊簡單的基本游戲規(guī)則是旋轉(zhuǎn)、移動,游戲自動隨機輸出 7 種形狀的方塊,經(jīng)旋轉(zhuǎn)后可形成 28 種形狀,方塊堆疊在一起,排列成完整的一行或多行消除得分,積分達到一定程度會自動提升級別。 本論文在詳盡分析傳統(tǒng)俄羅斯實現(xiàn)的基本 原理、基本規(guī)則基礎(chǔ)上,更深一步地研究俄羅斯方塊的創(chuàng)新模式,在經(jīng)典模式基礎(chǔ)上開發(fā)出等級可變的模式,以及進一步開發(fā)出顏色可變的模式,如隨意改變界面的背景色、前景色等,本文對以上功能給出了實現(xiàn)流程、詳盡描述、和部分源代碼。 此設(shè)計 是 在 Microsoft Windows XP 系統(tǒng)下 , 以 Java 為開發(fā)語言 , 在 MyEclipse 開發(fā)平臺上進行游戲的設(shè)計與 實現(xiàn)。 軟件工程; MyEclipse 錯誤 !未找到引用源。這個最早由莫斯科的數(shù)學(xué)家亞力克西亞力克西他嘗試將一種傳統(tǒng)的拼圖游戲 Pentomino 改寫成電腦游戲。帕杰諾夫試著寫了一個程序 , 旋轉(zhuǎn)并移動這十二種不同形狀的方塊 , 讓它們拼成一大塊。俄羅斯方塊曾經(jīng)引起的轟動和制造的經(jīng)濟價值可以說是游戲史上無可比擬的。 俄羅斯方塊游戲是隨計算機的發(fā)展而發(fā)展,并不斷推陳 出各種新演變出的類似游戲 , 深受廣大玩家喜愛。游戲軟件 , 大多數(shù)人都視其為神妙莫測 , 高不可及的東西。俄羅斯方塊游戲可以上說是一種古老而又有趣的游戲 。本文利用數(shù)組作為方塊的數(shù)據(jù)結(jié)構(gòu),用顏色變化作為方塊下落和移動的標識,提出一種用 Java語言實現(xiàn)游戲的簡易方 法 ,在經(jīng)典模式的基礎(chǔ)上實現(xiàn)等級可變,顏色可變等功能, 初學(xué)者可仿此開發(fā)類似游戲 , 并了解游戲軟件的設(shè)計與開發(fā)過程。當今社會里,人們的工作壓力隨著生活節(jié)奏的快速提高而逐漸繁重,隨之減少的是可以自由支配的休息時間,人們迫切地需要一種既簡單又節(jié)省時間的快速休閑方式。本次課題研究可以說是對游戲開發(fā)的一次嘗試,無論從技術(shù)還是社會意義上看都是很有價值的。這樣有利于提高軟件開發(fā)過程中的能見度,便于對軟件開發(fā)過程的控制與管理,便于采用工程化的模式開發(fā)軟件,從而達到提高軟件的質(zhì)量,為開發(fā)人員、維護人員、管理人員之間的交流、協(xié)作提供便捷。 系統(tǒng)需求 系統(tǒng)隨機產(chǎn)生 7 中不同形狀的方塊,旋轉(zhuǎn)后有 28 種狀態(tài)。如果方塊落下時,有被方塊填滿的整行,則該行可消去。若由存在空格的方塊填滿整個窗口,則游戲宣告失敗。背景色、前景色對比鮮明,以達到讓玩家眼前一亮的感覺,并能在游戲達到高等級狀態(tài),方塊下落速度漸高的情況下使玩家能夠清楚的分辨出下落方塊的形狀,增加游戲的刺激性。方塊的可否翻轉(zhuǎn)需要加以判斷,以防止其翻轉(zhuǎn)越界。 鼠標處理事件需求:通過點擊菜單欄中相應(yīng)的菜單項或控制面板內(nèi)的按鈕,可以實現(xiàn)游戲的開始、結(jié)束、暫停、繼續(xù)、提高等級、降低等級,預(yù)顯方塊形狀的顯示,分數(shù)、等級的顯示,以及游戲幫助、顏色變換等功能。當達到一定分數(shù)的時候,會增加相應(yīng)的等級。 3 非功能性需 求:本系統(tǒng)非功能性需求包括游戲主界面左上角顯示圖標需求、窗口尺寸可調(diào)整性需求、游戲運行時主界面彈出位置居中需求等。游戲使用鼠標對游戲進行全程控制,如游戲的開始、暫停、繼續(xù)、查看游戲幫助、更改界面顏色、更改游戲等級等,通過