Improve slightly Movable

This commit is contained in:
2021-03-23 09:24:24 +01:00
parent 921463fc14
commit 23accf16df
6 changed files with 21 additions and 5 deletions

View File

@@ -3,11 +3,10 @@ package com.bartlomiejpluta.base.api.animation;
import com.bartlomiejpluta.base.api.map.layer.base.Layer;
import com.bartlomiejpluta.base.api.move.Movable;
import com.bartlomiejpluta.base.internal.logic.Updatable;
import com.bartlomiejpluta.base.internal.object.Placeable;
import com.bartlomiejpluta.base.internal.render.Renderable;
import com.bartlomiejpluta.base.util.path.Path;
public interface Animation extends Placeable, Movable, Renderable, Updatable {
public interface Animation extends Movable, Renderable, Updatable {
void setAnimationSpeed(float speed);

View File

@@ -4,10 +4,9 @@ import com.bartlomiejpluta.base.api.map.layer.object.ObjectLayer;
import com.bartlomiejpluta.base.api.move.Direction;
import com.bartlomiejpluta.base.api.move.Movable;
import com.bartlomiejpluta.base.internal.logic.Updatable;
import com.bartlomiejpluta.base.internal.object.Placeable;
import com.bartlomiejpluta.base.internal.render.Renderable;
public interface Entity extends Placeable, Movable, Renderable, Updatable {
public interface Entity extends Movable, Renderable, Updatable {
Direction getFaceDirection();

View File

@@ -1,9 +1,10 @@
package com.bartlomiejpluta.base.api.move;
import com.bartlomiejpluta.base.internal.object.Placeable;
import org.joml.Vector2fc;
import org.joml.Vector2ic;
public interface Movable {
public interface Movable extends Placeable {
void setStepSize(float x, float y);
Vector2ic getCoordinates();
@@ -12,6 +13,8 @@ public interface Movable {
void setCoordinates(int x, int y);
Vector2fc getPositionOffset();
void setPositionOffset(Vector2fc offset);
void setPositionOffset(float offsetX, float offsetY);

View File

@@ -170,6 +170,11 @@ public abstract class AnimationDelegate implements Animation {
return animation.manhattanDistance(coordinates);
}
@Override
public Vector2fc getPositionOffset() {
return animation.getPositionOffset();
}
@Override
public void setPositionOffset(Vector2fc offset) {
animation.setPositionOffset(offset);

View File

@@ -74,6 +74,11 @@ public abstract class EntityDelegate implements Entity {
return entity.isMoving();
}
@Override
public Vector2fc getPositionOffset() {
return entity.getPositionOffset();
}
@Override
public void setPositionOffset(Vector2fc offset) {
entity.setPositionOffset(offset);

View File

@@ -143,6 +143,11 @@ public abstract class MovableSprite extends AnimatedSprite implements Movable, U
}
}
@Override
public Vector2fc getPositionOffset() {
return positionOffset;
}
@Override
public void setPositionOffset(Vector2fc offset) {
this.positionOffset.x = offset.x();