を押して画面の状態を Menu から PlayState に変更しようとしていますが、 を押すspace
とspace
、playstate で何かを描画し続けるため、プログラムがループしているように見えます。
コードは次のとおりです。
public class Main {
public enum ScreenState {MENU, PLAYSTATE, RESET}
static ScreenState screenState = ScreenState.MENU;
static Menu menu = new Menu();
public static void main(String[] args) {
// Setting default canvas
StdDraw.clear();
StdDraw.setCanvasSize(800, 700);
StdDraw.setXscale(0, 800);
StdDraw.setYscale(0, 700);
StdDraw.filledRectangle(0,0,800,700);
while(true) {
switch (screenState) {
case MENU:
menu.drawMenu();
// starts game
if (StdDraw.isKeyPressed(' ')) {
screenState = ScreenState.PLAYSTATE;
}
break;
case PLAYSTATE:
StdDraw.setPenColor(StdDraw.BLACK);
StdDraw.filledRectangle(0,0,800,700);
StdDraw.setPenColor(StdDraw.WHITE);
StdDraw.text(50,680,"SCORE");
break;
}
}
}
}