diff options
author | nathansmith117 <thenathansmithsmith@gmail.com> | 2024-02-22 19:19:43 +0000 |
---|---|---|
committer | nathansmith117 <thenathansmithsmith@gmail.com> | 2024-02-22 19:19:43 +0000 |
commit | d6c58243b7b9d90e5e23af2f3c866ddf316cb0fa (patch) | |
tree | 0ee4b8533b28eb3e3d4be034c0eb356d83b98734 /src/clicky.c | |
parent | 1ce1a705c61064e44f83c772b70ee9b208a4c289 (diff) | |
download | PenguinYippies-d6c58243b7b9d90e5e23af2f3c866ddf316cb0fa.tar.gz PenguinYippies-d6c58243b7b9d90e5e23af2f3c866ddf316cb0fa.tar.bz2 PenguinYippies-d6c58243b7b9d90e5e23af2f3c866ddf316cb0fa.zip |
Can now use pixel data for collision
Diffstat (limited to 'src/clicky.c')
-rw-r--r-- | src/clicky.c | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/src/clicky.c b/src/clicky.c index 88b23ce..7790715 100644 --- a/src/clicky.c +++ b/src/clicky.c @@ -12,13 +12,8 @@ void updatePenguinLol(Game* game, Clicky* clicky) { if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) { - Rectangle clickRect = clicky->rect; - clickRect.width /= 2.0; - clickRect.height /= 2.0; - clickRect.x += clickRect.width / 2.0; - clickRect.y += clickRect.height / 2.0; - - if (CheckCollisionPointRec(getScaledMousePosition(), clickRect)) + if (doesCollideWithAnimationData(clicky->rect, clicky->animation.asset->image.data, + clicky->animation.width, clicky->animation.height, clicky->animation.currentFrame, getScaledMousePosition())) { replayAnimation(&clicky->animation); } @@ -37,11 +32,13 @@ Clicky createPenguinLolClicky(Game* game) Clicky clicky; clicky.animation = createAnimation(&game->assets.animations[PENGUIN_LOL_ANIMATION], ANIMATION_DEFAULT_DELAY); - setAnimationFrame(&clicky.animation, clicky.animation.frameCount - 1); + setAnimationFrame(&clicky.animation, 0); clicky.animation.repeat = false; clicky.texture = NULL; clicky.rect = (Rectangle){0.0, 0.0, 512, 512}; + clicky.colors = LoadImageColors(game->assets.animations[PENGUIN_LOL_ANIMATION].image); + clicky.data = NULL; clicky.updateCB = updatePenguinLol; @@ -51,4 +48,5 @@ Clicky createPenguinLolClicky(Game* game) void freePenginLolClicky(Clicky clicky) { closeAnimation(&clicky.animation); + UnloadImageColors(clicky.colors); } |