From 649ceeacc6c164314cfc900ad734ebda0bd5ba12 Mon Sep 17 00:00:00 2001 From: Steffen Wilke Date: Tue, 1 Dec 2020 21:59:07 +0100 Subject: [PATCH] Make "flipAnimation" accessible from outside the controller --- .../litiengine/graphics/animation/AnimationController.java | 6 ++++++ .../graphics/animation/CreatureAnimationController.java | 6 ------ .../litiengine/graphics/animation/IAnimationController.java | 1 + 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/de/gurkenlabs/litiengine/graphics/animation/AnimationController.java b/src/de/gurkenlabs/litiengine/graphics/animation/AnimationController.java index b5d53505c..088706861 100644 --- a/src/de/gurkenlabs/litiengine/graphics/animation/AnimationController.java +++ b/src/de/gurkenlabs/litiengine/graphics/animation/AnimationController.java @@ -98,6 +98,12 @@ public AnimationController(final Spritesheet sprite, final boolean loop) { this(new Animation(sprite, loop, Resources.spritesheets().getCustomKeyFrameDurations(sprite))); } + public static Animation flipAnimation(Animation anim, String newSpriteName) { + final BufferedImage flippedImage = Imaging.flipSpritesHorizontally(anim.getSpritesheet()); + Spritesheet flippedSpritesheet = Resources.spritesheets().load(flippedImage, newSpriteName, anim.getSpritesheet().getSpriteWidth(), anim.getSpritesheet().getSpriteHeight()); + return new Animation(flippedSpritesheet, anim.isLooping(), anim.getKeyFrameDurations()); + } + @Override public void add(final Animation animation) { if (animation == null) { diff --git a/src/de/gurkenlabs/litiengine/graphics/animation/CreatureAnimationController.java b/src/de/gurkenlabs/litiengine/graphics/animation/CreatureAnimationController.java index cfbfb9da1..d6c0e0fca 100644 --- a/src/de/gurkenlabs/litiengine/graphics/animation/CreatureAnimationController.java +++ b/src/de/gurkenlabs/litiengine/graphics/animation/CreatureAnimationController.java @@ -325,10 +325,4 @@ private void init(boolean useFlippedSpritesAsFallback) { this.customDeathAnimations = new String[0]; } } - - private Animation flipAnimation(Animation anim, String newSpriteName) { - final BufferedImage flippedImage = Imaging.flipSpritesHorizontally(anim.getSpritesheet()); - Spritesheet flippedSpritesheet = Resources.spritesheets().load(flippedImage, newSpriteName, anim.getSpritesheet().getSpriteWidth(), anim.getSpritesheet().getSpriteHeight()); - return new Animation(flippedSpritesheet, true, anim.getKeyFrameDurations()); - } } diff --git a/src/de/gurkenlabs/litiengine/graphics/animation/IAnimationController.java b/src/de/gurkenlabs/litiengine/graphics/animation/IAnimationController.java index c721430c8..5e9fe9ad6 100644 --- a/src/de/gurkenlabs/litiengine/graphics/animation/IAnimationController.java +++ b/src/de/gurkenlabs/litiengine/graphics/animation/IAnimationController.java @@ -165,6 +165,7 @@ public interface IAnimationController extends IUpdateable { * The name of the {@code Animation} to be played. * * @see AnimationListener#played(Animation) + * @see #getCurrent() */ public void play(final String animationName);