Refactor :api structure
Refactored API structure to following packages: * `api` - contains essential API classes * `lib` - contains ready-to-use snippets implemented on `api` * `util` - contains utility classes * `internal` - contains internal classes that are not supposed to be used by user
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
package com.bartlomiejpluta.base.api.ai;
|
||||
|
||||
import com.bartlomiejpluta.base.api.map.layer.object.ObjectLayer;
|
||||
|
||||
@FunctionalInterface
|
||||
public interface AI {
|
||||
void nextActivity(ObjectLayer layer, float dt);
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
package com.bartlomiejpluta.base.api.ai;
|
||||
|
||||
import com.bartlomiejpluta.base.api.entity.Entity;
|
||||
|
||||
public interface NPC extends Entity {
|
||||
AI getStrategy();
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
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 {
|
||||
|
||||
void setAnimationSpeed(float speed);
|
||||
|
||||
Integer getRepeat();
|
||||
|
||||
void setRepeat(Integer repeat);
|
||||
|
||||
void followPath(Path<Animation> path, Integer repeat, boolean finishOnEnd, boolean finishOnFail);
|
||||
|
||||
void onAdd(Layer layer);
|
||||
|
||||
void onFinish(Layer layer);
|
||||
|
||||
void finish();
|
||||
|
||||
boolean finished();
|
||||
}
|
||||
@@ -1,13 +1,13 @@
|
||||
package com.bartlomiejpluta.base.api.game.animation;
|
||||
package com.bartlomiejpluta.base.api.animation;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.camera.Camera;
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.base.Layer;
|
||||
import com.bartlomiejpluta.base.api.game.move.Direction;
|
||||
import com.bartlomiejpluta.base.api.game.move.Movement;
|
||||
import com.bartlomiejpluta.base.api.game.screen.Screen;
|
||||
import com.bartlomiejpluta.base.api.internal.object.Placeable;
|
||||
import com.bartlomiejpluta.base.api.internal.render.ShaderManager;
|
||||
import com.bartlomiejpluta.base.api.util.path.Path;
|
||||
import com.bartlomiejpluta.base.api.camera.Camera;
|
||||
import com.bartlomiejpluta.base.api.map.layer.base.Layer;
|
||||
import com.bartlomiejpluta.base.api.move.Direction;
|
||||
import com.bartlomiejpluta.base.api.move.Movement;
|
||||
import com.bartlomiejpluta.base.api.screen.Screen;
|
||||
import com.bartlomiejpluta.base.internal.object.Placeable;
|
||||
import com.bartlomiejpluta.base.internal.render.ShaderManager;
|
||||
import com.bartlomiejpluta.base.util.path.Path;
|
||||
import org.joml.Matrix4fc;
|
||||
import org.joml.Vector2fc;
|
||||
import org.joml.Vector2ic;
|
||||
@@ -0,0 +1,12 @@
|
||||
package com.bartlomiejpluta.base.api.camera;
|
||||
|
||||
import com.bartlomiejpluta.base.api.screen.Screen;
|
||||
import com.bartlomiejpluta.base.internal.object.Placeable;
|
||||
import com.bartlomiejpluta.base.internal.render.ShaderManager;
|
||||
import org.joml.Matrix4fc;
|
||||
|
||||
public interface Camera extends Placeable {
|
||||
Matrix4fc computeViewModelMatrix(Matrix4fc modelMatrix);
|
||||
|
||||
void render(Screen screen, ShaderManager shaderManager);
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
package com.bartlomiejpluta.base.api.context;
|
||||
|
||||
import com.bartlomiejpluta.base.api.animation.Animation;
|
||||
import com.bartlomiejpluta.base.api.camera.Camera;
|
||||
import com.bartlomiejpluta.base.api.entity.Entity;
|
||||
import com.bartlomiejpluta.base.api.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.image.Image;
|
||||
import com.bartlomiejpluta.base.api.input.Input;
|
||||
import com.bartlomiejpluta.base.api.runner.GameRunner;
|
||||
import com.bartlomiejpluta.base.api.screen.Screen;
|
||||
import com.bartlomiejpluta.base.internal.gc.Disposable;
|
||||
import com.bartlomiejpluta.base.internal.logic.Updatable;
|
||||
import com.bartlomiejpluta.base.internal.render.Renderable;
|
||||
|
||||
public interface Context extends Updatable, Renderable, Disposable {
|
||||
GameRunner getGameRunner();
|
||||
|
||||
Screen getScreen();
|
||||
|
||||
Camera getCamera();
|
||||
|
||||
Input getInput();
|
||||
|
||||
String getProjectName();
|
||||
|
||||
void openMap(String mapUid);
|
||||
|
||||
void closeMap();
|
||||
|
||||
Entity createEntity(String entitySetUid);
|
||||
|
||||
Animation createAnimation(String animationUid);
|
||||
|
||||
Image getImage(String imageUid);
|
||||
|
||||
GUI newGUI();
|
||||
|
||||
boolean isRunning();
|
||||
|
||||
void close();
|
||||
|
||||
boolean isPaused();
|
||||
|
||||
void pause();
|
||||
|
||||
void resume();
|
||||
|
||||
boolean togglePause();
|
||||
|
||||
void init(Screen screen, Input input, Camera camera);
|
||||
|
||||
void input(Input input);
|
||||
}
|
||||
@@ -1,11 +1,11 @@
|
||||
package com.bartlomiejpluta.base.api.game.entity;
|
||||
package com.bartlomiejpluta.base.api.entity;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.object.ObjectLayer;
|
||||
import com.bartlomiejpluta.base.api.game.move.Direction;
|
||||
import com.bartlomiejpluta.base.api.game.move.Movable;
|
||||
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 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 {
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
package com.bartlomiejpluta.base.api.game.entity;
|
||||
package com.bartlomiejpluta.base.api.entity;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.camera.Camera;
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.object.ObjectLayer;
|
||||
import com.bartlomiejpluta.base.api.game.move.Direction;
|
||||
import com.bartlomiejpluta.base.api.game.move.Movement;
|
||||
import com.bartlomiejpluta.base.api.game.screen.Screen;
|
||||
import com.bartlomiejpluta.base.api.internal.object.Placeable;
|
||||
import com.bartlomiejpluta.base.api.internal.render.ShaderManager;
|
||||
import com.bartlomiejpluta.base.api.camera.Camera;
|
||||
import com.bartlomiejpluta.base.api.map.layer.object.ObjectLayer;
|
||||
import com.bartlomiejpluta.base.api.move.Direction;
|
||||
import com.bartlomiejpluta.base.api.move.Movement;
|
||||
import com.bartlomiejpluta.base.api.screen.Screen;
|
||||
import com.bartlomiejpluta.base.internal.object.Placeable;
|
||||
import com.bartlomiejpluta.base.internal.render.ShaderManager;
|
||||
import org.joml.Matrix4fc;
|
||||
import org.joml.Vector2fc;
|
||||
import org.joml.Vector2ic;
|
||||
@@ -1,8 +0,0 @@
|
||||
package com.bartlomiejpluta.base.api.game.ai;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.object.ObjectLayer;
|
||||
|
||||
@FunctionalInterface
|
||||
public interface AI {
|
||||
void nextActivity(ObjectLayer layer, float dt);
|
||||
}
|
||||
@@ -1,7 +0,0 @@
|
||||
package com.bartlomiejpluta.base.api.game.ai;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.entity.Entity;
|
||||
|
||||
public interface NPC extends Entity {
|
||||
AI getStrategy();
|
||||
}
|
||||
@@ -1,27 +0,0 @@
|
||||
package com.bartlomiejpluta.base.api.game.animation;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.base.Layer;
|
||||
import com.bartlomiejpluta.base.api.game.move.Movable;
|
||||
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 com.bartlomiejpluta.base.api.util.path.Path;
|
||||
|
||||
public interface Animation extends Placeable, Movable, Renderable, Updatable {
|
||||
|
||||
void setAnimationSpeed(float speed);
|
||||
|
||||
Integer getRepeat();
|
||||
|
||||
void setRepeat(Integer repeat);
|
||||
|
||||
void followPath(Path<Animation> path, Integer repeat, boolean finishOnEnd, boolean finishOnFail);
|
||||
|
||||
void onAdd(Layer layer);
|
||||
|
||||
void onFinish(Layer layer);
|
||||
|
||||
void finish();
|
||||
|
||||
boolean finished();
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
package com.bartlomiejpluta.base.api.game.camera;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.screen.Screen;
|
||||
import com.bartlomiejpluta.base.api.internal.object.Placeable;
|
||||
import com.bartlomiejpluta.base.api.internal.render.ShaderManager;
|
||||
import org.joml.Matrix4fc;
|
||||
|
||||
public interface Camera extends Placeable {
|
||||
Matrix4fc computeViewModelMatrix(Matrix4fc modelMatrix);
|
||||
|
||||
void render(Screen screen, ShaderManager shaderManager);
|
||||
}
|
||||
@@ -1,53 +0,0 @@
|
||||
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;
|
||||
import com.bartlomiejpluta.base.api.game.image.Image;
|
||||
import com.bartlomiejpluta.base.api.game.input.Input;
|
||||
import com.bartlomiejpluta.base.api.game.runner.GameRunner;
|
||||
import com.bartlomiejpluta.base.api.game.screen.Screen;
|
||||
import com.bartlomiejpluta.base.api.internal.gc.Disposable;
|
||||
import com.bartlomiejpluta.base.api.internal.logic.Updatable;
|
||||
import com.bartlomiejpluta.base.api.internal.render.Renderable;
|
||||
|
||||
public interface Context extends Updatable, Renderable, Disposable {
|
||||
GameRunner getGameRunner();
|
||||
|
||||
Screen getScreen();
|
||||
|
||||
Camera getCamera();
|
||||
|
||||
Input getInput();
|
||||
|
||||
String getProjectName();
|
||||
|
||||
void openMap(String mapUid);
|
||||
|
||||
void closeMap();
|
||||
|
||||
Entity createEntity(String entitySetUid);
|
||||
|
||||
Animation createAnimation(String animationUid);
|
||||
|
||||
Image getImage(String imageUid);
|
||||
|
||||
GUI newGUI();
|
||||
|
||||
boolean isRunning();
|
||||
|
||||
void close();
|
||||
|
||||
boolean isPaused();
|
||||
|
||||
void pause();
|
||||
|
||||
void resume();
|
||||
|
||||
boolean togglePause();
|
||||
|
||||
void init(Screen screen, Input input, Camera camera);
|
||||
|
||||
void input(Input input);
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.base;
|
||||
|
||||
public interface Paint {
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.component;
|
||||
|
||||
public interface Container extends Component {
|
||||
}
|
||||
@@ -1,18 +0,0 @@
|
||||
package com.bartlomiejpluta.base.api.game.map.handler;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.context.Context;
|
||||
import com.bartlomiejpluta.base.api.game.input.Input;
|
||||
import com.bartlomiejpluta.base.api.game.map.model.GameMap;
|
||||
import com.bartlomiejpluta.base.api.game.screen.Screen;
|
||||
|
||||
public interface MapHandler {
|
||||
void onCreate(Context context, GameMap map);
|
||||
|
||||
void onOpen(Context context, GameMap map);
|
||||
|
||||
void input(Input input);
|
||||
|
||||
void update(Context context, GameMap map, float dt);
|
||||
|
||||
void postRender(Screen screen);
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
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);
|
||||
}
|
||||
@@ -1,6 +0,0 @@
|
||||
package com.bartlomiejpluta.base.api.game.map.layer.object;
|
||||
|
||||
public enum PassageAbility {
|
||||
BLOCK,
|
||||
ALLOW
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
package com.bartlomiejpluta.base.api.game.rule;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.entity.Entity;
|
||||
|
||||
public interface Rule {
|
||||
boolean when(Entity entity);
|
||||
|
||||
void then(Entity entity);
|
||||
}
|
||||
@@ -1,13 +0,0 @@
|
||||
package com.bartlomiejpluta.base.api.game.runner;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.context.Context;
|
||||
import com.bartlomiejpluta.base.api.game.input.Input;
|
||||
import com.bartlomiejpluta.base.api.internal.gc.Disposable;
|
||||
|
||||
public interface GameRunner extends Disposable {
|
||||
void init(Context context);
|
||||
|
||||
void input(Input input);
|
||||
|
||||
void update(float dt);
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.base;
|
||||
package com.bartlomiejpluta.base.api.gui.base;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.input.KeyEvent;
|
||||
import com.bartlomiejpluta.base.api.input.KeyEvent;
|
||||
|
||||
public abstract class BaseWidget implements Widget {
|
||||
protected Widget parent;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.base;
|
||||
package com.bartlomiejpluta.base.api.gui.base;
|
||||
|
||||
public interface Color {
|
||||
void setRGB(float red, float green, float blue);
|
||||
@@ -1,10 +1,10 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.base;
|
||||
package com.bartlomiejpluta.base.api.gui.base;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.gui.component.Component;
|
||||
import com.bartlomiejpluta.base.api.game.gui.window.Window;
|
||||
import com.bartlomiejpluta.base.api.game.input.KeyEventHandler;
|
||||
import com.bartlomiejpluta.base.api.internal.gc.Disposable;
|
||||
import com.bartlomiejpluta.base.api.internal.render.Renderable;
|
||||
import com.bartlomiejpluta.base.api.gui.component.Component;
|
||||
import com.bartlomiejpluta.base.api.gui.window.Window;
|
||||
import com.bartlomiejpluta.base.api.input.KeyEventHandler;
|
||||
import com.bartlomiejpluta.base.internal.gc.Disposable;
|
||||
import com.bartlomiejpluta.base.internal.render.Renderable;
|
||||
|
||||
public interface GUI extends Renderable, Disposable, KeyEventHandler {
|
||||
int ALIGN_LEFT = 1 << 0;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.base;
|
||||
package com.bartlomiejpluta.base.api.gui.base;
|
||||
|
||||
public interface Image {
|
||||
int getWidth();
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.base;
|
||||
package com.bartlomiejpluta.base.api.gui.base;
|
||||
|
||||
public enum LineCap {
|
||||
BUTT,
|
||||
@@ -0,0 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.gui.base;
|
||||
|
||||
public interface Paint {
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.base;
|
||||
package com.bartlomiejpluta.base.api.gui.base;
|
||||
|
||||
public enum SizeMode {
|
||||
AUTO,
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.base;
|
||||
package com.bartlomiejpluta.base.api.gui.base;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.input.KeyEventHandler;
|
||||
import com.bartlomiejpluta.base.api.game.screen.Screen;
|
||||
import com.bartlomiejpluta.base.api.input.KeyEventHandler;
|
||||
import com.bartlomiejpluta.base.api.screen.Screen;
|
||||
|
||||
public interface Widget extends KeyEventHandler {
|
||||
Widget getParent();
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.base;
|
||||
package com.bartlomiejpluta.base.api.gui.base;
|
||||
|
||||
public enum WindingDirection {
|
||||
CLOCKWISE,
|
||||
@@ -1,9 +1,9 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.component;
|
||||
package com.bartlomiejpluta.base.api.gui.component;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.context.Context;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.SizeMode;
|
||||
import com.bartlomiejpluta.base.api.game.screen.Screen;
|
||||
import com.bartlomiejpluta.base.api.context.Context;
|
||||
import com.bartlomiejpluta.base.api.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.gui.base.SizeMode;
|
||||
import com.bartlomiejpluta.base.api.screen.Screen;
|
||||
|
||||
public class AbsoluteLayout extends BaseContainer {
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.component;
|
||||
package com.bartlomiejpluta.base.api.gui.component;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.context.Context;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.BaseWidget;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.context.Context;
|
||||
import com.bartlomiejpluta.base.api.gui.base.BaseWidget;
|
||||
import com.bartlomiejpluta.base.api.gui.base.GUI;
|
||||
|
||||
import static java.util.Collections.emptyList;
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.component;
|
||||
package com.bartlomiejpluta.base.api.gui.component;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.context.Context;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.game.input.KeyEvent;
|
||||
import com.bartlomiejpluta.base.api.context.Context;
|
||||
import com.bartlomiejpluta.base.api.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.input.KeyEvent;
|
||||
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
@@ -1,9 +1,9 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.component;
|
||||
package com.bartlomiejpluta.base.api.gui.component;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.context.Context;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.SizeMode;
|
||||
import com.bartlomiejpluta.base.api.game.screen.Screen;
|
||||
import com.bartlomiejpluta.base.api.context.Context;
|
||||
import com.bartlomiejpluta.base.api.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.gui.base.SizeMode;
|
||||
import com.bartlomiejpluta.base.api.screen.Screen;
|
||||
|
||||
public class BorderLayout extends BaseContainer {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.component;
|
||||
package com.bartlomiejpluta.base.api.gui.component;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.Widget;
|
||||
import com.bartlomiejpluta.base.api.gui.base.Widget;
|
||||
|
||||
public interface Component extends Widget {
|
||||
Iterable<Component> getChildren();
|
||||
@@ -1,8 +1,8 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.component;
|
||||
package com.bartlomiejpluta.base.api.gui.component;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.context.Context;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.game.screen.Screen;
|
||||
import com.bartlomiejpluta.base.api.context.Context;
|
||||
import com.bartlomiejpluta.base.api.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.screen.Screen;
|
||||
|
||||
import static java.util.Objects.requireNonNull;
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.gui.component;
|
||||
|
||||
public interface Container extends Component {
|
||||
}
|
||||
@@ -1,8 +1,8 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.component;
|
||||
package com.bartlomiejpluta.base.api.gui.component;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.context.Context;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.game.screen.Screen;
|
||||
import com.bartlomiejpluta.base.api.context.Context;
|
||||
import com.bartlomiejpluta.base.api.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.screen.Screen;
|
||||
|
||||
public class HLayout extends BaseContainer {
|
||||
protected float offsetX = 0.0f;
|
||||
@@ -1,10 +1,10 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.component;
|
||||
package com.bartlomiejpluta.base.api.gui.component;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.context.Context;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.game.input.Key;
|
||||
import com.bartlomiejpluta.base.api.game.input.KeyAction;
|
||||
import com.bartlomiejpluta.base.api.game.input.KeyEvent;
|
||||
import com.bartlomiejpluta.base.api.context.Context;
|
||||
import com.bartlomiejpluta.base.api.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.input.Key;
|
||||
import com.bartlomiejpluta.base.api.input.KeyAction;
|
||||
import com.bartlomiejpluta.base.api.input.KeyEvent;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.component;
|
||||
package com.bartlomiejpluta.base.api.gui.component;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.context.Context;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.SizeMode;
|
||||
import com.bartlomiejpluta.base.api.game.input.Key;
|
||||
import com.bartlomiejpluta.base.api.game.input.KeyAction;
|
||||
import com.bartlomiejpluta.base.api.game.input.KeyEvent;
|
||||
import com.bartlomiejpluta.base.api.game.screen.Screen;
|
||||
import com.bartlomiejpluta.base.api.context.Context;
|
||||
import com.bartlomiejpluta.base.api.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.gui.base.SizeMode;
|
||||
import com.bartlomiejpluta.base.api.input.Key;
|
||||
import com.bartlomiejpluta.base.api.input.KeyAction;
|
||||
import com.bartlomiejpluta.base.api.input.KeyEvent;
|
||||
import com.bartlomiejpluta.base.api.screen.Screen;
|
||||
|
||||
import static com.bartlomiejpluta.base.api.util.math.MathUtil.clamp;
|
||||
import static com.bartlomiejpluta.base.util.math.MathUtil.clamp;
|
||||
import static java.lang.Math.*;
|
||||
|
||||
public class HScrollableLayout extends HLayout {
|
||||
@@ -1,10 +1,10 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.component;
|
||||
package com.bartlomiejpluta.base.api.gui.component;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.context.Context;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.Image;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.Paint;
|
||||
import com.bartlomiejpluta.base.api.game.screen.Screen;
|
||||
import com.bartlomiejpluta.base.api.context.Context;
|
||||
import com.bartlomiejpluta.base.api.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.gui.base.Image;
|
||||
import com.bartlomiejpluta.base.api.gui.base.Paint;
|
||||
import com.bartlomiejpluta.base.api.screen.Screen;
|
||||
|
||||
public class ImageView extends BaseComponent {
|
||||
private final Paint paint;
|
||||
@@ -1,9 +1,9 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.component;
|
||||
package com.bartlomiejpluta.base.api.gui.component;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.context.Context;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.Color;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.game.screen.Screen;
|
||||
import com.bartlomiejpluta.base.api.context.Context;
|
||||
import com.bartlomiejpluta.base.api.gui.base.Color;
|
||||
import com.bartlomiejpluta.base.api.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.screen.Screen;
|
||||
|
||||
import static java.util.Objects.requireNonNull;
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.component;
|
||||
package com.bartlomiejpluta.base.api.gui.component;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.context.Context;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.game.screen.Screen;
|
||||
import com.bartlomiejpluta.base.api.context.Context;
|
||||
import com.bartlomiejpluta.base.api.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.screen.Screen;
|
||||
|
||||
public class VLayout extends BaseContainer {
|
||||
protected float offsetX = 0.0f;
|
||||
@@ -1,10 +1,10 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.component;
|
||||
package com.bartlomiejpluta.base.api.gui.component;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.context.Context;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.game.input.Key;
|
||||
import com.bartlomiejpluta.base.api.game.input.KeyAction;
|
||||
import com.bartlomiejpluta.base.api.game.input.KeyEvent;
|
||||
import com.bartlomiejpluta.base.api.context.Context;
|
||||
import com.bartlomiejpluta.base.api.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.input.Key;
|
||||
import com.bartlomiejpluta.base.api.input.KeyAction;
|
||||
import com.bartlomiejpluta.base.api.input.KeyEvent;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.component;
|
||||
package com.bartlomiejpluta.base.api.gui.component;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.context.Context;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.SizeMode;
|
||||
import com.bartlomiejpluta.base.api.game.input.Key;
|
||||
import com.bartlomiejpluta.base.api.game.input.KeyAction;
|
||||
import com.bartlomiejpluta.base.api.game.input.KeyEvent;
|
||||
import com.bartlomiejpluta.base.api.game.screen.Screen;
|
||||
import com.bartlomiejpluta.base.api.context.Context;
|
||||
import com.bartlomiejpluta.base.api.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.gui.base.SizeMode;
|
||||
import com.bartlomiejpluta.base.api.input.Key;
|
||||
import com.bartlomiejpluta.base.api.input.KeyAction;
|
||||
import com.bartlomiejpluta.base.api.input.KeyEvent;
|
||||
import com.bartlomiejpluta.base.api.screen.Screen;
|
||||
|
||||
import static com.bartlomiejpluta.base.api.util.math.MathUtil.clamp;
|
||||
import static com.bartlomiejpluta.base.util.math.MathUtil.clamp;
|
||||
import static java.lang.Math.*;
|
||||
|
||||
public class VScrollableLayout extends VLayout {
|
||||
@@ -1,11 +1,11 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.window;
|
||||
package com.bartlomiejpluta.base.api.gui.window;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.context.Context;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.BaseWidget;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.game.gui.component.Component;
|
||||
import com.bartlomiejpluta.base.api.game.input.KeyEvent;
|
||||
import com.bartlomiejpluta.base.api.game.screen.Screen;
|
||||
import com.bartlomiejpluta.base.api.context.Context;
|
||||
import com.bartlomiejpluta.base.api.gui.base.BaseWidget;
|
||||
import com.bartlomiejpluta.base.api.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.gui.component.Component;
|
||||
import com.bartlomiejpluta.base.api.input.KeyEvent;
|
||||
import com.bartlomiejpluta.base.api.screen.Screen;
|
||||
|
||||
import static java.util.Objects.requireNonNull;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.window;
|
||||
package com.bartlomiejpluta.base.api.gui.window;
|
||||
|
||||
public enum DisplayMode {
|
||||
DISPLAY_STACK,
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.window;
|
||||
package com.bartlomiejpluta.base.api.gui.window;
|
||||
|
||||
public interface Inflatable {
|
||||
default void onInflate() {
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.window;
|
||||
package com.bartlomiejpluta.base.api.gui.window;
|
||||
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.window;
|
||||
package com.bartlomiejpluta.base.api.gui.window;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.Widget;
|
||||
import com.bartlomiejpluta.base.api.game.gui.component.Component;
|
||||
import com.bartlomiejpluta.base.api.gui.base.Widget;
|
||||
import com.bartlomiejpluta.base.api.gui.component.Component;
|
||||
|
||||
public interface Window extends Widget {
|
||||
void setContent(Component component);
|
||||
@@ -1,10 +1,10 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.window;
|
||||
package com.bartlomiejpluta.base.api.gui.window;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.BaseWidget;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.game.gui.base.SizeMode;
|
||||
import com.bartlomiejpluta.base.api.game.input.KeyEvent;
|
||||
import com.bartlomiejpluta.base.api.game.screen.Screen;
|
||||
import com.bartlomiejpluta.base.api.gui.base.BaseWidget;
|
||||
import com.bartlomiejpluta.base.api.gui.base.GUI;
|
||||
import com.bartlomiejpluta.base.api.gui.base.SizeMode;
|
||||
import com.bartlomiejpluta.base.api.input.KeyEvent;
|
||||
import com.bartlomiejpluta.base.api.screen.Screen;
|
||||
|
||||
import java.util.Deque;
|
||||
import java.util.LinkedList;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.gui.window;
|
||||
package com.bartlomiejpluta.base.api.gui.window;
|
||||
|
||||
public enum WindowPosition {
|
||||
TOP,
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.bartlomiejpluta.base.api.game.image;
|
||||
package com.bartlomiejpluta.base.api.image;
|
||||
|
||||
import com.bartlomiejpluta.base.api.internal.object.Placeable;
|
||||
import com.bartlomiejpluta.base.api.internal.render.Renderable;
|
||||
import com.bartlomiejpluta.base.internal.object.Placeable;
|
||||
import com.bartlomiejpluta.base.internal.render.Renderable;
|
||||
|
||||
public interface Image extends Placeable, Renderable {
|
||||
int getPrimaryWidth();
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.input;
|
||||
package com.bartlomiejpluta.base.api.input;
|
||||
|
||||
public interface Input {
|
||||
boolean isKeyPressed(Key key);
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.input;
|
||||
package com.bartlomiejpluta.base.api.input;
|
||||
|
||||
public interface InputEvent {
|
||||
boolean isConsumed();
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.input;
|
||||
package com.bartlomiejpluta.base.api.input;
|
||||
|
||||
public enum Key {
|
||||
KEY_SPACE,
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.input;
|
||||
package com.bartlomiejpluta.base.api.input;
|
||||
|
||||
public enum KeyAction {
|
||||
PRESS,
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.input;
|
||||
package com.bartlomiejpluta.base.api.input;
|
||||
|
||||
public interface KeyEvent extends InputEvent {
|
||||
Key getKey();
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.input;
|
||||
package com.bartlomiejpluta.base.api.input;
|
||||
|
||||
public interface KeyEventHandler {
|
||||
void handleKeyEvent(KeyEvent event);
|
||||
@@ -1,8 +0,0 @@
|
||||
package com.bartlomiejpluta.base.api.internal.render;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.camera.Camera;
|
||||
import com.bartlomiejpluta.base.api.game.screen.Screen;
|
||||
|
||||
public interface Renderable {
|
||||
void render(Screen screen, Camera camera, ShaderManager shaderManager);
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.bartlomiejpluta.base.api.map.handler;
|
||||
|
||||
import com.bartlomiejpluta.base.api.context.Context;
|
||||
import com.bartlomiejpluta.base.api.input.Input;
|
||||
import com.bartlomiejpluta.base.api.map.model.GameMap;
|
||||
import com.bartlomiejpluta.base.api.screen.Screen;
|
||||
|
||||
public interface MapHandler {
|
||||
void onCreate(Context context, GameMap map);
|
||||
|
||||
void onOpen(Context context, GameMap map);
|
||||
|
||||
void input(Input input);
|
||||
|
||||
void update(Context context, GameMap map, float dt);
|
||||
|
||||
void postRender(Screen screen);
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
package com.bartlomiejpluta.base.api.map.layer.base;
|
||||
|
||||
import com.bartlomiejpluta.base.api.animation.Animation;
|
||||
import com.bartlomiejpluta.base.api.map.model.GameMap;
|
||||
import com.bartlomiejpluta.base.internal.logic.Updatable;
|
||||
import com.bartlomiejpluta.base.internal.render.Renderable;
|
||||
|
||||
public interface Layer extends Renderable, Updatable {
|
||||
GameMap getMap();
|
||||
|
||||
void pushAnimation(Animation animation);
|
||||
}
|
||||
@@ -1,8 +1,8 @@
|
||||
package com.bartlomiejpluta.base.api.game.map.layer.color;
|
||||
package com.bartlomiejpluta.base.api.map.layer.color;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.base.Layer;
|
||||
import com.bartlomiejpluta.base.api.internal.object.Placeable;
|
||||
import com.bartlomiejpluta.base.api.internal.render.Renderable;
|
||||
import com.bartlomiejpluta.base.api.map.layer.base.Layer;
|
||||
import com.bartlomiejpluta.base.internal.object.Placeable;
|
||||
import com.bartlomiejpluta.base.internal.render.Renderable;
|
||||
|
||||
public interface ColorLayer extends Placeable, Renderable, Layer {
|
||||
void setColor(float red, float green, float blue, float alpha);
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.bartlomiejpluta.base.api.game.map.layer.image;
|
||||
package com.bartlomiejpluta.base.api.map.layer.image;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.image.Image;
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.base.Layer;
|
||||
import com.bartlomiejpluta.base.api.image.Image;
|
||||
import com.bartlomiejpluta.base.api.map.layer.base.Layer;
|
||||
|
||||
public interface ImageLayer extends Layer {
|
||||
void setImage(Image image);
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.map.layer.image;
|
||||
package com.bartlomiejpluta.base.api.map.layer.image;
|
||||
|
||||
public enum ImageLayerMode {
|
||||
NORMAL,
|
||||
@@ -1,9 +1,9 @@
|
||||
package com.bartlomiejpluta.base.api.game.map.layer.object;
|
||||
package com.bartlomiejpluta.base.api.map.layer.object;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.entity.Entity;
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.base.Layer;
|
||||
import com.bartlomiejpluta.base.api.game.move.Movement;
|
||||
import com.bartlomiejpluta.base.api.game.rule.Rule;
|
||||
import com.bartlomiejpluta.base.api.entity.Entity;
|
||||
import com.bartlomiejpluta.base.api.map.layer.base.Layer;
|
||||
import com.bartlomiejpluta.base.api.move.Movement;
|
||||
import com.bartlomiejpluta.base.api.rule.Rule;
|
||||
import org.joml.Vector2ic;
|
||||
|
||||
import java.util.List;
|
||||
@@ -0,0 +1,6 @@
|
||||
package com.bartlomiejpluta.base.api.map.layer.object;
|
||||
|
||||
public enum PassageAbility {
|
||||
BLOCK,
|
||||
ALLOW
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
package com.bartlomiejpluta.base.api.game.map.layer.tile;
|
||||
package com.bartlomiejpluta.base.api.map.layer.tile;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.base.Layer;
|
||||
import com.bartlomiejpluta.base.api.map.layer.base.Layer;
|
||||
|
||||
public interface TileLayer extends Layer {
|
||||
void setTile(int row, int column, int tileId);
|
||||
@@ -1,9 +1,9 @@
|
||||
package com.bartlomiejpluta.base.api.game.map.model;
|
||||
package com.bartlomiejpluta.base.api.map.model;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.color.ColorLayer;
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.image.ImageLayer;
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.object.ObjectLayer;
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.tile.TileLayer;
|
||||
import com.bartlomiejpluta.base.api.map.layer.color.ColorLayer;
|
||||
import com.bartlomiejpluta.base.api.map.layer.image.ImageLayer;
|
||||
import com.bartlomiejpluta.base.api.map.layer.object.ObjectLayer;
|
||||
import com.bartlomiejpluta.base.api.map.layer.tile.TileLayer;
|
||||
import org.joml.Vector2fc;
|
||||
|
||||
public interface GameMap {
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.move;
|
||||
package com.bartlomiejpluta.base.api.move;
|
||||
|
||||
import org.joml.Vector2i;
|
||||
import org.joml.Vector2ic;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.move;
|
||||
package com.bartlomiejpluta.base.api.move;
|
||||
|
||||
import org.joml.Vector2fc;
|
||||
import org.joml.Vector2ic;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.move;
|
||||
package com.bartlomiejpluta.base.api.move;
|
||||
|
||||
import org.joml.Vector2ic;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package com.bartlomiejpluta.base.api.game.rule;
|
||||
package com.bartlomiejpluta.base.api.rule;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.entity.Entity;
|
||||
import com.bartlomiejpluta.base.api.entity.Entity;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
@@ -0,0 +1,9 @@
|
||||
package com.bartlomiejpluta.base.api.rule;
|
||||
|
||||
import com.bartlomiejpluta.base.api.entity.Entity;
|
||||
|
||||
public interface Rule {
|
||||
boolean when(Entity entity);
|
||||
|
||||
void then(Entity entity);
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package com.bartlomiejpluta.base.api.runner;
|
||||
|
||||
import com.bartlomiejpluta.base.api.context.Context;
|
||||
import com.bartlomiejpluta.base.api.input.Input;
|
||||
import com.bartlomiejpluta.base.internal.gc.Disposable;
|
||||
|
||||
public interface GameRunner extends Disposable {
|
||||
void init(Context context);
|
||||
|
||||
void input(Input input);
|
||||
|
||||
void update(float dt);
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.game.screen;
|
||||
package com.bartlomiejpluta.base.api.screen;
|
||||
|
||||
import org.joml.Vector2fc;
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
package com.bartlomiejpluta.base.api.snippet.animation;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.context.Context;
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.base.Layer;
|
||||
import org.joml.Vector2fc;
|
||||
|
||||
public interface AnimationRunner {
|
||||
void run(Context context, Layer layer, Vector2fc origin);
|
||||
}
|
||||
@@ -1,8 +0,0 @@
|
||||
package com.bartlomiejpluta.base.api.util.path;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.object.ObjectLayer;
|
||||
import com.bartlomiejpluta.base.api.game.move.Movable;
|
||||
|
||||
public interface PathSegment<T extends Movable> {
|
||||
PathProgress perform(T movable, ObjectLayer layer, float dt);
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.internal.gc;
|
||||
package com.bartlomiejpluta.base.internal.gc;
|
||||
|
||||
public interface Cleanable {
|
||||
void cleanUp();
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.internal.gc;
|
||||
package com.bartlomiejpluta.base.internal.gc;
|
||||
|
||||
public interface Disposable {
|
||||
void dispose();
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.internal.logic;
|
||||
package com.bartlomiejpluta.base.internal.logic;
|
||||
|
||||
public interface Updatable {
|
||||
void update(float dt);
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.internal.object;
|
||||
package com.bartlomiejpluta.base.internal.object;
|
||||
|
||||
import org.joml.Matrix4fc;
|
||||
import org.joml.Vector2fc;
|
||||
@@ -0,0 +1,8 @@
|
||||
package com.bartlomiejpluta.base.internal.render;
|
||||
|
||||
import com.bartlomiejpluta.base.api.camera.Camera;
|
||||
import com.bartlomiejpluta.base.api.screen.Screen;
|
||||
|
||||
public interface Renderable {
|
||||
void render(Screen screen, Camera camera, ShaderManager shaderManager);
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
package com.bartlomiejpluta.base.api.internal.render;
|
||||
package com.bartlomiejpluta.base.internal.render;
|
||||
|
||||
import com.bartlomiejpluta.base.api.internal.gc.Cleanable;
|
||||
import com.bartlomiejpluta.base.internal.gc.Cleanable;
|
||||
import org.joml.*;
|
||||
|
||||
public interface ShaderManager extends Cleanable {
|
||||
@@ -1,6 +1,6 @@
|
||||
package com.bartlomiejpluta.base.api.internal.render;
|
||||
package com.bartlomiejpluta.base.internal.render;
|
||||
|
||||
import com.bartlomiejpluta.base.api.internal.gc.Disposable;
|
||||
import com.bartlomiejpluta.base.internal.gc.Disposable;
|
||||
import org.joml.*;
|
||||
|
||||
public interface ShaderProgram extends Disposable {
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.internal.render;
|
||||
package com.bartlomiejpluta.base.internal.render;
|
||||
|
||||
public interface Uniform {
|
||||
void createUniform(ShaderProgram shaderProgram, String uniformName);
|
||||
@@ -1,11 +1,11 @@
|
||||
package com.bartlomiejpluta.base.api.snippet.ai;
|
||||
package com.bartlomiejpluta.base.lib.ai;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.ai.AI;
|
||||
import com.bartlomiejpluta.base.api.game.ai.NPC;
|
||||
import com.bartlomiejpluta.base.api.game.entity.Entity;
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.object.ObjectLayer;
|
||||
import com.bartlomiejpluta.base.api.game.move.Direction;
|
||||
import com.bartlomiejpluta.base.api.util.pathfinder.PathFinder;
|
||||
import com.bartlomiejpluta.base.api.ai.AI;
|
||||
import com.bartlomiejpluta.base.api.ai.NPC;
|
||||
import com.bartlomiejpluta.base.api.entity.Entity;
|
||||
import com.bartlomiejpluta.base.api.map.layer.object.ObjectLayer;
|
||||
import com.bartlomiejpluta.base.api.move.Direction;
|
||||
import com.bartlomiejpluta.base.util.pathfinder.PathFinder;
|
||||
import org.joml.Vector2i;
|
||||
|
||||
public class FollowEntityAI implements AI {
|
||||
@@ -1,11 +1,11 @@
|
||||
package com.bartlomiejpluta.base.api.snippet.ai;
|
||||
package com.bartlomiejpluta.base.lib.ai;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.ai.AI;
|
||||
import com.bartlomiejpluta.base.api.game.ai.NPC;
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.object.ObjectLayer;
|
||||
import com.bartlomiejpluta.base.api.game.move.Direction;
|
||||
import com.bartlomiejpluta.base.api.util.path.NPCPath;
|
||||
import com.bartlomiejpluta.base.api.util.path.PathExecutor;
|
||||
import com.bartlomiejpluta.base.api.ai.AI;
|
||||
import com.bartlomiejpluta.base.api.ai.NPC;
|
||||
import com.bartlomiejpluta.base.api.map.layer.object.ObjectLayer;
|
||||
import com.bartlomiejpluta.base.api.move.Direction;
|
||||
import com.bartlomiejpluta.base.util.path.NPCPath;
|
||||
import com.bartlomiejpluta.base.util.path.PathExecutor;
|
||||
|
||||
public class FollowPathAI implements AI {
|
||||
private final PathExecutor<NPC> executor;
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.bartlomiejpluta.base.api.snippet.ai;
|
||||
package com.bartlomiejpluta.base.lib.ai;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.ai.AI;
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.object.ObjectLayer;
|
||||
import com.bartlomiejpluta.base.api.ai.AI;
|
||||
import com.bartlomiejpluta.base.api.map.layer.object.ObjectLayer;
|
||||
|
||||
public class NoopAI implements AI {
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
package com.bartlomiejpluta.base.api.snippet.ai;
|
||||
package com.bartlomiejpluta.base.lib.ai;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.ai.AI;
|
||||
import com.bartlomiejpluta.base.api.game.ai.NPC;
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.object.ObjectLayer;
|
||||
import com.bartlomiejpluta.base.api.game.move.Direction;
|
||||
import com.bartlomiejpluta.base.api.ai.AI;
|
||||
import com.bartlomiejpluta.base.api.ai.NPC;
|
||||
import com.bartlomiejpluta.base.api.map.layer.object.ObjectLayer;
|
||||
import com.bartlomiejpluta.base.api.move.Direction;
|
||||
|
||||
import java.util.Random;
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
package com.bartlomiejpluta.base.lib.animation;
|
||||
|
||||
import com.bartlomiejpluta.base.api.context.Context;
|
||||
import com.bartlomiejpluta.base.api.map.layer.base.Layer;
|
||||
import org.joml.Vector2fc;
|
||||
|
||||
public interface AnimationRunner {
|
||||
void run(Context context, Layer layer, Vector2fc origin);
|
||||
}
|
||||
@@ -1,10 +1,10 @@
|
||||
package com.bartlomiejpluta.base.api.snippet.animation;
|
||||
package com.bartlomiejpluta.base.lib.animation;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.animation.Animation;
|
||||
import com.bartlomiejpluta.base.api.game.animation.AnimationDelegate;
|
||||
import com.bartlomiejpluta.base.api.game.camera.Camera;
|
||||
import com.bartlomiejpluta.base.api.game.screen.Screen;
|
||||
import com.bartlomiejpluta.base.api.internal.render.ShaderManager;
|
||||
import com.bartlomiejpluta.base.api.animation.Animation;
|
||||
import com.bartlomiejpluta.base.api.animation.AnimationDelegate;
|
||||
import com.bartlomiejpluta.base.api.camera.Camera;
|
||||
import com.bartlomiejpluta.base.api.screen.Screen;
|
||||
import com.bartlomiejpluta.base.internal.render.ShaderManager;
|
||||
|
||||
public class DelayedAnimation extends AnimationDelegate {
|
||||
private final int delay;
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.bartlomiejpluta.base.api.snippet.animation;
|
||||
package com.bartlomiejpluta.base.lib.animation;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.context.Context;
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.base.Layer;
|
||||
import com.bartlomiejpluta.base.api.context.Context;
|
||||
import com.bartlomiejpluta.base.api.map.layer.base.Layer;
|
||||
import org.apache.commons.math3.distribution.NormalDistribution;
|
||||
import org.apache.commons.math3.distribution.RealDistribution;
|
||||
import org.apache.commons.math3.distribution.UniformRealDistribution;
|
||||
@@ -1,9 +1,9 @@
|
||||
package com.bartlomiejpluta.base.api.snippet.animation;
|
||||
package com.bartlomiejpluta.base.lib.animation;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.animation.Animation;
|
||||
import com.bartlomiejpluta.base.api.game.context.Context;
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.base.Layer;
|
||||
import com.bartlomiejpluta.base.api.util.path.Path;
|
||||
import com.bartlomiejpluta.base.api.animation.Animation;
|
||||
import com.bartlomiejpluta.base.api.context.Context;
|
||||
import com.bartlomiejpluta.base.api.map.layer.base.Layer;
|
||||
import com.bartlomiejpluta.base.util.path.Path;
|
||||
import org.joml.Vector2fc;
|
||||
|
||||
public class SimpleAnimationRunner implements AnimationRunner {
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.util.math;
|
||||
package com.bartlomiejpluta.base.util.math;
|
||||
|
||||
import static java.lang.Math.max;
|
||||
import static java.lang.Math.min;
|
||||
@@ -1,8 +1,8 @@
|
||||
package com.bartlomiejpluta.base.api.util.path;
|
||||
package com.bartlomiejpluta.base.util.path;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.object.ObjectLayer;
|
||||
import com.bartlomiejpluta.base.api.game.move.Direction;
|
||||
import com.bartlomiejpluta.base.api.game.move.Movable;
|
||||
import com.bartlomiejpluta.base.api.map.layer.object.ObjectLayer;
|
||||
import com.bartlomiejpluta.base.api.move.Direction;
|
||||
import com.bartlomiejpluta.base.api.move.Movable;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.bartlomiejpluta.base.api.util.path;
|
||||
package com.bartlomiejpluta.base.util.path;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.ai.NPC;
|
||||
import com.bartlomiejpluta.base.api.game.move.Direction;
|
||||
import com.bartlomiejpluta.base.api.ai.NPC;
|
||||
import com.bartlomiejpluta.base.api.move.Direction;
|
||||
|
||||
public class NPCPath extends Path<NPC> {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.bartlomiejpluta.base.api.util.path;
|
||||
package com.bartlomiejpluta.base.util.path;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.move.Direction;
|
||||
import com.bartlomiejpluta.base.api.game.move.Movable;
|
||||
import com.bartlomiejpluta.base.api.move.Direction;
|
||||
import com.bartlomiejpluta.base.api.move.Movable;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.bartlomiejpluta.base.api.util.path;
|
||||
package com.bartlomiejpluta.base.util.path;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.object.ObjectLayer;
|
||||
import com.bartlomiejpluta.base.api.game.move.Movable;
|
||||
import com.bartlomiejpluta.base.api.map.layer.object.ObjectLayer;
|
||||
import com.bartlomiejpluta.base.api.move.Movable;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.bartlomiejpluta.base.api.util.path;
|
||||
package com.bartlomiejpluta.base.util.path;
|
||||
|
||||
public enum PathProgress {
|
||||
ONGOING,
|
||||
@@ -0,0 +1,8 @@
|
||||
package com.bartlomiejpluta.base.util.path;
|
||||
|
||||
import com.bartlomiejpluta.base.api.map.layer.object.ObjectLayer;
|
||||
import com.bartlomiejpluta.base.api.move.Movable;
|
||||
|
||||
public interface PathSegment<T extends Movable> {
|
||||
PathProgress perform(T movable, ObjectLayer layer, float dt);
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user