It's a painting, nicely preserved by a dusty but otherwise unmarred clear cover, of a guy in 22nd century British fatigues. He's shooting a huge gun at a red dragon, and the dragon is like "ahhhh you shot me with a huge gun." Or so you extrapolate from its expression.\n\nA plaque prominently displays the title of the painting: "Sir Church Slays the Great Wyrm Khazyll."\n\nMight be worth something if you make it out of here alive, but you should probably [[get back to surviving.|little nook]]\n\nOr ... hey, are there [[hinges]] on the edge of the painting?\n\n
"What, afraid of some Pre-Snowfall junk?" Moosk sneers.\n\n"No, it's just," Amara stammers. "They say a grue got in after the store closed."\n\n"That's just to scare babies. Grues don't come up to the surface. Go in. And no taking your handshell for light, I'll hold it."\n\n"Why are you asking me?" Amara backs away from the door. "You got me in trouble //last// time. Make Zee do it, I bet they're not afraid."\n\nMoosk turns to you. "Yeah, ok. Hey Zee, I dare you to go in there."\n\n* [["I don't want to go in there."|Foregone Conclusion]]\n* [["Why don't you go in?"|Foregone Conclusion]]\n* [["Umm ..."|Foregone Conclusion]]
<<messages>><<if $time > 40>><<win>><<else>><<lightingcheck>><<if $lit>>You are standing to the left of the front door of the shop. An array of worthless tchochkes litters the shelves nearby, mostly children's toys and thin paper books too moldy to recognize.\n\n<<if $lantern is 6>>You recognize an old [[oil lantern]] on one of the shelves, looking just like the ones in the storybooks.<<else>><<if $lantern > 0>>An old oil lantern is here, its dry wick burning down rapidly.<<else>>There's an old oil lantern here, its expended wick blackened and useless.<<endif>><<endif>>\n\nTo the right is [[The Entrance]].\nStraight ahead is some kind of [[Electronics Graveyard]].\n\n<<$matches>> matches remain in the matchbox.\n<<if $match is 1>>The flame of your match is almost out.\n<<endif>><<if $match < 1>>You're not holding a lit match. [[Light one?|Left of the entrance][$matches -= 1; $match to 4]]\n<<endif>>[[Wait here|Left of the entrance]]<<else>>It is pitch black.\n\nYou are likely to be eaten by the grue.<<if $matches > 0>>\n* [[Light a match|Left of the entrance][$matches -= 1; $match to 4]]\n* [[Give Up|Game Over]]<<else>>\n\n[[You're out of matches.|Game Over]]<<endif>><<endif>><<endif>>
With a tremendous clang, the industrial plastic door tears free of its hinges and slams to the floor.\n\nYour heart lifts in relief as daylight spills into the shop, and you squint against the sudden brightness. You hear a hiss from somewhere behind you, and the clicking steps fade away into some forgotten tunnel from the shop.\n\nYou blink and your vision clears. Moosk's mother fills the doorframe, clutching her flat-headed maul in both hands.\n\n"Zee?" She squints, looking right at you but not seeing you. She raises one muscular arm to shield her eyes from the sun.\n\n"I'm here, Mrs. Urza!" I shout. "I'm ok! You saved me from the grue!"\n\n"Oh thank the heavens," she says with a sigh of relief. "Get over here."\n\n[[You comply.|The End]]
Amara squints and stops walking. "Hey, it's not closed."\n\nShe goes up to the decrepit door, a heavy slab of weathered industrial plastic. It's that kind that they stopped making twenty years ago, scuff marks and graffiti all over the front.\n\nAnd Amara's right. The door to the abandoned storefront isn't closed like usual. Amara pushes on it and it moves a little with a loud groan. She jumps back.\n\nMoosk gets that grin that he does when he's got a bad idea. "Somebody should go in."\n\n"I dunno," says Amara. [["It's pretty dark in there."|Legends]]
<<messages>><<if $time > 40>><<win>><<else>><<lightingcheck>><<if $lit>>This little nook isn't walled off, just further down the counter. You're able to look over at the whole store from here, which was probably the intent.\n\n<<if $cash is 8>>There's a [[cool painting]] of a dude in military fatigues shooting a scary-looking dragon.<<else>><<if $cash > 0>>The open safe glows like a fireplace, the paper money inside providing a warm, comfy glow.<<else>>Nothing remains in the safe but a pile of ashes. Ah well -- they say you can't take it with you.<<endif>><<endif>>\n\nFrom here the only place to walk is not as far [[Behind the Counter]].\nYou can also vault the counter to the [[Checkout Line][$match to 0]] if you want<<if $match > 0>>, but your match will probably go out<<endif>>.\n\n<<$matches>> matches remain in the matchbox.\n<<if $match is 1>>The flame of your match is almost out.\n<<endif>><<if $match < 1>>You're not holding a lit match. [[Light one?|little nook][$matches -= 1; $match to 4]]\n<<endif>>[[Wait here|little nook]]<<else>>It is pitch black.\n\nYou are likely to be eaten by the grue.<<if $matches > 0>>\n* [[Light a match|little nook][$matches -= 1; $match to 4]]\n* [[Give Up|Game Over]]<<else>>\n\n[[You're out of matches.|Game Over]]<<endif>><<endif>><<endif>>
This round disc is a taplight, just like the kind you have at home! You push its surface, but nothing happens. Instead of running on rempower, this one must run on batteries.\n\nYou twist off the top of the light. Sure enough, there's a compartment with four cylindrical batteries sitting in it. They're covered in some kind of white crud.\n\n<<if $batteries is 1>>Looks like the batteries you have could replace the ones in the light now.\n* [[Change the batteries|Appliance Graveyard][$taplight -= 1]]\n* [[Leave it alone|Appliance Graveyard]]<<else>>You don't have any batteries, so you [[turn your attention elsewhere.|Appliance Graveyard]]<<endif>>
"Guys," you whisper into the door. "I think there really is a grue in here. Something's hissing and getting closer."\n\n"Iyesu," Amara curses quietly.\n\n"We'll get my mom!" Moosk shouts. \n\n"Wait! Don't leave me --"\n\nBut it's too late. There's the receding sound of your friends running off, and then you're alone and blind with a silence broken only by hisses and clicks, growing steadily closer.\n\n[[You turn slowly...|It Is Pitch Black]]
<<messages>><<if $time > 30>><<win>><<else>><<lightingcheck>><<if $lit>>This corner of the store looks like a 19th-century British hunter decorated it. A leather armchair sits across from a velvety plastic-fleece sofa. Both are angled to face a fake fireplace full of obviously fake molded wood.\n\nThere's a closed gun case on the wall, its lock rusted over. Even if you could get at the antique elephant gun inside, though, you wouldn't know what to shoot at. There's a little [[plaque]] under the case.\n\n<<if $moose is 8>>Staring at you with a ghastly expression, a [[mounted moose head]] juts menacingly from the wall.<<else>><<if $moose > 0>>Pouring a foul black smoke, a moose head blazes with orange flame on the wall.<<else>>A blackened moose skull stares at you from the wall, rivulets of plastic drooping from its sockets. Ugh, that's almost as bad as before you burned the thing.<<endif>><<endif>>\n\nTo the left is [[The Entrance]].\nStraight ahead is some kind of [[Appliance Graveyard]].\n\n<<$matches>> matches remain in the matchbox.\n<<if $match is 1>>The flame of your match is almost out.\n<<endif>><<if $match < 1>>You're not holding a lit match. [[Light one?|Hunting Memorabilia][$matches -= 1; $match to 4]]\n<<endif>>[[Wait here|Hunting Memorabilia]]<<else>>It is pitch black.\n\nYou are likely to be eaten by the grue.<<if $matches > 0>>\n* [[Light a match|Hunting Memorabilia][$matches -= 1; $match to 4]]\n* [[Give Up|Game Over]]<<else>>\n\n[[You're out of matches.|Game Over]]<<endif>><<endif>><<endif>>
"Moosk, I think you have something to say to Zee."\n\n"I'm so sorry, Zee," Moosk pleads, genuine remorse in his voice. "I didn't know that would happen. I'll take it easy on the pranks, ok? Please don't be too mad."\n\n"It's ok," you say, trying to sound cool over your quavering nerves. "I wasn't scared. I handled it."\n\n"Whooa," Amara says, looking around just inside the door. "Everybody said that this place was empty, but look at all the stuff! You could sell this stuff for a lot of money!"\n\n"This stuff," Mrs. Urza chides, "Is getting donated to a museum before we send exterminators to clear this place out. Understood?"\n\n"Yes ma'am," the three of you say in unison. Moosk's mom is not to be contradicted when she's being serious.\n\n<<if $coin is true>>You feel the heft of the coin in your pocket and smile a little. At least you got a souvenir...<<else>>Oh well, you guess you won't be going home with any souvenirs. At least you're alive, and you've got a heck of a story to tell the other kids.<<endif>>\n\n<font size=+3>The End</font>
<<messages>><<if $time > 40>><<win>><<else>><<lightingcheck>><<if $lit>>There's less back here than you were hoping for. The screen of the 'computer' is dark, and no amount of poking it nor the keyboard below it merits a reaction. A drawer below the 'computer' probably used to store money chits is stuck open and empty.\n\nThe weapon mount below the counter is empty, too. Maaan.\n\nTo the right there's a [[little nook]] with a nice painting.\nNot much to do except return to the [[Checkout Line]].\n\n<<$matches>> matches remain in the matchbox.\n<<if $match is 1>>The flame of your match is almost out.\n<<endif>><<if $match < 1>>You're not holding a lit match. [[Light one?|Checkout Line][$matches -= 1; $match to 4]]\n<<endif>>[[Wait here|Checkout Line]]<<else>>It is pitch black.\n\nYou are likely to be eaten by the grue.<<if $matches > 0>>\n* [[Light a match|Checkout Line][$matches -= 1; $match to 4]]\n* [[Give Up|Game Over]]<<else>>\n\n[[You're out of matches.|Game Over]]<<endif>><<endif>><<endif>>
Now completely blind, you spin toward the entrance and throw yourself against it. You can hear Moosk and Amara laughing on the other side.\n\n"Let me out!" You scream, struggling with the door handle. "You didn't say you'd shut the door! You let me out or I'm telling!"\n\n"Calm down, ya baby," Moosk says. "I just wanted to scare you. But fine, I'll let you out if you stop crying."\n\nThere's a rattling sound.\n\n"Uh-oh," Moosk says.\n\nYour throat suddenly seems very dry. "Whaddya mean, [[uh-oh]]?"
The plastic bag holding the box crinkles loudly as you fumble it open, and you can hear the grue's breathing and clicking claws speed up.\n\nYour hands shake as you pull open the fiber box and fumble out a thick, sturdy stick. Squeezing your eyes shut, you [[strike the match]] against the side of the box --
You walk up to the door and push it again. It lets out a loud groan as it swings open, the light from the street forming a widening band that stretches into the store.\n\nWhat little you can see is a dusty, cobwebbed museum of worthless antiques scattered carelessly over low shelves and tables. Your street urchin instincts kick in as you scan the area for anything useful. A clear plastic baggie with a small box catches your eye on a nearby shelf.\n\nMoosk shoves you. "C'mon, get in there. And don't take no little steps. Regular size."\n\nYou take a deep breath and let it out. You get your toes as close to the edge of the door as you can\n\n<<timedinsert 2s>>and take [[five measured steps|Counting]].<<endtimedinsert>>
It Is Pitch Black
"You baby."\n\nMoosk grabs you in a bear hug and you wrestle him for a moment, but he's the oldest and strongest of the neighborhood kids. When he pushes you toward the door, he's dangling your handshell in front of his face.\n\n"You can have this back once you've gone in there. You gotta stay there for, um ... fifteen seconds. You don't know no light spells, do you?"\n\nYou shake your head 'no'. Kids aren't supposed to learn real magic until Secondary.\n\n"Good." Moosk makes a turn-around gesture with his finger. "Five steps in, fifteen seconds. Do it and I'll buy you ice cream."\n\n[[You turn around.|The Walk]]
This little blister pack contains four little cylindrical batteries. They've got some stuff caked on them, but it's possible that they've still got a bit of charge.\n\nYou pocket the batteries and return your attention to [[the store|Electronics Graveyard]].
"Um, nothin', it's just ... stuck." Moosk's trademark confidence wavers in his voice.\n\n"It's locked, dummy," Amara says. "You forgot to check it an' now Zee's locked in."\n\nYou hear a noise from somewhere behind you, a kind of whistling hiss like the air being let out of a punctured bicycle tire. Something taps against the floor of the store.\n\n"Guys I hear somethin'," you say, panic rising in your voice. "Open the door, will ya?"\n\n"Um," Moosk mutters. The doorknob rattles again, but the door doesn't budge.\n\n[[The noise gets closer.|Panic]]
<<set $time += 1>>\n<<if $match > 0>><<set $match -= 1>><<endif>>\n<<if $match > 0>><<set $lit to true>><<else>><<set $lit to false>><<endif>>\n<<if $lantern is 1>><<set $lantern -= 1>><<endif>><<if $lantern > 1 and $lantern < 6>><<set $lantern -= 1>><<set $lit to true>><<endif>>\n<<if $moose is 1>><<set $moose -= 1>><<endif>><<if $moose > 1 and $moose < 8>><<set $moose -= 1>><<set $lit to true>><<endif>>\n<<if $taplight is 1>><<set $taplight -= 1>><<endif>><<if $taplight > 1 and $taplight < 10>><<set $taplight -= 1>><<set $lit to true>><<endif>>\n<<if $cash is 1>><<set $cash -= 1>><<endif>><<if $cash > 1 and $cash < 8>><<set $cash -= 1>><<set $lit to true>><<endif>>
(function () {\n\t"use strict";\n\tversion.extensions['youtubeAudioMacros'] = {\n\t\tmajor: 2,\n\t\tminor: 1,\n\t\trevision: 0\n\t};\n\tvar ytplayers = {},\n\t\tvideocount = 0,\n\t\tready = false,\n\t\treadyBuffer = {},\n\t\ts = document.createElement("script"),\n\t\tprotocol = location.protocol == "file:" ? "http:" : location.protocol;\n\ts.src = protocol + "//ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject_src.js";\n\ts.onreadystatechange = s.onload = function () {\n\t\tvar re = new RegExp('(?:playbgm|loopbgm) ([^"&?/ ]{11})', "gi"),\n\t\t div = document.getElementById("storeArea").firstChild,\n\t\t done = [],\n\t\t d;\n\t\tfunction newplayer(hash) {\n\t\t\tvar id = "YouTube-" + hash;\n\t\t\t insertElement(document.body, "div", id);\n\t\t\tswfobject.embedSWF(protocol + "//www.youtube.com/apiplayer?enablejsapi=1&playerapiid=" + id, id, "0", "0", "8",\n\t\t\t\tnull, {}, {\n\t\t\t\t\tallowScriptAccess: "always",\n\t\t\t\t\twmode: "transparent",\n\t\t\t\t\tmodestbranding: "1",\n\t\t\t\t\tversion: "3"\n\t\t\t\t}, {\n\t\t\t\t\tid: "ytplayer-" + hash,\n\t\t\t\t});\n\t\t};\n\t\twhile(div) {\n\t\t\tdo {\n\t\t\t\td = re.exec(div.innerHTML);\n\t\t\t\tif(d && done.indexOf(d[1]) == -1) {\n\t\t\t\t\tnewplayer(d[1]);\n\t\t\t\t\tdone.push(d[1]);\n\t\t\t\t}\n\t\t\t} while (d);\n\t\t\tdiv = div.nextSibling;\n\t\t};\n\t};\n\tdocument.head.appendChild(s);\n\twindow.onYTAudioError = function (e) {\n\t\talert("There is a problem with the YouTube background music (" + e + ")" +\n\t\t\t(e == 2 ? ": The video ID (" + hash + ") is probably invalid." :\n\t\t\t\te == 100 ? ": The requested video (" + hash + ") was not found." :\n\t\t\t\te == 101 || e == 150 ? ": Embedding has been disabled for the video (" + hash + ")." : ""));\n\t};\n\twindow.onYouTubePlayerReady = function (e) {\n\t\tvar hash = e.slice(8),\n\t\t\tyt = (ytplayers[hash] = document.getElementById("ytplayer-" + hash));\n\t\tready = true;\n\t\tyt.style.visibility="hidden";\n\t\tyt.addEventListener("onError", "onYTAudioError");\n\t\tyt.mute();\n\t\tyt.loadVideoById(hash, 0);\n\t\tyt.LOAD = true;\n\t\tvideocount += 1;\n\t\twindow["onYTAudioStateChange_" + videocount] = function (newState) {\n\t\t\tif(newState == 1 && yt.LOAD) {\n\t\t\t\tyt.pauseVideo();\n\t\t\t\tyt.unMute();\n\t\t\t\tyt.LOAD = false;\n\t\t\t\twhile(readyBuffer[hash].length > 0) {\n\t\t\t\t\treadyBuffer[hash].shift()(yt);\n\t\t\t\t}\n\t\t\t}\n\t\t\tif(newState == 0 && yt.LOOP) {\n\t\t\t\tyt.playVideo();\n\t\t\t}\n\t\t};\n\t\tyt.addEventListener("onStateChange", "onYTAudioStateChange_" + videocount);\n\t};\n\t["playbgm","loopbgm","stopbgm","pausebgm","unloopbgm"].forEach(function(e) {\n\t\tmacros[e] = {\n\t\thandler: function (e, t, n, r) {\n\t\t\tvar yt, fn;\n\t\t\tif(n[0]) {\n\t\t\t\tyt = ytplayers[n[0]];\n\t\t\t\tswitch(t) {\n\t\t\t\t case "playbgm":\n\t\t\t\t case "loopbgm":\n\t\t\t\t\tfn = function(yt) {\n\t\t\t\t\t\tyt.LOOP = (t == "loopbgm");\n\t\t\t\t\t\tif (n[1]) yt.seekTo(n[1]);\n\t\t\t\t\t\tyt.playVideo();\n\t\t\t\t\t};\n\t\t\t\t\tbreak;\n\t\t\t\t case "stopbgm":\n\t\t\t\t\tfn = function(yt) { yt.stopVideo(); };\n\t\t\t\t\tbreak;\n\t\t\t\t case "pausebgm":\n\t\t\t\t\tfn = function(yt) { yt.stopVideo(); };\n\t\t\t\t\tbreak;\n\t\t\t\t case "unloopbgm":\n\t\t\t\t\tfn = function(yt) { yt.LOOP = false; };\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tif (fn) {\n\t\t\t\t\tif (!yt || yt.LOAD) {\n\t\t\t\t\t\treadyBuffer[n[0]] = readyBuffer[n[0]] || [];\n\t\t\t\t\t\treadyBuffer[n[0]].push(fn);\n\t\t\t\t\t} else fn(yt);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t});\n}());
<<messages>><<if $time > 40>><<win>><<else>><<lightingcheck>><<if $lit>>The waist-high checkout counter is covered in dust and dirt, but the only object on it is an obsolete Point of Sale deskshell from back when they called them 'computers.'\n\nTo the right is some kind of [[Appliance Graveyard]], and there's an [[Electronics Graveyard]] matching it to the left.\nThe gate leading [[Behind the Counter]] is missing, and you can walk back there easily.\n\n<<$matches>> matches remain in the matchbox.\n<<if $match is 1>>The flame of your match is almost out.\n<<endif>><<if $match < 1>>You're not holding a lit match. [[Light one?|Checkout Line][$matches -= 1; $match to 4]]\n<<endif>>[[Wait here|Checkout Line]]<<else>>It is pitch black.\n\nYou are likely to be eaten by the grue.<<if $matches > 0>>\n* [[Light a match|Checkout Line][$matches -= 1; $match to 4]]\n* [[Give Up|Game Over]]<<else>>\n\n[[You're out of matches.|Game Over]]<<endif>><<endif>><<endif>>
An old oil lantern, stuck to the counter with a layer of grime and rust. You lift the grimy glass cover to reveal a clean and apparently dry wick.\n\nThere's no oil in the bottom of the lantern and there doesn't seem to be any spare oil around, but the wick would probably burn dry for a couple of minutes.\n\n<<if $match > 0>>You could light the wick with your match, if you want.\n* [[Light the lamp|Left of the entrance][$lantern -= 1]]\n* [[Leave it alone|Left of the entrance]]<<else>>If you had a lit match, you could ignite the wick, but you don't at the moment, so you [[turn your attention elsewhere.|Left of the entrance]]<<endif>>
<<messages>><<if $time > 40>><<win>><<else>><<lightingcheck>><<if $lit>>You are standing to the left of the front door of the shop. An array of worthless tchochkes litters the shelves nearby, mostly children's toys and thin paper books too moldy to recognize.\n\n<<if $taplight is 10>>There's an ancient, battery-powered [[tap light]] sitting next to a cable-powered desk lamp.<<else>><<if $taplight > 0>>The taplight glows with a dull yellow light, flickering occasionally. It won't last very long, but for now it lights the room.<<else>>The taplight's glow is too dim now to provide useful light.<<endif>><<endif>>\n\nTo the left is the [[Checkout Line]].\nBehind you is a display of [[Hunting Memorabilia]].\n\n<<$matches>> matches remain in the matchbox.\n<<if $match is 1>>The flame of your match is almost out.\n<<endif>><<if $match < 1>>You're not holding a lit match. [[Light one?|Appliance Graveyard][$matches -= 1; $match to 4]]\n<<endif>>[[Wait here|Appliance Graveyard]]<<else>>It is pitch black.\n\nYou are likely to be eaten by the grue.<<if $matches > 0>>\n* [[Light a match|Appliance Graveyard][$matches -= 1; $match to 4]]\n* [[Give Up|Game Over]]<<else>>\n\n[[You're out of matches.|Game Over]]<<endif>><<endif>><<endif>>
You move your body as slowly as you can, but your mind is racing. If this is really a grue, you're in grave danger; you've read that they love to eat human flesh, flaying it from bone with razor sharp teeth.\n\nBut you've heard one other thing about them, and suddenly the image of that little box rises to the surface of your thoughts. Weren't those matches?\n\nYou sidle in the direction you remember seeing the little box, avoiding sudden movements that might trigger the creature's aggression. The noises are close now, the clicking sound of its claws only metres away.\n\nLucky! Your hand comes across the little box wrapped in plastic.\n\n[[You pick up the box and start to unwrap it.|Matches]]
When Moosk returns with his mother and Amara, they break down the door only to find an empty shop.\n\nYour remains are never found.\n\n* [[Start again from lighting the match?|strike the match]]
.revision-span-in {\n\topacity: 0;\n}\n.revision-span:not(.revision-span-out) {\n\ttransition: 1s; -webkit-transition: 1s;\n}\n.revision-span-out {\n\tposition:absolute;\n\topacity: 0;\n}
<<messages>><<if $time > 40>><<win>><<else>><<lightingcheck>><<if $lit>>The sturdy door to the old antique shop stands in front of you, closed. There are no scratches and graffiti on this side, so the door is a pristine slab of gray. You try the knob again. It doesn't turn.\n\nTurning, you can see the whole store from here, long shadows streaking the walls from low light. You can't see the grue, but you can hear it; the hissing and clicking continues from a direction you can't discern.\n\nTo the right is a bunch of [[Hunting Memorabilia]].\n[[Left of the entrance]] is where you found the matches.\nStraight ahead of you is the [[Checkout Line]].\n\n<<$matches>> matches remain in the matchbox.\n<<if $match is 1>>The flame of your match is almost out.\n<<endif>><<if $match < 1>>You're not holding a lit match. [[Light one?|The Entrance][$matches -= 1; $match to 4]]\n<<endif>>[[Wait here|The Entrance]]<<else>>It is pitch black.\n\nYou are likely to be eaten by the grue.<<if $matches > 0>>\n* [[Light a match|The Entrance][$matches -= 1; $match to 4]]\n* [[Give Up|Game Over]]<<else>>\n\n[[You're out of matches.|Game Over]]<<endif>><<endif>><<endif>>
The moose head stares at you, its plastic eyes shining in the low light. You've never met a real moose, but you hear that they were basically the closest thing that Canada had to monsters before the Snowfall.\n\nEeugh, you wish you could close its eyes or something.\n\nThough ...hmm. If it's got real fur, it might burn for a little bit.\n<<if $match > 0>>* [[Set a moose head on fire|Hunting Memorabilia][$moose -= 1]]\n* [[Don't set a moose head on fire for some reason|Hunting Memorabilia]]<<else>>\nIf you had a lit match, you could light that sucker up, but you don't at the moment, so you [[turn your attention elsewhere.|Hunting Memorabilia]]<<endif>>
<<if visited() < 2>>You pull on the painting a little and find that it swings a little bit in your hand. You pull harder, and the rusty hinge squeals as you push the painting away from the wall.\n\nBehind the painting is a safe, just like in the movies!\n\n<<endif>><<if $combo1 is 1 and $combo2 is 4 and $combo3 is 1 and $combo4 is 0>>You try the handle of the safe again and are rewarded for your efforts: it turns! The door swings open with a deep groan.<<if $coin is false>>\n\nAs it opens, a flat disc tumbles out, and you catch it on instinct. It's a disc of heavy yellow metal with a decorative imprint on it ... could it be a real gold coin? You pocket it.<<set $coin to true>><<endif>>\n\nYou peer into the safe. There seem to be stacks of dry paper inside. You remove one and look at it. Seems official. These must be banknotes, the physical currency that New Washington kept as a holdover before cheap polymer chits replaced them.\n\nThey seem to actually be made of wood or cloth fiber. Hmm.\n<<if $match > 0>>You could probably set fire to the cash in the safe to get a bit more light.\n* [[Light that money, watch it burn|little nook][$cash -= 1]]\n* [[Leave it alone|little nook]]<<else>>If you had a lit match, you could set those fat stacks of cash aflame. You don't at the moment, so you [[turn your attention elsewhere.|little nook]]<<endif>><<else>>You try the handle of the safe, but it doesn't move; looks like you need to enter the correct combination on the mechanical dials. \n\nThe painting protected the safe enough that the dials aren't too rusted to turn. You mess with them a little:\n<font size=+3><<cycle c1>><<revise c1 "0">><<set $combo1 to 0>><<becomes>><<revise c1 "1">><<set $combo1 to 1>><<becomes>><<revise c1 "2">><<set $combo1 to 2>><<becomes>><<revise c1 "3">><<set $combo1 to 3>><<becomes>><<revise c1 "4">><<set $combo1 to 4>><<becomes>><<revise c1 "5">><<set $combo1 to 5>><<becomes>><<revise c1 "6">><<set $combo1 to 6>><<becomes>><<revise c1 "7">><<set $combo1 to 7>><<becomes>><<revise c1 "8">><<set $combo1 to 8>><<becomes>><<revise c1 "9">><<set $combo1 to 9>><<endcycle>><<cycle c2>><<revise c2 "0">><<set $combo2 to 0>><<becomes>><<revise c2 "1">><<set $combo2 to 1>><<becomes>><<revise c2 "2">><<set $combo2 to 2>><<becomes>><<revise c2 "3">><<set $combo2 to 3>><<becomes>><<revise c2 "4">><<set $combo2 to 4>><<becomes>><<revise c2 "5">><<set $combo2 to 5>><<becomes>><<revise c2 "6">><<set $combo2 to 6>><<becomes>><<revise c2 "7">><<set $combo2 to 7>><<becomes>><<revise c2 "8">><<set $combo2 to 8>><<becomes>><<revise c2 "9">><<set $combo2 to 9>><<endcycle>><<cycle c3>><<revise c3 "0">><<set $combo3 to 0>><<becomes>><<revise c3 "1">><<set $combo3 to 1>><<becomes>><<revise c3 "2">><<set $combo3 to 2>><<becomes>><<revise c3 "3">><<set $combo3 to 3>><<becomes>><<revise c3 "4">><<set $combo3 to 4>><<becomes>><<revise c3 "5">><<set $combo3 to 5>><<becomes>><<revise c3 "6">><<set $combo3 to 6>><<becomes>><<revise c3 "7">><<set $combo3 to 7>><<becomes>><<revise c3 "8">><<set $combo3 to 8>><<becomes>><<revise c3 "9">><<set $combo3 to 9>><<endcycle>><<cycle c4>><<revise c4 "0">><<set $combo4 to 0>><<becomes>><<revise c4 "1">><<set $combo4 to 1>><<becomes>><<revise c4 "2">><<set $combo4 to 2>><<becomes>><<revise c4 "3">><<set $combo4 to 3>><<becomes>><<revise c4 "4">><<set $combo4 to 4>><<becomes>><<revise c4 "5">><<set $combo4 to 5>><<becomes>><<revise c4 "6">><<set $combo4 to 6>><<becomes>><<revise c4 "7">><<set $combo4 to 7>><<becomes>><<revise c4 "8">><<set $combo4 to 8>><<becomes>><<revise c4 "9">><<set $combo4 to 9>><<endcycle>></font>\n* [[Try the handle again|hinges]]\n* [[Put the painting back for now|little nook]]<<endif>>
<center><font size=+3>''It Is Pitch Black.''</font><<loopbgm e1XMda48mz8>>\n\n\n[[Click here to survive|Taking stock]]</center>
<<if $time is 26>>"Zee!" Moosk calls from outside. "My mom is here! Just hang on a little longer!"\n\n<<endif>><<if $time > 26 and $time < 30>><font size=+2>Wham!</font> The sound of a hammer striking the door rings through the store.\n\n<<endif>>
(function(){version.extensions.replaceMacrosCombined={major:1,minor:1,revision:4};var nullobj={handler:function(){}};function showVer(n,notrans){if(!n){return\n}n.innerHTML="";new Wikifier(n,n.tweecode);n.setAttribute("data-enabled","true");n.style.display="inline";n.classList.remove("revision-span-out");\nif(!notrans){n.classList.add("revision-span-in");if(n.timeout){clearTimeout(n.timeout)}n.timeout=setTimeout(function(){n.classList.remove("revision-span-in");\nn=null},1)}}function hideVer(n,notrans){if(!n){return}n.setAttribute("data-enabled","false");n.classList.remove("revision-span-in");\nif(n.timeout){clearTimeout(n.timeout)}if(!notrans){n.classList.add("revision-span-out");n.timeout=setTimeout(function(){if(n.getAttribute("data-enabled")=="false"){n.classList.remove("revision-span-out");\nn.style.display="none";n.innerHTML=""}n=null},1000)}else{n.style.display="none";n.innerHTML="";n=null}}function tagcontents(b,starttags,desttags,endtags,k){var l=0,c="",tg,a,i;\nfunction tagfound(i,e){for(var j=0;j<e.length;j++){if(a.indexOf("<<"+e[j],i)==i){return e[j]}}}a=b.source.slice(k);for(i=0;\ni<a.length;i++){if(tg=tagfound(i,starttags)){l++}else{if((tg=tagfound(i,desttags))&&l==0){b.nextMatch=k+i+tg.length+4;return[c,tg]\n}else{if(tg=tagfound(i,endtags)){l--;if(l<0){return null}}}}c+=a.charAt(i)}return null}var begintags=[];var endtags=[];function revisionSpanHandler(g,e,f,b){var k=b.source.indexOf(">>",b.matchStart)+2,vsns=[],vtype=e,flen=f.length,becomes,c,cn,m,h,vsn;\nfunction mkspan(vtype){h=insertElement(m,"span",null,"revision-span "+vtype);h.setAttribute("data-enabled",false);h.style.display="none";\nh.tweecode="";return h}if(this.shorthand&&flen){while(f.length>0){vsns.push([f.shift(),(this.flavour=="insert"?"gains":"becomes")])\n}}else{if(this.flavour=="insert"||(this.flavour=="continue"&&this.trigger=="time")){vsns.push(["","becomes"])}}if(this.flavour=="continue"&&flen){b.nextMatch=k+b.source.slice(k).length;\nvsns.push([b.source.slice(k),vtype])}else{becomes=["becomes","gains"];c=tagcontents(b,begintags,becomes.concat(endtags),endtags,k);\nif(c&&endtags.indexOf(c[1])==-1){while(c){vsns.push(c);c=tagcontents(b,begintags,becomes,endtags,b.nextMatch)}c=tagcontents(b,begintags,["end"+e],endtags,b.nextMatch)\n}if(!c){throwError(g,"can't find matching end"+e);return}vsns.push(c);if(this.flavour=="continue"){k=b.nextMatch;b.nextMatch=k+b.source.slice(k).length;\nvsns.push([b.source.slice(k),""])}}if(this.flavour=="remove"){vsns.push(["","becomes"])}cn=0;m=insertElement(g,"span",null,e);\nm.setAttribute("data-flavour",this.flavour);h=mkspan("initial");vsn=vsns.shift();h.tweecode=vsn[0];showVer(h,true);while(vsns.length>0){if(vsn){vtype=vsn[1]\n}vsn=vsns.shift();h=mkspan(vtype);h.tweecode=vsn[0]}if(typeof this.setup=="function"){this.setup(m,g,f)}}function quantity(m){return(m.children.length-1)+(m.getAttribute("data-flavour")=="remove")\n}function revisionSetup(m,g,f){m.className+=" "+f[0].replace(" ","_")}function keySetup(m,g,f){var key=f[0];m.setEventListener("keydown",function l(e){var done=!revise("revise",m);\nif(done){m.removeEventListener("keydown",l)}})}function timeSetup(m,g,f){function cssTimeUnit(s){if(typeof s=="string"){if(s.slice(-2).toLowerCase()=="ms"){return Number(s.slice(0,-2))||0\n}else{if(s.slice(-1).toLowerCase()=="s"){return Number(s.slice(0,-1))*1000||0}}}throwError(g,s+" isn't a CSS time unit");\nreturn 0}var tm=cssTimeUnit(f[0]);setTimeout(function timefn(){var done=!revise("revise",m);if(!done){setTimeout(timefn,tm)\n}},tm)}function hoverSetup(m){var fn,noMouseEnter=(document.head.onmouseenter!==null),m1=m.children[0],m2=m.children[1];if(!m1||!m2){return\n}m1.onmouseenter=function(e){if(this.getAttribute("data-enabled")!="false"){revise("revise",this.parentNode)}};m2.onmouseleave=function(e){if(this.getAttribute("data-enabled")!="false"){revise("revert",this.parentNode)\n}};if(noMouseEnter){fn=function(n){return function(e){if(!event.relatedTarget||(event.relatedTarget!=this&&!(this.compareDocumentPosition(event.relatedTarget)&Node.DOCUMENT_POSITION_CONTAINED_BY))){this[n]()\n}}};m1.onmouseover=fn("onmouseenter");m2.onmouseout=fn("onmouseleave")}m=null}function mouseSetup(m){var evt=(document.head.onmouseenter===null?"onmouseenter":"onmouseover");\nm[evt]=function(){var done=!revise("revise",this);if(done){this[evt]=null}};m=null}function linkSetup(m,g,f){var l=Wikifier.createInternalLink(),p=m.parentNode;\nl.className="internalLink replaceLink";p.insertBefore(l,m);l.insertBefore(m,null);l.onclick=function(){var p,done=false;if(m&&m.parentNode==this){done=!revise("revise",m);\nscrollWindowTo(m)}if(done){this.parentNode.insertBefore(m,this);this.parentNode.removeChild(this)}};l=null}function visitedSetup(m,g,f){var i,done,shv=state.history[0].variables,os="once seen",d=(m.firstChild&&(this.flavour=="insert"?m.firstChild.nextSibling:m.firstChild).tweecode);\nshv[os]=shv[os]||{};if(d&&!shv[os].hasOwnProperty(d)){shv[os][d]=1}else{for(i=shv[os][d];i>0&&!done;i--){done=!revise("revise",m,true)\n}if(shv[os].hasOwnProperty(d)){shv[os][d]+=1}}}[{name:"insert",flavour:"insert",trigger:"link",setup:linkSetup},{name:"timedinsert",flavour:"insert",trigger:"time",setup:timeSetup},{name:"insertion",flavour:"insert",trigger:"revisemacro",setup:revisionSetup},{name:"later",flavour:"insert",trigger:"visited",setup:visitedSetup},{name:"keyinsert",flavour:"insert",trigger:"key",setup:keySetup},{name:"replace",flavour:"replace",trigger:"link",setup:linkSetup},{name:"timedreplace",flavour:"replace",trigger:"time",setup:timeSetup},{name:"mousereplace",flavour:"replace",trigger:"mouse",setup:mouseSetup},{name:"hoverreplace",flavour:"replace",trigger:"hover",setup:hoverSetup},{name:"revision",flavour:"replace",trigger:"revisemacro",setup:revisionSetup},{name:"keyreplace",flavour:"replace",trigger:"key",setup:keySetup},{name:"timedremove",flavour:"remove",trigger:"time",setup:timeSetup},{name:"mouseremove",flavour:"remove",trigger:"mouse",setup:mouseSetup},{name:"hoverremove",flavour:"remove",trigger:"hover",setup:hoverSetup},{name:"removal",flavour:"remove",trigger:"revisemacro",setup:revisionSetup},{name:"once",flavour:"remove",trigger:"visited",setup:visitedSetup},{name:"keyremove",flavour:"remove",trigger:"key",setup:keySetup},{name:"continue",flavour:"continue",trigger:"link",setup:linkSetup},{name:"timedcontinue",flavour:"continue",trigger:"time",setup:timeSetup},{name:"mousecontinue",flavour:"continue",trigger:"mouse",setup:mouseSetup},{name:"keycontinue",flavour:"continue",trigger:"key",setup:keySetup},{name:"cycle",flavour:"cycle",trigger:"revisemacro",setup:revisionSetup},{name:"mousecycle",flavour:"cycle",trigger:"mouse",setup:mouseSetup},{name:"timedcycle",flavour:"cycle",trigger:"time",setup:timeSetup},{name:"keycycle",flavour:"replace",trigger:"key",setup:keySetup}].forEach(function(e){e.handler=revisionSpanHandler;\ne.shorthand=(["link","mouse","hover"].indexOf(e.trigger)>-1);macros[e.name]=e;macros["end"+e.name]=nullobj;begintags.push(e.name);\nendtags.push("end"+e.name)});function insideDepartingSpan(elem){var r=elem.parentNode;while(!r.classList.contains("passage")){if(r.classList.contains("revision-span-out")){return true\n}r=r.parentNode}}function reviseAll(rt,rname){var rall=document.querySelectorAll(".passage [data-flavour]."+rname),ret=false;\nfor(var i=0;i<rall.length;i++){if(!insideDepartingSpan(rall[i])){ret=revise(rt,rall[i])||ret}}return ret}function revise(rt,r,notrans){var ind2,curr,next,ind=-1,rev=(rt=="revert"),rnd=(rt.indexOf("random")>-1),fl=r.getAttribute("data-flavour"),rc=r.childNodes,cyc=(fl=="cycle"),rcl=rc.length-1;\nfunction doToGainerSpans(n,fn){for(var k=n-1;k>=0;k--){if(rc[k+1].classList.contains("gains")){fn(rc[k],notrans)}else{break\n}}}for(var k=0;k<=rcl;k++){if(rc[k].getAttribute("data-enabled")=="true"){ind=k}}if(rev){ind-=1}curr=(ind>=0?rc[ind]:(cyc?rc[rcl]:null));\nind2=ind;if(rnd){ind2=(ind+(Math.floor(Math.random()*rcl)))%rcl}next=((ind2<rcl)?rc[ind2+1]:(cyc?rc[0]:null));var docurr=(rev?showVer:hideVer);\nvar donext=(rev?hideVer:showVer);var currfn=function(){if(!(next&&next.classList.contains("gains"))||rnd){docurr(curr,notrans);\ndoToGainerSpans(ind,docurr,notrans)}};var nextfn=function(){donext(next,notrans);if(rnd){doToGainerSpans(ind2+1,donext,notrans)\n}};if(!rev){currfn();nextfn()}else{nextfn();currfn()}return(cyc?true:(rev?(ind>0):(ind2<rcl-1)))}macros.revert=macros.revise=macros.randomise=macros.randomize={handler:function(a,b,c){var l,rev,rname;\nfunction disableLink(l){l.style.display="none"}function enableLink(l){l.style.display="inline"}function updateLink(l){if(l.className.indexOf("random")>-1){enableLink(l);\nreturn}var rall=document.querySelectorAll(".passage [data-flavour]."+rname),cannext,canprev,i,ind,r,fl;for(i=0;i<rall.length;\ni++){r=rall[i],fl=r.getAttribute("data-flavour");if(insideDepartingSpan(r)){continue}if(fl=="cycle"){cannext=canprev=true\n}else{if(r.firstChild.getAttribute("data-enabled")==!1+""){canprev=true}if(r.lastChild.getAttribute("data-enabled")==!1+""){cannext=true\n}}}var can=(l.classList.contains("revert")?canprev:cannext);(can?enableLink:disableLink)(l)}function toggleText(w){w.classList.toggle(rl+"Enabled");\nw.classList.toggle(rl+"Disabled");w.style.display=((w.style.display=="none")?"inline":"none")}var rl="reviseLink";if(c.length<2){throwError(a,b+" macro needs 2 parameters");\nreturn}rname=c.shift().replace(" ","_");l=Wikifier.createInternalLink(a,null);l.className="internalLink "+rl+" "+rl+"_"+rname+" "+b;\nvar v="";var end=false;var out=false;if(c.length>1&&c[0][0]=="$"){v=c[0].slice(1);c.shift()}switch(c[c.length-1]){case"end":end=true;\nc.pop();break;case"out":out=true;c.pop();break}var h=state.history[0].variables;for(var i=0;i<c.length;i++){var on=(i==Math.max(c.indexOf(h[v]),0));\nvar d=insertElement(null,"span",null,rl+((on)?"En":"Dis")+"abled");if(on){h[v]=c[i];l.setAttribute("data-cycle",i)}else{d.style.display="none"\n}insertText(d,c[i]);l.appendChild(d)}l.onclick=function(){reviseAll(b,rname);var t=this.childNodes,u=this.getAttribute("data-cycle")-0,m=t.length,n,lall,i;\nif((end||out)&&u==m-(end?2:1)){if(end){n=this.removeChild(t[u+1]);n.className=rl+"End";n.style.display="inline";this.parentNode.replaceChild(n,this)\n}else{this.parentNode.removeChild(this);return}}else{toggleText(t[u]);u=(u+1)%m;if(v){h[v]=c[u]}toggleText(t[u]);this.setAttribute("data-cycle",u)\n}lall=document.getElementsByClassName(rl+"_"+rname);for(i=0;i<lall.length;i++){updateLink(lall[i])}};l=null}};macros.mouserevise=macros.hoverrevise={handler:function(a,b,c,d){var endtags=["end"+b],evt=(window.onmouseenter===null?"onmouseenter":"onmouseover"),t=tagcontents(d,[b],endtags,endtags,d.source.indexOf(">>",d.matchStart)+2);\nif(t){var rname=c[0].replace(" ","_"),h=insertElement(a,"span",null,"hoverrevise hoverrevise_"+rname),f=function(){var done=!reviseAll("revise",rname);\nif(b!="hoverrevise"&&done){this[evt]=null}};new Wikifier(h,t[0]);if(b=="hoverrevise"){h.onmouseover=f;h.onmouseout=function(){reviseAll("revert",rname)\n}}else{h[evt]=f}h=null}}};macros.instantrevise={handler:function(a,b,c,d){reviseAll("revise",c[0].replace(" ","_"))}};macros.endmouserevise=nullobj;\nmacros.endhoverrevise=nullobj}());
<<messages>><<if $time > 40>><<win>><<else>><<lightingcheck>><<if $lit>>Clearly the owner of the antique shop considered the merchandize here valuable, as the shelves here stand behind the shattered ruin of a glass window.\n\nJudging by the types of junk, it all seems to be antique electronics<<if $batteries is 2>>, among them a small [[blister pack labeled 'batteries'|some batteries][$batteries -= 1]]<<endif>>. The small devices that remain on the shelves may have worked when the shop was open, but most probably don't now. In addition to a thick layer of dust and grime, many have visible rust or discharge, and some feature badly scratched or cracked screens.\n\nTo the right is the [[Checkout Line]].\nBehind you is [[Left of the entrance]], where you found the matches.\n\n<<$matches>> matches remain in the matchbox.\n<<if $match is 1>>The flame of your match is almost out.\n<<endif>><<if $match < 1>>You're not holding a lit match. [[Light one?|Electronics Graveyard][$matches -= 1; $match to 4]]\n<<endif>>[[Wait here|Electronics Graveyard]]<<else>>It is pitch black.\n\nYou are likely to be eaten by the grue.<<if $matches > 0>>\n* [[Light a match|Electronics Graveyard][$matches -= 1; $match to 4]]\n* [[Give Up|Game Over]]<<else>>\n\n[[You're out of matches.|Game Over]]<<endif>><<endif>><<endif>>
-- and are rewarded with an earsplitting shriek from right next to your head. Your body tenses, anticipating violence, but none comes. The hissing noise seems distant now.\n\nYou slowly open your eyes. A bright, guttering flame burns at the end of the sturdy, thick kitchen match, casting a dim light on the antique shop. You can hear agitated sounds from the periphery; you scared the grue off, but now it's mad.\n\nYou look inside the antique matchbox. Damn, somebody used most of them and there's only 6 left. You've got to keep this place lit until Moosk's mom gets here, or you're a goner.\n\nThink, Zee.\n\n[[You examine your surroundings.|Left of the entrance][$matches to 6; $match to 4; $lantern to 6; $moose to 8; $taplight to 10; $cash to 8; $batteries to 2; $coin to false; $time to 0; combo1 to 0; combo2 to 0; combo3 to 0; combo4 to 0]]
Caelyn Sandel [[@inurashii|http://patreon.com/inurashii]]\nSound by [[White Noise Relaxation|https://www.youtube.com/watch?v=e1XMda48mz8]]\n\nThanks to Leon Arnott for the 'Replace' and 'Youtube' macros.
15 seconds. Here we go.<<timedinsert 1s>>\n\n15.<<endtimedinsert>><<timedinsert 2s>>\n14.<<endtimedinsert>><<timedinsert 3s>>\n13.<<endtimedinsert>><<timedinsert 4s>>\n12.<<endtimedinsert>><<timedinsert 5s>>\n<font size=+3>[[BOOM!|Trapped]]</font><<endtimedinsert>>
"Not For Sale! This historic gun was used to slay the great wyrm Khazyll by the hero Sir Maylon Church in the European Dragon War. Donated October 14th, 2175."\n\nWhoa, an historic firearm. This is probably worth some money. Maybe your family could sell it after you get out of here.\n\n[[Speaking of which.|Hunting Memorabilia]]