diff --git a/push b/push new file mode 100755 index 0000000..c40b054 --- /dev/null +++ b/push @@ -0,0 +1,3 @@ +git push +SemvdH +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 diff --git a/src/main.c b/src/main.c index 55f27da..40aca2e 100644 --- a/src/main.c +++ b/src/main.c @@ -179,14 +179,19 @@ void draw() sprites_draw_player(player_x, player_y, PLAYER_SCALE); // vita2d_draw_rectangle(x2_pos, y2_pos, (float)10, (float)10, RGBA8(169, 60, 23, 255)); - char text[80] = "process time: "; - sprintf(text, "%f", simple_enemies[5].x); + vita2d_draw_rectangle(300, 50, 30, 30, RGBA8(255, 0, 255, 255)); + + size_t collision_player = toolbox_is_collision(player_x, player_y - (PLAYER_SCALE * SHIP_HEIGHT)/2,SHIP_WIDTH * PLAYER_SCALE, SHIP_HEIGHT * PLAYER_SCALE, 300+15,50+15,30,30); + if (collision_player) + { + vita2d_pgf_draw_text(pgf, 700, 30, RGBA8(0, 255, 0, 255), 1.0f, "collision"); + } else { + vita2d_pgf_draw_text(pgf, 700, 30, RGBA8(0, 255, 0, 255), 1.0f, "no col"); + } char fps[15] = "fps: "; sprintf(fps, "%d", timing_get_fps(deltaTime)); - vita2d_pgf_draw_text(pgf, 700, 30, RGBA8(0, 255, 0, 255), 1.0f, text); - vita2d_pvf_draw_text(pvf, 700, 80, RGBA8(0, 255, 0, 255), 1.0f, fps); char timertext[100]; diff --git a/src/toolbox/toolbox.c b/src/toolbox/toolbox.c index 345d5bc..d51f7f0 100644 --- a/src/toolbox/toolbox.c +++ b/src/toolbox/toolbox.c @@ -6,4 +6,13 @@ float toolbox_random_float(float a, float b) float diff = b - a; float r = random * diff; return a + r; +} + +size_t toolbox_is_collision(float x1, float y1, float width1, float heigth1, float x2, float y2, float width2, float height2) +{ + //TODO make it work + return x1 < x2 + width2 / 2 && + x1 + width1 / 2 > x2 && + y1 < y2 + height2 / 2 && + y1 + heigth1 / 2 > y2; } \ No newline at end of file diff --git a/src/toolbox/toolbox.h b/src/toolbox/toolbox.h index 1eaa7d4..597941d 100644 --- a/src/toolbox/toolbox.h +++ b/src/toolbox/toolbox.h @@ -10,4 +10,19 @@ */ float toolbox_random_float(float a, float b); +/** + * @brief checks if a collision has happened between 2 ractancles (bounding boxes) + * + * @param x1 the center x of the first object + * @param y1 the center y of the first object + * @param width1 the width of the first object + * @param heigth1 the heigth of the first object + * @param x2 the center x of the second object + * @param y2 the center y of the second object + * @param width2 the width of the second object + * @param height2 the heigth of the second object + * @return size_t 0 if no collision, 1 if there is a collision. + */ +size_t toolbox_is_collision(float x1, float y1, float width1, float heigth1, float x2, float y2, float width2, float height2); + #endif // !TOOLBOX_H \ No newline at end of file