summaryrefslogtreecommitdiff
path: root/in_practice/breakout/object.h
diff options
context:
space:
mode:
authorpryazha <pryadeiniv@mail.ru>2025-08-16 10:11:00 +0500
committerpryazha <pryadeiniv@mail.ru>2025-08-16 10:11:00 +0500
commit1f93c3ef62af6c71217f06491ca2b859d4065740 (patch)
tree4f07192788df29446aa1ddb73a20839e4ddf9b3f /in_practice/breakout/object.h
parent99337878eca2807436bcf11d36946b90db44a2d3 (diff)
in practice chapter
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