diff options
| author | Elizabeth Alexander Hunt <me@liz.coffee> | 2026-03-07 20:48:18 -0800 |
|---|---|---|
| committer | Elizabeth Alexander Hunt <me@liz.coffee> | 2026-03-07 20:48:18 -0800 |
| commit | d0cb7008ed0c414bb4e624e41b1e694544d43b06 (patch) | |
| tree | 03cb24488f530a2fe15e532f62088a1fd60c6a80 | |
| parent | 1f628c9ee7e08206752cf12f2424de931904ecdd (diff) | |
| download | dyl-d0cb7008ed0c414bb4e624e41b1e694544d43b06.tar.gz dyl-d0cb7008ed0c414bb4e624e41b1e694544d43b06.zip | |
| -rw-r--r-- | core/src/main/java/coffee/liz/dyl/config/PhysicsConstants.java | 4 | ||||
| -rw-r--r-- | core/src/main/java/coffee/liz/dyl/entities/WallFactory.java | 34 | ||||
| -rw-r--r-- | core/src/main/java/coffee/liz/dyl/world/DylGameWorld.java | 2 | ||||
| -rw-r--r-- | docs/todo.txt | 1 |
4 files changed, 39 insertions, 2 deletions
diff --git a/core/src/main/java/coffee/liz/dyl/config/PhysicsConstants.java b/core/src/main/java/coffee/liz/dyl/config/PhysicsConstants.java index f28a1a0..d10c781 100644 --- a/core/src/main/java/coffee/liz/dyl/config/PhysicsConstants.java +++ b/core/src/main/java/coffee/liz/dyl/config/PhysicsConstants.java @@ -3,9 +3,9 @@ package coffee.liz.dyl.config; public final class PhysicsConstants { public static final float GRAVITY = 52f; public static final float ADDITIONAL_JUMP_OVER_GRAVITY = 1.30f; - public static final float MOVE_SPEED = 9.0f; + public static final float MOVE_SPEED = 9.5f; public static final float JUMP_IMPULSE_VEL = 10.0f; - public static final float JUMP_SUSTAIN_FORCE = 20; + public static final float JUMP_SUSTAIN_FORCE = 22; public static final float MAX_JUMP_SECONDS = 0.22f; public static final float JUMP_BUFFER_SECONDS = 0.15f; public static final float COYOTE_TIME_SECONDS = 0.08f; diff --git a/core/src/main/java/coffee/liz/dyl/entities/WallFactory.java b/core/src/main/java/coffee/liz/dyl/entities/WallFactory.java new file mode 100644 index 0000000..cd4f6a2 --- /dev/null +++ b/core/src/main/java/coffee/liz/dyl/entities/WallFactory.java @@ -0,0 +1,34 @@ +package coffee.liz.dyl.entities; + +import coffee.liz.dyl.components.graphic.TextureGraphic; +import coffee.liz.dyl.components.physics.BoundingBox; +import coffee.liz.dyl.components.physics.Solid; +import coffee.liz.ecs.math.Vec2f; +import coffee.liz.ecs.model.Entity; +import coffee.liz.ecs.model.World; +import com.badlogic.gdx.Gdx; +import com.badlogic.gdx.files.FileHandle; +import com.badlogic.gdx.graphics.Color; +import com.badlogic.gdx.graphics.Texture; +import com.badlogic.gdx.graphics.g2d.TextureRegion; + +public class WallFactory { + private static final WallAssets ASSETS = new WallAssets(); + public static Entity addTo(final World world) { + return world.createEntity() + .add(new TextureGraphic(0, Color.WHITE, ASSETS.textureRegion)) + .add(new Solid()) + .add(new BoundingBox(new Vec2f(1f, 1f), new Vec2f(1f, 1f))); + } + + private static class WallAssets { + private static final FileHandle FILE = Gdx.files.internal("noir/Underground.png"); + final Texture texture; + final TextureRegion textureRegion; + + public WallAssets() { + texture = new Texture(FILE); + textureRegion = new TextureRegion(texture, 24, 17, 4, 4); + } + } +} diff --git a/core/src/main/java/coffee/liz/dyl/world/DylGameWorld.java b/core/src/main/java/coffee/liz/dyl/world/DylGameWorld.java index c35f1da..552fc9a 100644 --- a/core/src/main/java/coffee/liz/dyl/world/DylGameWorld.java +++ b/core/src/main/java/coffee/liz/dyl/world/DylGameWorld.java @@ -4,6 +4,7 @@ import coffee.liz.dyl.DylGame; import coffee.liz.dyl.config.PhysicsConstants; import coffee.liz.dyl.entities.FloorFactory; import coffee.liz.dyl.entities.PlayerFactory; +import coffee.liz.dyl.entities.WallFactory; import coffee.liz.dyl.systems.collision.SolidCollisionSystem; import coffee.liz.dyl.systems.control.MovementActionConsumerSystem; import coffee.liz.dyl.systems.graphics.AnimationSystem; @@ -37,6 +38,7 @@ public class DylGameWorld extends DAGWorld { ); PlayerFactory.addTo(this); FloorFactory.addTo(this); + WallFactory.addTo(this); createEntity() .add(new BoundingBox(new Vec2f(-50f, -1f), new Vec2f(200f, 1f))) .add(new Solid()); diff --git a/docs/todo.txt b/docs/todo.txt index 7d80f0f..1df0756 100644 --- a/docs/todo.txt +++ b/docs/todo.txt @@ -2,6 +2,7 @@ Terrain: - [X] Basic platforming - [ ] First dungeon - [ ] First overworld attempt +- [ ] Map system Combat: - [ ] Basic enemy |
