Add some additional methods to AnimationRunner and MapPin
This commit is contained in:
@@ -3,6 +3,8 @@ package com.bartlomiejpluta.base.api.map.layer.object;
|
|||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.Value;
|
import lombok.Value;
|
||||||
|
import org.joml.Vector2i;
|
||||||
|
import org.joml.Vector2ic;
|
||||||
|
|
||||||
@Value
|
@Value
|
||||||
@Builder
|
@Builder
|
||||||
@@ -11,4 +13,8 @@ public class MapPin {
|
|||||||
int layer;
|
int layer;
|
||||||
int x;
|
int x;
|
||||||
int y;
|
int y;
|
||||||
|
|
||||||
|
public Vector2ic toCoordinates() {
|
||||||
|
return new Vector2i(x, y);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,8 +1,10 @@
|
|||||||
package com.bartlomiejpluta.base.lib.animation;
|
package com.bartlomiejpluta.base.lib.animation;
|
||||||
|
|
||||||
import com.bartlomiejpluta.base.api.context.Context;
|
import com.bartlomiejpluta.base.api.context.Context;
|
||||||
|
import com.bartlomiejpluta.base.api.entity.Entity;
|
||||||
import com.bartlomiejpluta.base.api.map.layer.base.Layer;
|
import com.bartlomiejpluta.base.api.map.layer.base.Layer;
|
||||||
import com.bartlomiejpluta.base.api.move.Movable;
|
import com.bartlomiejpluta.base.api.move.Movable;
|
||||||
|
import lombok.NonNull;
|
||||||
import org.joml.Vector2fc;
|
import org.joml.Vector2fc;
|
||||||
|
|
||||||
import java.util.concurrent.CompletableFuture;
|
import java.util.concurrent.CompletableFuture;
|
||||||
@@ -11,4 +13,20 @@ public interface AnimationRunner {
|
|||||||
CompletableFuture<Void> run(Context context, Layer layer, Vector2fc origin);
|
CompletableFuture<Void> run(Context context, Layer layer, Vector2fc origin);
|
||||||
|
|
||||||
CompletableFuture<Void> run(Context context, Layer layer, Movable origin);
|
CompletableFuture<Void> run(Context context, Layer layer, Movable origin);
|
||||||
|
|
||||||
|
default CompletableFuture<Void> run(Context context, Entity entity) {
|
||||||
|
return run(context, entity.getLayer(), entity.getPosition());
|
||||||
|
}
|
||||||
|
|
||||||
|
static SimpleAnimationRunner simple(@NonNull String animationUid) {
|
||||||
|
return new SimpleAnimationRunner(animationUid);
|
||||||
|
}
|
||||||
|
|
||||||
|
static RandomAnimationsRunner random(int count) {
|
||||||
|
return new RandomAnimationsRunner(count);
|
||||||
|
}
|
||||||
|
|
||||||
|
static BulletAnimationRunner bullet(@NonNull String animationUid) {
|
||||||
|
return new BulletAnimationRunner(animationUid);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user