X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=actions.c;h=ca243b6c13c548dabcb5f15ecb1bb861852d160c;hb=535d9e7964e0033d42f01639ac9dc0e3b169d956;hp=4fd0dda52652fe7941e58390779a5eaf407e4960;hpb=8bd947b54d365f4e8a119be761021be055ea8748;p=open-adventure.git diff --git a/actions.c b/actions.c index 4fd0dda..ca243b6 100644 --- a/actions.c +++ b/actions.c @@ -1144,18 +1144,19 @@ static int rub(verb_t verb, obj_t obj) static int say(struct command_t *command) /* Say. Echo WD2. Magic words override. */ { - long wd; - enum wordtype type; - get_vocab_metadata(command->raw2, &wd, &type); - if (wd == XYZZY || - wd == PLUGH || - wd == PLOVER || - wd == FEE || - wd == FIE || - wd == FOE || - wd == FOO || - wd == FUM || - wd == PART) { + if (command->type2 == MOTION && + (command->id2 == XYZZY || + command->id2 == PLUGH || + command->id2 == PLOVER)) { + return GO_WORD2; + } + if (command->type2 == ACTION && + (command->id2 == FEE || + command->id2 == FIE || + command->id2 == FOE || + command->id2 == FOO || + command->id2 == FUM || + command->id2 == PART)) { return GO_WORD2; } sspeak(OKEY_DOKEY, command->raw2); @@ -1304,20 +1305,7 @@ int action(struct command_t *command) * location. */ if (HERE(command->obj)) /* FALL THROUGH */; - else if (command->obj == GRATE) { - if (game.loc == LOC_START || - game.loc == LOC_VALLEY || - game.loc == LOC_SLIT) { - command->obj = DEPRESSION; - } - if (game.loc == LOC_COBBLE || - game.loc == LOC_DEBRIS || - game.loc == LOC_AWKWARD || - game.loc == LOC_BIRD || - game.loc == LOC_PITTOP) { - command->obj = ENTRANCE; - } - } else if (command->obj == DWARF && atdwrf(game.loc) > 0) + else if (command->obj == DWARF && atdwrf(game.loc) > 0) /* FALL THROUGH */; else if ((LIQUID() == command->obj && HERE(BOTTLE)) || command->obj == LIQLOC(game.loc))