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

正文內(nèi)容

pvp五子棋游戲的設(shè)計(jì)與開(kāi)發(fā)畢業(yè)設(shè)計(jì)word格式-資料下載頁(yè)

2024-11-29 06:10本頁(yè)面

【導(dǎo)讀】研究簡(jiǎn)單的人工智能,決定用Java開(kāi)發(fā)五子棋游戲。主要完成了人機(jī)對(duì)戰(zhàn)和玩家之間聯(lián)。網(wǎng)對(duì)戰(zhàn)2個(gè)功能。網(wǎng)絡(luò)連接部分為Socket編程應(yīng)用,客戶(hù)端和服務(wù)器端的交互用Class. 服務(wù)器維護(hù)在線用戶(hù)的基本信息和任意兩個(gè)對(duì)戰(zhàn)用戶(hù)的棋盤(pán)信息,動(dòng)態(tài)維護(hù)用戶(hù)列。在人機(jī)對(duì)弈中通過(guò)深度搜索和估值模塊,來(lái)提高電腦棋手的智能。比較,在這些算法的基礎(chǔ)上分析一些提高電腦AI方案,如遞歸算法、電腦學(xué)習(xí)等。

  

【正文】 請(qǐng)求 getdisconnect(msg)。 break。 } case 8:{//保存游戲 break。 } 南京機(jī)電職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)(論文) 24 case 12:{//信息設(shè)置 boolean flag=true。 setting(msg,flag)。 break。 } case 13:{ boolean flag=false。 setting(msg,flag)。 break。 } case 19:{ playerRefresh(msg)。 break。 } case 20:{ try{ (msg)。 }catch(IOException e){ ()。 } break。 } default:{ } } return 0。 // 完畢 } /** * 判斷游戲,更新所有的客戶(hù)端面板 * type = 7 發(fā)起者將要關(guān)閉游戲 */ public void getdisconnect(Message msg) { Group gg = null。 Player pp = null。 String str=null。 //如果發(fā)起連接的人在一個(gè)組 for(int i=0。i()。i++) { gg = (Group)(i)。 if(()==true) { =6。 // win try{ 南京機(jī)電職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)(論文) 25 (msg)。 } catch(IOException e) { ()。 } sendLeftMsg()。 //更新列表 (gg)。 return。 } if(()==true) { =6。 try{ (msg)。 }catch(IOException e) { ()。 } sendLeftMsg()。 (gg)。 return。 } } // 發(fā)起斷開(kāi)連接請(qǐng)求的玩家是否在列表里 for(int i=0。i()。i++) { pp = (Player)(i)。 if(()==true) { break。 } } sendLeftMsg()。 (pp)。 // 移去斷開(kāi)者 updateClient()。 } private void sendLeftMsg(String str) { char cc。 for(int i=0。i50。i++) { cc=(i)。 南京機(jī)電職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)(論文) 26 if(cc!=39。\039。) (cc)。 else break。 } ( has left server ...\n)。 } /** * 拒絕玩家請(qǐng)求 * type ==4 msg == 拒絕者的名字 */ public void denyRequest(Message msg) { String denyName=null。 Player pp=null。 for(int i=0。i()。i++) { pp = (Player)(i)。 if(()==true) { denyName = new String()。 break。 } } for(int i=0。i()。i++) { pp = (Player)(i)。 if(arrayMatchString(,)==true) { Message ms = new Message()。 =4。 strToCharArray(denyName,)。 try{// requestor 39。s socket send msg to it39。s client (ms)。 } catch(IOException er) { ()。 } break。 } } } /** 南京機(jī)電職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)(論文) 27 * B 接受請(qǐng)求, A 服務(wù)端 更新列表 * type ==5 msg == A的名字 */ public void acceptRequest(Message msg) { Player pps=null,ppd=null。//ppd = B pps = A String acceptName=null。 for(int i=0。i()。i++) { ppd = (Player)(i)。 if(()==true) { break。 } } for(int i=0。i()。i++) { pps = (Player)(i)。 if(arrayMatchString(,)==true) { break。 } } Message ss = new Message()。 =14。 // B 玩家設(shè)置顏色 =。 try{ (ss)。 }catch(IOException e) { ()。 } =5。 // B 接受 A的請(qǐng)求 strToCharArray(,)。 try{ (ss)。 }catch(IOException e) { ()。 } //上傳列表并顯示,服務(wù)端顯示數(shù)組列表 Group p1 = new Group()。 =new String()。 = 。 南京機(jī)電職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)(論文) 28 = 。 = new String()。 = 。 if(==1) { = 2。 } else { = 1。 } = 。 (p1)。 ///(++ player ++)。 if(()==2) { =15。 try{ (msg)。 (msg)。 }catch(IOException e){ ()。 } } (pps)。 (ppd)。 //( after create a group,playerlist size = +())。 updateClient()。 } /** * 當(dāng)新組創(chuàng)建或玩家離開(kāi)時(shí)更新 CLIENT 端列表 */ public void updateClient() { Message msg = new Message()。 Player pp = null,ppm = null。 for(int i=0。i()。i++) { pp = (Player)(i)。 =15。 //更新客戶(hù)端玩家列表 try{ //清空列表 南京機(jī)電職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)(論文) 29 // (clear ++39。s list box)。 (msg)。 }catch(IOException e) { ()。 } for(int j=0。j()。j++) { ppm=(Player)(j)。 strToCharArray(,)。 =9。 try{ //(updating ...++ list box about+)。 (msg)。 } catch(IOException e) { ()。 } } } //稍后,同一組玩家的列表將會(huì)更新 } /** * 判斷 arr[] 是否等于 str */ private boolean arrayMatchString(char []arr,String str) { for(int i=0。 i50 amp。amp。 (i)!=39。\039。i++) {
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1