diff options
| author | Alexander M Pickering <alex@cogarr.net> | 2025-01-25 20:40:09 -0600 |
|---|---|---|
| committer | Alexander M Pickering <alex@cogarr.net> | 2025-01-25 20:40:09 -0600 |
| commit | b174b8c00026253fd40ec262e430b0bb764e31ea (patch) | |
| tree | 173d294b98fe14727aef9cd42542f41a940f5ffa /src/test_entity.moon | |
| parent | 89a8f94ac0206412c1a2d7b8766d97dbdbd36253 (diff) | |
| download | ggj25-b174b8c00026253fd40ec262e430b0bb764e31ea.tar.gz ggj25-b174b8c00026253fd40ec262e430b0bb764e31ea.tar.bz2 ggj25-b174b8c00026253fd40ec262e430b0bb764e31ea.zip | |
work
Diffstat (limited to 'src/test_entity.moon')
| -rw-r--r-- | src/test_entity.moon | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/test_entity.moon b/src/test_entity.moon new file mode 100644 index 0000000..a9ae170 --- /dev/null +++ b/src/test_entity.moon @@ -0,0 +1,36 @@ + +ecs = require("ecs") +world = require("world") +sprites = require("world.sprites") + +class TestGraphicComponent extends world.GraphicsComponent + @test_size = 0.5 + @static = false + buf_size: () => + 6 + populate_buf: (geom_view, normal_view, offset) => + assert(@properties.pos, "Test entity needs a position") + @buf = geom_view + h = @@test_size / 2 + pos = @properties.pos + geom_view[1] = vec3(-h,-h,1) + pos + geom_view[2] = vec3(-h,h,1) + pos + geom_view[3] = vec3(-h,-h,1) + pos + geom_view[4] = vec3(h,h,1) + pos + geom_view[5] = vec3(h,-h,1) + pos + geom_view[6] = vec3(-h,-h,1) + pos + uv = sprites.player_normal + normal_view[1] = vec2(uv.s1,uv.t1) + normal_view[2] = vec2(uv.s1,uv.t2) + normal_view[3] = vec2(uv.s2,uv.t2) + normal_view[4] = vec2(uv.s2,uv.t2) + normal_view[5] = vec2(uv.s2,uv.t1) + normal_view[6] = vec2(uv.s1,uv.t1) + +class TestEntity extends ecs.Entity + new: (id, pos) => + super(id,{ + graphic: TestGraphicComponent("graphic",{pos: pos}) + }) + +{:TestEntity} |
