summaryrefslogtreecommitdiff
path: root/in_practice/breakout/object.h
diff options
context:
space:
mode:
Diffstat (limited to 'in_practice/breakout/object.h')
-rw-r--r--in_practice/breakout/object.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/in_practice/breakout/object.h b/in_practice/breakout/object.h
new file mode 100644
index 0000000..e1cfedb
--- /dev/null
+++ b/in_practice/breakout/object.h
@@ -0,0 +1,32 @@
+#ifndef OBJECT_H
+#define OBJECT_H
+
+#include "my_math.h"
+#include "sprite.h"
+
+typedef struct {
+ v2 pos;
+ v2 vel;
+ v2 size;
+ f32 rotation;
+ v3 color;
+ i32 solid;
+ i32 destroyed;
+ u32 texture;
+} object_t;
+
+#define default_object { \
+ .pos = {0.0f, 0.0f}, \
+ .vel = {0.0f, 0.0f}, \
+ .size = {100.0f, 100.0f}, \
+ .rotation = 0.0f, \
+ .color = {1.0f, 1.0f, 1.0f}, \
+ .solid = 1, \
+ .destroyed = 0, \
+ .texture = 0 \
+}
+
+extern void render_object(sprite_renderer_t renderer, object_t obj);
+extern i32 check_collision(object_t a, object_t b);
+
+#endif