X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Finit.c;h=f2e48bf0b82f5a66d5e173892df1067721b8ddb7;hb=5ed4de42ced8e7dce5b786ba3d5fd1a6f6a7d7f6;hp=ce89416c783e356126fcaebdbf1d12326543843d;hpb=0a87fde47bcff35f196024766f8d0d00319a28d1;p=rocksndiamonds.git diff --git a/src/init.c b/src/init.c index ce89416c..f2e48bf0 100644 --- a/src/init.c +++ b/src/init.c @@ -17,10 +17,12 @@ #include "misc.h" #include "sound.h" #include "screens.h" +#include "editor.h" #include "tools.h" #include "files.h" #include "joystick.h" #include "image.h" +#include "pcx.h" #include "network.h" #include "netserv.h" @@ -65,6 +67,7 @@ void OpenAll(int argc, char *argv[]) InitSoundServer(); InitJoysticks(); InitRND(NEW_RANDOMIZE); + InitLevelEditorGadgets(); signal(SIGINT, CloseAllAndExit); signal(SIGTERM, CloseAllAndExit); @@ -72,19 +75,10 @@ void OpenAll(int argc, char *argv[]) InitDisplay(); InitWindow(argc, argv); - print_debug("now map window"); - XMapWindow(display, window); XFlush(display); - print_debug("window mapped"); - - print_debug("now init gfx"); - InitGfx(); - - print_debug("gfx initialized"); - InitElementProperties(); DrawMainMenu(); @@ -168,20 +162,21 @@ void InitSound() */ #endif -#else +#else /* MSDOS */ sound_loops_allowed = TRUE; /* setup.sound_loops_on = TRUE; */ -#endif +#endif /* MSDOS */ for(i=0; i= num_joysticks) + joystick_nr = -1; + + /* misuse joystick file descriptor variable to store joystick number */ + stored_player[i].joystick_fd = joystick_nr; + } #endif } @@ -430,10 +448,6 @@ void InitWindow(int argc, char *argv[]) gc_values.background = pen_bg; gc_valuemask = GCGraphicsExposures | GCForeground | GCBackground; gc = XCreateGC(display, window, gc_valuemask, &gc_values); - - - - print_debug("OpenWindow finished"); } void DrawInitText(char *text, int ypos, int color) @@ -527,7 +541,7 @@ void InitGfx() #ifdef MSDOS DrawInitText("MSDOS version done by Guido Schulz",210,FC_BLUE); rest(200); -#endif MSDOS +#endif /* MSDOS */ DrawInitText("Loading graphics:",120,FC_GREEN); for(i=0; ipicture_filename) { @@ -676,7 +680,7 @@ void LoadGfx(int pos, struct PictureFileInfo *pic) #ifdef MSDOS rest(100); -#endif MSDOS +#endif /* MSDOS */ #if DEBUG_TIMING debug_print_timestamp(1, NULL); /* initialize timestamp function */ @@ -709,46 +713,26 @@ void LoadGfx(int pos, struct PictureFileInfo *pic) #else /* !USE_XPM_LIBRARY */ - - - print_debug(filename); - - - pcx_err = Read_PCX_to_Pixmap(display, window, gc, filename, &pix[pos], &clipmask[pos]); - - - print_debug("ok-1"); - - switch(pcx_err) { case PCX_Success: - print_debug("Success"); break; case PCX_OpenFailed: - print_debug("OpenFailed"); Error(ERR_EXIT, "cannot open PCX file '%s'", filename); case PCX_ReadFailed: - print_debug("ReadFailed"); Error(ERR_EXIT, "cannot read PCX file '%s'", filename); case PCX_FileInvalid: - print_debug("FileInvalid"); Error(ERR_EXIT, "invalid PCX file '%s'", filename); case PCX_NoMemory: - print_debug("NoMemory"); Error(ERR_EXIT, "not enough memory for PCX file '%s'", filename); case PCX_ColorFailed: - print_debug("ColorFailed"); Error(ERR_EXIT, "cannot get colors for PCX file '%s'", filename); default: - print_debug("default"); break; } - print_debug("ok-2"); - #if DEBUG_TIMING printf("SUMMARY LOADING PCX FILE %s:", filename); debug_print_timestamp(1, ""); @@ -756,16 +740,8 @@ void LoadGfx(int pos, struct PictureFileInfo *pic) #endif /* !USE_XPM_LIBRARY */ - - print_debug("-> 1"); - - - if (!pix[pos]) Error(ERR_EXIT, "cannot get graphics for '%s'", pic->picture_filename); - - - print_debug("-> 2"); } /* zugehörige Maske laden (wenn vorhanden) */ @@ -806,16 +782,9 @@ void LoadGfx(int pos, struct PictureFileInfo *pic) #endif /* USE_XPM_LIBRARY */ - - if (!clipmask[pos]) - print_debug("Oops -- no clipmask"); - if (!clipmask[pos]) Error(ERR_EXIT, "cannot get clipmask for '%s'", pic->picture_filename); } - - - print_debug("LoadGfx done"); } void InitElementProperties() @@ -1412,5 +1381,9 @@ void CloseAllAndExit(int exit_value) XCloseDisplay(display); } +#ifdef MSDOS + dumpErrorFile(); +#endif + exit(exit_value); }