!------------------------------------------------------------------------------ ! ! ! D E A D L I N E ! ! ! Inform Port ! ! ! This material contains elements based on the game Deadline. ! It is used with permission as instructive material. ! Original Deadline material is (c) 1982, 1999 Activision, Inc. ! Deadline and Activision are registered trademarks of Activision, Inc. ! All rights reserved. ! ! Inform Port written by Volker Lanz. Please do not distribute modified ! versions of these files. ! You can contact me via e-mail: volker.lanz@gmx.net ! ! OUTSIDE.INF ! =========== ! The garden and shed ! ! !------------------------------------------------------------------------------ !------------------------------------------------------------------------------ Outside South_Lawn "South Lawn" with description "You are on a wide lawn just north of the entrance to the Robner estate. Directly north at the end of a pebbled path is the Robner house, flanked to the northeast and northwest by a vast expanse of well-kept lawn. Beyond the house can be seen the lakefront.", npc_subway green_line, s_to "Leaving the estate would mean quitting the case and, most probably, your job.", n_to Front_Path, nw_to West_Lawn, ne_to East_Lawn; !------------------------------------------------------------------------------ Object Lawn "lawn" with name "lawn", description "The lawn is well manicured.", found_in South_Lawn East_Lawn West_Lawn North_Lawn, has static concealed topic; !------------------------------------------------------------------------------ Outside Front_Path "Front Path" with description [; "You are at the Robners' front door, which is ", (DoorStatus) Front_Door, ". You can walk around the house from here to the east or west. To the south a rolling lawn leads to the entrance of the estate."; ], before [; Go: if (noun == n_obj && Ladder in player) "You've got to be crazy, carrying that ladder inside the house!"; ], npc_subway green_line blue_line, s_to South_Lawn, w_to West_Of_Front_Door, e_to East_Of_Front_Door, n_to Front_Door; !------------------------------------------------------------------------------ Door_Class -> Front_Door "front door" with name "door" "front", door_to [; if (self in Front_Path) return Foyer; return Front_Path; ], door_dir [; if (self in Front_Path) return n_to; return s_to; ], before [; Knock: if (Foyer hasnt visited && the_time < 11*60+30) { print "You hear footsteps inside the house. Mrs. Robner, dressed in black, opens the door and greets you.^"; HelloMrsRobner(); rtrue; } ], found_in Front_Path Foyer; !------------------------------------------------------------------------------ Object House "house" with name "house", description "The house is a magnificent New England colonial, like many other houses around the lake. It is painted slate gray with white trim.", before [; Find: "It's right here. Some inspector you are."; Enter: if (location == Front_Path && Front_Door has open) << Go n_to >>; "You might try the front door."; ], found_in Front_Path East_Of_Front_Door West_Of_Front_Door East_Side_Of_House West_Side_Of_House Among_The_Roses Garden_Path Orchard_Path In_The_Orchard North_Lawn West_Lawn East_Lawn South_Lawn, has static concealed; !------------------------------------------------------------------------------ Outside West_Of_Front_Door "West of Front Door" with description "You are in front of the Robner house just west of the front door. To the north is a large bay window through which can be seen part of the living room. To the northwest is the west side of the house.", npc_subway blue_line, e_to Front_Path, s_to South_Lawn, w_to West_Lawn, nw_to West_Side_Of_House, n_to Bay_Window; !------------------------------------------------------------------------------ Outside East_Of_Front_Door "East of Front Door" with description "You are in front of the Robner house just east of the front door. A small window, closed and securely locked, is the only thing of note here. To the northeast is the east side of the house.", npc_subway blue_line, n_to "The window is closed and locked.", w_to Front_Path, s_to South_Lawn, e_to East_Lawn, ne_to East_Side_Of_House; !------------------------------------------------------------------------------ Object -> Cornerstone "Cornerstone" with name "cornerstone", initial "The ornately carved cornerstone of the house is nearby.", description [; print " ^"; print " DEADLINE: An INTERLOGIC Mystery ^"; print " By Infocom, Inc. ^"; print " Marc Blank, Chief Architect ^"; print " Copyright 1982 by Infocom, Inc. ^"; print " All rights reserved. ^"; print "DEADLINE and INTERLOGIC are trademarks^"; print " of Infocom, Inc. ^"; rtrue; ], before [; Read: << Examine self >>; ], has legible static; !------------------------------------------------------------------------------ Outside West_Lawn "West Lawn" with description "This is a sprawling lawn west of the Robner house. To the west and north is the lake shore. To the northeast is a rose garden, and to the south another wide lawn.", npc_subway orange_line, w_to CantGoLake, n_to CantGoLake, s_to South_Lawn, e_to West_Side_Of_House, ne_to Garden_Path; !------------------------------------------------------------------------------ Outside East_Lawn "East Lawn" with description "You are on a neatly manicured lawn, east of the house, which extends north and east to the shore of a lake. To the northwest is a peaceful orchard, and toward the south another wide lawn. Southeast, beside the lake, is a small shed with a solitary dirty window.", before [; Go: if (noun == Shed_D) << HIDEON Shed_D >>; rfalse; HideOn: if(noun == Shed_D) { print "You carefully sneak behind the shed. It seems that no one saw you.^^"; PlayerTo(Behind_The_Shed); rtrue; } ], npc_subway blue_line grey_line, s_to South_Lawn, w_to East_Side_Of_House, se_to Shed, e_to CantGoLake, n_to CantGoLake, ne_to CantGoLake, nw_to Orchard_Path, sw_to East_Of_Front_Door; !------------------------------------------------------------------------------ Object -> Shed_D "shed" with name "shed", before [; Enter: PlayerTo(Shed); if (Mr_Baxter in Shed && Ms_Dunbar in Shed) DisturbBaxDun(); rtrue; Search: if (location == East_Lawn) "Maybe you might want to look through the window?"; ], found_in East_Lawn Behind_The_Shed, has scenery; !------------------------------------------------------------------------------ Outside Shed "Shed" with description "This small garden shed is filled with implements of gardening and lawn care. Shelves filled with various tools line the walls and a filthy window looks out on the lawn.", before [; Exit, VagueGo: PlayerTo (East_Lawn); rtrue; ], npc_subway grey_line, n_to East_Lawn, nw_to East_Lawn, has scenery; !------------------------------------------------------------------------------ Object -> Ladder "wooden ladder" with name "wooden" "ladder", size 7, weight 7, description [; if (location == Library_Balcony or Bedroom_Balcony) "The top of the ladder is visible, but the rest is hard too see."; "The ladder is a typical gardening ladder, about fifteen feet long and caked with dirt and dried mud."; ], describe [; if (location == Shed) "Leaning in a corner is a wooden ladder."; if ((location == Among_The_Roses && Among_The_Roses.u_to ~= 0) || (location == In_The_Orchard && In_The_Orchard.u_to ~= 0) || (location == Bedroom_Balcony or Library_Balcony)) rtrue; rfalse; ], before [; if (location == Bedroom_Balcony or Library_Balcony) { switch(action) { ##Examine: return(self.description()); ##Take: "It's too difficult from here."; ##ClimbDown: << Go d_obj >>; default: "You can't do that from here."; } } Analyse: if(DuffyTimer.time_left >= 0) print_ret (string) DuffyBusy; if (the_time >= 12*60) "Sergeant Duffy arrives and shakes his head sadly. ~I'm sorry, sir, but the Ladder Analysis Department closes at noon.~ He leaves."; StartAnalysis(self); rtrue; Climb: if (location.u_to ~= 0) << GO u_obj >>; "Climbing a ladder while it is horizontal is, at best, a contradiction in terms."; ClimbDown: "Climbing a ladder while it is horizontal is, at best, a contradiction in terms."; Lean: if (second == Roses_Balcony or House && location == Among_The_Roses) { Among_The_Roses.u_to = Library_Balcony; Library_Balcony.d_to = Among_The_Roses; move self to location; "The ladder is now leaning against the railing of a balcony above."; } if(second == Orchard_Balcony or House && location == In_The_Orchard) { In_The_Orchard.u_to = Bedroom_Balcony; Bedroom_Balcony.d_to = In_The_Orchard; move self to location; "The ladder, firmly planted in the soil of the orchard, is now leaning against the balcony above."; } Take: if (location == Among_The_Roses && Among_The_Roses.u_to ~= 0) { Among_The_Roses.u_to = 0; Library_Balcony.d_to = 0; } if(location == In_The_Orchard && In_The_Orchard.u_to ~= 0) { In_The_Orchard.u_to = 0; Bedroom_Balcony.d_to = 0; } ], has topic; !------------------------------------------------------------------------------ Object -> Shed_Shelves "shelves" with name "shelf" "shelves", description "The shelves contain various garden tools.", capacity 4, has scenery supporter; !------------------------------------------------------------------------------ Object -> -> Shed_Tools "tools" with name "tools", before [; Take: "The tools are standard gardening tools, in excellent condition. You have no use for them, unless you are looking for a new profession."; ], has scenery; !------------------------------------------------------------------------------ Window_Class -> Shed_Window "window" with name "window", before [i; Clean: "You think you're clever, don't you? The window is so dirty that it isn't easily cleaned."; MyListen: if (Shed_Episode.stage == 3 && Shed_Episode.count >= 3 && Shed_Episode.count <= 5) "You can't make out any of the words."; LookThrough: if (location==Shed) "Although the window is grimy, you can make out the lawn outside."; else if(location == East_Lawn) { if (Shed_Episode.stage == 3) { if (Shed_Episode.count == 5) "Mr. Baxter seems furious and about to strike Ms. Dunbar then calms himself. Ms. Dunbar starts to cry and is embraced by Mr. Baxter."; else if(Shed_Episode.count == 4) "Mr. Baxter and Ms. Dunbar are inside. Although you can't hear them, it's clear from their gestures that a serious argument is occurring. Dunbar appears very upset and breaks into tears. Baxter remains composed, but tense and perhaps angry - you can't be sure."; else if (Shed_Episode.count == 3) "Through the grimy window you see Mr. Baxter and Ms. Dunbar talking. Dunbar is doing most of the talking, barely restraining tears. Baxter is listening, nodding grimly, and occassionally saying a few words. Unfortunately, you can't make any of them out."; } print "You can vaguely make out the inside of the shed through the grime. "; i = HowManyAreThere(Shed); if (i) { print "Nevertheless you see "; if (i > 1) print (LanguageNumber) i, " people"; else print "someone"; print " inside the shed."; } new_line; rtrue; } rfalse; ], found_in Shed East_Lawn; !------------------------------------------------------------------------------ Outside Behind_The_Shed "Behind the Shed" with description "You are now between the shed and the lake, a position invisible from the house or the adjacent lawns. There are no windows here, but you can easily enter the shed via the door around the corner.", before [; Exit, VagueGo: PlayerTo (East_Lawn); rtrue; ], e_to CantGoLake, n_to East_Lawn, s_to South_Lawn, w_to East_Lawn; !------------------------------------------------------------------------------ Outside East_Side_Of_House "East Side of House" with description "There are no windows or entries of any kind here at the east side of the house. To the north is the orchard, and the front lawn lies to the south. A lawn also slopes down toward the shore of a lake to the east.", s_to East_Of_Front_Door, e_to East_Lawn, n_to Orchard_Path, se_to East_Lawn, ne_to East_Lawn, w_to CantGoHouse, has proper; !------------------------------------------------------------------------------ Outside Orchard_Path "Orchard Path" with description "You are on a path at the edge of a small orchard of fruit trees which abuts the eastern side of the back of the house. The orchard is obviously intended more to display the beauty of the blossoms in spring than to produce significant amounts of fruit. The windows of the kitchen look out onto the orchard, although your view of them is blocked by the trees and a small grape arbor. To the west is a path along a rose garden, and lawns sweep out to the north and east.", npc_subway blue_line orange_line lime_line, se_to East_Lawn, e_to East_Lawn, s_to In_The_Orchard, w_to Garden_Path, ne_to North_Lawn, nw_to North_Lawn, n_to North_Lawn; !------------------------------------------------------------------------------ Object -> Fruits "fruit" with name "fruits" "fruit" "apple" "apples" "pears" "peaches", before [; Take, Eat: "The fruits are not abundant, and those within reach are far from ripe."; ], found_in Orchard_Path In_The_Orchard, has scenery; !------------------------------------------------------------------------------ Object -> Tree "tree" with name "tree", before [; Take: << TAKE Fruits >>; ], found_in Orchard_Path In_The_Orchard, has scenery; !------------------------------------------------------------------------------ Outside In_The_Orchard "In the Orchard" with description [; print "You are amidst lovely trees bearing apples, pears, peaches, and other fruits. A grape arbor and several berry bushes may also be seen. The kitchen window and east side of the house are just to your south, and a path skirts the orchard to your north.^"; if (self.u_to ~= 0) "A ladder is leaning against the house, its upper end against a balcony above."; else "There is no way into the house from here."; ], npc_subway lime_line, n_to Orchard_Path, s_to East_Side_Of_House, w_to Among_The_Roses, u_to 0; !------------------------------------------------------------------------------ Object -> Orchard_Balcony "balcony" with name "balcony", has scenery; !------------------------------------------------------------------------------ Object -> Orchard_Berry "berry bush" with name "berry" "bush", before [; Eat: "You pick a few berries and pop them into your mouth. Delicious!"; ], has scenery; !------------------------------------------------------------------------------ Object -> Grape_Arbor "grape arbor" with name "grape" "arbor", before [; Eat: "You pick a few grapes and eat them. Mmmm!"; ], has scenery; !------------------------------------------------------------------------------ Outside Among_The_Roses "Among the Roses" with McNabb_from 0, McNabb_dest 0, McNabb_time_save 0, description [; print "You are among rows of roses. The ground is soft, and your footsteps leave a rather bad impression as many poor seedlings are trampled underfoot. A safer place to admire the flowers lies to the north. A window to the south allows a view into the house.^"; if (self.u_to ~= 0) "A ladder is leaning against the house, its upper end against a balcony above."; "There is no way into the house from here."; ], before [; Go: if (noun == e_obj or n_obj or w_obj or ne_obj or nw_obj && Mr_McNabb in self) Mr_McNabb.npc_time_left = 1; ], after [; Go: if (Mr_McNabb in Garden_Path or Orchard_Path or North_Lawn) { if (Holes in self || Mr_McNabb.angry == 1) rfalse; Mr_McNabb.angry = 1; print "In the distance you hear ~Hey! WHAT? You, there!~ and other choice words muffled by a strong Scottish burr and a stiff breeze. Now, standing at the edge of the garden, can be seen the person of Mr. Angus McNabb, the gardener. He advances, looking crazed and gesticulating wildly. With each carefully chosen step in your direction, a barely visible wince of pain comes to his deeply-lined face. He regards you as you would regard the man whose car just ran over your little puppy dog."; if(Mr_McNabb.holes_found == 1) print " ~I canna believe it! I've already spent an hour fixing up the ground here where some fool was walkin' aboot -- and now you! I canna believe it!~"; self.McNabb_from = parent(Mr_McNabb); self.McNabb_dest = Mr_McNabb.npc_dest; self.McNabb_time_save = Mr_McNabb.npc_time_left + 2; NPC_Schedule(Mr_McNabb, parent(Mr_McNabb), 10+random(10)); move Mr_McNabb to self; Mr_McNabb.npc_old_loc = self; print "^^"; rfalse; } ], npc_subway navy_line, s_to CantGoHouse, e_to In_The_Orchard, n_to Garden_Path, w_to West_Lawn, ne_to Garden_Path, nw_to Garden_Path, u_to 0; !------------------------------------------------------------------------------ Object -> Roses_Balcony "balcony" with name "balcony", has scenery; !------------------------------------------------------------------------------ Object -> Garden_Mud "mud" with name "mud" "dirt", description [; << EXAMINE d_obj >>; ], before [; Search, Dig, DigNear: << SEARCH d_obj >>; ], found_in Garden_Path Among_The_Roses, has static concealed; !------------------------------------------------------------------------------ Object -> Roses "roses" with name "roses" "rose" "rows" "flower" "flowers", description "There are rows of yellow, red, pink, and white roses here.", before [; Smell: "They smell nice."; Take: "Taking a rose would be most ungracious, and possibly dangerous if Mr. McNabb found out."; ], found_in Among_The_Roses Garden_Path, has scenery topic; !------------------------------------------------------------------------------ Outside Garden_Path "Garden Path" with description "You are at the edge of a large rose garden, meticulously maintained by the gardener, Mr. McNabb. He is said to be exceedingly proud of this particular garden, which is the envy of the neighbors. Rows of roses are neatly arranged and the sweet fragrance of the flowers is worth a trip here in itself. An orchard to the east contains many varieties of fruit trees and wide lawns lie to the west and north. The roses themselves are to the south, filling the area between you and the back of the house.", npc_subway orange_line navy_line, s_to Among_The_Roses, se_to Among_The_Roses, sw_to West_Lawn, e_to Orchard_Path, w_to West_Lawn, nw_to North_Lawn, ne_to North_Lawn, n_to North_Lawn; !------------------------------------------------------------------------------ Outside North_Lawn "North Lawn" with description "This idyllic spot lies on a jut of land well north of the house and is surrounded on three sides by lake shore. Its charm includes the sweet smell of roses blown on a southwest breeze from the rose garden and by the sound of the leaves rustling in the orchard to the southeast.", npc_subway lime_line navy_line, nw_to CantGoLake, n_to CantGoLake, ne_to CantGoLake, e_to CantGoLake, w_to CantGoLake, sw_to Garden_Path, s_to Garden_Path, se_to Orchard_Path; !------------------------------------------------------------------------------ Object -> Lake "lake" with name "lake", capacity 10, description [; if (Wet_Piece_Of_Paper notin self || location ~= North_Lawn) "Surely you don't suspect the fish also?"; else { move Wet_Piece_Of_Paper to player; "A crumpled piece of paper is floating on the water a few feet from shore. With an uncommonly agile motion, you retrieve the drenched paper."; } ], before [; Bathe: "You're not on vacation, but with ideas like that you will probably be given a rather long one."; Search: << EXAMINE self >>; ], after [; Receive: remove noun; "You throw ", (the) noun, " into the lake and it slowly drifts away, out of reach for you. You realize that ", (the) noun, " is gone forever."; ], found_in East_Lawn West_Lawn North_Lawn, has container open scenery concealed; !------------------------------------------------------------------------------ Outside West_Side_Of_House "West Side of House" with description "There are no doors or windows at ground level here on the west side of the house. A beautiful rose garden, separated by a tall fence, lies to the north, and the front of the house is to your south. A large lawn bordering the lake lies to the west.", e_to CantGoHouse, n_to "A fence prevents your mucking up the rose garden.", s_to West_Of_Front_Door, w_to West_Lawn, nw_to West_Lawn, sw_to West_Lawn, se_to West_Of_Front_Door;