diff --git a/assets-cg/scarlet.png b/assets-cg/scarlet.png deleted file mode 100644 index c70993a..0000000 Binary files a/assets-cg/scarlet.png and /dev/null differ diff --git a/bullet.h b/bullet.h new file mode 100644 index 0000000..b4a169b --- /dev/null +++ b/bullet.h @@ -0,0 +1,20 @@ +#pragma once +#include "type.h" + +struct Bullet { + struct Vec2 pos; + int v; + int active; +}; + +struct Bullet_table { + int n; + struct Bullet *bullets; +}; + +void bullet_table_init(void); +void bullet_table_update(void); +void bullet_table_draw(int timer); +void bullet_destroy(struct Bullet *bullet); +void bullet_fire(int x, int y, int v); +int bullet_nb(void); diff --git a/levels/test.tmx b/levels/test.tmx index d95e71a..c8812ae 100644 --- a/levels/test.tmx +++ b/levels/test.tmx @@ -1,42 +1,39 @@ - + + + + - + -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,2,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,19,19,19,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,19,35,19,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,2,2,2,2,1,19,35,19,1,2,2,1,0,0,0,0,1,2,2,2,1,0,0,0,0,0,0,0,0,0,1,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,19,19,19,19,19,19,19,19,19,19,19,19,17,0,0,0,0,17,19,19,19,19,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,19,35,35,35,35,35,35,35,35,35,35,19,17,0,0,0,0,17,19,35,35,35,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,2,2,1,19,35,34,18,18,18,18,18,18,34,35,19,17,5,5,5,5,17,19,35,34,18,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,19,19,19,19,19,35,18,18,18,18,18,18,18,18,35,19,17,21,21,21,21,17,19,35,18,18,0,0,0,0,0,0,0,0,0,0,0,0 +19,21,22,22,21,20,20,21,22,19,22,20,21,21,20,22,19,20,21,21,22,21,19,21,22,20,20,21,19,19,20,19,22,21,19,22,22,19,19,20,20,22,20,20,19,20,19,22,21,20, +22,19,20,20,22,22,19,19,21,21,22,22,22,20,20,22,22,21,22,21,22,22,19,20,22,21,22,22,20,21,19,19,20,22,21,19,20,22,20,19,19,20,19,20,21,22,20,21,22,21, +20,21,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,19,19, +19,22,17,25,0,0,0,0,58,57,58,57,58,0,0,0,0,0,0,58,0,0,0,0,0,58,58,57,58,57,58,57,58,57,58,57,58,58,0,42,42,42,42,41,42,42,26,18,19,20, +20,22,17,25,42,42,42,42,58,57,58,57,58,42,42,0,0,0,0,58,0,0,0,0,0,58,58,57,58,57,58,57,58,57,58,57,58,58,0,0,0,0,0,57,0,0,26,18,22,19, +20,21,17,25,0,0,0,0,58,57,58,57,58,0,0,0,0,0,0,41,0,0,0,0,0,0,58,57,58,57,58,57,58,57,58,57,58,0,0,0,0,42,42,41,42,42,26,18,20,20, +21,22,17,25,42,42,0,41,42,41,42,41,42,41,0,0,0,0,0,58,0,0,0,0,0,41,42,41,42,42,41,42,41,42,42,41,42,41,0,0,0,0,0,57,0,0,26,18,21,21, +19,22,17,25,0,0,0,0,57,58,57,58,57,0,0,0,0,0,0,58,0,0,0,0,0,0,58,0,57,58,57,58,57,58,57,0,58,0,0,0,0,0,0,57,0,0,26,18,21,20, +20,19,17,25,0,0,0,0,57,58,57,58,57,0,0,0,0,0,0,58,0,0,0,0,0,0,58,58,57,58,57,58,57,58,57,58,58,0,0,0,0,0,0,57,0,0,26,18,20,20, +19,22,17,25,0,0,0,0,57,58,57,58,57,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,57,58,57,58,57,58,57,0,0,0,0,0,0,0,0,0,0,0,26,18,22,19, +22,21,17,25,0,0,0,0,57,58,57,58,57,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,42,41,42,41,42,41,42,9,0,0,0,0,0,0,0,0,0,0,26,18,22,21, +19,21,17,25,0,0,0,0,57,58,57,58,57,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,57,58,57,58,57,0,0,0,0,0,0,0,0,0,0,0,0,26,18,21,22, +22,21,17,25,0,0,0,0,57,58,57,58,57,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,58,57,58,57,58,57,58,0,0,0,0,0,0,0,0,0,0,0,26,18,21,19, +19,19,17,25,0,0,0,0,57,58,57,58,57,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,57,58,57,58,57,0,0,0,0,0,0,0,0,0,0,0,0,26,18,21,21, +20,20,35,44,0,0,0,0,57,58,57,58,57,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,58,57,58,57,58,57,58,0,0,0,0,0,0,0,0,0,0,0,26,18,22,20, +20,22,51,60,0,0,0,0,57,58,57,58,57,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,57,58,57,58,57,0,0,0,0,0,0,0,0,0,0,0,0,26,18,22,21, +22,21,51,60,58,58,0,41,42,41,42,41,42,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,42,41,42,41,42,41,0,0,0,0,0,0,0,0,0,0,0,43,36,22,22, +21,21,3,3,3,3,0,0,58,57,58,57,58,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,58,57,58,57,58,0,0,0,0,0,0,0,0,0,0,0,0,59,52,22,20, +22,19,19,4,4,4,0,0,58,57,58,57,58,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,58,57,58,57,58,0,0,0,0,0,0,0,0,0,0,58,58,59,52,20,19, +22,21,17,25,0,0,0,0,58,57,58,57,58,0,0,33,34,34,34,34,33,34,34,33,0,1,1,2,0,58,57,58,57,58,0,2,1,1,0,33,34,34,33,34,34,34,34,34,19,20, +20,20,35,44,0,0,0,0,58,57,58,57,58,0,0,49,50,50,50,50,49,58,58,57,0,41,27,17,2,3,3,3,3,3,2,18,27,41,0,57,58,58,49,50,50,50,50,18,19,21, +20,21,51,60,0,0,0,0,58,57,58,57,58,0,0,49,50,50,50,50,49,58,58,57,0,41,2,2,19,19,3,2,3,19,19,2,2,41,0,57,58,58,49,50,50,50,50,18,20,20, +22,19,51,60,58,58,0,0,58,57,58,57,33,34,34,33,34,34,34,34,33,42,42,42,0,0,26,19,19,19,19,4,19,19,19,19,25,0,0,41,41,42,33,34,34,34,34,34,22,21, +20,20,3,3,3,3,3,3,58,57,58,57,49,50,50,49,50,50,50,50,49,58,58,57,0,0,0,18,4,4,4,4,4,4,4,17,0,0,0,57,58,58,49,50,50,50,50,18,20,19, +19,19,19,20,19,19,19,17,58,57,58,57,49,50,50,49,50,50,50,50,49,58,58,57,0,0,0,0,49,50,58,57,58,50,49,0,0,0,0,57,57,58,49,50,50,50,50,18,20,21, +19,21,21,22,20,20,19,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,20,20, +20,20,19,20,21,21,22,19,20,22,20,22,22,19,19,22,21,19,22,20,21,21,20,21,19,19,19,20,20,22,22,21,22,21,20,22,21,19,19,19,21,19,19,22,20,21,19,22,22,22, +21,20,19,22,20,22,19,22,20,20,19,21,21,22,19,19,22,21,19,22,20,22,20,22,20,22,20,19,20,21,20,19,20,22,22,22,19,19,20,21,21,19,20,19,21,19,21,21,22,19 diff --git a/levels/tileset.tsx b/levels/tileset.tsx index a477a09..d5344a4 100644 --- a/levels/tileset.tsx +++ b/levels/tileset.tsx @@ -1,4 +1,4 @@ - - + + diff --git a/missile1.ase b/missile1.ase new file mode 100644 index 0000000..e69de29 diff --git a/missile2.ase b/missile2.ase new file mode 100644 index 0000000..e69de29 diff --git a/scarlet.png b/scarlet.png new file mode 100644 index 0000000..e69de29