VB設計俄羅斯方塊論文_第1頁
VB設計俄羅斯方塊論文_第2頁
VB設計俄羅斯方塊論文_第3頁
VB設計俄羅斯方塊論文_第4頁
VB設計俄羅斯方塊論文_第5頁
已閱讀5頁,還剩13頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、塔里木大學信息工程學院課程設計第 1 頁前前 言言visual basic 繼承了 basic 語言易學易用的特點,特別適合于初學者學習 windows 系統編程。隨著 21 世紀信息社會的到來,計算機在人們的工作和生活中的深入,要求我們越來越多地與計算機打交道,為了使用戶在繁忙的日程工作中得到放松,于是出現了各種各樣的休閑軟件,如聊天工具,游戲等等。于是我們小組著手設計開始一個這樣的游戲軟件。通過這學期來 Visual Basic 的學習,我初步掌握了 Visual Basic 語言的最基本的知識,于是在化希耀張兵等老師的指導下動手用 Visual Basic 編寫俄羅斯方塊游戲。無可爭議,

2、 俄羅斯方塊是有史以來最偉大的游戲之一。它是永恒的娛樂經典,但它實際上又和那些傳統的經典娛樂方式不同,因為它的本質是電子化的,所以它的確屬于現代產物。 俄羅斯方塊舉世聞名的游戲性,在該游戲新鮮出爐時就顯得非常直觀。某些與墜落的玩具碎片和它們的形狀有關的東西,使得哪怕新手也會很自然地企圖把它們排列起來,并加以適當組合,就好似俄羅斯方塊觸動了我們某些內在的感官,使得哪怕是我們當中最雜亂無章的人也要把事情整理妥當。 在曾經發布過的所有游戲中, 俄羅斯方塊還被認為是僅有的一個能夠真正吸引廣泛人群的作品。某些批評家也許會聲稱, 俄羅斯方塊要比過去二十年間出現的任何東西都要浪費人們的時間。至于我們,則要欣

3、然提名它為 GameSpot 評選出的歷史上最偉大游戲之一。為了懷念經典,也為了能夠給大多的計算機用戶在工作之余找到一個休閑、娛樂的一個方式,我們小組開始著手用 VB 語言開發一個經典的俄羅斯方塊游戲。工程概況工程概況1.1 項目名稱俄羅斯方塊游戲1.2 設計平臺VB 全稱 Visual Basic,它是以 Basic 語言作為其基本語言的一種可視化編程工具。Vb 是 microsoft 公司于 1991 年退出的 windows 應用程序開發工具 visual 意思是“可視化的” 。在它剛推出來時,自身還存在一些缺陷,功能也相對少一些。但是經過多年的開發研究。最近 microsoft 公司又

4、推出了 VB6.0 版本VB6.0 運行環境:硬件,要求 486 以上的處理器、16MB 以上內存,50MB 以上的硬盤,cd-rom 驅動器,鼠標。軟件:要求 windows 95 以上版本。1.3 程序設計思想游戲是用來給大家娛樂的,所以要能在使用的過程中給大家帶來快樂,消除大家的疲勞,所以我們在游戲中添加了漂亮的場景和動聽的音樂,設置了過關升級的功能,激發大家的娛樂激情。從游戲的基本玩法出發,主要就是俄羅斯方塊的形狀和旋轉,我們在設計中在一個圖片框中構造了一個 4*4 的網狀小塊,由這些小塊組合成新的形狀,每四個小塊連接在一起就可以構造出一種造型,因此我們總共設計了 7 中造型,每種造型

5、又可以通過旋轉而變化出 2 到 4 種形狀,利用隨機函數在一個預覽窗體中提前展示形狀供用戶參考,然后將展示塔里木大學信息工程學院課程設計第 2 頁的形狀復制到游戲窗體中進行擺放,在游戲窗體中用戶就可以使用鍵盤的方向鍵來控制方塊的運動,然后利用遞歸語句對每一行進行判斷,如果有某行的方塊是滿的,則消除這行的方塊,并且使上面的方塊自由下落,其中,方塊向下的速度是有時鐘控件控制的,在游戲中,用戶也可以使用向下鍵加快下落速度,定義一個變量,對消除的函數進行記錄,最后就可以得出用戶的分數,用 if 語句對分數判斷,達到一定的積分就可以升級到下一個檔次。俄羅斯方塊游戲設計的主要步驟為以下 10 個方面:(1

6、)游戲界面的設計。(2)俄羅斯方塊的造型。(3)俄羅斯方塊的旋轉。(4)俄羅斯方塊的運動情況(包括向左,向右和向下) 。(5)俄羅斯方塊的自動消行功能。(6)游戲級別的自由選擇。(7)游戲速度的自由選擇。(8)游戲得分的計算。(9)游戲菜單選項的設計及功能實現。(10)游戲的背景音樂。1.4 運用的控件和主要對象我們在設計過程中主要用到的控件有:command 控件,image 控件,picture 控件,label 控件,timer 控件,text 控件,windows media player 控件等等。1.5 主要實現的功能我們開發的俄羅斯方塊游戲,主要實現了以下幾種功能:1.可以靈活控

7、制方塊在圖形框中運動。2.游戲過程中方塊可以自由旋轉。3.當某一行的方塊排列滿時,將自動將這一行方塊消除,然后將上面所有方塊向下移動,可以支持連續消行。4.游戲前可以選擇游戲的速度和游戲的等級,游戲速度既為方塊下落速度,游戲等級為初始游戲時在基層隨機生成一定行數的無規律方塊,生成的行數由你來選擇,每行至少產生 5 個以上的無規律方塊,這樣增加了游戲難度,對于游戲高手來說,無疑不是一個新的挑戰。5.游戲的得分支持積分,并且按照公式:得分 = 原來分數+ 100 * (2 同時消除的行數-1) 這樣,你同一時間消除的行數越多,你的得分也就越高,當游戲積分到了一定時可以自動升級,這個升級指速度升級。

8、 6.游戲中提供了一個漂亮的場景和動聽的音樂,給你帶來無限激情。1.6 開發人員與分工組長李虎同學所做工作如下: (1)俄羅斯方塊的旋轉。 (2)俄羅斯方塊的運動情況。 (3)俄羅斯方塊的自動消行功能。 (4)游戲得分的計算。塔里木大學信息工程學院課程設計第 3 頁 (5)游戲菜單選項的設計及功能實現。副組長王志偉同學所做工作如下: (1)游戲界面的設計。 (2)俄羅斯方塊的造型。 (3)游戲級別的自由選擇。 (4)游戲速度的自由選擇。 (5)游戲的背景音樂。 正文正文2.1 游戲設計的具體實現在我們兩個人共同努力下,此次設計,終于能夠圓滿完成。由于時間的緊促,在設計中,也許會有一些考慮不周之

9、處,但其功能已經能夠滿足大多用戶的需求,相信假以時日,一定能做出一個更經典,更完美的俄羅斯方塊游戲,下面我們將對每一步的具體如何實現展示給大家。2.1.1 游戲界面的設計和背景音樂及特效的實現俄羅斯方塊游戲主要由兩個界面構成,登陸界面和開始游戲界面。游戲的背景音樂是由一段代碼調用系統播放器 Windows Player 播放背景音樂,由于本次設計主要是針對游戲如何設計的,所以在這里就不對播放背景音樂的功能做介紹了。2.1.2 俄羅斯方塊的造型相信朋友們都玩過俄羅斯方塊,對這個游戲的玩法和方塊形狀都比較熟悉。我們這個游戲只選擇了最基本的 7 中造型,包括長條型,正方型,正 S 型,反 S 型,正

10、 7 型,反 7型,T 型。如果需要我們可以添加更多的造型。將游戲界面的游戲區圖片框分割成 10*20的小塊,每個小塊放置一個 command 控件,預覽區圖片框按同樣比例分割成 4*4 的小塊,同樣有 command 控件構成,我們可以把預覽區圖片框看作是從游戲區圖片框中選取的一個部分,游戲區的小方塊編號和預覽區編號如下圖: 012345678990919293949596979899 游戲區編號 預覽區編號 利用 Select 將方塊的 7 中造型列出,比如長條型的設計,在欲覽區中分別有 和 5 四個方塊構成兩中形態,用數組為: m(0) = 3: m(1)

11、 = 4: m(2) = 5: m(3) = 6: situation2 = 0m(0) = 5: m(1) = 15: m(2) = 25: m(3) = 35: situation2 = 1將它的形狀編號為 0 和 1,在后面方便調用,其他的方塊造型同樣的方法。2.1.3 俄羅斯方塊的旋轉俄羅斯方塊的旋轉主要將方塊的位置加以變換得到的,例如上述范例,長條型有兩中樣式,根據小方塊的編號變動來實現整個造型的旋轉,比如:If n(0) - 18 = 2 And n(3) + 9 = 0.5 Then cmdfang(j).Visible = True Next Next可以根據你選擇的難度系數在

12、底層的每一行隨機產生超過半數(即 5 個以上)以上的小方塊,這樣適合喜歡高難度的玩家。2.1.6 游戲得分的計算和游戲菜單的編輯游戲得分的計算主要是根據消除的行數來決定的,當然每一次同時消除的行數不一樣,每一行的得分也不一樣,如果你每次消除的行數為 1,則最后得分是 100 分,如果同時消除 2 行,則最后得分是 300 分,同時消除 3 行,得分為 700 分,同時消除 4 行,得分為1500 分,這由公式:得分 = 原來分數+ 100 * (2 同時消除的行數-1)。游戲的編輯,讀者可以參照下面的功能介紹。2.2 游戲功能的介紹文件 F-開始 F1:開始游戲。 繼續 F2:繼續游戲。 暫停

13、 F3:暫時停止游戲,點擊繼續的時候可以繼續游戲。 退出 Ctrl+Q:退出游戲。設置-選擇游戲級別。 選擇游戲速度。考驗-顯示 F5:顯示欲覽區方塊。 隱藏 F6:隱藏欲覽區方塊。幫助-操作提示以及版本信息和作者資料。塔里木大學信息工程學院課程設計第 6 頁用戶界面具體如圖: 圖登陸界面 圖游戲界面 圖菜單編輯界面 圖游戲幫助界面 有關說明有關說明經過兩個多星期的設計和開發,俄羅斯方塊游戲已經成功。其功能基本符合用戶需求,能夠完成游戲的控制,方塊的變換以及消層等功能。并提供游戲設置,對于一些技術性比較過硬的玩家,可以調游戲級別、以及游戲速度,使得玩家能夠充分的發揮競技游戲的特色,可以不斷的挑

14、戰自我,挑戰極限。3.1 游戲設計中的不足之處但是由于課程設計時間較短,所以該游戲還有許多不盡如人意的地方,比如方塊類型太少,退出游戲不能存儲進度等多方面問題。這些都有待進一步改善,我們在游戲中還可塔里木大學信息工程學院課程設計第 7 頁以更換背景音樂,以適合不同的玩家,在每通過一關可以給玩家播放一段 flash,吸引玩家去挑戰極限,不斷提高玩家的興趣,相信在以后的制作過程中我們將給大家帶來一個更新功能更全面的游戲。3.2 VB 與 C 語言之間的不同之處我們這個小游戲也可以用 C 語言來實現,在程序的編程上沒有 VB 語言方便實用,C 語言和 VB 語言之間存在很多的共同點,雖然語法方面有點

15、差異,但是在編程思路上完全一樣,VB 能夠實現很多 C#不能做到的功能,如 When 語句、Optional 參數、局部 Static 變量、對象實例訪問靜態方法、Handles 綁定事件、On Error 處理異常、Object 直接后期綁定等等。VB 和 C#語言,編譯出來的是同樣的 CIL,但為什么 VB 支持很多有趣的特性呢。我們一起來探究一下。3.2.1 局部靜態變量VB 支持用 Static 關鍵字聲明局部變量,這樣在過程結束的時候可以保持變量的數值:Public Sub Test1() StaticStatic i i AsAs IntegerInteger i += 1 實現一

16、個過程調用計數器End Sub我們實現了一個簡單的過程計數器。每調用一次 Test,計數器的數值就增加 1。其實還有很多情況我們希望保持變量的數值。而 C#的 static 是不能用在過程內部的。因此要實現過程計數器,我們必須聲明一個類級別的變量。這樣做明顯不如 VB 好。因為無法防止其他過程修改計數器變量。這就和對象封裝一個道理,本來應該是一個方法的局部變量,現在我要被迫把它獨立出來,顯然是不好的設計。那么 VB 是怎么生成局部靜態變量的呢?將上述代碼返匯編,我們可以清楚地看到在 VB 生成的 CIL 中,i 不是作為局部變量,而是作為類的 Field 出現的: .field private

17、 specialname int32 $STATIC$Test1$2001$i也就是說,i 被改名作為一個類的字段,但被冠以 specialname。在代碼中試圖訪問$STATIC$Test1$2001$i 是不可能的,因為它不是一個有效的標識符。但是在 IL 中,將這個變量加一的代碼卻與一般的類字段完全一樣,是通過 ldfld 加載的。我覺得這個方法十分聰明,把靜態變量變成生命周期一樣的類字段,但是又由編譯器來控制訪問的權限,讓它成為一個局部變量。同時也解釋了 VB 為什么要用兩個不同的關鍵字來聲明靜態變量Static 和 Shared。由于局部靜態變量的實質是類的字段,所以它和真正的局部變

18、量還是有所不同的。比如在多線程條件下,對局部靜態變量的訪問就和訪問字段相同。3.2.2 Handles 和 WithEventsVB 除了可以用 C#那樣的方法來處理事件響應以外,還有從 VB5 繼承下來的獨特的事件處理方式WithEvents。我喜歡稱這種事件處理方式為靜態的事件處理,書寫響應事件的方法時就已經決定該方法響應的是哪一個事件,而 C#則是在代碼中綁定事件的。VB 中 WithEvents 靜態方法是非常有用的,它可以顯著增強代碼可讀性,同時也讓 VB.net 中的事件處理非常方便,不像C#那樣離開了窗體設計器就必須手工綁定事件。3.2.3 類型轉換運算符在 Visual Bas

19、ic 2005 中將加入一個新的運算符TryCast,相當于 C#的 as 運算符。我一直希望 VB 有這樣一個運算符。VB 目前的類型轉換運算符主要有 CType 和DirectCast。他們的用法幾乎一樣。我詳細比較了一下這兩個運算符,得出以下結論:塔里木大學信息工程學院課程設計第 8 頁1.在轉換成引用類型時,兩者沒有什么區別,都是直接調用 castclass 指令,除非重載了類型轉換運算符 CType。DirectCast 運算符是不能重載的。2.轉換成值類型時,CType 會調用 VB 指定的類型轉換函數(如果有的話) ,比如將String 轉換為 Int32 時,就會自動調用。3.

20、2.4 默認屬性和屬性參數在原先的 VB6 里,有一項奇特的功能默認屬性。在 VB6 中,對象的名稱可以直接表示該對象的默認屬性。3.2.5 可選參數和按名傳遞VB 從 4.0 開始支持“可選參數”這一特性。就是說,函數或子程序的參數有些是可選的,調用的時候可以不輸入。其實 VB 從 1.0 開始就有一些函數帶有可選參數,只不過到了4.0 才讓用戶自己開發這樣的過程。在 VB4 里,可選參數可以不帶默認值,而在 VB 里,如果使用可選參數,則必須帶有默認值。在調用的時候,VB 若發現參數被省略,則自動讀取.param 部分的默認值,并顯式傳遞給過程。這一部分完全由編譯器處理,而且沒有任何性能損

21、失,和手工傳遞所有參數是完全一樣的。至于按名傳遞,VB 會自動調整參數的順序,其結果與傳統方式的傳遞也沒有任何的不同。這說明我們可以放心地使用這項便利。而且帶有可選參數的過程拿到 C#中,頂多變成不可選參數,也不會造成什么其他的麻煩。 PS.很多 COM 組件都使用了默認參數,而且有些過程的參數列表非常長,在 VB 里可以輕松地處理它們,而在 C#中經常讓開發者傳參數傳到吐血。致謝致謝在本次課程設計中,我從指導老師化希耀和張兵身上學到了很多東西。老師認真負責的工作態度,嚴謹的治學精神和深厚的理論水平都使我收益匪淺。他無論在理論上還是在實踐中,都給與我很大的幫助,使我得到不少的提高這對于我以后的

22、工作和學習都有一種巨大的幫助,感謝他耐心的輔導。另外,在游戲開發過程中許多同學也給于我們很大的幫助,幫助解決了不少的難點,使得游戲能及時開發完成,在此謝謝各位對此次設計的幫助。參考文獻參考文獻:1龔沛曾,陸慰民,楊志強.Vsual Basic 程序設計教程.高等教育出版社出版。2劉新民,蔡瓊,白糠生.Vsual Basic 6.0 程序設計.清華大學出版社出版。3唐凱軍,湯惠莉.VB6 編程 80 例上手.山東電子音像出版社。4盧毅.Vsual Basic 實例教程.科學出版社出版。5趙欣勝,亢慧娟,劉晟宏.Vsual Basic 經典范例 50 講.科學出版社出版。塔里木大學信息工程學院課程

23、設計第 9 頁附件:附件:Private Sub hidefang(a As Integer) 定義使方塊不可見的過程 Select Case a Case 0 a0 使游戲區方塊不可見 cmdfang(n(0).Visible = False cmdfang(n(1).Visible = False cmdfang(n(2).Visible = False cmdfang(n(3).Visible = False Case 1 a1 使預覽區方塊不可見 cmdfangnext(m(0).Visible = False cmdfangnext(m(1).Visible = False cmdf

24、angnext(m(2).Visible = False cmdfangnext(m(3).Visible = False End SelectEnd SubPrivate Sub showfang(a As Integer) 定義使方塊可見的過程 Select Case a Case 0 a0 使游戲區方塊可見 cmdfang(n(0).Visible = True cmdfang(n(1).Visible = True cmdfang(n(2).Visible = True cmdfang(n(3).Visible = True Case 1 a1 使預覽區方塊不可見 cmdfangnex

25、t(m(0).Visible = True cmdfangnext(m(1).Visible = True cmdfangnext(m(2).Visible = True cmdfangnext(m(3).Visible = True End SelectEnd SubPrivate Sub clearline() 定義消除整行的過程 For i = 190 To 10 Step -10 If cmdfang(i).Visible = True And _ cmdfang(i + 1).Visible = True And _ cmdfang(i + 2).Visible = True And

26、 _ cmdfang(i + 3).Visible = True And _ cmdfang(i + 4).Visible = True And _ cmdfang(i + 5).Visible = True And _ cmdfang(i + 6).Visible = True And _ cmdfang(i + 7).Visible = True And _ cmdfang(i + 8).Visible = True And _塔里木大學信息工程學院課程設計第 10 頁 cmdfang(i + 9).Visible = True Then For j = i + 4 To i Step -

27、1 t = 1 cmdfang(j).Visible = False cmdfang(2 * i + 9 - j).Visible = False For k = 1 To 4000 DoEvents Next t = 0 Next linenum = linenum + 1 For j = i - 1 To 0 Step -1 If cmdfang(j).Visible = True Then cmdfang(j).Visible = False cmdfang(j + 10).Visible = True End If Next clearline 為了實現連消數行,這里使用遞歸調用 En

28、d If NextEnd SubPrivate Function downable() As Boolean 自定義函數,確定方塊是否能下降 If n(0) 190 And n(1) 190 And n(2) 190 And n(3) 190 Then If cmdfang(n(0) + 10).Visible = False And _ cmdfang(n(1) + 10).Visible = False And _ cmdfang(n(2) + 10).Visible = False And _ cmdfang(n(3) + 10).Visible = False Then downabl

29、e = True Else: downable = False End If Else: downable = False End IfEnd FunctionPrivate Function leftable() As Boolean 自定義函數,確定方塊是否能左移If n(0) Mod 10 0 And n(1) Mod 10 0 And n(2) Mod 10 0 And n(3) Mod 10 0Then If cmdfang(n(0) - 1).Visible = False And _ cmdfang(n(1) - 1).Visible = False And _ cmdfang(

30、n(2) - 1).Visible = False And _ cmdfang(n(3) - 1).Visible = False Then leftable = True Else: leftable = False End If塔里木大學信息工程學院課程設計第 11 頁 Else: leftable = False End IfEnd FunctionPrivate Function rightable() As Boolean 自定義函數,確定方塊是否能右移 If n(0) Mod 10 9 And n(1) Mod 10 9 And n(2) Mod 10 9 And n(3) Mod

31、 10 9Then If cmdfang(n(0) + 1).Visible = False And _ cmdfang(n(1) + 1).Visible = False And _ cmdfang(n(2) + 1).Visible = False And _ cmdfang(n(3) + 1).Visible = False Then rightable = True Else: rightable = False End If Else: rightable = False End IfEnd Function 塔里木大學信息工程學院課程設計第 12 頁目錄目錄前前 言言.1工程概況工

32、程概況.11.1 項目名稱.11.2 設計平臺.11.3 程序設計思想.11.4 運用的控件和主要對象.21.5 主要實現的功能.21.6 開發人員與分工.2正文正文.32.1 游戲設計的具體實現.32.1.1 游戲界面的設計和背景音樂及特效的實現.32.1.2 俄羅斯方塊的造型.32.1.3 俄羅斯方塊的旋轉.32.1.4 如何實現方塊的運動和自動消除滿行的方塊.42.1.5 游戲速度和游戲級別自由選擇.52.1.6 游戲得分的計算和游戲菜單的編輯.52.2 游戲功能的介紹.5有關說明有關說明.63.1 游戲設計中的不足之處.63.2 VB 與 C 語言之間的不同之處.73.2.1 局部靜態

33、變量.73.2.2 Handles 和 WithEvents.73.2.3 類型轉換運算符.73.2.4 默認屬性和屬性參數.83.2.5 可選參數和按名傳遞.8致謝致謝.8參考文獻:參考文獻:.8附件:附件:.9塔里木大學信息工程學院課程設計第 13 頁VB 游戲設計制作游戲設計制作-制作俄羅斯方塊的設計與實現制作俄羅斯方塊的設計與實現時間:2010-10-13 23:49來源:未知 作者:admin 我要投稿 目 錄 1.課程大作業目的 . 1 1.1 課程大作業設計的目的 . 1 1.2 VB 在實際生活的應用 . 1 2.課程大作業題目描客服咨詢,三七畢業設計論文網竭誠為您服務,本站永

34、久域名: 目目 錄錄 1.課程大作業目的課程大作業目的. 11.1 課程大作業設計的目的. 11.2 VB 在實際生活的應用. 1 2.課程大作業題目描述和要求課程大作業題目描述和要求. 12.1 俄羅斯方塊的題目描述. 12.2 俄羅斯方塊設計思想. 1 3.課程大作業報告內容課程大作業報告內容. 23.1 界面設計. 33.2 俄羅斯方塊的功能實現. 3 4.總結總結. 6 1.課程大作業目的課程大作業目的1.2 VB 課程大作業設計的目的本課程設計以程序設計簡明教程課程為基礎,目的是進一步培養學生綜合應用 VB 的各種編程知識和技塔里木大學信息工程學院課程設計第 14 頁巧進行程序設計的

35、能力。通過課程設計,學生能達到具備設計功能較為復雜的 Windows 應用程序的能力。同時,通過課程設計,培養學生自主學習和獨立創新的精神,是人才培養體系中極為重要的一環1.2 VB 在實際生活中的應用Visual Basic(簡稱 VB)程序設計語言的基本概念和語法結構以及常用控件的使用,并通過大量的例子介紹 VB 程序設計的方法和技巧,內容包括:VB 程序設計基礎、對象及 VB 應用程序的建立、數據的輸入與輸出、基本的控制結構、數組和過程的程序設計、常用控件的使用、界面設計、圖形操作、文件、數據庫技術等.在這些內容的講解中,堅持語言為程序設計服務的原則,注重實用性. 在教學的安排上,采用由

36、淺到深、循序漸進的結構,做到通俗易懂,既有針對初學者的基本知識的介紹,也有針對已經掌握 VB 程序基本設計方法的學生對高層次內容的要求,將程序設計語言、可視化的面向對象編程技術、上機訓練有機地融為一體.突出 VB 的基本語法、編程方法的訓練,讓學生學會分析問題并快速掌握面向對象的程序、界面設計、數據庫技術的設計技巧,培養學生的動手能力和開發應用程序的能力 2.課程大作業題目描述和要求課程大作業題目描述和要求2.1 俄羅斯方塊的題目的描述俄羅斯方塊的題目的描述 1. 運行游戲時.界面隨機的產生不同形狀的方塊,游戲者通過自己的操作使方塊進行合理的堆積.如果每層達到飽合狀態的時候會自動消除.然后游戲

37、有規則的進行加分.分數達到一定的階段.游戲的級別也會越來越高.然后方塊下降的速度也會隨之慢慢加快.以迎合游戲者的挑戰,達到最加有趣的游戲! 2.2 俄羅斯方塊的設計思想俄羅斯方塊的設計思想 游戲是用來給大家娛樂的,所以要能在使用的過程中給大家帶來快樂,消除大家的疲勞,所以我們在游戲中添加了漂亮的場景和動聽的音樂,設置了過關升級的功能,激發大家的娛樂激情。從游戲的基本玩法出發,主要就是俄羅斯方塊的形狀和旋轉,我們在設計中在一個圖片框中構造了一個 4*4的網狀小塊,由這些小塊組合成新的形狀,每四個小塊連接在一起就可以構造出一種造型,因此我們總共設計了 7 中造型,每種造型又可以通過旋轉而變化出 2

38、 到 4 種形狀,利用隨機函數在一個欲覽窗體中提前展示形狀供用戶參考,然后將展示的形狀復制到游戲窗體中進行擺放,在游戲窗體中用戶就可以使用鍵盤的方向鍵來控制方塊的運動,然后利用遞歸語句對每一行進行判斷,如果有某行的方塊是滿的,則消除這行的方塊,并且使上面的方塊自由下落,其中,方塊向下的速度是有時鐘控件控制的,在游戲中,用戶也可以使用向下鍵加快下落速度,定義一個變量,對消除的函數進行記錄,最后就可以得出用戶的分數,用 if 語句對分數判斷,達到一定的積分就可以升級到下一個檔次。俄羅斯方塊游戲設計的主要步驟為以下幾個方面:(1)游戲界面的設計。(2)俄羅斯方塊的造型。(3)俄羅斯方塊的旋轉。(4)

39、俄羅斯方塊的運動情況(包括向左,向右和向下) 。(5)俄羅斯方塊的自動消行功能。(6)游戲級別的自由選擇。(7)游戲速度的自由選擇。(8)游戲得分的計算。塔里木大學信息工程學院課程設計第 15 頁(9)游戲菜單選項的設計及功能實現。 3.課程大作業報告內容課程大作業報告內容 3.1 俄羅斯方塊的界面設計俄羅斯方塊的界面設計界面是以自己的照片為背景然后一個游戲方框和一個游戲輔助方框,再加上一些游戲所需的開始、暫停、退出等按鈕 3.2 俄羅斯方塊的功能的實現俄羅斯方塊的功能的實現1)Enabled = 0 False Height = 480 Left = 4680 MouseIcon = 方塊.

40、frx:BF74 MousePointer = 99 Custom Picture = 方塊.frx:C3B6 ToolTipText = 續繼 CTRL+J Top = 2475 Visible = 0 False Width = 480 End以上的代碼來實現繼續功能2)Begin VB.Image Image9 Height = 480 Left = 5880 MouseIcon = 方塊.frx:B960 MousePointer = 99 Custom Picture = 方塊.frx:BC6A ToolTipText = 退出 CTRL+X Top = 2475 Width = 4

41、80以上的程序代碼實現退出功能3)Private Sub Image3_Click()OPE_Click End Sub以上的程序代碼實現“開始”功能4)Private Sub Image8_Click()Gotog_ClickEnd Sub以上的程序代碼實現“暫停/繼續”功能5)Private Sub Image7_Click()ENDG_Click塔里木大學信息工程學院課程設計第 16 頁End Sub以上的程序代碼實現“停止”功能6)Private Sub Image9_Click()Exite_ClickEnd Sub以上的程序代碼實現“退出”功能7)Private Sub Image5_Click()If jB 1 ThenImage6.Enabled = TrueImage6.Visible = True減.Enabled = True減.Visible = TrueElse

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論