X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsystem.h;h=327cba881e18ab2b806c4823691f5056e6b53df4;hb=207dd0ba7951139a27a87a091c7eb98c395f3c70;hp=2db4961c53cbedd3c9d939c9e13339b8c7558025;hpb=f44158a4e1de9725bdd1d751b4a4005d29b51271;p=rocksndiamonds.git diff --git a/src/libgame/system.h b/src/libgame/system.h index 2db4961c..327cba88 100644 --- a/src/libgame/system.h +++ b/src/libgame/system.h @@ -105,6 +105,23 @@ #define STR_NETWORK_AUTO_DETECT "auto_detect_network_server" #define STR_NETWORK_AUTO_DETECT_SETUP "(auto detect network server)" +// values for API server settings +#define API_SERVER_HOSTNAME "api.artsoft.org" +#define API_SERVER_PORT 80 +#define API_SERVER_METHOD "POST" +#define API_SERVER_URI_ADD "/api/scores/add" +#define API_SERVER_URI_GET "/api/scores/get" +#define API_SERVER_URI_RENAME "/api/players/rename" +#define API_SERVER_URI_RESETUUID "/api/players/resetuuid" + +#if defined(TESTING) +#undef API_SERVER_HOSTNAME +#define API_SERVER_HOSTNAME "api-test.artsoft.org" +#define TEST_PREFIX "test." +#else +#define TEST_PREFIX "" +#endif + // values for touch control #define TOUCH_CONTROL_OFF "off" #define TOUCH_CONTROL_VIRTUAL_BUTTONS "virtual_buttons" @@ -352,6 +369,8 @@ #define ANIM_STATIC_PANEL (1 << 13) #define ANIM_ALL (1 << 14) #define ANIM_ONCE (1 << 15) +#define ANIM_TILED (1 << 16) +#define ANIM_RANDOM_STATIC (1 << 17) #define ANIM_DEFAULT ANIM_LOOP @@ -607,6 +626,9 @@ // default value for undefined levelset #define UNDEFINED_LEVELSET "[NONE]" +// default value for undefined password +#define UNDEFINED_PASSWORD "[undefined]" + // default value for undefined parameter #define ARG_DEFAULT "[DEFAULT]" @@ -617,18 +639,11 @@ // default value for off-screen positions #define POS_OFFSCREEN (-1000000) -// definitions for game sub-directories -#ifndef RO_GAME_DIR -#define RO_GAME_DIR "." +// definitions for game base path and sub-directories +#ifndef BASE_PATH +#define BASE_PATH "." #endif -#ifndef RW_GAME_DIR -#define RW_GAME_DIR "." -#endif - -#define RO_BASE_PATH RO_GAME_DIR -#define RW_BASE_PATH RW_GAME_DIR - // directory names #define GRAPHICS_DIRECTORY "graphics" #define SOUNDS_DIRECTORY "sounds" @@ -662,6 +677,7 @@ #define USERSETUP_FILENAME "usersetup.conf" #define AUTOSETUP_FILENAME "autosetup.conf" #define LEVELSETUP_FILENAME "levelsetup.conf" +#define SERVERSETUP_FILENAME "serversetup.conf" #define EDITORSETUP_FILENAME "editorsetup.conf" #define EDITORCASCADE_FILENAME "editorcascade.conf" #define HELPANIM_FILENAME "helpanim.conf" @@ -672,6 +688,7 @@ #define MUSICINFO_FILENAME "musicinfo.conf" #define ARTWORKINFO_CACHE_FILE "artworkinfo.cache" #define LEVELTEMPLATE_FILENAME "template.level" +#define UPLOADED_FILENAME ".uploaded" #define LEVELFILE_EXTENSION "level" #define TAPEFILE_EXTENSION "tape" #define SCOREFILE_EXTENSION "score" @@ -1010,8 +1027,7 @@ struct ProgramInfo void (*exit_message_function)(char *, va_list); void (*exit_function)(int); - boolean global_scores; - boolean many_scores_per_name; + int api_thread_count; boolean headless; }; @@ -1032,6 +1048,8 @@ struct NetworkInfo struct RuntimeInfo { boolean uses_touch_device; + + boolean use_api_server; }; struct OptionInfo @@ -1039,8 +1057,7 @@ struct OptionInfo char *server_host; int server_port; - char *ro_base_directory; - char *rw_base_directory; + char *base_directory; char *level_directory; char *graphics_directory; char *sounds_directory; @@ -1049,10 +1066,15 @@ struct OptionInfo char *conf_directory; char *execute_command; + char *tape_log_filename; char *special_flags; char *debug_mode; + char *player_name; + char *identifier; + char *level_nr; + boolean mytapes; boolean serveronly; boolean network; @@ -1428,6 +1450,8 @@ struct SetupDebugInfo struct SetupInfo { char *player_name; + char *player_uuid; + int player_version; boolean multiple_users; @@ -1472,7 +1496,9 @@ struct SetupInfo int game_frame_delay; boolean sp_show_border_elements; boolean small_game_graphics; - boolean show_snapshot_buttons; + boolean show_load_save_buttons; + boolean show_undo_redo_buttons; + char *scores_in_highscore_list; char *graphics_set; char *sounds_set; @@ -1489,6 +1515,15 @@ struct SetupInfo int network_player_nr; char *network_server_hostname; + boolean use_api_server; + char *api_server_hostname; + char *api_server_password; + boolean ask_for_uploading_tapes; + boolean ask_for_remaining_tapes; + boolean provide_uploading_tapes; + boolean ask_for_using_api_server; + boolean has_remaining_tapes; + struct SetupAutoSetupInfo auto_setup; struct SetupLevelSetupInfo level_setup; @@ -1862,7 +1897,6 @@ void InitProgramInfo(char *, char *, char *, char *, char *, char *, char *, void InitNetworkInfo(boolean, boolean, boolean, char *, int); void InitRuntimeInfo(void); -void InitScoresInfo(void); void SetWindowTitle(void); void InitWindowTitleFunction(char *(*window_title_function)(void)); @@ -1951,6 +1985,7 @@ Bitmap *LoadImage(char *); Bitmap *LoadCustomImage(char *); void ReloadCustomImage(Bitmap *, char *); +Bitmap *ZoomBitmap(Bitmap *, int, int); void ReCreateGameTileSizeBitmap(Bitmap **); void CreateBitmapWithSmallBitmaps(Bitmap **, int, int); void CreateBitmapTextures(Bitmap **); @@ -1984,4 +2019,7 @@ boolean ReadJoystick(int, int *, int *, boolean *, boolean *); boolean CheckJoystickOpened(int); void ClearJoystickState(void); +void InitEmscriptenFilesystem(void); +void SyncEmscriptenFilesystem(void); + #endif // SYSTEM_H