1 /* 2000-08-10T18:03:54Z
3 * open X11 display and sound
19 char play[SAMPLE_MAX];
20 int play_x[SAMPLE_MAX];
21 int play_y[SAMPLE_MAX];
22 int play_element[SAMPLE_MAX];
24 struct GlobalInfo_EM global_em_info;
25 struct GameInfo_EM game_em;
30 extern void tab_generate();
31 extern void tab_generate_graphics_info_em();
35 Bitmap *emc_bitmaps[2];
37 SetBitmaps_EM(emc_bitmaps);
39 objBitmap = emc_bitmaps[0];
40 sprBitmap = emc_bitmaps[1];
45 void InitGfxBuffers_EM()
47 ReCreateBitmap(&screenBitmap, MAX_BUF_XSIZE * TILEX, MAX_BUF_YSIZE * TILEY,
50 global_em_info.screenbuffer = screenBitmap;
55 /* pre-calculate some data */
58 progname = "emerald mine";
61 Error(ERR_EXIT, "em_open_all(): open_all() failed");
63 /* after "open_all()", because we need the graphic bitmaps to be defined */
64 tab_generate_graphics_info_em();
69 void em_close_all(void)
73 /* ---------------------------------------------------------------------- */
78 void play_element_sound(int x, int y, int sample, int element)
80 PlayLevelSound_EM(x, y, element, sample);
83 void play_sound(int x, int y, int sample)
85 play_element_sound(x, y, sample, -1);
92 unsigned int InitEngineRandom_EM(int seed)
94 if (seed == NEW_RANDOMIZE)
96 int simple_rnd = GetSimpleRandom(1000);
99 for (i = 0; i < simple_rnd || RandomEM == NEW_RANDOMIZE; i++)
100 RandomEM = RandomEM * 129 + 1;
107 return (unsigned int) seed;