added additional empty space elements to level editor
[rocksndiamonds.git] / src / libgame / system.h
index a02459d8a01f7eb472ad75adb0af8defe8c450e0..4acc61d8858bb4dc68ee26271bc2b0196d19b3b9 100644 (file)
 #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 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
 
 // 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]"
 
 #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"
 #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,6 +1027,8 @@ struct ProgramInfo
   void (*exit_message_function)(char *, va_list);
   void (*exit_function)(int);
 
+  int api_thread_count;
+
   boolean headless;
 };
 
@@ -1030,7 +1049,7 @@ struct RuntimeInfo
 {
   boolean uses_touch_device;
 
-  boolean api_server;
+  boolean use_api_server;
 };
 
 struct OptionInfo
@@ -1047,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;
@@ -1331,6 +1355,7 @@ struct SetupEditorCascadeInfo
   boolean el_steel_chars;
   boolean el_ce;
   boolean el_ge;
+  boolean el_es;
   boolean el_ref;
   boolean el_user;
   boolean el_dynamic;
@@ -1426,6 +1451,8 @@ struct SetupDebugInfo
 struct SetupInfo
 {
   char *player_name;
+  char *player_uuid;
+  int player_version;
 
   boolean multiple_users;
 
@@ -1470,8 +1497,9 @@ struct SetupInfo
   int game_frame_delay;
   boolean sp_show_border_elements;
   boolean small_game_graphics;
-  boolean show_snapshot_buttons;
-  boolean only_show_local_scores;
+  boolean show_load_save_buttons;
+  boolean show_undo_redo_buttons;
+  char *scores_in_highscore_list;
 
   char *graphics_set;
   char *sounds_set;
@@ -1488,8 +1516,14 @@ struct SetupInfo
   int network_player_nr;
   char *network_server_hostname;
 
-  boolean api_server;
+  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;
@@ -1952,6 +1986,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 **);