Renamed pack.c to jnbpack.c and unpack.c to jnbunpack.c.
[crow/jumpnbump.git] / globals.h
index 9155fea..6b6e0c0 100644 (file)
--- a/globals.h
+++ b/globals.h
@@ -2,9 +2,9 @@
  * globals.h
  * Copyright (C) 1998 Brainchild Design - http://brainchilddesign.com/
  * 
- * Copyright (C) 2001 tarzeau@space.ch
+ * Copyright (C) 2001 Chuck Mason <cemason@users.sourceforge.net>
  *
- * Copyright (C) 2002 Florian Schulze - crow@icculus.org
+ * Copyright (C) 2002 Florian Schulze <crow@icculus.org>
  *
  * Portions of this code are from the MPEG software simulation group
  * idct implementation. This code will be replaced with a new
@@ -65,6 +65,8 @@
 # endif
 #endif
 
+#define JNB_VERSION "1.34"
+
 #define JNB_WIDTH 400
 #define JNB_HEIGHT 256
 extern int screen_width;
@@ -144,6 +146,16 @@ extern int bytes_per_pixel;
 #define BAN_ICE                3
 #define BAN_SPRING     4
 
+#ifndef DATA_PATH
+#ifdef __APPLE__
+#define        DATA_PATH "data/jumpbump.dat"
+#elif _WIN32
+#define        DATA_PATH "data/jumpbump.dat"
+#else
+#define        DATA_PATH "/usr/share/jumpnbump/jumpbump.dat"
+#endif
+#endif
+
 typedef struct {
        int num_images;
        int *width;
@@ -154,9 +166,9 @@ typedef struct {
        void **orig_data;
 } gob_t;
 
-struct {
+typedef struct {
        int joy_enabled, mouse_enabled;
-       int no_sound, no_gore, fireworks;
+       int no_sound, music_no_sound, no_gore, fireworks;
        char error_str[256];
        int draw_page, view_page;
        struct {
@@ -169,9 +181,9 @@ struct {
                } pobs[NUM_POBS];
        } page_info[2];
        void *pob_backbuf[2];
-} main_info;
+} main_info_t;
 
-struct {
+typedef struct {
        int action_left,action_up,action_right;
        int enabled, dead_flag;
        int bumps;
@@ -180,18 +192,18 @@ struct {
        int x_add, y_add;
        int direction, jump_ready, jump_abort, in_water;
        int anim, frame, frame_tick, image;
-} player[4];
+} player_t;
 
-struct {
+typedef struct {
        int num_frames;
        int restart_frame;
        struct {
                int image;
                int ticks;
        } frame[4];
-} player_anims[7];
+} player_anim_t;
 
-struct {
+typedef struct {
        int used, type;
        int x, y;
        int x_add, y_add;
@@ -199,9 +211,9 @@ struct {
        int anim;
        int frame, ticks;
        int image;
-} objects[NUM_OBJECTS];
+} object_t;
 
-struct {
+typedef struct {
        int x, y;
        int raw_x, raw_y;
        int but1, but2;
@@ -209,16 +221,23 @@ struct {
                int x1, x2, x3;
                int y1, y2, y3;
        } calib_data;
-} joy;
+} joy_t;
 
-struct {
+typedef struct {
        int but1, but2, but3;
-} mouse;
+} mouse_t;
+
+extern main_info_t main_info;
+extern player_t player[4];
+extern player_anim_t player_anims[7];
+extern object_t objects[NUM_OBJECTS];
+extern joy_t joy;
+extern mouse_t mouse;
 
-char datfile_name[2048];
+extern char datfile_name[2048];
 
-char *background_pic;
-char *mask_pic;
+extern char *background_pic;
+extern char *mask_pic;
 
 extern gob_t rabbit_gobs;
 extern gob_t font_gobs;
@@ -307,9 +326,7 @@ void register_mask(void *pixels);
 /* gfx.c */
 
 #ifdef USE_SDL
-#if ((!defined _MSC_VER) && (!defined __CYGWIN__))
-long filelength(int handle);
-#endif
+//long filelength(int handle);
 void fs_toggle();
 int intr_sysupdate();
 #endif