當前位置:首頁 » 操作系統 » 手機鬥地主源碼

手機鬥地主源碼

發布時間: 2022-06-24 11:03:48

1. 求鬥地主源代碼

給你發過去了

2. 誰有鬥地主源碼(C++/VC++)

http://www.1knx.cn/webbox_web_izvccc.html

3. 求java單機鬥地主完整源碼

一共實現了如下功能
1. 搶地主功能,玩家可以選擇自己當地主,還是留給電腦搶地主
2.牌型判斷,判斷 單牌,對子,3對,順子,飛機,等等可能情況 為後面出牌跟牌做准備
3. 實現輪流出牌邏輯,並簡單測試
4. 實現倒計時功能,如果玩家30秒為出牌自動超時,歸為下一家出牌,電腦默認操作時間2秒

public void run() { while(i>-1 && isRun){ main.time[1].setText("倒計時:"+i--); second(1);//等一秒 } if(i==-1)//正常終結,說明超時 main.time[1].setText("不搶"); //如果自己搶到地主 if(main.time[1].getText().equals("搶地主")){ //得到地主牌 main.playerList[1].addAll(main.lordList); openlord(true); second(2);//等待五秒 Common.order(main.playerList[1]); Common.rePosition(main, main.playerList[1], 1); setlord(1); }else{ //電腦選地主 if(Common.getScore(main.playerList[0])

上面是實現邏輯的一個線程
Time.java文件裡面

下面給出拆牌的邏輯

下面是一個枚舉,命名不是很規范,但是容易懂,形象化的特徵10多種牌型

package com; public enum CardType { c1,//單牌 c2,//對子 c3,//3不帶 c4,//炸彈 c31,//3帶1 c32,//3帶2 c411,//4帶2個單,或者一對 c422,//4帶2對 c123,//連子 c1122,//連隊 c111222,//飛機 c11122234,//飛機帶單排 c1112223344,//飛機帶對子 c0//不能出牌 }

下面是具體判斷方法
//判斷牌型 public static CardType jugdeType(List list){ //因為之前排序過所以比較好判斷 int len=list.size(); //單牌,對子,3不帶,4個一樣炸彈 if(len<=4) { //如果第一個和最後個相同,說明全部相同 if(Common.getValue(list.get(0))==Common.getValue(list.get(len-1))) { switch (len) { case 1: return CardType.c1; case 2: return CardType.c2; case 3: return CardType.c3; case 4: return CardType.c4; } } //雙王,化為對子返回 if(len==2&&Common.getColor(list.get(1))==5) return CardType.c2; //當第一個和最後個不同時,3帶1 if(len==4 &&Common.getValue(list.get(0))==Common.getValue(list.get(len-2))) return CardType.c31; else { return CardType.c0; } } //當5張以上時,連字,3帶2,飛機,2順,4帶2等等 if(len>=5) {//現在按相同數字最大出現次數 Card_index card_index=new Card_index(); for(int i=0;i<4;i++) card_index.a[i]=new ArrayList(); //求出各種數字出現頻率 Common.getMax( card_index,list); //a[0,1,2,3]分別表示重復1,2,3,4次的牌 //3帶2 -----必含重復3次的牌 if(card_index.a[2].size()==1 &&card_index.a[1].size()==1 && len==5) return CardType.c32; //4帶2(單,雙) if(card_index.a[3].size()==1 && len==6) return CardType.c411; if(card_index.a[3].size()==1 && card_index.a[1].size()==2 &&len==8) return CardType.c422; //單連,保證不存在王 if((Common.getColor(list.get(0))!=5)&&(card_index.a[0].size()==len) && (Common.getValue(list.get(0))-Common.getValue(list.get(len-1))==len-1)) return CardType.c123; //連隊 if(card_index.a[1].size()==len/2 && len%2==0 && len/2>=3 &&(Common.getValue(list.get(0))-Common.getValue(list.get(len-1))==(len/2-1))) return CardType.c1122; //飛機 if(card_index.a[2].size()==len/3 && (len%3==0) && (Common.getValue(list.get(0))-Common.getValue(list.get(len-1))==(len/3-1))) return CardType.c111222; //飛機帶n單,n/2對 if(card_index.a[2].size()==len/4 && ((Integer)(card_index.a[2].get(len/4-1))-(Integer)(card_index.a[2].get(0))==len/4-1)) return CardType.c11122234; //飛機帶n雙 if(card_index.a[2].size()==len/5 && card_index.a[2].size()==len/5 && ((Integer)(card_index.a[2].get(len/5-1))-(Integer)(card_index.a[2].get(0))==len/5-1)) return CardType.c1112223344; } return CardType.c0; }

下面是上面函數用到的一個函數
//返回花色 public static int getColor(Card card){ return Integer.parseInt(card.name.substring(0,1)); } //返回值 public static int getValue(Card card){ int i= Integer.parseInt(card.name.substring(2,card.name.length())); if(card.name.substring(2,card.name.length()).equals("2")) i+=13; if(card.name.substring(2,card.name.length()).equals("1")) i+=13; return i; } //得到最大相同數 public static void getMax(Card_index card_index,List list){ int count[]=new int[14];//1-13各算一種,王算第14種 for(int i=0;i<14;i++) count[i]=0; for(int i=0,len=list.size();i<14;i++) { switch (count[i]) { case 1: card_index.a[0].add(i+1); break; case 2: card_index.a[1].add(i+1); break; case 3: card_index.a[2].add(i+1); break; case 4: card_index.a[3].add(i+1); break; } } } } class Card_index{ List a[]=new ArrayList[4];//單張 }

4. html5手機鬥地主游戲源碼 送嗎網

單機版的嗎?(林心源碼)這個網站裡面好像有

5. iOS的,鬥地主和麻將的游戲源碼,哪裡能有啊,想學習一下~

必勝怎麼可能?一般要看你做哪門了啊?比方地主的,要給你上家壓力,給他主動出牌的自由,別人要出你就要壓,保證不讓別人逃牌,讓主動保持在自己手裡.還有上家是攔地主的一般出錯把地主的副牌放掉就可以結束了啊.不算必勝,只是一個宗旨.
竅門道也是有,當你有大牌接手不妨打一對,或單張,如果沒人要(有彈不用,三個不拆,連對...),接著打,直至自己的副牌逃走,就可以採取攻勢了.

熱點內容
光碟機拒絕訪問 發布:2022-07-02 13:42:29 瀏覽:726
13款君越頂配都有什麼配置 發布:2022-07-02 13:36:27 瀏覽:353
編譯時間更新 發布:2022-07-02 13:35:16 瀏覽:671
pdf去加密 發布:2022-07-02 13:35:13 瀏覽:199
javascript編程藝術 發布:2022-07-02 13:33:03 瀏覽:345
怎麼給u盤取消加密 發布:2022-07-02 13:32:34 瀏覽:696
java計算兩個日期之間的天數 發布:2022-07-02 13:31:19 瀏覽:808
軟體伺服器怎麼改地址 發布:2022-07-02 13:31:09 瀏覽:531
ziplinux解壓 發布:2022-07-02 13:25:00 瀏覽:856
怎麼裝編譯軟體 發布:2022-07-02 13:23:23 瀏覽:697