Как использовать SpriteSheet для анимации движения персонажа влево и вправо? У меня есть 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();
}