diff options
| -rw-r--r-- | data/imgs/ui/splash1.png | bin | 0 -> 9825655 bytes | |||
| -rw-r--r-- | data/imgs/ui/splash2.jfif | bin | 0 -> 3860975 bytes | |||
| -rw-r--r-- | include/asset_defs.h | 5 | ||||
| -rw-r--r-- | include/menu.h | 9 | ||||
| -rw-r--r-- | main.c | 4 | ||||
| -rw-r--r-- | src/asset_defs.c | 5 | ||||
| -rw-r--r-- | src/game.c | 16 | ||||
| -rw-r--r-- | src/zombies.c | 2 |
8 files changed, 38 insertions, 3 deletions
diff --git a/data/imgs/ui/splash1.png b/data/imgs/ui/splash1.png Binary files differnew file mode 100644 index 0000000..4d568e7 --- /dev/null +++ b/data/imgs/ui/splash1.png diff --git a/data/imgs/ui/splash2.jfif b/data/imgs/ui/splash2.jfif Binary files differnew file mode 100644 index 0000000..df8af3a --- /dev/null +++ b/data/imgs/ui/splash2.jfif diff --git a/include/asset_defs.h b/include/asset_defs.h index 5a239ae..9deaf77 100644 --- a/include/asset_defs.h +++ b/include/asset_defs.h @@ -3,6 +3,9 @@ #include <projectbase/project_base.h> +/////// Loaded at game start. +image* img_splash_art1; + font* fnt_52; font* fnt_48; font* fnt_44; @@ -17,6 +20,8 @@ font* fnt_12; font* fnt_8; font* fnt_4; +/////// Loaded at match start. + // UI image* img_red_border; diff --git a/include/menu.h b/include/menu.h new file mode 100644 index 0000000..a00e020 --- /dev/null +++ b/include/menu.h @@ -0,0 +1,9 @@ +#ifndef INCLUDE_MENU +#define INCLUDE_MENU + +typedef struct t_menu_state +{ + +} menu_state; + +#endif
\ No newline at end of file @@ -59,7 +59,7 @@ #define CONFIG_DIRECTORY "zombieshooter" void update_func(platform_window* window) { - renderer->render_clear(window, rgb(0,255,0)); + renderer->render_clear(window, rgb(0,0,0)); update_game(window); } @@ -115,6 +115,8 @@ int main(int argc, char **argv) log_info("Audio failed."); } + load_menu_assets(); + init_game(); bool did_handle_args = false; diff --git a/src/asset_defs.c b/src/asset_defs.c index 7fff980..9e29b10 100644 --- a/src/asset_defs.c +++ b/src/asset_defs.c @@ -3,7 +3,8 @@ //#include "../data/fonts/oxanium.h" #include "../data/fonts/aleo.h" -void load_assets() { +void load_menu_assets() { // Assets loaded at game start + img_splash_art1 = assets_load_image_from_file("data/imgs/ui/splash1.png"); fnt_52 = assets_load_font(Aleo_Regular, Aleo_Regular + Aleo_Regular_Size, 52); fnt_48 = assets_load_font(Aleo_Regular, Aleo_Regular + Aleo_Regular_Size, 48); @@ -18,7 +19,9 @@ void load_assets() { fnt_12 = assets_load_font(Aleo_Regular, Aleo_Regular + Aleo_Regular_Size, 12); fnt_8 = assets_load_font(Aleo_Regular, Aleo_Regular + Aleo_Regular_Size, 8); fnt_4 = assets_load_font(Aleo_Regular, Aleo_Regular + Aleo_Regular_Size, 4); +} +void load_assets() { // Assets loaded at match start. // UI img_red_border = assets_load_image_from_file("data/imgs/ui/red_border.png"); @@ -372,9 +372,25 @@ static void move_camera(platform_window* window) { _global_camera.y = (int)_camera_buffer.y; } +void draw_splash(platform_window* window) { + image* img = img_splash_art1; + int imgw = img->width * (window->height/(float)img->height); + int imgh = window->height; + + int imgx = (window->width - imgw) / 2 + _global_camera.x; + int imgy = 0 + _global_camera.y; + + renderer->render_image(img, imgx, imgy, imgw, imgh); +} + void update_game(platform_window* window) { clear_bullets(); + if (global_state.state != GAMESTATE_PLAYING) { + draw_splash(window); + return; + } + if (global_state.server) { update_server(window); } diff --git a/src/zombies.c b/src/zombies.c index c04f91e..13368f2 100644 --- a/src/zombies.c +++ b/src/zombies.c @@ -479,7 +479,7 @@ void draw_zombies(platform_window* window, uint32_t ystart, uint32_t yend) { renderer->render_rectangle(zombie_pos.x + (zombie_size/2) - (bar_w/2), zombie_pos.y - bar_h, bar_w*percentage, bar_h, rgb(100,0,0)); } - if (global_state.server) draw_path_of_zombie(window, o); + //if (global_state.server) draw_path_of_zombie(window, o); } } |
