Move PRNG initialization to simplify cheat.c

This commit is contained in:
Eric S. Raymond 2017-07-01 08:59:45 -04:00
parent 0a87fc9f78
commit 065caace64
4 changed files with 15 additions and 20 deletions

14
init.c
View file

@ -2,6 +2,7 @@
#include <stdlib.h>
#include <stdio.h>
#include <stdbool.h>
#include <time.h>
#include "advent.h"
@ -9,11 +10,20 @@
* Initialisation
*/
void initialise(void)
long initialise(void)
{
if (oldstyle)
printf("Initialising...\n");
/* Initialize our LCG PRNG with parameters tested against
* Knuth vol. 2. by the original authors */
game.lcg_a = 1093;
game.lcg_c = 221587;
game.lcg_m = 1048576;
srand(time(NULL));
long seedval = (long)rand();
set_seed(seedval);
for (int i = 1; i <= NOBJECTS; i++) {
game.place[i] = LOC_NOWHERE;
}
@ -57,4 +67,6 @@ void initialise(void)
}
}
game.conds = setbit(11);
return seedval;
}