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 /core/src/main/java/coffee/liz/dyl/entities | |
| parent | 1f628c9ee7e08206752cf12f2424de931904ecdd (diff) | |
| download | dyl-main.tar.gz dyl-main.zip | |
Diffstat (limited to 'core/src/main/java/coffee/liz/dyl/entities')
| -rw-r--r-- | core/src/main/java/coffee/liz/dyl/entities/WallFactory.java | 34 |
1 files changed, 34 insertions, 0 deletions
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); + } + } +} |
