X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fmain.h;h=f3e757126a43e06115932f01563fb4b010f1d4bd;hb=92736512b4fedc65254597f1b3e85a885b0e6e62;hp=3f25ec47709d871cbead70ae8b3ded017efccb52;hpb=d09d0cb9fa4e9afaaaa021269bc13ecfd7f51591;p=rocksndiamonds.git diff --git a/src/main.h b/src/main.h index 3f25ec47..f3e75712 100644 --- a/src/main.h +++ b/src/main.h @@ -984,6 +984,12 @@ #define MAX_ANDROID_ELEMENTS 32 #define MAX_ANDROID_ELEMENTS_OLD 16 // (extended since version 4.2.0.0) +#define MAX_ISO_DATE_LEN 10 +#define MAX_PLATFORM_TEXT_LEN 16 +#define MAX_VERSION_TEXT_LEN 16 +#define MAX_COUNTRY_CODE_LEN 2 +#define MAX_COUNTRY_NAME_LEN 64 + // values for elements with content #define MIN_ELEMENT_CONTENTS 1 #define STD_ELEMENT_CONTENTS 4 @@ -2293,6 +2299,7 @@ enum enum { GFX_SPECIAL_ARG_DEFAULT = 0, + GFX_SPECIAL_ARG_LOADING_INITIAL, GFX_SPECIAL_ARG_LOADING, GFX_SPECIAL_ARG_TITLE_INITIAL, GFX_SPECIAL_ARG_TITLE_INITIAL_1, @@ -2323,6 +2330,7 @@ enum GFX_SPECIAL_ARG_CRUMBLED, GFX_SPECIAL_ARG_MAINONLY, GFX_SPECIAL_ARG_NAMESONLY, + GFX_SPECIAL_ARG_SCORESONLY, GFX_SPECIAL_ARG_TYPENAME, GFX_SPECIAL_ARG_TYPENAMES, GFX_SPECIAL_ARG_SUBMENU, @@ -2545,6 +2553,7 @@ enum // values for game_status (must match special image configuration suffixes) #define GAME_MODE_DEFAULT GFX_SPECIAL_ARG_DEFAULT +#define GAME_MODE_LOADING_INITIAL GFX_SPECIAL_ARG_LOADING_INITIAL #define GAME_MODE_LOADING GFX_SPECIAL_ARG_LOADING #define GAME_MODE_TITLE_INITIAL GFX_SPECIAL_ARG_TITLE_INITIAL #define GAME_MODE_TITLE_INITIAL_1 GFX_SPECIAL_ARG_TITLE_INITIAL_1 @@ -2575,6 +2584,7 @@ enum #define GAME_MODE_PSEUDO_CRUMBLED GFX_SPECIAL_ARG_CRUMBLED #define GAME_MODE_PSEUDO_MAINONLY GFX_SPECIAL_ARG_MAINONLY #define GAME_MODE_PSEUDO_NAMESONLY GFX_SPECIAL_ARG_NAMESONLY +#define GAME_MODE_PSEUDO_SCORESONLY GFX_SPECIAL_ARG_SCORESONLY #define GAME_MODE_PSEUDO_TYPENAME GFX_SPECIAL_ARG_TYPENAME #define GAME_MODE_PSEUDO_TYPENAMES GFX_SPECIAL_ARG_TYPENAMES #define GAME_MODE_PSEUDO_SUBMENU GFX_SPECIAL_ARG_SUBMENU @@ -2804,6 +2814,9 @@ struct MenuScoresButtonInfo { struct MenuPosInfo prev_level; struct MenuPosInfo next_level; + struct MenuPosInfo prev_score; + struct MenuPosInfo next_score; + struct MenuPosInfo play_tape; }; struct MenuScoresInfo @@ -2841,7 +2854,9 @@ struct TitleMessageInfo struct InitInfo { + struct MenuPosInfo busy_initial; struct MenuPosInfo busy; + struct MenuPosInfo busy_playfield; }; struct MenuInfo @@ -3085,6 +3100,14 @@ struct ScoreEntry char name[MAX_PLAYER_NAME_LEN + 1]; int score; int time; // time (in frames) or steps played + + // additional score information for score info screen + int id; + char tape_date[MAX_ISO_DATE_LEN + 1]; + char platform[MAX_PLATFORM_TEXT_LEN + 1]; + char version[MAX_VERSION_TEXT_LEN + 1]; + char country_code[MAX_COUNTRY_CODE_LEN + 1]; + char country_name[MAX_COUNTRY_NAME_LEN + 1]; }; struct ScoreInfo @@ -3099,9 +3122,11 @@ struct ScoreInfo int last_added; int last_added_local; int last_level_nr; + int last_entry_nr; boolean updated; boolean uploaded; + boolean tape_downloaded; boolean force_last_added; struct ScoreEntry entry[MAX_SCORE_ENTRIES]; @@ -3694,7 +3719,7 @@ struct MusicFileInfo boolean is_sound; - struct MusicFileInfo *next; + struct MusicFileInfo *prev, *next; }; struct ElementActionInfo @@ -3738,6 +3763,7 @@ extern DrawBuffer *drawto_field; extern int game_status; extern int game_status_last_screen; extern boolean level_editor_test_game; +extern boolean score_info_tape_play; extern boolean network_playing; extern int key_joystick_mapping;