用java做一个五子棋小游戏,双人下五子棋游戏

  用java做一个五子棋小游戏,双人下五子棋游戏

  本文实例为大家分享了爪哇岛实现双人五子棋游戏的具体代码,供大家参考,具体内容如下

  通过上下左右控制棋盘走动空格落子(深度优先搜索)

  包day _ 1;导入Java。awt。*;导入javax。挥棒。*;导入Java。awt。事件。*;公共类切尔克勒伦扩展JFrame {/* * * */我的面板MP=null公共静态void main(String[]args){ circle run Cr=new circle run();}公圈run(){ MP=new my panel();这个。添加(MP);这个。addkey监听器(MP);this.setTitle(双人五子棋正式版3.0);this.setSize(518,538);//设置窗体大小this.setLocation(340,50);//设置出现的位置这个。设置可见(真);//设置为可见这个。setdefaultcloseoperation(JFrame .EXIT _ ON _ CLOSE);joptionpane。showmessagedialog(this,’双人五子棋游戏说明:通过控制旗子走向,空格下子先满五个子胜利, 游戏说明,JOptionPane .WARNING _ MESSAGE);}//游戏说明}class Text2Frame {//设置一个交互框JTextField jt1=new JTextField();//新建一个文本框JTextArea jt2=new JTextArea();//新建一个文本区JTextArea jt4=new JTextArea();//新建一个文本区text 2 frame(){ JScrollPane JSP=new JScrollPane(jt2);//新建一个滚条字符串标题=正在思考。;JFrame jf=新JFrame(标题);集装箱集装箱=JF。getcontentpane();//容器。设置背景(颜色。黄色);//容器的背景色JF。设置可见(真);//窗体可见jf.setLocation(150,50);jf.setSize(300,150);//窗体大小JF。set layout(new BorderLayout());//边界布局jf.add(BorderLayout .北,jt1);//文本框边界顶部放置jt1。设置背景(颜色。黄色);jf.add(BorderLayout .中心,jt2);//文本框边界中间放置jf.add(BorderLayout .东,jt4);//文本框边界中间放置jt2。设置背景(颜色。红色);jt2.setFont(新字体(宋体,字体。平原,30));} void add(字符串a){ jt2。settext(a);}};class text 3 frame { JTextField jt1=new JTextField();//新建一个文本框JTextArea jt2=new JTextArea();//新建一个文本区JTextArea jt4=new JTextArea();//新建一个文本区text 3 frame(){ JScrollPane JSP=new JScrollPane(jt2);//新建一个滚条字符串标题=当前坐标;JFrame jf=新JFrame(标题);集装箱集装箱=JF。getcontentpane();

     // container.setBackground(Color.yellow); //容器的背景色        jf.setVisible(true); // 窗体可见        jf.setLocation(140, 180);        jf.setSize(300, 200); // 窗体大小        jf.setLayout(new BorderLayout()); // 边界布局        jf.add(BorderLayout.NORTH, jt1); // 文本框边界顶部放置        jt1.setBackground(Color.yellow);        jf.add(BorderLayout.CENTER, jt2); // 文本框边界中间放置        jf.add(BorderLayout.EAST, jt4); // 文本框边界中间放置        jt2.setBackground(Color.green);         jt2.setFont(new Font("宋体", Font.PLAIN, 30));     }     void add(String a) {        jt2.setText(a);     }     String shu(int a, int b) {        return "当前坐标(" + a + "," + b + ")";    } }; // 定义自己的面板class MyPanel extends JPanel implements KeyListener {    /**     *      */    private static final long serialVersionUID = 4154597541232213984L;    Text2Frame txw = new Text2Frame();    Text3Frame txw3 = new Text3Frame();    static JFrame sc = new JFrame();    static int jishu = 1;     static int summm = 1;    static int summm2 = 1;    static int arr[][] = new int[11][12];     int x = 5;    int y = 5;    int sum = 0;    int sum2 = 0;    Node n1 = new Node(x, y);    seqlist kai = new seqlist(n1);    seqlist seq = new seqlist(null);    seqlist seq2 = new seqlist(null);     static void soushang(int a, int b) {         if (a - 1 < 1) {             return;         }        if (arr[a - 1][b] == 1 && a - 1 > 0) {             summm++;            if (summm == 5) {                for (int i = 0; i < 11; i++) {                    for (int k = 0; k < 12; k++) {                        arr[i][k] = 0;                    }                 }                System.out.println("胜利");                JOptionPane.showMessageDialog(sc, "红色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);             }             soushang(a - 1, b);         }     }     static void souxia(int a, int b) {         if (a + 1 > 10) {             return;         }        if (arr[a + 1][b] == 1 && a + 1 <= 10) {             summm++;            if (summm == 5) {                for (int i = 0; i < 11; i++) {                    for (int k = 0; k < 12; k++) {                        arr[i][k] = 0;                    }                 }                System.out.println("胜利");                JOptionPane.showMessageDialog(sc, "红色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);            }             souxia(a + 1, b);         }     }     static void souzuo(int a, int b) {         if (b - 1 < 1) {             return;         }        if (arr[a][b - 1] == 1 && b - 1 >= 1) {             summm++;            if (summm == 5) {                for (int i = 0; i < 11; i++) {                    for (int k = 0; k < 12; k++) {                        arr[i][k] = 0;                    }                 }                System.out.println("胜利");                JOptionPane.showMessageDialog(sc, "红色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);            }             souzuo(a, b - 1);         }     }     static void souyou(int a, int b) {         if (b + 1 > 10) {             return;         }        if (arr[a][b + 1] == 1 && b + 1 <= 10) {             summm++;            if (summm == 5) {                for (int i = 0; i < 11; i++) {                    for (int k = 0; k < 12; k++) {                        arr[i][k] = 0;                    }                 }                System.out.println("胜利");                JOptionPane.showMessageDialog(sc, "红色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);            }             souyou(a, b + 1);         }    }     static void soushangzuo(int a, int b) {         if (a - 1 < 1 b - 1 < 1) {             return;         }        if (arr[a - 1][b - 1] == 1 && (a - 1 > 0) && (b - 1) > 0) {             summm++;             if (summm == 5) {                for (int i = 0; i < 11; i++) {                    for (int k = 0; k < 12; k++) {                        arr[i][k] = 0;                    }                 }                System.out.println("胜利");                JOptionPane.showMessageDialog(sc, "红色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);            }             soushangzuo(a - 1, b - 1);        }     }     static void souxiazuo(int a, int b) {         if (a + 1 > 10 b - 1 < 1) {             return;         }        if (arr[a + 1][b - 1] == 1 && (a + 1 <= 10) && (b - 1) >= 1) {             summm++;            if (summm == 5) {                for (int i = 0; i < 11; i++) {                    for (int k = 0; k < 12; k++) {                        arr[i][k] = 0;                    }                 }                System.out.println("胜利");                JOptionPane.showMessageDialog(sc, "红色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);            }             souxiazuo(a + 1, b - 1);        }     }     static void souyoushang(int a, int b) {         if (a - 1 < 1 && b + 1 > 10) {             return;         }        if (arr[a - 1][b + 1] == 1 && a - 1 >= 1 && b + 1 <= 10) {             summm++;            if (summm == 5) {                for (int i = 0; i < 11; i++) {                    for (int k = 0; k < 12; k++) {                        arr[i][k] = 0;                    }                 }                System.out.println("胜利");                JOptionPane.showMessageDialog(sc, "红色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);            }             souyoushang(a - 1, b + 1);        }     }     static void souyouxia(int a, int b) {         if (b + 1 > 10 && a + 1 > 10) {             return;         }        if (arr[a + 1][b + 1] == 1 && b + 1 <= 10 && a + 1 <= 10) {             summm++;            if (summm == 5) {                for (int i = 0; i < 11; i++) {                    for (int k = 0; k < 12; k++) {                        arr[i][k] = 0;                    }                 }                System.out.println("胜利");                JOptionPane.showMessageDialog(sc, "红色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);            }             souyouxia(a + 1, b + 1);        }    }     static void soushang2(int a, int b) {         if (a - 1 < 1) {             return;         }        if (arr[a - 1][b] == 2 && a - 1 > 0) {             summm2++;            if (summm2 == 5) {                for (int i = 0; i < 11; i++) {                    for (int k = 0; k < 12; k++) {                        arr[i][k] = 0;                    }                 }                System.out.println("胜利");                JOptionPane.showMessageDialog(sc, "绿色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);            }             soushang2(a - 1, b);         }     }     static void souxia2(int a, int b) {         if (a + 1 > 10) {             return;         }        if (arr[a + 1][b] == 2 && a + 1 <= 10) {             summm2++;            if (summm2 == 5) {                for (int i = 0; i < 11; i++) {                    for (int k = 0; k < 12; k++) {                        arr[i][k] = 0;                    }                 }                System.out.println("胜利");                JOptionPane.showMessageDialog(sc, "绿色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);            }             souxia2(a + 1, b);         }     }     static void souzuo2(int a, int b) {         if (b - 1 > 10) {             return;         }        if (arr[a][b - 1] == 2 && b - 1 >= 1) {             summm2++;            if (summm2 == 5) {                for (int i = 0; i < 11; i++) {                    for (int k = 0; k < 12; k++) {                        arr[i][k] = 0;                    }                 }                System.out.println("胜利");                JOptionPane.showMessageDialog(sc, "绿色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);            }             souzuo2(a, b - 1);         }     }     static void souyou2(int a, int b) {         if (b + 1 > 10) {             return;         }        if (arr[a][b + 1] == 2 && b + 1 <= 10) {             summm2++;            if (summm2 == 5) {                for (int i = 0; i < 11; i++) {                    for (int k = 0; k < 12; k++) {                        arr[i][k] = 0;                    }                 }                System.out.println("胜利");                JOptionPane.showMessageDialog(sc, "绿色方胜利,点击确定重新开始", "结果", JOptionPane.WARNING_MESSAGE);            }             souyou2(a, b + 1);         }     }     static void soushangzuo2(int a, int b) {         if (a - 1 < 1 b - 1 < 1) {             return;         }        if (arr[a - 1][b - 1] == 2 && (a - 1 >= 1) && (b - 1) >= 1) {             summm2++;        &nb

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: