連連看設(shè)計(jì)報(bào)告_第1頁
連連看設(shè)計(jì)報(bào)告_第2頁
連連看設(shè)計(jì)報(bào)告_第3頁
連連看設(shè)計(jì)報(bào)告_第4頁
連連看設(shè)計(jì)報(bào)告_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

湖南涉外經(jīng)濟(jì)學(xué)院信息科學(xué)與工程學(xué)院課程設(shè)計(jì)任務(wù)書報(bào)告題目連連看游戲的開發(fā)時(shí)間2013-6學(xué)生姓名專業(yè)班級(jí)指導(dǎo)教師鄒競職稱講師總體設(shè)計(jì)要求和技術(shù)要點(diǎn)設(shè)計(jì)一個(gè)連連看游戲程序,游戲程序的功能需求如下:游戲區(qū)是一個(gè)包含了多種不同花色游戲牌的二維棋盤,棋盤的行數(shù)和列數(shù)可以自行定義。每一種花色的游戲牌的數(shù)量都是偶數(shù)。兩張花色相同的游戲牌的之間的路徑如果滿足以下條件,這兩張游戲牌即可消去:路徑連線由不多于3條的水平和垂直的線段構(gòu)成,任何一條線段都不能穿越其他的游戲牌,但可以不在棋盤中,路徑兩端的游戲牌必須具有相同的花色。游戲只要用鼠標(biāo)即可進(jìn)行操作。最初棋盤里布滿了游戲牌,游戲開始時(shí)進(jìn)行計(jì)時(shí)。第一次使用鼠標(biāo)點(diǎn)擊棋盤中的游戲牌,該游戲牌此時(shí)為“被選中”,以特殊方式顯示;再次以鼠標(biāo)點(diǎn)擊其他游戲牌,若該游戲牌與被選中的游戲牌兩者花色相同,且把第一張游戲牌到第二張游戲牌連起來,中間的線段不超過3條,則消掉這一對(duì)游戲牌,否則第一張游戲牌恢復(fù)成未被選中狀態(tài),而第二張游戲牌變成被選中狀態(tài)。每消去一對(duì)游戲牌,應(yīng)檢查棋盤內(nèi)是否至少還存在一對(duì)能消去的游戲牌,如果不存在,則在原有位置對(duì)游戲牌進(jìn)行重排,直到至少存在一對(duì)能夠消去的游戲牌。如果在指定的時(shí)間內(nèi)消去了所有的游戲牌,游戲勝利;如果時(shí)間耗盡還未能消除全部的游戲牌,游戲失敗。要求每人獨(dú)立完成,使用主流開發(fā)工具,盡可能采用面向?qū)ο蠓椒?,在設(shè)計(jì)判斷兩張相同花色游戲牌能否消去的算法時(shí),盡可能使用狀態(tài)空間搜索算法(如回溯法、分支限界法等),要求代碼的具有一定的可讀性、可維護(hù)性和可擴(kuò)充性。可以參考教師給定的程序或者其他程序,但程序和報(bào)告嚴(yán)禁全盤抄襲。工作內(nèi)容及時(shí)間進(jìn)度安排第11周~第12周:對(duì)需要開發(fā)的軟件進(jìn)行需求分析和軟件設(shè)計(jì)第13周:論證方案設(shè)計(jì)第14周~第16周:程序設(shè)計(jì)第17周:測試、修改程序,撰寫報(bào)告第18周:驗(yàn)收答辯課程設(shè)計(jì)成果1.與設(shè)計(jì)內(nèi)容對(duì)應(yīng)的軟件程序2.課程設(shè)計(jì)總結(jié)報(bào)告摘要游戲《連連看》,只要將相同的兩張牌用三根以內(nèi)的直線連在一起就可以消除,規(guī)則簡單容易上手。游戲速度節(jié)奏快,畫面清晰可愛,適合細(xì)心的玩家。豐富的道具和公共模式的加入,增強(qiáng)游戲的競爭性。多樣式的地圖,使玩家在各個(gè)游戲水平都可以尋找到挑戰(zhàn)的目標(biāo),長期地保持游戲的新鮮感。不管走到哪個(gè)網(wǎng)頁游戲網(wǎng)站,連連看游戲總是排在受玩家歡迎排名的前5位,休閑、趣味、益智是連連看玩不厭的精華,且不分男女老少、工薪白領(lǐng),是一款適合大眾的經(jīng)典網(wǎng)絡(luò)休閑小游戲。這里設(shè)計(jì)的這款游戲基本實(shí)現(xiàn)了單機(jī)版的連連看,有計(jì)時(shí),計(jì)分,游戲進(jìn)程顯示呈現(xiàn)給玩家的基本功能,按照分類的設(shè)計(jì)思路進(jìn)行設(shè)計(jì)。按照分類算法將游戲面板中的兩個(gè)方塊之間分三種情況進(jìn)行判斷,分別是在同一條直線上;兩方塊之間存在一個(gè)拐點(diǎn);兩方塊之間存在兩個(gè)拐點(diǎn),這里說的有點(diǎn)籠統(tǒng),詳細(xì)設(shè)計(jì)那里會(huì)說的很具體。至于游戲進(jìn)度和計(jì)時(shí)都是使用了進(jìn)度條,同時(shí)又附帶文字提示,這樣設(shè)計(jì)是為了能讓玩家清晰的了解到目前的游戲狀態(tài)。游戲完成后會(huì)進(jìn)行相應(yīng)判斷,判斷玩家所得分?jǐn)?shù)是否能進(jìn)入排行榜,當(dāng)然這里還要玩家確實(shí)是否參與排榜,至于其他功能,詳細(xì)設(shè)計(jì)里面會(huì)給出具體的解析。關(guān)鍵詞:連連看;分類;C#目錄摘要 2第一章 課程設(shè)計(jì)目的 4第二章課程設(shè)計(jì)描述和要求 52.1任務(wù)描述 52.2設(shè)計(jì)要求 6第二章 需求分析 83.1功能描述 83.2功能需求 83.3功能模塊 93.4系統(tǒng)需求分析總結(jié) 10第四章設(shè)計(jì)方案 114.1總體設(shè)計(jì) 114.2詳細(xì)設(shè)計(jì) 12第五章心得體會(huì) 21參考資料 22課程設(shè)計(jì)目的本課程設(shè)計(jì)是計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)重要的實(shí)踐性環(huán)節(jié)之一,是對(duì)本課程學(xué)習(xí)后進(jìn)行的一次全面而綜合的練習(xí),讓我們對(duì)理論知識(shí)有了一定的了解和認(rèn)識(shí),本次的課程設(shè)計(jì)便是將書本上所學(xué)的理論知識(shí)與實(shí)際相結(jié)合,同時(shí)也是對(duì)所學(xué)知識(shí)的一種檢查,希望通過本次的課程設(shè)計(jì)使自己在程序的開發(fā)和設(shè)計(jì)上有新的認(rèn)識(shí)并有所提高。本次課程設(shè)計(jì)既鍛煉了我們的實(shí)際動(dòng)手能力,又在老師的指導(dǎo)下進(jìn)行了一次實(shí)際的小游戲開發(fā),對(duì)于我們以后的工作能力的培養(yǎng)具有重要的意義。因此,本次課程設(shè)計(jì)的目的主要有:(1)培養(yǎng)綜合運(yùn)用所學(xué)知識(shí)獨(dú)立完成課題的能力;(2)更加深入的理解和掌握該課程設(shè)計(jì)中的有關(guān)基本概念,程序設(shè)計(jì)思想和方法;(3)培養(yǎng)勇于探索、嚴(yán)謹(jǐn)推理、實(shí)事求是、有錯(cuò)必改,用實(shí)踐來檢驗(yàn)理論,全方位考慮問題等技術(shù)人員應(yīng)具有的素質(zhì);(4)培養(yǎng)從資料文獻(xiàn)、實(shí)驗(yàn)中獲得知識(shí)的能力,提高從別人經(jīng)驗(yàn)中找到解決問題的新途徑的悟性,初步培養(yǎng)工程意識(shí)和創(chuàng)新能力;(5)對(duì)掌握知識(shí)的深度、運(yùn)用理論去處理問題的能力、實(shí)驗(yàn)?zāi)芰?、課程設(shè)計(jì)能力、書面及口頭表達(dá)能力進(jìn)行考核;(6)掌握程序設(shè)計(jì)說明文檔的能力與技巧;(7)更深入地理解和掌握該課程中的有關(guān)基本概念,程序設(shè)計(jì)思想和方法。第二章課程設(shè)計(jì)描述和要求2.1任務(wù)描述隨著人們工作壓力變得越來越大,現(xiàn)如今更多的人開始通過玩游戲來排解內(nèi)心的壓力,而各種各樣的游戲也排入市場,一些大型網(wǎng)絡(luò)游戲更是一些年輕用戶的最愛,所有連連看游戲面對(duì)市場的競爭壓力還是非常大的。分析連連看游戲,查找規(guī)則并對(duì)主要功能進(jìn)行模仿程序?qū)崿F(xiàn),對(duì)于實(shí)現(xiàn)過程中出現(xiàn)的bug進(jìn)行調(diào)試解決。經(jīng)過對(duì)游戲的初步分析,連連看游戲含有如下規(guī)則:根據(jù)輸入的信息,執(zhí)行相應(yīng)的布局,設(shè)定游戲的難以程度等,游戲能繼續(xù)玩的基本點(diǎn)是兩次點(diǎn)擊的圖案相同,并且能夠通過某種不超過三個(gè)轉(zhuǎn)折點(diǎn)的路線連接起來,使兩個(gè)圖案塊消除。具體任務(wù)如下:(1)需要為Windows操作系統(tǒng)的用戶設(shè)計(jì)完成一款連連看游戲,這是一個(gè)根據(jù)某種算法自動(dòng)布局;(2)本游戲在難度設(shè)置上,分為低、中、高三個(gè)難度等級(jí),三個(gè)等級(jí)的對(duì)數(shù)不同;(3)本游戲由每個(gè)學(xué)生單獨(dú)完成,完成時(shí)間大概7周時(shí)間,開發(fā)成本低,易于完成;(4)設(shè)計(jì)過程中,前兩周,對(duì)整個(gè)游戲所實(shí)現(xiàn)的功能進(jìn)行詳細(xì)的設(shè)計(jì)以及對(duì)存在的問題及解決辦法進(jìn)行最終確定;3-5周完成游戲的程序編寫,并優(yōu)化;最后兩周,寫出設(shè)計(jì)本游戲的詳細(xì)文檔說明,并作課程設(shè)計(jì)匯報(bào)。整個(gè)連連看游戲課程設(shè)計(jì)實(shí)現(xiàn)流程圖如圖2-1所示:調(diào)試調(diào)試測試制定規(guī)則數(shù)據(jù)分析設(shè)計(jì)算法數(shù)據(jù)分析設(shè)計(jì)算法完成設(shè)計(jì)報(bào)告算法實(shí)現(xiàn)完成設(shè)計(jì)報(bào)告算法實(shí)現(xiàn)圖2-1課程實(shí)現(xiàn)流程圖圖2-1清晰明了的描述了整個(gè)課程設(shè)計(jì)的實(shí)現(xiàn)流程。前期工作是制定規(guī)則和設(shè)計(jì)算法,這一階段主要任務(wù)是搜集相關(guān)資料,然后根據(jù)搜集到的資料結(jié)合自己所學(xué)知識(shí)制定系統(tǒng)實(shí)現(xiàn)算法;中期工作是算法實(shí)現(xiàn)和調(diào)試系統(tǒng),這一階段主要任務(wù)是完成算法的實(shí)現(xiàn),然后進(jìn)行調(diào)試和優(yōu)化系統(tǒng);后期工作是對(duì)數(shù)據(jù)結(jié)果進(jìn)行分析,然后完成課程設(shè)計(jì)報(bào)告。2.2設(shè)計(jì)要求(1)系統(tǒng)需求分析,對(duì)系統(tǒng)的各種功能需要進(jìn)行總結(jié);(2)理解連連看玩法的特點(diǎn),并分析玩法的實(shí)現(xiàn)功能(3)進(jìn)行概念設(shè)計(jì)和邏輯結(jié)構(gòu)設(shè)計(jì),以便使系統(tǒng)實(shí)現(xiàn)進(jìn)展順利;(4)模塊化程序設(shè)計(jì);(5)進(jìn)行詳細(xì)的設(shè)計(jì)方案,包括總體設(shè)計(jì)和詳細(xì)設(shè)計(jì),這包括程序設(shè)計(jì)代碼的分析和系統(tǒng)運(yùn)行界面截圖的分析;(6)要求人機(jī)交互性較強(qiáng);第三章需求分析需求分析的主要任務(wù)即詳細(xì)的找出程序所需要的各種功能實(shí)現(xiàn),是對(duì)系統(tǒng)功能進(jìn)一步分析和抽象,以確定系統(tǒng)應(yīng)當(dāng)做什么的問題,從而完成系統(tǒng)的邏輯設(shè)計(jì)。本程序?yàn)檫B連看游戲的實(shí)現(xiàn),首先是要實(shí)現(xiàn)連連看游戲的基本功能,根據(jù)連連看游戲的玩法,設(shè)計(jì)程序,實(shí)現(xiàn)程序功能。本系統(tǒng)需求分析分為四個(gè)部分:功能描述、功能需求、功能模塊和系統(tǒng)需求分析報(bào)告。3.1功能描述按功能將游戲區(qū)域分成三個(gè)區(qū)域:游戲區(qū)、游戲狀態(tài)區(qū)以及排榜展示區(qū)。游戲區(qū)布局了游戲方塊;游戲狀態(tài)區(qū)包括游戲進(jìn)度條、計(jì)時(shí)器和計(jì)分器;排榜展示區(qū)顯示了每個(gè)等級(jí)中的錢三名玩家的名稱及分?jǐn)?shù),這里的分?jǐn)?shù)就是玩家在完成游戲時(shí)所花費(fèi)的時(shí)間,時(shí)間越少,排名越靠前。游戲過程中,當(dāng)用戶用鼠標(biāo)開始點(diǎn)擊方塊,程序就會(huì)開始執(zhí)行計(jì)時(shí)等一系列操作。游戲設(shè)計(jì)的功能有重新開始、計(jì)時(shí)、計(jì)分、游戲進(jìn)度顯示、排行榜、游戲主題切換、游戲等級(jí)切換。本游戲設(shè)計(jì)的難點(diǎn)在于兩方塊之間的關(guān)系判斷、消除以及玩家排行榜功能,詳細(xì)設(shè)計(jì)里面會(huì)具體介紹到。3.2功能需求(1)游戲時(shí)間提示;(2)隨機(jī)布局;(3)游戲進(jìn)度顯示;(4)游戲成功和失敗提示;(5)玩家排行榜;(6)游戲等級(jí)切換;3.3功能模塊(1)游戲界面(2)布局格子(3)隨機(jī)排列圖片(4)游戲勝利(結(jié)束)(5)游戲失?。ńY(jié)束)(6)游戲設(shè)置(難度)圖3-1是整個(gè)連連看游戲的系統(tǒng)基本功能圖,從圖中可以看出系統(tǒng)分為五大功能模塊,即游戲開始、游戲選關(guān)、游戲計(jì)分、游戲計(jì)時(shí)、排行榜。連連看游戲連連看游戲游戲開始游戲選關(guān)游戲計(jì)分游戲計(jì)時(shí)排行榜圖3-1系統(tǒng)基本功能圖第四章設(shè)計(jì)方案4.1總體設(shè)計(jì) 4.1.1界面設(shè)計(jì) 界面采用C#技術(shù)實(shí)現(xiàn),分為游戲狀態(tài)區(qū)、游戲區(qū)和玩家排行榜。游戲狀態(tài)區(qū)左邊是游戲進(jìn)度,右邊是游戲時(shí)間,從點(diǎn)開第一個(gè)方塊開始計(jì)時(shí),時(shí)間是倒著計(jì)算的;每消除一對(duì)游戲進(jìn)度則會(huì)加1,時(shí)間也會(huì)加1,后面會(huì)顯示對(duì)應(yīng)的百分比;中間一大塊區(qū)域是游戲區(qū);游戲區(qū)的右邊是玩家排行榜,排行榜顯示對(duì)應(yīng)等級(jí)中成績前三的玩家名稱以及分?jǐn)?shù)。效果圖看詳細(xì)設(shè)計(jì)。 4.1.2功能設(shè)計(jì) 實(shí)現(xiàn)功能包括:重新開始、計(jì)時(shí)、計(jì)分、游戲進(jìn)度顯示、排行榜、游戲主題切換、游戲等級(jí)切換。當(dāng)玩家不想玩當(dāng)前這局或玩的比較困難,覺得玩不下去了,可以點(diǎn)擊重新開始進(jìn)行重新布局,重新計(jì)時(shí)。計(jì)時(shí)和計(jì)分從實(shí)際上來說其實(shí)質(zhì)是一樣的,計(jì)分是根據(jù)玩家某局勝利后所花費(fèi)的時(shí)間,也就是說花了多少時(shí)間,分?jǐn)?shù)就是多少,花時(shí)間越少,對(duì)應(yīng)的分?jǐn)?shù)越靠前。游戲進(jìn)度是以一個(gè)進(jìn)度條來顯示的,后面還有對(duì)應(yīng)的百分比,能讓玩家清晰的知道目前的游戲狀態(tài)。排榜功能是本游戲中的一個(gè)難點(diǎn),排行榜的數(shù)據(jù)時(shí)存放在xml文件里面的,不同的等級(jí)對(duì)應(yīng)不同的排行榜,每當(dāng)用戶變換等級(jí)時(shí)系統(tǒng)會(huì)從xml文件中讀取出前三玩家,當(dāng)玩家勝利時(shí),系統(tǒng)會(huì)對(duì)當(dāng)前所得分?jǐn)?shù)與xml中的數(shù)據(jù)進(jìn)行比對(duì),如果可以排榜,則提示玩家是否進(jìn)行排榜,如果玩家想進(jìn)入排行榜則還需輸入名稱,系統(tǒng)將會(huì)把當(dāng)前玩家列入排行榜,然后顯示到游戲界面上。本游戲還有一個(gè)特色功能是切換游戲主題,當(dāng)玩家玩了一段時(shí)間后可能對(duì)眼前的圖案有點(diǎn)反感,這時(shí)候玩家就可以根據(jù)自己的喜好切換不同的游戲圖片,這里共提供了四套主題。游戲等級(jí)分為初、中、高,詳細(xì)設(shè)計(jì)中會(huì)具體解析,這里不贅述。 4.1.3游戲流程設(shè)計(jì) 運(yùn)行游戲程序,系統(tǒng)進(jìn)行初始化、初始化操作包括游戲參數(shù)初始化、時(shí)間初始化、游戲狀態(tài)初始化、布局方塊、隨機(jī)排圖等,之后等待鼠標(biāo)單擊游戲方塊,第一次單擊時(shí),游戲開始計(jì)時(shí)。第一次點(diǎn)擊時(shí)記錄下該方塊的坐標(biāo),點(diǎn)擊的方塊邊框會(huì)顯示紅色,第二次點(diǎn)擊時(shí)也獲得對(duì)應(yīng)坐標(biāo),并進(jìn)行判斷,如果兩次點(diǎn)擊的為同一個(gè)方塊,則直接返回,不做任何操作,否則判斷兩個(gè)方塊的圖案是否相等,如果相等,則進(jìn)行兩個(gè)方塊位置的判斷;兩個(gè)方塊的位置分為兩種情況,整個(gè)游戲的核心算法也在這里,第一種情況是兩個(gè)方塊的位置處在同一條直線上,水平線上或者垂直線上;第二種情況是兩個(gè)方塊能形成一個(gè)矩陣,兩個(gè)方塊分別是這個(gè)矩陣的兩個(gè)對(duì)角。在第二種情況中分為兩種情況,一種是a轉(zhuǎn)一個(gè)拐點(diǎn)能到達(dá)b點(diǎn),另一種是a經(jīng)過兩個(gè)拐點(diǎn)到達(dá)b點(diǎn)。如果兩個(gè)點(diǎn)能達(dá)成其中的某個(gè)條件連通,則畫線,然后消除兩個(gè)點(diǎn),這里是直接把兩個(gè)方塊從面板上刪除了(有些程序是把這兩個(gè)方塊隱藏)。消除一對(duì)方塊后,游戲進(jìn)度會(huì)加1,剩余時(shí)間也會(huì)加1秒,右邊顯示的對(duì)應(yīng)的方塊對(duì)數(shù)會(huì)減1。當(dāng)這些條件都不成立的時(shí)候,說明兩點(diǎn)之間不能連線,則不進(jìn)行任何操作。游戲會(huì)在兩種情況下結(jié)束,一種是玩家在規(guī)定的時(shí)間內(nèi)把所有的方塊都消除了,判斷方式有三個(gè),一個(gè)是判斷進(jìn)度完成,一個(gè)是判斷面板上是否還有方塊,一個(gè)是判斷右邊顯示的方塊對(duì)數(shù)是否為0。這種情況是游戲成功,隨之系統(tǒng)會(huì)進(jìn)行成績比對(duì),查看當(dāng)前成績能否進(jìn)入前三,并提示玩家是否參與排榜;另一種是時(shí)間消耗完了,面板上還有方塊,這種情況是失敗的,玩家可以選擇重新開始。游戲詳細(xì)運(yùn)行流程如圖4-1所示 4-1運(yùn)行流程圖4.2詳細(xì)設(shè)計(jì)游戲開始時(shí),系統(tǒng)會(huì)自動(dòng)布局方塊并隨機(jī)的生成圖片,游戲分為初、中、高三個(gè)等級(jí),每個(gè)等級(jí)的難度不一,這里是按照?qǐng)D片的對(duì)數(shù)的數(shù)量以及對(duì)應(yīng)的時(shí)間來分的。游戲區(qū)域共有144個(gè)格子,也就是72對(duì)方塊,初級(jí)中,只有15對(duì)不同的圖片,也就意味著有有另外57對(duì)都是從這15對(duì)里面隨機(jī)抽取的,出現(xiàn)相同圖片的概率為79%;中級(jí)中,有25對(duì)不同的圖片,另外還有47對(duì),相同圖片概率為65%;高級(jí)中,有35對(duì)不同圖片,另外還有37對(duì),相同圖片概率為51%,對(duì)比一下,顯然從中級(jí)開始,相同圖片出現(xiàn)的概率降低了14個(gè)百分點(diǎn),難度有所提高。另外,時(shí)間上也做了限制4.2.1界面設(shè)計(jì)初始界面如圖4-2所示圖4-2初始界面游戲中界面如圖4-3所示圖4-3游戲中界面游戲失敗界面如圖4-4所示圖4-4游戲失敗界面游戲成功界面如圖4-5所示圖4-5游戲成功界面4.2.2功能

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論