#include "game.h" #include "render.h" #include "engine.h" #include "menu.h" #include extern int snprintf (char *, unsigned long, const char *, ...); static void limit (int * pointer, int minimum, int maximum) { if ((* pointer >= minimum) && (* pointer <= maximum)) { return; } if (* pointer < minimum) { * pointer = minimum; } if (* pointer > maximum) { * pointer = maximum; } } static void debug (void) { char string [64] = ""; snprintf (string, 64, "%i -- %i", camera_x, camera_y); render_string (string, 0, 0); } int main (void) { game_configure (); render_configure (); menu_configure (); while (! WindowShouldClose ()) { Color tint = { 0, 0, 0, 0 }; BeginDrawing (); ClearBackground (tint); view_map (camera_x, camera_y); view_base_1 (0, 32, 128); view_base_1 (1, 32, 512); view_base_2 (0, 1024, 128); view_base_2 (1, 1024, 512); /* for (int i = 0; i < 18; ++i) { view_unit (orc, i, 900 + 32 * i, 32); view_unit (human, i, 900 + 32 * i, 64); view_unit (elf, i, 900 + 32 * i, 96); } */ if (IsKeyPressed (KEY_RIGHT)) { camera_x++; limit (& camera_x, 0, CHAD_WORLD_WIDTH * BASE_SIZE - render_width ()); } if (IsKeyPressed (KEY_LEFT)) { camera_x--; limit (& camera_x, 0, CHAD_WORLD_WIDTH * BASE_SIZE - render_width ()); } if (IsKeyPressed (KEY_DOWN)) { camera_y++; limit (& camera_y, 0, CHAD_WORLD_HEIGHT * BASE_SIZE - render_height ()); } if (IsKeyPressed (KEY_UP)) { camera_y--; limit (& camera_y, 0, CHAD_WORLD_HEIGHT * BASE_SIZE - render_height ()); } if (IsKeyPressed (KEY_T)) { menu_show [menu_traits] = menu_show [menu_traits] ? 0 : 1; } if (IsKeyPressed (KEY_S)) { menu_show [menu_skills] = menu_show [menu_skills] ? 0 : 1; } if (IsKeyPressed (KEY_V)) { menu_show [menu_values] = menu_show [menu_values] ? 0 : 1; } if (IsKeyPressed (KEY_R)) { menu_show [menu_resources] = menu_show [menu_resources] ? 0 : 1; } view_hud (0, SIDE_SIZE, render_height (), render_width () - SIDE_SIZE, 0); view_hud (1, render_width () - SIDE_SIZE, render_height (), 0, 0); debug (); view_neon_menu (menu_resources, 1, 0, 0); view_neon_menu (menu_traits, 1, 0, 0); view_neon_menu (menu_skills, 1, 0, 0); view_neon_menu (menu_values, 1, 0, 0); /* Rectangle source = { 0, 0, BASE_SIZE * 15, BASE_SIZE * 10 }; Rectangle destination = { 128, 128, BASE_SIZE * 15 * zoom, BASE_SIZE * 10 * zoom }; DrawTexturePro (vvv, source, destination, (Vector2) { 0, 0 }, 0.0F, WHITE); */ EndDrawing (); } return (0); }