Rumah  >  Artikel  >  Java  >  Cara menggunakan Java untuk melaksanakan permainan backgammon yang berdiri sendiri

Cara menggunakan Java untuk melaksanakan permainan backgammon yang berdiri sendiri

WBOY
WBOYke hadapan
2023-04-15 10:19:021101semak imbas

Keperluan utama

1. Setiap bahagian permainan memegang buah catur dengan warna yang sama.

2. Mulakan dengan papan catur kosong.

3. Pemain (catur hitam) mendahului, dan AI (catur merah) datang yang terakhir, secara bergilir-gilir membuat gerakan, dan hanya satu gerakan boleh dilakukan setiap kali.

4. Buah catur diletakkan di tempat kosong pada papan catur Selepas buah catur diletakkan, ia tidak dibenarkan bergerak ke titik lain, dan tidak dibenarkan dikeluarkan dari papan catur atau dipetik. atas dan diletakkan di tempat lain.

5. Buah catur pertama Black boleh diletakkan di mana-mana persimpangan pada papan catur.

6 Adalah menjadi hak kedua-dua pihak untuk bergilir-gilir untuk bergerak, tetapi mana-mana pihak dibenarkan melepaskan hak untuk membuat langkah yang pertama untuk menyambung 5 keping menang.

Reka bentuk utama

1 Memandangkan ia adalah permainan yang berdiri sendiri, anda boleh memulakan permainan secara langsung selepas memulakan permainan.

2. Peraturan permainan:

  • Kedua-dua belah dalam permainan memegang kepingan dengan warna yang sama.

  • Mulakan dengan papan kosong.

  • Hitam bermula dahulu, kemudian merah, secara bergilir-gilir, dan anda hanya boleh memainkan satu bahagian setiap kali.

  • Buah catur diletakkan pada tempat kosong pada papan catur Selepas buah catur diletakkan, ia tidak dibenarkan berpindah ke titik lain, begitu juga tidak dikeluarkan dari papan catur atau dipetik. atas dan diletakkan di tempat lain.

  • Sekeping pertama Black boleh diletakkan di mana-mana persimpangan pada papan catur.

  • Adalah hak kedua-dua pihak untuk bergilir-gilir untuk bergerak, tetapi mana-mana pihak dibenarkan melepaskan hak untuk bergerak, yang pertama menyambung 5 keping menang .

3. Fungsi kedudukan reka bentuk

Statistik tentang bilangan permainan, langkah dan keputusan

4 boleh ditukar Papan catur yang berbeza menjadikan bermain catur lebih menyeronokkan.

5. Tukar buah catur

Anda boleh menukar warna buah catur.

Pelaksanaan kod

Antara muka utama:

Senarai utama
package wuziqi;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;

import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;

public class Wumain extends JFrame{
	Pan p = null;
	JMenuBar menuber = new JMenuBar();
	JMenu jm1 = new JMenu("选项");
	JMenu jm2 = new JMenu("设置");
	JMenu jm3 = new JMenu("帮助");
	JMenuItem jm1_1 = new JMenuItem("重新开始");
	JMenuItem jm1_2 = new JMenuItem(" 排行榜");
	JMenuItem jm1_3 = new JMenuItem("退出游戏");
	JMenuItem jm2_1 = new JMenuItem("更换棋盘");
	JMenuItem jm2_2 = new JMenuItem("更换棋子");
	JMenuItem jm3_1 = new JMenuItem("关于我们");
	public Wumain()
	{
		   p =new Pan();
		   this.setSize(585,600);
		   this.setLocation(200,100);
		   this.add(p);
		   this.setResizable(false);
		   this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		   jm1.add(jm1_1);
		   jm1.add(jm1_2);
		   jm1.add(jm1_3);
		   jm2.add(jm2_1);
		   jm2.add(jm2_2);
		   jm3.add(jm3_1);
		   menuber.add(jm1);
		   menuber.add(jm2);
		   menuber.add(jm3); 
		   this.setJMenuBar(menuber);
		   this.addMouseListener(p);
		   jm1_3.addActionListener(new ActionListener() {
//			匿名虚构类
			@Override
			public void actionPerformed(ActionEvent e) {
				System.exit(0);
				
			}
		});
		   jm1_1.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				for(int i=0;i<p.row;i++){
					for(int j=0;j<p.col;j++){
						p.num[i][j] = 0;
					}
				}
				p.canSetqizi = true;
				p.qizi_num = 0;
				repaint();
			}
		});
		   jm2_1.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				Random r = new Random();
				int n = r.nextInt(8);
				String qipan_name = "qipan"+n+".jpg";
				p.qipan_name = qipan_name;
				repaint();
			}
		});
		   jm2_2.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				Random r = new Random();
				int n = r.nextInt(8);
				String qizi1_name = "c"+n+".png";
				String qizi2_name = "c"+(n+1)+".png";
				p.qizi1_name = qizi1_name;
				p.qizi2_name = qizi2_name;	
				repaint();
			}
		});
		   jm3_1.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				String msg ="关于我们\n" +
						"1、玩家先落子;\n" +
						"2、形成5颗同色连子即为赢;\n\n\n" +
						"  ";
				JOptionPane.showMessageDialog(null, msg);
				
			}
		});
		   jm1_2.addActionListener(new ActionListener() {
		
			   public void actionPerformed(ActionEvent e) {
			String msg ="排行榜\n" +
					"局数      步数      结果\n";
			for(int i=0;i<p.paihanglist.size();i++)
			{
				PaiHangBang ph = p.paihanglist.get(i);
			      msg = msg+"   "+ph.getJushu()
			    		  +"          "+ph.getBushu()
			    		  +"          "+ph.getJieguo()+"\n";
			}
				JOptionPane.showMessageDialog(null, msg);
			   }
		});
		   this.setVisible(true);
	}
	public static void main(String[] args){
		Wumain w = new Wumain();
	}
}

Papan Catur
package wuziqi;

public class PaiHangBang {
	
	private int jushu;
	private int bushu;
	private String jieguo;
	public int getJushu() {
		return jushu;
	}
	public void setJushu(int jushu) {
		if(jushu<1){
			this.jushu = 1;
		}
		this.jushu = jushu;
	}
	public int getBushu() {
		return bushu;
	}
	public void setBushu(int bushu) {
		this.bushu = bushu;
	}
	public String getJieguo() {
		return jieguo;
	}
	public void setJieguo(String jieguo) {
		this.jieguo = jieguo;
	}
}

Atas ialah kandungan terperinci Cara menggunakan Java untuk melaksanakan permainan backgammon yang berdiri sendiri. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam