! http://www.inform-fiction.org/manual/html/contents.html
! actor action noun second -> http://www.inform-fiction.org/manual/html/s6.html
Constant Story "Stole Your Bike!";
Constant Headline "^by Chris Lesnieski^October 17, 2005^^";
Include "Parser";
Include "Verblib";
Include "Grammar";
!********* Global Vars ***********
Global currentFunds;
Object wallet "wallet"
with name "wallet" "bifold",
description
[;
print "You currently have ", currentFunds, " dollars in your wallet.^";
];
Object keys "ring of keys"
with name "keys" "carkeys" "housekeys" "lockkeys" "key",
description
"Here you have what few keys you need to stay safe: a key for the lock on your computer case, to the house, and for
your bike.";
!***********************************
! Room 1 - Bedroom
!***********************************
Object L_Bedroom "Bedroom"
with name "cell" "phone" "cellphone" "packet" "papers" "computer",
description
"You go back up to your room to gather your wits. The low hum of the computer can be
heard as can the purring cat laying on the bed opposite of the computer. He has decided
to cat-nap on a folder stuffed with receipts and other miscellaneous papers. Directly
next to the bed is a nightstand.",
d_to L_Porch;
Object computer "computer" L_Bedroom
has static scenery
with name "computer" "compy" "desktop" "windows" "machine",
description "A run of the mill Windows machine cranking out those cycles for SETI.",
before
[;
Take,Push,Pull: "Your desktop is not a laptop, ie, it's not portable.";
];
Object bed "bed" L_Bedroom
has static scenery
with name "bed" "matress",
description "A small twin size bed that's still comfy enough to sleep on.",
before [;
Take: "I don't think you're moving today..";
Push,Pull: "Nothing to see there under there but dirty dishes and dust-bunnies.";
];
! currentState = 0 (sleeping), 1 (awake but on bed), 2 (off bed, playing with something)
Object cat "grey tabby" L_Bedroom
has static scenery male,
with name "grey" "grey-tabby" "cat" "grey-cat" "tabby-cat" "kitty",
currentState 0,
description "Look at the sweet kitty, sleeping peacefully despite your situation.",
before
[;
Take,Push,Pull: "Cats are surprisingly stubborn animals.";
Rub:
if(cat.currentState == 0) {
cat.currentState = 1;
"You scratch the cat under his chin and let's out a small mew and opens his eyes grogily.";
}
if (cat.currentState == 1) "The kitty starts to purr louder.";
if (cat.currentState == 2) "He's too busy playing with the laser pointer to be bothered.";
Attack: "I should call the Humane Society on you for that!!";
Examine:
if (cat.currentState == 1) "The cat seems pretty alert now.";
if (cat.currentState == 2) "Doesn't he realize he'll never catch that red dot?";
];
Object nightStand "night stand" L_Bedroom
has static scenery
with name "night" "stand" "nightstand" "night-stand" "table",
description
"This is where most of your valuables are kept, useful or otherwise. You kept your spare key
for the lock here until you gave it to someone for safe keeping.",
Before
[;
Examine:
if (laser notin player && cell notin player) "You see a laser pointer, cell phone, and an alarm clock";
if (cell notin player) "You see a cell phone and an alarm clock";
if (laser notin player) "You see a laser pointer and an alarm clock";
];
Object cell "cell phone" L_Bedroom
has concealed
with name "cell" "phone" "wireless" "wireless-phone" "cell-phone",
description
"Let's see, 300 anytime minutes, free nights and weekends starting at 9pm, 1.2mp camera,
color LCD; yup, it's my cell phone.";
Object laser "laser pointer" L_Bedroom
has concealed switchable
with name "laser" "pointer" "laser-pointer",
description
"The cat's favorite toy. He can play for hours chasing after the red dot that he'll never
catch. Unfortunately, your arm gets tired pretty quickly.",
Before
[;
SwitchOn:
if (cat.currentState == 0) "It actually works. Too bad the cat's not awake or else he'd play with it.";
if (cat.currentState == 1)
{
cat.currentState = 2;
"At the sight of the red dot, the cat jumps off the bed and scampers towards the tiny red dot";
}
SwitchOff: "You turn off the laser to save batteries.";
];
Object clock "alarm clock" L_Bedroom
has static concealed
with name "alarm" "clock" "alarm-clock",
description
"I can play cassettes on that, in addition to listening to the FM/AM radio. And yes, it does
serve a purpose of waking me up in the morning.";
Object folder "folder of papers" L_Bedroom
has static scenery
with name "folder" "papers" "important" "manila" "receipts",
description
"A bunch of old receipts and papers containing important numbers, dates, and
descriptions of objects they are tied to.",
before
[;
! if the cat is still sleeping & on bed, can't take/examine them
Take: "Why do you want to carry those papers around? You'd probably lose some important stuff.";
Examine:
if (cat.currentState == 0)
"You'd wake the cat if you tried to do that!";
if (cat.currentState == 1)
"The kitty is awake but he doesn't really want to move off those papers yet.";
if (cat.currentState == 2)
{
move serialNumber to player;
"Bills, receipts, maintenance records.. ah yes, there it is, the serial number for your bike!";
}
];
Object serialNumber "serial number for your bike" folder
has general,
with name "serial" "number" "sn" "serialnumber",
description
"This six-character string of numbers and letters was taken from the bottom of your bike
when you bought it. This will definately help the Police when you fill out your report.";
!***********************************
! Room 2 - FOOD VENDOR
!***********************************
Object L_Vendor "Street Corner"
with name "streetcorner" "corner" "street-corner",
description
"You stand on a street corner. The most interesting thing about it is the hot dog vendor.
You pass him quite often but never pay attention to him for some reason.^^To your north
is the alley from which you came.",
n_to L_BackAlley;
Object vendor "vendor" L_Vendor
has animate scenery
with name "streevendor" "street-vendor" "vendor" "foodvendor" "food-vendor",
description
"He has hot dogs and fixing, chips and pop all contained in his hulking umbrellaed cart. The guy manning it
is cleaning the stainless steel top smoking a cigarette. How sanitary. Oh well, this is a street vendor,
after all.",
life
[;
Ask:
switch (second)
{
'hotdog','dog','food','cost','price':
print "~Truss me when I says that these 'r some good dawgs, eh? They'll also run ya's about a dolla
a piece. You wanna buy one or what?~^^(yes / no)> ";
if (YesOrNo() == true)
{
if (currentFunds >= 1)
{
move hotDog to player;
currentFunds = currentFunds - 1;
"You hand him a dollar and he hands you a hot dog which you then dress up with a little bit
of mustard and ketchup.";
}
else
{
"~Hey, fuhgedaboutit! You ain't gots enough money tah pay fah dat!~";
}
}
else
{
"~Youse dunno whatcha missin out ahn, kid!~";
}
default: "The hot dog vendor looks at you like you're speaking Klingon.";
}
Tell:
switch (second)
{
'bike','theft','lock','missing': "You tell the vendor about how your bike got stolen this morning.
~Ehh, dat's too bad, y'know?~ ";
default: "He's got customers to feed, buzz off!";
}
Attack: "He has a couple sharp knives handy and probably has ties to the mob: it wouldn't be wise.";
Push, Pull: "~Whoa man, you tryin to steal me away from mah caht?!~";
]; !end of life block
Object hotDog "hot dog" L_Vendor
has concealed edible
with name "hotdog" "dog" "weiner" "wiener" "sausage",
description "That's one huge weiner! Looks mighty tempting.",
before
[;
Eat:
move hotDog to nothing;
"Boy were you hungry. You scarfed it down in seconds! It was most definately worth a buck.";
ThrowAt: "Why would you want to waste a perfectly good 'dog?!";
];
!***********************************
! Room 3 - PORCH
!***********************************
Object L_Porch "Porch"
with name "porch" "steps" "swing" "rail",
description
"You stand on the wooden porch, defeated. You closed the door behind you before you realized
what happened to your bike. The railing is empty, void of your personal ride. A porch swing creaks as a mild
gust of wind comes along.^^To the north is 2nd Street, which runs North from your house.",
n_to L_2ndSt1,
u_to L_Bedroom;
Object rail "Rail" L_Porch
has scenery static
with name "rail" "railing",
description
"Your bike was locked up here when you went up to your room last night. But now it and the lock are gone.
How peculiar.";
Object swing "Swing" L_Porch
has scenery static
with name "swing" "porchswing",
description
"On cool evenings you would sit here and waste time looking at your bike. Guess that won't be happening
for awhile now.";
!***********************************
! Room 4 - LIBRARY
!***********************************
Object L_Library "Library"
with name "library" "books",
description
"You walk into the library where you spend most of your free time. It's always a little chilly in here
but they need to keep it that way for the books. The smell of fresh paper and carpet surround you. Directly
in front of you is a desk with a librarian behind it.",
e_to L_BackAlley;
Object librarian "librarian" L_Library
has animate scenery
with name "librarian" "librarylady" "lady",
description
"She's sitting in her chair, chatting with a couple other people behind the desk. She has long dark hair
put up, no glasses and a light complexion. You've seen her many times before but still haven't figured
out what her name is yet.",
life
[;
Ask:
switch (second)
{
'bike', 'lock', 'theft', 'stolen':
if (libraryBook in L_Library)
{
"~Actually, I seem to remember your bike around here earlier today. I took notice of it
because you weren't around for some reason. I think I may have actually spoken to the guy
who was riding it. Yes, yes I did. We chatted for a bit and he said he worked over on the
north side of town. But I imagine that you'll need to take the bus if your bike is missing.~";
}
else
{
"~No, I don't think I've seen it lately although I do know it's yours so if I see it
I'll be sure to let you know.~";
}
default: "For a person that spends a lot of time around books, she doesn't know very much about anything.";
}
Tell:
switch (second)
{
'bike','theft','lock','missing':
"~Aw, I'm sorry to hear that. It must've been some long walk to get here from where you live.
Not that I would know where you live.. or anything.. *cough* Hey, we got a new magazine in!~";
default: "~I'm sorry but that's just not terribly interesting to me right now.~";
}
Attack: "Aw for cripes sakes, what would that accomplish. Besides, you think she's rather cute.";
Push, Pull: "~Hey mister, be careful of what part of me you're tryin to pull!~";
Give:
if (noun == libraryBook)
{
if (libraryBook in player)
{
move libraryBook to L_Library;
"You hand the book to the librarian and flash her a million dollar smile as you do so.";
}
}
else
"I don't really think the librarian needs that right now.";
]; !end of life block
!***********************************
! Room 5 - ALLEY
!***********************************
Object L_BackAlley "Back Alley"
with name "alley" "backalley" "back" "ditch" "gutter" "food" "garbage" "sludge" "graf" "graffiti" "writing"
"cans" "puddles" "water",
description
"Cooler than the street, but also a lot smellier. Expired food products fill the air and ooze
into the alley way. You skip over the larger puddles while looking at the fancy handwriting of different
graffiti artists.^^To the north you can walk onto 1st Street or to the east, 2nd Street. Turning south there
is a street food vendor and a city library sits to the west.",
n_to L_BusDepot,
e_to L_2ndSt1,
s_to L_Vendor,
w_to L_Library;
!***********************************
! Room 6 - 2ND STREET
!***********************************
Object L_2ndSt1 "2nd Street"
with name "street" "sidewalk" "path" "lead" "house" "porch" "shortcut",
description
"This street leads directly from your house but who knows where exactly it will lead to?^^To the south
you can go back to your porch. To the west sits an alley which you frequent as a shortcut. To the east lies a
friend's house and 2nd Street continues north.",
n_to L_2ndSt2,
e_to L_Friend,
s_to L_Porch,
w_to L_BackAlley;
!***********************************
! Room 7 - FRIEND
!***********************************
Object L_Friend "Friend's House"
with name "lawn" "porch" "grass" "tree" "mower" "cutter" "lawnmower" "shade" "chores",
description
"You hustle it over to your friend's house and just happen to catch him taking a break
in the shade from mowing his lawn.^^To your west is 2nd Street.",
w_to L_2ndSt1;
Object friend "friend" L_Friend
has animate scenery
with name "friend" "moron" "nimrod" "loser" "dude",
hasBook 1, !this says that the friend currently has the book in his possesion
description
"Yup, that's your friend. He's kinda spotty when it comes to trusting people. He really does mean
well but he just can't always follow through on it.",
life
[;
Ask:
switch (second)
{
'lock','key':
!if (libraryBook notin player || libraryBook notin L_Library)
if (self.hasBook)
{
print "Uh yeah, I was at the library getting a book I needed for class a few days ago
and I probably dropped the spare when I was leaving. Which reminds me, do you think you
could take back the book I borrowed? I'm really busy today and just don't have the time
to do it.^^Do you want to return the library book for him?^^(yes / no)> ";
if (YesOrNo() == false) "You respond silently with two middle fingers. I guess that's a no.";
else
{
move libraryBook to player;
self.hasBook = 0;
"^~Yeah, ok, I guess I can turn it back in, but you owe me big time!~ you say as a nervous
twitch starts to develop.";
}
}
else "Uh yeah, I was at the library getting a book I needed for class a few days ago
and I probably dropped it when I was leaving.";
default: "Your friend denies any knowledge about that.";
}
Tell:
switch (second)
{
'bike','theft','lock','missing': "You tell him your sob story about you bike gone missing. He sheepishly
says that he lost the spare key to the lock that you gave him. You become slightly annoyed at this.";
default: "He doesn't care to hear about that right now.";
}
Attack: "~I could take him~ you think to yourself but you realize you might need his help later.";
Push,Pull: "~Whoa man, what the hell did you do that for? I'm not leaving this yard until my chores are done~";
]; !end of life block
Object libraryBook "library book" friend
has concealed
with name "library-book" "book" "librarybook",
description
"Babbitt by Sinclair Lewis. Written back when Detroit and Toledo were considered among the greatest
cities in the nation.";
!***********************************
! Room 8 - BUS DEPOT
!***********************************
Object L_BusDepot "Bus Depot"
with name "metal" "glass" "green" "steel" "aluminum" "partition" "facade" "parking" "spaces" "building",
description
"Quite a modern looking structure if you do say so yourself. Large diagonal parking slots for the buses occupy the
side and rear of the building. A curved facade made of green-tinted glass and brushed steel partitions glimmer
in the sunlight. Inside sit a monitor which shows real-time where each bus is currently. To the left of those monitors
is a desk manned by receptionist types to answer any questions you may have. On the opposite wall from the monitors
sits a door which you must enter through to get to the large lot which holds all the buses.
^^If you decide not to ride the bus, head south to get back on 1st Street.",
n_to busDoor,
s_to L_BackAlley;
Object receptionist "woman behind counter" L_BusDepot
has animate scenery
with name "receptionist" "lady" "counter" "woman" "miss" "buslady",
description
"A woman that's probably in her mid-fifties with red hair and a pair of reading glasses edged down to the
tip of her nose. She sits chewing a piece of gum and chatting with other coworkers, whom continue talking when
they see you approach. From what you overheard, it sounds like she has a high-pitched New Yorker accent.",
life
[;
Ask:
switch (second)
{
'cost','price':
"~It'll cost ya a buck-fifty for a round trip bus pass, k hun?~";
'busride', 'ride', 'bus', 'lift':
"~In oh-dah tah ride, ya need a bus pass. Yeah yeah, you ain't tha only one tah complain abaht it.
Lawts of people choose not tah ride anymore. But our subscriptions are through tha roof since we
put that rule intah place. Just ask me for a bus pass and I can sell ya one.~";
'buspass', 'pass', 'ticket', 'freeride', 'bus-pass':
print "~What, you wanna buy one?~^^(yes / no)> ";
if (YesOrNo() == true)
{
if (busPass in player) "Looks like you already have one. Don't waste your money on another.";
if (currentFunds > 1)
{
currentFunds = currentFunds - 2;
move busPass to player;
"You buy a round-trip bus pass for a dollar-fifty and put it in your pocket.";
}
}
else "~Well, ahlright then. Just tawk tah me whens ya need one, k?~";
default: "~Nah hun, I dun think I'd be interested in tawkin about that.~";
}
Attack: "Once again, you want to resort to violence. You certaintly have some repressed issues, don't you?";
Give, Show:
if (noun == busPass)
{
"~Yup, that's a bus pass. I can't do much with it here but if you want to get on tha bus, here's what ya do.
First unlawk tha door by swiping your pass. Then ya gotta open it. Then ya can enter it, ahlright?~";
}
else
"~I've seen a lotta things, trust me, but that's something I DON'T wanna see.~";
]; !end of life block
!***********************************
! Room 9 - 2ND STREET
!***********************************
Object L_2ndSt2 "2nd Street"
with name "payphone" "mailbox" "box" "phone" "street",
description
"You find yourself still walking along 2nd Street, passing an occasional payphone or mailbox.^^
To the north is the police station. To the east is an abandoned railroad
underpass where a couple of bums live. Or you can go south and stay on 2nd Street.",
n_to L_Police,
e_to L_Underpass,
s_to L_2ndSt1;
!***********************************
! Room 10 - UNDER PASS
!***********************************
Object L_Underpass "Underpass"
with name "underpass" "highway" "bridge" "railroad" "rails",
description
"The first few times you came here, it creeped you out. The Interstate rumbles over a pair of train tracks.
Sometimes you come here to watch trains go buy. It's a lot cooler here in the shade but a lot noisier due
to the echoes off the cement reinforcement. You can see a slump of a person about 20 feet away, probably
one of the homeless people you normally encounter and make small talk with down here. ^^If you want to get
the heck out of here, go west to hit 2nd Street.",
w_to L_2ndSt2;
Object bum "bum" L_Underpass
has animate scenery
with name "bum" "guy" "homelessperson" "homeless-person" "homeless" "transient" "rufus",
description
"It's Rufus, one of the bums you happen to catch down here on a regular basis. He's sitting
up against the hard concrete wall with an empty fifth of vodka next to him. He's wearing a faded
pair of jeans, some ratty sneakers, and a sweatshirt. He's pretty unshaven.",
life
[;
Ask:
switch (second)
{
'bike', 'theft', 'lock', 'missing':
"~Man, I have no idea what you're talking about. Although I usually see you on a bike. Where
is it right now?~ He asks rhetorically.";
default: "He replies with a non-sensical statement about clowns trying to eat him.";
}
Tell:
switch (second)
{
'bike', 'theft', 'lock', 'missing':
print "~Well at least you HAD a bike! By the way, you happen to have any food on you?~^^(yes / no)>";
if (YesOrNo() == true)
{
if (hotDog in player)
{
move hotDog to bum;
move busPass to player;
"~Hey, thanks man. Hey uh, here's this bus pass. I don't really need it but I happened
to find it on the ground. I guess you can have it since I know you'll probably use it
now that you have no bike.~";
}
else "~Man, don't try and pull that crap on me, I need to eat!~";
}
else
{
if (hotDog in player) "~Man, are you sure? I think I smell somethin' tasty..~";
else "~Ehhhh, how about some change? No? Okay then.~";
}
default: "He doesn't care to hear about that right now.";
}
Attack: "Why would you want to beat up a bum? Isn't he already bad off as it is?";
]; !end of life block
Object busPass "bus pass" bum
has concealed
with name "buspass" "pass" "ticket" "freeride" "bus-pass",
description
"Wow, this will pretty much let you ride for free for the next month. I wonder where he found this.";
!***********************************
! Room 11 - POLICE STATION
!***********************************
Object L_Police "Police Station"
with name "station" "police" "hq" "depot" "precinct" "granite" "floors" "walls" "marble" "ceilings" "office",
description
"Ah, the 5-0. You've run from them a few times but now you need their help. The
foyer contains high ceilings, marble walls, and granite floors. Police officers path's cris-cross each
other's as they walk from office to office. A man behind the bullet-proof glass sits there eyeing you suspiciously.
^^To the south lies the 2st Street Exit.",
s_to L_2ndSt2;
Object policeman "police man" L_Police
has animate scenery,
with name "police" "policeman" "man" "attendant" "secretary" "cop" "pig" "officer",
validReport 0,
description
"A bit slumped in his chair, he has his pudgy fingers interlocked on top of the desk. You notice a wedding
ring on his finger. ~What a line of work to be a part of in order to provide for a family~ you think. His hazel
eyes are a bit hollow from all the gruesome things he's seen and his red-tinted mustache hides his mouth.",
life
[;
Ask:
switch (second)
{
'crime', 'theft':
"~Things are getting better around here. After the restructuring process, we became a little bit
more efficient with our street watches. Still, crimes do happen and be sure you let us know if
you see one happening.~";
default: "~Sorry sir, I'm not sure what you're asking for.~";
}
Tell:
switch (second)
{
'theft', 'missing', 'stolen', 'stolenbike', 'missingbike', 'stolen-bike', 'missing-bike':
print "~That's quite unfortunate. I remember having a bike by that same maker, what a ride.
Anyways, we can't have thefts in our city, that's just not right. I can help you fill out a
police report but I'll need the serial number of the bike; you do have that don't you?~^^(yes / no)> ";
if (YesOrNo() == true)
{
if ((serialNumber in player) && (policeman.validReport == 0))
{
move serialNumber to policeman;
policeman.validReport = 1;
"~Excellent! I've filled it out and put it into the computer. This way, if we happen to come across
any recovered bikes we'll be sure to look for yours before we send them to auction.~";
}
if (policeman.validReport == 1)
{
"~It looks like we already have a report of your bike being stolen. Don't worry, we'll work
on recovering that ride of yours.";
}
else "~I'm sorry sir but that's not the serial number of your bike.~";
}
else
{
"~Hmm, unfortunately I can't fill out the report at this time. Come back when you have it.~";
}
'found', 'theif', 'foundbike', 'found-bike', 'finding', 'findingbike', 'finding-bike':
"~You found it? No kidding? This will make our job a bit easier now but we just need some proof,
like a picture or something.~";
default: "He doesn't care to hear about that right now.";
}
Attack: "Looks like we have a little brain fade here. You're in a police precinct. He's behind bullet-proof glass.
Not gonna work, genius.";
Give:
if (noun == phoneCamPic)
{
if (phoneCamPic in player)
{
deadflag = 2;
! I think deadflag = 3 is death..
"You show the police man both pictures on your cell phone. They're both a bit fuzzy but he believes you.
He arranges to have you escorted over there with a police officer in a squad car. While the bike is being
removed the perpatrator comes out and asks what is going on. The officer then places him under arrest for
petty theft as you have decided long ago that you want to press charges. He gets a ride to the station in
the back of a cop car and you get to ride your sweet, sweet bike again. All is well with the world.";
}
else "~You said you had a picture of the bike, so where's the pic? I don't see it so I guess you don't have it.~";
}
else
"~What the heck is that? I don't need it. I need some sort of proof, visually preferrably.~";
]; !end of life block
!***********************************
! Room 12 - THEIFS HOUSE
!***********************************
Object L_TheifsHouse "Theif's House"
with name "house" "porch" "theifshouse" "theifs-house",
description
"You stand on the sidewalk, about 20 feet back from the porch. And there it is: your bike, leaning up against
railing on the porch -- unlocked and ready to be taken. You can't tell if anyone is inside but the front door is open.",
e_to L_BusStop;
Object phoneCamPic "picture of your stolen bike" L_TheifsHouse
has concealed
with name "pic" "picture" "phonepic" "campic" "phonepicture" "campicture",
description
"It's a rough photograph of your bike on the porch of someone's house. An address is able to be seen in one
photograph while the serial number is plainly visible in the second photograph.";
Object bike "bike" L_TheifsHouse
has concealed
with name "bike" "cruiser" "beachcruiser" "dbo" "deebo",
description
"Ah, your most beloved bike. It gives you freedom to go where you want and keeps you in shape anytime you want to
exercise that right. A shimmery gloss black pearlized finish with whitewalls, chrome rims and fenders, the
and most comfortable seat in the world. Beautiful.",
before
[;
Take:
print "You decide to risk it and take the bike back on your own. You sprint up to the porch, hop up the steps and grab
the bike. You carry it down the three steps to the ground. At this, the theif comes out of the house and charges
towards you.";
if (bikeLock in player)
{
deadflag = 2;
" You remember the lock you picked up from the rack just a few minutes ago. As he approaches, you
ready your weapon and take a swing. It connects to the side of his face with the sick sound of dull metal meeting
bone and tendon. He drops to the ground just in time to see you ride off on your own bike, which is finally in your
possesion.";
}
else
{
deadflag = 1;
" POWEE! You got knocked the hell out! You didn't react fast enough and now instead of just
a missing bike, you also have a missing tooth or two. Better luck next time!";
}
];
!***********************************
! Room 13 - BUS STOP
!***********************************
Object L_BusStop "Bus Stop"
with name "busstop" "stop" "station" "pole" "sign",
description
"It's a wide side walk with plenty of room for people to walk. The building which he works in can be seen from
where you stand, it's about two lots down. There's a bike rack planted firmly into the ground about 10 feet away
from you.^^Head west to visit his house or go south to head back to the transit hub.",
s_to busDoor,
w_to L_TheifsHouse;
Object busDoor "metal door" L_BusStop
has scenery static door openable lockable locked,
with name "door" "busdoor" "bus" "driver" "standard" "metal",
when_closed "You need either money or a bus pass to ride this massive hunk of steel.",
when_open "The door is open, so what are you waiting for?",
description
[;
if (self in L_BusDepot)
print "It's an door to the fenced lot out back.^";
else
print "It's a just a door that will let you get onto the bus.^";
],
door_to
[;
if (self in L_BusDepot) return L_BusStop; return L_BusDepot;
],
door_dir
[;
if (self in L_BusDepot) return n_to; return s_to;
],
with_key busPass,
found_in L_BusStop L_BusDepot;
Object bikeRack "bike rack" L_BusStop
has scenery static
with name "bikerack" "bike-rack" "rack" "stand" "bikestand",
description "It's a standard bike rack. I guess it's here for people to attach their bikes to. There's also few locks
still chained to the rack, not sure what that's all about.";
Object bikeLock "bike lock" L_BusStop
has scenery
with name "bikelock" "lock" "chain" "ulock" "barrellock" "locks" "bikelocks" "chains",
unlocked 0,
description "One catches your eye. It looks familiar and also has the same type of style that your key fits into.
It's also quite heavy. Although you've never used it as such, it could be used as a weapon.",
before
[;
Take:
if (bikeLock.unlocked == 0) "You can't take that if it's still locked to the rack.";
if ((bikeLock.unlocked == 1) && (bikeLock notin player))
{
move bikeLock to player;
"You take the lock in hand with your confiedence now slighty greater than what it was before.
Soon you should have your bike!";
}
if ((bikeLock.unlocked == 1) && (bikeLock in player)) "You already have your bike lock, don't worry about the others";
Unlock:
bikeLock.unlocked = 1 ;
"You slip your key into the hole, hope for the best and turn. It unlocks!";
];
!***********************************
! Extra Stuff
!***********************************
! For some reason, I cannot get this to work.
![DeathMessage;
! if (deadflag == 3)
! {
! 3: print "You got knocked the hell out!";
! }
!];
[Initialise;
give player light; ! don't have to deal with adding light in every room
move keys to player; ! guess which key is on this keyring?
currentFunds = 2; ! the only money that the player has
move wallet to player; ! something to carry the money around in
location = L_Porch;
"^^^You wake up this morning in a surprisingly great mood. With a full
day of riding your beloved Beach Cruiser bike around town taking care of
chores and visiting friends, you head downstairs to the porch. Looking
to where you thought you left your precious bike you notice that it, nor
the lock, is there! You start to panic. Who would do this? Why would
they? How are you going to get around town?!^^";
];