~ubuntu-branches/ubuntu/vivid/inform/vivid

« back to all changes in this revision

Viewing changes to html/answers2/answer87.html

  • Committer: Bazaar Package Importer
  • Author(s): Jan Christoph Nordholz
  • Date: 2008-05-26 22:09:44 UTC
  • mfrom: (2.1.1 lenny)
  • Revision ID: james.westby@ubuntu.com-20080526220944-ba7phz0d1k4vo7wx
Tags: 6.31.1+dfsg-1
* Remove a considerable number of files from the package
  due to unacceptable licensing terms.
* Repair library symlinks.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<HTML><HEAD><TITLE>Answer to Exercise 87</TITLE></HEAD>
2
 
<BODY BGCOLOR="#FFFFFF">
3
 
<TABLE><TR><TD Valign="top"><IMG SRC="../icons/exercise.gif" ALT="??"><TD bgcolor="#FAA89B"><B>ANSWER TO EXERCISE 87</B><TR><TD><TD>
4
 
<P>
5
 
 
6
 
 
7
 
Firstly, create an attribute <TT>is_key</TT> and give it to all the keys in
8
 
the game.  Then:
9
 
<PRE>
10
 
Global assumed_key;
11
 
[ DefaultLockSub;
12
 
  print "(with ", (the) assumed_key, ")^"; &#60;&#60;Lock noun assumed_key&#62;&#62;;
13
 
];
14
 
[ DefaultLockTest i count;
15
 
  if (noun hasnt lockable) rfalse;
16
 
  objectloop (i in player)
17
 
      if (i has is_key) { count++; assumed_key = i; }
18
 
  if (count==1) rtrue; rfalse;
19
 
];
20
 
Extend "lock" first * noun = DefaultLockTest -&#62; DefaultLock;
21
 
</PRE>
22
 
 
23
 
(and similar code for "unlock'').  Note that "lock strongbox''
24
 
is matched by this new grammar line only if the player only has one
25
 
key: the <TT>DefaultLock strongbox</TT> action is generated: which is
26
 
converted to, say, <TT>Lock strongbox brass_key</TT>.
27
 
</TABLE>
28
 
<HR>Back to <A HREF="../section29.html#ex87">the exercise in section 29</A><HR>
29
 
<SMALL><I>Mechanically translated to HTML from third edition as revised 16 May 1997. Copyright &#169; Graham Nelson 1993, 1994, 1995, 1996, 1997: all rights reserved.</I></SMALL></BODY></HTML>