freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

俄羅斯方塊分組對抗游戲的實現(xiàn)畢業(yè)論文-資料下載頁

2025-06-27 12:56本頁面
  

【正文】 ndow(CREATESTRUCTamp。 cs)PreCreateWindow( )設(shè)置生成主窗體的大小、風(fēng)格。 響應(yīng)事件原理(1)處理鍵盤事件關(guān)于按鍵命令消息的響應(yīng),可以通過對WM_KEYDOWN消息的處理函數(shù)進行截獲并重寫來實現(xiàn),下面是對該處理函數(shù)OnKeyDown()的重寫。功能:處理用戶的輸入,方塊的左,右移,加速及變形void CSkyblue_RectView::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags) { switch(nChar) { case VK_LEFT: RectArrow(LEFT)。 break。 case VK_RIGHT: RectArrow(RIGHT)。 break。 case VK_UP: RectChange()。 break。 case VK_DOWN: RectArrow(DOWN)。 break。} CView::OnKeyDown(nChar, nRepCnt, nFlags)。}上左右下開啟游戲開關(guān)判斷按鍵圖形變化調(diào)用Rectchange()方法1. 判斷可移動性2. 可以則移動調(diào)用InvalidateRect()將發(fā)生變化后的方塊顯示在屏幕上圖43 圖鍵盤事件功能圖當(dāng)方塊要進行變形或向左、右、下移動時,首先要對方塊將要移動到的位置進行判斷,判斷是否有障礙,如果有該操作不被執(zhí)行,方塊則仍然保持到原來的位置不變;如果沒有則根據(jù)玩家所按的鍵執(zhí)行相關(guān)的操作。并把該方塊的位置顯示出來。其實方塊的各個方向的移動知識對方塊所處的坐標(biāo)的變化。(2)變形的實現(xiàn)不可變可變根據(jù)下墜物的形態(tài)特性計算出變形后新的坐標(biāo)和狀態(tài)值新點坐標(biāo)賦給控制方塊變量方塊變化(按向上鍵)檢查可變性不發(fā)生任何改變圖44圖方塊變化本游戲通過鍵盤的向上鍵來控制方塊的變形。即當(dāng)玩家按下向上鍵時,程序就會執(zhí)行方塊變化change()函數(shù)。方塊的類型有七種(長條形、Z字形、反Z形、田字形、7字形、反7形、T字型),而每個隨機產(chǎn)生的方塊都有四種變換形態(tài),所有方塊的坐標(biāo)都是由兩個一維數(shù)組來統(tǒng)計的。如:通過上述機制來計算變形后的方塊的坐標(biāo)和所顯示的狀態(tài)值。方塊變形后位置在數(shù)組中的存放順序仍為先左后右,在同一列中先上后下。 xx1=x1。 xx2=x2。 xx3=x3。 xx4=x4。 yy1=y1。 yy2=y2。 yy3=y3。 yy4=y4。 switch(m_currentRect) {case 1: xx1=x1+1。 yy1=y11。 xx3=x31。 yy3=y3+1。 xx4=x42。 yy4=y4+2。 m_lscurrentRect = 11。 break。 case 11: xx1=x11。 yy1=y1+1。 xx3=x3+1。 yy3=y31。 xx4=x4+2。 yy4=y42。 m_lscurrentRect = 1。 break。 ……//省略部分為同類實現(xiàn)的變形后小方塊坐標(biāo)的計算代碼case 73: xx2=x2+1。 yy2=y21。 xx3=x3+2。 yy3=y32。 xx4=x41。 yy4=y41。 m_lscurrentRect = 7。 break。}5 系統(tǒng)測試與維護 軟件測試概述軟件測試是為了發(fā)現(xiàn)程序中的錯誤而執(zhí)行程序的過程。它的目的是在軟件投入生產(chǎn)性運行之前,盡可能多的發(fā)現(xiàn)軟件中的錯誤。軟件測試對于軟件生產(chǎn)來說是必須的。首先,測試并不僅僅是為了要找出錯誤。通過分析錯誤產(chǎn)生的原因和錯誤的分布特征,可以幫助我們發(fā)現(xiàn)當(dāng)前所采用的軟件過程的缺陷,以便對其進行改進。同時這種分析也能幫助我們設(shè)計出有針對性的檢測方案,改善測試的有效性。軟件測試一般分為代碼審查、單元測試、集成測試和系統(tǒng)測試幾個階段。代碼會審是由一組人對程序進行逐條語句講解、討論和爭議,對軟件進行靜態(tài)分析,從而找出隱藏的錯誤的過程。單元測試集中檢查軟件的各個功能模塊的實際功能與定義該模塊的功能說明是否相符,以及發(fā)現(xiàn)編碼的錯誤。集成測試是將模塊按照設(shè)計要求組裝起來,在組裝的同時進行測試。主要目的是發(fā)現(xiàn)與接口有關(guān)的問題。系統(tǒng)測試的目的是向未來的用戶表明系統(tǒng)能夠像預(yù)定要求的那樣工作經(jīng)過上述的測試過程對軟件進行測試后,軟件基本滿足開發(fā)的要求,測試宣告結(jié)束。軟件測試的方法有很多,按是否需要執(zhí)行的角度可以劃分為靜態(tài)測試和動態(tài)測試。靜態(tài)測試主要包括代碼會審、走查和辦公桌檢查。動態(tài)測試分為黑盒測試和白盒測試。 俄羅斯方塊測試本系統(tǒng)由于所處狀態(tài)較多,限于篇幅,以下只對軟件的可用性做簡單的測試。系統(tǒng)分為游戲開始前和游戲進行中兩個階段進行測試。 游戲開始前階段測試游戲開始前階段主要包括配置文件的讀取和服務(wù)器的連接。本階段主要從各個方面全面的測試游戲開始前是否能夠正常工作。測試用例如表51所示。序號測試內(nèi)容測 試 數(shù) 據(jù)期望結(jié)果IP地址主機名1連接服務(wù)169.254.233.242連接成功2連接服務(wù)127.0.0.2連接失敗3連接服務(wù)128.9連接失敗4連接服務(wù))!@@$@連接失敗表51測試用例表經(jīng)過測試,軟件運行正常。本階段主要是玩家對游戲的控制操作。包括開始游戲、移動方塊、變形、使用道具、聊天以及各種消息的處理等。該階段主要是測試程序邏輯是否正確、游戲界面是否能夠根據(jù)游戲邏輯的進行而正確的繪制、游戲操作是否正確等。游戲測試內(nèi)容較多,且測試方法與前面相同,這里就不再累述。游戲中,在進行過一段時間并使用過道具以后的的界面如圖51所示:圖51 游戲過程中界面結(jié) 論 通過編寫這個程序,我體會最為深刻的一點是系統(tǒng)架構(gòu)和設(shè)計模式的重要性。即使是對于一個并不大的程序,代碼的組織都是非常重要的,因為這關(guān)系到日后的維護以及擴展。這個游戲之中,有關(guān)網(wǎng)絡(luò)Socket編程或者俄羅斯方塊主要游戲算法的知識都可以直接從無所不包的Internet上獲取,甚至可以直接獲得一個完整的俄羅斯方塊單機版的源代碼級模塊。但是對于系統(tǒng)的架構(gòu),卻完全是自己的事情,幾千上萬行的代碼需要通過合適的方法組織起來,使程序員編寫代碼更加有條理,更加符合軟件工程的標(biāo)準(zhǔn),這才是最重要的。在剛開始編寫這個程序的時候,我幼稚地認(rèn)為其中最重要的是如何實現(xiàn)一個俄羅斯方塊游戲的算法。但是頭一個月編寫程序的時候卻發(fā)現(xiàn)程序越寫越不容易維護,可見是我走錯了方向。后來我查閱各種技術(shù)書籍才發(fā)覺算法并不是我們編程時最應(yīng)該關(guān)注的,因為我們前輩的努力,現(xiàn)在已經(jīng)有各種精良可用的現(xiàn)成算法,我們所要做的就是直接“拿來主義”罷了;但是對于代碼的組織(也就是軟件的架構(gòu))才是真正軟件工業(yè)的核心部分,因為軟件事實上是直接和經(jīng)濟掛鉤的,因此我們必須在編寫代碼之前選擇一種最為合適的方法來組織這些代碼,否則我們將會失去更多的時間和金錢。在設(shè)計完本系統(tǒng)以后,我真正了解到,一個程序員也同樣需要良好的統(tǒng)籌規(guī)劃能力,算是相當(dāng)于一種管理能力吧,這樣就能讓自己程序的可讀性更高,也大大的降低了程序維護的難度。本科即將畢業(yè),以后踏入社會,本次設(shè)計中需要用到的良好的大局觀、耐心的工作心情、腳踏實地的工作態(tài)度都是必不可少的,這些優(yōu)良品質(zhì)一定會在我個人的職業(yè)發(fā)展的道路上發(fā)揮巨大的推動作用。參考文獻[1] Ben Sawyer. 游戲軟件設(shè)計與開發(fā)指南[M].北京:人民郵電出版社,~46[2] 欽科技. Visual C++游戲設(shè)計[M]. 北京:科海電子出版社,~211[3] C++專業(yè)游戲程序設(shè)計[M]. 北京:中國鐵道出版社,2004汪曉平/鐘軍 C++[4] Bruce ++編程思想(劉宗田、邢大紅、孫慧杰等譯).機械工業(yè)出版社[5] Jesse ++(康博創(chuàng)作室譯).人民郵電出版社[6] Nicolai ++標(biāo)準(zhǔn)程序庫,侯捷/孟巖 譯,華中科技大學(xué)出版社[7] Charles (北京博彥科技發(fā)展有限公司譯).北京大學(xué)出版社[8] C++.[9] 《Windows API函數(shù)參考手冊》編寫組編著.Windows API函數(shù)參考手冊,人民郵電出版社,2002[10] 賽奎春、張雨、阮偉良、李賀等編著. Visual C++工程應(yīng)用與項目實踐,機械工業(yè)出版社,2005[11] 宋坤、劉銳寧、李偉明等編著. Visual C++開發(fā)技術(shù)大全,人民郵電出版社,2007[12] 王明福 C++ :高等教育出版社,2003[13] 譚浩強 ++:清華大學(xué)出版社,2004[14] 羅建軍等 C++:高等教育出版社,2004[15] 孫鑫,余安萍 ++:[16] 古萬榮 C++ :機械工業(yè)出版社,2009[17] 殷肖川等編著.,2003[18] 龔志翔等編著. Visual C++,2004[19] 朱磊、周彬編著. Windows下的C/C++,2002[20] 賽奎春、張雨、阮偉良、李賀等編著. Visual C++,2005[21] 王罡、林立志編著.基于Windows的TCP/,2002致 謝歷時將近五個月的時間,畢業(yè)設(shè)計題目終于做完,論文也完成了。在做畢業(yè)設(shè)計的整個過程中遇到了很多的問題和障礙,不過在老師和同學(xué)的幫助下都得到了解決。在這里,我要鄭重的感謝我的畢業(yè)設(shè)計指導(dǎo)老師王新王老師,她給了我無私的幫助,她多次指導(dǎo)我的畢業(yè)設(shè)計和幫助我修改論文。感謝我的同學(xué),在這五個月里給我的幫助,給你們添了不少麻煩。由于我的水平有限,畢業(yè)設(shè)計和論文還存在很多不足之處,望各位老師能批評指正。四年大學(xué)生活給了我很多,在這四年里我不僅學(xué)習(xí)了許多專業(yè)知識和學(xué)習(xí)的方法,也學(xué)會了如何做人。在此,感謝大學(xué)期間所有傳授我知識的老師、陪伴我成長的同學(xué),您們帶給我的美好回憶將是我一生的財富!感謝中國礦業(yè)大學(xué),感謝計算機科學(xué)與技術(shù)學(xué)院,感謝您們陪伴我走完了人生的重要里程。 感謝評閱老師對我的論文的悉心評閱,答辯委員會老師對我的畢業(yè)設(shè)計的關(guān)注與批評,院領(lǐng)導(dǎo)小組對我的綜合評定!感謝A60721的所有兄弟,謝謝你們在這四年里對我的幫助。最后再一次感謝所有在畢業(yè)設(shè)計中曾經(jīng)幫助過我的良師益友和同學(xué),以及在設(shè)計中被我引用或參考的論著的作者,感謝您們用愛和包容給予我力量,讓我走到了今天。
點擊復(fù)制文檔內(nèi)容
語文相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1