diff --git a/TODO b/TODO index 0b7aedd..d96c816 100644 --- a/TODO +++ b/TODO @@ -5,4 +5,6 @@ TODO - can't click outside to advance - favicon one-line eye - hadouken not shoryken -- Open Sans, for consistency??? \ No newline at end of file +- Open Sans, for consistency??? +- intermission D.R.Y. +- get rid of bubbles off screen, for optimization \ No newline at end of file diff --git a/index.html b/index.html index 8fb7bda..13b22fb 100644 --- a/index.html +++ b/index.html @@ -292,6 +292,9 @@ + + + diff --git a/scenes/act1.md b/scenes/act1.md index 5bcc017..fb03fe8 100644 --- a/scenes/act1.md +++ b/scenes/act1.md @@ -10,7 +10,7 @@ n: _YOU_ ARE THE ANXIETY `hong({mouth:"0_neutral", eyes:"0_annoyed"})` -h: Oh good, I was hoping to *not* eat in peace today. +h: Oh good, my wolf's back. Faaaaantastic. `hong({eyes:"0_neutral"})` @@ -26,13 +26,15 @@ n: QUICK, WARN THEM! `Game.OVERRIDE_TEXT_SPEED = 1.25;` +b: Human! Listen, we're in danger! The danger is... + n4: (LET _YOUR_ ANXIETY COME OUT TO PLAY! PICK WHAT _YOUR_ FEAR WOULD MOST LIKELY SAY TO YOU) -[You're eating alone for lunch! Again!](#act1a_alone) +[We're eating alone for lunch! Again!](#act1a_alone) -[You're not productive while eating!](#act1a_productive) +[We're not productive while eating!](#act1a_productive) -[That white bread's bad for you!](#act1a_bread) +[That white bread's bad for us!](#act1a_bread) # act1a_alone @@ -54,7 +56,7 @@ h: Um, thanks for citing your sources but-- `bb({body:"fear", mouth:"normal", eyes:"fear"})` -b: Which means if you don't hang out with someone *right now* you're gonna- +b: Which means if we don't hang out with someone *right now* we're gonna- `bb({body:"panic"})` @@ -88,21 +90,15 @@ bb({mouth:"normal", eyes:"fear"}); Game.OVERRIDE_TEXT_SPEED = 1.5; ``` -b: If you're not productive you'll become a penniless parasite and your parents will say +b: If we're not contributing to the body of society then we're a parasite! -`bb({mouth:"small", eyes:"narrow"})` - -b: “you have brought dishonor to our family, now we have to all commit seppuku” +b: The society-body will go to the society-doctor to get medication to kill their society-parasites and then we'll-- ``` -bb({body:"fear", mouth:"normal", eyes:"fear"}); +bb({body:"panic", mouth:"normal", eyes:"fear"}); Game.OVERRIDE_TEXT_SPEED = 1.5; ``` -b: and then you'll- - -`bb({body:"panic"})` - b: DIEEEEEEEEEEEEEEEEEEE ``` @@ -114,7 +110,7 @@ publish("hp_show"); (...2500) -`_.seppuku = true` +`_.parasite = true` n: YOU USED *FEAR OF BEING A BAD PERSON* @@ -131,7 +127,7 @@ bb({body:"fear", mouth:"normal", eyes:"fear"}); Game.OVERRIDE_TEXT_SPEED = 1.5; ``` -b: Processed wheat will spike your blood sugar so they'll have to amputate all your limbs and then you'll- +b: Processed wheat will spike our blood sugar so they'll have to amputate all our limbs and then we'll- `bb({body:"panic"})` @@ -158,13 +154,15 @@ n: IT'S SUPER EFFECTIVE `bb({mouth:"smile", eyes:"smile"});` -b: I am best protector! +b: See, human? I am your loyal guard-wolf! -n: BUT YOU'RE NOT DONE SAVING YOUR HUMAN YET +`bb({body:"point_heart", eyes:"pretty"});` -n: GET YOUR HUMAN'S ENERGY BAR EMPTY +b: I protect. I attack. But most importantly, I shall always have your back. -n: TO PROTECT YOUR HUMAN'S PHYSICAL + SOCIAL + MORAL NEEDS, YOU CAN USE: +n: GET YOUR HUMAN'S ENERGY BAR TO ZERO + +n: TO PROTECT THEIR PHYSICAL + SOCIAL + MORAL NEEDS, YOU CAN USE: n: FEAR OF *BEING HARMED* #harm# @@ -174,13 +172,14 @@ n: AND FEAR OF *BEING A BAD PERSON* #bad# `Game.OVERRIDE_TEXT_SPEED = 1.25;` -n4: (PRO-TIP: PLAY THE CHOICES THAT PERSONALLY HIT YOUR DEEPEST, DARKEST FEARS~) +n4: (PRO-TIP: PLAY THE CHOICES THAT PERSONALLY HIT YOUR DEEPEST, DARKEST FEARS!~) h: ... ``` hong({body:"putaway"}); sfx("rustle"); +bb({body:"normal", mouth:"normal", eyes:"normal"}); ``` (...1000) @@ -224,7 +223,7 @@ b: Doesn't that weirdo throw a party *every* weekend? `bb({eyes:"uncertain_right"});` -b: Must be some underlying neurosis there. +b: They must be deeply messed up on the inside! `hong({eyes:"surprise"});` @@ -234,11 +233,11 @@ h: Also, I got an invite? b: Well then! -[Say yes, or you'll die from loneliness](#act1c_loner) +[Say yes, or we'll die from loneliness](#act1c_loner) [Say no, it's probably full of lethal drugs](#act1c_drugs) -[Ignore it, you just make parties sad](#act1c_sad) +[Ignore it, we just make parties sad](#act1c_sad) # act1c_loner @@ -251,7 +250,11 @@ b: Fifteen cigarettes a day, human. Fifteen. {{/if}} {{if !_.fifteencigs}} -b: Then no one will show up at your funeral, they'll dump your ashes into the ocean, and you become WHALE POOP. +b: Then no one will show up at our funeral, they'll dump our ashes into the ocean, we get eaten by a whale, +{{/if}} + +{{if !_.fifteencigs}} +b: and we become WHALE POOP. {{/if}} {{if !_.fifteencigs}} `_.whalepoop = true` {{/if}} @@ -268,11 +271,11 @@ attack("10p", "alone"); `bb({eyes:"normal"});` {{if !_.fifteencigs}} -b: So yeah you should go to that party. +b: So yeah we should go to that party! {{/if}} -{{if _.seppuku}} -b: Just bring your laptop so you can do some work. +{{if _.parasite}} +b: Just bring the laptop so we can do some work. {{/if}} {{if _.whitebread}} @@ -286,7 +289,7 @@ h: GOD. If it'll make you shut up, fine. h: I'll say yes. {{if _.whalepoop}} -b: Whale poop, human. Whale poop. +b: Whale poop, human! Whale poop! {{/if}} `_.partyinvite="yes"` @@ -306,11 +309,11 @@ b: or even worse... WHITE BREAD {{/if}} {{if _.whitebread}} -b: You'll overdose on so much meth and white bread they won't be able to fit your fat corpse into the cremation furnace! +b: We'll overdose on so much meth and white bread they won't be able to fit our fat corpse into the cremation furnace! {{/if}} {{if !_.whitebread}} -b: You'll overdose on so many drugs the undertaker will wonder how your body was *already* pre-embalmed! +b: We'll overdose on so many drugs the undertaker will wonder how our body was *already* pre-embalmed! {{/if}} ``` @@ -320,8 +323,8 @@ attack("10p", "harm"); (...2500) -{{if _.seppuku}} -b: Besides, can't party, you need to do work so your parents don't commit seppuku. +{{if _.parasite}} +b: Besides, can't party, we need to do work or we're a terrible parasite! {{/if}} `hong({mouth:"anger", eyes:"anger"});` @@ -341,15 +344,15 @@ h: I'll say no. `Game.OVERRIDE_TEXT_SPEED = 1.5;` {{if _.fifteencigs}} -b: All you ever do is cry in a corner about how loneliness is as deadly as 15 cigarettes a day. +b: All we ever do is cry in a corner about how loneliness is as deadly as 15 cigarettes a day. {{/if}} -{{if _.seppuku}} -b: All you ever do at parties is worry about how you should be doing work instead. +{{if _.parasite}} +b: All we ever do at parties is worry about how we should be doing work instead. {{/if}} {{if _.whitebread}} -b: All you ever do is worry about how the unhealthy food options are going to kill you. +b: All we ever do is worry about how the unhealthy food options are going to kill us. {{/if}} ``` @@ -363,13 +366,13 @@ h: gee i wonder why `Game.OVERRIDE_TEXT_SPEED = 1.5;` -b: So if you go you'll make them feel bad, but if you reject their invite you'll also make them feel bad! +b: So if we go we'll make them feel bad, but if we reject their invite we'll also make them feel bad! `bb({body:"fear", eyes:"fear"});` `Game.OVERRIDE_TEXT_SPEED = 1.5;` -b: ALL YOU DO IS MAKE PEOPLE FEEL BAD, SO YOU SHOULD FEEL BAD +b: ALL WE DO IS MAKE PEOPLE FEEL BAD, SO WE SHOULD FEEL BAD ``` hong({mouth:"shock", eyes:"shock"}); @@ -405,7 +408,7 @@ h: What's new on Twitter? [Oh no, look at that horrible news story!](#act1d_news) -[Oh no, is that tweet secretly about *you?*](#act1d_subtweet) +[Oh no, is that tweet secretly about *us?*](#act1d_subtweet) [hey, a GIF of a cat drinking milk](#act1d_milk) @@ -474,13 +477,13 @@ h: It's probably not? `bb({eyes:"narrow", mouth:"small"});` -b: but what if they're all talking behind your back +b: but what if they're all talking behind our back h: They're n-- `bb({body:"fear", eyes:"fear", mouth:"normal"});` -b: IN FRONT OF YOUR BACK +b: IN FRONT OF OUR BACK `hong({eyes:"sad", mouth:"sad"});` @@ -531,11 +534,11 @@ h: Heh ya that's cute, just retweeted it, I thi-- ``` hong({mouth:"shock", eyes:"shock"}); -bb({body:"scream_anger"}); +bb({body:"scream"}); Game.OVERRIDE_TEXT_SPEED = 1.8; ``` -b: CATS CAN'T DIGEST MILK AND YOU'RE A TERRIBLE PERSON FOR ENJOYING ANIMAL ABUSE +b: CATS CAN'T DIGEST MILK AND WE'RE TERRIBLE PEOPLE FOR ENJOYING ANIMAL ABUSE ``` bb({body:"normal", mouth:"normal", eyes:"narrow"}); @@ -581,16 +584,16 @@ hong({mouth:"neutral", eyes:"neutral"}); bb({mouth:"normal", eyes:"normal"}); ``` -[Change your answer? You unreliable jerk!](#act1e_yes_dontchange) +[Change our answer? Like a jerk?!](#act1e_yes_dontchange) -[Change your answer! It's too crowded!](#act1e_yes_changetono) +[Change our answer! It's too crowded!](#act1e_yes_changetono) {{if _.subtweet}} -[yeah they were totally subtweeting you](#act1e_ignore_subtweet) +[yeah they were totally subtweeting us](#act1e_ignore_subtweet) {{/if}} {{if _.badnews}} -[wait you retweeted that story without fact-checking](#act1e_ignore_factcheck) +[wait we retweeted without fact-checking](#act1e_ignore_factcheck) {{/if}} {{if (!_.subtweet && !_.badnews)}} @@ -604,7 +607,7 @@ bb({eyes:"anger"}); Game.OVERRIDE_TEXT_SPEED = 1.5; ``` -b: They were counting on you to come and now you're betraying their trust? Do you wanna die alone?! +b: They were counting on us to come and now we're betraying their trust? Do you wanna die alone?! {{if _.fifteencigs}} b: FIFTEEN. CIGARETTES. @@ -653,7 +656,7 @@ hong({mouth:"shock"}); Game.OVERRIDE_TEXT_SPEED = 1.5; ``` -b: DO YOU WANT THAT TO HAPPEN TO YOU- +b: DO YOU WANT THAT TO HAPPEN TO US- ``` bb({body:"scream"}); @@ -690,16 +693,16 @@ h: Maybe I shouldn't have said no to the invite? `bb({mouth:"normal", eyes:"normal"});` -[Change your answer? You unreliable jerk!](#act1e_no_dontchange) +[Change our answer? Like a jerk?!](#act1e_no_dontchange) -[Change your answer! Don't die alone!](#act1e_no_changetoyes) +[Change our answer! Don't die alone!](#act1e_no_changetoyes) {{if _.subtweet}} -[yeah they were totally subtweeting you](#act1e_ignore_subtweet) +[yeah they were totally subtweeting us](#act1e_ignore_subtweet) {{/if}} {{if _.badnews}} -[wait you retweeted that story without fact-checking](#act1e_ignore_factcheck) +[wait we retweeted without fact-checking](#act1e_ignore_factcheck) {{/if}} {{if (!_.subtweet && !_.badnews)}} @@ -710,7 +713,9 @@ h: Maybe I shouldn't have said no to the invite? `bb({eyes:"anger"})` -b: Everybody was counting on you! ...to leave them alone and let them have a nice party without you, you horrible disgusting {{if _.whitebread}}white-bread-munching{{/if}} cree-- +b: Everybody was counting on us! + +b: ...to leave them alone and let them have a nice party without a horrible disgusting {{if _.whitebread}}white-bread-munching{{/if}} creep like u-- ``` @@ -737,7 +742,7 @@ bb({body:"fear", eyes:"fear", mouth:"normal"}); Game.OVERRIDE_TEXT_SPEED = 1.5; ``` -b: Chronic loneliness increases your cortisol as well as risk for cardiovascular disease and stroke! +b: Chronic loneliness increases our cortisol levels as well as risk for cardiovascular disease and stroke! ``` hong({mouth:"shock", eyes:"shock"}); @@ -767,14 +772,14 @@ bb({eyes:"fear", mouth:"small"}); Game.OVERRIDE_TEXT_SPEED = 1.5; ``` -b: All your problematic tweets have come back to roost! +b: All our problematic tweets have come back to roost! ``` bb({body:"fear", eyes:"fear", mouth:"normal"}); Game.OVERRIDE_TEXT_SPEED = 1.7; ``` -b: Say *one* thing wrong and all your so-called friends will drag you through the street for internet points! +b: We're gonna get called out and cancelled and dragged with a rope on horseback down the information superhighway! ``` hong({mouth:"shock", eyes:"shock"}); @@ -800,14 +805,14 @@ bb({eyes:"anger"}); Game.OVERRIDE_TEXT_SPEED = 1.5; ``` -b: You're spreading disinformation! +b: We're spreading disinformation! We're destroying trust in a free press! ``` bb({body:"scream_anger"}); Game.OVERRIDE_TEXT_SPEED = 1.5; ``` -b: People like you are the reason fascism will arise from the rubble of democracy! +b: We're the reason fascism will arise from the rubble of democracy! ``` bb({body:"normal", eyes:"anger"}); @@ -820,6 +825,7 @@ attack("10p", "bad"); ``` hong({mouth:"anger", eyes:"anger"}); Game.OVERRIDE_TEXT_SPEED = 1.5; +_.factcheck = true; ``` h: Why are you like this?! @@ -869,7 +875,7 @@ h: Maybe I shouldn't have ignored the invite? `bb({mouth:"normal", eyes:"normal"});` -[Keep ignoring, you're still a party pooper](#act1e_ignore_continue) +[Keep ignoring, we're still party poopers](#act1e_ignore_continue) [Actually, say yes.](#act1e_ignore_changetoyes) @@ -883,7 +889,7 @@ h: It's kinda rude to keep ignoring them though, no? `bb({eyes:"normal_right"});` -b: Well other people always ignore *you* so +b: Well other people always ignore *us* so ``` hong({mouth:"shock", eyes:"shock"}); @@ -904,7 +910,7 @@ b: so let's just call it even. h: You're... letting me have fun? -b: Well, I mean, loneliness *can* kill you. +b: Well, I mean, loneliness *can* kill us. `hong({eyes:"neutral", mouth:"neutral"});` @@ -960,9 +966,9 @@ b: DANGER DANGER DANGER DANGER DANGER DANGER `bb({body:"fear", eyes:"fear", mouth:"normal"})` -[You're being *used* by other people.](#act1f_used_by_others) +[We're being *used* by other people.](#act1f_used_by_others) -[You're just *using* other people.](#act1f_using_others) +[We're just *using* other people.](#act1f_using_others) [YOUR MATCH IS A SERIAL KILLER](#act1f_killer) @@ -981,11 +987,11 @@ b: in *here*. (...3000) ``` -bb({body:"normal", mouth:"normal", eyes:"normal"}); +bb({body:"normal", mouth:"normal", eyes:"fear"}); Game.OVERRIDE_TEXT_SPEED = 1.5; ``` -b: Point is you're gonna die alone +b: The point is WE'RE GOING TO DIE ALONE ``` hong({mouth:"shock", eyes:"shock"}); @@ -1071,7 +1077,7 @@ bb({body:"normal", mouth:"normal", eyes:"normal"}); Game.OVERRIDE_TEXT_SPEED = 1.5; ``` -b: Point is you're a manipulative creep +b: The point is we're a manipulative creep. ``` hong({mouth:"shock", eyes:"shock"}); @@ -1092,15 +1098,15 @@ attack("30p", "bad"); b: They'll trap you in a well and force-feed you white bread to fatten you up so they can wear your skin like a suit! {{/if}} -{{if _.seppuku}} -b: They'll bludgeon you with a pomodoro timer and slice your belly open and say "this is what slackers get, SEPUKKU'D" +{{if _.parasite}} +b: They'll bludgeon you with a pomodoro timer and say "YOU SHOULDA BEEN MORE PRODUCTIVE YOU PARASITE" {{/if}} -{{if !_.whitebread && !_.seppuku}} +{{if !_.whitebread && !_.parasite}} b: They'll tear your flesh to gory confetti, turn your entrails into streamers, and mix your blood into a punch bowl! {{/if}} -{{if !_.whitebread && !_.seppuku}} +{{if !_.whitebread && !_.parasite}} b: How's THAT for a party invite?! {{/if}} @@ -1135,12 +1141,12 @@ h: i'm so sick of this game. `Game.OVERRIDE_TEXT_SPEED = 1.5;` h: -{{if _.fifteencigs}}"loneliness will kill you"... {{/if}} -{{if _.seppuku}}"be productive or you'll be dishonored"... {{/if}} -{{if _.whitebread}}"don't eat that, it'll kill you"... {{/if}} -{{if _.subtweet}}"they're talking behind your back"... {{/if}} +{{if _.fifteencigs}}"loneliness will kill us"... {{/if}} +{{if _.parasite}}"be productive or we're a parasite"... {{/if}} +{{if _.whitebread}}"don't eat that, it'll kill us"... {{/if}} +{{if _.subtweet}}"they're talking behind our back"... {{/if}} {{if _.badnews}}"the world is burning"... {{/if}} -{{if _.hookuphole}}"you'll die alone"... {{/if}} +{{if _.hookuphole}}"we'll die alone"... {{/if}} {{if _.serialkiller}}"they're a serial killer"... {{/if}} {{if _.catmilk}}"cats can't digest milk"... {{/if}} {{if _.pokemon}}a crappy parody song... {{/if}} @@ -1161,7 +1167,7 @@ b: It'll be okay. `bb({body:"point_heart", eyes:"look_sad_smile", mouth:"smile"});` -b: As your loyal protector, I'll always keep an eye out for danger, and do my best to keep you safe. +b: As your loyal guard-wolf, I'll always keep an eye out for danger, and do my best to keep you safe. `bb({body:"normal", eyes:"look_sad", mouth:"smile"});` @@ -1194,9 +1200,9 @@ b: Speaking of parties, about this weekend's invite. Here's my FINAL decision: `bb({eyes:"normal"});` -[You should go.](#act1g_go) `Game.OVERRIDE_CHOICE_LINE=true` +[We should go.](#act1g_go) `Game.OVERRIDE_CHOICE_LINE=true` -[You should not go.](#act1g_dont) `Game.OVERRIDE_CHOICE_LINE=true` +[We should not go.](#act1g_dont) `Game.OVERRIDE_CHOICE_LINE=true` # act1g_go @@ -1212,7 +1218,7 @@ b: Speaking of parties, about this weekend's invite. Here's my FINAL decision: # act1h -b: You sh-- +b: We sh-- ``` bb({eyes:"wat", mouth:"small"}); @@ -1297,11 +1303,11 @@ b: .................. `bb({mouth:"normal"});` -[AHHHHH WE'RE GONNA DIE](#act1h_death) `Game.OVERRIDE_CHOICE_LINE = true;` +[AHHHH WE'RE GONNA DIE](#act1h_death) `Game.OVERRIDE_CHOICE_LINE = true;` -[AHHHHH EVERYONE HATES US](#act1h_loneliness) `Game.OVERRIDE_CHOICE_LINE = true;` +[AHHHH EVERYONE HATES US](#act1h_loneliness) `Game.OVERRIDE_CHOICE_LINE = true;` -[AHHHHH WE'RE HORRIBLE PEOPLE](#act1h_worthless) `Game.OVERRIDE_CHOICE_LINE = true;` +[AHHHH WE'RE HORRIBLE PEOPLE](#act1h_worthless) `Game.OVERRIDE_CHOICE_LINE = true;` # act1h_death @@ -1310,7 +1316,7 @@ bb({body:"fear"}); Game.OVERRIDE_TEXT_SPEED = 3; ``` -b: AHHHHH WE'RE GONNA DIE AAAAAAHHHHHHH +b: AHHHH WE'RE GONNA DIE AAAAAAHHHHHHH ``` hong({body:"3_defeated1"}); @@ -1328,7 +1334,7 @@ bb({body:"fear"}); Game.OVERRIDE_TEXT_SPEED = 3; ``` -b: AHHHHH EVERYONE HATES US AAAAAAHHHHHHH +b: AHHHH EVERYONE HATES US AAAAAAHHHHHHH ``` hong({body:"3_defeated1"}); @@ -1346,7 +1352,7 @@ bb({body:"fear"}); Game.OVERRIDE_TEXT_SPEED = 3; ``` -b: AHHHHH WE'RE HORRIBLE PEOPLE AAAAAAHHHHHHH +b: AHHHH WE'RE HORRIBLE PEOPLE AAAAAAHHHHHHH ``` hong({body:"3_defeated1"}); @@ -1368,7 +1374,7 @@ n: CONGRATULATIONS (...500) -n: YOU'VE SUCCESSFULLY PROTECTED YOUR HUMAN'S NEEDS FOR SAFETY, LOVE, AND GOODNESS +n: YOU'VE SUCCESSFULLY PROTECTED YOUR HUMAN'S PHYSICAL + SOCIAL + MORAL NEEDS n: WHY, LOOK HOW GRATEFUL THEY ARE! @@ -1394,13 +1400,15 @@ n: *FINISH THEM* b: Your phone was giving you a panic attack! +b: Zuckerberg and Co are hijacking your mental health for venture capitalist money! + ``` bb({body:"fear", eyes:"fear"}); hong({body:"3_defeated2"}); Game.OVERRIDE_TEXT_SPEED = 1.5; ``` -b: Punish it! Destroy your phone! Kill it! +b: Punish your phone! Destroy it! Kill it! ``` Game.OVERRIDE_TEXT_SPEED = 2.5; diff --git a/scenes/act1_end.md b/scenes/act1_end.md deleted file mode 100644 index b14397d..0000000 --- a/scenes/act1_end.md +++ /dev/null @@ -1,32 +0,0 @@ -# act1_end - -`SceneSetup.act1_end()` - -(...1000) - -`sfx("dramatic");` - -(...1000) - -n: FEARS YOU USED: - -n: #harm# *BEING HARMED:* {{_.attack_harm}} - -n: #alone# *BEING UNLOVED:* {{_.attack_alone}} - -n: #bad# *BEING A BAD PERSON:* {{_.attack_bad}} - -(...3000) - -`Game.clearText()` - -(...2000) - -``` -publish("TO_BE_CONTINUED"); -sfx("fart"); -``` - -(...2500) - -`publish("END_OF_DEMO")` \ No newline at end of file diff --git a/scenes/act2.md b/scenes/act2.md index 9998e45..6f9f092 100644 --- a/scenes/act2.md +++ b/scenes/act2.md @@ -2,9 +2,132 @@ `SceneSetup.act2();` -n: party words party words party words +{{if _.badnews && !_.factcheck}} +(#act2-preamble-news1) +{{/if}} -n: // callback: retweet news story, or subtweet, or Tinder serial killer (or: fallback - anxiety in general) +{{if _.badnews && _.factcheck}} +(#act2-preamble-news2) +{{/if}} + +{{if _.catmilk}} +(#act2-preamble-cat) +{{/if}} + +(#act2-preamble-tinder) + + +# act2-preamble-news1 + +a: But did you *see* that "news story" going viral? + +h2: h-hi... + +s: God I hate the news. It's all sensationalism and clickbait. + +h2: n... nice party... + +a: True, but they're just following incentives. The *real* problem is people who click the clickbait. + +a: Who would retweet a terrible news story, and make all their friends feel bad? + +s: Ugh, I know right? + +(#act2-preamble-end) + + +# act2-preamble-news2 + +a: But did you *see* that "news story" going viral? + +h2: h-hi... + +s: Yeah, totally fake. Who would fall for that and retweet it? + +h2: n... nice party... + +a: Seriously dude. Like, hello, open up Google and factcheck first? + +s: Ugh, I know right? + +(#act2-preamble-end) + + +# act2-preamble-cat + +a: Like I was saying man, the Meme Industrial Complex exploits cats. + +h2: h-hi... + +s: Do elaborate on this thesis. + +h2: n... nice party... + +a: Well, I saw someone retweet a GIF of a cat drinking milk yesterday. + +a: They can't digest that shit! Who would retweet *animal abuse* like that? + +s: Ugh, I know right? + +(#act2-preamble-end) + + +# act2-preamble-tinder + +a: So yeah they never replied back! + +h2: h-hi... + +s: Even though you both matched each other on Tinder? + +h2: n... nice party... + +{{if _.serialkiller}} +(#act2-preamble-serialkiller) +{{/if}} + +{{if _.hookuphole}} +(#act2-preamble-hookuphole) +{{/if}} + +{{if _.pokemon}} +(#act2-preamble-pokemon) +{{/if}} + +# act2-preamble-serialkiller + +a: Yeah I dunno! What, did they think I was a *serial killer* or something? So paranoid. + +s: Ugh, I know right? + +(#act2-preamble-end) + + +# act2-preamble-hookuphole + +a: Yeah I dunno! Maybe they think hookups can't fill the hole in their heart? + +a: Stop being such a prude! Open your mind, then your legs! + +s: Ugh, I know right? + +(#act2-preamble-end) + + +# act2-preamble-pokemon + +a: Yeah I dunno! They weren't that hot, but they would have been a nice catch! + +a: Gotta catch 'em all! + +a: But, nope, they just had to tease my genitals like that. + +s: Ugh, I know right? + +(#act2-preamble-end) + + +# act2-preamble-end ``` Game.clearText(); @@ -23,7 +146,7 @@ n: ROUND TWO: *FIGHT!* [Oh no they all hate us!](#act2a_social) -[Ogling the host? Like a pervert?](#act2a_perv) +[Oh no the redhead is hot!](#act2a_perv) [Hey, let's talk about the meaning of life.](#act2a_meaning) @@ -35,21 +158,27 @@ b: We're killing the good vibes! We're committing first-degree vibe-murder! b: Human, we have to leave *now* before-- -`_.a2_first_danger = 'social'` +``` +_.a2_first_danger = 'social'; +_.a2_attack_1 = "alone"; +``` (#act2b) # act2a_perv -`//b: // pokemon?` +b: And we were totally ogling them! -b: They're more attractive than you, which means if we even *look* at them, then-- +b: They're more attractive than us, which means if we even *look* at them, then-- b: WE'RE CREEPS -b: We're creepy, crappy, bad bad bad terrible terrible perv-- +b: We're creepy, evil, bad bad bad terrible terrible perv-- -`_.a2_first_danger = 'perv'` +``` +_.a2_first_danger = 'perv'; +_.a2_attack_1 = "bad"; +``` (#act2b) @@ -63,7 +192,10 @@ b: Everything dies anyway. b: Humanity dies, the sun dies, the whole universe dies, what the heck are we supposed to-- -`_.a2_first_danger = 'meaning'` +``` +_.a2_first_danger = 'meaning'; +_.a2_attack_1 = "bad"; +``` (#act2b) @@ -77,14 +209,16 @@ b: ... b: *GASP* -[I must warn you *LOUDER!*](#act2b_louder) +b: I MUST WARN YOU... + +[*LOUDER!*](#act2b_louder) {{if _.a2_first_danger=="social"}} -[I must warn you about a *different* social danger!](#act2b_different_social) +[About a *different* social danger!](#act2b_different_social) {{/if}} {{if _.a2_first_danger=="perv" || _.a2_first_danger=="meaning"}} -[I must warn you about a *different* moral danger!](#act2b_different_moral) +[About a *different* moral danger!](#act2b_different_moral) {{/if}} [You're ignoring danger! That's dangerous!](#act2b_ignore) @@ -113,7 +247,10 @@ b: You'll create a deadly outbreak of SAD LUMP SYNDROME b: We need to get out of here and quarantine ourselves forever in a small room with Netflix and food delivery! -`_.a2_second_danger = 'netflix'` +``` +_.a2_second_danger = 'netflix'; +_.a2_attack_2 = "alone"; +``` (#act2c) @@ -125,7 +262,10 @@ b: Creep Law, Section 74.5: (1) Any Person who checks out (a) that sweet ass (b) b: "A BIG DISGUSTING TRASH PERVERT" -`_.a2_second_danger = 'law'` +``` +_.a2_second_danger = 'law'; +_.a2_attack_2 = "bad"; +``` (#act2c) @@ -143,7 +283,10 @@ b: which was used in World War I to KILL MILLIONS OF PEOPLE b: IT'S THE BUTTERFLY EFFECT, HUMAN! HOW MANY PEOPLE ARE YOU ACCIDENTALLY KILLING RIGHT NOW -`_.a2_second_danger = 'butterfly'` +``` +_.a2_second_danger = 'butterfly'; +_.a2_attack_2 = "bad"; +``` (#act2c) @@ -159,7 +302,10 @@ b: A shallow life with shallow friends who only know the shallow you! b: Human, we need to run away from these dopamine-zombies before they turn us into one of them! -`_.a2_second_danger = 'zombies'` +``` +_.a2_second_danger = 'zombies'; +_.a2_attack_2 = "alone"; +``` (#act2c) @@ -175,7 +321,10 @@ b: WE'RE DOING NOTHING. b: BY PARTYING, WE'RE HELPING *HITLER*. -`_.a2_second_danger = 'hitler'` +``` +_.a2_second_danger = 'hitler'; +_.a2_attack_2 = "bad"; +``` (#act2c) @@ -189,7 +338,10 @@ b: You won't even smell the poison! You'll just get sleepy and then you'll-- b: DIEEEEEEEEEEEEEEEEEE -`_.a2_second_danger = 'ignore'` +``` +_.a2_second_danger = 'ignore'; +_.a2_attack_2 = "harm"; +``` (#act2c) @@ -201,20 +353,22 @@ b: ... b: Oh thank goodness human, I think you can hear me again! +b: I SHALL WARN YOU... + {{if _.a2_first_choice=="louder"}} -[I'll warn you *EVEN LOUDER!*](#act2c_louder) +[*EVEN LOUDER!*](#act2c_louder) {{/if}} {{if _.a2_first_choice!="louder"}} -[I'll warn you *LOUDER!*](#act2c_louder) +[*LOUDER!*](#act2c_louder) {{/if}} {{if _.a2_first_danger=="social"}} -[I'll warn you about *another* social danger!](#act2c_different_social) +[About *another* social danger!](#act2c_different_social) {{/if}} {{if _.a2_first_danger=="perv" || _.a2_first_danger=="meaning"}} -[I'll warn you about *another* moral danger!](#act2c_different_moral) +[About *another* moral danger!](#act2c_different_moral) {{/if}} [Did you check that punch before drinking?](#act2c_punch) @@ -253,33 +407,42 @@ b: We need to move to the Canadian Yukon territories, and have our food delivere b: And then they'd have to sterilize the drone to rid it of our SAD LUMP GERMS -`_.a2_first_attack = "alone"` +``` +_.a2_first_attack = "alone"; +_.a2_attack_3 = "alone"; +``` (#act2d) # act2c_louder_law -b: The BIG DISGUSTING TRASH PERVERT shall be sentenced to 48 hours in one of those medieval public-humiliation devices +b: The BIG DISGUSTING TRASH PERVERT shall be sentenced to 72 hours in one of those medieval public-humiliation devices b: unless they're actually *into* that sort of thing -b: in which case that proves them being a BIG DISGUSTING TRASH PERVERT +b: in which case that further proves them being a BIG DISGUSTING TRASH PERVERT -`_.a2_first_attack = "bad"` +``` +_.a2_first_attack = "bad"; +_.a2_attack_3 = "bad"; +``` (#act2d) # act2c_louder_butterfly -b: BUTTERFLY EFFECT! Did you drive to this party in your fossil-fuel car? +b: BUTTERFLY EFFECT! You're using a non-biodegradable plastic cup? -b: BAM, ONE KID DROWNED IN FLORIDA. +b: BAM, A LANDFILL LEAKS POISON AND KILLS A KID b: Remember when you said that mean thing to that stranger online? b: BAM, THEY'RE PROBABLY SUICIDED BY NOW -`_.a2_first_attack = "bad"` +``` +_.a2_first_attack = "bad"; +_.a2_attack_3 = "bad"; +``` (#act2d) @@ -291,7 +454,10 @@ b: LIIIIIKES. LIIIIIIIIIIKES. b: And they'll bite you and turn you into a brainless bro and/or thoughtless thot! -`_.a2_first_attack = "bad"` +``` +_.a2_first_attack = "bad"; +_.a2_attack_3 = "bad"; +``` (#act2d) @@ -301,11 +467,14 @@ b: THE NAZIS ARE GOOSE-STEPPING BACK ON THE STREETS RIGHT NOW b: And they're saying: -b: *Good thing those 'good folks' slacked off with crap like 'relaxing' and 'self-care'!* +b: *Good thing those 'good folks' slacked off with stuff like 'relaxing' and 'self-care'!* b: *Now our plans can go fourth, reich on schedule!* -`_.a2_first_attack = "bad"` +``` +_.a2_first_attack = "bad"; +_.a2_attack_3 = "bad"; +``` (#act2d) @@ -317,7 +486,10 @@ b: What if we're all being poisoned *RIGHT NOW?* b: WE WOULDN'T EVEN KNOW. ONE MOMENT WE'RE HERE, NEXT MOMENT WE STOP EXISTING FOREVER AND EVER AND EV-- -`_.a2_first_attack = "harm"` +``` +_.a2_first_attack = "harm"; +_.a2_attack_3 = "harm"; +``` (#act2d) @@ -329,7 +501,10 @@ b: What if something irreversibly broke inside of us a long time ago? Or never e b: Ahhh we're broken! We're so broken so broken so brok-- -`_.a2_first_attack = "alone"` +``` +_.a2_first_attack = "alone"; +_.a2_attack_3 = "alone"; +``` (#act2d) @@ -343,7 +518,10 @@ b: What if it's in our nature to hurt others? What if we can't be anything *othe b: Ahhh we're broken! We're so broken so broken so brok-- -`_.a2_first_attack = "bad"` +``` +_.a2_first_attack = "bad"; +_.a2_attack_3 = "bad"; +``` (#act2d) @@ -355,7 +533,10 @@ b: Human, is your head hurting? Do your limbs feel limp? I think we're dying. We b: HUMAN, WE'RE DYING. WE'RE DYING WE'RE DYING WE'RE DYI-- -`_.a2_first_attack = "harm"` +``` +_.a2_first_attack = "harm"; +_.a2_attack_3 = "harm"; +``` (#act2d) @@ -363,10 +544,24 @@ b: HUMAN, WE'RE DYING. WE'RE DYING WE'RE DYING WE'RE DYI-- ``` hong({body:"attacked"}); -attack("30p", _.a2_first_attack); +attack("20p", _.a2_attack_1); ``` -(...2500) +(...301) + +``` +hong({body:"attacked"}); +attack("20p", _.a2_attack_2); +``` + +(...301) + +``` +hong({body:"attacked"}); +attack("20p", _.a2_attack_3); +``` + +(...301) h: FUCK! @@ -382,7 +577,7 @@ b: Why did you try ignoring me? `hong({body:"yell"})` -h: Holy whoring hell, you stupid sack of shit. +h: Holy hell, you stupid sack of shit. h: You know that Native American story? @@ -477,9 +672,9 @@ b: ... [...jeez human. That's really hurtful.](#act2e_hurtful) -[What happened to "your feelings are valid"?](#act2e_valid) +[What about "your feelings are valid"?](#act2e_valid) -[We share the same brain. We're equally rational.](#act2e_rational) +[We share a brain. We're equally rational.](#act2e_rational) # act2e_hurtful @@ -559,11 +754,13 @@ b: How do you think *I* feel, human?! b: I'm trying my best to be your guard-dog, but you keep seeing me as some Big Bad Wolf! -b: So I try even *harder* to alert you to danger. More danger! Louder danger! +b: So I try even *harder* to alert you to danger! More danger! Louder danger! -b: But no matter how hard I try to protect you, you *still* think of me as your enemy! +b: But no matter how hard I try to protect you, you *still* think I'm your enemy! -b: I *know* I suck at my job! But I'm *trying*, human! +b: What am I doing wrong?! + +b: I *know* I suck at my job. But I'm *trying*, human! b: ...I'm trying. @@ -571,7 +768,7 @@ b: You don't have to heed my warnings, or agree with me, or even *like* me. b: I just... all I want is for you to be patient with me. -b: I just want for you to sit with me for a while, instead of turning away from m-- +b: I just want for you to sit with me for a while, instead of turning away and-- `publish("act2-party-action", ["twist1"]);` @@ -594,9 +791,13 @@ h2: (nods) r: You're not alone, friend. Anxiety's super common. -r: Hell, just yesterday, I heard someone curled up into an armadillo ball and cried in public! +{{if _.act1_ending=="fight"}} +r: Heck, just yesterday, I heard someone on campus had a nervous breakdown and smashed their phone! +{{/if}} -`// r: Heck, just yesterday, I heard someone on campus had a nervous breakdown and smashed their phone / curled up into a ball and cried!` +{{if _.act1_ending=="flight"}} +r: Hell, just yesterday, I heard someone curled up into an armadillo ball and cried in public! +{{/if}} h2: huh imagine that. @@ -638,9 +839,9 @@ publish("hp_show"); (...3500) -[Oh God.](#act2g_oh) `Game.OVERRIDE_CHOICE_LINE=true` +[Oh my God.](#act2g_oh) `Game.OVERRIDE_CHOICE_LINE=true` -[Please don't do this.](#act2g_please) `Game.OVERRIDE_CHOICE_LINE=true` +[This is a bad coping mechanism.](#act2g_please) `Game.OVERRIDE_CHOICE_LINE=true` [We don't know what's in that drink.](#act2g_we) `Game.OVERRIDE_CHOICE_LINE=true` @@ -652,7 +853,7 @@ b: O-- # act2g_please -b: P-- +b: T-- (#act2g) @@ -685,10 +886,10 @@ b: This is bad, human. This is really, really bad. [This is *actually* how addiction starts.](#act2h_opt1) `Game.OVERRIDE_CHOICE_LINE=true` -[They could've put something bad in there.](#act2h_opt2) `Game.OVERRIDE_CHOICE_LINE=true` - [I *knew* the host was deeply messed up!](#act2h_opt3) `Game.OVERRIDE_CHOICE_LINE=true` +[Also, they could have drugged that!](#act2h_opt2) `Game.OVERRIDE_CHOICE_LINE=true` + # act2h_opt1 @@ -698,7 +899,7 @@ b: This is *actu*-- # act2h_opt2 -b: They could've-- +b: Also, they co-- (#act2h) @@ -753,10 +954,10 @@ h: You're gonna yap more stupid words at me again to try t-- ``` bb({body:"special_2"}); -sfx("shoryuken"); +sfx("hadouken"); ``` -(...1251) +(...901) (#act2i) @@ -783,9 +984,19 @@ Game.FORCE_CANT_SKIP = false; h: WHAT THE HELL WAS THAT -b: I'm sorry. It was the only way. +b: I'm sorry. I needed to show you the consequences. -h: I COULD *SEE* IT. I COULD *FEEL* IT. // the blood, the guilt, the humiliation +{{if _.SPECIAL_ATTACK=="harm"}} +h: I COULD *SEE* MY OWN CORPSE. I COULD *FEEL* THE SENSATION OF BEING ACTUALLY DEAD. +{{/if}} + +{{if _.SPECIAL_ATTACK=="alone"}} +h: I COULD *SEE* EVERYONE'S LOOK OF DISGUST. I COULD *HEAR* ALL THE THINGS THEY SAID. +{{/if}} + +{{if _.SPECIAL_ATTACK=="bad"}} +h: I COULD *HEAR* THE CRUNCHING OF RIBS. I COULD *TASTE* THE BLOOD IN THE AIR. +{{/if}} b: I'm sorry, human. @@ -797,7 +1008,9 @@ n: *FINISH THEM* # act2j_fight -b: They were taking advantage of you. +b: That psychopath was taking advantage of you. + +b: They were trying to corrupt you, make you as messed up as they are! b: Punch that jerk! Knock their friggin' lights out! @@ -811,7 +1024,7 @@ b: PUNCH THEM PUNCH THEM PUNCH THEM PUNCH THEM PUNCH THEM PUNCH THEM PUNCH THEM # act2j_flight -b: I *knew* all these partygoers were messed up. They all dull their pain with horrible things! +b: I *knew* all these partygoers were deeply messed up. They all dull their pain with horrible things! b: And they're tricking you into doing the same thing! They're corrupting you! We need to get out! @@ -870,7 +1083,7 @@ music('party1', {volume:0.6, fade:6}); r: are *kinky*. -r: I like that. Come to my party next weekend, babe. +r: I like that. Come to my party next weekend, cutie. `publish("act2-party-action", ["end_run"]);` @@ -886,7 +1099,7 @@ h2: ok sorry i have to go r: Ah, the voice won, huh? -r: Come to my party next weekend, babe. I'll mix something even stronger for ya. +r: Come to my party next weekend, cutie. I'll mix something even stronger for ya. `publish("act2-party-action", ["end_run"]);` @@ -961,4 +1174,8 @@ publish("act2-outro", ["end6"]); `sfx("grass_step2", {volume:0.25});` -(...3000) \ No newline at end of file +(...3000) + +`_.INTERMISSION_STAGE = 2;` + +(#intermission) \ No newline at end of file diff --git a/scenes/act3.md b/scenes/act3.md index 5b652db..a16b98d 100644 --- a/scenes/act3.md +++ b/scenes/act3.md @@ -22,7 +22,7 @@ r: Hmmm, ya sure 'bout that? h2: What, you've got *another* dare for me? -r: Sure do, babe. See that swimming pool *all* the way down there? +r: Sure do, cutie. See that swimming pool *all* the way down there? ``` publish('hong-next'); @@ -67,7 +67,7 @@ h2: But not for long. ``` Game.clearText(); publish("act3-out"); -music('battle_dark', {volume:0.7, fade:1}); +music('battle_dark', {volume:1.0, fade:1}); ``` (...1500) @@ -166,7 +166,7 @@ h: Look asshole, we *all* have a way of shutting you the fuck up. h: Some people throw themselves into work. -h: Some people throw themselves into sex and drugs and refreshing their Facebook feed. +h: Some people throw themselves into sex, drugs, and refreshing their Facebook feed. h: Some people throw themselves into other people. @@ -353,10 +353,6 @@ h: All the wise folk of our time agree: negative emotions are *bad!* h: Duh! That's why they're called *negative!* -h: So the only good negative emotion... - -h: Is a *dead* negative emotion. - b: human... please... h: A while back, I said: “I just want to be free from all this pain.” @@ -393,7 +389,7 @@ h: ...you're *sorry.* h: ... -h: Sorry for *what*, you big fuzzy moron? +h: Sorry for *what*? (#act3_good_2q) @@ -589,11 +585,13 @@ Game.FORCE_CANT_SKIP = true; (...501) -`publish('hong-next')` +``` +publish('hong-next'); +Game.FORCE_CANT_SKIP = false; +sfx("lock_door"); +``` -`Game.FORCE_CANT_SKIP = false;` - -(...1001) +(...2001) r: Did they just lock the door? @@ -601,6 +599,14 @@ r: ... r: shit. +``` +Game.clearAll(); +_.INJURED = false; +``` + +(...2000) + +(#act4) @@ -694,4 +700,39 @@ publish("hunter-roof", ["front_shock"]); b: NO! +(...400) +``` +Game.clearText(); +publish("act4-injury-show"); +``` + +(...2000) + +`publish("act4-injury", [1]);` + +(...2000) + +`publish("act4-injury", [0]);` + +(...2000) + +`publish("act4-injury", [2]);` + +(...2000) + +`publish("act4-injury", [0]);` + +(...2000) + +`publish("act4-injury", [3]);` + +(...2000) + +`publish("act4-injury", [0]);` + +(...5000) + +`_.INJURED = true;` + +(#act4) diff --git a/scenes/act4.md b/scenes/act4.md index 9335a32..fad9406 100644 --- a/scenes/act4.md +++ b/scenes/act4.md @@ -2,11 +2,6 @@ ``` SceneSetup.act4(); -_.INJURED = true; -_.TOP_FEAR = "alone"; -_.a2_end = "fight"; -_.FIRST_FEAR = "bad"; -//Game.FORCE_CANT_SKIP = true; ``` (...2001) @@ -29,7 +24,7 @@ h: *sigh* h: So what the hell was the moral of this story? -h: What did I even *learn?* I *was* being stupid, my "friends" *were* using me, and we almost fucking *died*. +h: What did we even *learn*? I *was* being stupid, my "friends" *were* using me, and we almost fucking *died*. {{if _.INJURED}} [Yeah, not to mention the hospital bill.](#act4a_bill) @@ -128,6 +123,8 @@ sfx("grass_step1"); # act4b_2 +`music('dontfight',{fade:5, volume:0.6})` + b: I'm not a Big Bad Wolf. But I'm not a guard-wolf either. b: I'm a battered shelter dog. @@ -152,7 +149,7 @@ h: Dear inner wolf... how are *you* feeling? n2: TOTAL FEARS USED: -n2: *HARMED* 3, *UNLOVED* 4, *BAD PERSON* 2 +n2: *HARMED* {{_.attack_harm_total}}, *UNLOVED* {{_.attack_alone_total}}, *BAD PERSON* {{_.attack_bad_total}} n2: WHAT FEAR DO YOU WANT TO TALK ABOUT FIRST? (YOU CAN DO THE OTHERS LATER) @@ -174,9 +171,11 @@ _.a4_talked_about_harm = true; _.a4_fears_discussed += 1; ``` -b: (insert callbacks to harm-fears you used) +`//b: (insert callbacks to harm-fears you used)` -b: Gosh, there's so many dangerous things in the world! +b: I want to protect your need for physical safety, + +b: But, gosh, there's so many dangerous things in the world! {{if _.a4_fears_discussed==1}} b: I dunno, what do *you* think, human? @@ -190,15 +189,17 @@ b: Again, back to you, human. What do you think? b: More thoughts, human? {{/if}} -[You're right. So how can we protect ourselves?](#act4_harm_skills) +`Game.OVERRIDE_CHOICE_SPEAKER = "h"` -[I think let's expose ourselves to *more* danger.](#act4_harm_exposure) +[You're right. So let's protect ourselves.](#act4_harm_skills) -[Thank you.](#act4_thanks) `_.thanks_for = "physical safety"` +[Let's expose ourselves to *more* danger.](#act4_harm_exposure) + +[Thank you.](#act4_thanks) `_.thanks_for = "physical safety";` # act4_harm_skills -b: Well, I have claws, but I'm just a metaphor. +b: But... how? I have fangs and claws, but I'm just a metaphor. h: We could pick up self-defense? Improve our general health? Learn to better assert our boundaries? @@ -405,9 +406,11 @@ _.a4_talked_about_alone = true; _.a4_fears_discussed += 1; ``` -b: (insert callbacks to alone-fears you used) +`//b: (insert callbacks to alone-fears you used)` -b: Will we be loved? *Can* we be loved? +b: I want to make sure you get your social needs met, the human need to belong... + +b: But, I worry: will we ever be loved? *Can* we ever be loved? {{if _.a4_fears_discussed==1}} b: I dunno, what do *you* think, human? @@ -421,11 +424,13 @@ b: Again, back to you, human. What do you think? b: More thoughts, human? {{/if}} +`Game.OVERRIDE_CHOICE_SPEAKER = "h"` + [I agree I'd like to work on our social life.](#act4_alone_skills) [I think people like us. Let's find out?](#act4_alone_experiment) -[Thank you.](#act4_thanks) `_.thanks_for = "social belonging"` +[Thank you.](#act4_thanks) `_.thanks_for = "social belonging";` # act4_alone_skills @@ -560,9 +565,11 @@ _.a4_talked_about_bad = true; _.a4_fears_discussed += 1; ``` -b: (insert callbacks to bad-fears you used) +`//b: (insert callbacks to bad-fears you used)` -b: It just feels like we're so... broken. +b: I want to defend your moral needs, that drive to become a better person, + +b: But it just feels like we're so... broken. {{if _.INJURED}} b: And don't tell me we're *not* messed up. We jumped off a *roof*. @@ -584,11 +591,13 @@ b: Again, back to you, human. What do you think? b: More thoughts, human? {{/if}} +`Game.OVERRIDE_CHOICE_SPEAKER = "h"` + [So we're broken. Let's fix us.](#act4_bad_fix) [So we're broken. Let's accept it.](#act4_bad_accept) -[Thank you.](#act4_thanks) `_.thanks_for = "moral well-being"` +[Thank you.](#act4_thanks) `_.thanks_for = "moral well-being";` # act4_bad_fix @@ -638,7 +647,7 @@ b: If we're content with life, will we stop driving ourselves to do great things h: ... -h: If we even fear "running out of fears", +h: If we even have a fear of "running out of fears", h: I don't think we're gonna run out of fears. @@ -713,7 +722,7 @@ b: Having a mental disorder *sucks!* It robs people of *lives!* Why should we "a h: I think therapists mean "accept" our emotions as in: be patient with them. -h: Like how struggling in quicksand makes you sink faster, and the solution is to patiently lie flat... +h: Like how struggling in quicksand makes you sink faster, and the solution is to patiently lie flat, {{if _.INJURED}} h: Fighting against you, my fear, lead me to jump off a roof. @@ -800,7 +809,10 @@ h: Good chat, team. # act4c -`Game.clearText()` +``` +Game.clearText(); +music(null,{fade:3}); +``` b: ... @@ -810,9 +822,9 @@ b: This isn't some *game*, you know. b: Building a better relationship with your emotions isn't as simple as clicking buttons on a screen. -b: Can we *really* get along, human? +b: *Can* we work as a team? -b: Can we *really* work as a team? +b: *Can* we be on the same side? h: Well, @@ -824,6 +836,7 @@ publish("smash",[3]); publish("act4-in-2"); publish("outside-hong", ["look-back"]); publish("al-shire", ["ask"]); +music('campus', {volume:0.5, fade:1}); ``` (...1600) @@ -848,6 +861,8 @@ s: They were enjoying peace and quiet, then we interrupted them! We're such a bu a: I- I mean- it's, it's okay if not, I just... +`Game.OVERRIDE_CHOICE_SPEAKER = "h2"` + [Wait, didn't I see you at the party?](#act4d_recognition) [Yeah, of course! Come here.](#act4d_yes) @@ -856,9 +871,17 @@ a: I- I mean- it's, it's okay if not, I just... # act4d_recognition -h2: Yeah it was the first party, where I had that panic attack and {{if _.a2_end=="fight"}}punched the host.{{/if}}{{if _.a2_end=="flight"}}ran out crying.{{/if}} +{{if _.a2_ending=="fight"}} +h2: Yeah it was the first party, where I had that panic attack and punched the host. +{{/if}} -h3: Ah, sorry, didn't mean to put you on the spot! +{{if _.a2_ending=="flight"}} +h2: Yeah it was the first party, where I had that panic attack and ran out crying. +{{/if}} + +b: Hang on human, we might be making them uncomfortable. + +h2: Ah, I don't mean to put you on the spot! h2: Just remembering a friendly face, is all. @@ -880,7 +903,9 @@ s: AAAHHH WE MADE SOMEONE REMEMBER A TRAUMATIC EVENT. OUR MERE PRESENCE HURTS OT # act4d_yes -h3: Ah, I don't mean to make you feel awkward! +b: Hang on human, we might be making them uncomfortable. + +h2: Ah, I don't mean to make you feel awkward! h2: Just saying, you can sit here if you want to. @@ -902,7 +927,9 @@ s: GAH, WE ALWAYS MAKE OTHERS FEEL UNCOMFORTABLE! WE'RE TERRIBLE! # act4d_no -h3: Ah, I didn't mean to come off as rude! +b: Hang on human, we might be making them uncomfortable. + +h2: Ah, I didn't mean to come off as rude! {{if _.INJURED}} h2: It's just that, well, I jumped off a roof and almost killed myself. @@ -951,7 +978,7 @@ h: Huh. Wonder what *that* was about. h: Anyway, you were saying? -b: Uh, I forget? Something about work and teams? +b: Uh, I forget? Something about teams and sides? h: (shrug) @@ -959,7 +986,7 @@ b: They say you should "make peace" with your emotions, as if your emotions are b: But I want us to make *more* than mere peace! I want us to be *allies!* -b: I want to be a good guard-dog. I want to protect you. +b: I want to be a good guard-dog. I want to protect you and your needs for safety, belonging, and goodness. b: But I suck at it, so I need you to train me. @@ -979,15 +1006,21 @@ b: Maybe you can tame this wolf. (...1000) -[Good dog.](#act4f-pat-bb) +`Game.OVERRIDE_CHOICE_SPEAKER = "h"` -[Good human.](#act4f-pat-hong) +[Good dog.](#act4f-pat-bb) `Game.OVERRIDE_CHOICE_SPEAKER = "h"` + +`Game.OVERRIDE_CHOICE_SPEAKER = "b"` + +[Good human.](#act4f-pat-hong) `Game.OVERRIDE_CHOICE_SPEAKER = "b"` # act4f-pat-hong ``` Game.clearText(); Game.FORCE_CANT_SKIP = true; +music(null,{fade:0.5}); +sfx("youbothwin"); ``` `publish("end-pat", ["pat-hong-1"])` @@ -1012,7 +1045,7 @@ Game.FORCE_CANT_SKIP = true; `publish("end-pat", ["pat-hong-2"])` -(...2001) +(...6501) `publish("end-pat", ["pat-hong-3"])` @@ -1025,6 +1058,8 @@ Game.FORCE_CANT_SKIP = true; ``` Game.clearText(); Game.FORCE_CANT_SKIP = true; +music(null,{fade:0.5}); +sfx("youbothwin"); ``` `publish("end-pat", ["pat-bb-1"])` @@ -1049,7 +1084,7 @@ Game.FORCE_CANT_SKIP = true; `publish("end-pat", ["pat-bb-2"])` -(...2001) +(...6501) `publish("end-pat", ["pat-bb-3"])` @@ -1064,18 +1099,23 @@ Game.FORCE_CANT_SKIP = false; publish("end-pat", ["freak-out"]) ``` -{{if _.FIRST_FEAR=="harm"}} +{{if _.fifteencigs}} b: AAAAA YOU'RE STILL BEING ALONE FIFTEEN CIGARETTES AAAAA {{/if}} -{{if _.FIRST_FEAR=="alone"}} +{{if _.parasite}} b: AAAAA YOU'RE STILL NOT BEING PRODUCTIVE AAAAA {{/if}} -{{if _.FIRST_FEAR=="bad"}} +{{if _.whitebread}} b: AAAAA YOU'RE EATING MORE WHITE BREAD AAAAA {{/if}} -`sfx("yaps");` +``` +sfx("yaps"); +Game.FORCE_CANT_SKIP = true; +``` b: YAP YAP YAP YAP YAP + +(#credits) diff --git a/scenes/credits.md b/scenes/credits.md new file mode 100644 index 0000000..6fa3666 --- /dev/null +++ b/scenes/credits.md @@ -0,0 +1,9 @@ +# credits + +`music('credits', {NO_LOOP:true, volume:0.7});` + +(...1884) + +`SceneSetup.credits()` + +n: *CREDITS ROLL* (and mental health resource links) \ No newline at end of file diff --git a/scenes/intermission.md b/scenes/intermission.md index d0f1866..23fddff 100644 --- a/scenes/intermission.md +++ b/scenes/intermission.md @@ -1,7 +1,12 @@ -# intermission-1 +# intermission + +`Game.clearAll();` + +(...2000) ``` -SceneSetup.intermission(1); +_.INTERMISSION_STAGE = _.INTERMISSION_STAGE ? _.INTERMISSION_STAGE : 1; +SceneSetup.intermission(_.INTERMISSION_STAGE); Game.FORCE_CANT_SKIP = true; ``` @@ -13,11 +18,12 @@ publish("show_stats"); n2: FEARS YOU USED: -i: #harm# *BEING HARMED:* {{_.attack_harm}} +i: #harm# *BEING HARMED:* {{_.INTERMISSION_STAGE==1 ? _.attack_harm_ch1 : _.attack_harm_ch2}} -i: #alone# *BEING UNLOVED:* {{_.attack_alone}} +i: #alone# *BEING UNLOVED:* {{_.INTERMISSION_STAGE==1 ? _.attack_alone_ch1 : _.attack_alone_ch2}} + +i: #bad# *BEING A BAD PERSON:* {{_.INTERMISSION_STAGE==1 ? _.attack_bad_ch1 : _.attack_bad_ch2}} -i: #bad# *BEING A BAD PERSON:* {{_.attack_bad}} ``` publish("set_how_many_prompts", [1]); @@ -34,34 +40,10 @@ sfx("yelp", {volume:0.5}); (...2000) +{{if _.INTERMISSION_STAGE==1}} (#act2) +{{/if}} - -# intermission-2 - -``` -SceneSetup.intermission(2); -Game.FORCE_CANT_SKIP = true; -``` - -(...6000) - -``` -publish("show_stats"); -``` - -n2: FEARS YOU USED: - -i: #harm# *BEING HARMED:* {{_.attack_harm}} - -i: #alone# *BEING UNLOVED:* {{_.attack_alone}} - -``` -publish("set_how_many_prompts", [1]); -Game.FORCE_CANT_SKIP = false; -Game.CLICK_TO_ADVANCE = true; -``` - -i: #bad# *BEING A BAD PERSON:* {{_.attack_bad}} - -(#act3) \ No newline at end of file +{{if _.INTERMISSION_STAGE==2}} +(#act3) +{{/if}} diff --git a/scripts/act1/Act1_Outro_BG.js b/scripts/act1/Act1_Outro_BG.js index 9cd3184..365acfa 100644 --- a/scripts/act1/Act1_Outro_BG.js +++ b/scripts/act1/Act1_Outro_BG.js @@ -190,7 +190,8 @@ function BG_Act1_Outro(){ // NEXT SCENE? if(frameTicker>=320/30){ - Game.goto("act1_end"); + _.INTERMISSION_STAGE = 1; + Game.goto("intermission"); } }; diff --git a/scripts/act1/Act1_SceneSetup.js b/scripts/act1/Act1_SceneSetup.js index 2e70000..860ed77 100644 --- a/scripts/act1/Act1_SceneSetup.js +++ b/scripts/act1/Act1_SceneSetup.js @@ -1,8 +1,6 @@ Loader.addSounds([ { id:"music_battle", src:"sounds/music/battle.mp3" }, { id:"music_pokemon", src:"sounds/music/pokemon.mp3" }, - - { id:"dramatic", src:"sounds/sfx/dramatic.mp3" }, { id:"fart", src:"sounds/sfx/fart.mp3" } ]); @@ -14,9 +12,10 @@ SceneSetup.act1 = function(){ HP.reset(); // ATTACKS - _.attack_harm = 0; - _.attack_alone = 0; - _.attack_bad = 0; + _.CHAPTER = 1; + _.attack_harm_ch1 = 0; + _.attack_alone_ch1 = 0; + _.attack_bad_ch1 = 0; // Background var bg = new BG_Anxiety(); @@ -45,26 +44,4 @@ SceneSetup.act1_outro = function(){ var bg = new BG_Act1_Outro(); Game.scene.children.push(bg); -}; -SceneSetup.act1_end = function(){ - - Game.resetScene(); - music(null); - stopAllSounds(); - - // HACK - Game.TEXT_SPEED = 50; - Game.FORCE_TEXT_Y = 52; - Game.FORCE_CANT_SKIP = true; - $("#game_container").style.background = "#000"; - $("#game_choices").style.display = "none"; - - // KILL - Game.scene.kill = function(){ - Game.FORCE_TEXT_Y = -1; - Game.FORCE_CANT_SKIP = false; - $("#game_container").style.background = ""; - $("#game_choices").style.display = ""; - }; - }; \ No newline at end of file diff --git a/scripts/act2/Act2_BG.js b/scripts/act2/Act2_BG.js index 7cf36f7..cbe592c 100644 --- a/scripts/act2/Act2_BG.js +++ b/scripts/act2/Act2_BG.js @@ -8,7 +8,7 @@ Loader.addImages([ Loader.addSounds([ { id:"squeak", src:"sounds/sfx/squeak.mp3" }, { id:"record_scratch", src:"sounds/sfx/record_scratch.mp3" }, - { id:"shoryuken", src:"sounds/sfx/shoryuken.mp3" } + { id:"hadouken", src:"sounds/sfx/hadouken.mp3" } ]); function BG_Party(){ diff --git a/scripts/act2/Act2_SceneSetup.js b/scripts/act2/Act2_SceneSetup.js index 2ed368f..231bc20 100644 --- a/scripts/act2/Act2_SceneSetup.js +++ b/scripts/act2/Act2_SceneSetup.js @@ -10,9 +10,10 @@ SceneSetup.act2 = function(){ HP.reset(); // ATTACKS (TODO: ACT I, ACT II...???) - _.attack_harm = 0; - _.attack_alone = 0; - _.attack_bad = 0; + _.CHAPTER = 2; + _.attack_harm_ch2 = 0; + _.attack_alone_ch2 = 0; + _.attack_bad_ch2 = 0; // Music music('party1', {volume:0.6}); diff --git a/scripts/act3/Act3_BG.js b/scripts/act3/Act3_BG.js index f682846..1855542 100644 --- a/scripts/act3/Act3_BG.js +++ b/scripts/act3/Act3_BG.js @@ -1,7 +1,12 @@ Loader.addImages([ { id:"rooftop_bg", src:"sprites/act3/rooftop_bg.png" }, { id:"rooftop_hunter", src:"sprites/act3/hunter.png" }, - { id:"rooftop_hong", src:"sprites/act3/hong.png" } + { id:"rooftop_hong", src:"sprites/act3/hong.png" }, + { id:"hospital", src:"sprites/act3/hospital.png" }, +]); + +Loader.addSounds([ + { id:"lock_door", src:"sounds/sfx/lock_door.mp3" } ]); function BG_Rooftop(){ @@ -40,6 +45,14 @@ function BG_Rooftop(){ self.hong = new Act3_Hong(); self.beebee = new Act3_Beebee(); + // Hospital scene + self.hospitalSprite = new Sprite({ + image: Library.images.hospital, + grid:{ width:4, height:1 }, + frame:{ width:720, height:1200 }, + }); + self.hospitalSprite.visible = false; + // LAYERS self.layers = [ self.bgSprite, @@ -123,13 +136,21 @@ function BG_Rooftop(){ ctx.save(); - for(var i=0; i0){ - ctx.globalAlpha = ALPHAS[i]; - layer.draw(ctx); + if(!self.hospitalSprite.visible){ + + for(var i=0; i0){ + ctx.globalAlpha = ALPHAS[i]; + layer.draw(ctx); + } } + + }else{ + + self.hospitalSprite.draw(ctx); + } ctx.restore(); @@ -177,6 +198,14 @@ function BG_Rooftop(){ subscribe("start-walkaway-anim", function(){ self.hongSprite.gotoFrame(23); self.hunterSprite.gotoFrameByName("side_smile"); + }), + + // INJURY + subscribe("act4-injury-show", function(frame){ + self.hospitalSprite.visible = true; + }), + subscribe("act4-injury", function(frame){ + self.hospitalSprite.gotoFrame(frame); }) ); diff --git a/scripts/act3/Act3_SceneSetup.js b/scripts/act3/Act3_SceneSetup.js index cf9cf36..6ca9b86 100644 --- a/scripts/act3/Act3_SceneSetup.js +++ b/scripts/act3/Act3_SceneSetup.js @@ -11,9 +11,7 @@ SceneSetup.act3 = function(){ HP.reset(); // ATTACKS - _.attack_harm = 0; - _.attack_alone = 0; - _.attack_bad = 0; + _.CHAPTER = 3; // Music music('party2', {volume:0.6}); diff --git a/scripts/act4/Act4_BG.js b/scripts/act4/Act4_BG.js index 85e1cc5..8fe544e 100644 --- a/scripts/act4/Act4_BG.js +++ b/scripts/act4/Act4_BG.js @@ -13,8 +13,7 @@ Loader.addImages([ Loader.addSounds([ { id:"yaps", src:"sounds/sfx/yaps.mp3" }, - /*{ id:"record_scratch", src:"sounds/sfx/record_scratch.mp3" }, - { id:"shoryuken", src:"sounds/sfx/shoryuken.mp3" }*/ + { id:"youbothwin", src:"sounds/sfx/youbothwin.mp3" } ]); function BG_Act4(){ @@ -243,6 +242,9 @@ function BG_Act4(){ PARALLAXING = "out"; sfx("whoosh"); + // IT'S WHITE IN HERE + window.BLACK_CTA = true; + }), subscribe("act4-in-2", function(){ @@ -254,6 +256,9 @@ function BG_Act4(){ PARALLAXING = "in"; sfx("whoosh"); + // IT'S DARK OUT HERE + window.BLACK_CTA = false; + }), subscribe("act4-out-3", function(){ @@ -262,6 +267,9 @@ function BG_Act4(){ PARALLAXING = "out"; sfx("whoosh"); + // IT'S WHITE IN HERE + window.BLACK_CTA = true; + }), subscribe("outside-hong", function(frame){ if(_.INJURED) frame += "-injured"; @@ -298,6 +306,7 @@ function BG_Act4(){ self.kill = function(){ _subscriptions.forEach(unsubscribe); + window.BLACK_CTA = false; // back to normal }; } \ No newline at end of file diff --git a/scripts/act4/Act4_SceneSetup.js b/scripts/act4/Act4_SceneSetup.js index 021eb5a..48f2960 100644 --- a/scripts/act4/Act4_SceneSetup.js +++ b/scripts/act4/Act4_SceneSetup.js @@ -1,5 +1,5 @@ Loader.addSounds([ - { id:"music_party1", src:"sounds/music/party1.mp3" } + { id:"music_dontfight", src:"sounds/music/dontfight.mp3" } ]); SceneSetup.act4 = function(){ @@ -9,11 +9,32 @@ SceneSetup.act4 = function(){ // RESET HP HP.reset(); - // ATTACKS (TODO: ACT I, ACT II...???) - _.attack_harm = 0; - _.attack_alone = 0; - _.attack_bad = 0; + // ATTACKS + _.CHAPTER = 4; + + _.attack_harm_ch1 = (_.attack_harm_ch1==undefined) ? 0 : _.attack_harm_ch1; + _.attack_alone_ch1 = (_.attack_alone_ch1==undefined) ? 0 : _.attack_alone_ch1; + _.attack_bad_ch1 = (_.attack_bad_ch1==undefined) ? 0 : _.attack_bad_ch1; + + _.attack_harm_ch2 = (_.attack_harm_ch2==undefined) ? 0 : _.attack_harm_ch2; + _.attack_alone_ch2 = (_.attack_alone_ch2==undefined) ? 0 : _.attack_alone_ch2; + _.attack_bad_ch2 = (_.attack_bad_ch2==undefined) ? 0 : _.attack_bad_ch2; + _.attack_harm_total = _.attack_harm_ch1 + _.attack_harm_ch2; + _.attack_alone_total = _.attack_alone_ch1 + _.attack_alone_ch2; + _.attack_bad_total = _.attack_bad_ch1 + _.attack_bad_ch2; + + // DECIDE TOP FEAR (if it's a tie, use first fear. if it's still neither, random) + var fears = [ + {name:"harm", count:_.attack_harm_total}, + {name:"alone", count:_.attack_alone_total}, + {name:"bad", count:_.attack_bad_total} + ]; + fears = fears.sort(function(a,b){ + return b.count - a.count; + }); + _.TOP_FEAR = fears[0].name; + // Music music('campus', {volume:0.5}); diff --git a/scripts/credits/Credits_SceneSetup.js b/scripts/credits/Credits_SceneSetup.js new file mode 100644 index 0000000..7d5c571 --- /dev/null +++ b/scripts/credits/Credits_SceneSetup.js @@ -0,0 +1,13 @@ +Loader.addSounds([ + { id:"music_credits", src:"sounds/music/credits.mp3" } +]); + +SceneSetup.credits = function(){ + + Game.resetScene(); + Game.clearText(); + + // RESET HP + HP.reset(); + +}; \ No newline at end of file diff --git a/scripts/game/BG_Anxiety.js b/scripts/game/BG_Anxiety.js index 4eb1101..a5d1dd3 100644 --- a/scripts/game/BG_Anxiety.js +++ b/scripts/game/BG_Anxiety.js @@ -13,7 +13,7 @@ function BG_Anxiety(whiteMode){ // Moving white boxes var BG_WIDTH = 360; - var BG_HEIGHT = 450; + var BG_HEIGHT = 600; self.boxes = []; self.resetBox = function(box, startInView){ diff --git a/scripts/game/Game.js b/scripts/game/Game.js index ba4d572..991358f 100644 --- a/scripts/game/Game.js +++ b/scripts/game/Game.js @@ -20,7 +20,7 @@ window.hong = function(){ }; window.attack = function(damage, type){ publish("attack", ["hong", damage, type]); - _["attack_"+type]++; // HACK + _["attack_"+type+"_ch"+_.CHAPTER]++; // HACK }; window.attackBB = function(damage, type){ publish("attack", ["bb", damage]); @@ -129,16 +129,28 @@ Game.onUnpause = function(){ Howler.mute(false); } }; -Game.pausedDOM.onclick = function(){ +Game.pausedDOM.onclick = function(e){ if(Options.showing){ publish("hide_options"); - } - if(About.showing){ + }else if(About.showing){ $("#close_about").onclick(); + }else{ + Game.onUnpause(); + } + e.stopPropagation(); +}; + +// UNPAUSE OR SKIP DIALOGUE? +var _unpauseOrSkip = function(){ + if(Game.paused){ + Game.onUnpause(); + }else{ + Game.clearAllTimeouts(); } }; -window.addEventListener("click", Game.onUnpause); -window.addEventListener("touchstart", Game.onUnpause); +window.addEventListener("click", _unpauseOrSkip); +window.addEventListener("touchstart", _unpauseOrSkip); + // "SET TIMEOUT" for text and stuff Game.timeoutCallbacks = []; @@ -171,10 +183,14 @@ Game.clearAllTimeouts = function(){ } }; -Game.canvas.addEventListener("click", Game.clearAllTimeouts); + +// CLICK TO SKIP DIALOGUE +//window.addEventListener("click", Game.clearAllTimeouts); +//window.addEventListener("touchstart", Game.clearAllTimeouts); +/*Game.canvas.addEventListener("click", Game.clearAllTimeouts); Game.canvas.addEventListener("touchstart", Game.clearAllTimeouts); Game.choicesDOM.addEventListener("click", Game.clearAllTimeouts); -Game.choicesDOM.addEventListener("touchstart", Game.clearAllTimeouts); +Game.choicesDOM.addEventListener("touchstart", Game.clearAllTimeouts);*/ Game.goto = function(sectionID){ @@ -282,6 +298,8 @@ Game.clearText = function(){ Game.clearAll = function(){ Game.clearText(); Game.resetScene(); + music(null); + stopAllSounds(); }; window.clearText = Game.clearText; @@ -611,6 +629,7 @@ Loader.addSounds([ // Execute choice! Add it to choice DOM. Game.OVERRIDE_CHOICE_LINE = false; +Game.OVERRIDE_CHOICE_SPEAKER = null; Game.HACK_MAKE_THE_LINE_BIG = false; Game.executeChoice = function(line){ @@ -635,6 +654,7 @@ Game.executeChoice = function(line){ var div = document.createElement("div"); div.innerHTML = choiceText; + div.setAttribute("speaker", Game.OVERRIDE_CHOICE_SPEAKER ? Game.OVERRIDE_CHOICE_SPEAKER : "b"); div.onclick = function(event){ // Any pre-choice code? @@ -642,8 +662,13 @@ Game.executeChoice = function(line){ // Override line... ONCE if(!Game.OVERRIDE_CHOICE_LINE){ - Game.addToQueue("b: "+originalChoiceText); + if(Game.OVERRIDE_CHOICE_SPEAKER){ + Game.addToQueue(Game.OVERRIDE_CHOICE_SPEAKER+": "+originalChoiceText); + }else{ + Game.addToQueue("b: "+originalChoiceText); + } } + Game.OVERRIDE_CHOICE_SPEAKER = null; Game.OVERRIDE_CHOICE_LINE = false; // Play sound @@ -685,6 +710,11 @@ Game.executeChoice = function(line){ setTimeout(function(){ var choiceHeight = div.getBoundingClientRect().height; if(choiceHeight>40) div.style.fontSize = "14px"; + // And if still too much??? + setTimeout(function(){ + var choiceHeight = div.getBoundingClientRect().height; + if(choiceHeight>40) div.style.fontSize = "12px"; + },1); },1); },1); },1); @@ -825,6 +855,7 @@ Game.parseLine = function(line){ lookForExpressions = false; // Look for an IF! + //debugger; var regex = /\{\{[^\}]*\}\}/ig; // the reason it's inside here is to reset .exec var regexResult = regex.exec(line); if(regexResult){ @@ -914,5 +945,10 @@ Game.updateCanvas = function(){ }; - - +// HACK: PREVENT ACCIDENTALLY TABBING & BREAKING UI +window.addEventListener("keydown", function(e){ + if(e.keyCode==9){ + e.preventDefault(); + e.stopPropagation(); + } +}); diff --git a/scripts/game/Options.js b/scripts/game/Options.js index b154ec1..acefea4 100644 --- a/scripts/game/Options.js +++ b/scripts/game/Options.js @@ -83,7 +83,11 @@ Loader.addSounds([ updateText(); }); var currentBlinkingInterval; + window.BLACK_CTA = false; var blinkCTA = function(){ + + $("#cta_text2 > div").setAttribute("pic", window.BLACK_CTA ? "next-black" : "next"); + currentBlinkingInterval = setInterval(function(){ ctaAlpha = (ctaAlpha==1) ? 0 : 1; click_to_advance.style.opacity = ctaAlpha; diff --git a/scripts/game/Sounds.js b/scripts/game/Sounds.js index e14317c..c433810 100644 --- a/scripts/game/Sounds.js +++ b/scripts/game/Sounds.js @@ -38,7 +38,7 @@ window.voice = function(name, options){ var delta = now - window._lastPlayedVoice[name]; // If too soon, DON'T PLAY. - if(delta < 4/60*1000) return; // 4 frames + if(delta < 5/60*1000) return; // 5 frames // Otherwise, play options = options || {}; @@ -69,7 +69,11 @@ window.music = function(song, options){ var song = Library.sounds["music_"+song]; song.stop(); // just in case it was playing earlier - song.loop(true); + if(options.NO_LOOP){ + song.play(); + }else{ + song.loop(true); + } if(options.fade==0){ song.volume(options.volume); diff --git a/scripts/intermission/Intermission_BG.js b/scripts/intermission/Intermission_BG.js index b6d45fb..7d5cd69 100644 --- a/scripts/intermission/Intermission_BG.js +++ b/scripts/intermission/Intermission_BG.js @@ -8,11 +8,6 @@ function BG_Intermission(STAGE){ var self = this; - // ATTACKS - _.attack_harm = 1; - _.attack_alone = 2; - _.attack_bad = 4; - // Sprites! self.bgSprite = new Sprite({ image: Library.images.intermission_bg, diff --git a/scripts/intro/Intro_BG.js b/scripts/intro/Intro_BG.js index 18d1926..ceeb168 100644 --- a/scripts/intro/Intro_BG.js +++ b/scripts/intro/Intro_BG.js @@ -20,7 +20,7 @@ Loader.addSounds([ function BG_Intro(){ - var ticker = 0;//18;//0; + var ticker = 0; //18;//0; var self = this; diff --git a/scripts/main.js b/scripts/main.js index c343ef8..7d75c90 100644 --- a/scripts/main.js +++ b/scripts/main.js @@ -1,13 +1,14 @@ // Load assets Loader.addScenes([ - //"scenes/intro.md", - //"scenes/act1.md", - //"scenes/act1_end.md", - //"scenes/PROMO.md" - "scenes/act2.md", - //"scenes/act3.md", - //"scenes/act4.md", + + "scenes/intro.md", + "scenes/act1.md", "scenes/intermission.md", + "scenes/act2.md", + "scenes/act3.md", + "scenes/act4.md", + "scenes/credits.md" + ]); Loader.load(function(progress){ @@ -17,7 +18,7 @@ Loader.load(function(progress){ $("#loading").setAttribute("loaded","yes"); $("#loading").onclick = function(){ - //sfx("pop"); + sfx("pop"); publish('START_GAME'); }; @@ -29,7 +30,17 @@ subscribe("START_GAME", function(){ $("#loading").style.display = "none"; Game.start(); - - Game.goto("intermission-1"); -}); \ No newline at end of file + $("#gear").style.display = "block"; + $("#about").style.display = "block"; + + // Act 2 + /*_ = {"CHAPTER":1,"attack_harm_ch1":3,"attack_alone_ch1":2,"attack_bad_ch1":1,"whitebread":true,"partyinvite":"ignore","subtweet":true,"serialkiller":true,"act1g":"dont","act1_ending":"flight","INTERMISSION_STAGE":1}; + Game.goto("act2");*/ + Game.goto("intro"); + +}); + +window._SAVE = function(){ + copy(JSON.stringify(_)); +}; diff --git a/sounds/music/battle_dark.mp3 b/sounds/music/battle_dark.mp3 index 55c3202..ca20573 100644 Binary files a/sounds/music/battle_dark.mp3 and b/sounds/music/battle_dark.mp3 differ diff --git a/sounds/music/battle_dark_prev.mp3 b/sounds/music/battle_dark_prev.mp3 new file mode 100644 index 0000000..55c3202 Binary files /dev/null and b/sounds/music/battle_dark_prev.mp3 differ diff --git a/sounds/music/credits.mp3 b/sounds/music/credits.mp3 new file mode 100644 index 0000000..a3b7a8f Binary files /dev/null and b/sounds/music/credits.mp3 differ diff --git a/sounds/music/dontfight.mp3 b/sounds/music/dontfight.mp3 new file mode 100644 index 0000000..b40e9ef Binary files /dev/null and b/sounds/music/dontfight.mp3 differ diff --git a/sounds/sfx/dramatic.mp3 b/sounds/sfx/dramatic.mp3 deleted file mode 100644 index ec1ad29..0000000 Binary files a/sounds/sfx/dramatic.mp3 and /dev/null differ diff --git a/sounds/sfx/hadouken.mp3 b/sounds/sfx/hadouken.mp3 new file mode 100644 index 0000000..010693d Binary files /dev/null and b/sounds/sfx/hadouken.mp3 differ diff --git a/sounds/sfx/lock_door.mp3 b/sounds/sfx/lock_door.mp3 new file mode 100644 index 0000000..e711aff Binary files /dev/null and b/sounds/sfx/lock_door.mp3 differ diff --git a/sounds/sfx/shoryuken.mp3 b/sounds/sfx/shoryuken.mp3 deleted file mode 100644 index 7258f2a..0000000 Binary files a/sounds/sfx/shoryuken.mp3 and /dev/null differ diff --git a/sounds/sfx/youbothwin.mp3 b/sounds/sfx/youbothwin.mp3 new file mode 100644 index 0000000..d9ac244 Binary files /dev/null and b/sounds/sfx/youbothwin.mp3 differ diff --git a/sprites/act2/party_action.png b/sprites/act2/party_action.png index 0e28e13..2d38268 100644 Binary files a/sprites/act2/party_action.png and b/sprites/act2/party_action.png differ diff --git a/sprites/act2/party_bg.png b/sprites/act2/party_bg.png index 47a2b75..7e3e60c 100644 Binary files a/sprites/act2/party_bg.png and b/sprites/act2/party_bg.png differ diff --git a/sprites/act3/hospital.png b/sprites/act3/hospital.png index 1758101..7ef04c8 100644 Binary files a/sprites/act3/hospital.png and b/sprites/act3/hospital.png differ diff --git a/sprites/intro/intro_logo.png b/sprites/intro/intro_logo.png index b0745f5..546f101 100644 Binary files a/sprites/intro/intro_logo.png and b/sprites/intro/intro_logo.png differ diff --git a/sprites/ui/icons.png b/sprites/ui/icons.png index 36ddb81..cf8b965 100644 Binary files a/sprites/ui/icons.png and b/sprites/ui/icons.png differ diff --git a/styles/game.css b/styles/game.css index 2903693..247220a 100644 --- a/styles/game.css +++ b/styles/game.css @@ -29,7 +29,7 @@ div{ /*, #game_words, #game_choices, #paused, #options, #loading, #gear, #about, width: 360px; height: 600px; - background: #111; + background: #000; font-size: 20px; font-family: Helvetica, Arial, sans-serif; @@ -585,7 +585,7 @@ DIALOGUEZ .mini-icon{ display: inline-block; background: url(../sprites/ui/icons.png); - background-size: 700%; + background-size: 800%; width: 20px; height:20px; position: relative; } @@ -610,6 +610,9 @@ DIALOGUEZ .mini-icon[pic="ok"]{ background-position: -600% 0px; } +.mini-icon[pic="next-black"]{ + background-position: -700% 0px; +} .narrator-bubble, .narrator-bubble-2, .narrator-bubble-4, .narrator-bubble-i, .narrator-bubble-5{ position: relative; @@ -692,7 +695,7 @@ DIALOGUEZ } .narrator-bubble-i img{ float:left; - margin: 0 20px; + margin: 0 20px !important; position: relative; top: -13px; } @@ -892,23 +895,27 @@ DIALOGUEZ #game_choices{ width: 100%; - height: 110px; - padding: 20px 0; + height: 130px; + padding: 10px 0; position: absolute; bottom:0; /*background: #2E2E2E;*/ text-align: center; - color: #fff; - font-weight: lighter; } #game_choices > div{ - padding: 0.25em 0; + + width: 310px; + margin: 0 auto 5px auto; + padding: 5px 10px; + cursor: pointer; position: relative; + border-radius: 20px; + /* Spring OUT only */ -webkit-transition: top 500ms cubic-bezier(0.350, 0.005, 0.370, 1); /* older webkit */ -webkit-transition: top 500ms cubic-bezier(0.350, 0.005, 0.370, 1.390); @@ -922,8 +929,29 @@ DIALOGUEZ -o-transition-timing-function: cubic-bezier(0.350, 0.005, 0.370, 1.390); transition-timing-function: cubic-bezier(0.350, 0.005, 0.370, 1.390); /* custom */ } -#game_choices > div:hover{ - background: rgba(255,255,255,0.25); +#game_choices > div[speaker=b]{ + background: #000; + color: #fff; + font-weight: lighter; +} +#game_choices > div[speaker=b]:hover{ + background: #333; +} +#game_choices > div[speaker=h]{ + background: #fff; + color: #000; + font-weight: lighter; +} +#game_choices > div[speaker=h]:hover{ + color: #888; +} +#game_choices > div[speaker=h2]{ + background: #fff; + color: #000; + font-weight: lighter; +} +#game_choices > div[speaker=h2]:hover{ + color: #888; } /***********************************/