五子棋的網(wǎng)絡(luò)對戰(zhàn)功能課程設(shè)計_第1頁
五子棋的網(wǎng)絡(luò)對戰(zhàn)功能課程設(shè)計_第2頁
五子棋的網(wǎng)絡(luò)對戰(zhàn)功能課程設(shè)計_第3頁
五子棋的網(wǎng)絡(luò)對戰(zhàn)功能課程設(shè)計_第4頁
五子棋的網(wǎng)絡(luò)對戰(zhàn)功能課程設(shè)計_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、暑假生產(chǎn)實習(xí)報告書專 業(yè):計算機科學(xué)與技術(shù)班 級:090411學(xué)生姓名: 左勝平學(xué)號:09041109指導(dǎo)教師: 艾菊梅2011年8月5號目錄1.需求分析71.1目標71.2 用戶特點71.2.1 系統(tǒng)結(jié)構(gòu)層次模塊圖72.概要設(shè)計82.1服務(wù)器管理模塊設(shè)計82.1.1 功能描述82.1.2 功能界面說明82.1.3 操作效果圖82.1.4 界面操作說明82.1.5 服務(wù)器工作原理82.1.6 流程圖82.2用戶登錄注冊管理模塊設(shè)計92.2.1 功能描述9功能界面說明92.2.3 操作效果圖92.2.4 流程圖102.3 用戶列表模塊設(shè)計112.3.1 功能描述112.3.2 功能界面說明112

2、.3.3 操作效果圖112.3.4 流程圖122.4網(wǎng)絡(luò)聊天模塊設(shè)計132.4.1 功能描述132.4.2 功能界面說明132.4.3 操作效果圖132.4.4 流程圖142.5對戰(zhàn)棋盤模塊設(shè)計152.5.1 功能描述152.5.2 功能界面說明152.5.3 操作效果圖152.5.4 流程圖173.詳細設(shè)計183.1登錄模塊18模塊運行流程圖18登錄模塊功能分解表18登錄模塊與數(shù)據(jù)傳輸模塊公共接口193.2注冊模塊19模塊流程圖19注冊模塊功能分解表20注冊模塊與數(shù)據(jù)傳輸接口213.3用戶列表模塊21模塊運行流程圖21用戶列表模塊功能分解表22用戶列表模塊與數(shù)據(jù)傳輸模塊接口233.4用戶對戰(zhàn)

3、模塊23模塊運行流程圖23對戰(zhàn)模塊功能分解表24對戰(zhàn)模塊與數(shù)據(jù)傳輸模塊接口圖253.5數(shù)據(jù)傳輸模塊26模塊流程圖26數(shù)據(jù)傳輸模塊功能分解表26數(shù)據(jù)傳輸模塊對外提供接口273.6服務(wù)端數(shù)據(jù)處理模塊27模塊流程圖1(登錄,注冊,用戶列表信息處理模塊)27服務(wù)端數(shù)據(jù)模塊功能分解表128服務(wù)端數(shù)據(jù)模塊與數(shù)據(jù)傳輸模塊接口129模塊流程圖2(對戰(zhàn)信息處理模塊)29服務(wù)端數(shù)據(jù)模塊功能分解表230服務(wù)端數(shù)據(jù)模塊與數(shù)據(jù)傳輸模塊接口2303.7數(shù)據(jù)描述表314 顯示效果334.1用戶登錄界面334.2用戶注冊界面344.3用戶列表界面354.4對戰(zhàn)界面364.5 聊天界面374.6 服務(wù)器端界面375 總結(jié)371

4、.需求分析1.1目標該系統(tǒng)屬于游戲開發(fā)項目,其主要是實現(xiàn)五子棋的網(wǎng)絡(luò)對戰(zhàn)功能,即玩家可以通過網(wǎng)絡(luò)的方式實現(xiàn)對戰(zhàn),其模式類似與QQ游戲,通過帳號密碼登錄,列出在線列表框,點擊玩家進行五子棋對戰(zhàn)。1.2 用戶特點1.2.1 系統(tǒng)結(jié)構(gòu)層次模塊圖圖表 01總體組織架構(gòu)2.概要設(shè)計2.1服務(wù)器管理模塊設(shè)計2.1.1 功能描述該系統(tǒng)主要實現(xiàn)網(wǎng)絡(luò)通信下的操作,通過網(wǎng)絡(luò)傳輸實現(xiàn)五子棋對戰(zhàn),判斷用戶落子后的輸贏情況。2.1.2 功能界面說明 啟動界面:通過點擊啟動按鈕,啟動服務(wù)器。2.1.3 操作效果圖圖 2-1服務(wù)器啟動操作效果圖2.1.4 界面操作說明點擊啟動按鈕即可啟動服務(wù)器。2.1.5 服務(wù)器工作原理服

5、務(wù)器通過TCP/IP協(xié)議的通訊,創(chuàng)建一個SOCKET,開啟系統(tǒng)的一個端口用于網(wǎng)絡(luò)傳輸,默認的端口號為5000。服務(wù)器首先獲取本機的IP,然后開啟端口,通過監(jiān)聽端口判斷是否有連接信息傳入,如果發(fā)現(xiàn)則與客戶端進行連接,再通過操作信息的發(fā)送接收來響應(yīng)并處理消息。五子棋的規(guī)則判斷也是服務(wù)器的主要功能之一。2.1.6 流程圖圖 2-2用戶服務(wù)器工作簡要流程圖2.2用戶登錄注冊管理模塊設(shè)計2.2.1 功能描述輸入正確的用戶名及密碼登錄游戲并進入用戶列表界面。點擊注冊進行用戶注冊操作。2.2.2功能界面說明登錄:輸入用戶名密碼點擊登錄進行游戲。注冊:輸入用戶名,昵稱,2次密碼,符合要求后注冊完成。2.2.3

6、 操作效果圖圖 2-3 登錄界面效果圖圖 2-4 注冊界面效果圖2.2.4 流程圖圖 2-5登錄注冊界面簡要流程圖2.3 用戶列表模塊設(shè)計2.3.1 功能描述本模塊用于顯示用戶的在線狀態(tài),以及對邀請對戰(zhàn)、邀請聊天,查看信息等操作。2.3.2 功能界面說明右鍵:點擊人物頭像,彈出操作對話框,點擊相應(yīng)條目進行操作。左鍵:雙擊人物頭像,彈出聊天窗口進行聊天。2.3.3 操作效果圖圖 2-6用戶列表效果圖2.3.4 流程圖圖 2-7用戶列表管理簡要流程圖2.4網(wǎng)絡(luò)聊天模塊設(shè)計2.4.1 功能描述通過用戶列表的左鍵雙擊響應(yīng),彈出聊天窗口,輸入聊天內(nèi)容點擊發(fā)送進行聊天。2.4.2 功能界面說明發(fā)送:在聊天

7、框內(nèi)輸入內(nèi)容點擊發(fā)送鍵進行信息發(fā)送?;貜?fù):雙擊聊天內(nèi)容顯示框的某人的信息就可以實現(xiàn)與某人的對話回復(fù)。2.4.3 操作效果圖圖 2-8聊天窗口效果圖 2.4.4 流程圖圖 2-9聊天傳輸簡要流程圖2.5對戰(zhàn)棋盤模塊設(shè)計2.5.1 功能描述五子棋對戰(zhàn)主界面,棋盤位于本界面,實現(xiàn)的功能主要是玩家落子信息的記錄,傳入服務(wù)器端進行處理。2.5.2 功能界面說明準備:進入對戰(zhàn)后的雙方需要點擊準備,雙方都準備后,游戲開始。信息顯示:顯示玩家落子的區(qū)域,以及玩家棋子的顏色。2.5.3 操作效果圖圖 2-10五子棋對戰(zhàn)效果圖2.5.4 流程圖圖 2-11五子棋對戰(zhàn)簡要流程圖3.詳細設(shè)計3.1登錄模塊3.1.1模

8、塊運行流程圖圖 3-1登錄界面詳細流程圖3.1.2登錄模塊功能分解表邏輯處理層:數(shù)據(jù)序號制審日表核期處理方法名類型處理說明判斷用戶名密碼是否為空Bool IsUserInfoNull(long lUserID,string pwd)判讀登錄是否成功Bool IsLoginSuccess(long lFlag)根據(jù)傳入標志lFlag,0表示登錄失敗,1表示登錄成功3.1.3登錄模塊與數(shù)據(jù)傳輸模塊公共接口3.2注冊模塊3.2.1模塊流程圖圖 3-2注冊界面詳細流程圖3.2.2注冊模塊功能分解表邏輯處理層:數(shù)據(jù)序號制審日表核期處理方法名類型處理說明判斷輸入信息是否有空Bool IsUserInfoN

9、ull(long id,string name,string pwd)判讀用戶昵稱格式是否正確Bool ChecNameFormat(string name)判斷用戶名里面是否有一些禁止用戶輸入的特殊標志判斷兩次輸入的密碼是否相同Bool CheckUserPwd(string pwdfst,string pwdsnd)判斷冊是否成功Bool IsRegisteSuccess(long lFlag)根據(jù)傳入標志lFlag,0表示注冊失敗,1表示注冊成功3.2.3注冊模塊與數(shù)據(jù)傳輸接口3.3用戶列表模塊3.3.1模塊運行流程圖圖 3-3用戶列表詳細流程圖3.3.2用戶列表模塊功能分解表邏輯處理層

10、:數(shù)據(jù)序號制審日表核期處理方法名類型處理說明判斷用戶是否空閑私有Bool CheckUserState(long id)根據(jù)id在本地用戶列表中查找對應(yīng)的用戶狀態(tài),判斷是否空閑初始化成員列表私有Bool InitUserList(char* nameList)從nameList中根據(jù)間隔標志,提取出一個個用戶信息,插入用戶列表判斷對方是否同意對戰(zhàn)私有Bool CheckEnemyAnswer(bool bFlag)3.3.3用戶列表模塊與數(shù)據(jù)傳輸模塊接口3.4用戶對戰(zhàn)模塊3.4.1模塊運行流程圖圖 3-4對戰(zhàn)界面詳細流程圖3.4.2對戰(zhàn)模塊功能分解表邏輯處理層:數(shù)據(jù)序號制審日表核期處理方法名類

11、型處理說明初始化棋盤信息Bool InitMapInfo()將棋盤上的下子位置清0將屏幕坐標轉(zhuǎn)化成棋盤位置Void ScreenToMapPos(int& x,int& y)將傳入的屏幕的(x,y)坐標轉(zhuǎn)化成棋盤上的行,列值判斷當前位置是否可以下Bool CheckPosState(int row,int col)放置棋子Void SetGridPos(int row,int col,int color)根據(jù)row,col,將棋盤上該位置設(shè)置為顏色為color的棋子將對方上次落子位置清0Void InitEnemyLastPos()根據(jù)對方最后一步落子位置,將該位置的color

12、清03.4.3對戰(zhàn)模塊與數(shù)據(jù)傳輸模塊接口圖3.5數(shù)據(jù)傳輸模塊3.5.1模塊流程圖該傳輸流程既可以用戶于客戶端向服務(wù)器發(fā)送數(shù)據(jù),也可以用于服務(wù)器向客戶端發(fā)送數(shù)據(jù),圖 3-5服務(wù)器數(shù)據(jù)傳輸詳細流程圖3.5.2數(shù)據(jù)傳輸模塊功能分解表數(shù)據(jù)序號制審日表核期處理方法名類型處理說明組裝數(shù)據(jù)包Void CreateDataPackage(int nType,char* param,char* dataBuf)發(fā)送數(shù)據(jù)包Bool SendDataPackage( char* sendBuf)接受數(shù)據(jù)包Bool RecvDataPackage( char* recvBuf)解析數(shù)據(jù)包Bool AnalysisDa

13、taPackage( char* dataBuf,int& nType,char* param)3.5.3數(shù)據(jù)傳輸模塊對外提供接口3.6服務(wù)端數(shù)據(jù)處理模塊3.6.1模塊流程圖1(登錄,注冊,用戶列表信息處理模塊)圖 3-6服務(wù)器對登錄、注冊、列表數(shù)據(jù)處理詳細流程圖3.6.2服務(wù)端數(shù)據(jù)模塊功能分解表1數(shù)據(jù)序號制審日表核期處理方法名類型處理說明判端用戶是否存在Bool IsUserExist(long id)通過用戶的id在數(shù)據(jù)庫中檢索是否有該用戶的記錄將用戶信息插入數(shù)據(jù)表Bool IsertUserInfo(long id,string name,string pwd,)取得數(shù)據(jù)庫中所有

14、在線的用戶名Void GetUserList(char* buf)通過檢索數(shù)據(jù)庫,將用戶名序列以一定的格式存入buf中返回3.6.3服務(wù)端數(shù)據(jù)模塊與數(shù)據(jù)傳輸模塊接口13.6.4模塊流程圖2(對戰(zhàn)信息處理模塊)圖 3-7服務(wù)器對對戰(zhàn)數(shù)據(jù)處理詳細流程圖3.6.5服務(wù)端數(shù)據(jù)模塊功能分解表2數(shù)據(jù)序號制審日表核期處理方法名類型處理說明判斷雙方是否都準備好Bool IsPlayersReady()設(shè)置玩家下子位置Void PutDownGrid(int row,int col)更新數(shù)庫中玩家積分Bool UpdateUserScore(long id,int score)將對方上次落子位置清0Void I

15、nitEnemyLastPos()根據(jù)對方最后一步落子位置,將該位置的color清0初始化棋盤狀態(tài)Bool InitMapInfo()3.6.6服務(wù)端數(shù)據(jù)模塊與數(shù)據(jù)傳輸模塊接口23.7數(shù)據(jù)描述表序號名稱制表審核日期數(shù)據(jù)說明:Class CUserprivate: long m_lID; /表示玩家IDbool m_bColor;/表示玩家顏色bool m_bBusy;/表示用戶狀態(tài)Class CGridMapprivate: int m_nID; /表示棋盤編號bool m_bEmpty; /表示棋盤當前有無玩家int m_Grid1515;/表示一個15x15的棋盤int m_nlastRow;/表示棋盤上最后一次落子的行號int m_nlastCol;/表示棋盤上最后一次落子的列號數(shù)據(jù)項說明:Class CUser中bool m_bColor;為1時表示玩家為黑方,為0時表示玩家為白方bool m_bBusy; 為1時表示玩家處于對戰(zhàn)狀態(tài),為0時表示玩家處于空閑 狀

溫馨提示

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

評論

0/150

提交評論