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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? chesswzq.java

?? 五子棋游戲
?? JAVA
?? 第 1 頁 / 共 3 頁
字號:

            // getContentPane().add(jpanel1);
            getContentPane().add(bpanel);
            getContentPane().add(jpanel3);

           // lItems.add(0,"hugh");
           // lItems.add(0,"cylix");

        }
        catch(Exception e) {
            e.printStackTrace();
        }

    }

    //Component initialization
    private void jbInit() throws Exception  {
        contentPane = (JPanel) this.getContentPane();
        contentPane.setLayout(borderLayout1);
        this.setSize(new Dimension(660, 530));
        this.setTitle("五子棋客戶端(beta)");
    }
    /**
     * send disconnection to server
     * type = 7
     */
    public void sendDisconnect(){
        Message ms = new Message();
        ms.type=7;
        try{
            out.writeObject(ms);
        }catch(IOException e){
            e.printStackTrace();
        }
    }
    public void drawChess(int col){
        Graphics g = jpanel3.getGraphics();
        if(col==1) g.setColor(Color.black);
        else g.setColor(Color.white);
        g.fillOval(50,10,20,20);
    }

    /**
     * <format> java ChessWZQ < server address> <player name>
     * @param args[0]=server address args[1]=player name
     */
    public static void main(String [] args){
        ChessWZQ wzq = new ChessWZQ();
        wzq.setResizable(false);
        wzq.setVisible(true);
        wzq.drawChess(1);   //default color is black

        Message ms = new Message();
        if(args[0]!=null)
        	wzq.serverAddress = new String(args[0]);
        else
        	wzq.serverAddress = new String("localhost");
        if(args[1]!=null)
        	wzq.name = new String(args[1]);
        else
        	wzq.name = new String("cylix");
        wzq.strToCharArray(wzq.name,ms.msg);
        try{
            // should get server name by command line
            InetAddress addr = InetAddress.getByName(wzq.serverAddress);
            //System.out.println("address "+ addr.toString()+" port: "+PORT);
            socket = new Socket(addr, PORT);
            //System.out.println("set socket successful...");

            out = new ObjectOutputStream(
                socket.getOutputStream());
            in = new ObjectInputStream(
                socket.getInputStream());

            ms.type=1;
            try{
                out.writeObject(ms);
            }catch(IOException e){
                e.printStackTrace();
            }
            while(true){
                try {
                    ms = (Message) in.readObject();
                    //System.out.println("get message from server...type = "+ms.type);
                    wzq.doMessage(ms);
                }
                catch (ClassNotFoundException e) {
                    e.printStackTrace();
                }
            }
            //System.out.println("ms.coordinateX + , + msg.coordinateY");
            //System.out.println(ms.color);
            //System.out.println("close ...");
            //socket.close();
        }catch(IOException e){
            e.printStackTrace();
        }

    }
    /**
     * deal with message get from server
     * @param msg
     * @return
     */
    protected int doMessage(Message msg){
        String str=arrayToString(msg.msg);
        //System.out.println("msg name = "+str+" msg.type = "+msg.type);
        switch(msg.type){
            case 2:{//respones of put chessman
                putChessman(msg);
                break;
            }
            case 3:{//request from another player
                requestAnother(msg);
                break;
            }
            case 4:{ // B deny to play with A
                getDeny(msg);
                break;}
            case 5:{ // B accept A's requestion
                acceptToPlay(msg);
                break;}
            case 6:{
                getVictory(msg);
                break;}
            case 7:{
                getDisconnection(msg);
                break;}
            case 9:{//reply of adding new player to all client
                ///System.out.println("add new player to list type = 9 name = "+str+"msg[0]= "+msg.msg[0]);
                lItems.add(0,str);
                break;
            }
            case 10:{ //respones of connecting
                //System.out.println("add him self  type = 10 name = "+str+"msg[0]= "+msg.coordinateX+msg.msg[0]);
                label1.setText(str);
                label6.setText("welcome "+str);
                lItems.add(0,str);
                break;
            }
            case 14:{ //B have accept playing with A,then get msg
                      //to set color and settings
                break;
            }
            case 15:{
                lItems.clear();
                break;
            }
            case 17:{
                getFailed(msg);
                break;
            }
            case 20:{
                ptocWin(msg);
                break;
            }
        }
        return 0; //end correctly
    }
    private void ptocWin(Message ms){
        String str=this.arrayToString(ms.msg);
        JOptionPane.showMessageDialog(null,str+" win the game!","V the game",JOptionPane.INFORMATION_MESSAGE);
        newGame();
    }
    /**
     * failed the game and have a new one
     * type == 17
     * @param msg
     */
    public void getFailed(Message msg){
        bpanel.drawChess(msg.coordinateX,msg.coordinateY);
        JOptionPane.showMessageDialog(null,
                                      "Sorry,You've failed the game",
                                      "Try Again",
                                      JOptionPane.INFORMATION_MESSAGE);
        label3.setText("Player2");
        // have a new game to continue to play
        newGame();
    }
    /**
     * another player send disconnection msg,here will resolve it
     * type ==7
     * @param msg
     */
    public void getDisconnection(Message msg){
        getVictory(msg);
    }
    /**
     * win the game
     * type ==6
     * @param msg
     */
    public void getVictory(Message msg){
        JOptionPane.showMessageDialog(null,
                                      "You  Win  The  Game",
                                      "Congratulations",
                                      JOptionPane.INFORMATION_MESSAGE);
        // have a new game to continue to play
        label3.setText("Player2");
        newGame();
    }
    /**
     * when people win a game ,then he can start a new one
     * @param msg
     */
    public void newGame(){
        jrbBlack.setEnabled(true);
        jrbWhite.setEnabled(true);
        jrbBlack.setSelected(true);
        jrbWhite.setSelected(false);
        list.setEnabled(true);
        setting.setEnabled(true);
        bpanel.clearBoard();
        drawChess(1);
        pColor=1;cColor=2;
        if(ptocFlag==false){
            Message msg = new Message();
            msg.type = 19;
            strToCharArray(name, msg.msg);
            try {
                out.writeObject(msg);
            }
            catch (IOException e) {
                e.printStackTrace();
            }
        }
        ptocFlag=false;
        beginFlag=false;
    }
    /**
     * precondition:get a msg from competitor of puting a chessman
     * fundition : deal with it
     * @param msg
     */
    public void putChessman(Message msg){
        if(ptocFlag==false){
            bpanel.updateBoard(msg.coordinateX,msg.coordinateY);
            bpanel.drawChess(msg.coordinateX,msg.coordinateY);
            beginFlag = true;
            return;
        }else{
            // update native board
            // search position to put chessman
        }
    }
    /**
     * A get a Ok msg from B and seting according with B
     * type= 5 B accept to play with A
     * @param msg = B's name
     */
    public void acceptToPlay(Message msg){
        String str=arrayToString(msg.msg);
        String ss=null;
        if(msg.color==1){
            ss = new String("white");
            bpanel.setColor(2);
        }
        else{
            ss = new String("black");
            bpanel.setColor(1);
        }
        JOptionPane.showMessageDialog(null,
                                      "OK. "+str+" have accepted your requestion\nYour color is"+ss,
                                      "Game will to begin...",JOptionPane.ERROR_MESSAGE);

        list.setEnabled(false);
        jrbBlack.setEnabled(false);
        jrbWhite.setEnabled(false);
        setting.setEnabled(false);
        beginFlag=true;
    }
    /**
     * A get a deny msg from B
     * type ==4 deny to play
     * @param msg
     */
    public void getDeny(Message msg){
        String str=arrayToString(msg.msg);
        JOptionPane.showMessageDialog(null,
                                      "I'm sorry\n"+str+" denied your requestion",
                                      "Sorry...",JOptionPane.ERROR_MESSAGE);
        list.setEnabled(true);
        label3.setText("Player2");
    }
    /**
     * A request play game with B,what below is B done
     * deal with request to paly
     * @param msg = requester 's name
     */
    public void requestAnother(Message msg){
        String str=arrayToString(msg.msg);
//        System.out.print("client requestAnother begin ...");
        int flag =JOptionPane.showConfirmDialog(null,
            "Player "+str+" want to play with you\nAre you OK?",
            "Play request...",JOptionPane.YES_NO_OPTION,
            JOptionPane.QUESTION_MESSAGE);
        if(flag==0){// press YES
            msg.type=5; //agree with request
            if(msg.color==1){ // msg.color is B 's color ,different with A's
                drawChess(msg.color);
                jrbBlack.setSelected(true);
                jrbWhite.setSelected(false);
                bpanel.setColor(1);
            }
            else{
                drawChess(msg.color);
                jrbWhite.setSelected(true);
                jrbBlack.setSelected(false);
                bpanel.setColor(2);
            }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91成人免费网站| 国产精品久久久久影院色老大 | 91尤物视频在线观看| 狠狠色丁香婷综合久久| 久久99在线观看| 麻豆精品视频在线观看| 蜜臀va亚洲va欧美va天堂| 日韩在线播放一区二区| 婷婷成人综合网| 天堂午夜影视日韩欧美一区二区| 99视频有精品| 成人动漫av在线| 99视频一区二区三区| 色哟哟日韩精品| 在线精品视频一区二区三四| 欧美婷婷六月丁香综合色| 欧美色爱综合网| 欧美一区二区在线视频| 日韩一区和二区| 26uuu色噜噜精品一区二区| www日韩大片| 中文字幕在线观看一区二区| 亚洲精品亚洲人成人网在线播放| 亚洲美女精品一区| 亚洲国产成人精品视频| 奇米影视一区二区三区小说| 国产精品中文有码| aaa亚洲精品| 欧美色网一区二区| 日韩一区二区电影在线| 久久久91精品国产一区二区三区| 国产精品日产欧美久久久久| 亚洲一区在线播放| 九九久久精品视频 | 欧美videossexotv100| 国产亚洲短视频| 亚洲欧美欧美一区二区三区| 日韩专区欧美专区| 国产老妇另类xxxxx| 色哟哟国产精品| 欧美成人免费网站| 成人欧美一区二区三区视频网页| 亚洲成人资源网| 国产成人在线观看免费网站| 欧美亚洲禁片免费| 精品三级在线观看| 亚洲精品高清视频在线观看| 精品一二线国产| 91麻豆国产在线观看| 精品福利视频一区二区三区| 亚洲欧美日韩中文字幕一区二区三区| 日韩国产欧美在线观看| 国产69精品久久久久777| 欧美在线免费观看视频| 亚洲精品在线免费观看视频| 亚洲影院在线观看| 国产精品一色哟哟哟| 欧美人与性动xxxx| 国产欧美一区二区精品秋霞影院| 午夜日韩在线电影| av午夜精品一区二区三区| 91麻豆精品国产自产在线观看一区| 日本一区免费视频| 青青草原综合久久大伊人精品| thepron国产精品| 欧美大片一区二区| 亚洲二区视频在线| 99久久婷婷国产| 久久网站热最新地址| 日日夜夜精品视频免费| 色综合天天综合网国产成人综合天| 精品乱码亚洲一区二区不卡| 91原创在线视频| 久久综合九色综合久久久精品综合| 樱桃国产成人精品视频| 国产精品综合视频| 91精品久久久久久蜜臀| 亚洲男人天堂一区| 成人免费毛片aaaaa**| 2023国产精品| 久久精品99久久久| 欧美日韩aaa| 亚洲国产日韩a在线播放性色| 大胆亚洲人体视频| 国产欧美一区二区三区鸳鸯浴| 久久99精品视频| 91精品国产品国语在线不卡| 亚洲国产一区二区在线播放| 色一情一乱一乱一91av| 亚洲欧美日韩人成在线播放| 国产91丝袜在线播放0| 久久综合av免费| 精品一区中文字幕| 精品国产一区久久| 蜜桃91丨九色丨蝌蚪91桃色| 911精品国产一区二区在线| 性做久久久久久免费观看欧美| 色爱区综合激月婷婷| 国产精品国产三级国产aⅴ中文| 国产精品一区三区| 国产午夜亚洲精品理论片色戒 | 国产sm精品调教视频网站| 2021国产精品久久精品| 国内精品久久久久影院一蜜桃| 欧美大胆人体bbbb| 加勒比av一区二区| 久久久久久日产精品| 国产乱码精品一区二区三区五月婷| 欧美精品一区二| 国产精品一区专区| 中文字幕在线观看一区| 一本大道av伊人久久综合| 曰韩精品一区二区| 欧美精品v日韩精品v韩国精品v| 日韩av一区二区在线影视| 日韩一区二区视频在线观看| 久久91精品久久久久久秒播| 欧美精品一区二区三区在线播放 | 日韩一区和二区| 狠狠v欧美v日韩v亚洲ⅴ| 久久一夜天堂av一区二区三区 | 国产欧美一二三区| 成人av电影在线| 亚洲欧美一区二区三区孕妇| 欧美日韩国产精选| 免费不卡在线视频| 国产喂奶挤奶一区二区三区| av福利精品导航| 亚洲国产美国国产综合一区二区| 欧美精品v日韩精品v韩国精品v| 精品一区二区三区的国产在线播放| 国产亚洲欧美激情| 在线国产亚洲欧美| 免费看欧美美女黄的网站| 久久精品一区二区三区不卡牛牛 | 欧美国产综合一区二区| 国产日韩在线不卡| av一区二区久久| 日韩高清欧美激情| 久久精品这里都是精品| 91黄色免费网站| 国产在线精品一区二区| 国产精品久久久久久久久免费相片| 色天使久久综合网天天| 毛片av一区二区| 亚洲欧洲成人自拍| 欧美一卡二卡三卡| 播五月开心婷婷综合| 亚洲成国产人片在线观看| 久久无码av三级| 欧美性大战xxxxx久久久| 国产一区二区美女诱惑| 亚洲欧美在线aaa| 日韩欧美在线综合网| 91麻豆产精品久久久久久| 日本欧美一区二区| 综合久久国产九一剧情麻豆| 日韩一二三四区| 色综合天天性综合| 国产综合色精品一区二区三区| 亚洲精品国产精品乱码不99| 欧美精品一区二区高清在线观看| 色综合网站在线| 国产精品系列在线播放| 日本伊人精品一区二区三区观看方式| 欧美激情综合五月色丁香| 日韩午夜中文字幕| 在线精品视频免费观看| 丁香天五香天堂综合| 日韩激情在线观看| 亚洲欧美成人一区二区三区| 久久综合久久综合九色| 欧美精品自拍偷拍| 91老师国产黑色丝袜在线| 国内精品国产三级国产a久久| 五月天精品一区二区三区| 亚洲丝袜精品丝袜在线| 国产欧美一区二区精品秋霞影院 | 亚洲精品日日夜夜| 久久久另类综合| 欧美一级高清大全免费观看| 欧美在线观看18| av动漫一区二区| 高清久久久久久| 国产精品影音先锋| 久久er精品视频| 毛片一区二区三区| 免费看黄色91| 日本在线不卡视频一二三区| 午夜精品福利一区二区蜜股av| 亚洲日本一区二区| 国产精品短视频| 国产欧美精品在线观看| 久久久久久久综合日本| 欧美大片一区二区三区| 日韩视频免费观看高清在线视频| 精品视频在线免费看| 欧美专区日韩专区| 色呦呦一区二区三区| 91黄色小视频|