X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Flibgame%2Fsystem.c;h=7321731c75110895a24c6c0380a5036cdf338ee2;hp=3363ac2b94c7cbfe976ba25c2806b403b75595f6;hb=187654874c567be3a92e0b53aa1df45407432265;hpb=164e6c72eba4eac8002bd6b334579e78e5010d0f diff --git a/src/libgame/system.c b/src/libgame/system.c index 3363ac2b..7321731c 100644 --- a/src/libgame/system.c +++ b/src/libgame/system.c @@ -29,6 +29,7 @@ /* ========================================================================= */ struct ProgramInfo program; +struct NetworkInfo network; struct OptionInfo options; struct VideoSystemInfo video; struct AudioSystemInfo audio; @@ -44,6 +45,7 @@ LevelDirTree *leveldir_first = NULL; LevelDirTree *leveldir_current = NULL; int level_nr; +struct LevelSetInfo levelset; struct LevelStats level_stats[MAX_LEVELS]; DrawWindow *window = NULL; @@ -103,6 +105,17 @@ void InitProgramInfo(char *argv0, char *config_filename, char *userdata_subdir, program.headless = FALSE; } +void InitNetworkInfo(boolean enabled, boolean connected, boolean serveronly, + char *server_host, int server_port) +{ + network.enabled = enabled; + network.connected = connected; + network.serveronly = serveronly; + + network.server_host = server_host; + network.server_port = server_port; +} + void InitScoresInfo() { char *global_scores_dir = getPath2(getCommonDataDir(), SCORES_DIRECTORY); @@ -110,6 +123,7 @@ void InitScoresInfo() program.global_scores = directoryExists(global_scores_dir); program.many_scores_per_name = !program.global_scores; +#if 0 if (options.debug) { if (program.global_scores) @@ -124,6 +138,7 @@ void InitScoresInfo() Error(ERR_DEBUG, "Using private, single-user scores directory."); } } +#endif free(global_scores_dir); } @@ -325,60 +340,25 @@ void InitTileCursorInfo() void InitOverlayInfo() { - static char *default_grid_button[6][2] = - { - { " ", " ^^ " }, - { " ", " ^^ " }, - { " ", "<< >>" }, - { " ", "<< >>" }, - { "111222", " vv " }, - { "111222", " vv " } - }; int nr = GRID_ACTIVE_NR(); - int i, x, y; + int x, y; overlay.enabled = FALSE; overlay.active = FALSE; overlay.show_grid = FALSE; - for (i = 0; i < 2; i++) - { - int grid_xsize = DEFAULT_GRID_XSIZE(i); - int grid_ysize = DEFAULT_GRID_YSIZE(i); - int min_xsize = MIN(6, grid_xsize); - int min_ysize = MIN(6, grid_ysize); - int startx = grid_xsize - min_xsize; - int starty = grid_ysize - min_ysize; - - overlay.grid_xsize_all[i] = grid_xsize; - overlay.grid_ysize_all[i] = grid_ysize; - - for (x = 0; x < MAX_GRID_XSIZE; x++) - for (y = 0; y < MAX_GRID_YSIZE; y++) - overlay.grid_button_all[i][x][y] = CHAR_GRID_BUTTON_NONE; - - for (x = 0; x < min_xsize; x++) - for (y = 0; y < min_ysize; y++) - overlay.grid_button_all[i][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_all[i][startx + x][starty + y] = - default_grid_button[y][1][x]; - } - - overlay.grid_xsize = overlay.grid_xsize_all[nr]; - overlay.grid_ysize = overlay.grid_ysize_all[nr]; + overlay.grid_xsize = setup.touch.grid_xsize[nr]; + overlay.grid_ysize = setup.touch.grid_ysize[nr]; for (x = 0; x < MAX_GRID_XSIZE; x++) for (y = 0; y < MAX_GRID_YSIZE; y++) - overlay.grid_button[x][y] = overlay.grid_button_all[nr][x][y]; + overlay.grid_button[x][y] = setup.touch.grid_button[nr][x][y]; overlay.grid_button_highlight = CHAR_GRID_BUTTON_NONE; + overlay.grid_button_action = JOY_NO_ACTION; -#if defined(PLATFORM_ANDROID) +#if defined(USE_TOUCH_INPUT_OVERLAY) if (strEqual(setup.touch.control_type, TOUCH_CONTROL_VIRTUAL_BUTTONS)) overlay.enabled = TRUE; #endif