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

正文內(nèi)容

基于android系統(tǒng)的手機游戲設(shè)計與實現(xiàn)畢業(yè)論文(參考版)

2025-07-01 00:57本頁面
  

【正文】 。劉嘉欣老師對我的畢業(yè)設(shè)計予以悉心的指導(dǎo),對我的畢業(yè)設(shè)計提出了很多建議,并細心授予寫論文的心得,多次提醒注意事項,耐心的指導(dǎo)使我做的更完善。每次在遇到困難的時候,我得到了指導(dǎo)老師的幫助,使我明確了目標與設(shè)計方向,各種難題得到解決。用戶之間接收和發(fā)送信息,使五子棋游戲不僅僅局限于一臺手機上。隨著 3G 智能手機的普及,人們對游戲的要求會越來越高。在以后的學(xué)習(xí)和提高中會努力學(xué)習(xí)更多知識從而完善這些功能。人工智能方面也存在缺陷,在電腦的落子只是考慮當前棋局,而沒有考慮到落子之后對整個棋局的影響。采用監(jiān)聽按鍵方法快速進入游戲。并且游戲界面的邊界都得以限制,不會出現(xiàn)數(shù)據(jù)溢出現(xiàn)象。人工智能的流程如圖 43 所示:圖 43: 人 工 智 能 流 程第 4 章 系統(tǒng)實現(xiàn) 實現(xiàn)效果運行程序直接進入游戲主界面,游戲主界面如圖 44 所示:圖 44: 游 戲 主 界 面進入游戲主界面后可以根據(jù)提示窗口進行游戲模式的選擇。首先第 4 章 系統(tǒng)實現(xiàn)進行防守判斷,若人類玩家的棋局不會對電腦造成威脅,判斷順序是玩家是否有活 4,玩家是否有雙活 3,玩家是否有沖 4,玩家是否有沖雙活 3,若不需要防守就進攻,先找電腦能否制造活 4,沒有就找雙活 3,沒有雙活 3 就找沖 4,沒有沖 4 就找單活 3,沒有的話就只能找活 2 了。第二次分析,主要是是分析第一次搜索的結(jié)果,第一次搜索結(jié)果會把一步棋在各個方向的結(jié)果生成相應(yīng)對象,通過第二次搜索就將這些生成的對象合成一個對象。若棋子不在搜索范圍之內(nèi),就需要修改搜索范圍使之在搜索范圍內(nèi)。第一次搜索把玩家第一步棋的邊界加 1,前提是初始化搜索范圍。再創(chuàng)建一個 boolean 類型的函數(shù),判斷在橫、豎、左斜、右斜四個方向的棋子個數(shù)是否大于等于五,若棋子個數(shù)大于等于五則勝利。hasWin()就是判斷判斷勝負的方法,即總體設(shè)計中的判斷勝負模塊。在刷新棋盤的時候都需要觸發(fā) onDarw 方法,onDarw 就是把玩家或者電腦下的棋子顯示出來的方法,把玩家一和玩家二的棋子利用 canvas 方法把對應(yīng)棋子圖片放入棋盤,并把上一次下的棋子和新下的棋子區(qū)分開。 刷新棋盤。 發(fā)消息觸發(fā)handleMessage函數(shù)。}}而電腦落子首先判斷是否是電腦落子,如果是電腦則利用繼承自 Handler的方法發(fā)消息觸發(fā) handleMessage 函數(shù),而在電腦接收到觸發(fā)消息后,根據(jù)人工智能計算出的最佳位置電腦走一步棋子,接著刷新一下棋盤,電腦要下的棋子就顯示在棋盤上了。 //這期間一定不可以再響應(yīng)觸摸事件玩家一下棋。部分偽代碼如下:private void player1Run(MotionEvent event){Point point = newPoint((), ())。 }第 4 章 系統(tǒng)實現(xiàn) 落子模塊在初始化模塊中已經(jīng)設(shè)置好點的大小和模型,在落子模塊中就要把玩家或者電腦所要下的棋子顯示在游戲界面中。部分代碼如下: if(玩家二沒有勝利 ){ 玩家一下棋。在玩家二落子之前先判斷是否是電腦落子,如果是電腦落子則根據(jù)接收到的觸摸信息進行落子(在落子模塊中再詳細介紹)否則玩家二落子,而如果玩家一贏了則不再下棋跳到已結(jié)束狀態(tài)并輸出勝負結(jié)果。}}else{輸出玩家一勝利。首先判斷玩家是否取得勝利,如果勝利則直接輸出結(jié)果,若沒有勝利就輪到對手下棋。利用 whoRun 來設(shè)置玩家下棋的狀態(tài)。顯示模塊初始化? 創(chuàng)建畫筆對象? 創(chuàng)建用于提示輸贏的文本控件? 建立不同顏色的 Bitmap 數(shù)組,使顏色為黑、白兩種顏色? 初始化好黑、白兩種顏色的點? 定義所有未下的空白點數(shù)據(jù)模塊初始化? 設(shè)置點的大小? 定義屏幕右下角的坐標值,即最大坐標值? 初始橫線和豎線的數(shù)目控制模塊初始化? 定義可開局狀態(tài)? 定義已開局狀態(tài)? 定義已結(jié)束狀態(tài)并且輸出勝負。第 4 章 系統(tǒng)實現(xiàn) 游戲初始化模塊在游戲初始化模塊中,定義所有需要用到的函數(shù)和方法,使整個主界面得以運行。有了取得棋盤最大橫縱坐標的方法,才可以計算出棋子的位置。選擇游戲模式是根據(jù)手機鍵盤的方向鍵設(shè)定的。將在第 4 章的人工智能詳細介紹里給出人工智能計算的流程圖。判斷是否有一方可以制造出活 4 是否整理出可以制造活 3,半活 4 等棋型的位置,在制造活 4 處落子,不再往下分析。進行第一次搜索,掃描所有空白點是否在搜索范圍內(nèi),判斷是否可能連成五子,是否為活 半活 2,拋棄該點是否有一方即將勝利。 人工智能設(shè)計本游戲的人工智能是根據(jù)五子棋下法的特點從而計算出最佳的落子位置,或防守或進攻,從而達到勝利的目的。落子模塊接受用戶的觸摸,在棋盤上對應(yīng)的位置顯示出棋子。顯示模塊設(shè)計如圖 35 所示:接收用戶觸摸信息計算棋子位置向控制模塊匯報游戲開始讀取控制模塊計算出的數(shù)據(jù)顯示游戲界面顯示棋子刷新棋盤圖 35: 顯 示 模 塊 設(shè) 計運行游戲用戶直接進入主界面,初始化模塊運行,用戶將看到主界面上的棋盤與選擇游戲模式的提示窗口。玩家與電腦落子模塊中的處理分析部分是把用戶點擊界面的事件接收后進行處理分析??刂颇K如圖 34 所示:第 3 章 系統(tǒng)設(shè)計主控制模塊勝負判斷模塊落子模塊控制模塊圖 34: 控 制 模 塊 設(shè) 計主控制模塊被用來轉(zhuǎn)換下棋的順序,當下棋順序到了某一方的時候,把整個數(shù)據(jù)和流程轉(zhuǎn)到響對應(yīng)的模塊里。棋子就應(yīng)該利用方法與設(shè)置好的點對應(yīng),通過對點的屬性修改載入相應(yīng)的棋子模型,棋子模型就建立好了。所以就必須設(shè)置棋盤上每個點的大小,從而計算出游戲界面上的橫豎坐標。所以,該游戲模型的重點就在于棋盤和棋子。系統(tǒng)的總體設(shè)計模型如圖 31 所示:初始化模塊主控制模塊人工智能模塊 落子模塊勝負判斷模塊圖 31 : 總 體 設(shè) 計 模 型該游戲又分為以下幾個模塊:初始化模塊、主控制模塊、人工智能模塊、落子模塊 、勝負判斷模塊。第 3 章 系統(tǒng)設(shè)計10第 3 章 系統(tǒng)設(shè)計 總體設(shè)計該設(shè)計是 Android 平臺下的五子棋游戲。然后再依次取出繼續(xù)這個過程。很容易想到這要用到堆棧 結(jié)構(gòu),使用一個遞歸來實現(xiàn)。 深度優(yōu)先搜索
點擊復(fù)制文檔內(nèi)容
職業(yè)教育相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1