上一篇,我们讲到了初始化以及装弹模拟过程:Java项目:俄罗斯赌盘游戏 (上)
这一篇,我们来讲一下这个游戏的关键过程:中枪的概率问题
我们可以根据子弹总共的数量和实弹的数量计算出中弹的百分比,然后用取1~100里的随机数,如果随机数大于百分比,那么就没中弹,否则生命减少一
①中枪概率
设定一个随机数(1~100)
import java.util.Scanner;
import java.util.Random;
public class Gungame{
static Scanner sr=new Scanner(System.in);
static a1=3,a2=3;
static public void main(String[] args)throws InterruptedException{
System.out.println("欢迎来到俄罗斯转盘赌!每人有三条生命,可以选择打自己,也可以选择打别人,如果打自己,下一轮还是自己开枪,否则到别人开枪。");
System.out.println("输入玩家1名字");
player1=sr.nextLine();
System.out.println("输入玩家2名字");
player2=sr.nextLine();
System.out.print("现在开始装弹");
for(int i=1;i<=3;i++){
Thread.sleep(500);//暂停
System.out.print(".");
Thread.sleep(500);
System.out.print(".");
Thread.sleep(500);
System.out.print(".");
Thread.sleep(500);
System.out.print("\n\n\n\n\n\n\n\n\n\n\n");//假清屏
System.out.println("欢迎来到俄罗斯转盘赌!每人有三条命");
}
System.out.println("装弹完毕,五发实弹-五发虚弹");
int shi=5,sum=10,t=1;
while(a1!=0&&a2!=0){//其中一个人死了才能结束游戏
Random rand=new Random();
int r=rand.nextInt(100);//随机数
int h=shi*1.0/sum*100;//中弹概率
}
}
}
②询问打谁
因为在游戏中,可以选择打自己,也可以打别人,但是上一轮如果是朝自己开枪,那么这一轮也是自己选择,否则轮到别人,所以我们定义一个变量来记录到谁选则。
(我们每过一轮都要输出一次生命值)
System.out.println(player1+"的生命数:"+a1+" "+player2+"的生命数:"+a2);
if(t==1){System.out.println(player1+"要打谁?\n1:自己\n2:对方");}
else {System.out.println(player2+"要打谁?\n1:自己\n2:对方");}
import java.util.Scanner;
import java.util.Random;
public class Gungame{
static Scanner sr=new Scanner(System.in);
static a1=3,a2=3;
static public void main(String[] args)throws InterruptedException{
System.out.println("欢迎来到俄罗斯转盘赌!每人有三条生命,可以选择打自己,也可以选择打别人,如果打自己,下一轮还是自己开枪,否则到别人开枪。");
System.out.println("输入玩家1名字");
player1=sr.nextLine();
System.out.println("输入玩家2名字");
player2=sr.nextLine();
System.out.print("现在开始装弹");
for(int i=1;i<=3;i++){
Thread.sleep(500);//暂停
System.out.print(".");
Thread.sleep(500);
System.out.print(".");
Thread.sleep(500);
System.out.print(".");
Thread.sleep(500);
System.out.print("\n\n\n\n\n\n\n\n\n\n\n");//假清屏
System.out.println("欢迎来到俄罗斯转盘赌!每人有三条命");
}
System.out.println("装弹完毕,五发实弹-五发虚弹");
int shi=5,sum=10,t=1;
while(a1!=0&&a2!=0){//其中一个人死了才能结束游戏
Random rand=new Random();
int r=rand.nextInt(100);//随机数
int h=shi*1.0/sum*100;//中弹概率
System.out.println(player1+"的生命数:"+a1+" "+player2+"的生命数:"+a2);
if(t==1){System.out.println(player1+"要打谁?\n1:自己\n2:对方");}
else {System.out.println(player2+"要打谁?\n1:自己\n2:对方");}
}
}
}