fixed compiler warnings (after adding "-Wmissing-prototypes")
[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 *objBitmap;
12 Bitmap *sprBitmap;
13
14 Bitmap *screenBitmap;
15
16 char play[SAMPLE_MAX];
17 int play_x[SAMPLE_MAX];
18 int play_y[SAMPLE_MAX];
19 int play_element[SAMPLE_MAX];
20
21 struct GlobalInfo_EM global_em_info;
22 struct GameInfo_EM game_em;
23
24 char *progname;
25 char *arg_basedir;
26
27 int open_all(void)
28 {
29   Bitmap *emc_bitmaps[2];
30
31   SetBitmaps_EM(emc_bitmaps);
32
33   objBitmap = emc_bitmaps[0];
34   sprBitmap = emc_bitmaps[1];
35
36   return 0;
37 }
38
39 void InitGfxBuffers_EM(void)
40 {
41   ReCreateBitmap(&screenBitmap, MAX_BUF_XSIZE * TILEX, MAX_BUF_YSIZE * TILEY);
42
43   global_em_info.screenbuffer = screenBitmap;
44 }
45
46 void em_open_all(void)
47 {
48   /* pre-calculate some data */
49   tab_generate();
50
51   progname = "emerald mine";
52
53   if (open_all() != 0)
54     Error(ERR_EXIT, "em_open_all(): open_all() failed");
55
56   /* after "open_all()", because we need the graphic bitmaps to be defined */
57   tab_generate_graphics_info_em();
58
59   game_init_vars();
60 }
61
62 void em_close_all(void)
63 {
64 }
65
66 /* ---------------------------------------------------------------------- */
67
68 extern int screen_x;
69 extern int screen_y;
70
71 void play_element_sound(int x, int y, int sample, int element)
72 {
73   PlayLevelSound_EM(x, y, element, sample);
74 }
75
76 void play_sound(int x, int y, int sample)
77 {
78   play_element_sound(x, y, sample, -1);
79 }
80
81 void sound_play(void)
82 {
83 }
84
85 unsigned int InitEngineRandom_EM(int seed)
86 {
87   if (seed == NEW_RANDOMIZE)
88   {
89     int simple_rnd = GetSimpleRandom(1000);
90     int i;
91
92     for (i = 0; i < simple_rnd || RandomEM == NEW_RANDOMIZE; i++)
93       RandomEM = RandomEM * 129 + 1;
94
95     seed = RandomEM;
96   }
97
98   RandomEM = seed;
99
100   return (unsigned int) seed;
101 }