-2

更新 原来我只是累了。这里没有任何问题很抱歉浪费您的时间。不用担心,我已将此标记为版主查看。

我的问题是,当我在 java 中翻译 bufferedimage 时,它​​会上下移动,同时在 x 轴上翻译它。为了更好地理解我的问题,请观看:
http ://www.youtube.com/watch?v=stwi1qVakp4

那么我的设置是什么:嗯,我所做的是在我的渲染方法中:

AffineTransform.translate(player_dx,0);

然后我会有一个keylistener,就像:

public void keyPressed(KeyEvent e){
    int key = e.getKeyCode();
    if(key == KeyEvent.VK_RIGHT){
        player_dx = 1;
    }
    if(key == KeyEvent.VK_LEFT){
        player_dx = -1;
    }

}

 public void keyReleased(KeyEvent e){
    int key = e.getKeyCode();
    if(key == KeyEvent.VK_RIGHT){
        player_dx = 0;
    }
    if(key == KeyEvent.VK_LEFT){
        player_dx = 0;
    }

}

我认为这是发生的,因为当我旋转它时,它会改变 x,y 坐标,所以如果它是 90 度,x 和 y 就会改变。我只是不知道我是否可以绕过它。

只要告诉我你是否需要知道其他任何事情。谢谢, Javaman111

4

1 回答 1

2

您的问题在于手臂的代码,而不是角色的仿射变换。这可能与您在每个轴上移动手臂的程度有关,或者您可能错误地颠倒了 X 和 Y。

于 2012-06-30T01:58:35.060 回答