Subject: Parsing Chitchat

From: [email-masked] (Michael J. Fromberger)
Date: Sun, 18 Jul 1993 07:31:58 -0700

Hi there,

I suspect this is a terribly frequently asked question, but what's the best
way to write a verb on an object so that it is aware of things players say in
the room?

If there's no direct way, I guess I could hack the verbs that drive 'say',
but I'd prefer to avoid that if possible...

-Sting
(aka Caedmon; AngloSaxony)

--
Michael J. Fromberger
Consultant, Postmaster, HD Clinic tech
Dartmouth College, Hanover, New Hampshire
[email-masked] / [email-masked]

---

From: Pavel Curtis <[email-masked]>
Date: Sun, 18 Jul 1993 12:54:33 -0700

> Date:	Sun, 18 Jul 1993 07:31:58 -0700
> From:	[email-masked] (Michael J. Fromberger)
> 

All of the verbs like `say' use the room's :announce verb, which in turn calls
the :tell verb on every object in the room, player or not.  Thus, in order to
have your object `hear' everything `said' in the room, you just have to give it
a :tell verb that does whatever processing you want.  You might start by
looking for lines like
		<player-name> says, "..."
and processing the stuff between the quotes, for example.

Note that :tell is called with multiple arguments which are, in the case of
players, concatenated together before being printed on their network
connections.  For your purposes, you might want to start your :tell verb with a
line like this:
		line = tostr(@args);
This will give you a single string in `line'.

	Pavel