0

我想为整个程序设置一个“if-then”语句。我想:

if (health <= 0) {
  JOptionPane.showMessageDialog(null, "You lost");
}

我无法让它正常工作。我正在尝试制作一个非常基本的基于文​​本的游戏,它不会经常检查健康状况。我不知道如何让它做到这一点,而不是在每次损坏时都写它。

4

2 回答 2

3

我不确定你是如何实现伤害的,但如果它在一个方法中,你可以这样做:

private void takeDamage(double damage)
{
  // Take the damage here. Then check the health.
  if (health <= 0) 
  {
    // Print the you lost message.
  }
}
于 2013-09-23T01:46:47.863 回答
2

创建一个造成伤害和治疗的功能,例如:

public void changeHealth(int amount) {
    health += amount;
    if (health <= 0) {
        JOptionPane.showMessageDialog(null, "You lost");
    }
}

然后,例如,做

changeHealth(-10);

代替

health -= 10

最好有一个Player照顾健康和武器之类的课程,但这对你来说可能太高级了。你可以这样开始:

public class Player {
    private int health;
    public Player(int startHealth) {
        this.health = startHealth;
    }
    public void changeHealth(int amount) {
        // ...
    }
}

将其保存在一个名为 的文件中Player.java,并像这样使用它:

Player p = new Player(100); // create a Player with 100 hp
p.changeHealth(-10); // ouch

在此处了解有关 OOP 的更多信息

于 2013-09-23T01:47:04.610 回答