throwing it into

What’s the simplest way to implement the command “throw jar into pit”? Of course there is already a command “throw it at” in the standard rules, and it’d be fine to just do that. But if I use

Understand "throw [something] into [something]" as throwing it at.

that doesn’t seem to work. Instead what I get is this:

>throw jar into pit
That can't contain things.

>throw jar at pit
You toss the ceramic jar into the pit. You wait a while, but you never hear it hit the bottom. Well, hopefully you didn't need the ceramic jar for anything.

I assume that I’m getting the “can’t contain things” message because the pit is not a container (and it can’t be because it’s a backdrop). But I want to be able to get the second message for the first command. Any suggestions?

The throw ... into ...'' syntax is already claimed by the standard rules (see the index). Your code should work if you reset the meaning of throw and then bring back any meanings you want to keep. For example,[code]Understand the command "throw" as something new. Understand "throw [things preferably held]" as dropping. Understand "throw [something] into [something]" as throwing it at. Understand "throw [other things] on/onto [something]" as putting it on. Understand "throw [something preferably held] at/against [something]" as throwing it at.[/code] [i]Edit: on the other hand, it might be good to leavethrow … into …’’ as meaning inserting it into, and redirect that action:[/i]Instead of inserting something into the pit: try throwing the noun at the pit.

[EmacsUser has basically already said all this, but here goes anyway…]

Because of this line from the standard rules:

Understand the commands "throw" and "discard" as "drop".

any command with the verb “throw” gets mapped into the same command with “drop” substituted in. This means, I think, that “unnderstand” lines involving “throw” won’t do anything unless you include

Understand the command "throw" as something new.

which you may not want to do (though I absolutely hate the default mapping of “throw” onto “drop”; no one has ever typed “throw lamp” when they want to put the lamp down).

In this case, as you can see by turning on “actions” checking and typing THROW JAR INTO PIT, the action is “inserting the jar into the pit.” So you can just write

Instead of inserting the jar into the pit:

This will also catch DROP JAR INTO PIT, which may be good, and PUT JAR IN PIT, which may not be. If you want to separate those commands, I think you have to do the “something new” command and then reconstruct the grammar you want for every command involving “throw.” Maybe you could do something like this if you want to forbid PUT JAR INTO PIT:

Understand "put [jar] in/into [pit]" as a mistake ("The pit is too far away; you'll have to throw it.").

Ok thanks guys this is very helpful. I went with the simple “Instead of inserting the jar into the pit” rule.