removed unused bitmaps from EM engine
[rocksndiamonds.git] / src / game_em / init.c
1 /* 2000-08-10T18:03:54Z
2  *
3  * open X11 display and sound
4  */
5
6 #include "main_em.h"
7
8 #include <signal.h>
9
10
11 Bitmap *screenBitmap;
12
13 struct GlobalInfo_EM global_em_info;
14 struct GameInfo_EM game_em;
15
16 int open_all(void)
17 {
18   return 0;
19 }
20
21 void InitGfxBuffers_EM(void)
22 {
23   ReCreateBitmap(&screenBitmap, MAX_BUF_XSIZE * TILEX, MAX_BUF_YSIZE * TILEY);
24
25   global_em_info.screenbuffer = screenBitmap;
26 }
27
28 void em_open_all(void)
29 {
30   /* pre-calculate some data */
31   tab_generate();
32
33   if (open_all() != 0)
34     Error(ERR_EXIT, "em_open_all(): open_all() failed");
35
36   /* after "open_all()", because we need the graphic bitmaps to be defined */
37   tab_generate_graphics_info_em();
38
39   game_init_random();
40   game_init_cave_buffers();
41 }
42
43 void em_close_all(void)
44 {
45 }
46
47 /* ---------------------------------------------------------------------- */
48
49 extern int screen_x;
50 extern int screen_y;
51
52 void play_element_sound(int x, int y, int sample, int element)
53 {
54   PlayLevelSound_EM(x, y, element, sample);
55 }
56
57 void play_sound(int x, int y, int sample)
58 {
59   play_element_sound(x, y, sample, -1);
60 }
61
62 unsigned int InitEngineRandom_EM(int seed)
63 {
64   if (seed == NEW_RANDOMIZE)
65   {
66     int simple_rnd = GetSimpleRandom(1000);
67     int i;
68
69     for (i = 0; i < simple_rnd || RandomEM == NEW_RANDOMIZE; i++)
70       RandomEM = RandomEM * 129 + 1;
71
72     seed = RandomEM;
73   }
74
75   RandomEM = seed;
76
77   return (unsigned int) seed;
78 }