mjl
b1342ea8af
Removed duplicate entry. Fixes FreeBSD PR/21629.
2000-09-29 00:40:40 +00:00
jsm
5fd015d6f6
In cypher(), don't attempt to make sense of words other than VERBs or
...
KNIFE when a verb is required. Add AUXVERB for "make", "move",
"climb" (as in "make love", "climb up") and ignore AUXVERB as a verb,
going on to the next word, instead of treating these words as
adjectives. When creating new verbs from "put on", "put down", "take
off", mark them as type VERB. Mostly from Paul Janzen
<pjanzen@foatdi.harvard.edu>.
2000-09-25 19:37:58 +00:00
jsm
ca0c4d77e3
Add new flags OBJ_PERSON and OBJ_NONOBJ to the objflags array.
2000-09-25 14:44:59 +00:00
jsm
e2872de219
Add OBJ_AN flag to objflags so as to use "a" or "an" appropriately in
...
messages; avoids "a amulet", "a Elf". Define and use macros to use
"a", "an", "the", "is", "are" appropriately. Partly based on OpenBSD.
2000-09-25 14:08:08 +00:00
jsm
293597460a
Remove excess blank lines. From OpenBSD.
2000-09-25 14:06:20 +00:00
jsm
4cf0caf4ef
Fix loving already loved goddess; avoid fallthrough after loving
...
goddess; give error on "love amulet". From OpenBSD.
2000-09-25 14:05:52 +00:00
jsm
9cffc34578
Use defined constant FINAL instead of hardcoded 275. From OpenBSD.
2000-09-25 00:33:18 +00:00
jsm
f97a3c82c3
Fix logic error in use of n and wordnumber in murder() when using
...
laser. From OpenBSD.
2000-09-25 00:28:54 +00:00
jsm
572a824811
Discard any part of a line of input that goes beyond our buffer rather
...
than treating it as our next line of input. From OpenBSD.
2000-09-24 15:51:40 +00:00
jsm
96232c1c4d
Give less cryptic messages than "-1%" when WEIGHT or CUMBER are zero.
2000-09-24 14:42:18 +00:00
jsm
ad9cea40fa
Add explicit no-ops to empty loops following the NetBSD style guide.
2000-09-24 14:20:23 +00:00
jsm
579d7e283b
Make hash table static in parse.c.
2000-09-24 14:11:09 +00:00
jsm
91d0e30d01
Use NULL instead of 0 (from OpenBSD). Also add or adjust comments.
2000-09-24 09:47:22 +00:00
jsm
ac1f171d5b
Correct spelling "dont" to "don't". From OpenBSD.
2000-09-24 09:46:57 +00:00
jsm
44c05578b0
Make functions local to parse.c static.
2000-09-24 09:46:28 +00:00
jsm
b40caee28a
Give a better message for trying to eat things it doesn't make sense
...
to eat. For something eatable, check first whether you're holding it,
then whether you have a knife, then whether you're stuffed (gives
better message for "eat coconuts" when you don't have any). From
OpenBSD.
2000-09-24 09:46:03 +00:00
jsm
6e6404a77d
Clean up fly.c by making local variables and functions static and
...
removing abs() macro.
2000-09-24 09:44:28 +00:00
jsm
c2a6fb8d9d
Prevent CUMBER from going negative; avoid division by zero if it is
...
zero.
2000-09-24 09:41:53 +00:00
jsm
1b39778596
Attempt to disambiguate BODY for kicking. Avoid crashing or nonsense
...
messages on "kick door" and "kick man". From OpenBSD.
2000-09-24 09:39:56 +00:00
jsm
1781c4f837
Allow for bathing goddess in love(); give better message for a lover
...
that isn't present and for certain choices of lover. From OpenBSD.
2000-09-23 19:51:02 +00:00
jsm
d2c1d833b2
Allow for the bathing goddess in ravage(). From OpenBSD.
2000-09-23 19:45:07 +00:00
jsm
d3579258c9
Use a lookup table to identify whether objects are plural or singular,
...
instead of testing the final character against 's' in each place.
Avoids oddities about "pot of jewels" and "compass".
2000-09-23 19:23:57 +00:00
simonb
cd2e1c1e91
Use ${COPY} instead of -c for ${INSTALL} commands.
2000-09-23 13:53:41 +00:00
jhawk
650c1aea1c
Correct descriptions of "marked" vs. "ignored" -- they were swapped.
2000-09-23 01:52:50 +00:00
jsm
05ca74ab1c
Don't say "Kicked." of an object not present; give sensible messages.
...
From OpenBSD.
2000-09-22 12:38:10 +00:00
jsm
016903dbdb
Check for an object being taken not being there before checking for
...
whether it is too heavy or too bulky; gives a better message for "take
viper" with the viper not present.
2000-09-22 12:37:32 +00:00
jsm
d67a03db02
Give appropriate messages (rather than saying nothing) if an verb is
...
used with "all" and nothing relevant is present. From OpenBSD.
2000-09-22 08:19:57 +00:00
jsm
0f933d0d56
Remove all adjectives in parse(), since they are nowhere used. Fixes
...
crash on "carry old all" shown up by fuzz testing. Patch from Paul
Janzen <pjanzen@foatdi.harvard.edu>.
2000-09-22 08:19:21 +00:00
jsm
b283f74760
Give an appropriate error on "kill all" rather than a crash or
...
nonsense message. From OpenBSD.
2000-09-22 08:18:20 +00:00
jsm
1fc5d09e80
Various improvements to parsing in battlestar, mostly from OpenBSD.
...
Define a constant WORDLEN. Always use this constant and NWORD where
appropriate.
Use NWORD - 1 in battlestar.c to avoid off-by-one error.
Increment wordnumber after the INVEN verb to allow it to be followed
by a comma and other actions.
Avoid overflowing elements of the words array if input words are too
long.
Parse "," as AND except when followed by a verb, to allow such
constructions as "take foo, bar, and baz". Trim AND AND which may
occur from the ", and" in such a list.
Avoid crashes from EVERYTHING in the wrong place by moving it to the
start of OBJECT AND EVERYTHING and NOUNS AND EVERYTHING sequences, and
trimming EVERYTHING AND EVERYTHING.
2000-09-21 17:44:34 +00:00
jsm
6d1847f667
Don't try to wear anything that isn't OBJECT or NOUNS. Don't try to
...
wear DOOR or anything without a short description. Fixes crashes on
"wear knfo" (bug reported by Peter Maydell
<pmaydell@chiark.greenend.org.uk>), "wear wear", "wear kick", "wear
door" and "wear goddess". Partly from OpenBSD.
2000-09-21 10:38:50 +00:00
jsm
a4454d2982
If no hand-to-hand weapons are available, try using the laser to kill
...
in murder(). From OpenBSD.
2000-09-21 10:22:36 +00:00
jsm
16d8e9af6f
die() on EOF; based on OpenBSD.
2000-09-21 09:49:03 +00:00
jsm
956f5c6ba6
From OpenBSD: in kiss(), "take" the bathing goddess if required, and
...
give a better error message if the person to kiss is not present.
2000-09-21 09:48:10 +00:00
jsm
ca5dbcecd4
Add missing initialisers (avoid gcc -W warnings) and comments giving
...
room numbers.
2000-09-18 06:14:31 +00:00
jsm
819ea9d1a6
Clean up formatting; partly from OpenBSD.
2000-09-17 23:04:17 +00:00
jsm
31b523eee5
Patches from OpenBSD: add verbs "open"/"unlock" (essentially a no-op),
...
and "verbose"/"brief" (in verbose mode, always show long room
descriptions), and synonyms "papaya" for "papayas" and "coconut" for
"coconuts".
2000-09-17 23:03:43 +00:00
jsm
cf35dbffa1
Based on OpenBSD: spelling, punctuation, grammar and line length
...
adjustments, and support for '=' in room descriptions meaning a
literal '-'.
2000-09-10 10:52:56 +00:00
jsm
3e02203ec6
Wording, punctuation and line length improvements. Also adjust test
...
for killing nonsensical things to fix crash with "kill door". From
OpenBSD.
2000-09-10 10:51:16 +00:00
jsm
d71839604a
Make spacing nicer and add explicit NULL initializers.
2000-09-09 18:03:58 +00:00
jsm
c6bbb5288d
Store copy of username with strdup rather than using a fixed length
...
buffer. Also make initialization functions and arrays static.
2000-09-09 09:37:58 +00:00
jsm
ce85e35a32
Put prototypes in alphabetical order.
2000-09-09 09:36:23 +00:00
jsm
a7c82eea02
Spelling and punctuation corrections or improvements from OpenBSD.
2000-09-08 17:25:31 +00:00
jsm
af3dee978f
Make code clearer; add a macro ROOMDESC for the number of times a room
...
should be visited for the short description only to be used, and don't
increment beenthere[position] beyond this value. From OpenBSD.
2000-09-08 17:22:01 +00:00
jsm
ec240586d1
Manpage improvements based on OpenBSD.
2000-09-08 17:18:36 +00:00
abs
90a84d2445
If we install limerick-o.dat, we should also install limerick-o to make it
...
usable.
2000-08-17 16:54:28 +00:00
abs
5b783e3f48
Split netbsd fortunes into offensive and non offensive.
...
Split could be considered somewhat arbitrary.
2000-08-17 16:48:52 +00:00
abs
ad603791f5
NetBSD: A pmap for every occasion
2000-08-17 16:27:38 +00:00
mason
a6cd58daee
Corrected quote. It was totally missing its (well-known) equivalent of
...
a punch line.
2000-08-12 23:04:15 +00:00
simonb
251d3a61d0
Use a local implementation of htonl() called h2nl(). htonl() is not
...
available in all cross-compile environments.
Patches from Chris Demetriou.
2000-07-31 11:39:00 +00:00