From 630d204b0cecf63fa0341a544ad6273faee3829a Mon Sep 17 00:00:00 2001 From: _N3m0 Date: Thu, 28 Mar 2024 11:28:49 +0100 Subject: [PATCH] first shity collision system --- data/map_collision.png | Bin 0 -> 19304 bytes main.c | 53 ++++++++++++++++++++++++++++++++++------- 2 files changed, 45 insertions(+), 8 deletions(-) create mode 100644 data/map_collision.png diff --git a/data/map_collision.png b/data/map_collision.png new file mode 100644 index 0000000000000000000000000000000000000000..4fc73a9fb190e83b976882010faf56322f608b82 GIT binary patch literal 19304 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 p+m9P&Q|1Y}9RA^w{)@gs8M!|{d+DZc1hangle, WHITE ); b->coord = move_forward_angle(b->coord, 90-b->angle, 27.0f); + + int collision = circle_collision( + map_collision, Vec2i_cast(b->coord), bullet.height/2 + ); + if (collision) { + b->lifetime = -1.0f; + } } } @@ -333,6 +368,8 @@ int main(void) (Vector2) {player_t.width/2, player_t.height/2}, 450 - angle, WHITE ); + + DrawCircleV(Vector2_cast(player), player_radius, BLUE); } EndDrawing(); }