亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? cardserver.java

?? 手機(jī)游戲?qū)?zhàn)平臺(tái)。自己做的一個(gè)東東。 支持多個(gè)手機(jī)聯(lián)網(wǎng)打游戲;采用socket鏈接通信。 平臺(tái):J2ME&JAVA
?? JAVA
字號(hào):
/* * To change this template, choose Tools | Templates * and open the template in the editor. */package control;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.IOException;import java.util.ArrayList;import java.util.List;import java.util.Random;import java.util.logging.Level;import java.util.logging.Logger;import serverInf.GameServer;import serverInf.Sender;import serverInf.Serializable;import serverInf.ServerInterface;/** * * @author XJX */import java.util.Collections;import java.util.Comparator;public class CardServer implements ServerInterface{	private CardMessage cardmsg;	private GameServer gameserver;	private Sender[] senders;	private String[] userList;        boolean isInit=false;        private int[] turns={0,1,2};        private int mainturn=0;        boolean checkPair=false;        ArrayList<Integer>card0 =new ArrayList<Integer>();        ArrayList<Integer>card1 =new ArrayList<Integer>();        ArrayList<Integer>card2 =new ArrayList<Integer>();	public CardServer(int port,String[] userList){		this.userList=userList;		cardmsg=new CardMessage();		gameserver=new GameServer(port, model.PlatformState.MaxPlayers[1], cardmsg,this );	}	public void start(){		gameserver.start();	}                       public void gameStart(){//            if(isInit){//                    cardmsg=new CardMessage();//                    cardmsg.command=-1;//                    sendToAll(cardmsg);//                    return;//                }                if(senders[0]!=null&&senders[1]!=null&&senders[2]!=null){                    isInit=true;                    mainturn=0;                    initCard();                    sendCard();                    try {                        Thread.sleep(1000);                    } catch (InterruptedException ex) {                        Logger.getLogger(CardServer.class.getName()).log(Level.SEVERE, null, ex);                    }                    removeAllPair();                    fixCard();                                        sendCard();                }        }        	public void reveiveMessage(Serializable message) {		cardmsg=(CardMessage)message;                System.out.println(this.getClass().getName());                System.out.flush();                if(cardmsg.command==1&&checkPair==false){                                        removeAllPair();                    sendCard();                }else if(cardmsg.command==0){                   getCard(mainturn,cardmsg.leftNum);                   sendCard();                   try {                        Thread.sleep(1000);                    } catch (InterruptedException ex) {                        Logger.getLogger(CardServer.class.getName()).log(Level.SEVERE, null, ex);                    }                   removeAllPair();                   //checkPair=false;                   mainturn=(mainturn+1)%3;                   sendCard();                }	}	public void sendToAll(CardMessage msg){		for(int i=0;i<senders.length;i++){			if(senders[i]!=null){			senders[i].send(msg);			}		}	}                public void removeAllPair() {            try {            removePair(card0);            removePair(card1);            removePair(card2);            } catch (Exception e) {                System.err.println("removaAllPair: "+e);            }        }        public void removePair(ArrayList<Integer> card){            int i=0;            while (i<card.size()){                int originalSize=card.size();                int a=card.get(i);                if (a==52) {                    i++;                    if (i<card.size())                        a=card.get(i);                    else                        break;                }                int j=i+1;                while (j<card.size()){                    if (card.get(j)==52){                        j++;                    }                                        if (j<card.size() && card.get(j)%13==a%13){                                               card.remove(i);                                               card.remove(j-1);                        break;                    }                    j++;                }                if (card.size()==originalSize) {                    i++;                } else {                    i=0;                }            }                                         }        public void getCard(int turner,int cardIndex){            if(turner==0){                int card=card1.get(cardIndex);                card0.add(card);                card1.remove(cardIndex);            }else if(turner==1){                int card=card2.get(cardIndex);                card1.add(card);                card2.remove(cardIndex);            }else if(turner==2){                int card=card0.get(cardIndex);                card2.add(card);                card0.remove(cardIndex);            }        }       public void sendCard(){            int []Card0=new int[card0.size()];            for(int i=0;i<Card0.length;i++)Card0[i]=card0.get(i);            int []Card1=new int[card1.size()];            for(int i=0;i<Card1.length;i++)Card1[i]=card1.get(i);            int []Card2=new int[card2.size()];            for(int i=0;i<Card2.length;i++)Card2[i]=card2.get(i);            CardMessage msg;            if(mainturn==0){                 msg=new CardMessage("hi",0,1,Card1.length,Card2.length,Card0);                senders[0].send(msg);                 msg=new CardMessage("hi",0,2,Card2.length,Card0.length,Card1);                senders[1].send(msg);                 msg=new CardMessage("hi",0,0,Card0.length,Card1.length,Card2);                senders[2].send(msg);            }else if(mainturn==1){                msg=new CardMessage("",0,0,Card1.length,Card2.length,Card0);                senders[0].send(msg);                 msg=new CardMessage("",0,1,Card2.length,Card0.length,Card1);                senders[1].send(msg);                 msg=new CardMessage("",0,2,Card0.length,Card1.length,Card2);                senders[2].send(msg);            }else if(mainturn==2){                msg=new CardMessage("",0,2,Card1.length,Card2.length,Card0);                senders[0].send(msg);                 msg=new CardMessage("",0,0,Card2.length,Card0.length,Card1);                senders[1].send(msg);                 msg=new CardMessage("",0,1,Card0.length,Card1.length,Card2);                senders[2].send(msg);            }        }       public void initCard(){          int []cards=new int[53];          for(int i=0;i<cards.length;i++){              cards[i]=i;          }          Random rand=new Random();          for(int i=0;i<500;i++){          int a=rand.nextInt(53);          int b=rand.nextInt(53);          int tmp=cards[a];          cards[a]=cards[b];          cards[b]=tmp;          }          for(int i=0;i<cards.length;i++){              switch(i%3){                  case 0:                      card0.add(cards[i]);                      break;                  case 1:                      card1.add(cards[i]);                      break;                  case 2:                      card2.add(cards[i]);                      break;              }          }          /*          Comparator comp = new Mycomparator();          Collections.sort(card0,comp);           Collections.sort(card1,comp);          Collections.sort(card2,comp);           * */        }               public void getSenders(Sender[] senders) {		this.senders=senders;                	}    private void fixCard() {        int point = 0;        if (card0.size() == 0) {            point++;        }        if (card1.size() == 0) {            point++;        }        if (card2.size() == 0) {            point++;        }        while (point > 0) {            initCard();            sendCard();            try {                Thread.sleep(500);            } catch (InterruptedException ex) {                Logger.getLogger(CardServer.class.getName()).log(Level.SEVERE, null, ex);            }            removeAllPair();            point = 0;            if (card0.size() == 0) {                point++;            }            if (card1.size() == 0) {                point++;            }            if (card2.size() == 0) {                point++;            }        }    }    public void illegalExit(String userAccount) {        throw new UnsupportedOperationException("Not supported yet.");    }}class CardMessage implements Serializable {    public String user = "";    public int command;    public int turn = -1;    public int leftNum;    public int rightNum;    public int[] handCard = null;    public CardMessage() {    }    public CardMessage(String user, int command, int turn, int leftNum, int rightNum, int[] handCard) {        this.user = user;        this.command = command;//-1 someone leave;0 get card;1 remove card        this.turn = turn;        this.leftNum = leftNum;        this.rightNum = rightNum;        this.handCard = handCard;    }    public void deserialize(DataInputStream is) throws IOException {        user = is.readUTF();        command = is.readInt();        turn = is.readInt();        this.leftNum = is.readInt();        this.rightNum = is.readInt();        int len = is.readInt();        handCard = new int[len];        if (len != 0) {            for (int i = 0; i < len; i++) {                handCard[i] = is.readInt();            }        }    }    public void serialize(DataOutputStream os) throws IOException {        os.writeUTF(user);        os.writeInt(command);        os.writeInt(turn);        os.writeInt(leftNum);        os.writeInt(rightNum);        if (handCard != null) {            os.writeInt(handCard.length);            for (int i = 0; i < handCard.length; i++) {                os.writeInt(handCard[i]);            }        } else {            os.writeInt(0);        }    }        public String toString(){        return user+" "+command+" "+turn+" "+leftNum+" "+rightNum;    }}class Mycomparator implements Comparator {    public int compare(Object o1, Object o2) {        Integer p1 = (Integer) o1;        Integer p2 = (Integer) o2;        if (p1 < p2) {            return 0;        } else {            return 1;        }    }}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人深夜视频在线观看| gogogo免费视频观看亚洲一| 国产欧美精品一区二区色综合| 91亚洲国产成人精品一区二区三| 免费看欧美美女黄的网站| 综合av第一页| 精品国产乱码久久久久久图片 | 亚洲欧洲99久久| 欧美变态tickle挠乳网站| 色偷偷久久一区二区三区| 国产精品99久久久久久似苏梦涵 | 精品国精品自拍自在线| 国产精品久久久久久久裸模| 欧美日韩久久久久久| 91丨porny丨中文| 国产一区二区成人久久免费影院| 亚洲国产成人av好男人在线观看| 国产精品免费av| 久久伊人蜜桃av一区二区| 欧美日本精品一区二区三区| 91麻豆蜜桃一区二区三区| 懂色av中文一区二区三区| 美日韩黄色大片| 日日摸夜夜添夜夜添亚洲女人| 亚洲日本在线看| 中文字幕免费不卡| 精品国产91久久久久久久妲己 | 国产女人18水真多18精品一级做| 日韩亚洲欧美在线| 欧美一区三区四区| 欧美日本韩国一区| 欧美群妇大交群中文字幕| 91久久线看在观草草青青 | 91丨porny丨中文| 国产成人在线免费观看| 久久99九九99精品| 另类小说综合欧美亚洲| 免费人成精品欧美精品| 美女视频黄久久| 久久精品99久久久| 紧缚奴在线一区二区三区| 麻豆精品一区二区三区| 精品在线你懂的| 精品一区二区在线播放| 狠狠色丁香九九婷婷综合五月| 久久99精品国产.久久久久久 | 亚洲欧美日韩国产综合在线| 中文字幕在线不卡国产视频| 亚洲欧洲日产国码二区| 亚洲精品网站在线观看| 亚洲激情自拍视频| 无吗不卡中文字幕| 免费精品视频最新在线| 九一久久久久久| 国产精品1区2区3区| 成人app软件下载大全免费| 色综合天天做天天爱| 91久久一区二区| 这里是久久伊人| 日韩免费视频一区二区| 国产亚洲综合在线| 中文字幕亚洲视频| 一级中文字幕一区二区| 青青草成人在线观看| 国产乱妇无码大片在线观看| 99国产欧美另类久久久精品| 欧美亚洲高清一区二区三区不卡| 欧美一区二区三区的| 精品国产乱码久久久久久牛牛 | 成人精品视频.| 国产午夜精品一区二区三区嫩草| 国产片一区二区| 亚洲综合一区二区三区| 七七婷婷婷婷精品国产| 国产白丝精品91爽爽久久| 色美美综合视频| 欧美一级午夜免费电影| 欧美激情综合在线| 亚洲成人自拍网| 国产91精品精华液一区二区三区| 色94色欧美sute亚洲线路一ni| 日韩三级精品电影久久久 | 国产精品亚洲一区二区三区在线| 欧美日韩一区二区在线观看| 午夜精品久久久久影视| 亚洲欧美国产高清| 奇米四色…亚洲| 成人国产一区二区三区精品| 欧美精品乱人伦久久久久久| 国产午夜精品在线观看| 五月婷婷激情综合网| 成人激情小说网站| 91精品视频网| 亚洲欧洲av在线| 精品一区二区三区久久| 在线观看91精品国产入口| 国产亚洲一区二区在线观看| 亚洲h在线观看| 不卡视频在线观看| 亚洲精品一线二线三线无人区| 亚洲蜜桃精久久久久久久| 国产美女视频91| 欧美一区二区三区四区在线观看 | 91精品国产乱码| 中文字幕一区二区视频| 韩国中文字幕2020精品| 欧美日韩一区二区在线观看 | 亚洲日本青草视频在线怡红院| 久久精品免费观看| 欧美日韩高清一区二区三区| 国产精品午夜在线| 国产一区在线不卡| 欧美一区二区黄色| 亚洲高清一区二区三区| 91丨porny丨最新| 国产精品天干天干在线综合| 看片网站欧美日韩| 欧美男男青年gay1069videost| 亚洲色大成网站www久久九九| 国产99久久久国产精品潘金| 日韩欧美成人午夜| 日本亚洲最大的色成网站www| 在线国产电影不卡| 亚洲黄色小说网站| 色噜噜狠狠成人网p站| 亚洲婷婷国产精品电影人久久| 国产很黄免费观看久久| 久久久夜色精品亚洲| 激情综合网天天干| 精品美女在线观看| 紧缚奴在线一区二区三区| 精品国内片67194| 欧美日韩久久一区二区| 亚洲美女免费视频| 色综合亚洲欧洲| 有坂深雪av一区二区精品| 一本一本久久a久久精品综合麻豆| 国产精品乱码一区二区三区软件| 国产精品1区2区3区在线观看| 久久免费精品国产久精品久久久久 | kk眼镜猥琐国模调教系列一区二区| 久久久久久久久久电影| 国产精品亚洲专一区二区三区| 久久久久9999亚洲精品| 成人在线综合网站| 日韩一区有码在线| 在线观看日韩毛片| 亚洲成人av资源| 欧美一区二区视频在线观看2020 | 一区二区三区在线视频观看 | 不卡欧美aaaaa| 亚洲欧美另类久久久精品| 日本电影亚洲天堂一区| 亚洲国产成人91porn| 欧美日韩高清一区二区不卡| 男人的天堂亚洲一区| 久久久久久毛片| av亚洲精华国产精华| 99国产精品久久久久久久久久久| 亚洲欧美日韩中文字幕一区二区三区| 色噜噜狠狠成人网p站| 五月天丁香久久| 欧美一区二区免费| 国产高清亚洲一区| 亚洲女人小视频在线观看| 在线亚洲人成电影网站色www| 亚洲chinese男男1069| 欧美精品一区二区三区四区 | 国产专区欧美精品| 欧美国产激情二区三区| 日本高清不卡一区| 蜜芽一区二区三区| 久久综合久久鬼色中文字| 成人app下载| 日韩电影在线看| 国产免费久久精品| 欧美在线制服丝袜| 韩国一区二区三区| 一区二区三区产品免费精品久久75| 67194成人在线观看| 丰满少妇在线播放bd日韩电影| 一区二区三区高清不卡| 精品国产欧美一区二区| 色欲综合视频天天天| 黄一区二区三区| 一区二区三区美女| 久久久久久电影| 678五月天丁香亚洲综合网| 国产高清不卡二三区| 亚洲一区二区中文在线| 国产日韩在线不卡| 欧美久久久影院| 成人白浆超碰人人人人| 日本欧美韩国一区三区| 亚洲男人的天堂av| 久久久国产综合精品女国产盗摄| 欧美日韩一区二区在线观看| 成人丝袜18视频在线观看| 久久69国产一区二区蜜臀| 一区二区激情小说|