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 に答える