ifmapper 0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. data/HISTORY.txt +2 -0
  2. data/IFMapper.gemspec +21 -0
  3. data/IFMapper.rb +27 -0
  4. data/icons/copy.png +0 -0
  5. data/icons/cut.png +0 -0
  6. data/icons/filenew.png +0 -0
  7. data/icons/fileopen.png +0 -0
  8. data/icons/filesave.png +0 -0
  9. data/icons/filesaveas.png +0 -0
  10. data/icons/help.png +0 -0
  11. data/icons/kill.png +0 -0
  12. data/icons/nextpage.png +0 -0
  13. data/icons/paste.png +0 -0
  14. data/icons/prevpage.png +0 -0
  15. data/icons/printicon.png +0 -0
  16. data/icons/redo.png +0 -0
  17. data/icons/saveas.png +0 -0
  18. data/icons/undo.png +0 -0
  19. data/icons/winapp.png +0 -0
  20. data/icons/zoom.png +0 -0
  21. data/lib/IFMapper/Connection.rb +63 -0
  22. data/lib/IFMapper/FXAboutDialogBox.rb +32 -0
  23. data/lib/IFMapper/FXConnection.rb +283 -0
  24. data/lib/IFMapper/FXConnectionDialogBox.rb +126 -0
  25. data/lib/IFMapper/FXMap.rb +1614 -0
  26. data/lib/IFMapper/FXMapDialogBox.rb +51 -0
  27. data/lib/IFMapper/FXMapFileDialog.rb +29 -0
  28. data/lib/IFMapper/FXMapperSettings.rb +45 -0
  29. data/lib/IFMapper/FXMapperWindow.rb +1051 -0
  30. data/lib/IFMapper/FXPage.rb +24 -0
  31. data/lib/IFMapper/FXPageDialogBox.rb +38 -0
  32. data/lib/IFMapper/FXRoom.rb +218 -0
  33. data/lib/IFMapper/FXRoomDialogBox.rb +119 -0
  34. data/lib/IFMapper/FXSearchDialogBox.rb +51 -0
  35. data/lib/IFMapper/FXSpline.rb +54 -0
  36. data/lib/IFMapper/FXWarningBox.rb +45 -0
  37. data/lib/IFMapper/IFMReader.rb +613 -0
  38. data/lib/IFMapper/Map.rb +110 -0
  39. data/lib/IFMapper/PDFMapExporter.rb +315 -0
  40. data/lib/IFMapper/Page.rb +158 -0
  41. data/lib/IFMapper/Room.rb +104 -0
  42. data/maps/Bureaucracy.ifm +75 -0
  43. data/maps/Hollywood_Hijinx.ifm +149 -0
  44. data/maps/Jigsaw.ifm +806 -0
  45. data/maps/LGOP.ifm +705 -0
  46. data/maps/Mercy.ifm +76 -0
  47. data/maps/Planetfall.ifm +186 -0
  48. data/maps/Plundered_Hearts.ifm +251 -0
  49. data/maps/Ralph.ifm +50 -0
  50. data/maps/Robots_of_Dawn.ifm +224 -0
  51. data/maps/Seastalker.ifm +149 -0
  52. data/maps/Sherlock.ifm +209 -0
  53. data/maps/SoFar.ifm +72 -0
  54. data/maps/Starcross.ifm +170 -0
  55. data/maps/Suspended.ifm +82 -0
  56. data/maps/Wishbringer.ifm +277 -0
  57. data/maps/Wishbringer2.ifm +246 -0
  58. data/maps/Zork1.ifm +410 -0
  59. data/maps/Zork2.ifm +150 -0
  60. data/maps/Zork3.ifm +136 -0
  61. data/maps/Zork_Zero.ifm +557 -0
  62. data/maps/anchor.ifm +645 -0
  63. data/maps/atrox.ifm +134 -0
  64. data/maps/awaken.ifm +116 -0
  65. data/maps/babel.ifm +279 -0
  66. data/maps/bse.ifm +150 -0
  67. data/maps/change.ifm +128 -0
  68. data/maps/curses.ifm +307 -0
  69. data/maps/curves.ifm +529 -0
  70. data/maps/edifice.ifm +158 -0
  71. data/maps/frozen.ifm +126 -0
  72. data/maps/glow.ifm +101 -0
  73. data/maps/library.ifm +93 -0
  74. data/maps/mindelec.ifm +89 -0
  75. data/maps/minster.ifm +234 -0
  76. data/maps/muse.ifm +154 -0
  77. data/maps/paperchase.ifm +110 -0
  78. data/maps/space_st.ifm +104 -0
  79. data/maps/stationfall.ifm +320 -0
  80. data/maps/theatre.ifm +182 -0
  81. data/maps/toonesia.ifm +54 -0
  82. data/maps/tortoise.ifm +72 -0
  83. data/maps/vgame.ifm +219 -0
  84. data/maps/weather.ifm +98 -0
  85. data/maps/windhall.ifm +154 -0
  86. data/maps/zebulon.ifm +68 -0
  87. metadata +144 -0
data/maps/Ralph.ifm ADDED
@@ -0,0 +1,50 @@
1
+ # IFM Map for "Ralph" by Miron Schmidt
2
+ # This file writen by Dave Chapeskie <dchapes@ddm.crosswinds.net>
3
+
4
+ # $Id: Ralph.ifm,v 1.4 2003/01/11 21:29:21 dchapes Exp $
5
+
6
+ title "Ralph";
7
+
8
+ ########################################################################
9
+
10
+ room "Hut" start;
11
+ item "teddy";
12
+ room "Lawn" tag NLawn dir e;
13
+ item "Christopher Robin";
14
+ task "bark" tag Bark2 after Bark1 note "scares cat to the north";
15
+ task "give ball to boy" need ball lose it get ball2
16
+ note "He throws it to the north";
17
+ task "" tag Carry_pipe need pipe note "need to carry pipe here";
18
+ room "Front of House" tag House dir e;
19
+ item "pipe" tag pipe hidden;
20
+ task "scratch at small door" tag Scratch_door get pipe;
21
+ task "scratch at small door" after last Carry_pipe Dig_garden
22
+ score 10 finish;
23
+
24
+ room "Lawn" tag SLawn dir s from NLawn link House;
25
+ item "cat";
26
+ task "bark" tag Bark1 note "scares cat to the north";
27
+ room "Ruined Shed" tag Shed dir e link NLawn link House;
28
+ item "glass-fibre" tag fibre;
29
+
30
+ room "Under a Tree" dir n from NLawn link House;
31
+ item "squash ball" tag ball;
32
+ task "block hollow with fibre" tag Block_hollow need fibre lose it
33
+ note "otherwise the cat will hide in the hollow";
34
+ task "bark" after Block_hollow Bark2 get ball
35
+ score 10
36
+ note "scares the cat up the tree unlodging the ball";
37
+ item "ball" tag ball2 hidden; #really the same ball
38
+ task "throw ball over fence" need ball2 lose it;
39
+ task "wait. again" tag O_fence follow last
40
+ note "until the boy opens the fence";
41
+ room "Herb Garden" dir w style special after O_fence score 10;
42
+ task "dig" tag Dig_garden;
43
+
44
+ ########################################################################
45
+ # Tweaks to help the solver.
46
+
47
+ task Bark1 after Block_hollow;
48
+ task Scratch_door after Dig_garden;
49
+
50
+ # EOF
@@ -0,0 +1,224 @@
1
+ # IFM Map for "Robots of Dawn" by ??
2
+ #
3
+ # This file writen by Dave Chapeskie <dchapes@ddm.crosswinds.net>
4
+ #
5
+ # $Id: Robots_of_Dawn.ifm,v 1.4 2003/01/11 21:29:21 dchapes Exp $
6
+ #
7
+
8
+ # Mark the starting location
9
+ room_border_width = 2 in style Start;
10
+
11
+ # Mark outside rooms
12
+ room_colour="yellow" in style Outside;
13
+
14
+ # This style is used for connecting rooms between different map sections
15
+ style Connection;
16
+ room_shadow_xoff = 0;
17
+ room_shadow_yoff = 0;
18
+ ps.room_border_dashed = 1;
19
+ tk.room_border_colour = "grey";
20
+ tk.room_colour = "grey90";
21
+ endstyle Connection;
22
+
23
+ room_colour = "grey" in style Dark;
24
+ room_colour = "blue" in style puzzle;
25
+
26
+
27
+ title "Robots of Dawn";
28
+
29
+ ########################################################################
30
+ # Starting items
31
+ item "blaster";
32
+
33
+ ########################################################################
34
+ map "Han Fastolfe's Estate";
35
+
36
+ room "Living Room" tag F_living_room style Start start;
37
+
38
+ room "Hallway" tag F_hall1 dir e;
39
+ room "Hallway" tag F_hall2 dir e;
40
+ room "Hallway" tag F_hall3 dir n 2;
41
+
42
+ room "Hallway" tag F_hall4 dir w from F_living_room;
43
+ room "Hallway" tag F_hall5 dir w 2;
44
+ room "Hallway" tag F_hall6 dir n;
45
+ item "contact strip";
46
+
47
+ room "Fastolfe's Workshop" dir n from F_hall6;
48
+ item "Daneel";
49
+ item "psychic probe";
50
+
51
+ room "Small Room" dir ne e from F_hall6;
52
+
53
+ room "Study" dir w from F_hall6;
54
+ item "safe";
55
+ item "blue bookfilm";
56
+ item "desk";
57
+ item "recording device";
58
+
59
+ room "Elevator" dir e from F_hall6;
60
+
61
+ room "Spare Room" dir n from F_hall1;
62
+ item "chair";
63
+ item "time band";
64
+
65
+ room "Visitor's Personal" dir s from F_hall5;
66
+ item "shaver";
67
+
68
+ room "Workroom" dir w from F_hall3;
69
+ item "hyperwave screen";
70
+
71
+ room "Guest Room" dir e from F_hall3;
72
+ room "Personal" dir s;
73
+ item "gloves";
74
+
75
+ room "Master Bedroom" dir n 3 from F_hall3;
76
+ item "notebook";
77
+ room "Personal" dir se s;
78
+ item "nose filter";
79
+
80
+ room "Kitchen" tag F_kitchen dir s from F_hall1;
81
+
82
+ room "Dining Room" dir se from F_hall4;
83
+ link last to F_kitchen;
84
+ item "spicer";
85
+ item "coffee";
86
+
87
+ room "Breakfast Room" dir s from F_hall2;
88
+ link last to F_kitchen;
89
+
90
+
91
+ room "Outside Fastolfe's" style Outside dir n 3 from F_living_room;
92
+ room "to Gladia's" style Connection dir e;
93
+
94
+ ########################################################################
95
+ map "Gladia Solaria's";
96
+
97
+ room "to Fastolfe's" style Connection;
98
+ room "Stream" style Outside dir e;
99
+ room "Outside" style Outside dir e;
100
+
101
+ room "Hallway" tag G_hall1 dir e s;
102
+ room "Hallway" tag G_hall2 dir e;
103
+ room "T-Intersection" tag G_T_hall dir e;
104
+ room "Hallway" tag G_hall4 dir s;
105
+ room "Hallway" tag G_hall5 dir n from G_T_hall;
106
+ room "Hallway" tag G_hall6 dir e ne go up;
107
+
108
+ room "Living Room" tag G_living_room dir w sw from G_hall1;
109
+ item "pastry";
110
+ room "Small Hallway" tag G_small_hall dir se s;
111
+
112
+ room "Personal" dir w from G_small_hall;
113
+ room "Dining Room" dir e from G_small_hall;
114
+ room "Kitchen" tag G_kitchen dir e;
115
+
116
+ room "Trimensic Viewer Room" dir s from G_hall2;
117
+ link last to G_kitchen;
118
+ link last to G_hall4;
119
+
120
+ room "Breakfast Room" dir s from G_hall4;
121
+ room "Guest Bedroom" dir e from G_hall4;
122
+
123
+ room "Personal" dir w from G_hall5;
124
+ room "Master Bedroom" dir n ne;
125
+ link last to G_hall5;
126
+ item "lightsphere";
127
+
128
+ room "Sun Room" dir n from G_hall6;
129
+ room "Jander's Room" dir s from G_hall6;
130
+ room "Work Room" dir w from G_hall6;
131
+ item "light-form";
132
+ item "bookfilm reader";
133
+
134
+ ########################################################################
135
+ map "Dr. Vasilia Aliena";
136
+
137
+ room "Outside" style Outside;
138
+
139
+ room "Workroom" tag V_workroom dir n;
140
+ item "Dr. Vasilia";
141
+
142
+ room "Hallway" tag V_hall1 dir nw w from V_workroom;
143
+ room "Hallway" tag V_hall2 dir s exit s w;
144
+
145
+ room "Dining Room" dir e from V_workroom;
146
+ room "Kitchen" dir n;
147
+
148
+ room "Personal" dir w from V_hall1;
149
+
150
+ room "Bedroom" dir w from V_hall2;
151
+
152
+ room "Study" dir s from V_hall2;
153
+ item "tingle field neutralizer";
154
+
155
+
156
+ ########################################################################
157
+ map "Robotics Institute";
158
+
159
+ room "Outside" style Outside;
160
+
161
+ room "Anteroom" dir n;
162
+ item "tingle field";
163
+
164
+ room "Hallway" tag R_hall1 dir n style special;
165
+ room "Hallway" tag R_hall2 dir w 2;
166
+ room "Hallway" tag R_hall3 dir n 3;
167
+ room "Hallway" tag R_hall4 dir n;
168
+ room "Hallway" tag R_hall5 dir e 2 from R_hall1;
169
+ room "Hallway" tag R_hall6 dir e 2;
170
+ room "Hallway" tag R_hall7 dir s;
171
+ room "Hallway" tag R_hall8 dir n from R_hall6;
172
+ room "Hallway" tag R_hall9 dir n from R_hall1;
173
+ room "Hallway" tag R_hall10 dir n;
174
+ room "Hallway" tag R_hall11 dir n 2 from R_hall4 go up exit e;
175
+ room "Hallway" tag R_hall12 dir w exit n s sw;
176
+
177
+ room "Cafeteria" dir w from R_hall2;
178
+ room "Personall" dir n;
179
+
180
+ room "Personal" dir n from R_hall5;
181
+ room "Personal" dir sw s from R_hall12;
182
+
183
+ room "Office" dir w from R_hall3;
184
+ room "Office" dir w from R_hall4;
185
+ room "Office" dir w from R_hall7;
186
+ room "Office" dir e from R_hall7;
187
+ room "Office" dir w from R_hall8;
188
+ room "Office" dir nw w from R_hall8;
189
+ room "Office" dir w from R_hall9;
190
+ room "Office" dir e from R_hall9;
191
+ room "Office" dir e from R_hall10;
192
+ room "Office" dir s from R_hall12;
193
+
194
+ room "Junction" tag Junction style Dark dir e from R_hall4;
195
+ item "contact strip";
196
+
197
+ room "Workroom" dir s from Junction;
198
+ item "plasma torch";
199
+
200
+ room "Ultrasonic Brain Dissolving Chamber"
201
+ dir e from Junction style special;
202
+ item "humaniform robot";
203
+ item "summary";
204
+
205
+ room "Waiting Room" dir n from R_hall12;
206
+ item "cable car";
207
+
208
+ room "Production Room" dir s from R_hall7;
209
+ room "Pathway Simulation Room" dir e from R_hall8;
210
+
211
+ room "Ramp" style puzzle dir n from R_hall10;
212
+
213
+ ########################################################################
214
+ map "Santrix Gremionis'";
215
+
216
+ room "Outside" style Outside;
217
+
218
+ room "Living Room" tag SG_living_room dir n exit n w;
219
+ item "Gremionis";
220
+ room "Hallway" dir w;
221
+
222
+ room "Dining Room" dir n from SG_living_room;
223
+
224
+ # EOF
@@ -0,0 +1,149 @@
1
+ # IFM Map for "Seastalker" by Infocom
2
+ # This file written by Dave Chapeskie <dchapes@ddm.crosswinds.net>
3
+ #
4
+ # $Id: Seastalker.ifm,v 1.5 2003/01/11 21:29:21 dchapes Exp $
5
+ #
6
+ # Note: the task list is NOT complete nor has this been updated to use
7
+ # the new IFM v2.0 features
8
+
9
+ title "Seastalker";
10
+
11
+ ########################################################################
12
+ # Starting Items
13
+ item "logbook";
14
+
15
+ ########################################################################
16
+ map "The Lab";
17
+
18
+ room "Lab Center" tag Lab start;
19
+ item "workbench";
20
+ item "diagram" hidden note "revealed by examining the workbench";
21
+ item "videophone";
22
+ item "microphone" tag mic note "scores 1";
23
+ task "turn on videophone" note "scores 1";
24
+ task "tune videophone" after last note "scores 1";
25
+ task "turn on microphone" after last need mic;
26
+ task "ask Bly about problem" after last need mic;
27
+ task "ask Bly about monster" after last need mic;
28
+ task "ask Bly about dome" after last need mic;
29
+ task "Bly, good-bye" tag Say_bye follow last need mic note "scores -3";
30
+ task "call Bly" after Fix_phone;
31
+
32
+ room "West Part" tag WLab dir w;
33
+ item "shelve";
34
+ item "mechanical supplies";
35
+
36
+ room "North Part" tag NLab dir n e link Lab;
37
+ item "computestor";
38
+ task "turn on computestor" tag ON_comp;
39
+ task "ask computestor about videophone" after last;
40
+ task "ask computestor about circuit breaker" tag AskComp_cb after last;
41
+ task "ask computestor about SCIMITAR" tag AskComp_scimitar
42
+ note "catalyst capsule";
43
+
44
+ room "East Part" tag ELab dir e s link Lab;
45
+ item "microwave security scanner";
46
+ item "intercom";
47
+ task "turn on scanner";
48
+ room "Corridor" tag Corridor dir e;
49
+ item "electrical panel";
50
+ task "close circuit breaker" tag Fix_phone after AskComp_cb score 3;
51
+ #task "open storage door" tag O_storage; #optional
52
+ room "Storage Closet" dir s;# after O_storage;
53
+ room "Kemp's Office" dir e from Corridor;
54
+ item "desk";
55
+ item "chair";
56
+ item "file drawer";
57
+ item "business papers";
58
+ item "magazine" tag magazine note "actually Tip is holding this" keep;
59
+ task "read magazine" need magazine in any;
60
+ task "read article" after last need magazine in any
61
+ note "Dr. Jerome Thorpe, ultrasonic pulses, Amino-Hydrophase";
62
+
63
+ room "South Part" tag SLab dir s w from ELab link Lab;
64
+ link SLab to WLab dir w;
65
+ item "shelves";
66
+ item "chemical and electronic supplies";
67
+
68
+ room "North Walkway" tag NWalkway dir s
69
+ after AskComp_scimitar; #not really
70
+ room "West Walkway" dir w s;
71
+ item "catalyst capsule" tag catalyst score 5;
72
+ room "South Walkway" dir s e;
73
+
74
+ room "SCIMITAR" tag Scimitar dir s from NWalkway go in score 1;
75
+ item "sonarscope";
76
+ item "hydrophone";
77
+ item "sonarphone";
78
+ item "temperature gauge" hidden;
79
+ task "put capsule in reactor" need catalyst lose it;
80
+ task "close reactor" after last;
81
+ task "turn reactor on" after last score 5;
82
+ task "close hatch" after last;
83
+ task "x control panel" after last;
84
+ task "fill tank" after last;
85
+ task "open gate" after last;
86
+ task "turn on engine" after last score 5;
87
+ task "east" follow last;
88
+ task "open throttle" follow last score 5;
89
+ task "pilot SCIMITAR out of the bay (NE)" follow last score 5;
90
+ task "turn on autopilot" follow last score 5 goto Scimitar2;
91
+
92
+ ########################################################################
93
+ map "Aquadome";
94
+
95
+ room "SCIMITAR" tag Scimitar2;
96
+ item "emergancy oxygen gear" tag gear hidden keep;
97
+ item "universal tool" tag tool hidden note "actually Tip has it" keep;
98
+ task "wear gear" tag Wear_gear need gear;
99
+ task "dock" score 5;
100
+ task "turn off engine" after last;
101
+ task "open hatch" tag O_hatch after last;
102
+
103
+ room "Docking Tank" dir n go out after O_hatch;
104
+ room "Docking Tank Entrance" dir n;
105
+ room "Reception Area" tag Reception dir n;
106
+ item "Bly";
107
+ item "Mick Antrim";
108
+ item "Doc Horvak";
109
+ item "Bill Greenup";
110
+ item "Amy Lowell";
111
+ item "Marv Siegel";
112
+ task "ask Bly about private matter" note "air trouble!";
113
+ task "turn on gear" tag On_gear after Wear_gear follow last;
114
+ task "ask Bly about private matter" tag Ask_private after Fix_air
115
+ goto Aquadome_Office;
116
+
117
+ room "Dome Center" tag Dome dir n from Reception;
118
+ task "open access door with tool" need tool follow On_gear score 5;
119
+ item "electrolyte relay" tag relay;
120
+ task "screw relay into space" tag Fix_air after last
121
+ need relay lose it score 5;
122
+
123
+ room "Southeast Deck" tag SEDeck dir e from Reception link Dome;
124
+ room "Storage Room" dir s;
125
+ room "Aquadome Office" tag Aquadome_Office dir e from SEDeck
126
+ style special after Ask_private;
127
+ item "window";
128
+ item "station monitor";
129
+ task "ask Bly about evidence" get box note "Bly presents black box";
130
+ item "black box" tag box hidden;
131
+
132
+ room "Northeast Deck" tag NEDeck dir n n from SEDeck link Dome;
133
+ room "Galley" dir e;
134
+ room "Comm Center" dir n from NEDeck;
135
+
136
+ room "Northwest Deck" tag NWDeck dir w w from NEDeck link Dome;
137
+ room "Workshop" dir w;
138
+ room "Aquadome Laboratory" dir n from NWDeck;
139
+
140
+ room "Southwest Deck" tag SWDeck dir w from Reception link NWDeck link Dome;
141
+ room "male dorm" dir s;
142
+ room "female dorm" dir w from SWDeck;
143
+
144
+
145
+ # The following rules are just to help the solver
146
+ task ON_comp after Say_bye;
147
+ link Scimitar need catalyst;
148
+
149
+ # EOF
data/maps/Sherlock.ifm ADDED
@@ -0,0 +1,209 @@
1
+ # IFM Map for "Sherlock" by Infocom.
2
+ # Based on Release 21 / Serial number 871214
3
+ # This file writen by Dave Chapeskie <dchapes@ddm.crosswinds.net>
4
+ #
5
+ # $Id: Sherlock.ifm,v 1.3 2003/01/11 21:29:21 dchapes Exp $
6
+
7
+ style Start;
8
+ tk.room_colour = "light blue";
9
+ endstyle Start;
10
+
11
+ style Dark;
12
+ tk.room_colour = "grey90";
13
+ endstyle Dark;
14
+
15
+ style Road;
16
+ link_line_width = 3;
17
+ endstyle Road;
18
+
19
+
20
+ title "Sherlock: The Riddle of the Crown Jewels";
21
+
22
+ ########################################################################
23
+ # Starting items
24
+
25
+ item "hat" tag hat;
26
+ item "coat" tag coat;
27
+ item "whistle" tag whistle;
28
+ item "pound note" tag pound_note;
29
+ item "black bag" tag black_bag;
30
+
31
+ #task "remove hat" tag Remove_hat need hat get stethoscope;
32
+ #item "stethoscope" tag stethoscope hidden;
33
+
34
+
35
+ ########################################################################
36
+ #map "";
37
+
38
+ room "221-B Baker Street" tag Baker_St style Start;
39
+ task "knock on door" tag Knock goto Entry_Hall;
40
+ task "light lamp" tag On_lamp need lamp;
41
+ room "Entry Hall" tag Entry_Hall dir w after Knock;
42
+ task "open door" tag O_door after Z_visitor;
43
+ room "Vestibule" dir w go up;
44
+ room "Holme's Study" dir n;
45
+ item "mail" tag mail;
46
+ item "knife" tag knife;
47
+ item "pistol" tag pistol;
48
+ item "slipper" tag slipper;
49
+ item "tobacco" tag tobacco hidden score 1;
50
+ item "pipe" tag pipe score 1;
51
+ item "violin" tag violin;
52
+ item "newspaper" tag newspaper score 1;
53
+ task "get all" give pipe slipper knife mail pistol violin newspaper;
54
+ task "read newspaper to Holmes" tag R_newspaper need newspaper score 5;
55
+ task "wait for Mrs. Hudson" tag Z_hudson
56
+ cmd "wait 2"
57
+ give clue_paper after last;
58
+ item "clue paper" tag clue_paper hidden;
59
+ task "read clue paper" need clue_paper;
60
+ task "wait for visitor to leave" tag Z_visitor after last
61
+ cmd "wait 2";
62
+ room "Holme's Bedroom" dir w style special after Z_visitor;
63
+ item "ampoule" tag ampoule
64
+ note "Etherium. Extremely volatile. "
65
+ note "Do not open in presence of fire.";
66
+ item "lamp" tag lamp score 3;
67
+ item "magnifying glass" tag mag_glass score 1;
68
+ task "get all" give ampoule lamp mag_glass;
69
+
70
+ room "Parlour" dir n from Entry_Hall style special after Z_visitor;
71
+ item "matchbook" tag matchbook score 1;
72
+
73
+
74
+ room "York Place" style Dark after On_lamp dir n from Baker_St style Road;
75
+
76
+ room "Marylebone Road" tag Marylebone_Rd dir e 2 style Road;
77
+ item "guard";
78
+ item "dog";
79
+ task "turn off lamp" tag Off_lamp after On_lamp;
80
+ task "attempt to enter" tag Try_N cmd "N" after last;
81
+ task "put tobacco in pipe" need tobacco pipe after Try_N;
82
+ task "open matchbook" need matchbook note "reveals match" get match
83
+ after Try_N;
84
+ item "match" tag match hidden;
85
+ task "strike match" need match;
86
+ task "light pipe with match" need match follow last;
87
+ task "drop match, lamp" tag Drop_match need match lamp drop match lamp;
88
+ task "call handsome cab" cmd "blow whistle. again" need emerald
89
+ score 5;
90
+ task "go to Whitehall" cmd "enter cab. Whitehall. exit" follow last
91
+ goto Whitehall;
92
+
93
+ room "Madame Tusaud's" dir n style special score 1 #leave lamp match;
94
+ after Drop_match;
95
+ item "sign" note "Chamber of Horrors";
96
+ item "ash";
97
+ task "ask Holmes about ash" note "Indian accomplice";
98
+ task "exit" cmd "S" need emerald torch lose torch goto Marylebone_Rd;
99
+ room "Chaber Of Horrors" style Dark need pipe dir w;
100
+ task "examine scenes" note "Guy Fawkes, Charles I, Saint Thomas Becket";
101
+ task "examine Guy Fawkes" after last get torch;
102
+ item "torch" tag torch hidden;
103
+ task "light newspaper with pipe" need pipe newspaper;
104
+ task "light torch with newspaper" tag Light_torch need torch newspaper
105
+ follow last lose newspaper score 4;
106
+ task "examine Charles" after last get head;
107
+ item "head" tag head hidden;
108
+ task "melt head with torch" need head torch after Light_torch
109
+ lose head get emerald;
110
+ item "emerald" tag emerald hidden score 5;
111
+
112
+
113
+ room "Tottenham Court Road" style Dark dir e 3 from Marylebone_Rd style Road;
114
+
115
+ room "St. Giles Circus" tag Circus style Dark dir s 2 style Road;
116
+
117
+ room "Great Russel Street" style Dark dir ne from Circus style Road
118
+ exit n
119
+ note "British Museum";
120
+ item "sign" note "Museum Hours: 8 am to 6 pm";
121
+
122
+ room "Oxford Street" dir w 3 from Circus style Road;
123
+ item "cabstand";
124
+ item "growler cab";
125
+
126
+ room "Orchard Street" style Dark after On_lamp dir w 2 style Road;
127
+ link last to Baker_St style Road;
128
+
129
+ room "Audley Street" style Dark dir s style Road;
130
+
131
+ room "Hyde Park Corner" tag Corner style Dark dir s style Road;
132
+
133
+ room "Kensington Gardens" style Dark dir nw from Corner style Road;
134
+
135
+ room "Grosvenor Place" style Dark dir se from Corner style Road;
136
+
137
+ room "Victoria Square" tag Square dir se style Road;
138
+ item "handsom cab";
139
+
140
+ room "Buckingham Palace Road" style Dark dir ne style Road;
141
+ room "Queens Gardens" style Dark dir ne style Road
142
+ note "Buckingham Palace";
143
+ item "guard";
144
+
145
+ room "Victoria Street" style Dark dir e from Square style Road;
146
+ item "sign" note "No Loitering. This means YOU!";
147
+
148
+ room "Broad Sanctuary" tag Broad_Sanctuary style Dark dir e style Road
149
+ note "Westminster Abbey";
150
+ item "sign" note "Visiting Hours: 7:00 am - 6:00 pm";
151
+
152
+ room "Nave" dir e style special;
153
+
154
+
155
+ room "Trafalgar Square" tag Trafalgar dir s from Circus style Road;
156
+ item "Nelson's Column";
157
+ room "Diogenes Club" dir w;
158
+
159
+ room "Whitehall" tag Whitehall style Dark dir s from Trafalgar style Road;
160
+ room "Scotland Yard" dir e;
161
+ task "light lamp" tag On_lamp2 need lamp;
162
+ room "The Black Museum" style Dark after On_lamp2 dir e go down;
163
+ item "rowboat";
164
+ item "sign";
165
+ task "look in boat" note "reveals oar" get oar;
166
+ item "oar" tag oar hidden score 1;
167
+
168
+ room "Parliament Square" tag Parliament_Sq style Dark
169
+ dir s from Whitehall style Road;
170
+ link last to Broad_Sanctuary style Road;
171
+ room "Houses of Parliament" dir se;
172
+ room "Clock Tower" tag Clock_Tower dir e go up;
173
+ item "sapphire" tag sapphire;
174
+ task "open bag" tag O_bag need black_bag;
175
+ item "blue bottle" tag blue_bottle hidden;
176
+ task "open blue bottle" need black_bag after O_bag get cotton;
177
+ item "cotton balls" tag cotton hidden;
178
+ task "put cotton balls in ears" need cotton;
179
+ task "wait until 7" follow last;
180
+ task "get sapphire" cmd "get sapphire. again. again"
181
+ score 5 give sapphire;
182
+ task "examine sapphire with magnifying glass" need sapphire mag_glass
183
+ note "2:00 am" score 1 give ring;
184
+ item "ring" tag ring hidden;
185
+
186
+ room "Birdcage Walk" dir w from Parliament_Sq style Road;
187
+ task "haggle" cmd "haggle with salesman. again";
188
+ task "buy telescope" follow last need pound_note lose it
189
+ give shilling telescope score 1;
190
+ item "telescope" tag telescope after last;
191
+ item "shilling" tag shilling hidden;
192
+
193
+ ########################################################################
194
+ # Modify some of the above to help IFM generate a workable walkthrough
195
+
196
+ task Z_hudson need tobacco;
197
+ task On_lamp need matchbook;
198
+ task Off_lamp follow On_lamp;
199
+ task On_lamp2 need emerald;
200
+ task O_bag in Clock_Tower;
201
+
202
+ item lamp keep;
203
+ item tobacco keep;
204
+ item clue_paper keep;
205
+ item matchbook keep;
206
+ item pipe keep;
207
+ item emerald keep;
208
+
209
+ # EOF