ear*_*est 0 java arrays variables
请帮忙.
我想添加这些选项,其中goodMan并购买蝙蝠,斧头或剑来对抗怪物.
如何创建这3个数组,然后从中获取单个变量.然后使用这些变量来影响游戏的结果?
public static void main(String[] args)
throws IOException
{
int count = 1;
// start both with 1 point
int goodTotal = 50;
int monTotal = 50;
int moneyAmt = 10;
// input switch statement
loop: while (goodTotal > 0 && monTotal > 0) {
System.out.print("Type a letter: ");
System.out.println("\n");
System.out.print("F: Go out and Fight ");
System.out.println("\n");
System.out.print("R: Rest ");
System.out.println("\n");
System.out.print("C: Check Stats ");
System.out.println("\n");
System.out.print("Q: Quit ");
char input = (char) System.in.read();
System.out.println("You typed: " + (char)input);
switch(input) {
case 'f': System.out.println("Continue the game"); continue;
case 'r': System.out.println("Players should rest"); break loop;
case 'c': System.out.println("Checking the status of the game");
System.out.print("Goodman has " + goodTotal + " points and Monster has " + monTotal + " points");
System.out.println("\n"); break loop;
case 'q': System.out.println("Game over");
System.exit(input); break loop;
default: System.out.println("Invalid selection");break;
}
// Set value of minimum and maximum damage
int minDmg = 2;
int maxDmg = 15;
// Get random number;
int damage = minDmg + Double.valueOf(Math.random() * (maxDmg - minDmg)).intValue();
int damage2 = minDmg + Double.valueOf(Math.random() * (maxDmg - minDmg)).intValue();
// remove value of damage from started value to get total value remaining
goodTotal = goodTotal - damage;
monTotal = monTotal - damage2;
// print message if still in the game
if(goodTotal > 0){
System.out.println("Goodman has " + goodTotal + " points left. Not bad, Man! ");
}
// if Goodman survives round 2 print a message of encouragement
if (goodTotal > 0 && count > 1 && count <= 2){
System.out.print("This is encouraging. Goodman has lasted past roundhh " +count+ ". ");
// print new message if Goodman passes round 3
} else if (goodTotal > 0 && count == 3){
System.out.print("Goodman is as strong as Samson. He has lasted round " +count+ " and still looks strong.");
System.out.print(" 10 hit points has been added to your total");
}
if(monTotal > 0){
System.out.println("Wait, Monster has a total of " + monTotal + " points and is still in the game");
}
// exit if have less than 0 point, and print game over. Congratulate the winner
if(goodTotal < 0){
System.out.println("Goodman you are out of the game");
System.out.println("The monster will take over the village. This is sad");
System.out.println("Game Over!");
} else if(monTotal < 0){
System.out.println("Goodman has been victorious");
System.out.println("The monster is dead. The people live!!!!");
System.out.println("Game Over!");
}
System.out.println("This is the end of round " + count +" ");
System.out.println("\n");
count = count + 1;
}
}
Run Code Online (Sandbox Code Playgroud)
Java是面向对象的语言.因此,您可以为Weapon具有三个属性(minDamage,maxDamage和cost)的类建模.然后,您创建该类的实例
Weapon axe = new Weapon(2,4,3);
Run Code Online (Sandbox Code Playgroud)
稍后在代码中进行损坏计算,您可以使用axe.getMinDamage()和axe.getMaxDamage()设置随机函数的限制.