Add basic support for Infinite and N-repeated animations
This commit is contained in:
@@ -1,14 +1,12 @@
|
||||
package com.bartlomiejpluta.base.api.game.animation;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.entity.Direction;
|
||||
import com.bartlomiejpluta.base.api.game.entity.Movement;
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.object.ObjectLayer;
|
||||
import com.bartlomiejpluta.base.api.internal.logic.Updatable;
|
||||
import com.bartlomiejpluta.base.api.internal.object.Placeable;
|
||||
import com.bartlomiejpluta.base.api.internal.render.Renderable;
|
||||
import org.joml.Vector2ic;
|
||||
|
||||
public interface Animation extends Placeable, Renderable, Updatable {
|
||||
|
||||
void setStepSize(float x, float y);
|
||||
|
||||
Vector2ic getCoordinates();
|
||||
@@ -17,17 +15,11 @@ public interface Animation extends Placeable, Renderable, Updatable {
|
||||
|
||||
void setCoordinates(int x, int y);
|
||||
|
||||
Movement prepareMovement(Direction direction);
|
||||
|
||||
Movement getMovement();
|
||||
|
||||
void setSpeed(float speed);
|
||||
|
||||
void setAnimationSpeed(float speed);
|
||||
|
||||
boolean isMoving();
|
||||
Integer getRepeat();
|
||||
|
||||
void onAdd(ObjectLayer layer);
|
||||
void setRepeat(Integer repeat);
|
||||
|
||||
void onRemove(ObjectLayer layer);
|
||||
boolean finished();
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.bartlomiejpluta.base.api.game.context;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.animation.Animation;
|
||||
import com.bartlomiejpluta.base.api.game.camera.Camera;
|
||||
import com.bartlomiejpluta.base.api.game.entity.Entity;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.GUI;
|
||||
@@ -28,6 +29,8 @@ public interface Context extends Updatable, Renderable, Disposable {
|
||||
|
||||
Entity createEntity(String entitySetUid);
|
||||
|
||||
Animation createAnimation(String animationUid);
|
||||
|
||||
Image getImage(String imageUid);
|
||||
|
||||
GUI newGUI();
|
||||
|
||||
@@ -1,9 +1,12 @@
|
||||
package com.bartlomiejpluta.base.api.game.map.layer.base;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.animation.Animation;
|
||||
import com.bartlomiejpluta.base.api.game.map.model.GameMap;
|
||||
import com.bartlomiejpluta.base.api.internal.logic.Updatable;
|
||||
import com.bartlomiejpluta.base.api.internal.render.Renderable;
|
||||
|
||||
public interface Layer extends Renderable, Updatable {
|
||||
GameMap getMap();
|
||||
|
||||
void pushAnimation(Animation animation);
|
||||
}
|
||||
|
||||
@@ -17,6 +17,8 @@ public interface GameMap {
|
||||
|
||||
Vector2fc getSize();
|
||||
|
||||
Vector2fc getStepSize();
|
||||
|
||||
TileLayer getTileLayer(int layerIndex);
|
||||
|
||||
ImageLayer getImageLayer(int layerIndex);
|
||||
|
||||
Reference in New Issue
Block a user