初めてのゲームをコーディングしていますが、メニュー画面が機能しません。以下は私のメニューのコードです。終了ボタンをテストしようとしていますが、どこをクリックしてもプログラムが終了しません。System.out.println(e.getX()+", "+e.getY());
また、自分のmousePressed()
メソッドに追加しようとしましたが、うまくいきませんでした。何も出力されません。私は完全に道に迷っており、助けが必要です。これが愚かな質問である場合は申し訳ありませんが、私はこれに完全に慣れていません! ありがとう!
public class MenuScreen implements Screen {
MyGame game;
OrthographicCamera camera;
SpriteBatch batch;
public MenuScreen(MyGame game) {
this.game = game;
camera = new OrthographicCamera();
camera.setToOrtho(false, 1080, 1920);
batch = new SpriteBatch();
}
public class MouseInput implements MouseListener {
@Override
public void mouseClicked(MouseEvent arg0) {}
@Override
public void mouseEntered(MouseEvent arg0) {}
@Override
public void mouseExited(MouseEvent arg0) {}
@Override
public void mousePressed(MouseEvent e) {
int mx = e.getX();
int my = e.getY();
/**
batch.draw(Assets.sprite_startbutton, 165, 955);
batch.draw(Assets.sprite_tutorialbutton, 325, 790);
batch.draw(Assets.sprite_exitbutton, 365, 700);
batch.end();
*/
//exit button
if (mx >= 365 && mx <= 600) {
if (my >= 700 && my <= 775) {
//Pressed exit button
System.exit(1);
}
}
}
@Override
public void mouseReleased(MouseEvent arg0) {}
}
public void render(float delta) {
Gdx.gl.glClearColor(1F, 1F, 1F, 1F);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
camera.update();
batch.setProjectionMatrix(camera.combined);
batch.begin();
batch.draw(Assets.texture_background, 0, 0);
batch.draw(Assets.sprite_cat, 500, 1350, 750, 263);
//(500, 1350, 750, 263)[Cat on shelf]
//(95, 1600, 900, 316)[Cat starting position]
batch.draw(Assets.sprite_title, 50, 1600);
batch.draw(Assets.sprite_startbutton, 165, 955);
batch.draw(Assets.sprite_tutorialbutton, 325, 790);
batch.draw(Assets.sprite_exitbutton, 365, 700);
batch.end();
}