projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rnd-19990125-1
[rocksndiamonds.git]
/
src
/
init.c
diff --git
a/src/init.c
b/src/init.c
index 813412453badfcb820fd1f30a14ae591f397ab23..dfbdd059a930c00314d18bc6787bae6f89b3a9e6 100644
(file)
--- a/
src/init.c
+++ b/
src/init.c
@@
-18,6
+18,8
@@
#include "sound.h"
#include "screens.h"
#include "editor.h"
#include "sound.h"
#include "screens.h"
#include "editor.h"
+#include "game.h"
+#include "tape.h"
#include "tools.h"
#include "files.h"
#include "joystick.h"
#include "tools.h"
#include "files.h"
#include "joystick.h"
@@
-48,6
+50,7
@@
static void InitSoundServer(void);
static void InitWindow(int, char **);
static void InitGfx(void);
static void LoadGfx(int, struct PictureFileInfo *);
static void InitWindow(int, char **);
static void InitGfx(void);
static void LoadGfx(int, struct PictureFileInfo *);
+static void InitGadgets(void);
static void InitElementProperties(void);
void OpenAll(int argc, char *argv[])
static void InitElementProperties(void);
void OpenAll(int argc, char *argv[])
@@
-67,7
+70,6
@@
void OpenAll(int argc, char *argv[])
InitSoundServer();
InitJoysticks();
InitRND(NEW_RANDOMIZE);
InitSoundServer();
InitJoysticks();
InitRND(NEW_RANDOMIZE);
- InitLevelEditorGadgets();
signal(SIGINT, CloseAllAndExit);
signal(SIGTERM, CloseAllAndExit);
signal(SIGINT, CloseAllAndExit);
signal(SIGTERM, CloseAllAndExit);
@@
-80,6
+82,7
@@
void OpenAll(int argc, char *argv[])
InitGfx();
InitElementProperties();
InitGfx();
InitElementProperties();
+ InitGadgets();
DrawMainMenu();
DrawMainMenu();
@@
-348,8
+351,8
@@
void InitWindow(int argc, char *argv[])
XSizeHints size_hints;
XWMHints wm_hints;
XClassHint class_hints;
XSizeHints size_hints;
XWMHints wm_hints;
XClassHint class_hints;
- char *window_name = WINDOWTITLE_STRING;
- char *icon_name = WINDOWTITLE_STRING;
+ char *window_name = WINDOW
_
TITLE_STRING;
+ char *icon_name = WINDOW
_
TITLE_STRING;
long window_event_mask;
Atom proto_atom = None, delete_atom = None;
#endif
long window_event_mask;
Atom proto_atom = None, delete_atom = None;
#endif
@@
-436,9
+439,11
@@
void InitWindow(int argc, char *argv[])
XFree(iconName.value);
/* Select event types wanted */
XFree(iconName.value);
/* Select event types wanted */
- window_event_mask = ExposureMask | StructureNotifyMask | FocusChangeMask |
- ButtonPressMask | ButtonReleaseMask | ButtonMotionMask |
- KeyPressMask | KeyReleaseMask;
+ window_event_mask =
+ ExposureMask | StructureNotifyMask | FocusChangeMask |
+ ButtonPressMask | ButtonReleaseMask | PointerMotionMask |
+ PointerMotionHintMask | KeyPressMask | KeyReleaseMask;
+
XSelectInput(display, window, window_event_mask);
#endif
XSelectInput(display, window, window_event_mask);
#endif
@@
-538,7
+543,7
@@
void InitGfx()
#endif
LoadGfx(PIX_SMALLFONT,&pic[PIX_SMALLFONT]);
#endif
LoadGfx(PIX_SMALLFONT,&pic[PIX_SMALLFONT]);
- DrawInitText(WINDOWTITLE_STRING,20,FC_YELLOW);
+ DrawInitText(WINDOW
_
TITLE_STRING,20,FC_YELLOW);
DrawInitText(COPYRIGHT_STRING,50,FC_RED);
#ifdef MSDOS
DrawInitText("MSDOS version done by Guido Schulz",210,FC_BLUE);
DrawInitText(COPYRIGHT_STRING,50,FC_RED);
#ifdef MSDOS
DrawInitText("MSDOS version done by Guido Schulz",210,FC_BLUE);
@@
-789,6
+794,14
@@
void LoadGfx(int pos, struct PictureFileInfo *pic)
}
}
}
}
+void InitGadgets()
+{
+ CreateLevelEditorGadgets();
+ CreateGameButtons();
+ CreateTapeButtons();
+ CreateToolButtons();
+}
+
void InitElementProperties()
{
int i,j;
void InitElementProperties()
{
int i,j;
@@
-885,11
+898,12
@@
void InitElementProperties()
EL_SP_HARD_BASE5,
EL_SP_HARD_BASE6,
EL_SP_TERMINAL,
EL_SP_HARD_BASE5,
EL_SP_HARD_BASE6,
EL_SP_TERMINAL,
- EL_SP_EXIT
+ EL_SP_EXIT,
+ EL_INVISIBLE_STEEL
};
static int ep_solid_num = sizeof(ep_solid)/sizeof(int);
};
static int ep_solid_num = sizeof(ep_solid)/sizeof(int);
- static int ep_massiv[] =
+ static int ep_massiv
e
[] =
{
EL_BETON,
EL_SALZSAEURE,
{
EL_BETON,
EL_SALZSAEURE,
@@
-917,8
+931,9
@@
void InitElementProperties()
EL_SP_HARD_BASE4,
EL_SP_HARD_BASE5,
EL_SP_HARD_BASE6,
EL_SP_HARD_BASE4,
EL_SP_HARD_BASE5,
EL_SP_HARD_BASE6,
+ EL_INVISIBLE_STEEL
};
};
- static int ep_massiv
_num = sizeof(ep_massiv
)/sizeof(int);
+ static int ep_massiv
e_num = sizeof(ep_massive
)/sizeof(int);
static int ep_slippery[] =
{
static int ep_slippery[] =
{
@@
-942,6
+957,7
@@
void InitElementProperties()
EL_BADEWANNE2,
EL_SONDE,
EL_SP_ZONK,
EL_BADEWANNE2,
EL_SONDE,
EL_SP_ZONK,
+ EL_SP_INFOTRON,
EL_SP_CHIP_SINGLE,
EL_SP_CHIP_LEFT,
EL_SP_CHIP_RIGHT,
EL_SP_CHIP_SINGLE,
EL_SP_CHIP_LEFT,
EL_SP_CHIP_RIGHT,
@@
-1004,7
+1020,8
@@
void InitElementProperties()
EL_SP_HARD_BASE5,
EL_SP_HARD_BASE6,
EL_SP_TERMINAL,
EL_SP_HARD_BASE5,
EL_SP_HARD_BASE6,
EL_SP_TERMINAL,
- EL_SP_EXIT
+ EL_SP_EXIT,
+ EL_INVISIBLE_STEEL
};
static int ep_mauer_num = sizeof(ep_mauer)/sizeof(int);
};
static int ep_mauer_num = sizeof(ep_mauer)/sizeof(int);
@@
-1135,7
+1152,7
@@
void InitElementProperties()
EL_SALZSAEURE,
EL_SP_SNIKSNAK,
EL_SP_ELECTRON,
EL_SALZSAEURE,
EL_SP_SNIKSNAK,
EL_SP_ELECTRON,
- EL_SP_BUG
+ EL_SP_BUG
_ACTIVE
};
static int ep_dont_go_to_num = sizeof(ep_dont_go_to)/sizeof(int);
};
static int ep_dont_go_to_num = sizeof(ep_dont_go_to)/sizeof(int);
@@
-1198,7
+1215,8
@@
void InitElementProperties()
EL_SOKOBAN_OBJEKT,
EL_SOKOBAN_FELD_LEER,
EL_SOKOBAN_FELD_VOLL,
EL_SOKOBAN_OBJEKT,
EL_SOKOBAN_FELD_LEER,
EL_SOKOBAN_FELD_VOLL,
- EL_SPIELFIGUR
+ EL_SPIELFIGUR,
+ EL_INVISIBLE_STEEL
};
static int ep_sb_element_num = sizeof(ep_sb_element)/sizeof(int);
};
static int ep_sb_element_num = sizeof(ep_sb_element)/sizeof(int);
@@
-1280,7
+1298,6
@@
void InitElementProperties()
EL_SP_PORT_XY,
EL_SP_DISK_RED,
EL_SP_DISK_YELLOW,
EL_SP_PORT_XY,
EL_SP_DISK_RED,
EL_SP_DISK_YELLOW,
- EL_SP_TERMINAL,
EL_SP_CHIP_SINGLE,
EL_SP_CHIP_LEFT,
EL_SP_CHIP_RIGHT,
EL_SP_CHIP_SINGLE,
EL_SP_CHIP_LEFT,
EL_SP_CHIP_RIGHT,
@@
-1297,8
+1314,8
@@
void InitElementProperties()
EL_SP_HARD_BASE4,
EL_SP_HARD_BASE5,
EL_SP_HARD_BASE6,
EL_SP_HARD_BASE4,
EL_SP_HARD_BASE5,
EL_SP_HARD_BASE6,
- EL_SP_
TERMINAL
,
- EL_
SP_EXIT
+ EL_SP_
EXIT
,
+ EL_
INVISIBLE_STEEL
};
static int ep_inactive_num = sizeof(ep_inactive)/sizeof(int);
};
static int ep_inactive_num = sizeof(ep_inactive)/sizeof(int);
@@
-1431,7
+1448,7
@@
void InitElementProperties()
EP_BIT_SCHLUESSEL,
EP_BIT_PFORTE,
EP_BIT_SOLID,
EP_BIT_SCHLUESSEL,
EP_BIT_PFORTE,
EP_BIT_SOLID,
- EP_BIT_MASSIV,
+ EP_BIT_MASSIV
E
,
EP_BIT_SLIPPERY,
EP_BIT_ENEMY,
EP_BIT_MAUER,
EP_BIT_SLIPPERY,
EP_BIT_ENEMY,
EP_BIT_MAUER,
@@
-1462,7
+1479,7
@@
void InitElementProperties()
ep_schluessel,
ep_pforte,
ep_solid,
ep_schluessel,
ep_pforte,
ep_solid,
- ep_massiv,
+ ep_massiv
e
,
ep_slippery,
ep_enemy,
ep_mauer,
ep_slippery,
ep_enemy,
ep_mauer,
@@
-1493,7
+1510,7
@@
void InitElementProperties()
&ep_schluessel_num,
&ep_pforte_num,
&ep_solid_num,
&ep_schluessel_num,
&ep_pforte_num,
&ep_solid_num,
- &ep_massiv_num,
+ &ep_massiv
e
_num,
&ep_slippery_num,
&ep_enemy_num,
&ep_mauer_num,
&ep_slippery_num,
&ep_enemy_num,
&ep_mauer_num,