* enemies, or no enemies but 2 others. */
{
int spk = ACTSPK[verb];
- int i = ATDWRF(game.loc);
+ int d = ATDWRF(game.loc);
if (obj == 0) {
- if (i > 0)
+ if (d > 0)
obj=DWARF;
if (HERE(SNAKE))obj=obj*NOBJECTS+SNAKE;
if (AT(DRAGON) && game.prop[DRAGON] == 0)obj=obj*NOBJECTS+DRAGON;
if (obj == DRAGON)spk=ALREADY_DEAD;
if (obj == TROLL)spk=ROCKY_TROLL;
if (obj == OGRE)spk=OGRE_DOFGE;
- if (obj == OGRE && i > 0) {
+ if (obj == OGRE && d > 0) {
RSPEAK(spk);
RSPEAK(KNIFE_THROWN);
DSTROY(OGRE);
int k=0;
- for (i=1; i < PIRATE; i++) {
+ for (int i=1; i < PIRATE; i++) {
if (game.dloc[i] == game.loc) {
++k;
- game.dloc[i]=61;
+ game.dloc[i] = LOC_LONGWEST;
game.dseen[i]=false;
}
}
{
int spk, k=0;
if (obj == OYSTER)k=1;
- spk=PEARL_FALLS+k;
+ /* FIXME: Arithmetic on message numbers in next lines */
+ spk=PEARL_FALLS+k;
if (TOTING(obj))spk=DROP_CLAM+k;
if (!TOTING(TRIDNT))spk=CLAM_OPENER+k;
if (verb == LOCK)spk=HUH_MAN;
- if (spk == 124) {
+ if (spk == PEARL_FALLS) {
DSTROY(CLAM);
DROP(OYSTER,game.loc);
- DROP(PEARL,105);
+ DROP(PEARL,LOC_CULDESAC);
}
RSPEAK(spk);
return GO_CLEAROBJ;
return GO_CLEAROBJ;
}
game.bonus=133;
- if (game.loc == 115)
+ if (game.loc == LOC_NE)
game.bonus=134;
if (HERE(ROD2))
game.bonus=135;
if (TOTING(RUG))spk=RUG_WIGGLES;
if (obj == RUBY)spk=RUG_SETTLES;
RSPEAK(spk);
- if (spk != 220) {
+ if (spk != RUG_WIGGLES) {
int k = 2-game.prop[RUG];
game.prop[RUG] = k;
if (k == 2) k = PLAC[SAPPH];
if (obj == INTRANSITIVE) {
if (game.prop[RUG] != 2)spk=RUG_NOTHING2;
if (!HERE(RUG))spk=FLAP_ARMS;
- if (spk/2 == 112) {
+ if (spk/2 == 112) { /* FIXME: Arithmetic on message numbers */
RSPEAK(spk);
return GO_CLEAROBJ;
}
RSPEAK(spk);
return GO_TERMINATE;
}
-
+
static int inven(token_t obj)
/* Inventory. If object, treat same as find. Else report on current burden. */
{
- int i;
int spk=NO_CARRY;
- for (i=1; i<=NOBJECTS; i++) {
+ for (int i=1; i<=NOBJECTS; i++) {
if (i == BEAR || !TOTING(i))
continue;
- if (spk == 98)
+ if (spk == NO_CARRY)
RSPEAK(NOW_HOLDING);
game.blklin=false;
PSPEAK(i,-1);
return GO_TOP;
else
return GO_CLEAROBJ;
- }
+ }
}
static int listen(void)
/* Listen. Intransitive only. Print stuff based on objsnd/locsnd. */
{
- int i, k;
+ int k;
int spk=ALL_SILENT;
k=LOCSND[game.loc];
if (k != 0) {
spk=ARB_0;
}
SETPRM(1,game.zzword,0);
- for (i=1; i<=NOBJECTS; i++) {
+ for (int i=1; i<=NOBJECTS; i++) {
if (!HERE(i) || OBJSND[i] == 0 || game.prop[i] < 0)
continue;
PSPEAK(i,OBJSND[i]+game.prop[i]);
if (HERE(obj))
/* FALL THROUGH */;
else if (obj == GRATE) {
- if (game.loc == 1 || game.loc == 4 || game.loc == 7)
+ if (game.loc == LOC_START || game.loc == LOC_VALLEY || game.loc == LOC_SLIT)
obj=DPRSSN;
- if (game.loc > 9 && game.loc < 15)
+ /* FIXME: Arithmetic on location numbers */
+ if (game.loc > LOC_BELOWGRATE && game.loc < LOC_MISTHALL)
obj=ENTRNC;
if (obj != GRATE)
return GO_MOVE;