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

正文內(nèi)容

畢業(yè)論文--基于java的手機(jī)游戲中國象棋的設(shè)計與實現(xiàn)(參考版)

2025-01-19 20:54本頁面
  

【正文】 } if((fromXtoX) != 2 || (fromYtoY。 } break。 case 5://黑士 if(toY2||toX3||toX5){//出了九宮格 return false。 } if(((fromYtoY)+(toXfromX))1){// 只能走一步 return false。//得帶終點棋子 if(isSameSide(moveChessID,targetID)){//如果是同一陣營的 return false。 } moveChessID = qizi[fromY][fromX]。amp。 } if(toY9){//當(dāng)下邊出界時 return false。 } if(toX8){//當(dāng)右邊出界時 return false。//起始位置是什么棋子 int targetID。 int j = 0。//打印異常信息 } } } } public class GuiZe { boolean isRedGo = false。//紅方時間自加 } try{ (1000)。 } Override public void run(){//重寫的 run方法 while(flag){//循環(huán) if( == false){//當(dāng)前為黑方走棋、思考 ++。 public TimeThread(Game gameView){//構(gòu)造器 = gameView。 } } public class TimeThread extends Thread{ private boolean flag = true。//棋子的目標(biāo)點 x 坐標(biāo) = toY。//棋子的起始坐標(biāo) = fromY。//值 ,估值時會用到 public Move(int ChessID, int fromX,int fromY,int toX,int toY,int score){//構(gòu)造器 = ChessID。//目的地的坐標(biāo) int toY。//起始的坐標(biāo) int fromY。//打印異常堆棧信息 } } } } } public class Move { int ChessID。 } } try{ (span)。 synchronized () { (c)。//畫布 while () {//循環(huán)繪制 c = null。//得到 GameView的引用 } public void setFlag(boolean flag) {//設(shè)置循環(huán)標(biāo)記 = flag。//循環(huán)標(biāo)志位 public TutorialThread(SurfaceHolder surfaceHolder, Game gameView) {//構(gòu)造器 = surfaceHolder。//SurfaceHolder 的引用 private Game gameView。//設(shè)置循環(huán)標(biāo)志位為 false } catch (InterruptedException e) {//不斷地循環(huán),直到等待的線程結(jié)束 } } } class TutorialThread extends Thread{//刷 幀線程 private int span = 300。 ()。//停止刷幀線程 (false)。//啟動思考時間的線程 } public void surfaceDestroyed(SurfaceHolder holder) {//view 被釋放時調(diào)用的 boolean retry = true。//啟動刷幀線程 (true)。//切換到勝利狀態(tài) } public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) { } public void surfaceCreated(SurfaceHolder holder) {//重寫的 (true)。 } return pos。//取得所在的列 } else{//點擊的位置不是棋盤時 pos[0] = 1。 y10+()){//點擊的是棋盤時 pos[0] = ((float)((y21)/36))。 x10+() amp。 y10 amp。//得到點擊位置的 y坐標(biāo) if(x10 amp。 double x = ()。//恢復(fù)玩家響應(yīng) } } }//end 之前選中過棋子 } }//end點擊的位置在棋盤內(nèi)時 }//end 游戲中時 } return (event)。//移動棋子 qizi[][] = 0。//切換游戲狀態(tài)為失敗 } if(){//需要播放聲音時 ()。//標(biāo)志位設(shè) false Move cm = (qizi)。 endJ = 1。 startJ = 1。//移動棋子 qizi[startI][startJ] = 0。//不讓玩家走了 if(){ ()。 boolean canMove = (qizi, startI, startJ, endI, endJ)。//恢復(fù)玩家響應(yīng) } } } }//end點擊的位置有棋子 else{//如果點擊的位置沒有棋子 endI = i。//移動棋子 qizi[][] = 0。//根據(jù)當(dāng)前局勢查詢一個最好的走法 if(){ ()。//還原保存點 focus = false。 endI = 1。//將原來處設(shè) 空 startI = 1。//播放下棋聲音 } qizi[endI][endJ] = qizi[startI][startJ]。//不讓玩家走了 if(qizi[endI][endJ] == 1 || qizi[endI][endJ] == 8){//如果是 “ 帥 ” 或 “ 將 ” ()。//保存該點 boolean canMove = (qizi, startI, startJ, endI, endJ)。 } else{//如果是對方的棋子 endI = i。//將該棋子設(shè)為選中的棋子 startI = i。 startJ = j。//將該棋子設(shè)為選中的棋子 focus = true。 if(focus == false){//之前沒有選中的棋子 if(qizi[i][j] != 0){//點擊的位置有棋子 if(qizi[i][j] 7){//點擊的是自己的棋子。//根據(jù)坐標(biāo)換算成所在的行和列 i = pos[0]。 ()360){//點擊的位置在棋盤內(nèi)時 if(caiPan == true){//如果是該玩家走棋 int i = 1, j = 1。 ()10 amp。()310 amp。//發(fā)送消息,切換到 MenuView } } /** * 游戲過程中的邏輯處理 * 當(dāng)點擊棋盤時,先判斷當(dāng)前是否為玩家走棋, * 然后再判斷當(dāng)然玩家是否已經(jīng)有選中的棋子 ,如果沒有則選中 * 如果之前有選中的棋子,再判斷點擊的位置是空地、對方棋子還是自己的棋子 * 是空地判斷是否可走 * 是對方棋子同樣判斷是否可以走,能走自然吃子 * 是自己的棋子則選中該棋子 */ else if(status == 0){//游戲中 時 if(()10amp。amp。amp。amp。 ()269){//點擊了確定按鈕 (1)。 ()249 amp。()190 amp。//發(fā)送消息,切換到 MenuView } if(status == 1){//勝利后 if(()135amp。amp。amp。amp。//播放音樂 } } } else{ if( != null){//gamesound 不為空時 if(()){//當(dāng)前有音樂時 ()。 ()440+()){//按下了 聲音按鈕 = !。 ()440 amp。()10+() amp。 } } /** * 該方法是游戲主要邏輯接口 * 接受玩家輸入 * 根據(jù)點擊的位置和當(dāng)前的游戲狀態(tài)做出相應(yīng)的處理 * 而當(dāng)需要切換 View時,通過給 Activity 發(fā)送 Handler消息來處理 * 注意的是只取屏幕被按下的事件 */ Override public boolean onTouchEvent(MotionEvent event) {//重寫的屏幕監(jiān)聽 if(() == ){//只取鼠標(biāo)按下的事件 if(()10amp。 } if(status == 2){//失敗后 (lost, 85, 150, paint)。//繪制退出按鈕 if(status == 1){//當(dāng)勝利時 (win, 85, 150, paint)。//繪制聲音 if(){//如果正在播放聲音 (sound3, 80, 452, paint)。//繪制向左的指針 } (current, 138, 445, paint)。//繪制時間數(shù)字 } if(caiPan == true){//當(dāng)該玩家走棋時 ,即紅方走棋 (right, 155, 420, paint)。039。i2。//轉(zhuǎn)換成字符串 if(()2){//不足兩位時前面用 0補(bǔ) timeStr2 = 0 + timeStr2。//繪制 } //畫分鐘 temp2 = %60。039。i2。//轉(zhuǎn)換成字符串 if(()2){//當(dāng)不足兩位時前面填 0 timeStr2 = 0 + timeStr2。//紅方的冒號 int temp2 = 。 (number[tempScore], 85+i*7, 412, paint)。i++){//循環(huán) int tempScore=(i)39。//當(dāng)長度小于 2時在前面添加一個 0 } for(int i=0。 timeStr = temp+。 (number[tempScore], 65+i*7, 412, paint)。i++){//循環(huán)繪制時間 int tempScore=(i)39。 } for(int i=0。//換算時間 String timeStr = temp+。//繪制 VS背景圖 //繪制黑方的時間 (time, 81, 411, paint)。 } else if(qizi[i][j] == 14){//為紅卒時 (hongZi[6], 12+j*34, 13+
點擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1