저는 오랫동안이 문제에 봉착했습니다.Ascii 기반 게임을 만들려고합니다. JFrame이 표시되지 않습니다
그래서 누군가의 AsciiPanel 라이브러리를 사용하고 있습니다. AsciiPanel이 JFrame에 추가 될 때 Ascii 그래픽이있는 80x24 구식 Windows 명령 줄을 생성하는 라이브러리입니다 (로 게 라이크 등).
AsciiPanel을 JFrame에 추가하려고합니다.
문제는 내가 어디에서나 JFrame을 만들었다 고 생각하지 않는다는 것입니다. 이상한 곳 어디에도 추가하지 않고 코드를 읽을 수 없게 만들지는 않겠습니다. 나중에 커뮤니티에 물어보기로했습니다. 이 코드입니다 :
package com.base.engine;
import java.awt.event.WindowEvent;
import javax.swing.JFrame;
import com.base.game.Game;
import asciiPanel.AsciiPanel;
public class Main extends JFrame{
/**
*
*/
private static final long serialVersionUID = 1L;
private static AsciiPanel asciiPanel;
private static Game game;
public boolean gameRunning = true;
public Main() {
initDisplay();
initGame();
gameLoop();
}
private void initDisplay() {
asciiPanel = new AsciiPanel();
add(asciiPanel);
pack();
}
private static void initGame() {
// TODO Auto-generated method stub
game = new Game();
}
private void gameLoop() {
while(gameRunning = true) {
game.getInput();
game.update();
game.redraw();
}
}
void windowClosing(WindowEvent e) {
gameRunning = false;
}
public static void main(String[] args) {
Main game = new Main();
game.setDefaultCloseOperation(EXIT_ON_CLOSE);
game.setVisible(true);
}
}
가 나는 또한 생각 gameLoop() 나는 그것이 내가 그것을 추가하기 직전에 잘 작동 생각하기 때문에, 그것을 속이고 무슨 수 있습니다.
감사합니다.
당신의 당신이 gameLoop 내부에있는 주문의 각을 제거 봤어을에서 그것을 방지 할 블록 조치()? 루프의 각 부분을 끝내고 잠시 기다릴 수 있도록 잠을 더 주시겠습니까? – Thijser