isMousePressed(Input.MOUSE_LEFT_BUTTON)不工作slick2d

时间:2015-01-31 11:24:59

标签: java lwjgl slick2d

我正在为游戏制作菜单。它只处于早期阶段。我有一个开始游戏图像,然后当用户超过它是蓝色。当用鼠标左键单击时,它显示开始游戏屏幕。仅包含练习和后退文本。但由于某种原因,我测试鼠标是否在其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;
    }
}

这两种方法都在更新方法中调用。

0 个答案:

没有答案