8be34d401503e144c1dd830f22dbf0e4cc2377cb
[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
9 Bitmap *screenBitmap;
10
11 struct GlobalInfo_EM global_em_info;
12 struct GameInfo_EM game_em;
13
14 void InitGfxBuffers_EM(void)
15 {
16   ReCreateBitmap(&screenBitmap, MAX_BUF_XSIZE * TILEX, MAX_BUF_YSIZE * TILEY);
17
18   global_em_info.screenbuffer = screenBitmap;
19 }
20
21 void em_open_all(void)
22 {
23   InitGraphicInfo_EM();
24
25   game_init_random();
26   game_init_cave_buffers();
27 }
28
29 void em_close_all(void)
30 {
31 }
32
33 /* ---------------------------------------------------------------------- */
34
35 void play_element_sound(int x, int y, int sample, int element)
36 {
37   PlayLevelSound_EM(x, y, element, sample);
38 }
39
40 void play_sound(int x, int y, int sample)
41 {
42   play_element_sound(x, y, sample, -1);
43 }
44
45 unsigned int InitEngineRandom_EM(int seed)
46 {
47   if (seed == NEW_RANDOMIZE)
48   {
49     int simple_rnd = GetSimpleRandom(1000);
50     int i;
51
52     for (i = 0; i < simple_rnd || game_em.random == NEW_RANDOMIZE; i++)
53       game_em.random = game_em.random * 129 + 1;
54
55     seed = game_em.random;
56   }
57
58   game_em.random = seed;
59
60   return (unsigned int)seed;
61 }