基本的に私はキャラクターに健康を追加する必要があるゲームを作っています。プレイヤーがクモのヒット ボックスに当たったときに、ヘルスが変化し、フレームが再描画されるようにします。私はそれを正しくやっているように感じます。これが私のコードです:
Frame.java
:
public static int redHealth;
public static int blueHealth;
public static void getBlueHealth(int health) {
health = redHealth;
}
public static void getRedHealth(int health) {
health = blueHealth;
}
// Create health labels
public static JLabel redHealthLabel = new JLabel("Health: " + redHealth);
public static JLabel blueHealthLabel = new JLabel("Health: " + blueHealth);
Key.java
:
if (Frame.spiderObj.intersects(Frame.blueCharacterObj)) {
System.out.println("hit spider");
Frame.getBlueHealth(97);
Frame.frame.repaint();
System.out.println(Frame.redHealth + "" + Frame.blueHealth);
}
ご覧のとおり97
、パラメータとしてgetRedHealth()
andgetBlueHealth()
メソッドに渡し、これを equal redHealth
andに設定しblueHealth
ます。ただし、ゲームを実行してスパイダーをヒットすると、出力されhit spider
ますが、ヘルスは更新されません。
助けて?