Newsgroups: rec.arts.int-fiction
Path: nntp.gmd.de!news.ruhr-uni-bochum.de!news.rwth-aachen.de!uni-paderborn.de!fu-berlin.de!informatik.tu-muenchen.de!Germany.EU.net!main.Germany.EU.net!Frankfurt.Germany.EU.net!howland.erols.net!newsfeed.internetmci.com!in3.uu.net!world!olorin
From: olorin@world.std.com (Mark J Musante)
Subject: Re: [TADS] Double-Preposition Problem
Message-ID: <Dw8HG0.29F@world.std.com>
Organization: The World @ Software Tool & Die
X-Newsreader: TIN [version 1.2 PL2]
References: <4v02eh$9i3@freenet-news.carleton.ca>
Date: Fri, 16 Aug 1996 13:57:36 GMT
Lines: 36

Roger Carbol (dj857@FreeNet.Carleton.CA) wrote:

> I've got a bit of a problem with my TADS code...
>  
> Essentially, I want to create a new verb, log, that will
> allow the player to log on to a terminal.  Since the
> direct object is invariable and implied (ie the
> command is really "LOG (myself) ON TO TERMINAL" but
> is always reduced to "LOG ON TO TERMINAL") 
> I have tried to implement it as a direct-object verb
> rather than an indirect-object verb.

Try this:

terminal: item
        noun = 'terminal'
        sdesc = "terminal"
        ldesc = "It's a computer terminal.  Useful for logging on to (or
		is that 'useful for which on to logging'?). "
        verDoLogOnto( actor ) = {}
        doLogOnto( actor ) = {
                "You log on. ";
        }
        location = startroom
;

logonVerb: deepverb
        verb = 'log onto'
        doAction = 'LogOnto'
;

The default adv.t file tells the parser that "on to" is the same as "onto",
so this works.  Note that in this example, "log on terminal" and "log to
terminal" will not be understood.

 - Mark
