X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fmain.c;h=74e539656b85e24d84f731f854977326a7257dd9;hb=466733e5fd75e0d705bf80dddb48468c4c9885a7;hp=c1982ccf5b19128369dbfa551b4633a14eadf394;hpb=08077278b4277434ebbeb0e828cf45f9ce9ee387;p=rocksndiamonds.git diff --git a/src/main.c b/src/main.c index c1982ccf..74e53965 100644 --- a/src/main.c +++ b/src/main.c @@ -1,15 +1,13 @@ -/*********************************************************** -* Rocks'n'Diamonds -- McDuffin Strikes Back! * -*----------------------------------------------------------* -* (c) 1995-2006 Artsoft Entertainment * -* Holger Schemel * -* Detmolder Strasse 189 * -* 33604 Bielefeld * -* Germany * -* e-mail: info@artsoft.org * -*----------------------------------------------------------* -* main.c * -***********************************************************/ +// ============================================================================ +// Rocks'n'Diamonds - McDuffin Strikes Back! +// ---------------------------------------------------------------------------- +// (c) 1995-2014 by Artsoft Entertainment +// Holger Schemel +// info@artsoft.org +// http://www.artsoft.org/ +// ---------------------------------------------------------------------------- +// main.c +// ============================================================================ #include "libgame/libgame.h" @@ -25,9 +23,6 @@ Bitmap *bitmap_db_store; Bitmap *bitmap_db_cross; Bitmap *bitmap_db_field; Bitmap *bitmap_db_panel; -#if 0 -Bitmap *bitmap_db_door; -#endif Bitmap *bitmap_db_door_1; Bitmap *bitmap_db_door_2; Bitmap *bitmap_db_toons; @@ -45,15 +40,7 @@ SDL_Thread *server_thread; int key_joystick_mapping = 0; -#if 1 -#if NEW_SCROLL boolean redraw[2 + MAX_LEV_FIELDX + 2][2 + MAX_LEV_FIELDY + 2]; -#else -boolean redraw[MAX_LEV_FIELDX + 2][MAX_LEV_FIELDY + 2]; -#endif -#else -boolean redraw[MAX_BUF_XSIZE][MAX_BUF_YSIZE]; -#endif int redraw_x1 = 0, redraw_y1 = 0; short Feld[MAX_LEV_FIELDX][MAX_LEV_FIELDY]; @@ -118,24 +105,15 @@ int EXSIZE = 100; int EYSIZE = 144; int TILESIZE_VAR = TILESIZE; -#if 1 int FX, FY; -#else -int FX = SX, FY = SY; -#endif int ScrollStepSize; int ScreenMovDir = MV_NONE, ScreenMovPos = 0; int ScreenGfxPos = 0; int BorderElement = EL_STEELWALL; int GameFrameDelay = GAME_FRAME_DELAY; int FfwdFrameDelay = FFWD_FRAME_DELAY; -#if 1 int BX1, BY1; int BX2, BY2; -#else -int BX1 = 0, BY1 = 0; -int BX2 = SCR_FIELDX - 1, BY2 = SCR_FIELDY - 1; -#endif int SBX_Left, SBX_Right; int SBY_Upper, SBY_Lower; int ZX, ZY; @@ -1116,37 +1094,37 @@ struct ElementNameInfo element_name_info[MAX_NUM_ELEMENTS + 1] = { "char_copyright", "char", - "letter '©'" + "letter '\xa9'" }, { "char_aumlaut", "char", - "letter 'Ä'" + "letter '\xc4'" }, { "char_oumlaut", "char", - "letter 'Ö'" + "letter '\xd6'" }, { "char_uumlaut", "char", - "letter 'Ü'" + "letter '\xdc'" }, { "char_degree", "char", - "letter '°'" + "letter '\xb0'" }, { "char_trademark", "char", - "letter '®'" + "letter '\xae'" }, { "char_cursor", "char", - "letter ' '" + "letter '\xa0'" }, { "char_unused", @@ -4176,37 +4154,37 @@ struct ElementNameInfo element_name_info[MAX_NUM_ELEMENTS + 1] = { "steel_char_copyright", "steel_char", - "steel letter '©'" + "steel letter '\xa9'" }, { "steel_char_aumlaut", "steel_char", - "steel letter 'Ä'" + "steel letter '\xc4'" }, { "steel_char_oumlaut", "steel_char", - "steel letter 'Ö'" + "steel letter '\xd6'" }, { "steel_char_uumlaut", "steel_char", - "steel letter 'Ü'" + "steel letter '\xdc'" }, { "steel_char_degree", "steel_char", - "steel letter '°'" + "steel letter '\xb0'" }, { "steel_char_trademark", "steel_char", - "steel letter '®'" + "steel letter '\xae'" }, { "steel_char_cursor", "steel_char", - "steel letter ' '" + "steel letter '\xa0'" }, { "steel_char_unused", @@ -5580,6 +5558,7 @@ static void print_usage() " -n, --network network multiplayer game\n" " --serveronly only start network server\n" " -v, --verbose verbose mode\n" + " -V, --version show program version\n" " --debug display debugging information\n" " --debug-x11-sync enable X11 synchronous mode\n" " -e, --execute COMMAND execute batch COMMAND\n" @@ -5600,21 +5579,57 @@ static void print_usage() program.command_basename); } -int main(int argc, char *argv[]) +static void print_version() { - char * window_title_string = getWindowTitleString(); + printf("%s %d.%d.%d.%d\n", + PROGRAM_TITLE_STRING, + PROGRAM_VERSION_MAJOR, + PROGRAM_VERSION_MINOR, + PROGRAM_VERSION_PATCH, + PROGRAM_VERSION_BUILD); + + if (options.debug) + { + SDL_version sdl_version; + SDL_VERSION(&sdl_version); + printf("- SDL %d.%d.%d\n", + sdl_version.major, + sdl_version.minor, + sdl_version.patch); + + SDL_IMAGE_VERSION(&sdl_version); + printf("- SDL_image %d.%d.%d\n", + sdl_version.major, + sdl_version.minor, + sdl_version.patch); + + SDL_MIXER_VERSION(&sdl_version); + printf("- SDL_mixer %d.%d.%d\n", + sdl_version.major, + sdl_version.minor, + sdl_version.patch); + + SDL_NET_VERSION(&sdl_version); + printf("- SDL_net %d.%d.%d\n", + sdl_version.major, + sdl_version.minor, + sdl_version.patch); + } +} + +int main(int argc, char *argv[]) +{ InitProgramInfo(argv[0], USERDATA_DIRECTORY, USERDATA_DIRECTORY_UNIX, - PROGRAM_TITLE_STRING, window_title_string, ICON_TITLE_STRING, - X11_ICON_FILENAME, X11_ICONMASK_FILENAME, SDL_ICON_FILENAME, - MSDOS_POINTER_FILENAME, - COOKIE_PREFIX, FILENAME_PREFIX, GAME_VERSION_ACTUAL); + PROGRAM_TITLE_STRING, ICON_TITLE_STRING, SDL_ICON_FILENAME, + COOKIE_PREFIX, GAME_VERSION_ACTUAL); + InitWindowTitleFunction(getWindowTitleString); InitExitMessageFunction(DisplayExitMessage); InitExitFunction(CloseAllAndExit); InitPlatformDependentStuff(); - GetOptions(argv, print_usage); + GetOptions(argv, print_usage, print_version); OpenAll(); EventLoop();