使用SpriteSheet动画左右行走的精灵

时间:2019-01-25 15:49:51

标签: java animation frames

如何使用SpriteSheet为左右行走的角色设置动画?我有一个带有精确坐标(x,y,宽度,高度)的电子表格。

我可以使用ActionEvent下的箭头键移动角色。目前,此代码在单独的类中。

如果您可以在动画的逐步说明中引用有用的网站,那将是有帮助的(特别是如果角色可以通过ActionEvent移动)。

private void init() {
    BufferedImageLoader loader = new BufferedImageLoader();
    BufferedImage spriteSheet = null;
    try {
        spriteSheet = loader.loadImage("8bitmariowalk.png");
    } catch (IOException ex) {
        Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
    }
    SpriteSheet ss = new SpriteSheet (spriteSheet);

    ArrayList<BufferedImage> sprites = new ArrayList<BufferedImage>();

    sprites.add(ss.grabSprite (4, 99, 26, 32)); //left
    sprites.add(ss.grabSprite (38, 99, 32, 32));
    sprites.add(ss.grabSprite (76, 99, 24, 32));
    sprites.add(ss.grabSprite (112, 101, 28, 30));

    sprites.add(ss.grabSprite (6, 171, 26, 32)); //right
    sprites.add(ss.grabSprite (38, 171, 32, 32));   
    sprites.add(ss.grabSprite (80, 171, 24, 32));   
    sprites.add(ss.grabSprite (121, 173, 28, 30));

    mario = new Animator(sprites);
    mario.setSpeed(200);
    mario.start();

}

0 个答案:

没有答案