基于Java文本的游戏

时间:2021-03-29 23:11:10

标签: java

import java.util.Random;
import java.util.Scanner;


public class TextGame {
    public static void main(String[]args){
        //System objects
        Scanner userinput = new Scanner(System.in);
        Random Randy = new Random();

        // Enemy variables
        String[]enemies = {"Die-pods", "Cammera-man","backdropdrone","Softbox-er",};    //level 1 enemies

        if(Randy.equals("Die-pods")){
            int DiePodsHealth = 10;
            int DiePodsAttack = 20;
            int diepodsdefense = 2;
        }else if (Randy.equals("Cammera-man")){
            int CammeraManHealth = 30;
            int CammeraManAttack = 10;
            int CammeraManDefense = 5;
        }else if (Randy.equals("backdropdrone")){
            int BackDropDroneHealth = 15;
            int BackDropDroneAttack = 15;
            int BackDropDroneDefense = 1;
        }else if (Randy.equals("Softbox-er")){
            int SoftBoxersHealth = 25;
            int SoftBoxersAttack = 10;
            int SoftBoxersDefense = 5;
        }

        // Player Variables
        int Health = 100;
        int baseAttack = 20;
        int defense = 5;

        boolean running = true;
        System.out.print("Welcome to my base of operations - MR.Shutter");
        GAME:
            while(running){
                int Enemies = Randy.nextInt(enemies.length);
                System.out.println(enemies + "has appeared!");
            }
    }
}

我想让计算机随机选择一个怪物并显示在控制台中。但是,它在不可转换类型“随机”和“字符串”的对象之间给了我很多“相等”。我将如何解决这个问题。

2 个答案:

答案 0 :(得分:2)

我认为您应该使用从敌人数组中选择一个随机索引来有效地选择一个随机敌人。

您可以使用以下行选择随机索引

int randIndex = Randy.nextInt(enemies.length);

答案 1 :(得分:0)

因此,正如我在另一个已回答的问题中所见,您可以尝试的一件事是使用 Random.nextInt(int) 方法,如本答案所示,您可以使用此解决方案的格式:

https://stackoverflow.com/a/21726085/15146457

再执行一次,看看它是否返回更令人满意的输出。