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

正文內(nèi)容

畢業(yè)論文-基于android的五子棋游戲設(shè)計(jì)與實(shí)現(xiàn)-文庫(kù)吧

2025-05-14 21:09 本頁(yè)面


【正文】 有的市場(chǎng)空間 是巨大的 , 也因 隨 著 3g 的開通和應(yīng)用,手機(jī)游戲必 然會(huì) 迎來(lái)新的一輪游戲熱潮! 課題來(lái)源 現(xiàn)在的 移動(dòng)電話是小型的計(jì)算機(jī),它的處理能力與臺(tái)式機(jī)的標(biāo)準(zhǔn)處理能力相比很有限,但是足夠運(yùn)行一個(gè)小型的游戲。現(xiàn)在的手機(jī)的一個(gè)特性就是它們還是網(wǎng)絡(luò)計(jì)算機(jī),能夠高速發(fā)送和接收數(shù)字?jǐn)?shù)據(jù)。除了語(yǔ)音數(shù)據(jù)以外,它們還可以發(fā)送和接收其它類型的數(shù)據(jù)。所以這樣的網(wǎng)絡(luò)游戲也可以在手機(jī)上實(shí)現(xiàn)。短信類游戲就好像 “ 虛擬寵物 ” 那樣。短信游戲是通過(guò)玩家和游戲服務(wù)商通過(guò)短信中的文字的內(nèi)容來(lái)交流,達(dá)到進(jìn)行游戲的目的的一種文字游戲。 由于短信游戲的整個(gè)游戲過(guò)程都是通過(guò)文 字來(lái)表達(dá),造成短信游戲的娛樂(lè)性較差。但是短信游戲卻是兼容性最好的手機(jī)游戲之一。只要您的手機(jī)可以發(fā)短信,您就可以暢快的享受短信游戲給您帶來(lái)的快樂(lè)了。圖形類游戲更接近我們常說(shuō)的 “電視游戲” ,玩家通過(guò)動(dòng)畫的形式來(lái)發(fā)展情節(jié)進(jìn)行游戲。由于游戲采用了更為直觀且更為精美的畫面直接表現(xiàn),因此圖形類游戲的游戲性和代入感往往較文字類游戲高。因此廣受玩家們的歡迎。嵌入式游戲是一種將游戲程序預(yù)先固化在手機(jī)的芯片中的游戲。由于這種游戲的所有數(shù)據(jù)都是預(yù)先固化在手機(jī)芯片中的,因此這種游戲 是 無(wú)法進(jìn)行任何修改 的 。也就是說(shuō),您不能更換其它游戲 的 ,只能玩您手機(jī)中已經(jīng)存在的 娛樂(lè) 游戲, 而 且您也不能將它們刪除。手機(jī)在 網(wǎng)絡(luò)游戲行業(yè)在多年的技術(shù)經(jīng)驗(yàn)與運(yùn)營(yíng)經(jīng)驗(yàn)的積累與總結(jié) 之 后, 到了 2021 年迫不及待的需要?jiǎng)?chuàng)新出新的游戲模式 和嶄 新的運(yùn)營(yíng)模式來(lái)推動(dòng) 手機(jī)游戲 市場(chǎng)的爆發(fā) 和發(fā)展。 其中 比較吸引人 們 的是手機(jī) 的 休閑類的游戲。 應(yīng)該 可以說(shuō)它 是 與 PC 網(wǎng)絡(luò)游戲完全 的 脫離開 了 ,而 且充分發(fā)揮 了 自身的優(yōu)勢(shì) 手機(jī)終端 。休閑類 的 游戲恰巧與之相反,只需 要 很少 的 網(wǎng)絡(luò)流量的網(wǎng)絡(luò)環(huán)境,通過(guò)少量多次的游戲形式帶給玩家流暢的游戲體驗(yàn)滿足玩家瞬間提升的快感, 但是 同時(shí)卻很難具有長(zhǎng)期的 “ 沉迷 ” 性 。 本題目是基于 Android 平臺(tái)開發(fā)的一個(gè)小型的程序。其實(shí)都差不多,在有 JAVA 的智能手機(jī)上都可以運(yùn)行。其實(shí)手機(jī)是我們生活中不可缺少的工具,這些小游戲可以帶給我們快樂(lè)和放松我們的心情。無(wú)論什么樣手機(jī),我想買起來(lái)的時(shí)候上面就有一些它自帶的各種 4 小游戲,其中有一個(gè)獨(dú)特的小游戲也是非常重要的。 課題研究現(xiàn)狀及前景 在我們的生活中有許多的游戲,但是不同的游戲,它也會(huì)給玩家?guī)?lái)不同的感受和生活理念。游戲可以說(shuō)我們?nèi)粘I畹囊粋€(gè)必不可少的娛樂(lè)項(xiàng)目,也帶動(dòng)了游戲相關(guān)產(chǎn)業(yè)市場(chǎng)的發(fā)展即游戲周邊。游戲平臺(tái)是經(jīng)過(guò)從游戲機(jī)到電視游戲,然 后從到 pc 游戲,到手機(jī)游戲,中間經(jīng)歷了很多的技術(shù)的更新和變革。但隨著新技術(shù)的發(fā)展和我們生活水平質(zhì)量的提高,手機(jī)開始逐漸變?yōu)槠占?,因?yàn)槭謾C(jī)是非常小巧便捷的,而且方便的特性成為我們?nèi)粘I钪斜貍渫ㄓ嵐ぞ?。而基于手機(jī)平臺(tái)的游戲也就擁有的市場(chǎng)空間是巨大的,隨著 3G的開通和應(yīng)用,手機(jī)游戲必然會(huì)迎來(lái)新的一輪游戲熱潮 現(xiàn)在的手機(jī)的 已經(jīng)不是以往那種傳統(tǒng)意義上的手機(jī)了,稱之為智能機(jī)再合適不過(guò)了 ,它不僅具備打電話發(fā)短信等傳統(tǒng)功能而且對(duì)于計(jì)算機(jī)可以完成的大部分工作也可以完全勝任。智能手機(jī)能 夠高速發(fā)送和接收數(shù)字?jǐn)?shù)據(jù) , 除了語(yǔ)音數(shù)據(jù)以 外,它們還可以發(fā)送和接收其它類型的數(shù)據(jù) ,如是圖像等 。所以網(wǎng)絡(luò)游戲也 是完全 可以在手機(jī)上實(shí)現(xiàn) 的 。其中 比 較吸引人 們 的是手機(jī) 上 休閑類的游戲。 應(yīng)該 可以說(shuō)它 是 與 PC 網(wǎng)絡(luò)游戲完全 的 脫離開 了 , 而且充分發(fā)揮 了 自身的優(yōu)勢(shì)。休閑類 的 游戲只需 要 很少 的 網(wǎng)絡(luò)流量的網(wǎng)絡(luò)環(huán)境,通過(guò)少量多次的游戲形式帶給玩家流暢的游戲體驗(yàn)滿足玩家瞬間提升的快感, 但是 同時(shí)卻很難具有長(zhǎng)期的 “ 沉迷 ” 性 ,可以說(shuō)是有百利而無(wú)一害。本次設(shè)計(jì)是基于 Android 平臺(tái)開發(fā)的一個(gè)小型的五子棋游戲程序。五子棋游戲的簡(jiǎn)單易學(xué),老少皆宜這些特性與智能手機(jī)的移動(dòng)方便,大范圍普及等特 點(diǎn)結(jié)合起來(lái),必定會(huì)大放光芒,廣受歡迎的。 也真是由于上文所述的各種優(yōu)勢(shì),導(dǎo)致手機(jī)五子棋游戲被越來(lái)越多的人研究學(xué)習(xí),可以說(shuō)程序雖小但五味俱全,作為入門學(xué)習(xí)是再合適不過(guò)的了。網(wǎng)絡(luò)上流傳的五子棋游戲界面精美,風(fēng)格各異,實(shí)在是已經(jīng)達(dá)到巔峰之作,作者在此并不想去做那錦上添花之舉,所以對(duì)于本次設(shè)計(jì)論文有一個(gè)明確的定位,在完成五子棋游戲的基本對(duì)戰(zhàn)功能的設(shè)計(jì)同時(shí)不再做各種附加功能的加強(qiáng)而是對(duì)其中所涉及的算法進(jìn)行更加深入的學(xué)習(xí)。 3 Android 開發(fā)環(huán)境 本章將主要介紹如何構(gòu)建 Android 開發(fā)環(huán)境,包括獲取 Android SDK、 Eclipse 以及進(jìn)行 Android Eclipse 插件設(shè)置等。 Android 開發(fā)環(huán)境變量配置 JDK 的配置 JDK 的配置并沒(méi)有什么值得特別敘述的東西,在此主要闡述下 JDK 環(huán)境變量的配置問(wèn)題。首先 右 鍵點(diǎn)擊 我的電腦 屬性 高級(jí) 系統(tǒng)設(shè)置 ,點(diǎn)擊下面的環(huán)境變量,在下面的“ 系統(tǒng)變量 ” 處選擇新建 , 在變量名處輸入 JAVA_HOME 在 變量值 輸入 JDK路徑, 確定后再新建一個(gè)變 量名為 Classpath, 變量值為 %JAVA_HOME%/lib/。%JAVA_HOME%/lib/ 的變量 , 確定后找到 PATH 的變量,雙擊或點(diǎn)擊編輯,在變量值最前面加上 %JAVA_HOME%/bin。 最后點(diǎn)擊確定按鈕即可 ]4[ 。如圖 31所示。 5 圖 31 JDK 環(huán)境變量設(shè)置 Android 開發(fā)插件的安裝 打開 Eclipse, 在菜單欄上選擇 helpInstall New SoftWare 在彈出的界面上選擇 add,將彈出如下界面,如圖 32 所示。 圖 32 ADT 的安裝 在圖 32 中 Name 處鍵 入 Android (名字可自定義),在 Location 出鍵入 ok,在后續(xù)的彈出界面中選擇 next 后進(jìn)行安裝。 安裝 android 開發(fā)插件后,重啟 eclipse。點(diǎn)擊菜單 windowpreferences,將進(jìn)入一個(gè)更新界面。選擇你的 android SDK 解壓后的目錄,選錯(cuò)了就會(huì)報(bào)錯(cuò),這個(gè)是升級(jí) 工具,可以進(jìn)行手動(dòng)選擇。升級(jí) SDK 版本 ,選擇菜單 windowAndroid sdk and avd manager,如圖33 所示。 6 圖 33 SDK 的配置 AVD 的創(chuàng)建 新建 AVD(android virtual device)和配置 SDK 差不多,進(jìn)入 android sdk and avd manager,選中 Vi rtual Devices 點(diǎn)擊 New 按鈕,如圖 34 所示。 圖 34 AVD 的創(chuàng)建 4 游戲相關(guān)技術(shù) 本章節(jié)主要介紹一下此論文中用到了的 Android 的布局文件,可視 化控件以及它們的具體實(shí)現(xiàn)。 游戲布局 畫盤線 以手工畫圖方式講明白棋盤的座標(biāo)計(jì)算方法: 1 取得屏幕寬高; 2 計(jì)算出第一根線 7 與左邊和上邊的距離; 3 推算其他線條計(jì)算方法。使用程序?qū)崿F(xiàn)以上計(jì)算方法,創(chuàng)建出15 根橫線與豎線,存進(jìn)集合中。 for (int i = 0。 i = maxX。 i++) {//豎線 (new Line(xOffset+i*POINT_SIZE, yOffset, xOffset+i*POINT_SIZE, yOffset+maxY*POINT_SIZE))。 } for (int i = 0。 i = maxY。 i++) {//橫線 (new Line(xOffset, yOffset+i*POINT_SIZE, (maxX+1)*POINT_SIZE, yOffset+i*POINT_SIZE))。 } //在 ondraw 方法畫出所有棋盤線 for (Line line : lines) { (, , , , paint)。 } 雙緩沖技術(shù)畫棋子 復(fù)制棋子對(duì)應(yīng)的圖片(四張)到工程中 ,使用這四張圖片生成四個(gè) Bitmap:1 從context 中取得圖片的代碼 Resources resources = ().getResources()。 Drawable drawable = () 2 將圖片畫到 Bitmap(內(nèi)存緩沖區(qū))的過(guò)程 //為指定顏色對(duì)應(yīng)的圖片創(chuàng)建 bitmap 對(duì)象并放入到數(shù)組中 public void fillPointArrays(int color,Drawable drawable) { //創(chuàng)建 Bitmap 內(nèi)存緩沖區(qū)(申請(qǐng)內(nèi)存空間) Bitmap bitmap = (POINT_SIZE, POINT_SIZE, )。 //創(chuàng)建畫布、并設(shè)置將內(nèi)容畫到上面創(chuàng)建的 Bitmap 上 Canvas canvas = new Canvas(bitmap)。 //設(shè)置資源畫的范圍大小 (0, 0, POINT_SIZE, POINT_SIZE)。 //將圖像資源畫到緩沖區(qū)中 (canvas)。 //把緩存區(qū)引用存進(jìn)數(shù)組中(注意將下標(biāo)定義以顏 色命名的常量) bitmaps[color] = bitmap。 } 8 在 onDraw 方法將其在隨意位置畫出 (bitmaps[color_index],0,0,paint)。 在觸摸處畫棋子 通過(guò) onTouchEvent 方法獲得觸摸位置座標(biāo) ,以此座標(biāo)創(chuàng)建一個(gè)棋子,觸發(fā) onDraw 方法,把剛才的棋子畫出來(lái) public boolean onTouchEvent(MotionEvent event) { Point point = newPoint((), ())。 //刷新一下棋盤,觸發(fā) onDraw 函數(shù) refressCanvas()。 } newPoint 方法將此座標(biāo)調(diào)整到對(duì)應(yīng)的棋位上(以手工畫圖的方式確定棋子四周的范圍的計(jì)算方 ) private Point newPoint(Float x, Float y){ //是否在棋盤線以外 boolean isOutsideChessboard = true。 Point p = new Point(0, 0)。 for (int i = 0。 i = maxX。 i++) { if (((i1) * POINT_SIZE + xOffset + POINT_SIZE/2) = x amp。amp。 x (i * POINT_SIZE + xOffset + POINT_SIZE/2)) { (i)。 //找到橫座標(biāo),證明不在棋盤線以外 isOutsideChessboard = false。 break。 } } //如果橫坐標(biāo)在棋盤線外,返回空,不下棋子 if(isOutsideChessboard){ return null。 } //重置標(biāo)志 isOutsideChessboard = true。 for (int i = 0。 i = maxY。 i++) { if (((i1) * POINT_SIZE + yOffset + POINT_SIZE/2) = y amp。amp。 y (i * POINT_SIZE + yOffset + POINT_SIZE/2)) { (i)。 9 //找到縱座標(biāo),也不在棋盤線外 isOutsideChessboard = false。 break。 } } //縱標(biāo)在棋盤線外 if(isOutsideChessboard){ return null。 } //橫座標(biāo)和縱座標(biāo)都不在棋盤線外 return p。 } 人人對(duì)戰(zhàn) 設(shè)置標(biāo)記 whoRun 表示應(yīng)該輪到誰(shuí)下棋, 1為玩家 1下, 2 為玩家 2 下, 1表示玩家正在下 //默認(rèn)第一個(gè)玩家先行 private int whoRun = 1。 private void setPlayer1Run(){ whoRun = 1。 } //是否輪到人類玩家下子 private boolean isPlayer1Run(){ return whoRun==1。 } //是否輪到人類玩家下子
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1