DEADSOFTWARE

menu: remove data field from menu_t
[flatwaifu.git] / src / miscc.c
index 2ece443937950ae40de63f13a88cc8537a3e5248..50f02fdf16b7d6afe30e9aa32ed60da50e33167f 100644 (file)
 
 #define MAX_YV 30
 
-extern dword walf[256];
-
-byte z_dot=0;
-
-extern void *walp[256];
-
+byte z_dot;
+byte z_mon;
 static void *bulsnd[2];
+static byte wfront;
 
 int Z_sign(int a) {
   if(a>0) return 1;
@@ -63,28 +60,22 @@ int Z_dec(int a,int b) {
 
 void *Z_getsnd(char n[6]) {
   char s[8];
-
-  //if(snd_type==-1) return NULL;
-  strncpy(s+2,n,6);s[0]='D';
-  s[1]='S';
-
-  int id = F_getresid(s);
-  int loaded = M_was_locked(id);
-  snd_t *snd = M_lock(id);
-  if (snd != NULL && !loaded) {
-    snd->len = int2host(snd->len);
-    snd->rate = int2host(snd->rate);
-    snd->lstart = int2host(snd->lstart);
-    snd->llen = int2host(snd->llen);
-  }
-  return snd;
+  s[0] = 'D';
+  s[1] = 'S';
+  strncpy(&s[2], n, 6);
+  return S_load(s);
 }
 
-int Z_sound(void *s,int v) {
-  //if(snd_type==-1) return 0;
-  if(!s) return 0;
-  S_play(s,-1,1024,v);
-  return F_getreslen(((int*)s)[-1])/605;
+int Z_sound (void *s, int v) {
+  if (s != NULL) {
+    S_play(s, 0, v);
+    // TODO ???
+    //S_play(s, -1, 1024, v);
+    //return F_getreslen(((int*)s)[-1])/605;
+    return 0;
+  } else {
+    return 0;
+  }
 }
 
 #define GAS_START (MN__LAST-MN_DEMON+5)
@@ -111,7 +102,7 @@ int Z_canstand(int x,int y,int r) {
   return 0;
 }
 
-int Z_hitceil(int x,int y,int r,int h) {
+static int Z_hitceil(int x,int y,int r,int h) {
   int i;
 
   i=(x-r)/CELW;
@@ -146,7 +137,7 @@ int Z_canfit(int x,int y,int r,int h) {
   return 1;
 }
 
-int Z_inlift(int x,int y,int r,int h) {
+static int Z_inlift(int x,int y,int r,int h) {
   int i,j,sx,sy;
 
   sx=(x-r)/CELW;
@@ -163,7 +154,7 @@ int Z_inlift(int x,int y,int r,int h) {
   return 0;
 }
 
-int Z_isblocked(int x,int y,int r,int h,int xv) {
+static int Z_isblocked(int x,int y,int r,int h,int xv) {
   int i,j,sx,sy;
 
   sx=(x-r)/CELW;
@@ -206,8 +197,6 @@ void Z_set_speed(obj_t *o,int s) {
   o->xv=o->xv*s/m;o->yv=o->yv*s/m;
 }
 
-static byte wfront;
-
 int Z_inwater(int x,int y,int r,int h) {
   int i,j,sx,sy;
 
@@ -271,7 +260,7 @@ int Z_overlap(obj_t *a,obj_t *b) {
   return 1;
 }
 
-void Z_kickobj(obj_t *o,int x,int y,int pwr) {
+static void Z_kickobj(obj_t *o,int x,int y,int pwr) {
   int dx,dy,m;
 
   dx=o->x-x;dy=o->y-o->h/2-y;
@@ -326,8 +315,6 @@ int Z_look(obj_t *a,obj_t *b,int d) {
 
 #define wvel(v) if((xv=abs(v)+1)>5) v=Z_dec(v,xv/2-2)
 
-byte z_mon=0;
-
 int Z_moveobj(obj_t *p) {
   static int x,y,xv,yv,r,h,lx,ly,st;
   static byte inw;
@@ -392,7 +379,7 @@ int Z_moveobj(obj_t *p) {
 
 void Z_splash (obj_t *p, int n) {
   Z_sound(bulsnd[0], 128);
-  DOT_water(p->x, p->y-p->h / 2, p->xv + p->vx, p->yv + p->vy, n, R_get_special_id(wfront));
+  DOT_water(p->x, p->y-p->h / 2, p->xv + p->vx, p->yv + p->vy, n, R_get_special_id(wfront) - 1);
 }
 
 void Z_calc_time(dword t,word *h,word *m,word *s)
@@ -410,7 +397,7 @@ void Z_calc_time(dword t,word *h,word *m,word *s)
 
 #define SWAP_VAR(a, b) do { unsigned char t = a; a = b; b = t; } while(0)
 
-int16_t short2swap (int16_t x) {
+static int16_t short2swap (int16_t x) {
   union {
     uint8_t a[2];
     int16_t x;
@@ -420,7 +407,7 @@ int16_t short2swap (int16_t x) {
   return y.x;
 }
 
-int32_t int2swap (int32_t x) {
+static int32_t int2swap (int32_t x) {
   union {
     uint8_t a[4];
     int32_t x;