X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=misc.c;h=adbccdb065bd08f3598c163d75053fdfde1f62a0;hb=d402e0941196131533b92b51243fda9268fa6069;hp=e95439c01e67aaab20c523a31fb5dc31f5cbc96b;hpb=18eac9f55d187366307d1d035988b29a9dc81a59;p=open-adventure.git diff --git a/misc.c b/misc.c index e95439c..adbccdb 100644 --- a/misc.c +++ b/misc.c @@ -3,9 +3,7 @@ #include #include #include -#include "main.h" -#include "share.h" /* for SETUP */ -#include "misc.h" +#include "advent.h" #include "funcs.h" #include "database.h" @@ -778,35 +776,33 @@ long randrange(long range) #undef RNDVOC long fRNDVOC(long CHAR, long FORCE) { -long DIV, J, RNDVOC; - /* Searches the vocabulary for a word whose second character is char, and * changes that word such that each of the other four characters is a * random letter. If force is non-zero, it is used as the new word. * Returns the new word. */ + long RNDVOC; RNDVOC=FORCE; if (RNDVOC == 0) { for (int I = 1; I <= 5; I++) { - J = 11 + randrange(26); + long J = 11 + randrange(26); if (I == 2) J = CHAR; RNDVOC = RNDVOC * 64 + J; } } - J = 10000; - DIV = 64L * 64L * 64L; - + long DIV = 64L * 64L * 64L; for (int I = 1; I <= TABSIZ; I++) { - J = J + 7; - if (MOD((ATAB[I]-J*J)/DIV, 64L) == CHAR) - break; + if (MOD(ATAB[I]/DIV, 64L) == CHAR) + { + ATAB[I] = RNDVOC; + break; + } } - ATAB[I] = RNDVOC + J * J; return(RNDVOC); } @@ -900,7 +896,7 @@ long I, VAL; IGNORE(fputs(rawbuf, stdout)); strcpy(INLINE+1, rawbuf); LNLENG=0; - for (I=1; I<=sizeof(INLINE) && INLINE[I]!=0; I++) { + for (I=1; I<=(long)sizeof(INLINE) && INLINE[I]!=0; I++) { VAL=INLINE[I]+1; INLINE[I]=MAP1[VAL]; if(INLINE[I] != 0)LNLENG=I; @@ -939,7 +935,7 @@ L10: if(MAP2[1] == 0)MPINIT(); #undef MPINIT void fMPINIT(void) { long FIRST, I, J, LAST, VAL; -static long RUNS[7][2] = {32,34, 39,46, 65,90, 97,122, 37,37, 48,57, 0,126}; +static long RUNS[7][2] = { {32,34}, {39,46}, {65,90}, {97,122}, {37,37}, {48,57}, {0,126} }; for (I=1; I<=128; I++) {