ゲームオーバーになったら画面を初期化する方法
java初心者です、アドベンチャーゲームを作っているのですが
ゲームオーバーになった時にタイトル画面に戻したいです
なので
pChild.removeAll();
jpChild.add(jlChild);
jpChild2.removeAll();
jpChild2.add(jlMain);
としたのですが、反映されていませんでした。
どうしてでしょうか?
そして進む時と戦闘処理のようなものをZキーでしているのですが
コードがとてもわかりづらく幼稚なものになってしまいます。
このコードの改善点を教えてください。知恵を貸してください…
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import java.awt.Font;
import java.awt.Color;
import java.awt.Image;
import java.io.File;
import java.awt.image.BufferedImage;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import java.awt.event.*;
import java.awt.*;
//省略
case KeyEvent.VK_Z :
if (joutai == 0){
Programer(HP,IQ,EQ,kyori);
kyori++; //進む
jlMain.setText(Programer(HP,IQ,EQ,kyori));
int ran = (int)(Math.random()*10);
if (ran == 1){
jlChild.setText(PutEnemy(JHP,JIQ));
joutai = joutai + 1;
}
}
if(joutai == 1){
JHP = JHP - IQ;
jlChild.setText(PutEnemy(JHP,JIQ));
HP = HP - JIQ;
if (HP <=0 ){
jlChild.setText("GAME OVER");
jpChild.removeAll();
jpChild.add(jlChild);
jpChild2.removeAll();
jpChild2.add(jlMain);
}
}