Create Rule system scaffolding
This commit is contained in:
@@ -3,13 +3,16 @@ package com.bartlomiejpluta.base.api.game.context;
|
||||
import com.bartlomiejpluta.base.api.game.camera.Camera;
|
||||
import com.bartlomiejpluta.base.api.game.entity.Entity;
|
||||
import com.bartlomiejpluta.base.api.game.image.Image;
|
||||
import com.bartlomiejpluta.base.api.game.window.Window;
|
||||
|
||||
public interface Context {
|
||||
Window getWindow();
|
||||
|
||||
Camera getCamera();
|
||||
|
||||
void openMap(String mapUid);
|
||||
|
||||
Entity createEntity(String entitySetUid);
|
||||
|
||||
Image getImage(String imageUid);
|
||||
|
||||
Camera getCamera();
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@ package com.bartlomiejpluta.base.api.game.map.layer.object;
|
||||
import com.bartlomiejpluta.base.api.game.entity.Entity;
|
||||
import com.bartlomiejpluta.base.api.game.entity.Movement;
|
||||
import com.bartlomiejpluta.base.api.game.map.layer.base.Layer;
|
||||
import com.bartlomiejpluta.base.api.game.rule.Rule;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -13,6 +14,12 @@ public interface ObjectLayer extends Layer {
|
||||
|
||||
List<Entity> getEntities();
|
||||
|
||||
void registerRule(Rule rule);
|
||||
|
||||
void unregisterRule(Rule rule);
|
||||
|
||||
void unregisterRules();
|
||||
|
||||
void setPassageAbility(int row, int column, PassageAbility passageAbility);
|
||||
|
||||
PassageAbility[][] getPassageMap();
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
package com.bartlomiejpluta.base.api.game.rule;
|
||||
|
||||
import com.bartlomiejpluta.base.api.game.entity.Entity;
|
||||
|
||||
public interface Rule {
|
||||
boolean test(Entity entity);
|
||||
|
||||
void invoke(Entity entity);
|
||||
}
|
||||
Reference in New Issue
Block a user