From 6849a0a02379cfa005432911f3c143fd4e42af4f Mon Sep 17 00:00:00 2001 From: Felix Date: Thu, 14 Nov 2024 14:58:54 +0100 Subject: [PATCH] Minor work on animation --- .../pp/mdga/client/Animation/Animation.java | 24 ++++--------------- .../client/Animation/AnimationHandler.java | 16 ++++++++++++- .../mdga/client/Animation/AnimationType.java | 4 ++++ .../mdga/client/Animation/EmptyAnimation.java | 18 ++++++++++++++ .../java/pp/mdga/client/Board/BoardView.java | 9 +++---- .../src/main/java/pp.mdga/effect/Effect.java | 4 ++++ 6 files changed, 50 insertions(+), 25 deletions(-) create mode 100644 Projekte/mdga/client/src/main/java/pp/mdga/client/Animation/AnimationType.java create mode 100644 Projekte/mdga/client/src/main/java/pp/mdga/client/Animation/EmptyAnimation.java create mode 100644 Projekte/mdga/model/src/main/java/pp.mdga/effect/Effect.java diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/Animation/Animation.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/Animation/Animation.java index 604ddd8e..4d87c22e 100644 --- a/Projekte/mdga/client/src/main/java/pp/mdga/client/Animation/Animation.java +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/Animation/Animation.java @@ -1,23 +1,7 @@ package pp.mdga.client.Animation; -import pp.mdga.client.MdgaApp; - -public class Animation { - private MdgaApp app; - - Animation(MdgaApp app_) { - app = app_; - } - - void play() { - - } - - void update(float tpf) { - - } - - boolean isFinished() { - return true; - } +public interface Animation { + void play(); + void stop(); + boolean isOver(); } diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/Animation/AnimationHandler.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/Animation/AnimationHandler.java index cb2017cf..452113e5 100644 --- a/Projekte/mdga/client/src/main/java/pp/mdga/client/Animation/AnimationHandler.java +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/Animation/AnimationHandler.java @@ -5,11 +5,25 @@ public class AnimationHandler { private MdgaApp app; + private Animation animation = null; + public AnimationHandler(MdgaApp app_) { app = app_; } - public void playAnimation() { + public void playAnimation(AnimationType type) { } + + public void update() { + if(null == animation) { + return; + } + + if(animation.isOver()) { + animation = null; + + //trigger next state + } + } } diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/Animation/AnimationType.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/Animation/AnimationType.java new file mode 100644 index 00000000..5d2d0233 --- /dev/null +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/Animation/AnimationType.java @@ -0,0 +1,4 @@ +package pp.mdga.client.Animation; + +public enum AnimationType { +} diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/Animation/EmptyAnimation.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/Animation/EmptyAnimation.java new file mode 100644 index 00000000..ea914547 --- /dev/null +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/Animation/EmptyAnimation.java @@ -0,0 +1,18 @@ +package pp.mdga.client.Animation; + +public class EmptyAnimation implements Animation { + @Override + void play() { + //nothing + } + + @Override + void stop() { + //nothing + } + + @Override + boolean isOver() { + return true; + } +} diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/Board/BoardView.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/Board/BoardView.java index a3c58147..3ad5e1a8 100644 --- a/Projekte/mdga/client/src/main/java/pp/mdga/client/Board/BoardView.java +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/Board/BoardView.java @@ -4,12 +4,13 @@ public class BoardView { private static final float GRID_SIZE = 10.0f; - private static final float GRID_LEVEL = 0.0f; + private static final float GRID_ELEVATION = 0.0f; + private static final int GRID_EXTEND = 11; private static Vector3f gridToWorld(int x, int y) { - assert(x >= 0); - assert(y >= 0); + assert(0 <= x && x < GRID_EXTEND); + assert(0 <= y && y < GRID_EXTEND); - return new Vector3f(GRID_SIZE * x, GRID_LEVEL, GRID_SIZE * y); + return new Vector3f(GRID_SIZE * x, GRID_ELEVATION, GRID_SIZE * y); } } diff --git a/Projekte/mdga/model/src/main/java/pp.mdga/effect/Effect.java b/Projekte/mdga/model/src/main/java/pp.mdga/effect/Effect.java new file mode 100644 index 00000000..7a4168b1 --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp.mdga/effect/Effect.java @@ -0,0 +1,4 @@ +package pp.mdga.effect; + +public interface Effect { +}