Contents | Index | < Browse | Browse >

10.4.  Verbs and their actions

     Standard.adl declares the following verbs,	and initial-
     izes  their  PREACT  and  ACTION  routines	to (usually)
     fairly simply-minded defaults.

		  n,  s,  e,  w,
		  ne, se, nw, sw,
		  up, down,
		  enter, exit,
		  get, put, take, drop,
		  wear,	remove,
		  verbose, terse,
		  open,	close,
		  lock,	unlock,
		  move,	break, rub, touch,
		  throw, read, burn,
		  examine, look, inventory,
		  quit,	restart,
		  save,	restore, script,
		  turn,	douse, light,
		  wait,	again, go;


     The following verbs have special semantics	and redefin-
     ition  of	their  PREACT  or  ACTION routines should be
     avoided:

     NOVERB	   NOVERB (which is predeclared	by  ADL)  is
		   the	verb  returned	by the parser if the
		   player's  sentence  contained  no   verb.
		   Standard.adl	 initializes  the  PREACT of
		   NOVERB so that appropriate  requests	 for
		   more	information are	generated.

     put	   "Put" transforms itself into	"drop"	then
		   calls the PREACT of "drop".

     get	   "Get" transforms itself into	"take"	then
		   calls the PREACT of "take".

     take	   "Take" determines whether the sentence is
		   one	like "Take all but the sword and the
		   shield".  If	it is then a list of objects
		   is  built  up  which	 are then taken.  If
		   not,	the normal semantics apply.  If	 the
		   programmer  wants  an  action  to be	per-
		   formed by the "take"	ACTION,	the  routine
		   TakeAct should be defined.

     drop	   "drop" may  be  used	 in  sentences	like
		   "Drop  all  but  the	 book."	 If it is so
		   used, a list	of objects is created  which
		   are	then  dropped.	 If  the  programmer
		   wants an action to be  performed  by	 the
		   "drop" ACTION, the routine DropAct should
		   be defined.

     go		   If "go" is used in a	 sentence  like	 "Go
		   north",  the	 Verb  is changed to "north"
		   and the Dobj	and Iobj are  set  to  NULL.
		   This	 only applies to the direction verbs
		   "north",   "south",	  "east",    "west",
		   "northeast",	  "southeast",	"northwest",
		   "southwest",	"up", and "down".

     again	   If  the  standard  actor  action  is	  in
		   effect,  the	 Verb  "again" will never be
		   called or seen by  Objects  since  it  is
		   replaced by the previous sentence.

     In	 addition  to	declaring   the	  preceding   verbs,
     standard.adl declares the following equivalences:

		  g		  = again;
		  z		  = wait;
		  l		  = look;
		  u		  = up;
		  d		  = down;
		  north		  = n;
		  south		  = s;
		  east		  = e;
		  west		  = w;
		  northeast	  = ne;
		  northwest	  = nw;
		  southeast	  = se;
		  southwest	  = sw;

		  put on	  = wear;
		  take off	  = remove;
		  turn on	  = light;
		  turn off	  = douse;