X-Git-Url: https://jxself.org/git/?p=open-adventure.git;a=blobdiff_plain;f=actions2.c;h=f208a4978520ef6c44fa76b92685c2ef56ef27d0;hp=ae2c2f4228f79ad0bca66eb26841bfba076a38ec;hb=43aef9ceb16d0e2821c5ee81ea9d7c2f7ace84bb;hpb=18767d52dd053cf6c851ded2597697674ca255c1 diff --git a/actions2.c b/actions2.c index ae2c2f4..f208a49 100644 --- a/actions2.c +++ b/actions2.c @@ -1,6 +1,4 @@ -#include "misc.h" -#include "main.h" -#include "share.h" +#include "advent.h" #include "funcs.h" /* Carry an object. Special cases for bird and cage (if bird in cage, can't @@ -131,7 +129,7 @@ L9028: PROP[VASE]=2; * objects fall into two categories: enemies (snake, dwarf, etc.) and others * (bird, clam, machine). Ambiguous if 2 enemies, or no enemies but 2 others. */ -int attack() { +int attack(FILE *input) { I=ATDWRF(LOC); if(OBJ != 0) goto L9124; if(I > 0)OBJ=DWARF; @@ -172,11 +170,11 @@ L9126: if(OBJ == 0)SPK=44; if(OBJ != DRAGON || PROP[DRAGON] != 0) return(2011); /* Fun stuff for dragon. If he insists on attacking it, win! Set PROP to dead, * move dragon to central loc (still fixed), move rug there (not fixed), and - * move him there, too. then do a null motion to get new description. */ + * move him there, too. Then do a null motion to get new description. */ RSPEAK(49); VERB=0; OBJ=0; - GETIN(WD1,WD1X,WD2,WD2X); + GETIN(input,WD1,WD1X,WD2,WD2X); if(WD1 != MAKEWD(25) && WD1 != MAKEWD(250519)) return(2607); PSPEAK(DRAGON,3); PROP[DRAGON]=1; @@ -187,9 +185,9 @@ L9126: if(OBJ == 0)SPK=44; MOVE(DRAGON,K); MOVE(RUG,K); DROP(BLOOD,K); - /* 9127 */ for (OBJ=1; OBJ<=100; OBJ++) { + for (OBJ=1; OBJ<=100; OBJ++) { if(PLACE[OBJ] == PLAC[DRAGON] || PLACE[OBJ] == FIXD[DRAGON])MOVE(OBJ,K); -L9127: /*etc*/ ; + /*etc*/ ; } /* end loop */ LOC=K; K=NUL; @@ -214,7 +212,7 @@ L9129: /*etc*/ ; * and if dwarf is present then one might be killed. (Only way to do so!) * Axe also special for dragon, bear, and troll. Treasures special for troll. */ -int throw() { +int throw(FILE *cmdin) { if(TOTING(ROD2) && OBJ == ROD && !TOTING(ROD))OBJ=ROD2; if(!TOTING(OBJ)) return(2011); if(OBJ >= 50 && OBJ <= MAXTRS && AT(TROLL)) goto L9178; @@ -230,10 +228,10 @@ int throw() { if(AT(OGRE)) goto L9175; if(HERE(BEAR) && PROP[BEAR] == 0) goto L9176; OBJ=0; - return(attack()); + return(attack(cmdin)); L9172: SPK=48; - if(RAN(7) < DFLAG) goto L9175; + if(randrange(7) < DFLAG) goto L9175; DSEEN[I]=false; DLOC[I]=0; SPK=47; @@ -267,7 +265,7 @@ L9178: SPK=159; return(2011); } -/* Feed. If bird, no seed. snake, dragon, troll: quip. If dwarf, make him +/* Feed. If bird, no seed. Snake, dragon, troll: quip. If dwarf, make him * mad. Bear, special. */ int feed() {