diff --git a/asset-src/gfx/background.piskel b/asset-src/gfx/background.piskel new file mode 100644 index 0000000..6977dd8 --- /dev/null +++ b/asset-src/gfx/background.piskel @@ -0,0 +1 @@ +{"modelVersion":2,"piskel":{"name":"background","description":"","fps":12,"height":450,"width":800,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,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\"}]}"],"hiddenFrames":[""]}} \ No newline at end of file diff --git a/asset-src/gfx/background_pal.json b/asset-src/gfx/background_pal.json new file mode 100644 index 0000000..5e3149d --- /dev/null +++ b/asset-src/gfx/background_pal.json @@ -0,0 +1,9 @@ +GIMP Palette +Name: Avoid_bg +Columns: 0 +# +248 248 248 Untitled +166 166 166 Untitled + 30 142 20 Untitled + 22 85 93 Untitled + diff --git a/assets/gfx/background.png b/assets/gfx/background.png new file mode 100644 index 0000000..f9b0747 Binary files /dev/null and b/assets/gfx/background.png differ diff --git a/doc-assets/preview.gif b/doc-assets/preview.gif index 2a0a13b..2f852cb 100644 Binary files a/doc-assets/preview.gif and b/doc-assets/preview.gif differ diff --git a/src/Credits.c b/src/Credits.c index bbc3d98..3720a59 100644 --- a/src/Credits.c +++ b/src/Credits.c @@ -10,6 +10,7 @@ #include "Screens.h" #include "Controls.h" +#include "Textures.h" void UpdateCreditsScreen(void) { @@ -18,11 +19,11 @@ void UpdateCreditsScreen(void) void DrawCreditsScreen(void) { - DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), GREEN); - DrawText("Avoid", 330, 20, 50, MAGENTA); + DrawTexture(background, 0, 0, DARKGRAY); + DrawText("CREDITS", 290, 20, 50, BLUE); DrawText("Programming and Art by Return0ne", 10, 210, 20, BLUE); DrawText("Powered by raylib 4.0", 10, 240, 20, BLUE); - DrawText("A Canneddonuts project 2022", 10, 270, 40, RED); + DrawText("A Canneddonuts project 2022", 10, 270, 40, BLUE); DrawText(TextFormat("Build compiled on %s", __DATE__), 10, 310, 30, YELLOW); DrawText("Press 'ENTER' ", 10, 350, 20, WHITE); } diff --git a/src/Gameover.c b/src/Gameover.c index 402404b..646a3ec 100644 --- a/src/Gameover.c +++ b/src/Gameover.c @@ -34,7 +34,7 @@ void UpdateGameoverScreen(void) void DrawGameoverScreen(void) { - DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), BLUE); + DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), BLACK); DrawText("GAMEOVER", 250, 20, 50, RED); if (gameoverSelected == 0) DrawText("RETRY", 350, 200, 20, WHITE); else DrawText("RETRY", 350, 200, 20, RED); diff --git a/src/Gameplay.c b/src/Gameplay.c index 8b9997d..25ca5f7 100644 --- a/src/Gameplay.c +++ b/src/Gameplay.c @@ -12,6 +12,7 @@ #include "Controls.h" #include "Gameplay.h" #include "Score.h" +#include "Textures.h" int score = 0, bestscore = 0; @@ -38,12 +39,12 @@ void InitGameplayScreen(void) (float) player.sprite.height }; - heart.sprite = LoadTexture("assets/gfx/health.png"); - heart.hitbox = (Rectangle) { - GetRandomValue(0, GetScreenWidth() - heart.sprite.width), - GetRandomValue(0, GetScreenHeight() - heart.sprite.height), - (float) heart.sprite.width, - (float) heart.sprite.height + heart.sprite = LoadTexture("assets/gfx/health.png"); + heart.hitbox = (Rectangle) { + GetRandomValue(0, GetScreenWidth() - heart.sprite.width), + GetRandomValue(0, GetScreenHeight() - heart.sprite.height), + (float) heart.sprite.width, + (float) heart.sprite.height }; heart.active = true; @@ -55,7 +56,7 @@ void InitGameplayScreen(void) ball.active = true; pause = 0; - mute = 0; + mute = true; DebugMode = 0; pauseTimer = 0; } @@ -78,8 +79,8 @@ void ResetGameplayScreen(void) GetRandomValue(0, GetScreenHeight() - heart.sprite.height), (float) heart.sprite.width, (float) heart.sprite.height - }; - heart.active = true; + }; + heart.active = true; ball.position = (Vector2){ 50, 50 }; ball.radius = 20; @@ -148,12 +149,13 @@ void UpdateGameplayScreen(void) if (ball.active) { score++; + + if (score >= bestscore) bestscore = score; + // movement of the ball ball.position.x += GetFrameTime() * ball.speed.x; ball.position.y += GetFrameTime() * ball.speed.y; - if (score >= bestscore) bestscore = score; - // Ballz to da wallz collies if ((ball.position.x >= (GetScreenWidth() - ball.radius)) || (ball.position.x <= ball.radius)) { ball.speed.x *= -1.0f; @@ -179,7 +181,7 @@ void UpdateGameplayScreen(void) void DrawGameplayScreen(void) { - DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), BLACK); + DrawTexture(background, 0, 0, RAYWHITE); DrawFPS(10, 430); DrawText(TextFormat("HP: %i", player.hp), 10, 10, 20, RED); DrawText(TextFormat("SCORE: %i", score), 10, 30, 20, BLUE); @@ -192,7 +194,7 @@ void DrawGameplayScreen(void) } if (ball.active) DrawCircleV(ball.position, (float)ball.radius, ball.color); if (heart.active) DrawTexture(heart.sprite, heart.sprite_pos.x, heart.sprite_pos.y, RAYWHITE); - DrawTextureRec(player.sprite, player.frameRec, player.sprite_pos, WHITE); + DrawTextureRec(player.sprite, player.frameRec, player.sprite_pos, RAYWHITE); if (pause && ((pauseTimer/30)%2)) DrawText("PAUSED", 330, 190, 30, PURPLE); } diff --git a/src/Gameplay.h b/src/Gameplay.h index f4b9041..67a4d05 100644 --- a/src/Gameplay.h +++ b/src/Gameplay.h @@ -9,16 +9,16 @@ #ifndef GAMEPLAY_HEADER #define GAMEPLAY_HEADER -typedef struct Ball { +struct Ball { Vector2 position; Vector2 speed; float radius; float growth; Color color; bool active; -} Ball; +}; -typedef struct Player { +struct Player { Texture2D sprite; float speed; int hp; @@ -26,20 +26,20 @@ typedef struct Player { Vector2 sprite_pos; Rectangle frameRec; Rectangle hitbox; -} Player; +}; -typedef struct Item { +struct Item { Texture2D sprite; Vector2 sprite_pos; Rectangle hitbox; bool active; -} Item; +}; +struct Player player = { 0 }; +struct Ball ball = { 0 }; +struct Item heart = { 0 }; int pauseTimer; Sound fxbounce = { 0 }; -Player player = { 0 }; -Ball ball = { 0 }; -Item heart = { 0 }; bool pause; bool mute; bool DebugMode; diff --git a/src/Main.c b/src/Main.c index a1e9610..dc40c74 100644 --- a/src/Main.c +++ b/src/Main.c @@ -9,8 +9,6 @@ #include "../include/raylib.h" #include "Screens.h" -#include "Controls.h" - #if defined(PLATFORM_WEB) #include @@ -21,7 +19,7 @@ static const int screenWidth = 800; static const int screenHeight = 450; GameScreen currentScreen = 0; - +Texture2D background = { 0 }; // Game functions static void gameSetup(void); @@ -61,6 +59,7 @@ void gameSetup(void) currentScreen = TITLE; InitGameplayScreen(); + InitTitleScreen(); } void updateGame(void) @@ -68,7 +67,7 @@ void updateGame(void) // code that runs as long as the program is running if ((IsKeyDown(KEY_LEFT_ALT)) && (IsKeyPressed(KEY_F))) ToggleFullscreen(); - switch(currentScreen) { + switch (currentScreen) { case TITLE: UpdateTitleScreen(); break; case GAMEPLAY: UpdateGameplayScreen(); break; case GAMEOVER: UpdateGameoverScreen(); break; @@ -84,7 +83,7 @@ void drawGame(void) ClearBackground(RAYWHITE); - switch(currentScreen) { + switch (currentScreen) { case TITLE: DrawTitleScreen(); break; case GAMEPLAY: DrawGameplayScreen(); break; case GAMEOVER: DrawGameoverScreen(); break; @@ -104,4 +103,5 @@ void gameLoop(void) void unloadGame(void) { UnloadGameplayScreen(); + UnloadTitleScreen(); } diff --git a/src/Screens.h b/src/Screens.h index a8570eb..86fa370 100644 --- a/src/Screens.h +++ b/src/Screens.h @@ -15,8 +15,10 @@ extern GameScreen currentScreen; void gameReset(void); +void InitTitleScreen(void); void UpdateTitleScreen(void); void DrawTitleScreen(void); +void UnloadTitleScreen(void); void InitGameplayScreen(void); diff --git a/src/Textures.h b/src/Textures.h new file mode 100644 index 0000000..3fdf1f4 --- /dev/null +++ b/src/Textures.h @@ -0,0 +1,14 @@ +/* +- Avoid ~ a game by Canneddonuts +- Filename ~ Textures.h +- Author ~ Return0ne +- 2022 +- *no license* +*/ + +#ifndef TEXTURES_HEADER +#define TEXTURES_HEADER + +extern Texture2D background; + +#endif diff --git a/src/Title.c b/src/Title.c index abbcbe3..1d55ae9 100644 --- a/src/Title.c +++ b/src/Title.c @@ -11,9 +11,15 @@ #include "Screens.h" #include "Controls.h" #include "Score.h" +#include "Textures.h" int titleSelected = 0; +void InitTitleScreen(void) +{ + background = LoadTexture("assets/gfx/background.png"); +} + void UpdateTitleScreen(void) { if (INPUT_UP_PRESSED) titleSelected++; @@ -28,15 +34,15 @@ void UpdateTitleScreen(void) void DrawTitleScreen(void) { - DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), ORANGE); - DrawText("Controls", 10, 10, 30, PURPLE); + DrawTexture(background, 0, 0, GRAY); + DrawText("Controls", 10, 10, 30, BLUE); DrawText(TextFormat("BEST: %i", bestscore), 600, 0, 30, WHITE); - DrawText("Press the arrow keys or 'DPAD' to move and 'X' to dash", 10, 40, 10, RED); - DrawText("Press 'ENTER' or 'START' to pause", 10, 60, 10, RED); - DrawText("Press 'M' to mute", 10, 80, 10, RED); - DrawText("Press 'Left-ALT' + 'F' for full screen", 10, 100, 10, RED); - DrawText("Press 'R' to restart", 10, 120, 10, RED); - DrawText("Press 'ENTER' or 'START' to select an option", 10, 140, 10, RED); + DrawText("Press the arrow keys or 'DPAD' to move and 'X' to dash", 10, 40, 10, WHITE); + DrawText("Press 'ENTER' or 'START' to pause", 10, 60, 10, WHITE); + DrawText("Press 'M' to mute", 10, 80, 10, WHITE); + DrawText("Press 'Left-ALT' + 'F' for full screen", 10, 100, 10, WHITE); + DrawText("Press 'R' to restart", 10, 120, 10, WHITE); + DrawText("Press 'ENTER' or 'START' to select an option", 10, 140, 10, WHITE); DrawText("Avoid", 330, 20, 50, BLUE); if (titleSelected == 0) DrawText("PLAY", 360, 220, 20, WHITE); else DrawText("PLAY", 360, 220, 20, BLUE); @@ -47,3 +53,8 @@ void DrawTitleScreen(void) if (titleSelected == -2) DrawText("MORE GAMES", 320, 260, 20, WHITE); else DrawText("MORE GAMES", 320, 260, 20, BLUE); } + +void UnloadTitleScreen(void) +{ + UnloadTexture(background); +}