#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"
// values for touch control
#define TOUCH_CONTROL_OFF "off"
// 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]"
// default value for off-screen positions
#define POS_OFFSCREEN (-1000000)
-// definitions for game sub-directories
-#ifndef RO_GAME_DIR
-#define RO_GAME_DIR "."
-#endif
-
-#ifndef RW_GAME_DIR
-#define RW_GAME_DIR "."
+// definitions for game base path and sub-directories
+#ifndef BASE_PATH
+#define BASE_PATH "."
#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"
void (*exit_message_function)(char *, va_list);
void (*exit_function)(int);
- boolean global_scores;
- boolean many_scores_per_name;
+ char *system_uuid; // initialized when reading first setup file
boolean headless;
};
struct RuntimeInfo
{
boolean uses_touch_device;
+
+ boolean api_server;
};
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;
char *conf_directory;
char *execute_command;
+ char *tape_log_filename;
char *special_flags;
char *debug_mode;
{
char *player_name;
+ char *player_uuid;
+ char *system_uuid;
+
boolean multiple_users;
boolean sound;
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;
+ boolean only_show_local_scores;
char *graphics_set;
char *sounds_set;
int network_player_nr;
char *network_server_hostname;
+ boolean api_server;
+ char *api_server_hostname;
+ char *api_server_password;
+
struct SetupAutoSetupInfo auto_setup;
struct SetupLevelSetupInfo level_setup;
void InitNetworkInfo(boolean, boolean, boolean, char *, int);
void InitRuntimeInfo(void);
-void InitScoresInfo(void);
void SetWindowTitle(void);
void InitWindowTitleFunction(char *(*window_title_function)(void));
Bitmap *LoadCustomImage(char *);
void ReloadCustomImage(Bitmap *, char *);
+Bitmap *ZoomBitmap(Bitmap *, int, int);
void ReCreateGameTileSizeBitmap(Bitmap **);
void CreateBitmapWithSmallBitmaps(Bitmap **, int, int);
void CreateBitmapTextures(Bitmap **);