#include "config.h"
#include "file.h"
#include "globals.h"
+#include "mt.h"
#include "rocks.h"
#include "shape.h"
#define RDX 2.5 // range for rock dx values (+/-)
#define RDY 2.5 // range for rock dy values (+/-)
-float rnd(void);
-
-#define crnd() (2*(rnd()-0.5))
-
-
int
init_rocks(void)
{
float
weighted_rnd_range(float min, float max) {
- return sqrt(min * min + rnd() * (max * max - min * min));
+ return sqrt(min * min + frnd() * (max * max - min * min));
}
void
switch(i) {
case RIGHT:
rockptr->x = XSIZE;
- rockptr->y = rnd()*(YSIZE + rockptr->image->h);
+ rockptr->y = frnd()*(YSIZE + rockptr->image->h);
rockptr->dx = -weighted_rnd_range(rmin[i], rmax[i]) + screendx;
rockptr->dy = RDY*crnd();
break;
case LEFT:
rockptr->x = -rockptr->image->w;
- rockptr->y = rnd()*(YSIZE + rockptr->image->h);
+ rockptr->y = frnd()*(YSIZE + rockptr->image->h);
rockptr->dx = weighted_rnd_range(rmin[i], rmax[i]) + screendx;
rockptr->dy = RDY*crnd();
break;
case BOTTOM:
- rockptr->x = rnd()*(XSIZE + rockptr->image->w);
+ rockptr->x = frnd()*(XSIZE + rockptr->image->w);
rockptr->y = YSIZE;
rockptr->dx = RDX*crnd();
rockptr->dy = -weighted_rnd_range(rmin[i], rmax[i]) + screendy;
break;
case TOP:
- rockptr->x = rnd()*(XSIZE + rockptr->image->w);
+ rockptr->x = frnd()*(XSIZE + rockptr->image->w);
rockptr->y = -rockptr->image->h;
rockptr->dx = RDX*crnd();