⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gambler.java

📁 这个也是用Java编写的博饼的游戏
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
						    {are.append(nameofplayer+temp+ "还好还好,四进带二举:二举没了,还可得四进一个\n");sijin--;break loop1;}  
							if(sijin>=1&&erju>=1)
							{are.append(nameofplayer+temp+ "运气真好,四进带二举:可得四进一个,再得二举一个\n");sijin--;erju--;break loop1;}
						    
						    
						    
						}
						loop2: if( (str.charAt(0)=='4'||str.charAt(1)=='4'||str.charAt(2)=='4'||str.charAt(4)=='4'||str.charAt(5)=='4')&&str.charAt(3)=='1')
						{   
							if(sijin<=0&&yixiu<=0)
					       {are.append(nameofplayer+temp+ "姥姥!四进带一秀:四进、一秀都没了!\n");break loop2;}  
							if(sijin<=0&&yixiu>=1)
					       {are.append(nameofplayer+temp+ "还好还好,四进带一秀:四进没了,还可得一秀一个\n");yixiu--;break loop2;}  
							if(sijin>=1&&yixiu<=0)
						   {are.append(nameofplayer+temp+ "还好还好,四进带一秀:一秀没了,还可得四进一个\n");sijin--;break loop2;}  
							if(sijin>=1&&yixiu>=1)
						   {are.append(nameofplayer+temp+ "运气真好,四进带一秀:可得四进一个,再得一秀一个\n");sijin--;yixiu--;break loop2;}
							
					
						}
						else if(sijin>=1)
						   {sijin--;are.append(nameofplayer+temp + " 四进:可得四进一个 \n");}
						    else
							JOptionPane.showMessageDialog(null, "运气好,人品差,四进没有了兄弟,找块豆腐撞死吧!", "恭喜恭喜你",JOptionPane.INFORMATION_MESSAGE);
					}
					if (str.charAt(3)=='2'&&str.charAt(0)!='4'&&str.charAt(1)!='4'&&str.charAt(2)!='4'&&str.charAt(4)!='4'&&str.charAt(5)!='4')
					{
						if(erju>=1)
						   {are.append(nameofplayer+temp + " 二举:可得二举一个\n");erju--;}
					    else
					    	JOptionPane.showMessageDialog(null, "运气好,人品差,二举都拿光了,抽自己去吧!", "恭喜恭喜你",JOptionPane.INFORMATION_MESSAGE);   
					}
					if (str.charAt(3)=='1'&&!temp.equals("123456")&&str.charAt(0)!='4'&&str.charAt(1)!='4'&&str.charAt(2)!='4'&&str.charAt(4)!='4'&&str.charAt(5)!='4'
						&&str.charAt(0)!='5'&&str.charAt(1)!='5'&&str.charAt(2)!='5'&&str.charAt(4)!='5'&&str.charAt(5)!='5')
					{   
						if(yixiu>=1)
						   {are.append(nameofplayer+temp + " 一秀:可得一秀一个\n");yixiu--;}
						else
							JOptionPane.showMessageDialog(null, "运气好,人品差,一秀已经没有了,找地儿哭去吧!", "恭喜恭喜你",JOptionPane.INFORMATION_MESSAGE);
							
					}
					if (str.charAt(0)=='1'&&str.charAt(1)=='1'&&str.charAt(2)=='2'&&str.charAt(3)=='0'&&str.charAt(4)=='1'&&str.charAt(5)=='1')
					{
						are.append(nameofplayer+ temp + "这张臭手,投了个鸟, 罚黑:不可得饼 \n");
					}
				 }
		 else 
		 {   if(duitang==0)//一秀、二举、三红、四进博完,对堂未剩
			 {
				 if(currentflag4==0&&currentflag5==0&&currentflag51==0&&currentflag54==0)//状元未有人博到
				 {
					 JOptionPane.showMessageDialog(null, "一秀、二举、三红、四进、对堂都没有了,认了吧!\n  经过一轮残杀,还是没有投出状元\n为了结束这无休止的战斗,我们还是提高中状元的机率吧!\n每人允许投掷一次,6颗色子点数和最大者得饼,如遇相同点数,后者得之", "一决胜负",JOptionPane.INFORMATION_MESSAGE);
					 //投掷一圈,决定状元出现
					int last[]=new int[6];
					
					for (int j = 0; j<= 5; j++)
					{
						last[j] = (int) (Math.random() * 6 + 1);
					}
					sum1=last[0]+last[1]+last[2]+last[3]+last[4]+last[5];
					if(sum1>=sum2 ){ sum2=sum1;are.append(nameofplayer+ sum1 + "决战结果:状元给我吧!\n");}
					else are.append(nameofplayer+ sum1 + "决战结果:末了投了个鸟球!哪个阿咂泼才比洒家点数还高,气煞俺也\n");
					lastflag++;
					if(lastflag==i){JOptionPane.showMessageDialog(null, "游戏结束,各得各饼,准备下一轮!", "恭喜恭喜",JOptionPane.INFORMATION_MESSAGE);button.setEnabled(false);button.setEnabled(false);addbutton.setEnabled(false);}
					
				 }
				 else //前三甲均有主
				 { JOptionPane.showMessageDialog(null, "            游戏结束!\n结果:\n状元得主:"+HolderOfZhuangyuan+"\n探花得主:"+HolderOfDuitang1+"\n榜眼得主:"+HolderOfDuitang2+"\n一秀,二举,三红,四进按先得即得分配", "恭喜恭喜",JOptionPane.INFORMATION_MESSAGE);button.setEnabled(false);addbutton.setEnabled(false);}
			 } 
			 if(duitang!=0)//一秀、二举、三红、四进博完,对堂还剩
			 {
				 if(currentflag4==0&&currentflag5==0&&currentflag51==0&&currentflag54==0)//状元未有人博到
				 {
					 JOptionPane.showMessageDialog(null, "一秀、二举、三红、四进都没有了,认了吧!\n为了结束这无休止的战斗,我们还是提高中前三甲的机率吧!\n每人允许投掷一次,依6颗色子点数和由大到小排列大者得饼\n如遇相同点数,后者得之", "一决胜负",JOptionPane.INFORMATION_MESSAGE);
					 int last[]=new int[6];
						
					for (int j = 0; j <= 5; j++)
					{
						last[j] = (int) (Math.random() * 6 + 1);
					}
					sum1=last[0]+last[1]+last[2]+last[3]+last[4]+last[5];
					are.append(nameofplayer+ sum1 + "耐心等待中........\n");
					lastflag++;
					if(lastflag==i){JOptionPane.showMessageDialog(null, "游戏结束,各得各饼,准备下一轮!", "恭喜恭喜",JOptionPane.INFORMATION_MESSAGE);button.setEnabled(false);addbutton.setEnabled(false);}
					
	
				 }
				 else // 状元已有主,对堂还剩下
				 {
					 JOptionPane.showMessageDialog(null, "    状元已有主,对堂还剩下\n为了结束这无休止的战斗,我们还是提高高中的机率吧!\n每人允许投掷一次,依6颗色子点数和由大到小排列大者得饼\n如遇相同点数,后者得之", "一决胜负",JOptionPane.INFORMATION_MESSAGE);
					 int last[]=new int[6];
						
					for (int j = 0; j <= 5; j++)
					{
						last[j] = (int) (Math.random() * 6 + 1);
					}
					sum1=last[0]+last[1]+last[2]+last[3]+last[4]+last[5];
					are.append(nameofplayer+ sum1 + "耐心等待中........\n");
					lastflag++;
					if(lastflag==i){addbutton.setEnabled(false);JOptionPane.showMessageDialog(null, "游戏结束,各得各饼,准备下一轮!", "恭喜恭喜",JOptionPane.INFORMATION_MESSAGE);button.setEnabled(false);}
					 
				}
			 } 
		 }//duitang不等于0的情况原本有漏洞,得了状元后直接结束了比赛,问题已得到解决
				
     }
    public void itemStateChanged(ItemEvent e)//选择新玩家后的设置
	{       
		if(e.getSource()instanceof Choice)
	   {    String string=(String)e.getItem();
	   		flag=string;
			presslabel.setEnabled(true);
			nextlabel.setEnabled(false);
	   }
		
	}
	public String ThereIs(int num[])
	/*判断随机产生的6个数字中,分别出现1,2,3,4,5,6的个数,并以string的形式返回
	 * 比如随机数为 1,1,2,3,5,5,则返回值str为211020*/
	
	 {
			String str = "";
			int i;
			int n[] = new int[] { 0, 0, 0, 0, 0, 0 };
			for (i = 0; i <= 5; i++)
			{
				if (num[i] == 1)
					n[0]++;
				if (num[i] == 2)
					n[1]++;
				if (num[i] == 3)
					n[2]++;
				if (num[i] == 4)
					n[3]++;
				if (num[i] == 5)
					n[4]++;
				if (num[i] == 6)
					n[5]++;
			}
			str = n[0]+""+n[1]+""+n[2]+""+ n[3]+""+n[4]+""+n[5];
			return str;
	 }
	public void start()
	{
		//线程开始
		if(runner==null)
		{
			//如果线程维空
			runner=new Thread(this);//开始新的线程
			runner.start();//开始
		}
	}
	public void stop()
	{
		if(runner!=null)
		{
			runner.stop();
			runner=null;
		}
	}
	public void run()
	{
		while(true)
		{ String time;
		timenow =new Date();
		time=timenow.toString();
		timelabel=new JLabel(time);
		//timelabel.setForeground(new Color(72, 209, 204));
		//timelabel.setBackground(Color.gray);
		timelabel.setBorder(new BevelBorder(BevelBorder.LOWERED));
	    container.add(timelabel);
	    timelabel.setSize(185, 20);
	    timelabel.setLocation(105, 525);
			//repaint();//重新绘制界面
		try{Thread.sleep(1000);}
		catch(InterruptedException e){}//捕获异常
		timelabel.setText("");
		}
	}
	public void update(Graphics g)
	{
		paint(g);
	}
	public Gambler()//构造函数
	{
		super();
		getContentPane().setBackground(Color.ORANGE);
		/*JMenuBar mb=new JMenuBar();
		JMenu ml=new JMenu("文件");
		JMenuItem ml1=new JMenuItem("保存");
		JMenuItem ml2=new JMenuItem("退出");
		ml1.setActionCommand("save");
		ml2.setActionCommand("exit");
		ml1.addActionListener(this);
		ml2.addActionListener(this);
		ml.add(ml1);
		ml.addSeparator();
		ml.add(ml2);
		mb.add(ml);*/
	}
    public static void main(String []args)//用于application运行时的主函数
    {
    	JFrame f=new JFrame("模拟博饼游戏");
	    f.setIconImage(SwingResourceManager.getImage(Gambler.class, "[Plugin]images/2.png"));
    	Gambler gambler=new Gambler();
    	gambler.init();
    	gambler.start();
        f.add("Center",gambler);
    	f.addWindowListener(new WindowAdapter()
    	{
    		public void windowClosing(WindowEvent e)
    		{
    			System.exit(1);
    		}
    		
    	});
    	f.setSize(700, 590);
    	f.show();
		
    }
    public void AddNumberToFrame (int number[])//向附加显示窗口中添加数字图片
    {  // showframe.paint(showframe.getGraphics());
    	showframe.dispose();
    	showframe.setResizable(false);
    	showframe.setIconImage(SwingResourceManager.getImage(Gambler.class, "/images/2.png"));
    	showframe.setForeground(Color.MAGENTA);
    	showframe.setAlwaysOnTop(true);
    	showframe=new JFrame("Image Show");
    	showframe.getContentPane().setBackground(new Color(224, 255, 255));
    	showframe.setLayout(null);
    	Panel spanel=new Panel();
    	spanel.setLayout(null);
        spanel.setLocation(0, 0);
        spanel.setSize(460, 150);
    	//ImageIcon picback;
    	//picback=new ImageIcon("images/clouds.jpg");
        //JLabel backgrounds=new JLabel();
        ImageIcon[] pic=new ImageIcon[6];
        JLabel[] lblSaizi = new JLabel[6];
        showframe.add(spanel);
     
		for (int h = 0; h < 6; h++)
			pic[h] = new ImageIcon("images/char" + (h + 1) + ".png");
		
		for (int h = 0; h < 6; h++)
		{
			lblSaizi[h] = new JLabel(pic[h]);
			lblSaizi[h].setSize(50, 50);
		}
		for (int h = 1; h < 7; h++) 
	    {
			lblSaizi[h - 1].setIcon(pic[number[h-1] - 1]);
			spanel.add(lblSaizi[h - 1]);
			lblSaizi[h - 1].setLocation(80*(h-1), 25);
		}
		
    	showframe.setSize(460,150);
    	showframe.show();
    	
    }


}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -