projects
/
open-adventure.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Moved state_change to misc.c to start using it in main.c, too
[open-adventure.git]
/
actions.c
diff --git
a/actions.c
b/actions.c
index 686d0a676387d649c4c3654690f4cdf0d4b95de1..f73fa5c29c69baf907255998d3d2b3821c5ec0e3 100644
(file)
--- a/
actions.c
+++ b/
actions.c
@@
-6,13
+6,6
@@
static int fill(token_t, token_t);
static int fill(token_t, token_t);
-static void state_change(long obj, long state)
-/* Object must have a change-message list for this to be useful; only some do */
-{
- game.prop[obj] = state;
- pspeak(obj, change, state, true);
-}
-
static int attack(struct command_t *command)
/* Attack. Assume target if unambiguous. "Throw" also links here.
* Attackable objects fall into two categories: enemies (snake,
static int attack(struct command_t *command)
/* Attack. Assume target if unambiguous. "Throw" also links here.
* Attackable objects fall into two categories: enemies (snake,
@@
-303,7
+296,7
@@
static int vcarry(token_t verb, token_t obj)
}
if (game.fixed[obj] != IS_FREE) {
}
if (game.fixed[obj] != IS_FREE) {
- /* Next guard tests whether plant is tiny or stashed */
+
/* Next guard tests whether plant is tiny or stashed */
if (obj == PLANT && game.prop[PLANT] <= PLANT_THIRSTY) {
rspeak(DEEP_ROOTS);
return GO_CLEAROBJ;
if (obj == PLANT && game.prop[PLANT] <= PLANT_THIRSTY) {
rspeak(DEEP_ROOTS);
return GO_CLEAROBJ;
@@
-503,9
+496,9
@@
static int discard(token_t verb, token_t obj, bool just_do_it)
game.loc == objects[PILLOW].plac) {
rspeak(OK_MAN);
} else {
game.loc == objects[PILLOW].plac) {
rspeak(OK_MAN);
} else {
- state_change(VASE, AT(PILLOW)
- ? VASE_WHOLE
- : VASE_DROPPED);
+
state_change(VASE, AT(PILLOW)
+
? VASE_WHOLE
+
: VASE_DROPPED);
if (game.prop[VASE] != VASE_WHOLE)
game.fixed[VASE] = IS_FIXED;
}
if (game.prop[VASE] != VASE_WHOLE)
game.fixed[VASE] = IS_FIXED;
}
@@
-742,8
+735,8
@@
int fill(token_t verb, token_t obj)
}
state_change(BOTTLE, (LIQLOC(game.loc) == OIL)
}
state_change(BOTTLE, (LIQLOC(game.loc) == OIL)
- ? OIL_BOTTLE
- : WATER_BOTTLE);
+
? OIL_BOTTLE
+
: WATER_BOTTLE);
if (TOTING(BOTTLE))
game.place[LIQUID()] = CARRIED;
return GO_CLEAROBJ;
if (TOTING(BOTTLE))
game.place[LIQUID()] = CARRIED;
return GO_CLEAROBJ;
@@
-889,8
+882,7
@@
static int listen(void)
long packed_zzword = token_to_packed(game.zzword);
pspeak(i, hear, mi, true, packed_zzword);
rspeak(NO_MESSAGE);
long packed_zzword = token_to_packed(game.zzword);
pspeak(i, hear, mi, true, packed_zzword);
rspeak(NO_MESSAGE);
- /* FIXME: Magic number, sensitive to bird state logic */
- if (i == BIRD && game.prop[i] == 5)
+ if (i == BIRD && mi == BIRD_ENDSTATE)
DESTROY(BIRD);
return GO_CLEAROBJ;
}
DESTROY(BIRD);
return GO_CLEAROBJ;
}