ifmapper 0.5

Sign up to get free protection for your applications and to get access to all the features.
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/anchor.ifm ADDED
@@ -0,0 +1,645 @@
1
+ # IFM Map for "Anchorhead" by Michael S. Gentry
2
+ # Based on Release 5 / Serial number 990206
3
+ # (Note: earlier version of this game had different solutions
4
+ # to several of the puzzles!)
5
+ #
6
+ # This file writen by Dave Chapeskie <dchapes@ddm.crosswinds.net>
7
+ #
8
+ # $Id: anchor.ifm,v 1.5 2003/01/11 21:29:21 dchapes Exp $
9
+ #
10
+ # Note: Not finished. Days one and two (of four) are basicly done.
11
+
12
+ # Mark the starting location
13
+ room_border_width = 2 in style Start;
14
+
15
+ # This style is used for connecting rooms between different map sections
16
+ style Connection;
17
+ room_shadow_xoff = 0;
18
+ room_shadow_yoff = 0;
19
+ ps.room_border_dashed = 1;
20
+ tk.room_border_colour = "grey";
21
+ tk.room_colour = "grey90";
22
+ endstyle Connection;
23
+
24
+ title "Anchorhead";
25
+
26
+ ########################################################################
27
+ # Starting items
28
+ item "wedding ring" tag wedding_ring keep;
29
+ item "trenchcoat" tag trenchcoat;
30
+ item "clothes" tag clothes;
31
+ item "umbrella" tag umbrella keep;
32
+
33
+ ########################################################################
34
+ map "Anchorhead";
35
+
36
+ room "Outside the Real Estate Office" tag Outside_Office style Start start;
37
+ # task "close door" tag C_door # optional
38
+ # after UL_office_door LU_Verlac;
39
+
40
+ room "Alley" tag Alley dir se 2;
41
+ item "boxes";
42
+ item "garbage cans";
43
+ item "fence";
44
+ item "window";
45
+ task "push can under window";
46
+ task "stand on cans" after last;
47
+ task "open window" follow last;
48
+ task "close umbrella" follow last need umbrella;
49
+ task "enter window" tag Go_window follow last
50
+ goto File_Room;
51
+
52
+ room "Narrow Beach" tag Beach dir e;
53
+ item "sewage pipe";
54
+
55
+
56
+ room "File Room" tag File_Room dir n 2 from Alley
57
+ style special after Go_window;
58
+ item "filing cabinets";
59
+ task "look for Verlac in cabinets" tag LU_Verlac after Play_messages
60
+ give keyring house_key cellar_key;
61
+ item "keyring" tag keyring hidden score 2 keep;
62
+ item "key to house" tag house_key hidden keep;
63
+ item "key to cellar" tag cellar_key hidden keep;
64
+
65
+ room "Office" tag Office dir w;
66
+ link Office to Outside_Office style special after UL_office_door;
67
+ item "blinds";
68
+ item "papers";
69
+ item "telephone";
70
+ item "answering machine";
71
+ item "cup of coffee";
72
+ task "examine answering machine";
73
+ task "press play" tag Play_messages follow last
74
+ note "Verlac";
75
+ # task "press delete" after last; #optional;
76
+ task "unlock door" tag UL_office_door;
77
+
78
+
79
+ room "Narrow Street" tag Narrow_Street
80
+ dir w from Outside_Office;
81
+ room "Local Pub" tag Pub dir n;
82
+ item "table";
83
+ item "lantern" tag lantern;
84
+ task "look under table" get flask note "reveals a flask";
85
+ item "flask" tag flask hidden;
86
+
87
+
88
+ room "Twisting Lane" dir nw ne from Narrow_Street;
89
+ item "graffiti" hidden ;# after Sleep;
90
+ task "read graffiti" tag X_graffiti after Sleep;
91
+
92
+ room "Hidden Court" dir w 2 style special after X_graffiti;
93
+ item "sign";
94
+
95
+ room "The Cauldron" dir s;
96
+ item "display case";
97
+ item "violin";
98
+ item "propietor";
99
+ task "examine case" tag X_case
100
+ note "reveals tarot cards, a geode, and an amulet";
101
+ item "tarot cards" hidden;
102
+ item "geode" hidden;
103
+ item "amulet" tag amulet hidden score 5;
104
+ task "ask man about William Verlac";
105
+ task "ask man about Edward Verlac" note "trinket";
106
+ task "ask man about trinket" follow last;
107
+ task "ask man about amulet" after X_case give amulet;
108
+ task "show man puzzle box" need puzzle_box drop it
109
+ note "he opens it for you" score 2;
110
+ task "look in puzzle box" after last get black_disk
111
+ note "reveals black disk";
112
+ item "black disk" tag black_disk hidden;
113
+
114
+
115
+ room "Juntction" tag Junction dir w 3 from Narrow_Street
116
+ exit nw;
117
+
118
+ room "Mill Road" tag Mill_Road dir n 4;
119
+
120
+ room "Breakwater" dir e 2;
121
+
122
+ room "At the Foot of the Lighthouse" dir ne;
123
+ item "bronze door";
124
+
125
+ room "Rocky Spur" dir se ne exit e;
126
+ item "turbulent patch of water";
127
+
128
+
129
+ room "Entrance to the Paper Mill" tag Ent_Paper_Mill
130
+ dir w 3 from Mill_Road exit sw;
131
+ item "gate";
132
+
133
+ room "Shanty Town" dir n;
134
+ item "shacks";
135
+ # task "knock on door 11" after R_newspaper;
136
+
137
+
138
+ room "Bare Foundations" dir s sw from Ent_Paper_Mill;
139
+
140
+ room "Railroad Tracks" dir se;
141
+
142
+
143
+ room "University Court" dir nw from Junction;
144
+
145
+ room "Library" dir w leave book;
146
+ item "Michael";
147
+ item "book";
148
+ task "Michael, hello" note "or \"examine book\", or ..."
149
+ note "asks if you got the house keys";
150
+ task "yes" follow last;
151
+ task "show Michael the keys" tag Show_keys follow last need keyring
152
+ score 2;
153
+
154
+ room "Circulation Desk" dir n;
155
+ item "sign";
156
+ item "register";
157
+ item "bell";
158
+ task "look up michael in register"
159
+ note "\"A Historical Overview of Superstitions in the Misaton Valley Region\" by J. Arnsworth Frazer";
160
+ task "ring bell" follow last;
161
+ task "show librarian card" follow last need faculty_card;
162
+ task "ask librarian for Arnsworth Frazer" follow last give book;
163
+ item "Superstitions book" tag book hidden score 2;
164
+ task "read Superstitions book" need book get slip
165
+ note "a slip of paper falls out";
166
+ task "again" tag R_book follow last need book
167
+ note "Croseus Verlac, Eustacia Verlac, Wilhelm Verlac";
168
+ task "ring bell" after last;
169
+ task "give Superstitions book to librarian" follow last
170
+ need book lose it;
171
+ item "slip of paper" tag slip hidden;
172
+ task "read slip of paper" tag R_slip need slip;
173
+
174
+
175
+ room "Whateley Bridge" dir s 2 from Narrow_Street;
176
+
177
+ room "Town Square" tag Town_Square dir s 2 exit s;
178
+ item "stone obelisk";
179
+ item "iron ring" hidden;
180
+ item "hieroglyphs" hidden;
181
+ item "newspaper" tag newspaper hidden after Sleep;
182
+ task "read newspaper" tag R_newspaper need newspaper in any
183
+ note "Jeffery Greer, 8yr old from #11 Mill Town road"
184
+ note "Edward Verlac";
185
+
186
+ room "Dark Corner" dir w 2;
187
+
188
+ room "Asylum Courtyard" dir s;
189
+
190
+ room "Waiting Room" dir s exit s style special after Sleep;
191
+ item "sofa";
192
+ item "palm";
193
+ item "metal gate";
194
+ item "orderly";
195
+ item "cell key" tag cell_key keep;
196
+ task "ask orderly about Edward";
197
+
198
+
199
+ room "Side Alley" dir sw from Town_Square;
200
+
201
+
202
+ room "Courthouse" dir s from Town_Square
203
+ style special after Sleep exit w e;
204
+
205
+ room "Courthouse Basement" tag CH_Basement dir s go down exit sw;
206
+
207
+ room "Birth Records" dir se;
208
+ task "look up Eustacia Verlac in records" after R_book
209
+ note "born Nov 22, 1634";
210
+ task "look up Wilhelm Verlac in records" after R_book
211
+ note "born March 11, 1651";
212
+
213
+ room "Death Records" dir sw from CH_Basement;
214
+ task "look up Croseus Verlac in records" after R_book
215
+ note "died March 11, 1651";
216
+ task "look up Eustacia Verlac in records" after R_book
217
+ note "died April 8, 1686";
218
+ task "look up Wilhelm Verlac in records" after R_book
219
+ note "died October 18, 1734";
220
+
221
+
222
+ room "Riverwalk" tag Riverwalk dir e 2 from Town_Square;
223
+ item "iron gate";
224
+
225
+ room "Under the Bridge" dir n nw exit s;
226
+ item "metal door";
227
+ task "unlock door with copper key" tag UL_bridge_door
228
+ need keyring copper_key;
229
+ join last to Access_Shaft after UL_bridge_door go s;
230
+
231
+ room "to sewers" style Connection dir s nopath
232
+ style special after UL_bridge_door;
233
+
234
+ room "Vacant Lot" tag Vacant_Lot dir e from Riverwalk;
235
+ item "mattress";
236
+ item "man" hidden ;# after Sleep;
237
+ task "give flask to man" after Sleep need flask drop it score 2
238
+ note "he takes it and drinks from it";
239
+ task "ask man about Verlac" follow last;
240
+ task "show man the boy's picture" follow last need silver_locket;
241
+ task "show man the woman's picture" follow last need gold_locket
242
+ note "Anna";
243
+ task "ask man about Anna" follow last;
244
+ task "ask man about Edward" follow last;
245
+ task "ask man about William" follow last;
246
+ task "ask man about coffin" follow last;
247
+ task "show skull to man" follow last need skull;
248
+ task "give amulet to man" tag G_amulet follow last
249
+ need amulet lose it
250
+ give copper_key score 5;
251
+ item "copper key" tag copper_key hidden keep;
252
+ task "put copper key on keyring" need keyring copper_key;
253
+
254
+ room "Wharf" dir se;
255
+ item "boats";
256
+ item "tin of fish oil";
257
+
258
+
259
+ room "Chilly Avenue" tag Chilly_Ave dir s 3 from Riverwalk;
260
+
261
+ room "Deserted Lane" tag Deserted_Lane dir s 2;
262
+
263
+ room "Down the Road" dir s exit s;
264
+
265
+
266
+ room "Churchyard" dir e from Deserted_Lane;
267
+
268
+ room "Behind the Church" dir se ne;
269
+ item "trap door";
270
+ item "padlock" hidden;
271
+
272
+ room "Scenic View" dir sw w sw w sw from Chilly_Ave
273
+ style special after Show_keys;
274
+ room "Outside the House" tag Outside_House dir nw;
275
+ item "typewritten notice";
276
+
277
+ # Note: The House is just to make the map look nice.
278
+ room "House" tag J_house style Connection
279
+ dir n style special nopath;
280
+ join Outside_House to Foyer go n need keyring house_key length 4
281
+ cmd to "unlock door with house key. N. close door. lock it with house key"
282
+ cmd from "unlock door with house key. S. close door. lock it with house key";
283
+ join Kitchen to Behind_House go n need keyring house_key length 4
284
+ cmd to "unlock door with house key. N"
285
+ cmd from "S. close door. lock it with house key";
286
+
287
+ room "Path Behind the House" tag Behind_House dir n style special;
288
+
289
+ room "Family Plot" dir nw;
290
+ item "tombstones";
291
+ item "marble crypt";
292
+ task "unlock door with iron key" tag UL_crypt need keyring iron_key;
293
+
294
+ room "In the Crypt" need lantern dir n go in
295
+ style special after UL_crypt;
296
+ item "coffins in niches";
297
+ task "examine niches" tag X_niches
298
+ note "there are nameplates above the niches";
299
+ task "look up Edward" after X_niches R_pages
300
+ note "Edward Verlac, b. April 26, 1960, d. March 14, 1997";
301
+ task "look up William" after X_niches R_pages
302
+ note "William Verlac, b. June 22, 1954, d. Sept 18, 1958";
303
+ task "open William's Coffin" follow last get animal_skeleton
304
+ note "reveals an animal's skeleton and skull";
305
+ item "animal's skeleton" tag animal_skeleton hidden;
306
+ item "skull" tag skull hidden need animal_skeleton;
307
+
308
+
309
+ ########################################################################
310
+ map "Verlac Mansion: Groud Floor";
311
+
312
+ room "to outside" style Connection;
313
+
314
+ room "Foyer" tag Foyer dir n nopath;
315
+ item "luggage";
316
+
317
+ room "Back Hall" tag Back_Hall dir n exit w;
318
+
319
+ room "Gallery" dir e link Sitting_Room;
320
+ item "paintings";
321
+ task "examine paintings";
322
+ task "examine scene" follow last;
323
+
324
+
325
+ room "Sitting Room" tag Sitting_Room dir e from Foyer;
326
+ item "sofa";
327
+ item "rug";
328
+ item "fireplace";
329
+ item "portrait";
330
+ item "family album" tag family_album;
331
+
332
+ room "Dining Room" tag Dining_Room dir w from Foyer;
333
+ item "table";
334
+ item "china cupboard";
335
+ task "open cupboard" note "velvet lining";
336
+ task "examine lining" after last note "corner";
337
+ task "pull it" follow last give journal
338
+ note "reveals a journal" score 2;
339
+ item "journal" tag journal hidden;
340
+ task "read journal" tag R_journal need journal
341
+ note "safe combination (changes every time)";
342
+
343
+ room "Kitchen" tag Kitchen dir n link Back_Hall;
344
+ item "cabinets";
345
+ item "flashlight" tag flashlight;
346
+ task "open cabinets" get matches
347
+ note "reveals a book of matches";
348
+ item "matches" tag matches hidden;
349
+
350
+ room "Pantry" tag Pantry need flashlight dir nw
351
+ cmd to "NW. turn on flashlight"
352
+ cmd from "SE. turn off flashlight"
353
+ length 2;
354
+ item "broom" tag broom;
355
+ task "unlock door with cellar key" tag UL_cellar after last
356
+ need keyring cellar_key;
357
+
358
+ room "Cellar" tag Cellar dir s w s go down
359
+ style special after UL_cellar;
360
+ item "fuse cabinet";
361
+ task "open fuse cabinet";
362
+ task "examine it" follow last;
363
+ task "examine fuse plugs" follow last;
364
+
365
+ room "Wine Cellar" dir e;
366
+ item "wine bottles";
367
+
368
+ room "Storage" dir s from Cellar;
369
+ item "crates";
370
+ task "search boxes" note "newspaper clippings"
371
+ note "reveals spider web";
372
+ item "newspaper clippings" hidden;
373
+ task "examine spider web" after last;
374
+ task "sweep spider web with broom" need broom get iron_key;
375
+ task "put iron key on keyring" after last need keyring give iron_key;
376
+ item "iron key" tag iron_key hidden score 1 keep;
377
+
378
+ # To make the map look nice
379
+ room "to back of house" style Connection dir n from Kitchen
380
+ nopath style special;
381
+
382
+ ########################################################################
383
+ map "Verlac Mansion: Upstairs";
384
+
385
+ room "Upstairs Landing" tag Landing;
386
+ join Foyer to Landing go up;
387
+
388
+ room "Master Bedroom" tag Bedroom dir n;
389
+ item "dressing mirror";
390
+ item "radiator";
391
+ item "bed";
392
+ task "get in bed" tag In_bed
393
+ drop all except wedding_ring;
394
+ task "sleep" tag Sleep follow last; #after Lock_house_door;
395
+ item "Michael's pants" tag pants hidden ;# after Sleep;
396
+ task "stand" follow last;
397
+ task "search pants" follow last get wallet
398
+ note "reveals Michael's wallet";
399
+ item "wallet" tag wallet hidden;
400
+ task "open wallet" need wallet get faculty_card
401
+ note "reveals Michael's faculty card";
402
+ item "faculty card" tag faculty_card hidden;
403
+ task "Get faculty card" after last need wallet lose it pants
404
+ give faculty_card;
405
+ task "get dressed" after last give clothes;
406
+ task "get umbrella and keyring" after last give umbrella keyring
407
+ house_key cellar_key;
408
+ task "wear trenchcoat" tag W_trenchcoat after last
409
+ give trenchcoat ;
410
+ task "get in bed" tag In_bed2 after G_amulet
411
+ drop all except wedding_ring
412
+ silver_locket gold_locket;
413
+ task "sleep" tag Sleep2 follow last;
414
+ task "stand" follow last;
415
+ task "get dressed" follow last give clothes;
416
+ task "wear trenchcoat" tag W_trenchcoat2 follow last
417
+ give trenchcoat safe;
418
+
419
+ room "Bathroom" tag Bathroom dir w;
420
+ item "bathtub";
421
+ item "bath towel" hidden ;# after Sleep;
422
+ # task "take bath" tag Bath after K_grate
423
+ # drop all except wedding_ring
424
+ # silver_locket gold_locket;
425
+ # task "get dressed" follow last give clothes;
426
+ # task "wear trenchcoat" tag W_trenchcoat3 follow last
427
+ # give trenchcoat safe;
428
+
429
+
430
+ room "Upstairs Hall" tag Hall dir e from Landing;
431
+ item "window";
432
+ item "cord";
433
+ task "pull cord" tag P_cord;
434
+
435
+ room "Children's Bedroom" dir s;
436
+ item "bed";
437
+ item "vanity table";
438
+ item "ancient crib";
439
+ item "jewelry box";
440
+ task "open box" get silver_locket
441
+ note "reveals a silver locket";
442
+ item "silver locket" tag silver_locket hidden keep;
443
+ task "wear locket" need silver_locket;
444
+ task "open locket" follow last
445
+ note "reveals a boy's picture";
446
+ task "examine boy's picture" follow last;
447
+ task "look under bed" note "odd scratches";
448
+ task "move bed" follow last
449
+ note "reveals a ragged hole";
450
+ task "search hole" follow last get soggy_pages
451
+ note "reveals a bundle of soggy pages";
452
+ item "soggy pages" tag soggy_pages hidden score 2;
453
+ task "examine pages" follow last ;# need soggy_pages;
454
+ task "read pages" tag R_pages follow last
455
+ give soggy_pages
456
+ note "mentions the locket";
457
+
458
+ room "Library" dir n n from Hall;
459
+ item "books";
460
+ item "leather armchair";
461
+ item "window";
462
+ item "brass pipe stand";
463
+ item "mahogany doors";
464
+ item "sizable volume";
465
+ task "examine volume";
466
+ task "read manual" tag R_manual after last
467
+ note "section on opening doors";
468
+ task "examine books" note "reveals Edgar Allen Poe's book";
469
+ item "Edgar Allen Poe book" tag poe_book hidden;
470
+ task "Get Poe" after last
471
+ note "reveals safe" score 1;
472
+ item "safe" hidden;
473
+ task "open safe" after last R_journal score 2
474
+ note "using combination from journal"
475
+ cmd "turn dial to XX"
476
+ cmd "turn dial to XX"
477
+ cmd "turn dial to XX";
478
+ task "look in safe" after last get puzzle_box flute
479
+ note "reveals a puzzle box and a metal flute";
480
+ task "hide safe" tag C_safe after last #optional
481
+ cmd "close safe"
482
+ cmd "Get Poe";
483
+ item "puzzle box" tag puzzle_box hidden before C_safe;
484
+ item "metal flute" tag flute hidden before C_safe;
485
+
486
+ room "Study" tag Study dir e 2
487
+ style special need newspaper;
488
+ item "desk";
489
+ item "chair";
490
+ item "fireplace";
491
+ item "laptop";
492
+ item "letter opener" tag letter_opener;
493
+ task "read laptop";
494
+ task "remove ring" follow last need wedding_ring
495
+ note "inscription";
496
+ task "examine it" follow last need wedding_ring
497
+ note "Wedding date is June 28th";
498
+ task "wear it" follow last need wedding_ring;
499
+ task "type 0628" follow last score 2;
500
+ task "read laptop" tag R_laptop follow last;
501
+ task "open drawer" get Cryptical_Haermoniacon
502
+ note "reveals \"The Cryptical Haermoniacon\"";
503
+ item "Cryptical Haermoniacon" tag Cryptical_Haermoniacon hidden;
504
+ task "examine Cryptical Haermoniacon" need Cryptical_Haermoniacon;
505
+ task "read it" follow last need Cryptical_Haermoniacon;
506
+ task "examine fireplace" note "brass spheres";
507
+ task "examine spheres" follow last note "smudges";
508
+ task "turn sphere" tag Turn_sphere follow last;
509
+
510
+ room "to narrow corridors" style Connection dir sw
511
+ style special nopath;
512
+ link last to Crawlspace style special nopath oneway;
513
+
514
+
515
+ room "Attic" tag Attic dir e se e n from Hall go up
516
+ style special after P_cord;
517
+ item "door";
518
+ task "put newspaper under door" need newspaper ;#drop it until P_opener;
519
+ task "put letter opener in keyhole" tag P_opener need letter_opener
520
+ follow last note "knocks out brass key";
521
+ task "Get newspaper" follow last #give newspaper
522
+ get brass_key;
523
+ task "put brass key on keyring" after last need keyring give brass_key;
524
+ item "brass key" tag brass_key hidden score 1 keep;
525
+ task "unlock door with brass key" tag UL_attic_door
526
+ need keyring brass_key;
527
+
528
+ room "Crawlspace" tag Crawlspace need lantern dir w;
529
+
530
+
531
+ room "Attic Cell" dir n from Attic
532
+ style special after UL_attic_door;
533
+ item "straw";
534
+ item "pencil marks";
535
+ task "search straw" get gold_locket
536
+ note "reveals a gold locket";
537
+ item "gold locket" tag gold_locket hidden keep;
538
+ task "open gold locket" need gold_locket
539
+ note "reveals a woman's picture";
540
+ task "examine woman's picture" after last;
541
+ task "wear gold locket" need gold_locket;
542
+
543
+
544
+ ########################################################################
545
+ map "Narrow Corridors";
546
+
547
+ room "to Study" style Connection;
548
+
549
+ room "Narrow Corridors-1" tag NCor1 dir se nopath;
550
+ join Study to NCor1 need lantern after Turn_sphere
551
+ cmd to "SW" cmd from "NW";
552
+ link NCor1 to NCor3 dir w s 2 se;
553
+ link NCor1 to NCor4 dir sw se 2 e 2;
554
+
555
+ room "Narrow Corridors-2" tag NCor2 dir ne se;
556
+ item "hole";
557
+ # task "look through hole" note "into darkness";
558
+ link NCor2 to NCor3 dir s;
559
+ link NCor2 to NCor4 dir se w;
560
+ link NCor2 to NCor5 dir sw se s;
561
+
562
+ room "Narrow Corridors-3" tag NCor3 dir s sw;
563
+ item "hole (into children's bedroom)";
564
+ # task "look through hole" note "into children's bedroom";
565
+ link NCor3 to NCor5 dir nw s 3;
566
+
567
+ room "Narrow Corridors-4" tag NCor4 dir e ne s;
568
+ item "hole (into sitting room)";
569
+ # task "look through hole" note "into sitting room";
570
+
571
+ room "Narrow Corridors-5" tag NCor5 dir se sw w w;
572
+
573
+ room "Observatory" tag Observatory dir se oneway;
574
+ join Observatory to Crawlspace go se oneway;
575
+ item "charts";
576
+ item "telescope";
577
+ task "examine charts" note "comet tomorrow";
578
+ task "put black disk in telescope" tag P_disk need black_disk drop it;
579
+
580
+ room "to crawlspace" style Connection dir se oneway nopath;
581
+
582
+
583
+ ########################################################################
584
+ map "Sewers";
585
+
586
+ room "exit" style Connection;
587
+
588
+ room "Access Shaft" tag Access_Shaft dir s nopath;
589
+
590
+ room "Sewer Tunnel" tag Sewer_Tunnel dir e go down exit se;
591
+
592
+ room "Dripping Tunnel" dir n;
593
+
594
+ room "Bottom of Shaft" dir n;
595
+
596
+ room "Outflow Tunnel" dir n go up;
597
+
598
+ room "End of the Pipe" dir e;
599
+ item "metal grate";
600
+ task "examine grate";
601
+ task "kick it" tag K_grate follow last;
602
+ join last to Beach after last
603
+ cmd to "E"
604
+ cmd from "enter sewage pipe";
605
+
606
+ room "to beach" style Connection dir e
607
+ style special nopath;
608
+
609
+ room "Vaulted Tunnel" dir se from Sewer_Tunnel;
610
+ item "depression";
611
+
612
+ ########################################################################
613
+ # Modify some of the above to help IFM generate a workable walkthrough
614
+
615
+ # Prefer other routes over climbing through the window.
616
+ link File_Room length 2;
617
+
618
+ # Don't bother with the pub until day two
619
+ link Pub after Sleep;
620
+
621
+ # Don't bother exploring the house until day two
622
+ link Back_Hall after Sleep;
623
+ link Sitting_Room after Sleep;
624
+ link Dining_Room after Sleep;
625
+ link Hall after Sleep;
626
+
627
+ # Make *sure* we don't leave the bedroom undressed
628
+ link Bedroom before In_bed;
629
+ link Landing to Bedroom after W_trenchcoat before In_bed2;
630
+ link Bedroom to Landing after W_trenchcoat2 ;#before Bath;
631
+ #link Bedroom to Landing after W_trenchcoat3;
632
+ # XXX
633
+ task "" after W_trenchcoat2 in Bathroom;
634
+
635
+ # Don't bother going to the attic directly, taking the secret passage first
636
+ # gets us there too.
637
+ link Attic after P_disk;
638
+
639
+ # Delay talking to the man in the vacant lot
640
+ link Vacant_Lot after P_disk;
641
+
642
+ # Leave the sewers until day three
643
+ task UL_bridge_door after Sleep2;
644
+
645
+ # EOF