我正在为游戏制作菜单。它只处于早期阶段。我有一个开始游戏图像,然后当用户超过它是蓝色。当用鼠标左键单击时,它显示开始游戏屏幕。仅包含练习和后退文本。但由于某种原因,我测试鼠标是否在其x,y(对于后退按钮)范围内,如果鼠标左键被单击,则它不起作用。如果我将其更改为鼠标右键,则可以正常工作。我不知道为什么会这样,但这里是处理开始按钮和后退按钮的代码:
private void checkStart(Input i) {
//hover over start
if ((i.getMouseX() > 20 && i.getMouseX() < 267) && (i.getMouseY() > 143 && i.getMouseY() < 165)) {
mouseOverStart = true;
} else {
mouseOverStart = false;
}
if (i.isMousePressed(Input.MOUSE_LEFT_BUTTON)) {
//mouse has been clicked on start button
if ((i.getMouseX() > 20 && i.getMouseX() < 267) && (i.getMouseY() > 143 && i.getMouseY() < 165)) {
drawStartMenu = true;
drawMainMenu = false;
}
}
}
private void checkBack(Input i) {
if ((i.getMouseX() > 20 && i.getMouseX() < 164 ) && (i.getMouseY() > 336 && i.getMouseY() < 358)) {
mouseOverBack = true;
if (i.isMousePressed(Input.MOUSE_LEFT_BUTTON)) {
drawStartMenu = false;
drawMainMenu = true;
}
} else {
mouseOverBack = false;
}
}
这两种方法都在更新方法中调用。