1
0
Fork 0
mirror of https://github.com/ganelson/inform.git synced 2024-07-08 18:14:21 +03:00
inform7/docs/srules/S-act2.html
2019-04-22 15:42:10 +01:00

4294 lines
232 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>S/act</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Content-Language" content="en-gb">
<link href="inweb.css" rel="stylesheet" rev="stylesheet" type="text/css">
</head>
<body>
<!--Weave of 'S/act2' generated by 7-->
<ul class="crumbs"><li><a href="../webs.html">&#9733;</a></li><li><a href="index.html">srules 5/190315</a></li><li><b>Actions</b></li></ul><p class="purpose">The standard stock of actions supplied with Inform, along with the rules which define them; and the Understand grammar which corresponds to them.</p>
<ul class="toc"><li><a href="#SP2">&#167;2. Taking inventory</a></li><li><a href="#SP6">&#167;6. Taking</a></li><li><a href="#SP10">&#167;10. Removing it from</a></li><li><a href="#SP12">&#167;12. Dropping</a></li><li><a href="#SP16">&#167;16. Putting it on</a></li><li><a href="#SP20">&#167;20. Inserting it into</a></li><li><a href="#SP24">&#167;24. Eating</a></li><li><a href="#SP28">&#167;28. Going</a></li><li><a href="#SP32">&#167;32. Entering</a></li><li><a href="#SP36">&#167;36. Exiting</a></li><li><a href="#SP40">&#167;40. Getting off</a></li><li><a href="#SP44">&#167;44. Looking</a></li><li><a href="#SP47">&#167;47. Examining</a></li><li><a href="#SP50">&#167;50. Looking under</a></li><li><a href="#SP53">&#167;53. Searching</a></li><li><a href="#SP56">&#167;56. Consulting it about</a></li><li><a href="#SP58">&#167;58. Locking it with</a></li><li><a href="#SP62">&#167;62. Unlocking it with</a></li><li><a href="#SP66">&#167;66. Switching on</a></li><li><a href="#SP70">&#167;70. Switching off</a></li><li><a href="#SP74">&#167;74. Opening</a></li><li><a href="#SP78">&#167;78. Closing</a></li><li><a href="#SP82">&#167;82. Wearing</a></li><li><a href="#SP86">&#167;86. Taking off</a></li><li><a href="#SP90">&#167;90. Giving it to</a></li><li><a href="#SP94">&#167;94. Showing it to</a></li><li><a href="#SP96">&#167;96. Waking</a></li><li><a href="#SP98">&#167;98. Throwing it at</a></li><li><a href="#SP100">&#167;100. Attacking</a></li><li><a href="#SP102">&#167;102. Kissing</a></li><li><a href="#SP104">&#167;104. Answering it that</a></li><li><a href="#SP106">&#167;106. Telling it about</a></li><li><a href="#SP109">&#167;109. Asking it about</a></li><li><a href="#SP111">&#167;111. Asking it for</a></li><li><a href="#SP113">&#167;113. Waiting</a></li><li><a href="#SP115">&#167;115. Touching</a></li><li><a href="#SP117">&#167;117. Waving</a></li><li><a href="#SP120">&#167;120. Pulling</a></li><li><a href="#SP123">&#167;123. Pushing</a></li><li><a href="#SP126">&#167;126. Turning</a></li><li><a href="#SP129">&#167;129. Pushing it to</a></li><li><a href="#SP131">&#167;131. Squeezing</a></li><li><a href="#SP134">&#167;134. Saying yes</a></li><li><a href="#SP138">&#167;138. Burning</a></li><li><a href="#SP140">&#167;140. Waking up</a></li><li><a href="#SP142">&#167;142. Thinking</a></li><li><a href="#SP144">&#167;144. Smelling</a></li><li><a href="#SP146">&#167;146. Listening to</a></li><li><a href="#SP148">&#167;148. Tasting</a></li><li><a href="#SP150">&#167;150. Cutting</a></li><li><a href="#SP152">&#167;152. Jumping</a></li><li><a href="#SP154">&#167;154. Tying it to</a></li><li><a href="#SP156">&#167;156. Drinking</a></li><li><a href="#SP158">&#167;158. Saying sorry</a></li><li><a href="#SP160">&#167;160. Swinging</a></li><li><a href="#SP162">&#167;162. Rubbing</a></li><li><a href="#SP165">&#167;165. Setting it to</a></li><li><a href="#SP167">&#167;167. Waving hands</a></li><li><a href="#SP169">&#167;169. Buying</a></li><li><a href="#SP171">&#167;171. Climbing</a></li><li><a href="#SP173">&#167;173. Sleeping</a></li><li><a href="#SP175">&#167;175. Out of world actions</a></li><li><a href="#SP181">&#167;181. Miscellaneous Grammar Tokens</a></li><li><a href="#SP182">&#167;182. Grammar</a></li></ul><hr class="tocbar">
<p class="inwebparagraph"><a id="SP1"></a><b>&#167;1. </b>Inform comes with no actions built in, and only one (perhaps unexpected)
assumption: that the 8th action defined is "going".
</p>
<p class="inwebparagraph">The order, and the subheadings, here are responsible for the order
and subheadings used in the Actions page of the Index.
</p>
<pre class="display">
<span class="plain">Part SR4 - Actions (for interactive fiction language element only)</span>
<span class="plain">Section SR4/1 - Verbs needed for adaptive text</span>
<span class="plain">To achieve is a verb. To appreciate is a verb. To arrive is a verb. To care is a verb.</span>
<span class="plain">To close is a verb. To die is a verb. To discover is a verb. To drop is a verb.</span>
<span class="plain">To eat is a verb. To feel is a verb. To find is a verb. To get is a verb.</span>
<span class="plain">To give is a verb. To go is a verb. To happen is a verb. To hear is a verb.</span>
<span class="plain">To jump is a verb. To lack is a verb. To lead is a verb. To like is a verb.</span>
<span class="plain">To listen is a verb. To lock is a verb. To look is a verb. To need is a verb.</span>
<span class="plain">To open is a verb. To pass is a verb. To pick is a verb. To provoke is a verb.</span>
<span class="plain">To pull is a verb. To push is a verb. To put is a verb. To rub is a verb.</span>
<span class="plain">To say is a verb. To search is a verb. To see is a verb. To seem is a verb.</span>
<span class="plain">To set is a verb. To smell is a verb. To sniff is a verb. To squeeze is a verb.</span>
<span class="plain">To switch is a verb. To take is a verb. To talk is a verb. To taste is a verb.</span>
<span class="plain">To touch is a verb. To turn is a verb. To wait is a verb. To wave is a verb.</span>
<span class="plain">To win is a verb.</span>
<span class="plain">Section SR4/2 - Standard actions concerning the actor's possessions</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP2"></a><b>&#167;2. Taking inventory. </b></p>
<pre class="display">
<span class="plain">Taking inventory is an action applying to nothing.</span>
<span class="plain">The taking inventory action translates into I6 as "Inv".</span>
<span class="plain">The specification of the taking inventory action is "Taking an inventory of</span>
<span class="plain">one's immediate possessions: the things being carried, either directly or in</span>
<span class="plain">any containers being carried. When the player performs this action, either</span>
<span class="plain">the inventory listing, or else a special message if nothing is being carried</span>
<span class="plain">or worn, is printed during the carry out rules: nothing happens at the report</span>
<span class="plain">stage. The opposite happens for other people performing the action: nothing</span>
<span class="plain">happens during carry out, but a report such as 'Mr X looks through his</span>
<span class="plain">possessions.' is produced (provided Mr X is visible)."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP3"></a><b>&#167;3. </b>There used to be a rule, documented here, to do with pronouns, and
this was explained in terms of Missee Lee, a black and white cat
living in North Oxford; named for a Cambridge-educated pirate queen in
the South China seas who is the heroine &mdash; or villainess &mdash; of the
tenth in Arthur Ransome's Swallows and Amazons series of children's
books, "Missee Lee" (1941). The rule was then removed, but it
seemed sad to delete the only mention of Missee, and all the more so
since she died (at a grand old age and in mid-spring) in 2008.
</p>
<p class="inwebparagraph"><a id="SP4"></a><b>&#167;4. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out taking inventory (this is the print empty inventory rule):</span>
<span class="plain">if the first thing held by the player is nothing,</span>
<span class="plain">say "[We] [are] carrying nothing." (A) instead.</span>
<span class="plain">Carry out taking inventory (this is the print standard inventory rule):</span>
<span class="plain">say "[We] [are] carrying:[line break]" (A);</span>
<span class="plain">list the contents of the player, with newlines, indented, including contents,</span>
<span class="plain">giving inventory information, with extra indentation.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP5"></a><b>&#167;5. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor taking inventory (this is the report other people taking</span>
<span class="plain">inventory rule):</span>
<span class="plain">if the actor is not the player and the action is not silent:</span>
<span class="plain">say "[The actor] [look] through [their] possessions." (A);</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP6"></a><b>&#167;6. Taking. </b></p>
<pre class="display">
<span class="plain">Taking is an action applying to one thing.</span>
<span class="plain">The taking action translates into I6 as "Take".</span>
<span class="plain">The specification of the taking action is "The taking action is the only way</span>
<span class="plain">an action in the Standard Rules can cause something to be carried by an actor.</span>
<span class="plain">It is very simple in operation (the entire carry out stage consists only of</span>
<span class="plain">'now the actor carries the noun') but many checks must be performed before it</span>
<span class="plain">can be allowed to happen."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP7"></a><b>&#167;7. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor taking (this is the can't take yourself rule):</span>
<span class="plain">if the actor is the noun:</span>
<span class="plain">if the actor is the player, say "[We] [are] always self-possessed." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor taking (this is the can't take other people rule):</span>
<span class="plain">if the noun is a person:</span>
<span class="plain">if the actor is the player, say "I don't suppose [the noun] [would care] for that." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor taking (this is the can't take component parts rule):</span>
<span class="plain">if the noun is part of something (called the whole):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][Those] [seem] to be a part of [the whole]." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor taking (this is the can't take people's possessions rule):</span>
<span class="plain">let the local ceiling be the common ancestor of the actor with the noun;</span>
<span class="plain">let the owner be the not-counting-parts holder of the noun;</span>
<span class="plain">while the owner is not nothing and the owner is not the local ceiling:</span>
<span class="plain">if the owner is a person:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][Those] [seem] to belong to [the owner]." (A);</span>
<span class="plain">stop the action;</span>
<span class="plain">let the owner be the not-counting-parts holder of the owner;</span>
<span class="plain">Check an actor taking (this is the can't take items out of play rule):</span>
<span class="plain">let H be the noun;</span>
<span class="plain">while H is not nothing and H is not a room:</span>
<span class="plain">let H be the not-counting-parts holder of H;</span>
<span class="plain">if H is nothing:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][Those] [aren't] available." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor taking (this is the can't take what you're inside rule):</span>
<span class="plain">let the local ceiling be the common ancestor of the actor with the noun;</span>
<span class="plain">if the local ceiling is the noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [would have] to get</span>
<span class="plain">[if noun is a supporter]off[otherwise]out of[end if] [the noun] first." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor taking (this is the can't take what's already taken rule):</span>
<span class="plain">if the actor is carrying the noun or the actor is wearing the noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] already [have] [regarding the noun][those]." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor taking (this is the can't take scenery rule):</span>
<span class="plain">if the noun is scenery:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][They're] hardly portable." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor taking (this is the can only take things rule):</span>
<span class="plain">if the noun is not a thing:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [cannot] carry [the noun]." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor taking (this is the can't take what's fixed in place rule):</span>
<span class="plain">if the noun is fixed in place:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][They're] fixed in place." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor taking (this is the use player's holdall to avoid exceeding</span>
<span class="plain">carrying capacity rule):</span>
<span class="plain">if the number of things carried by the actor is at least the</span>
<span class="plain">carrying capacity of the actor:</span>
<span class="plain">if the actor is holding a player's holdall (called the current working sack):</span>
<span class="plain">let the transferred item be nothing;</span>
<span class="plain">repeat with the possible item running through things carried by</span>
<span class="plain">the actor:</span>
<span class="plain">if the possible item is not lit and the possible item is not</span>
<span class="plain">the current working sack, let the transferred item be the possible item;</span>
<span class="plain">if the transferred item is not nothing:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "(putting [the transferred item] into [the current working sack]</span>
<span class="plain">to make room)[command clarification break]" (A);</span>
<span class="plain">silently try the actor trying inserting the transferred item</span>
<span class="plain">into the current working sack;</span>
<span class="plain">if the transferred item is not in the current working sack:</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor taking (this is the can't exceed carrying capacity rule):</span>
<span class="plain">if the number of things carried by the actor is at least the</span>
<span class="plain">carrying capacity of the actor:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We]['re] carrying too many things already." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP8"></a><b>&#167;8. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out an actor taking (this is the standard taking rule):</span>
<span class="plain">now the actor carries the noun;</span>
<span class="plain">if the actor is the player, now the noun is handled.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP9"></a><b>&#167;9. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor taking (this is the standard report taking rule):</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "Taken." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [pick] up [the noun]." (B).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP10"></a><b>&#167;10. Removing it from. </b></p>
<pre class="display">
<span class="plain">Removing it from is an action applying to two things.</span>
<span class="plain">The removing it from action translates into I6 as "Remove".</span>
<span class="plain">The specification of the removing it from action is "Removing is not really</span>
<span class="plain">an action in its own right. Whereas there are many ways to put something down</span>
<span class="plain">(on the floor, on top of something, inside something else, giving it to</span>
<span class="plain">somebody else, and so on), Inform has only one way to take something: the</span>
<span class="plain">taking action. Removing exists only to provide some nicely worded replies</span>
<span class="plain">to impossible requests, and in all sensible cases is converted into taking.</span>
<span class="plain">Because of this, it's usually a bad idea to write rules about removing:</span>
<span class="plain">if you write a rule such as 'Instead of removing the key, ...' then it</span>
<span class="plain">won't apply if the player simply types TAKE KEY instead. The safe way to</span>
<span class="plain">do this is to write a rule about taking, which covers all possibilities."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP11"></a><b>&#167;11. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor removing something from (this is the can't remove what's not inside rule):</span>
<span class="plain">if the holder of the noun is not the second noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "But [regarding the noun][they] [aren't] there now." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor removing something from (this is the can't remove from people rule):</span>
<span class="plain">let the owner be the holder of the noun;</span>
<span class="plain">if the owner is a person:</span>
<span class="plain">if the owner is the actor, convert to the taking off action on the noun;</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][Those] [seem] to belong to [the owner]." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor removing something from (this is the convert remove to take rule):</span>
<span class="plain">convert to the taking action on the noun.</span>
<span class="plain">The can't take component parts rule is listed before the can't remove what's not</span>
<span class="plain">inside rule in the check removing it from rules.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP12"></a><b>&#167;12. Dropping. </b></p>
<pre class="display">
<span class="plain">Dropping is an action applying to one thing.</span>
<span class="plain">The dropping action translates into I6 as "Drop".</span>
<span class="plain">The specification of the dropping action is "Dropping is one of five actions</span>
<span class="plain">by which an actor can get rid of something carried: the others are inserting</span>
<span class="plain">(into a container), putting (onto a supporter), giving (to someone else) and</span>
<span class="plain">eating. Dropping means dropping onto the actor's current floor, which is</span>
<span class="plain">usually the floor of a room - but might be the inside of a box if the actor</span>
<span class="plain">is also inside that box, and so on.</span>
<span class="plain">The can't drop clothes being worn rule silently tries the taking off action</span>
<span class="plain">on any clothing being dropped: unlisting this rule removes both this behaviour</span>
<span class="plain">and also the requirement that clothes cannot simply be dropped."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP13"></a><b>&#167;13. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor dropping (this is the can't drop yourself rule):</span>
<span class="plain">if the noun is the actor:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [lack] the dexterity." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor dropping something which is part of the actor (this is the</span>
<span class="plain">can't drop body parts rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [can't drop] part of [ourselves]." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor dropping (this is the can't drop what's already dropped rule):</span>
<span class="plain">if the noun is in the holder of the actor:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[The noun] [are] already here." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor dropping (this is the can't drop what's not held rule):</span>
<span class="plain">if the actor is carrying the noun, continue the action;</span>
<span class="plain">if the actor is wearing the noun, continue the action;</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [haven't] got [regarding the noun][those]." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor dropping (this is the can't drop clothes being worn rule):</span>
<span class="plain">if the actor is wearing the noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "(first taking [the noun] off)[command clarification break]" (A);</span>
<span class="plain">silently try the actor trying taking off the noun;</span>
<span class="plain">if the actor is wearing the noun, stop the action;</span>
<span class="plain">Check an actor dropping (this is the can't drop if this exceeds carrying</span>
<span class="plain">capacity rule):</span>
<span class="plain">let the receptacle be the holder of the actor;</span>
<span class="plain">if the receptacle is a room, continue the action; [room floors have infinite capacity]</span>
<span class="plain">if the receptacle provides the property carrying capacity:</span>
<span class="plain">if the receptacle is a supporter:</span>
<span class="plain">if the number of things on the receptacle is at least the carrying</span>
<span class="plain">capacity of the receptacle:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "[There] [are] no more room on [the receptacle]." (A);</span>
<span class="plain">stop the action;</span>
<span class="plain">otherwise if the receptacle is a container:</span>
<span class="plain">if the number of things in the receptacle is at least the carrying</span>
<span class="plain">capacity of the receptacle:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "[There] [are] no more room in [the receptacle]." (B);</span>
<span class="plain">stop the action;</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP14"></a><b>&#167;14. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out an actor dropping (this is the standard dropping rule):</span>
<span class="plain">now the noun is in the holder of the actor.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP15"></a><b>&#167;15. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor dropping (this is the standard report dropping rule):</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "Dropped." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [put] down [the noun]." (B);</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP16"></a><b>&#167;16. Putting it on. </b></p>
<pre class="display">
<span class="plain">Putting it on is an action applying to two things.</span>
<span class="plain">The putting it on action translates into I6 as "PutOn".</span>
<span class="plain">The specification of the putting it on action is "By this action, an actor puts</span>
<span class="plain">something he is holding on top of a supporter: for instance, putting an apple</span>
<span class="plain">on a table."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP17"></a><b>&#167;17. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor putting something on (this is the convert put to drop where possible rule):</span>
<span class="plain">if the second noun is down or the actor is on the second noun,</span>
<span class="plain">convert to the dropping action on the noun.</span>
<span class="plain">Check an actor putting something on (this is the can't put what's not held rule):</span>
<span class="plain">if the actor is carrying the noun, continue the action;</span>
<span class="plain">if the actor is wearing the noun, continue the action;</span>
<span class="plain">carry out the implicitly taking activity with the noun;</span>
<span class="plain">if the actor is carrying the noun, continue the action;</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor putting something on (this is the can't put something on itself rule):</span>
<span class="plain">let the noun-CPC be the component parts core of the noun;</span>
<span class="plain">let the second-CPC be the component parts core of the second noun;</span>
<span class="plain">let the transfer ceiling be the common ancestor of the noun-CPC with the second-CPC;</span>
<span class="plain">if the transfer ceiling is the noun-CPC:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [can't put] something on top of itself." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor putting something on (this is the can't put onto what's not a supporter rule):</span>
<span class="plain">if the second noun is not a supporter:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "Putting things on [the second noun] [would achieve] nothing." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor putting something on (this is the can't put clothes being worn rule):</span>
<span class="plain">if the actor is wearing the noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "(first taking [regarding the noun][them] off)[command clarification break]" (A);</span>
<span class="plain">silently try the actor trying taking off the noun;</span>
<span class="plain">if the actor is wearing the noun, stop the action.</span>
<span class="plain">Check an actor putting something on (this is the can't put if this exceeds</span>
<span class="plain">carrying capacity rule):</span>
<span class="plain">if the second noun provides the property carrying capacity:</span>
<span class="plain">if the number of things on the second noun is at least the carrying capacity</span>
<span class="plain">of the second noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[There] [are] no more room on [the second noun]." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP18"></a><b>&#167;18. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out an actor putting something on (this is the standard putting rule):</span>
<span class="plain">now the noun is on the second noun.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP19"></a><b>&#167;19. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor putting something on (this is the concise report putting rule):</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">if the actor is the player and the I6 parser is running multiple actions:</span>
<span class="plain">say "Done." (A);</span>
<span class="plain">stop the action;</span>
<span class="plain">continue the action.</span>
<span class="plain">Report an actor putting something on (this is the standard report putting rule):</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[The actor] [put] [the noun] on [the second noun]." (A).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP20"></a><b>&#167;20. Inserting it into. </b></p>
<pre class="display">
<span class="plain">Inserting it into is an action applying to two things.</span>
<span class="plain">The inserting it into action translates into I6 as "Insert".</span>
<span class="plain">The specification of the inserting it into action is "By this action, an actor puts</span>
<span class="plain">something he is holding into a container: for instance, putting a coin into a</span>
<span class="plain">collection box."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP21"></a><b>&#167;21. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor inserting something into (this is the convert insert to drop where</span>
<span class="plain">possible rule):</span>
<span class="plain">if the second noun is down or the actor is in the second noun,</span>
<span class="plain">convert to the dropping action on the noun.</span>
<span class="plain">Check an actor inserting something into (this is the can't insert what's not held rule):</span>
<span class="plain">if the actor is carrying the noun, continue the action;</span>
<span class="plain">if the actor is wearing the noun, continue the action;</span>
<span class="plain">carry out the implicitly taking activity with the noun;</span>
<span class="plain">if the actor is carrying the noun, continue the action;</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor inserting something into (this is the can't insert something into itself rule):</span>
<span class="plain">let the noun-CPC be the component parts core of the noun;</span>
<span class="plain">let the second-CPC be the component parts core of the second noun;</span>
<span class="plain">let the transfer ceiling be the common ancestor of the noun-CPC with the second-CPC;</span>
<span class="plain">if the transfer ceiling is the noun-CPC:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [can't put] something inside itself." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor inserting something into (this is the can't insert into closed containers rule):</span>
<span class="plain">if the second noun is a closed container:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[The second noun] [are] closed." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor inserting something into (this is the can't insert into what's not a</span>
<span class="plain">container rule):</span>
<span class="plain">if the second noun is not a container:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the second noun][Those] [can't contain] things." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor inserting something into (this is the can't insert clothes being worn rule):</span>
<span class="plain">if the actor is wearing the noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "(first taking [regarding the noun][them] off)[command clarification break]" (A);</span>
<span class="plain">silently try the actor trying taking off the noun;</span>
<span class="plain">if the actor is wearing the noun, stop the action;</span>
<span class="plain">Check an actor inserting something into (this is the can't insert if this exceeds</span>
<span class="plain">carrying capacity rule):</span>
<span class="plain">if the second noun provides the property carrying capacity:</span>
<span class="plain">if the number of things in the second noun is at least the carrying capacity</span>
<span class="plain">of the second noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "[There] [are] no more room in [the second noun]." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP22"></a><b>&#167;22. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out an actor inserting something into (this is the standard inserting rule):</span>
<span class="plain">now the noun is in the second noun.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP23"></a><b>&#167;23. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor inserting something into (this is the concise report inserting rule):</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">if the actor is the player and the I6 parser is running multiple actions:</span>
<span class="plain">say "Done." (A);</span>
<span class="plain">stop the action;</span>
<span class="plain">continue the action.</span>
<span class="plain">Report an actor inserting something into (this is the standard report inserting rule):</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[The actor] [put] [the noun] into [the second noun]." (A).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP24"></a><b>&#167;24. Eating. </b></p>
<pre class="display">
<span class="plain">Eating is an action applying to one thing.</span>
<span class="plain">The eating action translates into I6 as "Eat".</span>
<span class="plain">The specification of the eating action is "Eating is the only one of the</span>
<span class="plain">built-in actions which can, in effect, destroy something: the carry out</span>
<span class="plain">rule removes what's being eaten from play, and nothing in the Standard</span>
<span class="plain">Rules can then get at it again.</span>
<span class="plain">Note that, uncontroversially, one can only eat things with the 'edible'</span>
<span class="plain">either/or property. Until 2011, the action also required that the foodstuff</span>
<span class="plain">had to be carried by the eater, which meant that a player standing next</span>
<span class="plain">to a bush with berries who typed EAT BERRIES would force a '(first taking</span>
<span class="plain">the berries)' action. This is no longer true. Taking is now only forced if</span>
<span class="plain">the foodstuff is portable."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP25"></a><b>&#167;25. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor eating (this is the can't eat unless edible rule):</span>
<span class="plain">if the noun is not a thing or the noun is not edible:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][They're] plainly inedible." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor eating (this is the can't eat clothing without removing it first rule):</span>
<span class="plain">if the actor is wearing the noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "(first taking [the noun] off)[command clarification break]" (A);</span>
<span class="plain">try the actor trying taking off the noun;</span>
<span class="plain">if the actor is wearing the noun, stop the action.</span>
<span class="plain">Check an actor eating (this is the can't eat other people's food rule):</span>
<span class="plain">if the noun is enclosed by a person (called the owner) who is not the actor:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[The owner] [might not appreciate] that." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor eating (this is the can't eat portable food without carrying it rule):</span>
<span class="plain">if the noun is portable and the actor is not carrying the noun:</span>
<span class="plain">carry out the implicitly taking activity with the noun;</span>
<span class="plain">if the actor is not carrying the noun, stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP26"></a><b>&#167;26. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out an actor eating (this is the standard eating rule):</span>
<span class="plain">now the noun is nowhere.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP27"></a><b>&#167;27. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor eating (this is the standard report eating rule):</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [eat] [the noun]. Not bad." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [eat] [the noun]." (B).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP28"></a><b>&#167;28. Going. </b></p>
<pre class="display">
<span class="plain">Section SR4/3 - Standard actions which move the actor</span>
<span class="plain">Going is an action applying to one visible thing.</span>
<span class="plain">The going action translates into I6 as "Go".</span>
<span class="plain">The specification of the going action is "This is the action which allows people</span>
<span class="plain">to move from one room to another, using whatever map connections and doors are</span>
<span class="plain">to hand. The Standard Rules are written so that the noun can be either a</span>
<span class="plain">direction or a door in the location of the actor: while the player's commands</span>
<span class="plain">only lead to going actions with directions as nouns, going actions can also</span>
<span class="plain">happen as a result of entering actions, and then the noun can indeed be</span>
<span class="plain">a door."</span>
<span class="plain">The going action has a room called the room gone from (matched as "from").</span>
<span class="plain">The going action has an object called the room gone to (matched as "to").</span>
<span class="plain">The going action has an object called the door gone through (matched as "through").</span>
<span class="plain">The going action has an object called the vehicle gone by (matched as "by").</span>
<span class="plain">The going action has an object called the thing gone with (matched as "with").</span>
<span class="plain">Rule for setting action variables for going (this is the standard set going variables rule):</span>
<span class="plain">now the thing gone with is the item-pushed-between-rooms;</span>
<span class="plain">now the room gone from is the location of the actor;</span>
<span class="plain">if the actor is in an enterable vehicle (called the carriage),</span>
<span class="plain">now the vehicle gone by is the carriage;</span>
<span class="plain">let the target be nothing;</span>
<span class="plain">if the noun is a direction:</span>
<span class="plain">let direction D be the noun;</span>
<span class="plain">let the target be the room-or-door direction D from the room gone from;</span>
<span class="plain">otherwise:</span>
<span class="plain">if the noun is a door, let the target be the noun;</span>
<span class="plain">if the target is a door:</span>
<span class="plain">now the door gone through is the target;</span>
<span class="plain">now the target is the other side of the target from the room gone from;</span>
<span class="plain">now the room gone to is the target.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP29"></a><b>&#167;29. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor going when the actor is on a supporter (called the chaise)</span>
<span class="plain">(this is the stand up before going rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "(first getting off [the chaise])[command clarification break]" (A);</span>
<span class="plain">silently try the actor exiting.</span>
<span class="plain">Check an actor going (this is the can't travel in what's not a vehicle rule):</span>
<span class="plain">let nonvehicle be the holder of the actor;</span>
<span class="plain">if nonvehicle is the room gone from, continue the action;</span>
<span class="plain">if nonvehicle is the vehicle gone by, continue the action;</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if nonvehicle is a supporter:</span>
<span class="plain">say "[We] [would have] to get off [the nonvehicle] first." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[We] [would have] to get out of [the nonvehicle] first." (B);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor going (this is the can't go through undescribed doors rule):</span>
<span class="plain">if the door gone through is not nothing and the door gone through is undescribed:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [can't go] that way." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor going (this is the can't go through closed doors rule):</span>
<span class="plain">if the door gone through is not nothing and the door gone through is closed:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "(first opening [the door gone through])[command clarification break]" (A);</span>
<span class="plain">silently try the actor opening the door gone through;</span>
<span class="plain">if the door gone through is open, continue the action;</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor going (this is the determine map connection rule):</span>
<span class="plain">let the target be nothing;</span>
<span class="plain">if the noun is a direction:</span>
<span class="plain">let direction D be the noun;</span>
<span class="plain">let the target be the room-or-door direction D from the room gone from;</span>
<span class="plain">otherwise:</span>
<span class="plain">if the noun is a door, let the target be the noun;</span>
<span class="plain">if the target is a door:</span>
<span class="plain">now the target is the other side of the target from the room gone from;</span>
<span class="plain">now the room gone to is the target.</span>
<span class="plain">Check an actor going (this is the can't go that way rule):</span>
<span class="plain">if the room gone to is nothing:</span>
<span class="plain">if the door gone through is nothing:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [can't go] that way." (A);</span>
<span class="plain">stop the action;</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [can't], since [the door gone through] [lead] nowhere." (B);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP30"></a><b>&#167;30. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out an actor going (this is the move player and vehicle rule):</span>
<span class="plain">if the vehicle gone by is nothing,</span>
<span class="plain">surreptitiously move the actor to the room gone to during going;</span>
<span class="plain">otherwise</span>
<span class="plain">surreptitiously move the vehicle gone by to the room gone to during going;</span>
<span class="plain">if the location is not the location of the player:</span>
<span class="plain">now the location is the location of the player.</span>
<span class="plain">Carry out an actor going (this is the move floating objects rule):</span>
<span class="plain">if the actor is the player or the player is within the vehicle gone by</span>
<span class="plain">or the player is within the thing gone with:</span>
<span class="plain">update backdrop positions.</span>
<span class="plain">Carry out an actor going (this is the check light in new location rule):</span>
<span class="plain">if the actor is the player or the player is within the vehicle gone by</span>
<span class="plain">or the player is within the thing gone with:</span>
<span class="plain">surreptitiously reckon darkness.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP31"></a><b>&#167;31. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor going (this is the describe room gone into rule):</span>
<span class="plain">if the player is the actor:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">produce a room description with going spacing conventions;</span>
<span class="plain">otherwise:</span>
<span class="plain">if the noun is a direction:</span>
<span class="plain">if the location is the room gone from or the player is within the</span>
<span class="plain">vehicle gone by or the player is within the thing gone with:</span>
<span class="plain">if the room gone from is the room gone to:</span>
<span class="plain">continue the action;</span>
<span class="plain">otherwise:</span>
<span class="plain">if the noun is up:</span>
<span class="plain">say "[The actor] [go] up" (A);</span>
<span class="plain">otherwise if the noun is down:</span>
<span class="plain">say "[The actor] [go] down" (B);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [go] [noun]" (C);</span>
<span class="plain">otherwise:</span>
<span class="plain">let the back way be the opposite of the noun;</span>
<span class="plain">if the location is the room gone to:</span>
<span class="plain">let the room back the other way be the room back way from the</span>
<span class="plain">location;</span>
<span class="plain">let the room normally this way be the room noun from the</span>
<span class="plain">room gone from;</span>
<span class="plain">if the room back the other way is the room gone from or</span>
<span class="plain">the room back the other way is the room normally this way:</span>
<span class="plain">if the back way is up:</span>
<span class="plain">say "[The actor] [arrive] from above" (D);</span>
<span class="plain">otherwise if the back way is down:</span>
<span class="plain">say "[The actor] [arrive] from below" (E);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [arrive] from [the back way]" (F);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [arrive]" (G);</span>
<span class="plain">otherwise:</span>
<span class="plain">if the back way is up:</span>
<span class="plain">say "[The actor] [arrive] at [the room gone to] from above" (H);</span>
<span class="plain">otherwise if the back way is down:</span>
<span class="plain">say "[The actor] [arrive] at [the room gone to] from below" (I);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [arrive] at [the room gone to] from [the back way]" (J);</span>
<span class="plain">otherwise if the location is the room gone from:</span>
<span class="plain">say "[The actor] [go] through [the noun]" (K);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [arrive] from [the noun]" (L);</span>
<span class="plain">if the vehicle gone by is not nothing:</span>
<span class="plain">say " ";</span>
<span class="plain">if the vehicle gone by is a supporter:</span>
<span class="plain">say "on [the vehicle gone by]" (M);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "in [the vehicle gone by]" (N);</span>
<span class="plain">if the thing gone with is not nothing:</span>
<span class="plain">if the player is within the thing gone with:</span>
<span class="plain">say ", pushing [the thing gone with] in front, and [us] along too" (O);</span>
<span class="plain">otherwise if the player is within the vehicle gone by:</span>
<span class="plain">say ", pushing [the thing gone with] in front" (P);</span>
<span class="plain">otherwise if the location is the room gone from:</span>
<span class="plain">say ", pushing [the thing gone with] away" (Q);</span>
<span class="plain">otherwise:</span>
<span class="plain">say ", pushing [the thing gone with] in" (R);</span>
<span class="plain">if the player is within the vehicle gone by and the player is not</span>
<span class="plain">within the thing gone with:</span>
<span class="plain">say ", taking [us] along" (S);</span>
<span class="plain">say ".";</span>
<span class="plain">try looking;</span>
<span class="plain">continue the action;</span>
<span class="plain">say ".";</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP32"></a><b>&#167;32. Entering. </b></p>
<pre class="display">
<span class="plain">Entering is an action applying to one thing.</span>
<span class="plain">The entering action translates into I6 as "Enter".</span>
<span class="plain">The specification of the entering action is "Whereas the going action allows</span>
<span class="plain">people to move from one location to another in the model world, the entering</span>
<span class="plain">action is for movement inside a location: for instance, climbing into a cage</span>
<span class="plain">or sitting on a couch. (Entering is not allowed to change location, so any</span>
<span class="plain">attempt to enter a door is converted into a going action.) What makes</span>
<span class="plain">entering trickier than it looks is that the player may try to enter an</span>
<span class="plain">object which is itself inside, or part of, something else, which might in</span>
<span class="plain">turn be... and so on. To preserve realism, the implicitly pass through other</span>
<span class="plain">barriers rule automatically generates entering and exiting actions needed</span>
<span class="plain">to pass between anything which might be in the way: for instance, in a</span>
<span class="plain">room with two open cages, an actor in cage A who tries entering cage B first</span>
<span class="plain">has to perform an exiting action."</span>
<span class="plain">Rule for supplying a missing noun while entering (this is the find what to enter</span>
<span class="plain">rule):</span>
<span class="plain">if something enterable (called the box) is in the location,</span>
<span class="plain">now the noun is the box;</span>
<span class="plain">otherwise continue the activity.</span>
<span class="plain">The find what to enter rule is listed last in the for supplying a missing noun</span>
<span class="plain">rulebook.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP33"></a><b>&#167;33. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor entering (this is the convert enter door into go rule):</span>
<span class="plain">if the noun is a door, convert to the going action on the noun.</span>
<span class="plain">Check an actor entering (this is the convert enter compass direction into go rule):</span>
<span class="plain">if the noun is a direction, convert to the going action on the noun.</span>
<span class="plain">Check an actor entering (this is the can't enter what's already entered rule):</span>
<span class="plain">if the actor is the noun, make no decision;</span>
<span class="plain">let the local ceiling be the common ancestor of the actor with the noun;</span>
<span class="plain">if the local ceiling is the noun:</span>
<span class="plain">if the player is the actor:</span>
<span class="plain">if the noun is a supporter:</span>
<span class="plain">say "But [we]['re] already on [the noun]." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "But [we]['re] already in [the noun]." (B);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor entering (this is the can't enter what's not enterable rule):</span>
<span class="plain">if the noun is not enterable:</span>
<span class="plain">if the player is the actor:</span>
<span class="plain">if the player's command includes "stand":</span>
<span class="plain">say "[regarding the noun][They're] not something [we] [can] stand on." (A);</span>
<span class="plain">otherwise if the player's command includes "sit":</span>
<span class="plain">say "[regarding the noun][They're] not something [we] [can] sit down on." (B);</span>
<span class="plain">otherwise if the player's command includes "lie":</span>
<span class="plain">say "[regarding the noun][They're] not something [we] [can] lie down on." (C);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[regarding the noun][They're] not something [we] [can] enter." (D);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor entering (this is the can't enter closed containers rule):</span>
<span class="plain">if the noun is a closed container:</span>
<span class="plain">if the player is the actor:</span>
<span class="plain">say "[We] [can't get] into the closed [noun]." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor entering (this is the can't enter if this exceeds carrying</span>
<span class="plain">capacity rule):</span>
<span class="plain">if the noun provides the property carrying capacity:</span>
<span class="plain">if the noun is a supporter:</span>
<span class="plain">if the number of things on the noun is at least the carrying</span>
<span class="plain">capacity of the noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "[There] [are] no more room on [the noun]." (A);</span>
<span class="plain">stop the action;</span>
<span class="plain">otherwise if the noun is a container:</span>
<span class="plain">if the number of things in the noun is at least the carrying</span>
<span class="plain">capacity of the noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "[There] [are] no more room in [the noun]." (B);</span>
<span class="plain">stop the action;</span>
<span class="plain">Check an actor entering (this is the can't enter something carried rule):</span>
<span class="plain">let the local ceiling be the common ancestor of the actor with the noun;</span>
<span class="plain">if the local ceiling is the actor:</span>
<span class="plain">if the player is the actor:</span>
<span class="plain">say "[We] [can] only get into something free-standing." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor entering (this is the implicitly pass through other barriers rule):</span>
<span class="plain">if the holder of the actor is the holder of the noun, continue the action;</span>
<span class="plain">let the local ceiling be the common ancestor of the actor with the noun;</span>
<span class="plain">while the holder of the actor is not the local ceiling:</span>
<span class="plain">let the current home be the holder of the actor;</span>
<span class="plain">if the player is the actor:</span>
<span class="plain">if the current home is a supporter or the current home is an animal:</span>
<span class="plain">say "(getting off [the current home])[command clarification break]" (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "(getting out of [the current home])[command clarification break]" (B);</span>
<span class="plain">silently try the actor trying exiting;</span>
<span class="plain">if the holder of the actor is the current home, stop the action;</span>
<span class="plain">if the holder of the actor is the noun, stop the action;</span>
<span class="plain">if the holder of the actor is the holder of the noun, continue the action;</span>
<span class="plain">let the target be the holder of the noun;</span>
<span class="plain">if the noun is part of the target, let the target be the holder of the target;</span>
<span class="plain">while the target is a thing:</span>
<span class="plain">if the holder of the target is the local ceiling:</span>
<span class="plain">if the player is the actor:</span>
<span class="plain">if the target is a supporter:</span>
<span class="plain">say "(getting onto [the target])[command clarification break]" (C);</span>
<span class="plain">otherwise if the target is a container:</span>
<span class="plain">say "(getting into [the target])[command clarification break]" (D);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "(entering [the target])[command clarification break]" (E);</span>
<span class="plain">silently try the actor trying entering the target;</span>
<span class="plain">if the holder of the actor is not the target, stop the action;</span>
<span class="plain">convert to the entering action on the noun;</span>
<span class="plain">continue the action;</span>
<span class="plain">let the target be the holder of the target;</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP34"></a><b>&#167;34. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out an actor entering (this is the standard entering rule):</span>
<span class="plain">surreptitiously move the actor to the noun.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP35"></a><b>&#167;35. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor entering (this is the standard report entering rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">if the noun is a supporter:</span>
<span class="plain">say "[We] [get] onto [the noun]." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[We] [get] into [the noun]." (B);</span>
<span class="plain">otherwise if the noun is a container:</span>
<span class="plain">say "[The actor] [get] into [the noun]." (C);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [get] onto [the noun]." (D);</span>
<span class="plain">continue the action.</span>
<span class="plain">Report an actor entering (this is the describe contents entered into rule):</span>
<span class="plain">if the actor is the player, describe locale for the noun.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP36"></a><b>&#167;36. Exiting. </b></p>
<pre class="display">
<span class="plain">Exiting is an action applying to nothing.</span>
<span class="plain">The exiting action translates into I6 as "Exit".</span>
<span class="plain">The exiting action has an object called the container exited from (matched as "from").</span>
<span class="plain">The specification of the exiting action is "Whereas the going action allows</span>
<span class="plain">people to move from one location to another in the model world, and the</span>
<span class="plain">entering action is for movement deeper inside the objects in a location,</span>
<span class="plain">the exiting action is for movement back out towards the main floor area.</span>
<span class="plain">Climbing out of a cupboard, for instance, is an exiting action. Exiting</span>
<span class="plain">when already in the main floor area of a room with a map connection to</span>
<span class="plain">the outside is converted to a going action. Finally, note that whereas</span>
<span class="plain">entering works for either containers or supporters, exiting is purely for</span>
<span class="plain">getting oneself out of containers: if the actor is on top of a supporter</span>
<span class="plain">instead, an exiting action is converted to the getting off action."</span>
<span class="plain">Setting action variables for exiting:</span>
<span class="plain">now the container exited from is the holder of the actor.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP37"></a><b>&#167;37. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor exiting (this is the convert exit into go out rule):</span>
<span class="plain">let the local room be the location of the actor;</span>
<span class="plain">if the container exited from is the local room:</span>
<span class="plain">if the room-or-door outside from the local room is not nothing,</span>
<span class="plain">convert to the going action on the outside;</span>
<span class="plain">Check an actor exiting (this is the can't exit when not inside anything rule):</span>
<span class="plain">let the local room be the location of the actor;</span>
<span class="plain">if the container exited from is the local room:</span>
<span class="plain">if the player is the actor:</span>
<span class="plain">say "But [we] [aren't] in anything at the [if story tense is present</span>
<span class="plain">tense]moment[otherwise]time[end if]." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor exiting (this is the can't exit closed containers rule):</span>
<span class="plain">if the actor is in a closed container (called the cage):</span>
<span class="plain">if the player is the actor:</span>
<span class="plain">say "You can't get out of the closed [cage]." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor exiting (this is the convert exit into get off rule):</span>
<span class="plain">if the actor is on a supporter (called the platform),</span>
<span class="plain">convert to the getting off action on the platform.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP38"></a><b>&#167;38. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out an actor exiting (this is the standard exiting rule):</span>
<span class="plain">let the former exterior be the not-counting-parts holder of the container exited from;</span>
<span class="plain">surreptitiously move the actor to the former exterior.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP39"></a><b>&#167;39. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor exiting (this is the standard report exiting rule):</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the container exited from is a supporter:</span>
<span class="plain">say "[We] [get] off [the container exited from]." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[We] [get] out of [the container exited from]." (B);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [get] out of [the container exited from]." (C);</span>
<span class="plain">continue the action.</span>
<span class="plain">Report an actor exiting (this is the describe room emerged into rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">surreptitiously reckon darkness;</span>
<span class="plain">produce a room description with going spacing conventions.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP40"></a><b>&#167;40. Getting off. </b></p>
<pre class="display">
<span class="plain">Getting off is an action applying to one thing.</span>
<span class="plain">The getting off action translates into I6 as "GetOff".</span>
<span class="plain">The specification of the getting off action is "The getting off action is for</span>
<span class="plain">actors who are currently on top of a supporter: perhaps standing on a platform,</span>
<span class="plain">but maybe only sitting on a chair or even lying down in bed. Unlike the similar</span>
<span class="plain">exiting action, getting off takes a noun: the platform, chair, bed or what</span>
<span class="plain">have you."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP41"></a><b>&#167;41. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor getting off (this is the can't get off things rule):</span>
<span class="plain">if the actor is on the noun, continue the action;</span>
<span class="plain">if the actor is carried by the noun, continue the action;</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "But [we] [aren't] on [the noun] at the [if story tense is present</span>
<span class="plain">tense]moment[otherwise]time[end if]." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP42"></a><b>&#167;42. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out an actor getting off (this is the standard getting off rule):</span>
<span class="plain">let the former exterior be the not-counting-parts holder of the noun;</span>
<span class="plain">surreptitiously move the actor to the former exterior.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP43"></a><b>&#167;43. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor getting off (this is the standard report getting off rule):</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[The actor] [get] off [the noun]." (A);</span>
<span class="plain">continue the action.</span>
<span class="plain">Report an actor getting off (this is the describe room stood up into rule):</span>
<span class="plain">if the actor is the player,</span>
<span class="plain">produce a room description with going spacing conventions.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP44"></a><b>&#167;44. Looking. </b></p>
<pre class="display">
<span class="plain">Section SR4/4 - Standard actions concerning the actor's vision</span>
<span class="plain">Looking is an action applying to nothing.</span>
<span class="plain">The looking action translates into I6 as "Look".</span>
<span class="plain">The specification of the looking action is "The looking action describes the</span>
<span class="plain">player's current room and any visible items, but is made more complicated</span>
<span class="plain">by the problem of visibility. Inform calculates this by dividing the room</span>
<span class="plain">into visibility levels. For an actor on the floor of a room, there is only</span>
<span class="plain">one such level: the room itself. But an actor sitting on a chair inside</span>
<span class="plain">a packing case which is itself on a gantry would have four visibility levels:</span>
<span class="plain">chair, case, gantry, room. The looking rules use a special phrase, 'the</span>
<span class="plain">visibility-holder of X', to go up from one level to the next: thus the</span>
<span class="plain">visibility-holder of the case is the gantry.</span>
<span class="plain">The 'visibility level count' is the number of levels which the player can</span>
<span class="plain">actually see, and the 'visibility ceiling' is the uppermost visible level.</span>
<span class="plain">For a player standing on the floor of a lighted room, this will be a count</span>
<span class="plain">of 1 with the ceiling set to the room. But a player sitting on a chair in</span>
<span class="plain">a closed opaque packing case would have visibility level count 2, and</span>
<span class="plain">visibility ceiling equal to the case. Moreover, light has to be available</span>
<span class="plain">in order to see anything at all: if the player is in darkness, the level</span>
<span class="plain">count is 0 and the ceiling is nothing.</span>
<span class="plain">Finally, note that several actions other than looking also produce room</span>
<span class="plain">descriptions in some cases. The most familiar is going, but exiting a</span>
<span class="plain">container or getting off a supporter will also generate a room description.</span>
<span class="plain">(The phrase used by the relevant rules is 'produce a room description with</span>
<span class="plain">going spacing conventions' and carry out or report rules for newly written</span>
<span class="plain">actions are welcome to use this too if they would like to. The spacing</span>
<span class="plain">conventions affect paragraph division, and note that the main description</span>
<span class="plain">paragraph may be omitted for a place not newly visited, depending on the</span>
<span class="plain">VERBOSE settings.) Room descriptions like this are produced by running the</span>
<span class="plain">check, carry out and report rules for looking, but are not subject to</span>
<span class="plain">before, instead or after rules: so they do not count as a new action. The</span>
<span class="plain">looking variable 'room-describing action' holds the action name of the</span>
<span class="plain">reason a room description is currently being made: if the player typed</span>
<span class="plain">LOOK, this will indeed be set to the looking action, but if we're</span>
<span class="plain">describing a room just reached by GO EAST, say, it will be set to the going</span>
<span class="plain">action. This can be used to customise carry out looking rules so that</span>
<span class="plain">different forms of description are used on going to a room as compared with</span>
<span class="plain">looking around while already there."</span>
<span class="plain">The looking action has an action name called the room-describing action.</span>
<span class="plain">The looking action has a truth state called abbreviated form allowed.</span>
<span class="plain">The looking action has a number called the visibility level count.</span>
<span class="plain">The looking action has an object called the visibility ceiling.</span>
<span class="plain">Setting action variables for looking (this is the determine visibility ceiling</span>
<span class="plain">rule):</span>
<span class="plain">if the actor is the player, calculate visibility ceiling at low level;</span>
<span class="plain">now the visibility level count is the visibility ceiling count calculated;</span>
<span class="plain">now the visibility ceiling is the visibility ceiling calculated;</span>
<span class="plain">now the room-describing action is the looking action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP45"></a><b>&#167;45. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out looking (this is the declare everything unmentioned rule):</span>
<span class="plain">repeat with item running through things:</span>
<span class="plain">now the item is not mentioned.</span>
<span class="plain">Carry out looking (this is the room description heading rule):</span>
<span class="plain">say bold type;</span>
<span class="plain">if the visibility level count is 0:</span>
<span class="plain">begin the printing the name of a dark room activity;</span>
<span class="plain">if handling the printing the name of a dark room activity:</span>
<span class="plain">say "Darkness" (A);</span>
<span class="plain">end the printing the name of a dark room activity;</span>
<span class="plain">otherwise if the visibility ceiling is the location:</span>
<span class="plain">say "[visibility ceiling]";</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The visibility ceiling]";</span>
<span class="plain">say roman type;</span>
<span class="plain">let intermediate level be the visibility-holder of the actor;</span>
<span class="plain">repeat with intermediate level count running from 2 to the visibility level count:</span>
<span class="plain">if the intermediate level is a supporter or the intermediate level is an animal:</span>
<span class="plain">say " (on [the intermediate level])" (B);</span>
<span class="plain">otherwise:</span>
<span class="plain">say " (in [the intermediate level])" (C);</span>
<span class="plain">let the intermediate level be the visibility-holder of the intermediate level;</span>
<span class="plain">say line break;</span>
<span class="plain">say run paragraph on with special look spacing.</span>
<span class="plain">Carry out looking (this is the room description body text rule):</span>
<span class="plain">if the visibility level count is 0:</span>
<span class="plain">if set to abbreviated room descriptions, continue the action;</span>
<span class="plain">if set to sometimes abbreviated room descriptions and</span>
<span class="plain">abbreviated form allowed is true and</span>
<span class="plain">darkness witnessed is true,</span>
<span class="plain">continue the action;</span>
<span class="plain">begin the printing the description of a dark room activity;</span>
<span class="plain">if handling the printing the description of a dark room activity:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "[It] [are] pitch dark, and [we] [can't see] a thing." (A);</span>
<span class="plain">end the printing the description of a dark room activity;</span>
<span class="plain">otherwise if the visibility ceiling is the location:</span>
<span class="plain">if set to abbreviated room descriptions, continue the action;</span>
<span class="plain">if set to sometimes abbreviated room descriptions and abbreviated form</span>
<span class="plain">allowed is true and the location is visited, continue the action;</span>
<span class="plain">print the location's description;</span>
<span class="plain">Carry out looking (this is the room description paragraphs about objects rule):</span>
<span class="plain">if the visibility level count is greater than 0:</span>
<span class="plain">let the intermediate position be the actor;</span>
<span class="plain">let the IP count be the visibility level count;</span>
<span class="plain">while the IP count is greater than 0:</span>
<span class="plain">now the intermediate position is marked for listing;</span>
<span class="plain">let the intermediate position be the visibility-holder of the</span>
<span class="plain">intermediate position;</span>
<span class="plain">decrease the IP count by 1;</span>
<span class="plain">let the top-down IP count be the visibility level count;</span>
<span class="plain">while the top-down IP count is greater than 0:</span>
<span class="plain">let the intermediate position be the actor;</span>
<span class="plain">let the IP count be 0;</span>
<span class="plain">while the IP count is less than the top-down IP count:</span>
<span class="plain">let the intermediate position be the visibility-holder of the</span>
<span class="plain">intermediate position;</span>
<span class="plain">increase the IP count by 1;</span>
<span class="plain">describe locale for the intermediate position;</span>
<span class="plain">decrease the top-down IP count by 1;</span>
<span class="plain">continue the action;</span>
<span class="plain">Carry out looking (this is the check new arrival rule):</span>
<span class="plain">if in darkness:</span>
<span class="plain">now the darkness witnessed is true;</span>
<span class="plain">otherwise:</span>
<span class="plain">if the location is a room, now the location is visited;</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP46"></a><b>&#167;46. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor looking (this is the other people looking rule):</span>
<span class="plain">if the actor is not the player:</span>
<span class="plain">say "[The actor] [look] around." (A).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP47"></a><b>&#167;47. Examining. </b></p>
<pre class="display">
<span class="plain">Examining is an action applying to one visible thing and requiring light.</span>
<span class="plain">The examining action translates into I6 as "Examine".</span>
<span class="plain">The specification of the examining action is "The act of looking closely at</span>
<span class="plain">something. Note that the noun could be either a direction or a thing, which</span>
<span class="plain">is why the Standard Rules include the 'examine directions rule' to deal with</span>
<span class="plain">directions: it simply says 'You see nothing unexpected in that direction.'</span>
<span class="plain">and stops the action. (If you would like to handle directions differently,</span>
<span class="plain">list another rule instead of this one in the carry out examining rules.)</span>
<span class="plain">Some things have no description property, or rather, have only a blank text</span>
<span class="plain">as one. It's possible that something interesting may be said anyway (see</span>
<span class="plain">the rules for directions, containers, supporters and devices), but if not,</span>
<span class="plain">we give up with a bland response. This is done by the examine undescribed</span>
<span class="plain">things rule."</span>
<span class="plain">The examining action has a truth state called examine text printed.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP48"></a><b>&#167;48. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out examining (this is the standard examining rule):</span>
<span class="plain">if the noun provides the property description and the description of the noun is not "":</span>
<span class="plain">say "[description of the noun][line break]";</span>
<span class="plain">now examine text printed is true.</span>
<span class="plain">Carry out examining (this is the examine directions rule):</span>
<span class="plain">if the noun is a direction:</span>
<span class="plain">say "[We] [see] nothing unexpected in that direction." (A);</span>
<span class="plain">now examine text printed is true.</span>
<span class="plain">Carry out examining (this is the examine containers rule):</span>
<span class="plain">if the noun is a container:</span>
<span class="plain">if the noun is open or the noun is transparent:</span>
<span class="plain">if something described which is not scenery is in the noun and something which</span>
<span class="plain">is not the player is in the noun:</span>
<span class="plain">say "In [the noun] " (A);</span>
<span class="plain">list the contents of the noun, as a sentence, tersely, not listing</span>
<span class="plain">concealed items, prefacing with is/are;</span>
<span class="plain">say ".";</span>
<span class="plain">now examine text printed is true;</span>
<span class="plain">otherwise if examine text printed is false:</span>
<span class="plain">if the player is in the noun:</span>
<span class="plain">make no decision;</span>
<span class="plain">say "[The noun] [are] empty." (B);</span>
<span class="plain">now examine text printed is true;</span>
<span class="plain">Carry out examining (this is the examine supporters rule):</span>
<span class="plain">if the noun is a supporter:</span>
<span class="plain">if something described which is not scenery is on the noun and something which is</span>
<span class="plain">not the player is on the noun:</span>
<span class="plain">say "On [the noun] " (A);</span>
<span class="plain">list the contents of the noun, as a sentence, tersely, not listing</span>
<span class="plain">concealed items, prefacing with is/are, including contents,</span>
<span class="plain">giving brief inventory information;</span>
<span class="plain">say ".";</span>
<span class="plain">now examine text printed is true.</span>
<span class="plain">Carry out examining (this is the examine devices rule):</span>
<span class="plain">if the noun is a device:</span>
<span class="plain">say "[The noun] [are] [if story tense is present tense]currently [end if]switched</span>
<span class="plain">[if the noun is switched on]on[otherwise]off[end if]." (A);</span>
<span class="plain">now examine text printed is true.</span>
<span class="plain">Carry out examining (this is the examine undescribed things rule):</span>
<span class="plain">if examine text printed is false:</span>
<span class="plain">say "[We] [see] nothing special about [the noun]." (A).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP49"></a><b>&#167;49. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor examining (this is the report other people examining rule):</span>
<span class="plain">if the actor is not the player:</span>
<span class="plain">say "[The actor] [look] closely at [the noun]." (A).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP50"></a><b>&#167;50. Looking under. </b></p>
<pre class="display">
<span class="plain">Looking under is an action applying to one visible thing and requiring light.</span>
<span class="plain">The looking under action translates into I6 as "LookUnder".</span>
<span class="plain">The specification of the looking under action is "The standard Inform world</span>
<span class="plain">model does not have a concept of things being under other things, so this</span>
<span class="plain">action is only minimally provided by the Standard Rules, but it exists here</span>
<span class="plain">for traditional reasons (and because, after all, LOOK UNDER TABLE is the</span>
<span class="plain">sort of command which ought to be recognised even if it does nothing useful).</span>
<span class="plain">The action ordinarily either tells the player he finds nothing of interest,</span>
<span class="plain">or reports that somebody else has looked under something.</span>
<span class="plain">The usual way to make this action do something useful is to write a rule</span>
<span class="plain">like 'Instead of looking under the cabinet for the first time: now the</span>
<span class="plain">player has the silver key; say ...' and so on."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP51"></a><b>&#167;51. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out an actor looking under (this is the standard looking under rule):</span>
<span class="plain">if the player is the actor:</span>
<span class="plain">say "[We] [find] nothing of interest." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP52"></a><b>&#167;52. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor looking under (this is the report other people looking under rule):</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">if the actor is not the player:</span>
<span class="plain">say "[The actor] [look] under [the noun]." (A).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP53"></a><b>&#167;53. Searching. </b></p>
<pre class="display">
<span class="plain">Searching is an action applying to one thing and requiring light.</span>
<span class="plain">The searching action translates into I6 as "Search".</span>
<span class="plain">The specification of the searching action is "Searching looks at the contents</span>
<span class="plain">of an open or transparent container, or at the items on top of a supporter.</span>
<span class="plain">These are often mentioned in room descriptions already, and then the action</span>
<span class="plain">is unnecessary, but that wouldn't be true for something like a kitchen</span>
<span class="plain">cupboard which is scenery - mentioned in passing in a room description, but</span>
<span class="plain">not made a fuss of. Searching such a cupboard would then, by listing its</span>
<span class="plain">contents, give the player more information than the ordinary room description</span>
<span class="plain">shows.</span>
<span class="plain">The usual check rules restrict searching to containers and supporters: so</span>
<span class="plain">the Standard Rules do not allow the searching of people, for instance. But</span>
<span class="plain">it is easy to add instead rules ('Instead of searching Dr Watson: ...') or</span>
<span class="plain">even a new carry out rule ('Check searching someone (called the suspect): ...')</span>
<span class="plain">to extend the way searching normally works."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP54"></a><b>&#167;54. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor searching (this is the can't search unless container or supporter rule):</span>
<span class="plain">if the noun is not a container and the noun is not a supporter:</span>
<span class="plain">if the player is the actor:</span>
<span class="plain">say "[We] [find] nothing of interest." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor searching (this is the can't search closed opaque containers rule):</span>
<span class="plain">if the noun is a closed opaque container:</span>
<span class="plain">if the player is the actor:</span>
<span class="plain">say "[We] [can't see] inside, since [the noun] [are] closed." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP55"></a><b>&#167;55. </b>Report.
</p>
<pre class="display">
<span class="plain">Report searching a container (this is the standard search containers rule):</span>
<span class="plain">if the noun contains a described thing which is not scenery:</span>
<span class="plain">say "In [the noun] " (A);</span>
<span class="plain">list the contents of the noun, as a sentence, tersely, not listing</span>
<span class="plain">concealed items, prefacing with is/are;</span>
<span class="plain">say ".";</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The noun] [are] empty." (B).</span>
<span class="plain">Report searching a supporter (this is the standard search supporters rule):</span>
<span class="plain">if the noun supports a described thing which is not scenery:</span>
<span class="plain">say "On [the noun] " (A);</span>
<span class="plain">list the contents of the noun, as a sentence, tersely, not listing</span>
<span class="plain">concealed items, prefacing with is/are;</span>
<span class="plain">say ".";</span>
<span class="plain">otherwise:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "[There] [are] nothing on [the noun]." (B).</span>
<span class="plain">Report an actor searching (this is the report other people searching rule):</span>
<span class="plain">if the actor is not the player:</span>
<span class="plain">say "[The actor] [search] [the noun]." (A).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP56"></a><b>&#167;56. Consulting it about. </b></p>
<pre class="display">
<span class="plain">Consulting it about is an action applying to one thing and one topic.</span>
<span class="plain">The consulting it about action translates into I6 as "Consult".</span>
<span class="plain">The specification of the consulting it about action is "Consulting is a very</span>
<span class="plain">flexible and potentially powerful action, but only because it leaves almost</span>
<span class="plain">all of the work to the author to deal with directly. The idea is for it to</span>
<span class="plain">respond to commands such as LOOK UP HENRY FITZROY IN HISTORY BOOK, where</span>
<span class="plain">the topic would be the snippet of command HENRY FITZROY and the thing would</span>
<span class="plain">be the book.</span>
<span class="plain">The Standard Rules simply parry such requests by saying that the player finds</span>
<span class="plain">nothing of interest. All interesting responses must be provided by the author,</span>
<span class="plain">using rules like 'Instead of consulting the history book about...'"</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP57"></a><b>&#167;57. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor consulting something about (this is the block consulting rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [discover] nothing of interest in [the noun]." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [look] at [the noun]." (B);</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP58"></a><b>&#167;58. Locking it with. </b></p>
<pre class="display">
<span class="plain">Section SR4/5 - Standard actions which change the state of things</span>
<span class="plain">Locking it with is an action applying to one thing and one carried thing.</span>
<span class="plain">The locking it with action translates into I6 as "Lock".</span>
<span class="plain">The specification of the locking it with action is "Locking is the act of</span>
<span class="plain">using an object such as a key to ensure that something such as a door or</span>
<span class="plain">container cannot be opened unless first unlocked. (Only closed things can be</span>
<span class="plain">locked.)</span>
<span class="plain">Locking can be performed on any kind of thing which provides the either/or</span>
<span class="plain">properties lockable, locked, openable and open. The 'can't lock without a lock</span>
<span class="plain">rule' tests to see if the noun both provides the lockable property, and if</span>
<span class="plain">it is in fact lockable: it is then assumed that the other properties can</span>
<span class="plain">safely be checked. In the Standard Rules, the container and door kinds both</span>
<span class="plain">satisfy these requirements.</span>
<span class="plain">We can create a new kind on which opening, closing, locking and unlocking</span>
<span class="plain">will work thus: 'A briefcase is a kind of thing. A briefcase can be openable.</span>
<span class="plain">A briefcase can be open. A briefcase can be lockable. A briefcase can be</span>
<span class="plain">locked. A briefcase is usually openable, lockable, open and unlocked.'</span>
<span class="plain">Inform checks whether the key fits using the 'can't lock without the correct</span>
<span class="plain">key rule'. To satisfy this, the actor must be directly holding the second</span>
<span class="plain">noun, and it must be the current value of the 'matching key' property for</span>
<span class="plain">the noun. (This property is seldom referred to directly because it is</span>
<span class="plain">automatically set by assertions like 'The silver key unlocks the wicket</span>
<span class="plain">gate.')</span>
<span class="plain">The Standard Rules provide locking and unlocking actions at a fairly basic</span>
<span class="plain">level: they can be much enhanced using the extension Locksmith by Emily</span>
<span class="plain">Short, which is included with all distributions of Inform."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP59"></a><b>&#167;59. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor locking something with (this is the can't lock without a lock rule):</span>
<span class="plain">if the noun provides the property lockable and the noun is lockable:</span>
<span class="plain">continue the action;</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][Those] [don't] seem to be something [we] [can] lock." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor locking something with (this is the can't lock what's already</span>
<span class="plain">locked rule):</span>
<span class="plain">if the noun is locked:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][They're] locked at the [if story tense is present</span>
<span class="plain">tense]moment[otherwise]time[end if]." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor locking something with (this is the can't lock what's open rule):</span>
<span class="plain">if the noun is open:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "First [we] [would have] to close [the noun]." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor locking something with (this is the can't lock without the correct key rule):</span>
<span class="plain">if the holder of the second noun is not the actor or</span>
<span class="plain">the noun does not provide the property matching key or</span>
<span class="plain">the matching key of the noun is not the second noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the second noun][Those] [don't] seem to fit the lock." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP60"></a><b>&#167;60. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out an actor locking something with (this is the standard locking rule):</span>
<span class="plain">now the noun is locked.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP61"></a><b>&#167;61. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor locking something with (this is the standard report locking rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[We] [lock] [the noun]." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">if the actor is visible:</span>
<span class="plain">say "[The actor] [lock] [the noun]." (B);</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP62"></a><b>&#167;62. Unlocking it with. </b></p>
<pre class="display">
<span class="plain">Unlocking it with is an action applying to one thing and one carried thing.</span>
<span class="plain">The unlocking it with action translates into I6 as "Unlock".</span>
<span class="plain">The specification of the unlocking it with action is "Unlocking undoes the</span>
<span class="plain">effect of locking, and renders the noun openable again provided that the</span>
<span class="plain">actor is carrying the right key (which must be the second noun).</span>
<span class="plain">Unlocking can be performed on any kind of thing which provides the either/or</span>
<span class="plain">properties lockable, locked, openable and open. The 'can't unlock without a lock</span>
<span class="plain">rule' tests to see if the noun both provides the lockable property, and if</span>
<span class="plain">it is in fact lockable: it is then assumed that the other properties can</span>
<span class="plain">safely be checked. In the Standard Rules, the container and door kinds both</span>
<span class="plain">satisfy these requirements.</span>
<span class="plain">We can create a new kind on which opening, closing, locking and unlocking</span>
<span class="plain">will work thus: 'A briefcase is a kind of thing. A briefcase can be openable.</span>
<span class="plain">A briefcase can be open. A briefcase can be lockable. A briefcase can be</span>
<span class="plain">locked. A briefcase is usually openable, lockable, open and unlocked.'</span>
<span class="plain">Inform checks whether the key fits using the 'can't unlock without the correct</span>
<span class="plain">key rule'. To satisfy this, the actor must be directly holding the second</span>
<span class="plain">noun, and it must be the current value of the 'matching key' property for</span>
<span class="plain">the noun. (This property is seldom referred to directly because it is</span>
<span class="plain">automatically set by assertions like 'The silver key unlocks the wicket</span>
<span class="plain">gate.')</span>
<span class="plain">The Standard Rules provide locking and unlocking actions at a fairly basic</span>
<span class="plain">level: they can be much enhanced using the extension Locksmith by Emily</span>
<span class="plain">Short, which is included with all distributions of Inform."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP63"></a><b>&#167;63. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor unlocking something with (this is the can't unlock without a lock rule):</span>
<span class="plain">if the noun provides the property lockable and the noun is lockable:</span>
<span class="plain">continue the action;</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][Those] [don't] seem to be something [we] [can] unlock." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor unlocking something with (this is the can't unlock what's already unlocked rule):</span>
<span class="plain">if the noun is not locked:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][They're] unlocked at the [if story tense is present</span>
<span class="plain">tense]moment[otherwise]time[end if]." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor unlocking something with (this is the can't unlock without the correct key rule):</span>
<span class="plain">if the holder of the second noun is not the actor or</span>
<span class="plain">the noun does not provide the property matching key or</span>
<span class="plain">the matching key of the noun is not the second noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the second noun][Those] [don't] seem to fit the lock." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP64"></a><b>&#167;64. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out an actor unlocking something with (this is the standard unlocking rule):</span>
<span class="plain">now the noun is not locked.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP65"></a><b>&#167;65. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor unlocking something with (this is the standard report unlocking rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[We] [unlock] [the noun]." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">if the actor is visible:</span>
<span class="plain">say "[The actor] [unlock] [the noun]." (B);</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP66"></a><b>&#167;66. Switching on. </b></p>
<pre class="display">
<span class="plain">Switching on is an action applying to one thing.</span>
<span class="plain">The switching on action translates into I6 as "SwitchOn".</span>
<span class="plain">The specification of the switching on action is "The switching on and switching</span>
<span class="plain">off actions are for the simplest kind of machinery operation: they are for</span>
<span class="plain">objects representing machines (or more likely parts of machines), which are</span>
<span class="plain">considered to be either off or on at any given time.</span>
<span class="plain">The actions are intended to be used where the noun is a device, but in fact</span>
<span class="plain">they could work just as well with any kind which can be 'switched on' or</span>
<span class="plain">'switched off'."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP67"></a><b>&#167;67. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor switching on (this is the can't switch on unless switchable rule):</span>
<span class="plain">if the noun provides the property switched on, continue the action;</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][They] [aren't] something [we] [can] switch." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor switching on (this is the can't switch on what's already on rule):</span>
<span class="plain">if the noun is switched on:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][They're] already on." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP68"></a><b>&#167;68. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out an actor switching on (this is the standard switching on rule):</span>
<span class="plain">now the noun is switched on.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP69"></a><b>&#167;69. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor switching on (this is the standard report switching on rule):</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[The actor] [switch] [the noun] on." (A).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP70"></a><b>&#167;70. Switching off. </b></p>
<pre class="display">
<span class="plain">Switching off is an action applying to one thing.</span>
<span class="plain">The switching off action translates into I6 as "SwitchOff".</span>
<span class="plain">The specification of the switching off action is "The switching off and switching</span>
<span class="plain">on actions are for the simplest kind of machinery operation: they are for</span>
<span class="plain">objects representing machines (or more likely parts of machines), which are</span>
<span class="plain">considered to be either off or on at any given time.</span>
<span class="plain">The actions are intended to be used where the noun is a device, but in fact</span>
<span class="plain">they could work just as well with any kind which can be 'switched on' or</span>
<span class="plain">'switched off'."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP71"></a><b>&#167;71. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor switching off (this is the can't switch off unless switchable rule):</span>
<span class="plain">if the noun provides the property switched on, continue the action;</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][They] [aren't] something [we] [can] switch." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor switching off (this is the can't switch off what's already off rule):</span>
<span class="plain">if the noun is switched off:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][They're] already off." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP72"></a><b>&#167;72. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out an actor switching off (this is the standard switching off rule):</span>
<span class="plain">now the noun is switched off.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP73"></a><b>&#167;73. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor switching off (this is the standard report switching off rule):</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[The actor] [switch] [the noun] off." (A).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP74"></a><b>&#167;74. Opening. </b></p>
<pre class="display">
<span class="plain">Opening is an action applying to one thing.</span>
<span class="plain">The opening action translates into I6 as "Open".</span>
<span class="plain">The specification of the opening action is "Opening makes something no longer</span>
<span class="plain">a physical barrier. The action can be performed on any kind of thing which</span>
<span class="plain">provides the either/or properties openable and open. The 'can't open unless</span>
<span class="plain">openable rule' tests to see if the noun both can be and actually is openable.</span>
<span class="plain">(It is assumed that anything which can be openable can also be open.)</span>
<span class="plain">In the Standard Rules, the container and door kinds both satisfy these</span>
<span class="plain">requirements.</span>
<span class="plain">In the event that the thing to be opened is also lockable, we are forbidden</span>
<span class="plain">to open it when it is locked. Both containers and doors can be lockable,</span>
<span class="plain">but the opening and closing actions would also work fine with kinds which</span>
<span class="plain">cannot be.</span>
<span class="plain">We can create a new kind on which opening and closing will work thus:</span>
<span class="plain">'A case file is a kind of thing. A case file can be openable.</span>
<span class="plain">A case file can be open. A case file is usually openable and closed.'</span>
<span class="plain">The meaning of open and closed is different for different kinds of thing.</span>
<span class="plain">When a container is closed, that means people outside cannot reach in,</span>
<span class="plain">and vice versa; when a door is closed, people cannot use the 'going' action</span>
<span class="plain">to pass through it. If we were to create a new kind such as 'case file',</span>
<span class="plain">we would also need to write rules to make the open and closed properties</span>
<span class="plain">interesting for this kind."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP75"></a><b>&#167;75. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor opening (this is the can't open unless openable rule):</span>
<span class="plain">if the noun provides the property openable and the noun is openable:</span>
<span class="plain">continue the action;</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][They] [aren't] something [we] [can] open." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor opening (this is the can't open what's locked rule):</span>
<span class="plain">if the noun provides the property lockable and the noun is locked:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][They] [seem] to be locked." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor opening (this is the can't open what's already open rule):</span>
<span class="plain">if the noun is open:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][They're] already open." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP76"></a><b>&#167;76. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out an actor opening (this is the standard opening rule):</span>
<span class="plain">now the noun is open.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP77"></a><b>&#167;77. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor opening (this is the reveal any newly visible interior rule):</span>
<span class="plain">if the actor is the player and</span>
<span class="plain">the noun is an opaque container and</span>
<span class="plain">the first thing held by the noun is not nothing and</span>
<span class="plain">the noun does not enclose the actor:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [open] [the noun], revealing " (A);</span>
<span class="plain">list the contents of the noun, as a sentence, tersely, not listing</span>
<span class="plain">concealed items;</span>
<span class="plain">say ".";</span>
<span class="plain">stop the action.</span>
<span class="plain">Report an actor opening (this is the standard report opening rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[We] [open] [the noun]." (A);</span>
<span class="plain">otherwise if the player can see the actor:</span>
<span class="plain">say "[The actor] [open] [the noun]." (B);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The noun] [open]." (C);</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP78"></a><b>&#167;78. Closing. </b></p>
<pre class="display">
<span class="plain">Closing is an action applying to one thing.</span>
<span class="plain">The closing action translates into I6 as "Close".</span>
<span class="plain">The specification of the closing action is "Closing makes something into</span>
<span class="plain">a physical barrier. The action can be performed on any kind of thing which</span>
<span class="plain">provides the either/or properties openable and open. The 'can't close unless</span>
<span class="plain">openable rule' tests to see if the noun both can be and actually is openable.</span>
<span class="plain">(It is assumed that anything which can be openable can also be open, and</span>
<span class="plain">hence can also be closed.) In the Standard Rules, the container and door</span>
<span class="plain">kinds both satisfy these requirements.</span>
<span class="plain">We can create a new kind on which opening and closing will work thus:</span>
<span class="plain">'A case file is a kind of thing. A case file can be openable.</span>
<span class="plain">A case file can be open. A case file is usually openable and closed.'</span>
<span class="plain">The meaning of open and closed is different for different kinds of thing.</span>
<span class="plain">When a container is closed, that means people outside cannot reach in,</span>
<span class="plain">and vice versa; when a door is closed, people cannot use the 'going' action</span>
<span class="plain">to pass through it. If we were to create a new kind such as 'case file',</span>
<span class="plain">we would also need to write rules to make the open and closed properties</span>
<span class="plain">interesting for this kind."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP79"></a><b>&#167;79. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor closing (this is the can't close unless openable rule):</span>
<span class="plain">if the noun provides the property openable and the noun is openable:</span>
<span class="plain">continue the action;</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][They] [aren't] something [we] [can] close." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor closing (this is the can't close what's already closed rule):</span>
<span class="plain">if the noun is closed:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][They're] already closed." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP80"></a><b>&#167;80. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out an actor closing (this is the standard closing rule):</span>
<span class="plain">now the noun is closed.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP81"></a><b>&#167;81. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor closing (this is the standard report closing rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[We] [close] [the noun]." (A);</span>
<span class="plain">otherwise if the player can see the actor:</span>
<span class="plain">say "[The actor] [close] [the noun]." (B);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The noun] [close]." (C);</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP82"></a><b>&#167;82. Wearing. </b></p>
<pre class="display">
<span class="plain">Wearing is an action applying to one carried thing.</span>
<span class="plain">The wearing action translates into I6 as "Wear".</span>
<span class="plain">The specification of the wearing action is "The Standard Rules give Inform</span>
<span class="plain">only a simple model of clothing. A thing can be worn only if it has the</span>
<span class="plain">either/or property of being 'wearable'. (Typing a sentence like 'Mr Jones</span>
<span class="plain">wears the Homburg hat.' automatically implies that the hat is wearable,</span>
<span class="plain">which is why we only seldom need to use the word 'wearable' directly.)</span>
<span class="plain">There is no checking of how much or how little any actor is wearing, or</span>
<span class="plain">how incongruous this may appear: nor any distinction between under or</span>
<span class="plain">over-clothes.</span>
<span class="plain">To put on an article of clothing, the actor must be directly carrying it,</span>
<span class="plain">as enforced by the 'can't wear what's not held rule'."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP83"></a><b>&#167;83. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor wearing (this is the can't wear what's not clothing rule):</span>
<span class="plain">if the noun is not a thing or the noun is not wearable:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [can't wear] [regarding the noun][those]!" (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor wearing (this is the can't wear what's not held rule):</span>
<span class="plain">if the holder of the noun is not the actor:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [aren't] holding [regarding the noun][those]!" (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor wearing (this is the can't wear what's already worn rule):</span>
<span class="plain">if the actor is wearing the noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We]['re] already wearing [regarding the noun][those]!" (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP84"></a><b>&#167;84. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out an actor wearing (this is the standard wearing rule):</span>
<span class="plain">now the actor wears the noun.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP85"></a><b>&#167;85. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor wearing (this is the standard report wearing rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[We] [put] on [the noun]." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [put] on [the noun]." (B).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP86"></a><b>&#167;86. Taking off. </b></p>
<pre class="display">
<span class="plain">Taking off is an action applying to one thing.</span>
<span class="plain">The taking off action translates into I6 as "Disrobe".</span>
<span class="plain">Does the player mean taking off something worn: it is very likely.</span>
<span class="plain">The specification of the taking off action is "The Standard Rules give Inform</span>
<span class="plain">only a simple model of clothing. A thing can be worn only if it has the</span>
<span class="plain">either/or property of being 'wearable'. (Typing a sentence like 'Mr Jones</span>
<span class="plain">wears the Homburg hat.' automatically implies that the hat is wearable,</span>
<span class="plain">which is why we only seldom need to use the word 'wearable' directly.)</span>
<span class="plain">There is no checking of how much or how little any actor is wearing, or</span>
<span class="plain">how incongruous this may appear: nor any distinction between under or</span>
<span class="plain">over-clothes.</span>
<span class="plain">When an article of clothing is taken off, it becomes a thing directly</span>
<span class="plain">carried by its former wearer, rather than being (say) dropped onto the floor."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP87"></a><b>&#167;87. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor taking off (this is the can't take off what's not worn rule):</span>
<span class="plain">if the actor is not wearing the noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [aren't] wearing [the noun]." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor taking off (this is the can't exceed carrying capacity when taking off rule):</span>
<span class="plain">if the number of things carried by the actor is at least the carrying capacity of the actor:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We]['re] carrying too many things already." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP88"></a><b>&#167;88. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out an actor taking off (this is the standard taking off rule):</span>
<span class="plain">now the actor carries the noun.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP89"></a><b>&#167;89. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor taking off (this is the standard report taking off rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[We] [take] off [the noun]." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [take] off [the noun]." (B).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP90"></a><b>&#167;90. Giving it to. </b></p>
<pre class="display">
<span class="plain">Section SR4/6 - Standard actions concerning other people</span>
<span class="plain">Giving it to is an action applying to one carried thing and one thing.</span>
<span class="plain">The giving it to action translates into I6 as "Give".</span>
<span class="plain">The specification of the giving it to action is "This action is indexed by</span>
<span class="plain">Inform under 'Actions concerning other people', but it could just as easily</span>
<span class="plain">have gone under 'Actions concerning the actor's possessions' because -</span>
<span class="plain">like dropping, putting it on or inserting it into - this is an action</span>
<span class="plain">which gets rid of something being carried.</span>
<span class="plain">The Standard Rules implement this action fully - if it reaches the carry</span>
<span class="plain">out and report rulebooks, then the item is indeed transferred to the</span>
<span class="plain">recipient, and this is properly reported. But giving something to</span>
<span class="plain">somebody is not like putting something on a shelf: the recipient has</span>
<span class="plain">to agree. The final check rule, the 'block giving rule', assumes that</span>
<span class="plain">the recipient does not consent - so the gift fails to happen. The way</span>
<span class="plain">to make the giving action use its abilities fully is to replace the</span>
<span class="plain">block giving rule with a rule which makes a more sophisticated decision</span>
<span class="plain">about who will accept what from whom, and only blocks some attempts,</span>
<span class="plain">letting others run on into the carry out and report rules."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP91"></a><b>&#167;91. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor giving something to (this is the can't give what you haven't got rule):</span>
<span class="plain">if the actor is not the holder of the noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [aren't] holding [the noun]." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor giving something to (this is the can't give to yourself rule):</span>
<span class="plain">if the actor is the second noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [can't give] [the noun] to [ourselves]." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor giving something to (this is the can't give to a non-person rule):</span>
<span class="plain">if the second noun is not a person:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[The second noun] [aren't] able to receive things." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor giving something to (this is the can't give clothes being worn rule):</span>
<span class="plain">if the actor is wearing the noun:</span>
<span class="plain">say "(first taking [the noun] off)[command clarification break]" (A);</span>
<span class="plain">silently try the actor trying taking off the noun;</span>
<span class="plain">if the actor is wearing the noun, stop the action;</span>
<span class="plain">Check an actor giving something to (this is the block giving rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[The second noun] [don't] seem interested." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor giving something to (this is the can't exceed carrying capacity</span>
<span class="plain">when giving rule):</span>
<span class="plain">if the number of things carried by the second noun is at least the carrying</span>
<span class="plain">capacity of the second noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[The second noun] [are] carrying too many things already." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP92"></a><b>&#167;92. </b>Carry out.
</p>
<pre class="display">
<span class="plain">Carry out an actor giving something to (this is the standard giving rule):</span>
<span class="plain">move the noun to the second noun.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP93"></a><b>&#167;93. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor giving something to (this is the standard report giving rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [give] [the noun] to [the second noun]." (A);</span>
<span class="plain">otherwise if the second noun is the player:</span>
<span class="plain">say "[The actor] [give] [the noun] to [us]." (B);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [give] [the noun] to [the second noun]." (C).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP94"></a><b>&#167;94. Showing it to. </b></p>
<pre class="display">
<span class="plain">Showing it to is an action applying to one carried thing and one visible thing.</span>
<span class="plain">The showing it to action translates into I6 as "Show".</span>
<span class="plain">The specification of the showing it to action is "Anyone can show anyone</span>
<span class="plain">else something which they are carrying, but not some nearby piece of</span>
<span class="plain">scenery, say - so this action is suitable for showing the emerald locket</span>
<span class="plain">to Katarina, but not showing the Orange River Rock Room to Mr Douglas.</span>
<span class="plain">The Standard Rules implement this action in only a minimal way, checking</span>
<span class="plain">that it makes sense but then blocking all such attempts with a message</span>
<span class="plain">such as 'Katarina is not interested.' - this is the task of the 'block</span>
<span class="plain">showing rule'. As a result, there are no carry out or report rules. To</span>
<span class="plain">make it into a systematic and interesting action, we would need to</span>
<span class="plain">unlist the block showing rule and then to write carry out and report</span>
<span class="plain">rules: but usually for IF purposes we only need to make a handful of</span>
<span class="plain">special cases of showing work properly, and for those we can simply</span>
<span class="plain">write Instead rules to handle them."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP95"></a><b>&#167;95. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor showing something to (this is the can't show what you haven't</span>
<span class="plain">got rule):</span>
<span class="plain">if the actor is not the holder of the noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [aren't] holding [the noun]." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor showing something to (this is the convert show to yourself to</span>
<span class="plain">examine rule):</span>
<span class="plain">if the actor is the second noun:</span>
<span class="plain">convert to the examining action on the noun.</span>
<span class="plain">Check an actor showing something to (this is the block showing rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[The second noun] [are] unimpressed." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP96"></a><b>&#167;96. Waking. </b></p>
<pre class="display">
<span class="plain">Waking is an action applying to one thing.</span>
<span class="plain">The waking action translates into I6 as "WakeOther".</span>
<span class="plain">The specification of the waking action is "This is the act of jostling</span>
<span class="plain">a sleeping person to wake him or her up, and it finds its way into the</span>
<span class="plain">Standard Rules only for historical reasons. Inform does not by default</span>
<span class="plain">provide any model for people being asleep or awake, so this action does</span>
<span class="plain">not do anything in the standard implementation: instead, it is always</span>
<span class="plain">stopped by the block waking rule."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP97"></a><b>&#167;97. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor waking (this is the block waking rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "That [seem] unnecessary." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP98"></a><b>&#167;98. Throwing it at. </b></p>
<pre class="display">
<span class="plain">Throwing it at is an action applying to one carried thing and one visible thing.</span>
<span class="plain">The throwing it at action translates into I6 as "ThrowAt".</span>
<span class="plain">The specification of the throwing it at action is "Throwing something at</span>
<span class="plain">someone or something is difficult for Inform to model. So many considerations</span>
<span class="plain">apply: just because the actor can see the target, does it follow that the</span>
<span class="plain">target can accurately hit it? What if the projectile is heavy, like an</span>
<span class="plain">anvil, or something not easily aimable, like a feather? What if there</span>
<span class="plain">is a barrier in the way, like a cage with bars spaced so that only items</span>
<span class="plain">of a certain size get through? And then: what should happen as a result?</span>
<span class="plain">Will the projectile break, or do damage, or fall to the floor, or into</span>
<span class="plain">a container or onto a supporter? And so on.</span>
<span class="plain">Because it seems hopeless to try to model this in any general way,</span>
<span class="plain">Inform instead provides the action for the user to attach specific rules to.</span>
<span class="plain">The check rules in the Standard Rules simply require that the projectile</span>
<span class="plain">is not an item of clothing still worn (this will be relevant for women</span>
<span class="plain">attending a Tom Jones concert) but then, in either the 'futile to throw</span>
<span class="plain">things at inanimate objects rule' or the 'block throwing at rule', will</span>
<span class="plain">refuse to carry out the action with a bland message.</span>
<span class="plain">To make throwing do something, then, we must either write Instead rules</span>
<span class="plain">for special circumstances, or else unlist these check rules and write</span>
<span class="plain">suitable carry out and report rules to pick up the thread."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP99"></a><b>&#167;99. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor throwing something at (this is the implicitly remove thrown clothing rule):</span>
<span class="plain">if the actor is wearing the noun:</span>
<span class="plain">say "(first taking [the noun] off)[command clarification break]" (A);</span>
<span class="plain">silently try the actor trying taking off the noun;</span>
<span class="plain">if the actor is wearing the noun, stop the action;</span>
<span class="plain">Check an actor throwing something at (this is the futile to throw things at inanimate</span>
<span class="plain">objects rule):</span>
<span class="plain">if the second noun is not a person:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "Futile." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor throwing something at (this is the block throwing at rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [lack] the nerve when it [if story tense is the past</span>
<span class="plain">tense]came[otherwise]comes[end if] to the crucial moment." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP100"></a><b>&#167;100. Attacking. </b></p>
<pre class="display">
<span class="plain">Attacking is an action applying to one thing.</span>
<span class="plain">The attacking action translates into I6 as "Attack".</span>
<span class="plain">The specification of the attacking action is "Violence is seldom the answer,</span>
<span class="plain">and attempts to attack another person are normally blocked as being unrealistic</span>
<span class="plain">or not seriously meant. (I might find a shop assistant annoying, but IF is</span>
<span class="plain">not Grand Theft Auto, and responding by killing him is not really one of</span>
<span class="plain">my options.) So the Standard Rules simply block attempts to fight people,</span>
<span class="plain">but the action exists for rules to make exceptions."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP101"></a><b>&#167;101. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor attacking (this is the block attacking rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "Violence [aren't] the answer to this one." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP102"></a><b>&#167;102. Kissing. </b></p>
<pre class="display">
<span class="plain">Kissing is an action applying to one thing.</span>
<span class="plain">The kissing action translates into I6 as "Kiss".</span>
<span class="plain">The specification of the kissing action is "Possibly because Inform was</span>
<span class="plain">originally written by an Englishman, attempts at kissing another person are</span>
<span class="plain">normally blocked as being unrealistic or not seriously meant. So the</span>
<span class="plain">Standard Rules simply block attempts to kiss people, but the action exists</span>
<span class="plain">for rules to make exceptions."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP103"></a><b>&#167;103. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor kissing (this is the kissing yourself rule):</span>
<span class="plain">if the noun is the actor:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [don't] get much from that." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor kissing (this is the block kissing rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[The noun] [might not] like that." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP104"></a><b>&#167;104. Answering it that. </b></p>
<pre class="display">
<span class="plain">Answering it that is an action applying to one thing and one topic.</span>
<span class="plain">The answering it that action translates into I6 as "Answer".</span>
<span class="plain">The specification of the answering it that action is "The Standard Rules do</span>
<span class="plain">not include any systematic way to handle conversation: instead, Inform is</span>
<span class="plain">set up so that it is as easy as we can make it to write specific rules</span>
<span class="plain">handling speech in particular games, and so that if no such rules are</span>
<span class="plain">written then all attempts to communicate are gracefully if not very</span>
<span class="plain">interestingly rejected.</span>
<span class="plain">The topic here can be any double-quoted text, which can itself contain</span>
<span class="plain">tokens in square brackets: see the documentation on Understanding.</span>
<span class="plain">Answering is an action existing so that the player can say something free-form</span>
<span class="plain">to somebody else. A convention of IF is that a command such as DAPHNE, TAKE</span>
<span class="plain">MASK is a request to Daphne to perform an action: if the persuasion rules in</span>
<span class="plain">force mean that she consents, the action 'Daphne taking the mask' does</span>
<span class="plain">indeed then result. But if the player types DAPHNE, 12375 or DAPHNE, GREAT</span>
<span class="plain">HEAVENS - or anything else not making sense as a command - the action</span>
<span class="plain">'answering Daphne that ...' will be generated.</span>
<span class="plain">The name of the action arises because it is also caused by typing, say,</span>
<span class="plain">ANSWER 12375 when Daphne (say) has asked a question."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP105"></a><b>&#167;105. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor answering something that (this is the block answering rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "[There] [are] no reply." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP106"></a><b>&#167;106. Telling it about. </b></p>
<pre class="display">
<span class="plain">Telling it about is an action applying to one thing and one topic.</span>
<span class="plain">The telling it about action translates into I6 as "Tell".</span>
<span class="plain">The specification of the telling it about action is "The Standard Rules do</span>
<span class="plain">not include any systematic way to handle conversation: instead, Inform is</span>
<span class="plain">set up so that it is as easy as we can make it to write specific rules</span>
<span class="plain">handling speech in particular games, and so that if no such rules are</span>
<span class="plain">written then all attempts to communicate are gracefully if not very</span>
<span class="plain">interestingly rejected.</span>
<span class="plain">The topic here can be any double-quoted text, which can itself contain</span>
<span class="plain">tokens in square brackets: see the documentation on Understanding.</span>
<span class="plain">Telling is an action existing only to catch commands like TELL ALEX ABOUT</span>
<span class="plain">GUITAR. Customarily in IF, such a command is shorthand which the player</span>
<span class="plain">accepts as a conventional form: it means 'tell Alex what I now know about</span>
<span class="plain">the guitar' and would make sense if the player had himself recently</span>
<span class="plain">discovered something significant about the guitar which might interest</span>
<span class="plain">Alex."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP107"></a><b>&#167;107. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor telling something about (this is the telling yourself rule):</span>
<span class="plain">if the actor is the noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [talk] to [ourselves] a while." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP108"></a><b>&#167;108. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor telling something about (this is the block telling rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "This [provoke] no reaction." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP109"></a><b>&#167;109. Asking it about. </b></p>
<pre class="display">
<span class="plain">Asking it about is an action applying to one thing and one topic.</span>
<span class="plain">The asking it about action translates into I6 as "Ask".</span>
<span class="plain">The specification of the asking it about action is "The Standard Rules do</span>
<span class="plain">not include any systematic way to handle conversation: instead, Inform is</span>
<span class="plain">set up so that it is as easy as we can make it to write specific rules</span>
<span class="plain">handling speech in particular games, and so that if no such rules are</span>
<span class="plain">written then all attempts to communicate are gracefully if not very</span>
<span class="plain">interestingly rejected.</span>
<span class="plain">The topic here can be any double-quoted text, which can itself contain</span>
<span class="plain">tokens in square brackets: see the documentation on Understanding.</span>
<span class="plain">Asking is an action existing only to catch commands like ASK STEPHEN ABOUT</span>
<span class="plain">PENELOPE. Customarily in IF, such a command is shorthand which the player</span>
<span class="plain">accepts as a conventional form: it means 'engage Mary in conversation and</span>
<span class="plain">try to find out what she might know about'. It's understood as a convention</span>
<span class="plain">of the genre that Mary should not be expected to respond in cases where</span>
<span class="plain">there is no reason to suppose that she has anything relevant to pass on -</span>
<span class="plain">ASK JANE ABOUT RICE PUDDING, for instance, need not conjure up a recipe</span>
<span class="plain">even if Jane is a 19th-century servant and therefore almost certainly</span>
<span class="plain">knows one."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP110"></a><b>&#167;110. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor asking something about (this is the block asking rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "[There] [are] no reply." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP111"></a><b>&#167;111. Asking it for. </b></p>
<pre class="display">
<span class="plain">Asking it for is an action applying to two things.</span>
<span class="plain">The asking it for action translates into I6 as "AskFor".</span>
<span class="plain">The specification of the asking it for action is "The Standard Rules do</span>
<span class="plain">not include any systematic way to handle conversation, but this is</span>
<span class="plain">action is not quite conversation: it doesn't involve any spoken text as</span>
<span class="plain">such. It exists to catch commands like ASK SALLY FOR THE EGG WHISK,</span>
<span class="plain">where the whisk is something which Sally has and the player can see.</span>
<span class="plain">Slightly oddly, but for historical reasons, an actor asking himself for</span>
<span class="plain">something is treated to an inventory listing instead. All other cases</span>
<span class="plain">are converted to the giving action: that is, ASK SALLY FOR THE EGG WHISK</span>
<span class="plain">is treated as if it were SALLY, GIVE ME THE EGG WHISK - an action for</span>
<span class="plain">Sally to perform and which then follows rules for giving.</span>
<span class="plain">To ask for information or something intangible, see the asking it about</span>
<span class="plain">action."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP112"></a><b>&#167;112. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor asking something for (this is the asking yourself for something rule):</span>
<span class="plain">if the actor is the noun and the actor is the player:</span>
<span class="plain">try taking inventory instead.</span>
<span class="plain">Check an actor asking something for (this is the translate asking for to giving rule):</span>
<span class="plain">convert to request of the noun to perform giving it to action with the second noun and the actor.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP113"></a><b>&#167;113. Waiting. </b></p>
<pre class="display">
<span class="plain">Section SR4/7 - Standard actions which are checked but then do nothing unless rules intervene</span>
<span class="plain">Waiting is an action applying to nothing.</span>
<span class="plain">The waiting action translates into I6 as "Wait".</span>
<span class="plain">The specification of the waiting action is "The inaction action: where would</span>
<span class="plain">we be without waiting? Waiting does not cause time to pass by - that happens</span>
<span class="plain">anyway - but represents a positive choice by the actor not to fill that time.</span>
<span class="plain">It is an action so that rules can be attached to it: for instance, we could</span>
<span class="plain">imagine that a player who consciously decides to sit and wait might notice</span>
<span class="plain">something which a busy player does not, and we could write a rule accordingly.</span>
<span class="plain">Note the absence of check or carry out rules - anyone can wait, at any time,</span>
<span class="plain">and it makes nothing happen."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP114"></a><b>&#167;114. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor waiting (this is the standard report waiting rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "Time [pass]." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [wait]." (B).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP115"></a><b>&#167;115. Touching. </b></p>
<pre class="display">
<span class="plain">Touching is an action applying to one thing.</span>
<span class="plain">The touching action translates into I6 as "Touch".</span>
<span class="plain">The specification of the touching action is "Touching is just that, touching</span>
<span class="plain">something without applying pressure: a touch-sensitive screen or a living</span>
<span class="plain">creature might react, but a standard push-button or lever will probably not.</span>
<span class="plain">In the Standard Rules there are no check touching rules, since touchability</span>
<span class="plain">is already a requirement of the noun for the action anyway, and no carry out</span>
<span class="plain">rules because nothing in the standard Inform world model reacts to</span>
<span class="plain">a mere touch - though report rules do mean that attempts to touch other</span>
<span class="plain">people provoke a special reply."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP116"></a><b>&#167;116. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor touching (this is the report touching yourself rule):</span>
<span class="plain">if the noun is the actor:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[We] [achieve] nothing by this." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [touch] [themselves]." (B);</span>
<span class="plain">stop the action;</span>
<span class="plain">continue the action.</span>
<span class="plain">Report an actor touching (this is the report touching other people rule):</span>
<span class="plain">if the noun is a person:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[The noun] [might not like] that." (A);</span>
<span class="plain">otherwise if the noun is the player:</span>
<span class="plain">say "[The actor] [touch] [us]." (B);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [touch] [the noun]." (C);</span>
<span class="plain">stop the action;</span>
<span class="plain">continue the action.</span>
<span class="plain">Report an actor touching (this is the report touching things rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[We] [feel] nothing unexpected." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [touch] [the noun]." (B).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP117"></a><b>&#167;117. Waving. </b></p>
<pre class="display">
<span class="plain">Waving is an action applying to one thing.</span>
<span class="plain">The waving action translates into I6 as "Wave".</span>
<span class="plain">The specification of the waving action is "Waving in this sense is like</span>
<span class="plain">waving a sceptre: the item to be waved must be directly held (or worn)</span>
<span class="plain">by the actor.</span>
<span class="plain">In the Standard Rules there are no carry out rules for this action because</span>
<span class="plain">nothing in the standard Inform world model which reacts to it. The action</span>
<span class="plain">is provided for authors to hang more interesting behaviour onto for special</span>
<span class="plain">cases: say, waving a particular rusty iron rod with a star on the end."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP118"></a><b>&#167;118. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor waving (this is the can't wave what's not held rule):</span>
<span class="plain">if the actor is not the holder of the noun:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "But [we] [aren't] holding [regarding the noun][those]." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP119"></a><b>&#167;119. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor waving (this is the report waving things rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[We] [wave] [the noun]." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [wave] [the noun]." (B).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP120"></a><b>&#167;120. Pulling. </b></p>
<pre class="display">
<span class="plain">Pulling is an action applying to one thing.</span>
<span class="plain">The Pulling action translates into I6 as "Pull".</span>
<span class="plain">The specification of the pulling action is "Pulling is the act of pulling</span>
<span class="plain">something not grossly larger than the actor by an amount which would not</span>
<span class="plain">substantially move it.</span>
<span class="plain">In the Standard Rules there are no carry out rules for this action because</span>
<span class="plain">nothing in the standard Inform world model which reacts to it. The action</span>
<span class="plain">is provided for authors to hang more interesting behaviour onto for special</span>
<span class="plain">cases: say, pulling a lever. ('The big red lever is a fixed in place device.</span>
<span class="plain">Instead of pulling the big red lever, try switching on the lever. Instead</span>
<span class="plain">of pushing the big red lever, try switching off the lever.')"</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP121"></a><b>&#167;121. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor pulling (this is the can't pull what's fixed in place rule):</span>
<span class="plain">if the noun is fixed in place:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][They] [are] fixed in place." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor pulling (this is the can't pull scenery rule):</span>
<span class="plain">if the noun is scenery:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [are] unable to." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor pulling (this is the can't pull people rule):</span>
<span class="plain">if the noun is a person:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[The noun] [might not like] that." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP122"></a><b>&#167;122. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor pulling (this is the report pulling rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "Nothing obvious [happen]." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [pull] [the noun]." (B).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP123"></a><b>&#167;123. Pushing. </b></p>
<pre class="display">
<span class="plain">Pushing is an action applying to one thing.</span>
<span class="plain">The Pushing action translates into I6 as "Push".</span>
<span class="plain">The specification of the pushing action is "Pushing is the act of pushing</span>
<span class="plain">something not grossly larger than the actor by an amount which would not</span>
<span class="plain">substantially move it. (See also the pushing it to action, which involves</span>
<span class="plain">a longer-distance push between rooms.)</span>
<span class="plain">In the Standard Rules there are no carry out rules for this action because</span>
<span class="plain">nothing in the standard Inform world model which reacts to it. The action</span>
<span class="plain">is provided for authors to hang more interesting behaviour onto for special</span>
<span class="plain">cases: say, pulling a lever. ('The big red lever is a fixed in place device.</span>
<span class="plain">Instead of pulling the big red lever, try switching on the lever. Instead</span>
<span class="plain">of pushing the big red lever, try switching off the lever.')"</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP124"></a><b>&#167;124. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor pushing something (this is the can't push what's fixed in place rule):</span>
<span class="plain">if the noun is fixed in place:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][They] [are] fixed in place." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor pushing something (this is the can't push scenery rule):</span>
<span class="plain">if the noun is scenery:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [are] unable to." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor pushing something (this is the can't push people rule):</span>
<span class="plain">if the noun is a person:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[The noun] [might not like] that." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP125"></a><b>&#167;125. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor pushing something (this is the report pushing rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "Nothing obvious [happen]." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [push] [the noun]." (B).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP126"></a><b>&#167;126. Turning. </b></p>
<pre class="display">
<span class="plain">Turning is an action applying to one thing.</span>
<span class="plain">The Turning action translates into I6 as "Turn".</span>
<span class="plain">The specification of the turning action is "Turning is the act of rotating</span>
<span class="plain">something - say, a dial.</span>
<span class="plain">In the Standard Rules there are no carry out rules for this action because</span>
<span class="plain">nothing in the standard Inform world model which reacts to it. The action</span>
<span class="plain">is provided for authors to hang more interesting behaviour onto for special</span>
<span class="plain">cases: say, turning a capstan."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP127"></a><b>&#167;127. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor turning (this is the can't turn what's fixed in place rule):</span>
<span class="plain">if the noun is fixed in place:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][They] [are] fixed in place." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor turning (this is the can't turn scenery rule):</span>
<span class="plain">if the noun is scenery:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [are] unable to." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor turning (this is the can't turn people rule):</span>
<span class="plain">if the noun is a person:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[The noun] [might not like] that." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP128"></a><b>&#167;128. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor turning (this is the report turning rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "Nothing obvious [happen]." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [turn] [the noun]." (B).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP129"></a><b>&#167;129. Pushing it to. </b></p>
<pre class="display">
<span class="plain">Pushing it to is an action applying to one thing and one visible thing.</span>
<span class="plain">The Pushing it to action translates into I6 as "PushDir".</span>
<span class="plain">The specification of the pushing it to action is "This action covers pushing</span>
<span class="plain">a large object, not being carried, so that the actor pushes it from one room</span>
<span class="plain">to another: for instance, pushing a bale of hay to the east.</span>
<span class="plain">This is rapidly converted into a special form of the going action. If the</span>
<span class="plain">noun object has the either/or property 'pushable between rooms', then the</span>
<span class="plain">action is converted to going by the 'standard pushing in directions rule'.</span>
<span class="plain">If that going action succeeds, then the original pushing it to action</span>
<span class="plain">stops; it's only if that fails that we run on into the 'block pushing in</span>
<span class="plain">directions rule', which then puts an end to the matter."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP130"></a><b>&#167;130. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor pushing something to (this is the can't push unpushable things rule):</span>
<span class="plain">if the noun is not pushable between rooms:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[The noun] [cannot] be pushed from place to place." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor pushing something to (this is the can't push to non-directions rule):</span>
<span class="plain">if the second noun is not a direction:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[regarding the noun][They] [aren't] a direction." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor pushing something to (this is the can't push vertically rule):</span>
<span class="plain">if the second noun is up or the second noun is down:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[The noun] [cannot] be pushed up or down." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor pushing something to (this is the can't push from within rule):</span>
<span class="plain">if the noun encloses the actor:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[The noun] [cannot] be pushed from here." (A);</span>
<span class="plain">stop the action.</span>
<span class="plain">Check an actor pushing something to (this is the standard pushing in directions rule):</span>
<span class="plain">convert to special going-with-push action.</span>
<span class="plain">Check an actor pushing something to (this is the block pushing in directions rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[The noun] [cannot] be pushed from place to place." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP131"></a><b>&#167;131. Squeezing. </b></p>
<pre class="display">
<span class="plain">Squeezing is an action applying to one thing.</span>
<span class="plain">The Squeezing action translates into I6 as "Squeeze".</span>
<span class="plain">The specification of the squeezing action is "Squeezing is an action which</span>
<span class="plain">can conveniently vary from squeezing something hand-held, like a washing-up</span>
<span class="plain">liquid bottle, right up to squeezing a pillar in a bear hug.</span>
<span class="plain">In the Standard Rules there are no carry out rules for this action because</span>
<span class="plain">nothing in the standard Inform world model which reacts to it. The action</span>
<span class="plain">is provided for authors to hang more interesting behaviour onto for special</span>
<span class="plain">cases. A mildly fruity message is produced to players who attempt to</span>
<span class="plain">squeeze people, which is blocked by a check squeezing rule."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP132"></a><b>&#167;132. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor squeezing (this is the innuendo about squeezing people rule):</span>
<span class="plain">if the noun is a person:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[The noun] [might not like] that." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP133"></a><b>&#167;133. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor squeezing (this is the report squeezing rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[We] [achieve] nothing by this." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [squeeze] [the noun]." (B).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP134"></a><b>&#167;134. Saying yes. </b></p>
<pre class="display">
<span class="plain">Section SR4/8 - Standard actions which always do nothing unless rules intervene</span>
<span class="plain">Saying yes is an action applying to nothing.</span>
<span class="plain">The Saying yes action translates into I6 as "Yes".</span>
<span class="plain">The specification of the saying yes action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, blocking it</span>
<span class="plain">with a check rule which stops it in all cases. It exists so that before</span>
<span class="plain">or instead rules can be written to make it do interesting things in special</span>
<span class="plain">cases. (Or to reconstruct the action as something more substantial, unlist</span>
<span class="plain">the block rule and supply carry out and report rules, together perhaps</span>
<span class="plain">with some further check rules.)"</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP135"></a><b>&#167;135. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor saying yes (this is the block saying yes rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "That was a rhetorical question." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP136"></a><b>&#167;136. </b>Saying no.
</p>
<pre class="display">
<span class="plain">Saying no is an action applying to nothing.</span>
<span class="plain">The Saying no action translates into I6 as "No".</span>
<span class="plain">The specification of the saying no action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, blocking it</span>
<span class="plain">with a check rule which stops it in all cases. It exists so that before</span>
<span class="plain">or instead rules can be written to make it do interesting things in special</span>
<span class="plain">cases. (Or to reconstruct the action as something more substantial, unlist</span>
<span class="plain">the block rule and supply carry out and report rules, together perhaps</span>
<span class="plain">with some further check rules.)"</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP137"></a><b>&#167;137. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor saying no (this is the block saying no rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "That was a rhetorical question." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP138"></a><b>&#167;138. Burning. </b></p>
<pre class="display">
<span class="plain">Burning is an action applying to one thing.</span>
<span class="plain">The Burning action translates into I6 as "Burn".</span>
<span class="plain">The specification of the burning action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, blocking it</span>
<span class="plain">with a check rule which stops it in all cases. It exists so that before</span>
<span class="plain">or instead rules can be written to make it do interesting things in special</span>
<span class="plain">cases. (Or to reconstruct the action as something more substantial, unlist</span>
<span class="plain">the block rule and supply carry out and report rules, together perhaps</span>
<span class="plain">with some further check rules.)"</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP139"></a><b>&#167;139. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor burning (this is the block burning rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "This dangerous act [would achieve] little." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP140"></a><b>&#167;140. Waking up. </b></p>
<pre class="display">
<span class="plain">Waking up is an action applying to nothing.</span>
<span class="plain">The Waking up action translates into I6 as "Wake".</span>
<span class="plain">The specification of the waking up action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, blocking it</span>
<span class="plain">with a check rule which stops it in all cases. It exists so that before</span>
<span class="plain">or instead rules can be written to make it do interesting things in special</span>
<span class="plain">cases. (Or to reconstruct the action as something more substantial, unlist</span>
<span class="plain">the block rule and supply carry out and report rules, together perhaps</span>
<span class="plain">with some further check rules.)"</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP141"></a><b>&#167;141. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor waking up (this is the block waking up rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "The dreadful truth [are], this [are not] a dream." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP142"></a><b>&#167;142. Thinking. </b></p>
<pre class="display">
<span class="plain">Thinking is an action applying to nothing.</span>
<span class="plain">The Thinking action translates into I6 as "Think".</span>
<span class="plain">The specification of the thinking action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, blocking it</span>
<span class="plain">with a check rule which stops it in all cases. It exists so that before</span>
<span class="plain">or instead rules can be written to make it do interesting things in special</span>
<span class="plain">cases. (Or to reconstruct the action as something more substantial, unlist</span>
<span class="plain">the block rule and supply carry out and report rules, together perhaps</span>
<span class="plain">with some further check rules.)"</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP143"></a><b>&#167;143. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor thinking (this is the block thinking rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "What a good idea." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP144"></a><b>&#167;144. Smelling. </b></p>
<pre class="display">
<span class="plain">Smelling is an action applying to nothing or one thing.</span>
<span class="plain">The Smelling action translates into I6 as "Smell".</span>
<span class="plain">The specification of the smelling action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, replying only</span>
<span class="plain">that the player smells nothing unexpected."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP145"></a><b>&#167;145. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor smelling (this is the report smelling rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[We] [smell] nothing unexpected." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [sniff]." (B).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP146"></a><b>&#167;146. Listening to. </b></p>
<pre class="display">
<span class="plain">Listening to is an action applying to nothing or one thing and abbreviable.</span>
<span class="plain">The Listening to action translates into I6 as "Listen".</span>
<span class="plain">The specification of the listening to action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, replying only</span>
<span class="plain">that the player hears nothing unexpected."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP147"></a><b>&#167;147. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor listening to (this is the report listening rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[We] [hear] nothing unexpected." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [listen]." (B).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP148"></a><b>&#167;148. Tasting. </b></p>
<pre class="display">
<span class="plain">Tasting is an action applying to one thing.</span>
<span class="plain">The Tasting action translates into I6 as "Taste".</span>
<span class="plain">The specification of the tasting action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, replying only</span>
<span class="plain">that the player tastes nothing unexpected."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP149"></a><b>&#167;149. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor tasting (this is the report tasting rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[We] [taste] nothing unexpected." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [taste] [the noun]." (B).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP150"></a><b>&#167;150. Cutting. </b></p>
<pre class="display">
<span class="plain">Cutting is an action applying to one thing.</span>
<span class="plain">The Cutting action translates into I6 as "Cut".</span>
<span class="plain">The specification of the cutting action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, blocking it</span>
<span class="plain">with a check rule which stops it in all cases. It exists so that before</span>
<span class="plain">or instead rules can be written to make it do interesting things in special</span>
<span class="plain">cases. (Or to reconstruct the action as something more substantial, unlist</span>
<span class="plain">the block rule and supply carry out and report rules, together perhaps</span>
<span class="plain">with some further check rules.)"</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP151"></a><b>&#167;151. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor cutting (this is the block cutting rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "Cutting [regarding the noun][them] up [would achieve] little." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP152"></a><b>&#167;152. Jumping. </b></p>
<pre class="display">
<span class="plain">Jumping is an action applying to nothing.</span>
<span class="plain">The Jumping action translates into I6 as "Jump".</span>
<span class="plain">The specification of the jumping action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, simply reporting</span>
<span class="plain">a little jump on the spot."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP153"></a><b>&#167;153. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor jumping (this is the report jumping rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[We] [jump] on the spot." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [jump] on the spot." (B).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP154"></a><b>&#167;154. Tying it to. </b></p>
<pre class="display">
<span class="plain">Tying it to is an action applying to two things.</span>
<span class="plain">The Tying it to action translates into I6 as "Tie".</span>
<span class="plain">The specification of the tying it to action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, blocking it</span>
<span class="plain">with a check rule which stops it in all cases. It exists so that before</span>
<span class="plain">or instead rules can be written to make it do interesting things in special</span>
<span class="plain">cases. (Or to reconstruct the action as something more substantial, unlist</span>
<span class="plain">the block rule and supply carry out and report rules, together perhaps</span>
<span class="plain">with some further check rules.)"</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP155"></a><b>&#167;155. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor tying something to (this is the block tying rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [would achieve] nothing by this." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP156"></a><b>&#167;156. Drinking. </b></p>
<pre class="display">
<span class="plain">Drinking is an action applying to one thing.</span>
<span class="plain">The Drinking action translates into I6 as "Drink".</span>
<span class="plain">The specification of the drinking action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, blocking it</span>
<span class="plain">with a check rule which stops it in all cases. It exists so that before</span>
<span class="plain">or instead rules can be written to make it do interesting things in special</span>
<span class="plain">cases. (Or to reconstruct the action as something more substantial, unlist</span>
<span class="plain">the block rule and supply carry out and report rules, together perhaps</span>
<span class="plain">with some further check rules.)"</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP157"></a><b>&#167;157. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor drinking (this is the block drinking rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "[There's] nothing suitable to drink here." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP158"></a><b>&#167;158. Saying sorry. </b></p>
<pre class="display">
<span class="plain">Saying sorry is an action applying to nothing.</span>
<span class="plain">The Saying sorry action translates into I6 as "Sorry".</span>
<span class="plain">The specification of the saying sorry action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, blocking it</span>
<span class="plain">with a check rule which stops it in all cases. It exists so that before</span>
<span class="plain">or instead rules can be written to make it do interesting things in special</span>
<span class="plain">cases. (Or to reconstruct the action as something more substantial, unlist</span>
<span class="plain">the block rule and supply carry out and report rules, together perhaps</span>
<span class="plain">with some further check rules.)"</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP159"></a><b>&#167;159. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor saying sorry (this is the block saying sorry rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "Oh, don't [if American dialect option is</span>
<span class="plain">active]apologize[otherwise]apologise[end if]." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP160"></a><b>&#167;160. Swinging. </b></p>
<pre class="display">
<span class="plain">Swinging is an action applying to one thing.</span>
<span class="plain">The Swinging action translates into I6 as "Swing".</span>
<span class="plain">The specification of the swinging action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, blocking it</span>
<span class="plain">with a check rule which stops it in all cases. It exists so that before</span>
<span class="plain">or instead rules can be written to make it do interesting things in special</span>
<span class="plain">cases. (Or to reconstruct the action as something more substantial, unlist</span>
<span class="plain">the block rule and supply carry out and report rules, together perhaps</span>
<span class="plain">with some further check rules.)"</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP161"></a><b>&#167;161. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor swinging (this is the block swinging rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "[There's] nothing sensible to swing here." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP162"></a><b>&#167;162. Rubbing. </b></p>
<pre class="display">
<span class="plain">Rubbing is an action applying to one thing.</span>
<span class="plain">The Rubbing action translates into I6 as "Rub".</span>
<span class="plain">The specification of the rubbing action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, simply reporting</span>
<span class="plain">that it has happened."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP163"></a><b>&#167;163. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor rubbing (this is the can't rub another person rule):</span>
<span class="plain">if the noun is a person who is not the actor:</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[The noun] [might not like] that." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP164"></a><b>&#167;164. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor rubbing (this is the report rubbing rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[We] [rub] [the noun]." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [rub] [the noun]." (B).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP165"></a><b>&#167;165. Setting it to. </b></p>
<pre class="display">
<span class="plain">Setting it to is an action applying to one thing and one topic.</span>
<span class="plain">The Setting it to action translates into I6 as "SetTo".</span>
<span class="plain">The specification of the setting it to action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, blocking it</span>
<span class="plain">with a check rule which stops it in all cases. It exists so that before</span>
<span class="plain">or instead rules can be written to make it do interesting things in special</span>
<span class="plain">cases. (Or to reconstruct the action as something more substantial, unlist</span>
<span class="plain">the block rule and supply carry out and report rules, together perhaps</span>
<span class="plain">with some further check rules.)"</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP166"></a><b>&#167;166. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor setting something to (this is the block setting it to rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "No, [we] [can't set] [regarding the noun][those] to anything." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP167"></a><b>&#167;167. Waving hands. </b></p>
<pre class="display">
<span class="plain">Waving hands is an action applying to nothing.</span>
<span class="plain">The Waving hands action translates into I6 as "WaveHands".</span>
<span class="plain">The specification of the waving hands action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, simply reporting</span>
<span class="plain">a little wave of the hands."</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP168"></a><b>&#167;168. </b>Report.
</p>
<pre class="display">
<span class="plain">Report an actor waving hands (this is the report waving hands rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">if the action is not silent:</span>
<span class="plain">say "[We] [wave]." (A);</span>
<span class="plain">otherwise:</span>
<span class="plain">say "[The actor] [wave]." (B).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP169"></a><b>&#167;169. Buying. </b></p>
<pre class="display">
<span class="plain">Buying is an action applying to one thing.</span>
<span class="plain">The Buying action translates into I6 as "Buy".</span>
<span class="plain">The specification of the buying action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, blocking it</span>
<span class="plain">with a check rule which stops it in all cases. It exists so that before</span>
<span class="plain">or instead rules can be written to make it do interesting things in special</span>
<span class="plain">cases. (Or to reconstruct the action as something more substantial, unlist</span>
<span class="plain">the block rule and supply carry out and report rules, together perhaps</span>
<span class="plain">with some further check rules.)"</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP170"></a><b>&#167;170. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor buying (this is the block buying rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">now the prior named object is nothing;</span>
<span class="plain">say "Nothing [are] on sale." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP171"></a><b>&#167;171. Climbing. </b></p>
<pre class="display">
<span class="plain">Climbing is an action applying to one thing.</span>
<span class="plain">The Climbing action translates into I6 as "Climb".</span>
<span class="plain">The specification of the climbing action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, blocking it</span>
<span class="plain">with a check rule which stops it in all cases. It exists so that before</span>
<span class="plain">or instead rules can be written to make it do interesting things in special</span>
<span class="plain">cases. (Or to reconstruct the action as something more substantial, unlist</span>
<span class="plain">the block rule and supply carry out and report rules, together perhaps</span>
<span class="plain">with some further check rules.)"</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP172"></a><b>&#167;172. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor climbing (this is the block climbing rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "Little [are] to be achieved by that." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP173"></a><b>&#167;173. Sleeping. </b></p>
<pre class="display">
<span class="plain">Sleeping is an action applying to nothing.</span>
<span class="plain">The Sleeping action translates into I6 as "Sleep".</span>
<span class="plain">The specification of the sleeping action is</span>
<span class="plain">"The Standard Rules define this action in only a minimal way, blocking it</span>
<span class="plain">with a check rule which stops it in all cases. It exists so that before</span>
<span class="plain">or instead rules can be written to make it do interesting things in special</span>
<span class="plain">cases. (Or to reconstruct the action as something more substantial, unlist</span>
<span class="plain">the block rule and supply carry out and report rules, together perhaps</span>
<span class="plain">with some further check rules.)"</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP174"></a><b>&#167;174. </b>Check.
</p>
<pre class="display">
<span class="plain">Check an actor sleeping (this is the block sleeping rule):</span>
<span class="plain">if the actor is the player:</span>
<span class="plain">say "[We] [aren't] feeling especially drowsy." (A);</span>
<span class="plain">stop the action.</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP175"></a><b>&#167;175. Out of world actions. </b>We start with a brace of actions which control the (virtual) hardware of
the virtual machine: restore, save, quit, restart, verify, and transcript
on and off. All of these are implemented at the I6 level where, in fact,
they are delegated quickly to assembly language instructions for whichever
is the current VM: so these are close to the metal, as they say.
</p>
<pre class="display">
<span class="plain">Section SR4/9 - Standard actions which happen out of world</span>
<span class="plain">Quitting the game is an action out of world and applying to nothing.</span>
<span class="plain">The quitting the game action translates into I6 as "Quit".</span>
<span class="plain">The quit the game rule is listed in the carry out quitting the game rulebook.</span>
<span class="plain">The quit the game rule translates into I6 as "QUIT_THE_GAME_R" with</span>
<span class="plain">"Are you sure you want to quit? " (A).</span>
<span class="plain">Saving the game is an action out of world and applying to nothing.</span>
<span class="plain">The saving the game action translates into I6 as "Save".</span>
<span class="plain">The save the game rule is listed in the carry out saving the game rulebook.</span>
<span class="plain">The save the game rule translates into I6 as "SAVE_THE_GAME_R" with</span>
<span class="plain">"Save failed." (A),</span>
<span class="plain">"Ok." (B).</span>
<span class="plain">Restoring the game is an action out of world and applying to nothing.</span>
<span class="plain">The restoring the game action translates into I6 as "Restore".</span>
<span class="plain">The restore the game rule is listed in the carry out restoring the game rulebook.</span>
<span class="plain">The restore the game rule translates into I6 as "RESTORE_THE_GAME_R" with</span>
<span class="plain">"Restore failed." (A),</span>
<span class="plain">"Ok." (B).</span>
<span class="plain">Restarting the game is an action out of world and applying to nothing.</span>
<span class="plain">The restarting the game action translates into I6 as "Restart".</span>
<span class="plain">The restart the game rule is listed in the carry out restarting the game rulebook.</span>
<span class="plain">The restart the game rule translates into I6 as "RESTART_THE_GAME_R" with</span>
<span class="plain">"Are you sure you want to restart? " (A),</span>
<span class="plain">"Failed." (B).</span>
<span class="plain">Verifying the story file is an action out of world and applying to nothing.</span>
<span class="plain">The verifying the story file action translates into I6 as "Verify".</span>
<span class="plain">The verify the story file rule is listed in the carry out verifying the story file rulebook.</span>
<span class="plain">The verify the story file rule translates into I6 as "VERIFY_THE_STORY_FILE_R" with</span>
<span class="plain">"The game file has verified as intact." (A),</span>
<span class="plain">"The game file did not verify as intact, and may be corrupt." (B).</span>
<span class="plain">Switching the story transcript on is an action out of world and applying to nothing.</span>
<span class="plain">The switching the story transcript on action translates into I6 as "ScriptOn".</span>
<span class="plain">The switch the story transcript on rule is listed in the carry out switching the story</span>
<span class="plain">transcript on rulebook.</span>
<span class="plain">The switch the story transcript on rule translates into I6 as "SWITCH_TRANSCRIPT_ON_R" with</span>
<span class="plain">"Transcripting is already on." (A),</span>
<span class="plain">"Start of a transcript of" (B),</span>
<span class="plain">"Attempt to begin transcript failed." (C).</span>
<span class="plain">Switching the story transcript off is an action out of world and applying to nothing.</span>
<span class="plain">The switching the story transcript off action translates into I6 as "ScriptOff".</span>
<span class="plain">The switch the story transcript off rule is listed in the carry out switching the story</span>
<span class="plain">transcript off rulebook.</span>
<span class="plain">The switch the story transcript off rule translates into I6 as "SWITCH_TRANSCRIPT_OFF_R" with</span>
<span class="plain">"Transcripting is already off." (A),</span>
<span class="plain">"[line break]End of transcript." (B),</span>
<span class="plain">"Attempt to end transcript failed." (C).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP176"></a><b>&#167;176. </b>The VERSION command is not quite so close to the metal &mdash; it is implemented
in I6, at the end of the day &mdash; but it does involve reading the bytes of the
story file header, so it needs to take quite different forms for the
different formats being compiled to.
</p>
<pre class="display">
<span class="plain">Requesting the story file version is an action out of world and applying to nothing.</span>
<span class="plain">The requesting the story file version action translates into I6 as "Version".</span>
<span class="plain">The announce the story file version rule is listed in the carry out requesting the story</span>
<span class="plain">file version rulebook.</span>
<span class="plain">The announce the story file version rule translates into I6 as "ANNOUNCE_STORY_FILE_VERSION_R".</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP177"></a><b>&#167;177. </b>There's really no very good reason why we provide the out-of-world command
SCORE but not (say) TIME, or any one of dozens of other traditional what's-my-status
commands: DIAGNOSE, say, or PLACES. But we are conservative on this; it's easy
for users or extensions to provide these verbs if they want them, and they are
not always appropriate for every project. Even SCORE is questionable, but its
removal would be a gesture too far.
</p>
<pre class="display">
<span class="plain">Requesting the score is an action out of world and applying to nothing.</span>
<span class="plain">The requesting the score action translates into I6 as "Score".</span>
<span class="plain">The announce the score rule is listed in the carry out requesting the score rulebook.</span>
<span class="plain">The announce the score rule translates into I6 as "ANNOUNCE_SCORE_R" with</span>
<span class="plain">"[if the story has ended]In that game you scored[otherwise]You have so far scored[end if]</span>
<span class="plain">[score] out of a possible [maximum score], in [turn count] turn[s]" (A),</span>
<span class="plain">", earning you the rank of " (B),</span>
<span class="plain">"[There] [are] no score in this story." (C),</span>
<span class="plain">"[bracket]Your score has just gone up by [number understood in words]</span>
<span class="plain">point[s].[close bracket]" (D),</span>
<span class="plain">"[bracket]Your score has just gone down by [number understood in words]</span>
<span class="plain">point[s].[close bracket]" (E).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP178"></a><b>&#167;178. </b>It's perhaps clumsy to have three actions for switching the style of room
description, but this accords with I6 custom (and Infocom's, for that matter),
and does no harm.
</p>
<pre class="display">
<span class="plain">Preferring abbreviated room descriptions is an action out of world and applying to nothing.</span>
<span class="plain">The preferring abbreviated room descriptions action translates into I6 as "LMode3".</span>
<span class="plain">The prefer abbreviated room descriptions rule is listed in the carry out preferring</span>
<span class="plain">abbreviated room descriptions rulebook.</span>
<span class="plain">The prefer abbreviated room descriptions rule translates into I6 as "PREFER_ABBREVIATED_R".</span>
<span class="plain">The standard report preferring abbreviated room descriptions rule is listed in the</span>
<span class="plain">report preferring abbreviated room descriptions rulebook.</span>
<span class="plain">The standard report preferring abbreviated room descriptions rule translates into</span>
<span class="plain">I6 as "REP_PREFER_ABBREVIATED_R" with</span>
<span class="plain">" is now in its 'superbrief' mode, which always gives short descriptions</span>
<span class="plain">of locations (even if you haven't been there before)." (A).</span>
<span class="plain">Preferring unabbreviated room descriptions is an action out of world and applying to nothing.</span>
<span class="plain">The preferring unabbreviated room descriptions action translates into I6 as "LMode2".</span>
<span class="plain">The prefer unabbreviated room descriptions rule is listed in the carry out preferring</span>
<span class="plain">unabbreviated room descriptions rulebook.</span>
<span class="plain">The prefer unabbreviated room descriptions rule translates into I6 as "PREFER_UNABBREVIATED_R".</span>
<span class="plain">The standard report preferring unabbreviated room descriptions rule is listed in the</span>
<span class="plain">report preferring unabbreviated room descriptions rulebook.</span>
<span class="plain">The standard report preferring unabbreviated room descriptions rule translates into</span>
<span class="plain">I6 as "REP_PREFER_UNABBREVIATED_R" with</span>
<span class="plain">" is now in its 'verbose' mode, which always gives long descriptions of</span>
<span class="plain">locations (even if you've been there before)." (A).</span>
<span class="plain">Preferring sometimes abbreviated room descriptions is an action out of world and</span>
<span class="plain">applying to nothing.</span>
<span class="plain">The preferring sometimes abbreviated room descriptions action translates into I6 as "LMode1".</span>
<span class="plain">The prefer sometimes abbreviated room descriptions rule is listed in the carry out</span>
<span class="plain">preferring sometimes abbreviated room descriptions rulebook.</span>
<span class="plain">The prefer sometimes abbreviated room descriptions rule translates into I6 as</span>
<span class="plain">"PREFER_SOMETIMES_ABBREVIATED_R".</span>
<span class="plain">The standard report preferring sometimes abbreviated room descriptions rule is listed</span>
<span class="plain">in the report preferring sometimes abbreviated room descriptions rulebook.</span>
<span class="plain">The standard report preferring sometimes abbreviated room descriptions rule translates</span>
<span class="plain">into I6 as "REP_PREFER_SOMETIMES_ABBR_R" with</span>
<span class="plain">" is now in its 'brief' printing mode, which gives long descriptions</span>
<span class="plain">of places never before visited and short descriptions otherwise." (A).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP179"></a><b>&#167;179. </b>Similarly, two different actions handle "notify" and "notify off".
</p>
<pre class="display">
<span class="plain">Switching score notification on is an action out of world and applying to nothing.</span>
<span class="plain">The switching score notification on action translates into I6 as "NotifyOn".</span>
<span class="plain">The switch score notification on rule is listed in the carry out switching score</span>
<span class="plain">notification on rulebook.</span>
<span class="plain">The switch score notification on rule translates into I6 as "SWITCH_SCORE_NOTIFY_ON_R".</span>
<span class="plain">The standard report switching score notification on rule is listed in the report</span>
<span class="plain">switching score notification on rulebook.</span>
<span class="plain">The standard report switching score notification on rule translates into</span>
<span class="plain">I6 as "REP_SWITCH_NOTIFY_ON_R" with "Score notification on." (A).</span>
<span class="plain">Switching score notification off is an action out of world and applying to nothing.</span>
<span class="plain">The switching score notification off action translates into I6 as "NotifyOff".</span>
<span class="plain">The switch score notification off rule is listed in the carry out switching score</span>
<span class="plain">notification off rulebook.</span>
<span class="plain">The switch score notification off rule translates into I6 as "SWITCH_SCORE_NOTIFY_OFF_R".</span>
<span class="plain">The standard report switching score notification off rule is listed in the report</span>
<span class="plain">switching score notification off rulebook.</span>
<span class="plain">The standard report switching score notification off rule translates into</span>
<span class="plain">I6 as "REP_SWITCH_NOTIFY_OFF_R" with "Score notification off." (A).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP180"></a><b>&#167;180. </b>Lastly, the "pronouns" verb, which is perhaps more often used by people
debugging the I6 parser than by actual players.
</p>
<pre class="display">
<span class="plain">Requesting the pronoun meanings is an action out of world and applying to nothing.</span>
<span class="plain">The requesting the pronoun meanings action translates into I6 as "Pronouns".</span>
<span class="plain">The announce the pronoun meanings rule is listed in the carry out requesting the</span>
<span class="plain">pronoun meanings rulebook.</span>
<span class="plain">The announce the pronoun meanings rule translates into I6 as "ANNOUNCE_PRONOUN_MEANINGS_R" with</span>
<span class="plain">"At the moment, " (A),</span>
<span class="plain">"means " (B),</span>
<span class="plain">"is unset" (C),</span>
<span class="plain">"no pronouns are known to the game." (D).</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP181"></a><b>&#167;181. Miscellaneous Grammar Tokens. </b>There's only one of these, at present.
</p>
<pre class="display">
<span class="plain">The understand token a time period translates into I6 as "RELATIVE_TIME_TOKEN".</span>
</pre>
<p class="inwebparagraph"></p>
<p class="inwebparagraph"><a id="SP182"></a><b>&#167;182. Grammar. </b></p>
<pre class="display">
<span class="plain">Section SR4/10 - Grammar</span>
<span class="plain">Understand "take [things]" as taking.</span>
<span class="plain">Understand "take off [something]" as taking off.</span>
<span class="plain">Understand "take [something] off" as taking off.</span>
<span class="plain">Understand "take [things inside] from [something]" as removing it from.</span>
<span class="plain">Understand "take [things inside] off [something]" as removing it from.</span>
<span class="plain">Understand "take inventory" as taking inventory.</span>
<span class="plain">Understand the commands "carry" and "hold" as "take".</span>
<span class="plain">Understand "get in/on" as entering.</span>
<span class="plain">Understand "get out/off/down/up" as exiting.</span>
<span class="plain">Understand "get [things]" as taking.</span>
<span class="plain">Understand "get in/into/on/onto [something]" as entering.</span>
<span class="plain">Understand "get off/down [something]" as getting off.</span>
<span class="plain">Understand "get [things inside] from [something]" as removing it from.</span>
<span class="plain">Understand "pick up [things]" or "pick [things] up" as taking.</span>
<span class="plain">Understand "stand" or "stand up" as exiting.</span>
<span class="plain">Understand "stand on [something]" as entering.</span>
<span class="plain">Understand "remove [something preferably held]" as taking off.</span>
<span class="plain">Understand "remove [things inside] from [something]" as removing it from.</span>
<span class="plain">Understand "shed [something preferably held]" as taking off.</span>
<span class="plain">Understand the commands "doff" and "disrobe" as "shed".</span>
<span class="plain">Understand "wear [something preferably held]" as wearing.</span>
<span class="plain">Understand the command "don" as "wear".</span>
<span class="plain">Understand "put [other things] in/inside/into [something]" as inserting it into.</span>
<span class="plain">Understand "put [other things] on/onto [something]" as putting it on.</span>
<span class="plain">Understand "put on [something preferably held]" as wearing.</span>
<span class="plain">Understand "put [something preferably held] on" as wearing.</span>
<span class="plain">Understand "put down [things preferably held]" or "put [things preferably held] down" as dropping.</span>
<span class="plain">Understand "insert [other things] in/into [something]" as inserting it into.</span>
<span class="plain">Understand "drop [things preferably held]" as dropping.</span>
<span class="plain">Understand "drop [other things] in/into/down [something]" as inserting it into.</span>
<span class="plain">Understand "drop [other things] on/onto [something]" as putting it on.</span>
<span class="plain">Understand "drop [something preferably held] at/against [something]" as throwing it at.</span>
<span class="plain">Understand the commands "throw" and "discard" as "drop".</span>
<span class="plain">Understand "give [something preferably held] to [someone]" as giving it to.</span>
<span class="plain">Understand "give [someone] [something preferably held]" as giving it to (with nouns reversed).</span>
<span class="plain">Understand the commands "pay" and "offer" and "feed" as "give".</span>
<span class="plain">Understand "show [someone] [something preferably held]" as showing it to (with nouns reversed).</span>
<span class="plain">Understand "show [something preferably held] to [someone]" as showing it to.</span>
<span class="plain">Understand the commands "present" and "display" as "show".</span>
<span class="plain">Understand "go" as going.</span>
<span class="plain">Understand "go [direction]" as going.</span>
<span class="plain">Understand "go [something]" as entering.</span>
<span class="plain">Understand "go into/in/inside/through [something]" as entering.</span>
<span class="plain">Understand the commands "walk" and "run" as "go".</span>
<span class="plain">Understand "inventory" as taking inventory.</span>
<span class="plain">Understand the commands "i" and "inv" as "inventory".</span>
<span class="plain">Understand "look" as looking.</span>
<span class="plain">Understand "look at [something]" as examining.</span>
<span class="plain">Understand "look [something]" as examining.</span>
<span class="plain">Understand "look inside/in/into/through [something]" as searching.</span>
<span class="plain">Understand "look under [something]" as looking under.</span>
<span class="plain">Understand "look up [text] in [something]" as consulting it about (with nouns reversed).</span>
<span class="plain">Understand the command "l" as "look".</span>
<span class="plain">Understand "consult [something] on/about [text]" as consulting it about.</span>
<span class="plain">Understand "open [something]" as opening.</span>
<span class="plain">Understand "open [something] with [something preferably held]" as unlocking it with.</span>
<span class="plain">Understand the commands "unwrap", "uncover" as "open".</span>
<span class="plain">Understand "close [something]" as closing.</span>
<span class="plain">Understand "close up [something]" as closing.</span>
<span class="plain">Understand "close off [something]" as switching off.</span>
<span class="plain">Understand the commands "shut" and "cover" as "close".</span>
<span class="plain">Understand "enter" as entering.</span>
<span class="plain">Understand "enter [something]" as entering.</span>
<span class="plain">Understand the command "cross" as "enter".</span>
<span class="plain">Understand "sit on top of [something]" as entering.</span>
<span class="plain">Understand "sit on/in/inside [something]" as entering.</span>
<span class="plain">Understand "exit" as exiting.</span>
<span class="plain">Understand the commands "leave" and "out" as "exit".</span>
<span class="plain">Understand "examine [something]" as examining.</span>
<span class="plain">Understand the commands "x", "watch", "describe" and "check" as "examine".</span>
<span class="plain">Understand "read [something]" as examining.</span>
<span class="plain">Understand "read about [text] in [something]" as consulting it about (with nouns reversed).</span>
<span class="plain">Understand "read [text] in [something]" as consulting it about (with nouns reversed).</span>
<span class="plain">Understand "yes" as saying yes.</span>
<span class="plain">Understand the command "y" as "yes".</span>
<span class="plain">Understand "no" as saying no.</span>
<span class="plain">Understand "sorry" as saying sorry.</span>
<span class="plain">Understand "search [something]" as searching.</span>
<span class="plain">Understand "wave" as waving hands.</span>
<span class="plain">Understand "wave [something]" as waving.</span>
<span class="plain">Understand "set [something] to [text]" as setting it to.</span>
<span class="plain">Understand the command "adjust" as "set".</span>
<span class="plain">Understand "pull [something]" as pulling.</span>
<span class="plain">Understand the command "drag" as "pull".</span>
<span class="plain">Understand "push [something]" as pushing.</span>
<span class="plain">Understand "push [something] [direction]" or "push [something] to [direction]" as pushing it to.</span>
<span class="plain">Understand the commands "move", "shift", "clear" and "press" as "push".</span>
<span class="plain">Understand "turn [something]" as turning.</span>
<span class="plain">Understand "turn [something] on" or "turn on [something]" as switching on.</span>
<span class="plain">Understand "turn [something] off" or "turn off [something]" as switching off.</span>
<span class="plain">Understand the commands "rotate", "twist", "unscrew" and "screw" as "turn".</span>
<span class="plain">Understand "switch [something switched on]" as switching off.</span>
<span class="plain">Understand "switch [something]" or "switch on [something]" or "switch [something] on" as</span>
<span class="plain">switching on.</span>
<span class="plain">Understand "switch [something] off" or "switch off [something]" as switching off.</span>
<span class="plain">Understand "lock [something] with [something preferably held]" as locking it with.</span>
<span class="plain">Understand "unlock [something] with [something preferably held]" as unlocking it with.</span>
<span class="plain">Understand "attack [something]" as attacking.</span>
<span class="plain">Understand the commands "break", "smash", "hit", "fight", "torture", "wreck", "crack", "destroy",</span>
<span class="plain">"murder", "kill", "punch" and "thump" as "attack".</span>
<span class="plain">Understand "wait" as waiting.</span>
<span class="plain">Understand the command "z" as "wait".</span>
<span class="plain">Understand "answer [text] to [someone]" as answering it that (with nouns reversed).</span>
<span class="plain">Understand the commands "say", "shout" and "speak" as "answer".</span>
<span class="plain">Understand "tell [someone] about [text]" as telling it about.</span>
<span class="plain">Understand "ask [someone] about [text]" as asking it about.</span>
<span class="plain">Understand "ask [someone] for [something]" as asking it for.</span>
<span class="plain">Understand "eat [something preferably held]" as eating.</span>
<span class="plain">Understand "sleep" as sleeping.</span>
<span class="plain">Understand the command "nap" as "sleep".</span>
<span class="plain">Understand "climb [something]" or "climb up/over [something]" as climbing.</span>
<span class="plain">Understand the command "scale" as "climb".</span>
<span class="plain">Understand "buy [something]" as buying.</span>
<span class="plain">Understand the command "purchase" as "buy".</span>
<span class="plain">Understand "squeeze [something]" as squeezing.</span>
<span class="plain">Understand the command "squash" as "squeeze".</span>
<span class="plain">Understand "swing [something]" or "swing on [something]" as swinging.</span>
<span class="plain">Understand "wake" or "wake up" as waking up.</span>
<span class="plain">Understand "wake [someone]" or "wake [someone] up" or "wake up [someone]" as waking.</span>
<span class="plain">Understand the commands "awake" and "awaken" as "wake".</span>
<span class="plain">Understand "kiss [someone]" as kissing.</span>
<span class="plain">Understand the commands "embrace" and "hug" as "kiss".</span>
<span class="plain">Understand "think" as thinking.</span>
<span class="plain">Understand "smell" as smelling.</span>
<span class="plain">Understand "smell [something]" as smelling.</span>
<span class="plain">Understand the command "sniff" as "smell".</span>
<span class="plain">Understand "listen" as listening to.</span>
<span class="plain">Understand "hear [something]" as listening to.</span>
<span class="plain">Understand "listen to [something]" as listening to.</span>
<span class="plain">Understand "taste [something]" as tasting.</span>
<span class="plain">Understand "touch [something]" as touching.</span>
<span class="plain">Understand the command "feel" as "touch".</span>
<span class="plain">Understand "rub [something]" as rubbing.</span>
<span class="plain">Understand the commands "shine", "polish", "sweep", "clean", "dust", "wipe" and "scrub" as "rub".</span>
<span class="plain">Understand "tie [something] to [something]" as tying it to.</span>
<span class="plain">Understand the commands "attach" and "fasten" as "tie".</span>
<span class="plain">Understand "burn [something]" as burning.</span>
<span class="plain">Understand the command "light" as "burn".</span>
<span class="plain">Understand "drink [something]" as drinking.</span>
<span class="plain">Understand the commands "swallow" and "sip" as "drink".</span>
<span class="plain">Understand "cut [something]" as cutting.</span>
<span class="plain">Understand the commands "slice", "prune" and "chop" as "cut".</span>
<span class="plain">Understand "jump" as jumping.</span>
<span class="plain">Understand the commands "skip" and "hop" as "jump".</span>
<span class="plain">Understand "score" as requesting the score.</span>
<span class="plain">Understand "quit" or "q" as quitting the game.</span>
<span class="plain">Understand "save" as saving the game.</span>
<span class="plain">Understand "restart" as restarting the game.</span>
<span class="plain">Understand "restore" as restoring the game.</span>
<span class="plain">Understand "verify" as verifying the story file.</span>
<span class="plain">Understand "version" as requesting the story file version.</span>
<span class="plain">Understand "script" or "script on" or "transcript" or "transcript on" as switching the story</span>
<span class="plain">transcript on.</span>
<span class="plain">Understand "script off" or "transcript off" as switching the story transcript off.</span>
<span class="plain">Understand "superbrief" or "short" as preferring abbreviated room descriptions.</span>
<span class="plain">Understand "verbose" or "long" as preferring unabbreviated room descriptions.</span>
<span class="plain">Understand "brief" or "normal" as preferring sometimes abbreviated room descriptions.</span>
<span class="plain">Understand "nouns" or "pronouns" as requesting the pronoun meanings.</span>
<span class="plain">Understand "notify" or "notify on" as switching score notification on.</span>
<span class="plain">Understand "notify off" as switching score notification off.</span>
</pre>
<p class="inwebparagraph"></p>
<hr class="tocbar">
<ul class="toc"><li><a href="S-act.html">Back to 'Activities'</a></li><li><a href="S-pd.html">Continue with 'Phrase Definitions'</a></li></ul><hr class="tocbar">
<!--End of weave-->
</body>
</html>