X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=actions.c;h=abe9e5bb38ef2eac3a9b3e481bbbf1445c648874;hb=c48c330883b30423517015e6e697d2c25023b53a;hp=73f8f2e7ac89fb3ae72690ef0a3ddeb0da5026ca;hpb=f37a4135246fef3f10112bf16fda181c31178588;p=open-adventure.git diff --git a/actions.c b/actions.c index 73f8f2e..abe9e5b 100644 --- a/actions.c +++ b/actions.c @@ -386,8 +386,8 @@ static int vcarry(token_t verb, token_t obj) carry(obj, game.loc); if (obj == BOTTLE && LIQUID() != NO_OBJECT) game.place[LIQUID()] = CARRIED; - if (GSTONE(obj) && game.prop[obj] != STATE_GROUND) { - game.prop[obj] = STATE_GROUND; + if (GSTONE(obj) && game.prop[obj] != STATE_FOUND) { + game.prop[obj] = STATE_FOUND; game.prop[CAVITY] = CAVITY_EMPTY; } rspeak(OK_MAN); @@ -662,7 +662,7 @@ static int feed(token_t verb, token_t obj) DESTROY(FOOD); game.prop[BEAR] = SITTING_BEAR; game.fixed[AXE] = 0; - game.prop[AXE] = 0; + game.prop[AXE] = AXE_HERE; spk = BEAR_TAMED; } } else if (obj == OGRE) { @@ -1110,7 +1110,6 @@ static int say(struct command_t *command) char word1[TOKLEN + 1]; packed_to_token(command->wd1, word1); int wd = (int) get_vocab_id(word1); - /* FIXME: magic numbers */ if (wd == MOTION_WORD(XYZZY) || wd == MOTION_WORD(PLUGH) || wd == MOTION_WORD(PLOVER) || @@ -1137,8 +1136,6 @@ static int throw (struct command_t *command) * (Only way to do so!) Axe also special for dragon, bear, and * troll. Treasures special for troll. */ { - if (TOTING(ROD2) && command->obj == ROD && !TOTING(ROD)) - command->obj = ROD2; if (!TOTING(command->obj)) { rspeak(actions[command->verb].message); return GO_CLEAROBJ; @@ -1224,7 +1221,7 @@ static int wave(token_t verb, token_t obj) if (game.prop[BIRD] == BIRD_UNCAGED && game.loc == game.place[STEPS] && game.prop[JADE] < 0) { drop(JADE, game.loc); - game.prop[JADE] = 0; + game.prop[JADE] = STATE_FOUND; --game.tally; rspeak(NECKLACE_FLY); return GO_CLEAROBJ;