如何使对象跟随房屋光标移动?

时间:2019-03-13 20:40:55

标签: java graphics mouselistener

在我的游戏中,我想使一个物体跟随我的鼠标。鼠标坐标与渲染的地图的坐标不相等,因为在地图移动以模拟运动时,鼠标坐标始于左上角或屏幕。

这是我到目前为止所拥有的:

public void update() {  //called every game tick, ~60/s
    move();
}   

protected void move() {
    if(Mouse.getB() == 1 && !stray) {
        x += permX = speed * Math.cos(Math.atan2((Mouse.getY() - (Game.getWindowHeight() / 2)), (Mouse.getX() - (Game.getWindowWidth() / 2))));
        y += permY = speed * Math.sin(Math.atan2((Mouse.getY() - (Game.getWindowHeight() / 2)), (Mouse.getX() - (Game.getWindowWidth() / 2))));
    }else {
        stray = true;
        x += permX;
        y += permY;
    }
}

使用上面的代码,对象将根据其相对于窗口中心的位置对鼠标移动做出反应,并在释放左键时保留当前动量。

0 个答案:

没有答案