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

📄 bobing.java

📁 这个也是用Java编写的博饼的游戏
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
					zhuangY[ j ]--;
					j=counter%memberNum;
					lastDice1=dice[0]+dice[1]+dice[2]+dice[3]+dice[4]+dice[5]-20;
				}
				else output.setText("     很遗憾,您的点数没有前个状元大!");
			}
			else output.setText("     很遗憾,您的点数没有前个状元大!");
		}
	}
	
	//五子加一秀
	public void wuHongYiXiu(){//五子带一秀
		if(zhuanYuan==1){  //无人得状元于先
			if(yiXiu>0){  //有一秀
			output.setText("     恭喜您中了 五子带一秀!!!\n     时刻小心后来者追饼哦! ");
			zhuangY[ counter%memberNum ]++;
			yiX[ counter%memberNum ]++;
			zhuanYuan--;
			yiXiu--;
			}
			else{  //无一秀
				output.setText("     恭喜您中了 五子带一秀!!!\n     但一秀已经没有了");
				zhuangY[ counter%memberNum ]++;
				zhuanYuan--;
			}
			j=counter%memberNum;//记录当前得状元者
			
			//判断并记录五子的大小
		    if(diceCount[1]==5)
		    	dice1=1;
		    else if(diceCount[2]==5)
		    	dice1=2;
		    else if(diceCount[3]==5)
			    dice1=3;
		    else if(diceCount[5]==5)
		    	dice1=5;
		    else if(diceCount[6]==5)
		    	dice1=6;
		    k=3;//记录状元等级
		    }
		else   //状元饼已经被拿
		{
			if(k<3){    //前个拿走状元的等级不如自己
				if(yiXiu>0){//有一秀
					output.setText("     恭喜您中了 五子带一秀!!!\n     请向前一个状元追得状元饼! ");
					zhuangY[ counter%memberNum ]++;
					yiX[ counter%memberNum ]++;
					zhuangY[ j ]--;//将前个状元的状元扣除
					j=counter%memberNum;//记录当前得状元者
					yiXiu--;
					}
					else{//无一秀
						output.setText("     恭喜您中了 五子带一秀!!!\n     但一秀已经没有了");
						zhuangY[ counter%memberNum ]++;
						zhuangY[ j ]--;
						j=counter%memberNum;
						zhuanYuan--;
					}
				//记录五子的大小
				if(diceCount[1]==5)
			    	dice1=1;
			    else if(diceCount[2]==5)
			    	dice1=2;
			    else if(diceCount[3]==5)
				    dice1=3;
			    else if(diceCount[5]==5)
			    	dice1=5;
			    else if(diceCount[6]==5)
			    	dice1=6;
			    k=3;
		         yiXiu--;
		         }
			else if(k==3){//前得状元者等级和自己一样,即都得五子带一秀
				//判断五子的大小
				if(diceCount[1]==5)  
			    	dice2=1;
			    else if(diceCount[2]==5)
			    	dice2=2;
			    else if(diceCount[3]==5)
				    dice2=3;
			    else if(diceCount[5]==5)
			    	dice2=5;
			    else if(diceCount[6]==5)
			    	dice2=6;
				
				if(dice2>dice1){ //比较 五子大小        
					if(yiXiu>0){//有一秀
						output.setText("     恭喜您中了 五子带一秀!!!\n     请向前一个状元追得状元饼! ");
						zhuangY[ counter%memberNum ]++;						
						zhuangY[ j ]--;
						j=counter%memberNum;
						yiX[ counter%memberNum ]++;
						yiXiu--;
						}
						else{//无一秀
							output.setText("     恭喜您中了 五子带一秀!!!\n     但一秀已经没有了");
							zhuangY[ counter%memberNum ]++;
							zhuangY[ j ]--;
							j=counter%memberNum;
							zhuanYuan--;
						}
				}
				else
				   output.setText("     很遗憾,您的点数没有前个状元大!");
			}
			else output.setText("     很遗憾,您的点数没有前个状元大!");
		}
		
	}
	
	//五子
	public void wuZi(){ //五子       
		if(zhuanYuan==1){    //状元饼还在                                  
			output.setText("     恭喜您得 五子!!\n     时刻小心后来者追饼! ");
			zhuangY[ counter%memberNum ]++;
			j = counter%memberNum;
		    zhuanYuan--;
		    
		    //记录五子的大小及最后一个色子的点数
		    if(diceCount[1]==5){
		    	dice1=1;
		    	lastDice1=dice[0]+dice[1]+dice[2]+dice[3]+dice[4]+dice[5]-5;
		    }
		    else if(diceCount[2]==5){
		    	dice1=2;
		    	lastDice1=dice[0]+dice[1]+dice[2]+dice[3]+dice[4]+dice[5]-10;
		    }
		    else if(diceCount[3]==5){
			    dice1=3;
			    lastDice1=dice[0]+dice[1]+dice[2]+dice[3]+dice[4]+dice[5]-15;
		    }
		    else if(diceCount[5]==5){
		    	dice1=5;
		    	lastDice1=dice[0]+dice[1]+dice[2]+dice[3]+dice[4]+dice[5]-25;
		    }
		    else if(diceCount[6]==5){
		    	dice1=6;
		    	lastDice1=dice[0]+dice[1]+dice[2]+dice[3]+dice[4]+dice[5]-30;
		    }
		    k=2; //记录状元等级
		}
		else   //状元饼已经被拿
		{
			if(k==1){    //前个拿走状元饼的中的是 状元
				output.setText("     恭喜您中 五子!!\n     请向前一个状元追得状元饼。");
				zhuangY[ counter%memberNum ]++;						
				zhuangY[ j ]--;
				j=counter%memberNum;

				//记录五子的大小及最后一个色子的点数
				if(diceCount[1]==5){
			    	dice1=1;
			    	lastDice1=dice[0]+dice[1]+dice[2]+dice[3]+dice[4]+dice[5]-5;
			    	}
			    else if(diceCount[2]==5){
			    	dice1=2;
			    	lastDice1=dice[0]+dice[1]+dice[2]+dice[3]+dice[4]+dice[5]-10;
			    	}
			    else if(diceCount[3]==5){
				    dice1=3;
				    lastDice1=dice[0]+dice[1]+dice[2]+dice[3]+dice[4]+dice[5]-15;
				    }
			    else if(diceCount[5]==5){
			    	dice1=5;
			    	lastDice1=dice[0]+dice[1]+dice[2]+dice[3]+dice[4]+dice[5]-25;
			    	}
			    else if(diceCount[6]==5){
			    	dice1=6;
			    	lastDice1=dice[0]+dice[1]+dice[2]+dice[3]+dice[4]+dice[5]-30;
			    	}
			    k=2;//记录状元等级
			    }
			else if(k==2){      //前个拿状元饼中的也是 五子
                //记录五子的大小及最后一个色子的点数
				if(diceCount[1]==5){   
			    	dice2=1;
			    	lastDice2=dice[0]+dice[1]+dice[2]+dice[3]+dice[4]+dice[5]-5;
			    	}
			    else if(diceCount[2]==5){
			    	dice2=2;
			    	lastDice2=dice[0]+dice[1]+dice[2]+dice[3]+dice[4]+dice[5]-10;
			    	}
			    else if(diceCount[3]==5){
				    dice2=3;
				    lastDice2=dice[0]+dice[1]+dice[2]+dice[3]+dice[4]+dice[5]-15;
				    }
			    else if(diceCount[5]==5){
			    	dice2=5;
			    	lastDice2=dice[0]+dice[1]+dice[2]+dice[3]+dice[4]+dice[5]-25;
			    }
			    else if(diceCount[6]==5){
			    	dice2=6;
			    	lastDice2=dice[0]+dice[1]+dice[2]+dice[3]+dice[4]+dice[5]-30;
			    	}
				
				if(dice2>dice1) {//比较谁中 五子 的五子大小        
					output.setText("     恭喜您中 五子!!\n     请向前一个状元追得状元饼。");
					zhuangY[ counter%memberNum ]++;						
					zhuangY[ j ]--;
					j=counter%memberNum;
				}
				else if(dice2==dice1)    
					if(lastDice2 > lastDice1){    //若五子相等,比较最后一个色子的大小
						output.setText("      恭喜您中 五子!!\n     请向前一个状元追得状元饼。");
						zhuangY[ counter%memberNum ]++;						
						zhuangY[ j ]--;
						j=counter%memberNum;
					}
					else
						output.setText("     很遗憾,您的点数没有前个状元大 !");
				}
			else output.setText("      很遗憾,您的点数没有前个状元大 !");
			}
	}
	
	//状元
	public void zhuanYuan(){//状元
		if(zhuanYuan==1){//之前无人得过状元
			output.setText("      恭喜您中 状元 啦!!\n     时刻小心后来者追饼! ");
			zhuangY[ counter%memberNum ]++;
			j = counter%memberNum;
		    zhuanYuan--;
		    //记录最后两个色子点数和
		    twoDiceSum1=dice[0]+dice[1]+dice[2]+dice[3]+dice[4]+dice[5]-16;
		    k=1;//记录状元的等级
		    }
		else{
			if(k==1){//之前得状元者的等级和自己一样
				twoDiceSum2=dice[0]+dice[1]+dice[2]+dice[3]+dice[4]+dice[5]-16;//记录最后两个色子点数和
				//比较两个状元两个骰子点数的大小,点数大者为胜
			    if(twoDiceSum2 > twoDiceSum1){
				   output.setText("     恭喜您中 状元!!\n     请向前一个状元追得状元饼。");
				   zhuangY[ counter%memberNum ]++;						
				   zhuangY[ j ]--;
				   j=counter%memberNum;
			    }
			    else
				   output.setText("     很遗憾,您的点数没有前个状元大 !");
			    }
			else output.setText("      很遗憾,您的点数没有前个状元大 !");
			}
	}
	
	//对堂
	public void duiTang(){//榜眼
		if(duiTang==2){//之前每人得过对堂
			output.setText("      恭喜您中 榜眼。可得对堂一个\n      时刻小心别人的追饼。");
			duiT[ counter%memberNum ]++;
			m=counter%memberNum;   //记录第一个得对堂者
		    duiTang--;
		    }
		else if( duiTang==1) {//之前有一人得过对堂
			output.setText("      恭喜您中 榜眼。可得对堂一个\n      时刻小心别人的追饼。");
			duiT[ counter%memberNum ]++;
			s=counter%memberNum; //记录第二个得对堂者
		    duiTang--;
		}
		else //对堂已经没有了
			output.setText("     恭喜您中 榜眼!!\n      但已经没对堂了。");
		}
   //三红
	public void sanHong(){//三红
		if(sanHong>=1){
			output.setText("      恭喜您中 三红!!\n     得三红一个");
			sanH[ counter%memberNum ]++;						
		    sanHong--;
		}
		else 
			output.setText("      恭喜您中 三红!!\n     但三红没有了。");
	}
	
	//四进带二举
	public void siJinErJu(){//四进带二举
			if(siJing>=1 && erJu>=1){
				output.setText("      恭喜您中 四进带二举!!\n      得四进一个,再得二举一个");
				siJ[ counter%memberNum ]++;	
				erJ[ counter%memberNum ]++;	
				siJing--;
				erJu--;
			}
			else if(siJing >=1 && erJu==0){
				output.setText("      恭喜您 四进带二举!!\n     因二举没有了,得四进一个");
				siJ[ counter%memberNum ]++;
				siJing--;
			}
			else if(erJu >= 1 && siJing == 0){
				output.setText("     恭喜您 四进带二举!!\n     因四进没有了,得二举一个");
				erJ[ counter%memberNum ]++;	
				erJu--;
			}
			else
				output.setText("      恭喜您 四进带二举!!\n     但很遗憾,四进和二举都没了。");
			}
	
//	四进带一秀的处理
	public void siJinYiXiu(){//四进带一秀
		if(siJing>=1 && yiXiu>=1){
		output.setText("     恭喜您 四进带一秀!!\n     得四进一个,再得秀才一个");
		siJ[ counter%memberNum ]++;	
		yiX[ counter%memberNum ]++;	
		siJing--;
		yiXiu--;
		}
	    else if(siJing >=1 && yiXiu==0){
		output.setText("     恭喜您 四进带一秀!!\n     因一秀没有了,得四进一个");
		siJ[ counter%memberNum ]++;
		siJing--;
		}
	    else if(yiXiu >= 1 && siJing == 0){
		output.setText("    恭喜您 四进带一秀!!\n      因四进没有了,得一秀一个");
		yiX[ counter%memberNum ]++;	
		yiXiu--;
		}
	    else
		output.setText("     恭喜您 四进带一秀!!\n      但很遗憾,四进和一秀都没了。");
		}
	
//	进士
	public void jinShi(){//进士
		if(siJing>=1){
			output.setText("     恭喜您中 进士!!\n     得四进一个");
			siJ[ counter%memberNum ]++;	
			siJing--;
			}
		else 
			output.setText("     恭喜您中 进士!!\n     但很遗憾,四进没有了。");
		}
   
//	举人
	public void juRen(){//举人
		if(erJu>=1){
			output.setText("     恭喜您中 举人!!\n     得二举一个");
			erJ[ counter%memberNum ]++;	
			erJu--;
			}
		else
			output.setText("     恭喜您中 举人!!\n     但很遗憾,二举没有了。");
		}

//	秀才
	public void xiuCai(){//秀才
		if(yiXiu>=1){
			output.setText("     恭喜您得 秀才!!\n     得一秀一个");
			yiX[ counter%memberNum ]++;	
			yiXiu--;
		}
		else
			output.setText("     恭喜您中 秀才!!\n     但很遗憾,一秀没有了!");
		}
	
	public void paint(Graphics g){
        super.paint(g);
        
        //显示图片
        g.drawImage(back1, 0, 0,this);
        g.drawImage(back2, 376, 0,this);
        g.drawImage(back3, 592, 0,this);
        g.drawImage(back4, 376, 304,this);

        for(i=0;i<=2;i++)
           g.drawImage(point[ dice[i]-1 ], 110+i*60, 105,this );    
        for(i=3;i<=5;i++)
            g.drawImage(point[ dice[i]-1 ], 110+(i-3)*60, 185,this );  
        

	}
	
}

⌨️ 快捷键说明

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