jeudi 25 février 2016

Java Math.random won't refresh on while loop (of course)

So, I am trying to make a text based RPG. A good starter project, as I am new to all of this. I want to make a critical hit, and math.random seems like the best way to go. Only one problem; when it loops, it doesn't refresh the random. I can assume that that's because it calls it once, and once it's called in, that's it. That's it's value. I want to know of an alternative so it refreshes every time the while loop starts over. I know there are some other bugs in my code; but that's not what I'm focusing on right now. Here's the entire method:`enter code here: public void battleStart(Enemy enemy, Player player){

    while(enemy.health != 0){
    String battle = null;



    int criticalHt = (int)(Math.random() * 10) + 0;

    boolean T = true;
    while(T = true){

    battle = Game.console.next();

    enemy.attackplayer(player);

    if(battle.toLowerCase().contains("skip")){

        System.out.println(criticalHt);

        if(criticalHt == 1){

        player.hitPoints -= enemy.dmg*2;

        System.out.println(Game.toTitleCase(enemy.firstName) + " " + Game.toTitleCase(enemy.lastName) + " has used " + Game.toTitleCase(enemy.attackName) + " for a critical level of " + enemy.dmg*2 + "!.\n Your health is now " + player.hitPoints + ".");

        }

        else{

        player.hitPoints -= enemy.dmg;

        System.out.println(Game.toTitleCase(enemy.firstName) + " " + Game.toTitleCase(enemy.lastName) + " has used " + Game.toTitleCase(enemy.attackName) + ".\n Your health is now " + player.hitPoints + ".");


        System.out.println("Your turn to attack! Use an attack, or type \"skip\" to let your enemy strike.");
        };
                if(battle.contains("skp")){


                };




                }
        /* End while */ }
        }




Aucun commentaire:

Enregistrer un commentaire