/** * @brief Deletes an old game. * @param wdw Window to delete. * @param str Unused. */ static void load_menu_delete( unsigned int wdw, char *str ) { (void)str; char *save, path[PATH_MAX]; int wid; wid = window_get( "Load Game" ); save = toolkit_getList( wid, "lstSaves" ); if (strcmp(save,"None") == 0) return; if (dialogue_YesNo( "Permanently Delete?", "Are you sure you want to permanently delete '%s'?", save) == 0) return; snprintf( path, PATH_MAX, "%ssaves/%s.ns", nfile_basePath(), save ); remove(path); /* remove is portable and will call unlink on linux. */ /* need to reload the menu */ load_menu_close(wdw, NULL); load_game_menu(); }
/** * @brief Loads a new game. * @param wdw Window triggering function. * @param str Unused. */ static void load_menu_load( unsigned int wdw, char *str ) { (void)str; char *save, path[PATH_MAX]; int wid; wid = window_get( "Load Game" ); save = toolkit_getList( wid, "lstSaves" ); if (strcmp(save,"None") == 0) return; snprintf( path, PATH_MAX, "%ssaves/%s.ns", nfile_basePath(), save ); /* Close menus before loading for proper rendering. */ load_menu_close(wdw, NULL); menu_main_close(); if (load_game( path )) { menu_main(); load_game_menu(); } }
/** * @brief Function to active the load game menu. * @param str Unused. */ static void menu_main_load( unsigned int wid, char* str ) { (void) str; (void) wid; load_game_menu(); }