X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsystem.c;h=33246588592ebf6dab8b5da904fb314f9bd97492;hb=969000b44b047ef2d77619bd3882a3f09eb1787d;hp=f9f42fc8d84e8e12463628191103b89b5fd1854c;hpb=3e10387c490e2db8997d6e909d7d13d71fe876e3;p=rocksndiamonds.git diff --git a/src/libgame/system.c b/src/libgame/system.c index f9f42fc8..33246588 100644 --- a/src/libgame/system.c +++ b/src/libgame/system.c @@ -325,9 +325,50 @@ void InitTileCursorInfo() void InitOverlayInfo() { + static char *default_grid_button[6][2] = + { + { " ", " ^^ " }, + { " ", " ^^ " }, + { " ", "<< >>" }, + { " ", "<< >>" }, + { "111222", " vv " }, + { "111222", " vv " } + }; + int min_xsize, min_ysize; + int startx, starty; + int x, y; + + min_xsize = MIN(6, DEFAULT_GRID_XSIZE); + min_ysize = MIN(6, DEFAULT_GRID_YSIZE); + + startx = DEFAULT_GRID_XSIZE - min_xsize; + starty = DEFAULT_GRID_YSIZE - min_ysize; + overlay.enabled = FALSE; overlay.active = FALSE; + overlay.show_grid = FALSE; + overlay.show_grid_buttons = FALSE; + + overlay.grid_xsize = DEFAULT_GRID_XSIZE; + overlay.grid_ysize = DEFAULT_GRID_YSIZE; + + for (x = 0; x < MAX_GRID_XSIZE; x++) + for (y = 0; y < MAX_GRID_YSIZE; y++) + overlay.grid_button[x][y] = CHAR_GRID_BUTTON_NONE; + + for (x = 0; x < min_xsize; x++) + for (y = 0; y < min_ysize; y++) + overlay.grid_button[x][starty + y] = + default_grid_button[y][0][x]; + + for (x = 0; x < min_xsize; x++) + for (y = 0; y < min_ysize; y++) + overlay.grid_button[startx + x][starty + y] = + default_grid_button[y][1][x]; + + overlay.grid_button_highlight = CHAR_GRID_BUTTON_NONE; + #if defined(PLATFORM_ANDROID) if (strEqual(setup.touch.control_type, TOUCH_CONTROL_VIRTUAL_BUTTONS)) overlay.enabled = TRUE; @@ -385,6 +426,17 @@ void SetOverlayActive(boolean active) overlay.active = active; } +void SetOverlayShowGrid(boolean show_grid) +{ + overlay.show_grid = show_grid; + overlay.show_grid_buttons = show_grid; + + SetOverlayActive(show_grid); + + if (show_grid) + SetOverlayEnabled(TRUE); +} + boolean GetOverlayActive() { return overlay.active;