Combined Code
movieClip 29 white {
}
// unknown tag 88 length 151
movieClip 35 {
}
movieClip 37 {
}
movieClip 42 {
}
movieClip 46 {
}
movieClip 55 {
}
movieClip 57 {
}
movieClip 63 {
frame 1 {
stop();
}
}
movieClip 67 {
}
movieClip 71 {
}
movieClip 75 {
}
movieClip 77 mainMenu {
}
movieClip 85 {
}
// unknown tag 88 length 146
movieClip 88 fileButton {
}
movieClip 90 saveLoadScreen {
}
movieClip 93 saveGame {
}
movieClip 96 {
}
movieClip 97 {
}
movieClip 98 premiumTopLeft {
}
// unknown tag 88 length 48
movieClip 104 patreonButton {
}
movieClip 106 overButtonShade {
}
movieClip 109 {
}
movieClip 113 {
frame 1 {
stop();
}
}
movieClip 120 {
}
movieClip 121 {
}
movieClip 125 lockIcon {
}
movieClip 126 {
frame 1 {
stop();
}
}
movieClip 129 {
frame 1 {
this._alpha = 0;
}
}
movieClip 130 optionsScreen {
}
// unknown tag 88 length 40
movieClip 136 noticeDialogueChoice {
}
movieClip 138 noticeDialogueBottom {
}
movieClip 139 {
}
movieClip 142 noticeDialogue {
}
// unknown tag 88 length 58
// unknown tag 88 length 19
// unknown tag 88 length 49
// unknown tag 88 length 215
movieClip 150 necessaryForItalics {
}
movieClip 152 {
}
movieClip 155 muteThing {
}
movieClip 157 menuBack {
}
movieClip 160 loadGame {
}
movieClip 162 {
}
movieClip 164 {
}
movieClip 165 {
}
movieClip 167 {
}
movieClip 168 {
}
movieClip 170 {
}
movieClip 171 {
}
movieClip 173 {
}
movieClip 174 {
}
movieClip 175 {
}
movieClip 176 {
}
movieClip 178 {
}
movieClip 179 {
}
movieClip 181 {
}
movieClip 182 {
}
movieClip 184 {
}
movieClip 185 {
}
movieClip 186 {
}
movieClip 187 {
}
movieClip 189 {
}
movieClip 190 {
}
movieClip 191 {
}
movieClip 193 {
}
movieClip 194 {
}
movieClip 195 {
}
movieClip 197 {
}
movieClip 198 {
}
movieClip 200 {
}
movieClip 202 {
}
movieClip 203 {
}
movieClip 204 {
}
movieClip 206 {
}
movieClip 207 {
}
movieClip 208 lensflare {
}
movieClip 211 gallery {
}
movieClip 213 fileButtonSmaller {
}
movieClip 214 {
}
movieClip 243 {
frame 1 {
stop();
}
}
movieClip 247 {
frame 1 {
stop();
}
}
movieClip 251 {
frame 1 {
stop();
}
}
movieClip 269 dialogue {
}
movieClip 271 {
}
movieClip 274 {
}
movieClip 275 choiceBoxMenu {
}
// unknown tag 88 length 76
movieClip 279 choiceBoxCrusoe {
}
movieClip 282 {
}
movieClip 287 {
frame 1 {
stop();
}
}
movieClip 289 choiceBoxPremium {
}
movieClip 291 {
frame 1 {
stop();
}
}
movieClip 293 choiceBox {
}
movieClip 295 black {
}
movieClip 299 {
}
movieClip 307 {
}
movieClip 309 {
}
movieClip 311 {
}
movieClip 313 {
}
movieClip 317 introAnime {
frame 2 {
_root.playSound2F('bookSlide');
}
frame 70 {
_root.playSound2F('bookOpen');
}
}
movieClip 633 {
frame 1 {
stop();
}
frame 10 {
gotoAndStop(1);
}
}
frame 3 {
function f(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10) {
parsing['s' + parser] = [s1, s2, s3, s4, s5, s6, s7, s8, s9, s10];
var v1 = parsing['s' + parser];
for (var v4 in v1) {
if (v1[v4] == undefined) {
v1.splice(v4, 1);
}
}
var v2 = false;
if (v1.length == 1) {
for (var v5 in commands) {
if (v1[0] == commands[v5]) {
v2 = true;
}
}
if (!v2) {
v1.splice(0, 0, 'thinking');
}
} else {
if (v1.length == 2 or v1.length == 3) {
for (var v5 in commands) {
if (v1[0] == commands[v5]) {
v2 = true;
}
}
if (!v2) {
v1.splice(0, 0, 'talking');
}
}
}
if (v1[0] == label) {
if (v1[2] == undefined or v1[2] == true) {
var v6 = v1[1];
parsing['s' + parser] = [jump, v1[1]];
v1 = parsing['s' + parser];
parser = Math.ceil((parser + 1) / 10000) * 10000;
labels[v6] = parser;
} else {
labels[v1[1]] = parser;
}
} else {
++parser;
}
if (v1[0] == label) {
allLabels.push(v1[1]);
} else {
if (v1[0] == 'talking' || v1[0] == 'thinking') {
++totalNumberOfDialogues;
} else {
if (v1[0] == 'ending') {
var v3 = true;
for (v4 in allUniqueEndings) {
if (allUniqueEndings[v4] == v1[1]) {
v3 = false;
}
}
if (v3) {
allUniqueEndings.push(v1[1]);
}
} else {
if (v1[0] == jump) {
allJumps.push(v1[1]);
} else {
if (v1[0] == 'person') {
allPersonsAndMoods.push([v1[1].image, v1[2]]);
} else {
if (v1[0] == 'choice' && v1[1] == undefined) {
++allChoices;
} else {
if (v1[0] == 'endChoice') {
++allEndChoices;
} else {
if (v1[0] == 'whatIf') {
++allIfs;
} else {
if (v1[0] == 'endIf') {
++allEndIfs;
}
}
}
}
}
}
}
}
}
}
stop();
parsing = new Object();
labels = new Object();
parser = 1;
scene = 'scene';
sceneClip = 'sceneClip';
cg = 'cg';
addButton = 'addButton';
addToCg = 'addToCg';
changeBg = 'changeBg';
panAll = 'panAll';
setFilter = 'setFilter';
setZoom = 'setZoom';
url = 'url';
pan = 'pan';
jump = 'jump';
person = 'person';
choice = 'choice';
endChoice = 'endChoice';
startGameAndJump = 'startGameAndJump';
continueLastGame = 'continueLastGame';
openMainMenu = 'openMainMenu';
playMusic = 'playMusic';
chibi = 'chibi';
setVolume = 'setVolume';
playSound = 'playSound';
stopMusic = 'stopMusic';
label = 'label';
ending = 'ending';
effect = 'effect';
screenEffect = 'screenEffect';
removeScreenEffects = 'removeScreenEffects';
item = 'item';
mcItem = 'mcItem';
pause = 'pause';
whatIf = 'whatIf';
elseIf = 'elseIf';
pass = 'pass';
otherwise = 'otherwise';
endIf = 'endIf';
setVariable = 'setVariable';
incrementVariable = 'incrementVariable';
languageScreen = 'languageScreen';
screenIsALink = 'screenIsALink';
changeName = 'changeName';
removeAllChars = 'removeAllChars';
remove = 'remove';
save = 'save';
calculate = 'calculate';
black = 'black';
me = 'me';
right = 'right';
left = 'left';
center = 'center';
fadeOut = 'fadeOut';
commands = [label, save, pan, setVolume, panAll, setZoom, sceneClip, setFilter, chibi, removeScreenEffects, screenIsALink, addButton, calculate, changeName, openMainMenu, item, mcItem, playMusic, stopMusic, playSound, choice, continueLastGame, endChoice, person, scene, cg, addToCg, changeBg, ending, screenEffect, effect, startGameAndJump, jump, pause, url, setVariable, incrementVariable, whatIf, elseIf, otherwise, endIf, pass, languageScreen, removeAllChars, remove];
totalNumberOfDialogues = 0;
allJumps = new Array();
allLabels = new Array();
allUniqueEndings = new Array();
allPersonsAndMoods = new Array();
allChoices = 0;
allEndChoices = 0;
allIfs = 0;
allEndIfs = 0;
x = '';
}
frame 3 {
c = 'c';
p = 'p';
s = 's';
m = 'm';
h = 'h';
c_t = 'c_t';
c_b = 'c_b';
}
frame 3 {
f(scene, 'black');
f(pause, 0.4);
f(scene, 'parentalAdvisory', 'fade');
f(pause, 1);
f(scene, 'white', 'fade');
f(pause, 0.5);
f(scene, 'table', 'fade');
f(pause, 1.5);
f(sceneClip, 'introAnime');
f(label, 'startMenu', false);
f(label, 'startMenu2', false);
f(label, 'startMenu3', false);
f(scene, 'title');
f(choice, {'style': 'Crusoe', 'xPos': 610, 'yPos': 200, 'rot': -2});
f(choice, 'Continue', 'continueCheck');
f(pause, 0.5);
f(continueLastGame);
f(choice, 'New Game');
f(startGameAndJump, 'scene1');
f(choice, 'Load Game', 'autoSaveExists');
f(openMainMenu, 'load');
f(choice, 'Options');
f(openMainMenu, 'options');
f(choice, 'Gallery');
f(openMainMenu, 'gallery');
f(choice, 'More games like this!');
f(url, 'patreonURL');
f(jump, 'startMenu2');
f(endChoice);
f(label, 'scene1');
f(setVariable, 'fuck', 'fuck');
f(setVariable, 'meow', '');
f(setVariable, 'meeoow', '');
f(setVariable, 'nya', '');
f(setVariable, 'nyaaa', '');
f(setVariable, 'robinson', 'Robinson');
f(setVariable, 'friday', 'Friday');
f(setVariable, 'hamburger', 'hamburger');
f(setVariable, 'tacos', 'tacos');
f(setVariable, 'hotdogs', 'hot dogs');
f(setVariable, 'sloppyjoes', 'sloppy joes');
f(setVariable, 'macandcheese', 'mac & cheese');
f(setVariable, 'chicago', 'Chicago');
f(setVariable, 'applepie', 'apple pie');
f(setVariable, 'subway', 'Subway');
f(setVariable, 'burgerking', 'Burger King');
f(setVariable, 'youtube', 'YouTube');
f(setVariable, 'kurtz', 'Kurtz');
f(setVariable, 'cheddar', 'cheddar');
f(setVariable, 'laurasburgers', 'Laura\'s Burgers');
f(setVariable, 'harrypotter', 'Harry Potter');
f(setVariable, 'castaway', 'Cast Away');
f(setVariable, 'california', 'California');
f(setVariable, 'norcal', 'NorCal');
f(setVariable, 'christ', 'Christ');
f(setVariable, 'notredame', 'Notre Dame');
f(setVariable, 'stanford', 'Stanford');
f(setVariable, 'UCLA', 'UCLA');
f(setVariable, 'google', 'Google');
f(setVariable, 'sanjose', 'San Jose');
f(setVariable, 'livingstone', 'Livingstone');
f(setVariable, 'fuji', 'Fuji');
f(setVariable, 'redhotchilipeppers', 'Red Hot Chili Peppers');
f(setVariable, 'captainphillips', 'Captain Phillips');
f(setVariable, 'rambo', 'Rambo');
f(setVariable, 'vietcong', 'Viet Cong');
f(setVariable, 'winniethepooh', 'Winnie the Pooh');
f(setVariable, 'internet', 'Internet');
f(setVariable, 'facebook', 'Facebook');
f(setVariable, 'indiana', 'Indiana');
f(whatIf, 'catgirl');
f(setVariable, 'meow', ', meow');
f(setVariable, 'meeoow', ', meeoow');
f(setVariable, 'nya', ', nya');
f(setVariable, 'nyaaa', ', nyaaa');
f(endIf);
f(whatIf, 'elf');
f(setVariable, 'robinson', 'Elfinson');
f(setVariable, 'friday', 'Menelya');
f(setVariable, 'hamburger', 'elfburger');
f(setVariable, 'tacos', 'orc tacos');
f(setVariable, 'hotdogs', 'hot dogs');
f(setVariable, 'sloppyjoes', 'sloppy amrods');
f(setVariable, 'macandcheese', 'lembas');
f(setVariable, 'chicago', 'Valmar');
f(setVariable, 'applepie', 'Hobbit honey-cake');
f(setVariable, 'subway', 'Nellas\' Subs');
f(setVariable, 'burgerking', 'Elfburger King');
f(setVariable, 'youtube', 'ElfTube');
f(setVariable, 'kurtz', 'Legolas');
f(setVariable, 'cheddar', 'elven');
f(setVariable, 'laurasburgers', 'Legolas\' Burgers');
f(setVariable, 'harrypotter', 'Third Age');
f(setVariable, 'castaway', 'Cast Away Elf');
f(setVariable, 'california', 'Valmar');
f(setVariable, 'norcal', 'the Girdle of Arda');
f(setVariable, 'christ', 'Iluvatar');
f(setVariable, 'notredame', 'Hiril Vuin');
f(setVariable, 'stanford', 'Elfvard');
f(setVariable, 'UCLA', 'UVGA');
f(setVariable, 'google', 'Hoboogle');
f(setVariable, 'sanjose', 'Elemmire');
f(setVariable, 'livingstone', 'Pengolodh');
f(setVariable, 'fuji', 'Fuji');
f(setVariable, 'redhotchilipeppers', 'Red Hot Elven Peppers');
f(setVariable, 'captainphillips', 'Captain Finarfin');
f(setVariable, 'rambo', 'Sauron');
f(setVariable, 'vietcong', 'Gandalf');
f(setVariable, 'winniethepooh', 'Findis the Pooh');
f(setVariable, 'internet', 'Elfnet');
f(setVariable, 'facebook', 'Elfbook');
f(setVariable, 'indiana', 'Ezellohar');
f(endIf);
f(whatIf, 'daughter');
f(setVariable, 'fuck', 'heck');
f(endIf);
f(playMusic, 'calm_beach');
f(scene, 'white', 'fade');
f(pause, 1);
f(cg, 'bg_sunsetsky', 'fade', 2, 'right');
f(screenEffect, 'lensflare', 440, 210, 1.5);
f('My $fcousin$ Sophie and I have been stranded alone on this uninhabited tropical island for more than a month, ever since our plane crashed in the ocean.');
f(whatIf, 'elf');
f('"See the tropical islands of the Undying Lands on the cheap with CelebrianAir!" It sounded like an awesome adventure, at the time. We had a two hour layover in Eressea where we switched to a propeller plane.');
f('Everything was exciting and new, until suddenly, we see the pilot grab a parachute and jump out of the plane.');
f('I doubt even he made it. We haven\'t even seen the bodies of any of the other passengers since we made it here, and it\'s not like there are any other islands nearby.');
f(endIf);
f(c_t, 'God, the sound of those waves… so soothing!', 'happy');
f(c_t, 'Welcome… to Commentary Mode! Featuring me, Taxcup…');
f(c_b, 'And me, Ben. I\'m the main writer - so mostly to blame. Though Taxcup did some editing and also added a scene or two.');
f(c_t, 'The good ones, really.');
f(c_b, '...', 'dumbfounded');
f(c_b, 'OK, let\'s get started with the actual game. We\'ll interrupt you once in a while but we\'ll try and keep it light. So, back to the game it is.', 'happy');
f('Except for the shock, we are mostly fine. We\'ve gotten by so far without any serious injuries, miraculously. Edible plants, fish and game are fairly abundant, and we\'ve even managed to make fire. What bothers me though, is…');
f('Well...');
f('I\'m…');
f('I\'m fucking horny as shit.');
f(c_t, 'Bother bother.');
f(pan, 'bg', -439, 0, 10);
f(pan, 'lensflare', -235, 0, 10);
f(pause, 3);
f(person, c, 'hi', 'hi_eyes_wideopenfriendly', -600, 0, x, x, x, true);
f(pan, c, 650, 0, 2);
f(pause, 1);
f(c, 'Hey $mcuz$, don\'t be daydreamin\' on the job!');
f(pause, 0.5);
f(stopMusic, 'fade');
f(c_b, 'Right, here she is, Sophie. Your cousin, as luck would have it.');
f(whatIf, 'fcousin!=cousin');
f(c_b, 'Or has happens to be the case in this particular playthrough, your $fcousin$.');
f(c_t, 'Either way…');
f(endIf);
f(c_t, 'She\'s a beaut. Drawn by the Japanese artist Sai Gakai, who\'s done most of the character art for this game, and one or two of the backgrounds. The main background artist was Roberto Gatto.', 'inlove');
f(c_b, 'Thank you Gakai! Thank you Gatto.');
f(pause, 0.5);
f(removeScreenEffects);
f(playMusic, 'dreamy');
f(changeBg, 'bubbles', 'fade', x, x, x, 0, 0);
f(pan, 'bg', -112, 0, 15);
f(pan, c, 100, 0, 15);
f(item, 'dream_overlay', 0, 0);
f(pause, 2);
f(whatIf, 'catgirl');
f('Sophie. My beautiful $fcousin$ Sophie, who… just happens to be a catgirl.');
f('She was just born that way, and nobody really knows why. The doctors of course took copious amounts of tests. The results were quite shocking - Sophie is actually part cat, genetically.');
f('There were all kinds of speculation as to what have caused this mutation, but science has so far been unable to provide an answer.');
f('It wasn\'t just Sophie either, though for some reason, the phenomenon was much more common in Japan than in the States.');
f('Sophie has grown up being treated normally by everyone around her, despite her mutation, for the most part.');
f('... that said…');
f('To some extent, I guess she\'s part of the problem.');
f(otherwise);
f('Sophie. My beautiful $fcousin$ Sophie. To some extent, I guess she\'s part of the problem.');
f(endIf);
f('Don\'t get me wrong, I\'m super happy to have her around. To be honest, I don\'t think I even would have managed to survive without her.');
f('But… having an 18-year-old girl skimping about the place in nothing but a far-from-modest swimsuit…');
f(c_t, 'It isn\'t very modest, is it?');
f(c_t, 'BigB, the producer, actually altered this picture a little bit, from Gakai\'s original. It wasn\'t as revealing, apparently.');
f(c_b, 'I think this is a great start to the game though, with her bust in your face like that. To get your blood pumping a little, if you will.', 'happy');
f(stopMusic, 'fade');
f(playMusic, 'calm_beach');
f(scene, 'white', 'fade');
f(whatIf, 'friend');
f('The problem is, I guess two-fold. She\'s <i>way</i> out of my league, but also, her family is… well, they\'re a little weird, is all. I don\'t remember the name but they\'re part of some sect. Like, you might have heard about them in the news...');
f(c_b, 'Right, so this is the friendship route. Or cheat route. Or whatever you want to call it. We added this because… well, supposedly, everybody isn\'t into incest, even if cousin incest is fairly mild.');
f(c_t, 'Compared to the other stuff out there, for sure.');
f(c_b, 'I had to come up with a reason why Sophie and Pete the Protagonist… well, that\'s his name, actually. Never mentioned in-game. But now you know.');
f(c_b, 'I had to come up with a reason they couldn\'t be together back home. The sect thing… well, it was the one thing I could come up with that seemed doable.');
f(c_t, 'We could have made her like, Indian instead. "I mustn\'t marry outside of my caste!" Indian parents are strict, dude. Of course, that would have been a total headache with the graphics.');
f('They\'re slogan is like, "Even worse than the Scientologists"… though they\'ve been around for ages.');
f('Sophie is not actually a believer, not at all, she\'s not like that. She does still value her… well, her coconut family, I guess.');
f('They actually had her swear off even seeing me as a friend, since she accidentally told them I\'m an atheist.');
f(c_t, 'As all sensible people are.');
f('I guess they feared I\'d be a bad influence.');
f('We\'re good friends, still, secretly.');
f('But what I mean is…');
f(otherwise);
f('No, I mean, no. I\'m not attracted to her. She\'s my $fcousin$, for $christ$\'s sake! My blood-related kin.');
f(whatIf, 'daughter');
f('My own flesh and blood, that I helped bring into this world. I mean, as the breadwinner of the family, I guess I haven\'t been the most present of dads.');
f('But no, no way!');
f(c_b, 'Slightly stereotypical dad, I suppose.');
f(elseIf, 'sister');
f('I mean, incest? Yuck! No way. I mean, if she weren\'t my sister… maybe I\'d be able to look at her in a, uh, different light, sure. I mean, she does have the… the, uh, all the physical assets I look for in a woman, I suppose.');
f(c_t, 'Stop pretending you\'re not way into her, dude.', 'angry');
f(c_b, 'Really.');
f(elseIf, 'elf');
f('Elven society may have changed a lot since the Third Age, but cousin incest? No. Not cool. Not ever.');
f(endIf);
f(whatIf, 'catgirl');
f('I mean, technically of course, there\'s the cat DNA in there which in some ways makes her less related to me than any other living, non-catgirl human… but, uh…');
f('Never mind, I forget why I brought that up. Catgirl or no, it\'s just not like that.');
f(endIf);
f(endIf);
f('If she weren\'t around, at least I could be masturbating, to… you know… make my mast, uh, abate. That\'s what I\'m talking about here.');
f(c_b, 'I thought "make my mast abate" was really funny when I came up with. I assumed somebody must have cracked the same joke online, but I only found a single mention on some rando\'s twitter.');
f(c_t, 'You heard it here first, folks.', 'happy');
f(whatIf, 'daughter');
f('I may be a father, but I have my needs too!');
f(endIf);
f(whatIf, 'friend');
f('So no, we didn\'t crash here on a crazy bid to elope from her family.');
f('Me and Sophie were lab partners in Biology and we got a scholarship to go to this remote island in the Philippines, to… well, I forget the details. We were to study a specific fly or something.');
f(c_b, 'All other routes… so I\'m going to call these routes, though strictly speaking I think that\'s the wrong terminology… they have you heading to a remote island somewhere near the Philippines for a family gathering.');
f(c_b, 'I was considering a graduation trip though but from the States all the way to the Philippines? Also, Sophie\'s family being deep into some sect, they\'d obviously never had let her go.');
f(c_t, 'Good thinking.');
f('The whole application was thought up by our teacher, who I honestly think had ulterior motives with Sophie… he was a bit of a creep.');
f('...');
f('I guess he\'s swimming with the fishes now. Maybe I shouldn\'t speak ill of the dead');
f(endIf);
f(scene, 'beach_sunset', 'fade');
f(setFilter, 'sunset');
f(person, c, 'dirty', 'happy');
f(setZoom, c, 0.9);
f(panAll, 30);
f(c, 'So… did you catch any fish?');
f('I proudly hold up the bizarrely shaped black and yellow fish I\'ve impaled on my primitive fishing spear.');
f(p, 'Yeah, got us dinner for tonight! Salmon, fuck yeah!');
f(person, c, 'dirty_right_arm_cover', 'disgusted', x, x, true);
f(c, 'Ew, what is that..? Are you sure it\'s even edible?');
f(whatIf, 'catgirl');
f('Despite her cat DNA, Sophie\'s taste in food is distinctly human. Or… distinctly US inland teenager, I guess.');
f(endIf);
f(p, 'I think... it\'s called a rockfish? They had one looking like this in the aquarium at the seafood restaurant back home...');
f(c_b, 'So rockfishes are an actual thing, obviously. I don\'t know if they appear in shallow waters or whatever. I don\'t even know what I googled.');
f(c_t, 'Random fish name generator?', 'confused');
f(person, c, 'dirty_left_arm_cover', 'neutral', x, x, false);
f(c, 'Uh… ok, well, it will have to do. Couldn\'t catch any freaky pigs today either. God, I\'m exhausted. Feels like shit, having wasted all that energy for nothing…');
f('What Sophie refers to when she says "freaky pigs" is the boars of the island, who have a very distinctive beard. I\'ve told Sophie the correct term is "boar", time after time, but she insists on her homemade terminology.');
f('Which I guess is adorable, if that\'s the kind of thing… you find adorable.');
f(whatIf, 'catgirl');
f('And yes, I\'m sorry to break the illusion - Soph is the alpha male around here - she does the hunting, aided by her razor-sharp cat reflexes and instincts. I collect roots, fruits and fish the occasional fish.');
f(otherwise);
f('And yes, I\'m sorry to break the illusion - Soph is the alpha male around here - she does the hunting. I collect roots, fruits and fish the occasional fish.');
f(endIf);
f(whatIf, 'daughter');
f('It\'s a completely crazy set-up, I guess, but Sophie always took after her mom more than me.');
f('We were only 15, Sophie\'s mom and I, when we had Sophie. From that, you can obviously tell she was what you\'d call a mistake. To me, it was a wonderful mistake at the time, to Sophie\'s mom, not as much.');
f('I\'m not saying I wanted a kid - but Sophie\'s mom was way out of my league and more than I could ever have hoped for. I never dreamt I\'d be together with somebody like her.');
f('Of course, without the liberal dousing of alcohol, Sophie would probably never have happened. My wife actually told me as much, at the time. But both she and I came from strongly Christian families.');
f('Her parents found out when she tried to have an abortion, and we were wed by the shotgun. We soon grew on each other, though.');
f(c_b, 'Had to have a reason for a geek to be involved with a woman beautiful enough to give birth to somebody like Sophie.');
f('That said, our relationship has of course had its ups and downs, like all other relationships. More downs than most, perhaps.');
f('I find myself frequently taking refuge in the world of porn games. I have a pretty vast library on my computer, actually.');
f(otherwise);
f(whatIf, 'friend');
f('While we\'re good friends, we don\'t exactly have all that much in common, except that we both are outsiders in some ways. Sophie is both sporty and social, but... well, she gets a lot of flak for the whole sect thing, as you\'d expect.');
f('Her parents don\'t exactly let her dress like she wants, so often times… She ends up looking a bit geeky.');
f('I mean, obviously she\'s still great looking, and I think she\'s had her fair share of guys coming onto her…');
f(whatIf, 'catgirl');
f('Yes, even with the cat ears. Oddly, not that many guys actually seemed turned off by them.');
f(endIf);
f('I don\'t have any odd religious associations bogging me down… OK, so I\'m an atheist, sue me.');
f('But, well, in other ways, I\'m a little… nerdy, I guess. Let\'s just say I have an impressive Wikipedia edit count and a pretty vast library of Steam games on my computer.');
f(whatIf, 'elf');
f('While we\'re $firstCousins$, we\'ve never really had a lot in common. Sophie was always the sporty, social one, while I … well, let\'s say I have an impressive Elfpedia edit count and a pretty vast library of ElfSteam games on my computer.');
f(otherwise);
f('While we\'re $firstCousins$, we\'ve never really had a lot in common. Sophie was always the sporty, social one, while I … well, let\'s say I have an impressive Wikipedia edit count and a pretty vast library of Steam games on my computer.');
f(endIf);
f(endIf);
f('Or had, really. My laptop was lost to the sea with a lot of our other stuff. Some drifted ashore, later, but no sign of old lappy.');
f(c_t, 'Old lappy! Har har.', 'happy');
f('My 10 gigs of downloaded flash porn games surely would have helped the situation…');
f(person, c, 'dirty_both_arms_behind_back', 'ingratiating_smile', x, x, true);
f(c, 'Hey, $mcuz$? Would you do me a huuuge favor$meeoow$?');
f(whatIf, 'catgirl');
f('Like I said… Sophie is mostly human, through and through. But just occasionally… she can\'t help but letting out a meow. It\'s kind of endearing, really. I wonder if she does it on purpose, sometimes...');
f(endIf);
f(p, 'What?');
f(person, c, 'dirty_both_arms_behind_back', 'begging');
f(c, 'Could you pleease, pleease, cook tonight? I\'m so damn tired, I could really use a break$meow$...');
f(choice);
f(choice, 'You\'re not that tired - offer to do it.');
f(jump, 'c1_1');
f(choice, 'Offer to do it, but try and make her feel guilty about it');
f(jump, 'c1_2');
f(choice, 'Refuse - you caught the fish - it\'s only right that she should cook it.');
f(jump, 'c1_3');
f(endChoice);
f(label, 'c1_1');
f(p, 'Sure, I\'m not too tired anyway. Got lucky today!');
f(c_t, 'Wise choice!');
f(c_b, 'Unless you\'re plotting to drug and rape her, of course.', 'worried');
f(c_b, 'If that\'s your aim, you horrible, horrible person you, you have to build up some contempt for her. Making her angry is the best way, obviously.', 'angry');
f(person, c, 'dirty', 'happy');
f(label, 'c1_1continued');
f(incrementVariable, 'like', 1);
f(person, c, 'dirty', 'super_happy');
f(c, 'Thanks $mcuz$! You\'re the best!');
f(scene, 'black', 'fade', 0.5);
f('Sophie leans forward to hug me, a bit awkwardly as I\'m sitting down in front of her. I can\'t help but be astutely aware of her soft breasts brushing against me.');
f(c_b, 'I wanted one more CG here, but I guess we ran out of money.', 'unhappy');
f('Fuckin\' $robinson$ Crusoe… he doesn\'t know how damn easy he had it, being stuck with nothing but cannibals. Eff that, what a piece of cake!');
f(endIf);
f(c_t, 'There we go, the name of the game. That moment when an on-screen character says the title of the movie… the tension, man.', 'happy');
f('I have a $fcousin$ who is hot as fuck and a total cocktease without even knowing it.');
f('I mean, not that I, you know, would want to… I mean, no, fuck, I\'m not a perv, man.');
f('That I get a bit… aroused, you know, it\'s not like that, not at all. It\'s just... being stuck here, with her, 24/7, and the revealing clothing, and…');
f(whatIf, 'daughter');
f('I mean, don\'t they say two men, stuck on an desert island, would before long begin having sex? I mean, in theory. No, I don\'t think I would, no, that\'s not what I\'m saying! I just mean… I can\'t help it, you can\'t blame me.');
f(c_t, 'Haha! He totally would, wouldn\'t he?', 'happy');
f(endIf);
f(scene, 'beach_sunset', x, x, x, x, 'right');
f(person, c, 'dirty_right_arm_cover', 'inquisitive');
f(c, '$mcuz$?');
f(p, 'Uh, right, I\'ll get to it!');
f('I stand up hurriedly, my back towards Sophie to hide the fact my cock has become semi-erect. I awkwardly circle around her and break into a half-jog towards the shelter.');
f(c_b, 'The sea was supposed to be towards your back for this, I guess. Why is he circling around her otherwise?', 'unhappy');
f(c_t, 'Details, details. Nobody\'s reading anything anyway. They\'re just fascinated by the pretty pictures, I\'m sure.', 'worried');
f(jump, 'p_cooking');
f(label, 'c1_2');
f(c_t, 'Oh! So you\'re going for the "I\'m a little bitch" route! That\'s alright.', 'angry');
f(c_b, 'Building up that contempt for Sophie is important if you want to drug her in the end - otherwise, Pete the Protagonist will refuse.', 'unhappy');
f(p, 'Uh… OK… I did catch the fish, and you know you\'re not the only one who\'s tired, but whatever, if you\'re not up for it…');
f(person, c, 'dirty', 'irritated', x, x, true);
f(c, 'If you\'re gonna be like that, I\'ll just do it myself. Seriously, don\'t even try and make me feel guilty.');
f('She sees fucking right through me.');
f(c_t, 'She\'s not your typical anime character, I\'d say.');
f(c_b, 'I\'m not a big anime fan, so I wouldn\'t know. But I guess I aimed for something believable, rather than… I dunno, cardboard?');
f(whatIf, 'daughter');
f('Sometimes I wish she\'d treat me with more respect. I am her father, not some teenaged friend of hers.');
f(endIf);
f(choice);
f(choice, 'Apologize and just say you\'ll do it');
f(jump, 'c2_1');
f(choice, 'Tell her she should do it.');
f(jump, 'c2_2');
f(endChoice);
f(label, 'c2_1');
f(p, '...');
f(p, 'I\'m sorry, didn\'t mean to be an asshole. I\'ll do it.');
f(person, c, 'dirty', 'neutral');
f(c, 'OK, thanks.');
f(remove, c);
f('I sit at the beach for a while, watching Sophie wash off the dirt of her body, before it gets a little too much with her boobs bouncing about. I head back to our shelter.');
f(c_t, 'Pics or it didn\'t happen!', 'happy');
f(c_b, 'Budget thing, again. So please support us on Patreon, if you aren\'t already! The more money we earn, the more we could spend.', 'unhappy');
f(c_t, 'Right now, we\'re obviously way in the red, already.', 'unhappy');
f(jump, 'p_cooking');
f(label, 'c2_2');
f(p, 'Well, you do it then. I caught the damn thing…');
f(person, c, 'dirty', 'angry');
f(c, 'Fine, what the $fuck$. I only fucking asked$meow$.');
f(remove, c);
f('Sophie storms off.');
f(jump, 'firstContempt');
f(label, 'c1_3');
f(c_t, 'The "I\'m just a bit of an asshole" route. Good choice!', 'happy');
f(c_b, 'I was debating the other guy whether you can be just a little bit asshole. Aren\'t you completely an asshole, or not at all?');
f(c_b, 'I met this guy who\'s… he\'s definitely an asshole, but he\'s also fun hanging around.');
f(c_t, 'An ass is an ass. As Shakespeare said.');
f(p, 'No way man, I caught the fish. I\'ve been cooking all your "freaky pigs"! Fair\'s only fair.');
f(person, c, 'dirty', 'irritated');
f(c, 'Well, yeah, but on those days, you\'ve usually been taking it easy, picking fruits and shit. Look at me, I\'m all smeared with monkey shit or whatever and dripping with sweat.');
f('She does look a bit ragged, I guess.');
f(person, c, 'dirty', 'begging');
f(c, 'Come on, pretty please would you cook$meeoow$?');
f('Maybe there\'s something in this for me?');
f(p, '... what do I get in return?');
f(person, c, 'dirty_both_arms_behind_back', 'charming_smile');
f(whatIf, 'elf');
f(c, 'Uh… you get the honor of being the best cousin in all the realms of Valinor?');
f(otherwise);
f(c, 'Uh... you get the honor of being the best $mcuz$ in the world?');
f(endIf);
f('She fires off that charming smile of hers.');
f(whatIf, 'daughter');
f(c, 'And… uh… a hug? From your beautiful and lovely daughter?');
f(otherwise);
f(c, 'And… uh… a hug from your very own, almost-as-awesome $fcousin$?');
f(endIf);
f(choice);
f(choice, 'Agree.');
f(jump, 'c3_1');
f(choice, 'Refuse.');
f(jump, 'c3_2');
f(choice, 'Ask to touch her breasts instead.');
f(jump, 'c3_3');
f(endChoice);
f(label, 'c3_1');
f(incrementVariable, 'like', 1);
f(p, 'Fine, you drive a hard bargain. I gracefully accept the "best $mcousin$ in the world" award and hope there are some other privileges associated with it, further down the road…');
f(person, c, 'dirty', 'happy');
f(c, 'Dude, you\'re already one privileged bastard - you have me looking after your scrawny ass$meow$!');
f(p, 'Well... I can\'t deny that.');
f(jump, 'c1_1continued');
f(label, 'c3_2');
f(p, 'Sorry $sophOrSis$, no can do.');
f(person, c, 'dirty', 'irritated');
f(c, '$christ$, I ask for one little favor... Fine, I\'ll do it.');
f(remove, c);
f(label, 'firstContempt', false);
f('Like I said. She\'s the alpha male around here. I guess I should be happy she didn\'t just kick my ass and forced me to do it.');
f(choice);
f(choice, 'She\'s a bitch.');
f(jump, 'c3_2_1');
f(choice, 'You should have offered to do it.');
f(jump, 'c3_2_2');
f(endChoice);
f(label, 'c3_2_1');
f(incrementVariable, 'contempt', 1);
f('She\'s a bit of a bitch, isn\'t she? Fair\'s only fair, no need for her to get so upset about it.');
f(c_t, 'Is she really, though?', 'unhappy');
f(c_b, 'That\'s definitely a "no" from me, but I\'m in 100% in love with Sophie. It\'s all on you, man. Don\'t be an asshole.', 'unhappy');
f(c_t, 'She your waifu, man?', 'inlove');
f(c_b, 'Definitely.');
f(whatIf, 'daughter');
f('She shouldn\'t boss me around like that. I mean, I\'m her father, aren\'t I? With my wife gone, it\'d only be fair if I finally got the chance to decide things, wouldn\'t it?');
f('I guess I\'m to blame… well, to some extent, for her turning out like she did.');
f(otherwise);
f('She shouldn\'t boss me around like that.');
f(endIf);
f('If only… there was some way I could one-up her.');
f(jump, 'c_cooking');
f(label, 'c3_2_2');
f('I probably should have just done it. There\'s no doubt she\'s done more for our food situation, and, well, almost everything, really, than me.');
f(c_t, 'Don\'t be so hard on yourself! You got the water thing set up.');
f(c_b, 'The mysterious… water… thing, that is never at all explained. Well, there\'s no mystery, really. I mean it\'s some condensation set up probably but what\'s the point having the characters go into details like that. Nobody really cares, I suppose.');
f(jump, 'c_cooking');
f(label, 'c3_3');
f(c_t, 'Boom.', 'surprised');
f(c_b, 'Where are you manners, Mister Player?', 'angry');
f(setVariable, 'boob_joker', true);
f(incrementVariable, 'like', -2);
f(p, 'You know what? I\'ll do it if you let me touch your boobs.');
f(person, c, 'dirty_both_arms_cover', 'disgusted', x, x, true);
f(c_b, 'I wasn\'t entirely happy about this face. A little too cartoony for my taste.', 'unhappy');
f(c_t, 'Oh, really? I think it works. But I guess I\'m more into da animu than you.');
f(c, 'What the actual fuck?');
f('Sophie\'s face contorts with disgust. I probably went a little too far there.');
f(p, 'H-hey, calm down, I was only jo-');
f(person, c, 'dirty_both_arms_cover', 'angry');
f(c, 'What the fuck is wrong with you, $mcuz$!?');
f(p, 'Come on, can\'t you take a joke?');
f(c, 'Oh ha-ha, you\'re so funny$meow$! Fuck you, I\'ll fuckin\' do it myself.');
f(remove, c);
f('Sophie turns around and begins walking towards our camp.');
f(choice);
f(choice, 'Let her go.');
f(jump, 'c4_1');
f(choice, 'Stop her and say you\'ll do it.');
f(jump, 'c4_2');
f(endChoice);
f(label, 'c4_1');
f('What the fuck is wrong with me? That was a fucking stupid joke. I hope she didn\'t think I was being serious.');
f(whatIf, 'daughter');
f('Obviously, it\'s not at all appropriate for a dad to joke about stuff like that. What the hell was I thinking?!');
f(c_t, 'No, it really wasn\'t. You perv.', 'unhappy');
f(endIf);
f('...');
f('I mean, if by chance she should actually have said yes… well...');
f('Ah, whatever, I shouldn\'t even think about stuff like that.');
f(c_t, 'You shouldn\'t! As far as I\'m concerned, this game only has one ending - the "true gentleman" one.');
f(c_t, 'Having actual sex? No way. Masturbating about, fine.');
f(c_b, '...', 'dumbfounded');
f(jump, 'c_cooking');
f(label, 'c4_2');
f(p, 'Hey, I\'m sorry, I\'m sorry, alright? It was just a stupid joke. I\'ll do it, you go wash off, or whatever. Take it easy. I\'ll do it.');
f('Sophie stops, and turns around.');
f(person, c, 'dirty', 'neutral');
f(c, '... OK, whatever.');
f(remove, c);
f('She leaves again.');
f('Was she really that pissed off? Or was she only acting to get me to do the cooking?');
f(c_t, '... she was that pissed off, I\'d say.');
f('That was a stupid fucking joke, though. Fuck. She might have thought I was serious, or something.');
f(whatIf, 'daughter');
f('Obviously, it\'s not appropriate for a dad to joke about stuff like that, at all. What was I thinking?!');
f(endIf);
f('...');
f('I mean, if by chance she should actually have said, uh, yes… well…');
f('Ah, whatever, I shouldn\'t even think about stuff like that. It was just a joke. A stupid joke.');
f(jump, 'p_cooking');
f(label, 'c_cooking');
f(setVariable, 'day1Chef', 'c');
f('I hang around at the beach for a while, poking at a small crab with a stick.');
f(changeBg, 'beach_night', 'fade', 10);
f(whatIf, 'daugher');
f(p, 'Little crab! Show me the way to your mama\'s house! Or you know, an uncle, or whatever. Somebody with a little more meat to them than you…');
f(otherwise);
f(p, 'Yo bitch, show me to yo mama\'s house! I want a big fat mama crab for breakfast!');
f(endIf);
f('The crab doesn\'t seem to understand what I\'m asking for and instead walks back and forth confusedly, away from the stick.');
f('Maybe it\'s a little bit retarded. Or just doesn\'t know English very well. Horrible, the lacking standards in crab education, really. I mean, in these times.');
f(c_t, 'Please help us raise funds for the Marble Syrup Desert Island Crab School. Call 1-555…');
f(c_b, '...');
f(c_t, '...', 'worried');
f(c_b, 'Go on!');
f(c_t, '... patreon, with an \'e\' after the \'o\', dot com slash marble syrup, one word.');
f('After an entire hour or so of pointless torture I begin feeling at least a little bad and I notice it\'s getting dark. I go back to the shelter to see how the meal\'s coming along.');
f(stopMusic, 'fade');
f(playMusic, 'distant_waves');
f(scene, 'outside_shelter_night_fire', 'blackFade', x, x, x, 'center');
f(setFilter, 'nightFire');
f('As I get closer, I see $myCousin$ scraping off what looks like a badly burnt fish from the skewer onto our makeshift palm leaf plates.');
f(whatIf, 'boob_joker');
f(person, c, 'basic', 'slight_sulk');
f('She doesn\'t particularly bother to acknowledge me as I sit down by the fire. Still upset about that perfectly innocent joke, it seems.');
f(c_t, 'Perfectly innocent, I\'m sure.', 'angry');
f(otherwise);
f(person, c, 'basic', 'smiling');
f(c, 'Hey, I\'m just about done. Have a seat. Fuck, I\'m hungry!!');
f(endIf);
f('Sophie hands me my palm leaf of fish. Uh… yeah. It is badly burnt. And… of course, she couldn\'t bother actually using any of the many herbs I\'ve gathered. They do make a big difference, you know.');
f(c_b, 'The whole cooking thing is a bit contrived, in some ways. I mean, the protagonist drying herbs and stuff. It\'s mostly a set up for the drug ending, I suppose.', 'unhappy');
f(c_b, 'A Chekhovian gun, if you\'d like.');
f(c_t, 'Fancy, dat.');
f(p, 'Thanks.');
f(c, 'Let\'s eat.');
f(remove, c);
f('Except for the burnt skin, the fish itself doesn\'t taste that much, except for charcoal. The nicest thing you could say about it is that it\'s edible - no, really, it\'s that bad.');
f('I take a few bites, chew, and swallow, and notice Sophie is intently watching me eat.');
f('I look up towards her.');
f(person, c, 'basic', 'inquisitive');
f(c, 'So... how is it?');
f(choice);
f(choice, 'Tell her she should have used the spices.');
f(jump, 'c_cooking_nagger');
f(choice, 'Tell her it\'s badly burnt and doesn\'t taste much.');
f(jump, 'c_cooking_truth');
f(choice, 'Tell her you like it.');
f(jump, 'c_cooking_liar');
f(endChoice);
f(label, 'c_cooking_nagger');
f(c_t, 'Nag, nag…');
f(p, 'Well, the thing is… Why don\'t you ever use my herbs?');
f(whatIf, 'catgirl');
f(c, 'Meow?');
f(otherwise);
f(c, 'What?');
f(endIf);
f(p, 'My herbs. My dried herbs. There\'s no flavor at all, you should have used the herbs.');
f(c_t, 'I\'m talkin\' \'bout da \'erbs, woman!', 'angry');
f(label, 'c_cooking_irritated');
f(person, c, 'basic', 'irritated');
f(c, 'Well, sorry I\'m not the perfect cook.');
f(person, c, 'basic', 'angry', x, x, true);
f(c, 'Damnit $mcuz$! If you\'re just gonna complain anyway, why did you even make me cook it in the first place? I fucking asked nicely, didn\'t I?');
f(whatIf, 'daughter');
f('Swearing her own father in his face… where\'s her manners?');
f(endIf);
f(whatIf, 'boob_joker');
f(jump, 'c_cooking_angry');
f(elseIf, 'contempt>0');
f(jump, 'c_cooking_shutup');
f(endIf);
f(choice);
f(choice, 'Tell her to stop being a bitch');
f(jump, 'c_cooking_shutup');
f(choice, 'Apologize.');
f(jump, 'c_cooking_sorry');
f(endChoice);
f(label, 'c_cooking_angry');
f(p, 'Hey, th-');
f(c, 'Okayfinewhatever!');
f(remove, c);
f('Sophie storms off with the plate in her hand and sits herself on the beach, finishing her meal on her own.');
f(whatIf, 'boob_joker');
f('That was… quite the overreaction. Is she still upset about that innocent joke..?');
f(endIf);
f('I sigh. We\'re getting each other\'s nerves, more and more, lately.');
f(choice);
f(choice, 'It\'s her fault.');
f(jump, 'herfault');
f(choice, 'It\'s your fault.');
f(jump, 'yourfault');
f(endChoice);
f(label, 'herfault');
f(incrementVariable, 'contempt', 1);
f('It\'s her fault. She\'s becoming something of a bitch, lately.');
f(jump, 'straight_to_bed');
f(label, 'yourfault');
f('It\'s mostly my fault. I guess, truth be told, I can act like a nagging little bitch sometimes.');
f(whatIf, 'daughter');
f('I should try and act more fatherly.');
f(endIf);
f(jump, 'straight_to_bed');
f(label, 'c_cooking_shutup');
f(incrementVariable, 'contempt', 1);
f(p, 'Would you stop being such a bitch all the fucking time? You asked what I thought and I told you. $christ$, why do you have to be like this!');
f(c_t, 'Dishing it out, huh!', 'unhappy');
f(c_b, 'Player_contempt_towards_Sophie, plus one.', 'confused');
f(person, c, 'basic', 'angry');
f(c, 'Like this!? You\'re the one who\'s always so damn condescending!');
f(c, 'Like, it\'s fine that you don\'t like it! I didn\'t ask for you to fucking like it.');
f(c, 'I asked for an opinion, not fucking… nagging.');
f(whatIf, 'daughter');
f(p, 'Look young lady, I\'ve had quite enough of your swearing! I am your father! You have no right to talk to me like that!');
f(otherwise);
f(p, 'OK, whatever.');
f(endIf);
f(person, c, 'basic', 'irritated', x, x, true);
f(c, 'Yeah, right, whatever.');
f(jump, 'straight_to_bed');
f(label, 'c_cooking_sorry');
f(p, 'I\'m sorry.');
f(c, 'For what?');
f(choice);
f(choice, 'For complaining.');
f(p, 'I\'m sorry I complained about your food.');
f(c, '... whatever.');
f(remove, c);
f(jump, 'straight_to_bed');
f(choice, 'For making her cook.');
f(jump, 'c_cooking_sorry_cooking');
f(choice, 'For behaving like a bitch.');
f(jump, 'c_cooking_sorry_bitch');
f(endChoice);
f(label, 'c_cooking_sorry_cooking');
f(p, 'For making you cook though you were obviously tired from hunting and just wanted to get a rest.');
f(person, c, 'basic', 'neutral');
f(c, 'OK, apology accepted. Also, please don\'t nag like that, OK?');
f(c, 'I know I\'m not the best cook, but I do my best. If you want me to use your herbs, teach me how, I don\'t know shit about what goes well with what.');
f(c, 'It all looks like the same fucking... dried grass to me$meow$.');
f(whatIf, 'daughter');
f(p, 'Soph, language! But you\'re right. I\'m sorry.');
f(otherwise);
f(p, 'Sorry.');
f(endIf);
f(jump, 'c_cooking_goodapology');
f(label, 'c_cooking_sorry_bitch');
f(p, 'For behaving like a bitch.');
f(person, c, 'basic', 'neutral', x, x, true);
f(c, 'That\'s right. $mcuz$, man up a bit, OK? Don\'t be such a freakin\' nagger. If you don\'t like it, say so, just don\'t nag.');
f(whatIf, 'daughter');
f('Did my own daughter just tell me to man up? Oh, the humiliation… I guess she\'s right though.');
f(endIf);
f(jump, 'c_cooking_goodapology');
f(label, 'c_cooking_goodapology');
f(p, 'Alright.');
f(label, 'c_cooked_nowalk');
f('We finish our meals and throw away the bones on our pile of crap just behind the camp. Sophie goes straight to bed. I sit outside our shelter, gazing at the stars for a while, then lie down next to her, falling asleep almost immediately.');
f(stopMusic, 'fade');
f(scene, 'black', 'fade', 2);
f(pause, 1);
f(jump, 'day2');
f(label, 'c_cooking_truth');
f(p, 'Well, $sophOrSis$, to tell you the truth, it\'s overcooked, badly burnt and has hardly any flavor, but on the positive side, it\'s, you know, <i>nearly</i> edible and all.');
f(whatIf, 'boob_joker');
f(jump, 'c_cooking_irritated');
f(endIf);
f(incrementVariable, 'like', 1);
f(person, c, 'basic', 'laughing');
f(c, 'Haha, well I told you shouldn\'t have made me cook. Maybe next time you\'ll think twice!');
f(c_b, 'You nullify the dislike Sophie grew for you when you refused to cook right here.');
f(p, 'I could show you how to use my herbs though. I mean, we don\'t have much to work with, so there won\'t be much flavor anyway.');
f(person, c, 'basic', 'irritated_halfsmile');
f(c, 'Sure, not right now though.');
f(p, 'Sure.');
f(remove, c);
f('We finish our meals.');
f(person, c, 'basic', 'neutral');
f(jump, 'c_cooked_walk_invite');
f(label, 'c_cooking_liar');
f(p, 'It\'s really nice! I like it!');
f('I make an effort to look like I\'m enjoying it and shuffle some of the blackened pieces into my mouth. Bloody hell.');
f(c_t, 'Bloody \'hell, mate!', 'c_surprised');
f(c_b, 'It sounds kind of horrible. Just how bad did Sophie fuck up the fish? "Blackened pieces"?', 'worried');
f(person, c, 'basic', 'irritated');
f(c, 'Uh, ok.');
f(c, 'So why were you making faces at it a second ago?');
f(c_t, 'Bahabahabahabaah! Nice try.', 'happy');
f(p, 'I, uh…');
f(c, '$mcuz$, don\'t patronize me, OK? If you don\'t like it, say so.');
f(p, '...');
f(p, '$sophOrSis$, if you already know the answer, why do you even ask?!');
f(c, '... uh...');
f(person, c, 'basic', 'smallsmile');
f(c, 'Sorry, you\'re right, I shouldn\'t have put you on the spot.');
f('We finish our meals.');
f(jump, 'c_cooked_walk_invite');
f(label, 'c_cooked_walk_invite');
f(c, 'Hey, I think I\'m gonna go for a walk along the beach… do you wanna come$meow$?');
f(choice);
f(choice, 'Go along');
f(jump, 'cooking_convo');
f(choice, 'Stay and get an early night');
f(jump, 'earlynightnocook');
f(endChoice);
f(label, 'earlynightnocook');
f(p, 'I\'m kinda tired, actually. I think I\'ll call it an early night.');
f(person, c, 'basic', 'smiling');
f(c, 'OK, suit yourself! Nightie night!');
f(remove, c);
f('I sit outside the shelter for a while, gazing at the stars. Eventually I go inside the shelter, lie down and fall asleep almost immediately.');
f(jump, 'day2');
f(label, 'p_cooking');
f(setVariable, 'day1Chef', 'p');
f(incrementVariable, 'like', 1);
f(stopMusic, 'fade');
f(playMusic, 'distant_waves');
f(scene, 'outside_shelter_evening', 'blackFade');
f(changeBg, 'outside_shelter_night_fire', 'fade', 10);
f(setFilter, 'nightFire');
f(panAll, 10);
f('I guess I\'m a nerd in many ways, but I\'m actually pretty good at cooking.');
f(whatIf, 'daughter');
f('Not that I usually had a lot of time to do it at home, working so hard… but I\'d always jump on the occasion when I could.');
f('I could spend an entire Saturday experimenting with different ways of marinating meat.');
f('Not that that knowledge helps all that much out here, of course. Without ingredients...');
f(otherwise);
f(c_b, 'So the whole, "I\'m good at cooking" thing does feel a little contrived. Apologies.', 'unhappy');
f(c_b, 'You might not expect an 18-year-old computer geek being great at cooking.', 'unhappy');
f(c_b, 'Then again, you never know.', 'unhappy');
f(endIf);
f('As it begins to darken, I rinse the fish, carefully set up the fire, skewer the fish and begin to grill it over the open fire.');
f('Its skin begins to crack and small bubbles form all over as the water inside the fish begins to boil.');
f('When it\'s looking nice and done, I carefully remove it from the skewer onto our plates - or, well, you know, the palm leaves we use for plates.');
f('When I\'m finished, I sprinkle some herbs over the fish. I got them are from plants I found on the island, and I\'ve been drying these for the past few days. Though I wish we had peppercorns... well, when you\'re stranded on a desert island, you\'ve got to make do with what you have.');
f('The fish gives a pleasant enough smell, thank God. The fish I caught last week stank like crazy when roasted - don\'t ask me why! It wasn\'t rotten or anything, obviously. Straight out of the sea.');
f('It didn\'t taste all that bad though… Yes, we did finish it anyway. Didn\'t I tell you about our hunger problem just now?');
f(c_t, 'I don\'t think you did, buddy?');
f(c_b, 'Well, well. I think he will, soon, then?', 'worried');
f(p, '$sophOrSis$? Dinner\'s ready.');
f('After a few moments, $myCousin$ comes out of the shelter with a sleepy look on her face.');
f(person, c, 'both_arms_behind_head', 'yawning');
f(c, 'Smells good, $mcuz$!');
f(p, 'It\'s not me - it\'s the fish!');
f(c_t, 'You\'re being awfully charmy today.', 'worried');
f(person, c, 'basic', 'teasing', x, x, true);
f(whatIf, 'catgirl');
f(c, 'Meow.');
f(otherwise);
f(c, 'Haha.');
f(endIf);
f(p, 'There\'s so much fish, I figured we should save the few roots we have for a rainy day. LCHF, fuck yeah!');
f(person, c, 'basic', 'happy', x, x, true);
f(whatIf, 'daughter');
f(c, 'Dad, language!');
f(p, 'Haha. I\'m older than you, I get to say what I want.');
f(c_t, 'Ain\'t that the truth.', 'happy');
f(c_b, '...', 'angry');
f(p, 'Let\'s eat!');
f(endIf);
f(c, 'Oh-thank-you-god-for-blessing-this-fish-OK-whatever, let\'s eat!');
f(remove, c);
f('The biggest problem being stranded here, well, after the whole lack-of-masturbation problem, I mean, is the constant hunger.');
f('OK, so really, it\'s the biggest problem, by far actually. I guess a lack of masturbation doesn\'t threaten to kill me.');
f('We quickly devour the fish. What little I can taste of it as I hungrily jam it down my throat is actually surprisingly nice, considering everything.');
f('I hope I\'ll be able to catch more rockfishes, though it\'s only the second time I ever saw one while fishing. Might have been the one same fish, even.');
f(c_t, 'Poor sod. The fish, I mean.', 'unhappy');
f(person, c, 'basic', 'happy');
f(c, 'Good job, $mcuz$! You\'re really not too bad of a chef!');
f(whatIf, 'sister');
f(p, 'What if mom could see me, huh?');
f(c, 'She wouldn\'t believe her eyes. Our mouth. It really was quite nice.');
f(endIf);
f(p, 'Thanks. You feeling rested?');
f(c, 'Yeah, I kinda fell asleep for a while, even. Hey, I think I\'ll go for a walk along the beach, or I won\'t be able to fall asleep again. What about you?');
f(choice);
f(choice, 'Go along');
f(jump, 'cooking_convo');
f(choice, 'Stay and get an early night');
f(jump, 'earlynight');
f(endChoice);
f(label, 'earlynight');
f(p, 'I\'m kinda tired from the fishing and cooking, to be honest. I think I\'ll call it an early night.');
f(person, c, 'smiling');
f(c, 'OK, suit yourself! Nightie night!');
f(whatIf, 'like>=2');
f(scene, 'black', 'fade');
f('Sophie leans over and plants a kiss on my forehead, her breasts dangling in front of my face. Damnit.');
f(c, 'Thank you for today!');
f(otherwise);
f('Sophie pats me on the head as if I were a little child and turns around, heading towards the beach.');
f(endIf);
f(scene, 'moonsky', 'fade');
f('I sit outside the shelter for a while, gazing at the stars.');
f(scene, 'black', 'fade');
f(stopMusic, 'fade');
f('Eventually I head into the shelter, falling asleep almost immediately.');
f(jump, 'day2');
f(label, 'cooking_convo');
f(incrementVariable, 'like', 1);
f(p, 'Sure, let\'s go.');
f(scene, 'moonsky', 'blackFade');
f(stopMusic, 'fade');
f(playMusic, 'breezy_beach');
f('We go for a walk on the moonlit beach, next to each other in a comfortable silence.');
f('It was a little bit awkward at times in the beginning, of course. Just the two of us, by ourselves.');
f(c_b, 'Exposition time!', 'happy');
f(whatIf, 'daughter');
f('Even just the two of us on the plane… that was pretty unusual. We haven\'t travelled much as a family - many times I\'ve been too busy with work. It would usually be Sophie and her mom, going to some sunny beach somewhere down south…');
f('Sun-bathing topless, the two of them, I\'m sure.');
f('...');
f('I guess the why and how is all the same now, but we were heading for this remote island off the Philippines, where my stinking rich younger brother\'s had this luxurious mansion built... ');
f('He\'s one of the countless people who made a smaller fortune off of developing a Minecraft clone. It was even more popular than the original on some platforms… well, before they ported the real thing there, at least.');
f('He had two incredible years, and then decided to retire, just like that.');
f('No one in our family really likes him, I guess. Especially not my wife! But hey, when he pays for stuff… we all come around');
f('My wife was supposed to come along too, but got delayed one day because of her work. I suppose she must have gotten on the plane before hearing about our plane crashing… She must have made it to Manila when she found out.');
f(otherwise);
f(whatIf, 'sister');
f('Even just the two of us on the plane… that was pretty unusual, but we both had an important test the same day so we couldn\'t leave together with the rest of our families.');
f('I guess the why and how is all the same now, but this uncle of ours, who\'s rich as a Google founder....');
f(elseIf, 'friend');
f('Though we\'re good friends, we never really hung out exclusively with each other, and never <i>this</i> much.');
f(elseIf, 'elf');
f('Even just the two of us on the plane… that was pretty unusual, but we both had an important test in Dwarfish the same day so we couldn\'t leave together with the rest of our families.');
f('I guess the why and how is all the same now, but my uncle, not Sophie\'s dad but a second uncle, is as rich as Smaug....');
f(otherwise);
f('Even just the two of us on the plane… that was pretty unusual, but we both had an important test the same day so we couldn\'t leave together with the rest of our families.');
f('I guess the why and how is all the same now, but my uncle, not Sophie\'s dad but a second uncle, is rich as a Google founder....');
f(endIf);
f(whatIf, '!friend');
f(whatIf, 'elf');
f('OK, maybe not quite that rich, but he sure has a lot of gold. Anyway, he\'s had this big house built on this island in the tropical south of Valinor, Tol… Tol Ambo? Maybe. I forget the exact name.');
f(otherwise);
f('OK, he\'s not really, of course. But from my perspective as a penniless 18-year-old, I guess it\'s all the same. Anyway, he\'s had a big house built in the Philippines that was just finished and he invited the whole family over for his 50th birthday slash housewarming party.');
f(endIf);
f('I get the sense that nobody really likes him in our family, except when he pays for stuff, like, well, this time.');
f('I guess it\'s slightly ironic that he paid for mine and Soph\'s plane tickets as well. Plane tickets of doom..!');
f('Uh, yeah, maybe not exactly ironic, but whatever.');
f(endIf);
f(endIf);
f(whatIf, 'friend');
f('Now, we don\'t mind the silence. It\'s interesting how that works, really. Usually, you have all these… social mores, and stuff, that you need to think about. Do this, do that, act like this…');
f('I don\'t think I ever were my true self, entirely, in front of Sophie, until coming here.');
f('We\'re free from a lot of conventions out here.');
f(otherwise);
f('It\'s pretty sad how everyone\'s so obsessed with money. I guess we\'re free from that, out here.');
f(endIf);
f(c_b, 'There was actually no explanation at all why they ended up on the island in the first drafts. No mention as to where they were, exactly, either.');
f(c_t, 'It worked that way too, but I guess some specificity is nice too. It gives more depth to the characters, I think. Unless you subscribe to the idea of leaving it up the reader\'s imagination…');
f(c_b, 'Reader? Imagination..?', 'worried');
f(c_t, '...', 'dumbfounded');
f(c_b, 'Nah.', 'unhappy');
f('This island… you might see it as a prison, but it\'s also paradise. It\'s so beautiful.');
f(scene, 'beach_night', 'fade');
f(setFilter, 'night');
f(person, c, 'basic', 'laughing', 'left');
f(setZoom, c, 1.5);
f(panAll, 35);
f(c_t, 'Wow, girl, that\'s close enough!', 'surprised');
f(c, '$mcuz$, you should have seen your own face for the past minute!');
f(person, c, 'basic', 'smiling');
f(c, 'You\'ve been making a lot of faces, as if you were grappling with the big questions of life or something. Here.');
f('She makes a gesture as if she were giving me something, though her hand is of course empty. I stare at her, stupidly.');
f(c, 'A penny for your thoughts.');
f(p, 'Oh.');
f(c_b, 'This choice right now is the break-it or make-it for reaching the Paradise ending.');
f(choice);
f(choice, '"How long do you think it will be before we\'re rescued?"');
f(c, 'Well… who knows, really! How long has it been already?');
f(p, 'More than a month, I think.');
f(c, 'Yeah… that\'s a lot of time without seeing a single ship on the horizon, isn\'t it? What do you think?');
f(jump, 'cooking_convo2');
f(choice, '"I double - two pennies for <i>your </i> thoughts!"');
f(person, c, 'basic', 'teasing', x, x, true);
f(c, 'Oh, two pennies huh?? Well, I call.');
f(person, c, 'basic', 'laughing');
f(c, 'See, my mind\'s a blank! You lose!');
f(p, 'Aw, no fair!');
f(person, c, 'basic', 'smiling');
f(c, 'Such is life. Remember you owe to me two pennies for when we get back, aight?');
f(p, 'Yeah. When we get back, sure.');
f(person, c, 'basic', 'slightly_concerned');
f(c, '...');
f(c, 'How long do you think it will take? Before we\'re rescued, I mean. It\'s already been what, a month?');
f(jump, 'cooking_convo2');
f(choice, '"Do you want to go back?"');
f(incrementVariable, 'wantToStay', 1);
f(c_b, 'This is the path to the paradise ending.');
f(c_b, 'You need to express a wish to stay. I meant to give you more than one opportunity to do so, but the script didn\'t end up being writ like that.');
f(c_t, 'These things get a life of their own, don\'t they.');
f(setVariable, 'askedYouWantToGoBack', true);
f(person, c, 'basic', 'surprised');
f(c, 'Say what? If I <i>want</i> to go back? What...');
f(c, 'What kind of question is that? Of course I do. I mean, I can\'t fucking wait!');
f(person, c, 'basic', 'very_slightly_surprised');
f(c, 'What… are you telling me, you wouldn\'t mind staying?');
f(p, 'Well, no, I mean…');
f(whatIf, 'catgirl');
f(c, 'Because you can bet your scrawny ass I\'m leaving you behind when they come for us, meow?');
f(otherwise);
f(c, 'Because you can bet your scrawny ass I\'m leaving you behind when they come for us, \'kay?');
f(endIf);
f(person, c, 'basic', 'smiling');
f(p, 'That\'s cold, $sophOrSis$… you know I wouldn\'t last long without you to protect my scrawny ass.');
f(c, 'You got that right!');
f(c, '...');
f(person, c, 'basic', 'inquisitive', x, x, true);
f(c, 'What do you mean though, "do you want to stay?" I mean.. what!?');
f(p, 'I don\'t know, you know… it\'s just… it\'s a really beautiful night.');
f(p, 'I\'m not saying I want to stay, but…');
f(p, 'You know, it\'s not like I\'m on my own, right? I\'ve got my $friday$…');
f(person, c, 'basic', 'smiling');
f(c, 'Hahaha, $mcuz$, that\'s twisted. If anything, I\'m Crusoe and you\'re <i>my</i> $friday$.');
f(person, c, 'basic', 'laughing');
f(c, '"You no teach me good English, mistah!"');
f(person, c, 'basic', 'smiling');
f(p, 'Bitch, please… I\'ve taught you everything you know. I mean, sure, you can hunt, but where would we be without water? You\'d never have figured out how to do it.');
f(c, 'Riiiight…. so what you\'re saying, basically, is that I\'m the black muscle to your white brain?');
f(person, c, 'basic', 'teasing');
f(c, 'You racist!');
f(person, c, 'basic', 'smiling');
f(p, 'Ahaha… well OK. I\'ve got my $robinson$ Crusoe then. I\'m the helpless $friday$, saved from the cannibals.');
f(whatIf, 'catgirl');
f(c, 'Rescued by Catgirl Robinson, meow!');
f('I smile. Sophie has never had any problems joking about her… being different.');
f(p, 'Right.');
f(endIf);
f(p, 'What I meant to say, though, is, you know.');
f(person, c, 'basic', 'very_slightly_surprised');
f(p, 'I guess… I guess I could stay a while longer, is all.');
f(person, c, 'basic', 'smiling');
f(whatIf, 'daughter');
f(p, 'I mean, you know what mom\'s like. Things aren\'t always great between us.');
f('Sophie looks down, signalizing that this is a topic she isn\'t all that comfortable with.');
f(c, 'Yeah, I guess I\'ve noticed as much.');
f(p, 'Don\'t worry, though! We\'re not getting divorced or anything. We love each other.');
f(c, 'Do you… do you think she thinks we\'re dead?');
f(p, 'Nah, your mom… she doesn\'t give up hope easily, like that. She might have written off me but in her mind, you definitely survived the crash!');
f(person, c, 'basic', 'smiling');
f(c, 'Haha! I know what you mean, I guess.');
f(elseIf, 'sister');
f(p, 'I mean, you know what mom\'s like. Just because you\'re a year older than me…');
f(c, 'Hey, I\'m 18 too! Don\'t make me look old!');
f(p, 'Yeah, but I mean, you know how mom and dad treat me like I\'m this little baby? While they let you do pretty much anything.');
f(c, 'Uh, well, it\'s also the case of me actually <i>wanting<i> to do stuff, while you always seem to be content in front of your computer or the Xbox…');
f(p, 'Well, which came first, the egg or the hen?');
f(c, '... I know what you mean, I guess. I can\'t deny they treat us differently.');
f(elseIf, 'friend');
f(p, 'I mean, you know my mom. She can be a bit… smothering-');
f(c, 'Phh, you tellin\' me? Excuse me, have you <i>met</i> my parents?');
f(c_t, 'Bro, her family\'s in some weird cult, for crying out loud. Don\'t think you got nothing on her.', 'angry');
f(c_b, '<i>Can\'t touch this. Nananananah, nanah, nanah.</i>', 'happy');
f(p, 'Haha, well, I guess so. But I mean, your parents, no offense, but… they\'re extreme. My mom isn\'t like yours, but she\'s still… you know, an over-average meddler.');
f(c, 'Yeah, well…');
f(otherwise);
f(p, 'I mean, you know my mom, I mean, your aunt. She can be a bit… smothering. It\'s nice to… to get to try my wings a little.');
f(c, 'Hah, well, sure.');
f(endIf);
f(c, 'I can\'t wait to get back though.');
f(c, '...');
f(jump, 'cooking_convo_end');
f(choice, '"What do you miss the most from back home?"');
f(person, c, 'basic', 'pondering');
f(c, 'Hmm.. good question.');
f(c, 'First of all, food, I guess.');
f(c_b, 'I think this is a very realistic answer. I doubt you\'d even consider your family if you were in a situation like this.');
f(c_t, 'Man, I\'m getting hungry for a $hamburger$.', 'confused');
f(c_b, '...', 'dumbfounded');
f(person, c, 'basic', 'smiling');
f(c, 'Like, man, could you imagine a $hamburger$ right now?!');
f(whatIf, 'day1Chef==p');
f(p, 'You complainin\' \'bout the food, ma\'am?');
f(person, c, 'leftpeace', 'teasing');
f(c, 'Bleh!');
f(person, c, 'basic', 'smiling');
f(c, 'Nah $mcuz$, you know what I mean.');
f(otherwise);
f(p, 'Oh boy, could I.');
f(endIf);
f(c, 'And what else… $burritos$? $tacos$? $hotdogs$? Uh… $sloppyjoes$… $macandcheese$… $chicago$ style pizza…');
f('Yes, she\'s quite the gourmet, this one.');
f(whatIf, 'daughter');
f('This she definitely got from me, and not her mother, who loves French food above everything else. Or at least, that\'s what she\'d have you believe.');
f(endIf);
f(c, '... $applepie$… um… $subway$… $burgerking$…');
f(p, 'OK, OK, I get the picture.');
f(c, 'Man, doesn\'t your mouth just water at the thought?');
f(whatIf, 'daughter');
f(p, 'How about mom?');
f(person, c, 'basic', 'inquisitive');
f(c, 'What about her? Oh, her food isn\'t bad either, or, what do you mean?');
f(p, 'Don\'t you miss her?');
f(person, c, 'basic', 'theatrical_death');
f(c, 'Uh, d\'uh. That basically goes without saying.');
f(p, 'I guess it does.');
f(elseIf, 'sister');
f(p, 'Don\'t you miss mom and dad? Or Liz?');
f('Liz is our 16-year-old sister. She takes after Sophie quite a bit, though some miracle of nature, she is one size beyond Soph in cup size.');
f(whatIf, 'catgirl');
f('She\'s not a catgirl, no. Though...');
f(endIf);
f('Yes, she\'s hot too, but no, I have no sexual interest whatsoever in her, either. Don\'t go imagining things.');
f('I\'m just saying, I mean, I\'m just describing her physical features. And… well, she happens to have large boobs.');
f('... OK, so maybe… if I\'m being completely honest…');
f('Maybe I did actually touch them just this one time. Liz\'s boobs, I mean. It was a couple of months ago. Nobody knows about it, of course.');
f('Though mom and dad hate it, Liz recently started going out drinking with some older friends.');
f('This one time when mom and dad were off on a romantic holiday somewhere or other, and Sophie was staying at her friend\'s place… well, Liz\'s friends came by around 2 AM and just dropped her on the porch, dead drunk.');
f('I was still up and heard them arrive. I helped Liz up the stairs to her room… God, let me tell you it was a struggle, she was completely out of it.');
f('Her god damn big boobs kept pushing up against me as I was trying to carry her up. By the time I got to her room, I had a raging boner and Liz had come into a state of partial undress, just from brushing against me so much.');
f('I sat next to her on her bed for a couple of seconds, just resting from the effort…');
f('When suddenly, my dick somehow got control of my hand and moved it inside of her bra.');
f('...');
f('I came in my pants after squeezing her right breast for just a couple of seconds.');
f('...');
f('Nobody knows about this though. And I regret it terribly.');
f('Like I said, I have no… no sexual interest in her, whatsoever.');
f(person, c, 'basic', 'theatrical_death');
f(c, 'Uh, d\'uh. Doesn\'t that go without saying?');
f(p, 'I suppose.');
f(elseIf, 'friend');
f(p, 'Don\'t you miss your parents?');
f(person, c, 'basic', 'theatrical_death');
f(c, 'Well, d\'uh.');
f(person, c, 'basic', 'neutral');
f(c, 'But you know. In some ways, I guess it\'s actually really nice to just get away from them… and the Church...');
f(p, 'You mean the alien worshipping death sect?');
f(person, c, 'basic', 'embarrassed');
f(c, 'Come on, you make it sound way worse than it is.');
f(p, 'It is kind of bad though.');
f(person, c, 'basic', 'neutral');
f(c, 'Well, yeah, I know, you know. Probably better than you$meow$!');
f(p, 'Well, I can\'t deny that.');
f(c, 'I mean, I\'m not enjoying this! No offense.');
f(p, 'None taken.');
f(c, 'But you know... You know?');
f(p, 'Uh... yeah, I guess.');
f(endIf);
f(person, c, 'basic', 'slightly_concerned');
f(c, 'I… I hope everyone is alright though. They must be so worried...');
f(p, 'Yeah, well, they should be, really.');
f(c, '...');
f(person, c, 'basic', 'smiling');
f(whatIf, '!daughter');
f(whatIf, '!sister');
f(whatIf, '!friend');
f(p, 'So how about you? What do you miss the most?');
f(jump, 'cooking_convo_miss');
f(endIf);
f(endIf);
f(endIf);
f(jump, 'cooking_convo_end');
f(endChoice);
f(label, 'cooking_convo_miss');
f(choice);
f(choice, '"Mom and dad."');
f(incrementVariable, 'like', -1);
f(c, 'Oh, right. You\'ve always been your momma\'s boy, I guess.');
f(p, 'Dude, not fair. We\'re stuck on a desert island, and you\'re going to blame me for missing mom and dad?');
f(c, '...');
f(c, 'It\'s a bit sissy, is all.');
f(c_t, 'It is.', 'unhappy');
f(c_b, 'And know, Sophie likes you less for it. Bad choice!', 'angry');
f(c_t, 'Don\'t go blowin\' your chances like that, young man!', 'angry');
f(choice, '"I guess it\'s got to be food for me as well."');
f(incrementVariable, 'like', 1);
f(c, 'See! I told you so. Man oh man. You\'re getting me all hungry!');
f(c, 'Man, that $hamburger$… double slices of $cheddar$ cheese… big pepper corns… sesame seeds on the homemade bun… you know, at $laurasburgers$? Oh man, that dressing… those pickles! Oh man oh man oh man.');
f(whatIf, 'catgirl');
f(c, 'Meow!!');
f(endIf);
f(c_t, 'Dang! Getting hungry here. Is Laura\'s Burgers an actual place?');
f(c_b, 'Nope. I just googled "burger joint" and some place called "Laura\'s Burger Joint" was the first result. Well, so in some sense, I guess it\'s an actual place.', 'worried');
f(p, 'Girl! Don\'t start droolin\' all over.');
f(choice, '"My friends."');
f(person, c, 'basic', 'very_slightly_surprised', x, x, true);
f(c, 'I didn\'t expect that.');
f(p, 'What, why?');
f(person, c, 'basic', 'pondering', x, x, true);
f(c, 'Well… you\'re not all that close to anyone back home, are you? I mean, you hang out with those geeks-');
f(p, 'Hey! Dan and Matt are nice.');
f(c, 'They\'re complete geeks, though. I mean, no offense, but <i>even geekier</i> than you, $mcuz$. Didn\'t you guys… like play D&D and stuff together?');
f(p, 'Well, what of it? Lots of people do. Girls do to.');
f(person, c, 'basic', 'neutral', x, x, true);
f(c, 'Yeah, I dunno, if they\'re like… 12, and are having a $harrypotter$ phase, or whatever. But not when you\'re 18.');
f(c_t, 'Wow, somebody\'s being judgmental today!', 'angry');
f(c_b, 'Yeah, D&D is fine. Though, you know… it is nerdy. And somebody like Sophie would point that out.');
f(c_t, 'True dat.', 'worried');
f(p, 'We don\'t… we don\'t play any longer, actually.');
f(c, 'See? You\'re not all that close, are you?');
f(p, 'Well… I mean, maybe not…');
f(choice, '"My computer."');
f(incrementVariable, 'like', -1);
f(person, c, 'basic', 'surprised');
f(c, 'Dude? Seriously?');
f(p, 'Well, I, uh…');
f('I guess that was the wrong answer.');
f(person, c, 'basic', 'irritated');
f(c, 'Man, you really ought to get out more.');
f(p, 'More than this?');
f(c, 'Well... I don\'t know.');
f(endChoice);
f(jump, 'cooking_convo_end');
f(label, 'cooking_convo2');
f(p, 'Hm… well I don\'t know anything about shipping but you know, there must be a seasonal element to it. I mean obviously we can\'t be close to any of the major shipping routes, but…');
f(p, '... on TV, they always get saved eventually, you know?');
f(c, 'Right… like in $castaway$, right? How long was he on that island for? A couple of years?');
f(p, 'Could you imagine that? Staying here for couple of years?');
f(c_t, 'Could you?');
f(c_b, 'With her? 24/7, man. Yes. Yes. Take me there.', 'inlove');
f(c_t, 'Watch out so you don\'t end up with an arrow between your eyes, though!', 'angry');
f(c_b, '!', 'worried');
f(person, c, 'basic', 'very_slightly_surprised');
f(whatIf, 'daugher');
f(c, 'Whaaaat? No way San Jose! Man, if I don\'t make it back in time for college...');
f(p, 'Right, college…');
f('To be honest, I\'ve been dreading it, as I guess all parents dread it. To see your only child move out, disappear into the great wilderness that is university.');
f('It\'s scary as hell. And just imagining some douchebag frat boy having his way with her… it makes my blood boil.');
f(person, c, 'basic', 'teasing');
f(c, 'Come on, dad. The bird must fly.');
f(person, c, 'basic', 'smallsmile');
f(p, 'Yeah, I know. I mean, of course. I\'m very proud of you, being accepted to Notre Dame. It\'s just…');
f(p, 'You know, I wish you would have chosen a local university.');
f(person, c, 'basic', 'teasing');
f(c, 'Because of the tuition rebate, right? You cheapskate!');
f(p, 'You know what I mean. Your mom feels the same way, of course.');
f(person, c, 'basic', 'neutral');
f(c, 'I know, dad, but you know… I want to go to a university that will actually help me get a job after I get a degree.');
f(c, 'You might not have noticed sitting behind your computer screen all day at work and all night at home… but the economy is in the shitter, dad.');
f(c, 'Lots of kids go unemployed despite their degrees. I just want to make sure… I\'m as well-equipped as possible.');
f(p, 'Listen to little Miss Precocious...');
f(person, c, 'basic', 'irritated_halfsmile', x, x, true);
f(whatIf, 'catgirl');
f(c, 'Meow!');
f(endIf);
f(c, 'Come on, I\'m 18. Would you rather I just drank and drugged myself out of relevance, like my classmates?');
f('Truth be told, she\'s definitely partaking in those activities too. She\'s no angel, but she is smarter than what you might assume from her great looks and … well, the color of her hair.');
f('I guess she does take after me in that way.');
f(otherwise);
f(c, 'Whaaaat? No way $sanjose$! Man, if we don\'t make it back in time for college...');
f(p, 'Right, college... ');
f(person, c, 'basic', 'neutral');
f(c, 'You don\'t sound too excited? <i>Dude,</i>You\'re going to $california$! <i>$norcal$, dude!</i> You\'re gonna have an awesome time$meow$!');
f(c_b, 'I do love California. I hear actual Californians don\'t say <i>NorCal</i> and <i>SoCal</i>, but that\'s alright, Sophie is not a Californian.');
f(c_t, 'She\'s a desert islandian.');
f(c_b, 'I was more thinking of "generic and geographically non-specifical American".', 'worried');
f(c_t, 'Oh, well, that too.', 'worried');
f(p, 'No, it\'s not that. I mean I look forward to it. It just… feels so far away right now. When I think of going home, I don\'t really think of going to college.');
f(person, c, 'basic', 'inquisitive');
f(c, 'What do you think of then?');
f(p, 'I don\'t know, more like… stuff that I miss I guess? Like, food and stuff, I guess?');
f(whatIf, 'day1Chef==c');
f(person, c, 'basic', 'teasing');
f(c, 'Bitch, you better not be dissing my food again…');
f(p, 'Oh come on…');
f(person, c, 'basic', 'smiling');
f(c, 'Just teasing ya, $mcuz$.');
f(elseIf, 'sister');
f(p, 'You know, our family? Mom and Dad? Liz, our younger sister? Remember them? Any bells ringing, at all?');
f(c, 'Yeah, well…');
f(endIf);
f(person, c, 'basic', 'smiling');
f(c, 'I get that. I mean I think about stuff I miss a lot too. But I\'m, uh… you know, <i>invested in my future</i>. Hah!');
f(p, '...');
f(endIf);
f(p, 'We\'ll be back long before school starts, I\'m sure.');
f(person, c, 'basic', 'neutral');
f(c, 'Right.');
f(label, 'cooking_convo_end');
f(c, 'Alright, we should head back and get some sleep.');
f(whatIf, 'askedYouWantToGoBack');
f(pause, 1);
f(person, c, 'basic', 'smiling');
f(c, '"Do you want to go back?" $mcuz$, I swear, you\'re a little crazy, you know that?');
f(whatIf, 'daughter');
f(p, 'Be careful, it probably runs in the family!');
f(person, c, 'basic', 'teasing');
f(c, 'I think I inherited mom\'s gene in whatever place your crazy gene would have gone, so I\'m not too worried.');
f(otherwise);
f(p, 'Hey… takes one to know one!');
f(endIf);
f(endIf);
f(remove, c);
f('We walk back to the camp in silence.');
f(stopMusic, 'fade');
f(playMusic, 'distant_waves');
f(scene, 'outside_shelter_night', 'blackFade');
f(person, c, 'basic', 'neutral');
f(setZoom, c, 1.35);
f(panAll, 15);
f(c, 'I\'m going to bed now, how about you?');
f(p, 'Sure, might as well.');
f(scene, 'black', 'fade', 2);
f('We go to sleep in the shelter together.');
f(whatIf, 'askedYouWantToGoBack');
f('As I drift to sleep, I think about what I just said. Do I… would I actually want to stay here? Instead of going back home?');
f('I guess $myCousin$ is right. It\'s definitely a crazy idea.');
f(endIf);
f(stopMusic, 'fade');
f(pause, 0.5);
f(jump, 'day2');
f(label, 'straight_to_bed');
f(c_b, 'Straight to bed route.');
f('Sophie didn\'t loiter around after dinner, but went for a walk along the beach. I\'d have asked her if she wanted my company, but it was kind of obvious she wanted to be by herself.');
f(whatIf, 'contempt>0');
f('I sit by myself in front of the fireplace for a while, quite irritated.');
f('Things are tough as they are without $myCousin$ behaving like a god damn drama queen.');
f(otherwise);
f('I sit by myself in front of the fireplace for a while, irritated with myself. I should try and not to get under her skin so much.');
f(endIf);
f(scene, 'black', 'fade');
f(stopMusic, 'fade');
f('I go to sleep in the shelter by myself, not waiting up for Sophie.');
f(jump, 'day2');
f(label, 'day2');
f(scene, 'inside_shelter', 'fade');
f(playMusic, 'distant_waves');
f(setFilter, '');
f(panAll, 10);
f('I wake up after a long and comfortable sleep. I can hear Sophie moving about outside of the shelter, probably preparing breakfast. ');
f('I take my sweet time before I head out, waiting for the morning wood in my pants to subside. I don\'t quite remember what I dreamt, but it probably involved… well, you know what.');
f('Seriously, you people.');
f('What? No, I don\'t mean Sophie, $christ$, I just meant sex, in general! No, not with $myCousin$!');
f(c_t, 'I love this guy. Every occasion he gets, he drops stuff like this. What a perv.');
f(c_b, 'He may be a perv, but he\'s our perv!');
f(scene, 'outside_shelter_day', 'fade');
f(whatIf, 'day1_mad');
f(person, c, 'braundone', 'neutral');
f(panAll, 25);
f(c, 'Here, breakfast.');
f(otherwise);
f(person, c, 'braundone', 'smiling');
f(panAll, 25);
f(c, 'Top o\' the morning to ya! Here\'s yer breakfast of lovely edible roots and what have you not, matey.');
f(endIf);
f('Sophie hands me a leaf of roots and nuts, apparently oblivious her front-opened bikini top has come undone.');
f('Uh…');
f(c_t, 'Uh…', 'worried');
f(c_b, 'Uh…', 'worried');
f(pause);
f('Uuhhhh…');
f(c_t, 'Uuhhh…', 'worried');
f(c_b, 'Uuhhh…', 'worried');
f(choice);
f(choice, 'Tell Sophie her breasts are showing');
f(jump, 'day2_breastsshowing');
f(choice, 'Don\'t say anything.');
f(jump, 'day2_saynothing');
f(endChoice);
f(label, 'day2_breastsshowing');
f(setVariable, 'tell_about_bra', true);
f(p, '$sophOrSis$, uh…');
f(c, 'What?');
f(p, 'You\'re, your…');
f(person, c, 'braundone_mirrored', 'irritated', x, x, true);
f(c, 'Spit it out, dude.');
f(p, 'Your bikini…');
f(c, 'What?');
f(person, c, 'braundone', 'surprised_at_boobs');
f(c, 'Oh, shit!');
f(jump, 'day2_breastscommon');
f(label, 'day2_saynothing');
f(setVariable, 'tell_about_bra', false);
f(incrementVariable, 'like', -1);
f('Almost paralyzed, I stand in my place, unable to avert my eyes, with my mouth half-open.');
f(person, c, 'braundone_mirrored', 'inquisitive', x, x, true);
f('Sophie looks at me, with a puzzled look.');
f(c, 'What? What\'s wrong?');
f(p, '...');
f('Sophie realizes what my gaze is aimed at and looks down.');
f(person, c, 'braundone', 'surprised_at_boobs');
f(whatIf, 'catgirl');
f(c, 'Meow!!');
f(otherwise);
f(c, 'Oh, shit!');
f(endIf);
f(jump, 'day2_breastscommon');
f(label, 'day2_breastscommon');
f(stopMusic, 'fade');
f(scene, 'white', 'fade');
f(pause, 0.1);
f(scene, 'bluesky_vertical', 'fade', x, x, x, 0, 'bottom', 720);
f(item, 'bra', 100, 200);
f(screenEffect, 'lensflare', 300, 150, 2);
f(pan, 'bg', 0, 160, 15);
f(pan, 'lensflare', 300, 300, 15);
f(pan, 'bra', 30, -300, 15);
f('As Sophie hurriedly attempts to fix her bikini… she somehow manages to send it flying, instead.');
f(c_b, 'Not at all happy with this, visually. It was a bitch to script, so I would have liked a nice looking bikini top flying here. It would have made a nice CG.', 'unhappy');
f(c_t, 'Again, budget constraints.');
f(c_b, 'This wouldn\'t have cost much, though, I\'m sure.', 'unhappy');
f(c_t, 'We\'ll add it for the DeLuxe version, soon in a bricks-and-mortar store near you!', 'happy');
f(scene, 'black', 'fade');
f(playMusic, 'distant_waves');
f(scene, 'outside_shelter_day', 'fade', x, x, x, 'right');
f(person, c, 'nude', 'base2_surprised');
f(panAll, 25);
f(pause);
f(whatIf, 'catgirl');
f(c, 'MEOW!!');
f(endIf);
f(whatIf, 'daughter');
f(c, 'Dad, stop staring at me!!');
f(otherwise);
f(c, 'Dude, don\'t fricking stare!!!');
f(endIf);
f(scene, 'bluesky_vertical', 'fade', x, x, x, x, x, 720);
f(screenEffect, 'lensflare', 800, 450, 1.5);
f('I turn my head upwards again. In the corner of my eye, I can tell Sophie is hurrying over to where her bikini top landed, picks it up and puts it on again.');
f(scene, 'outside_shelter_day', 'fade');
f(person, 'c', 'blushing', 'embarrassed');
f(panAll, 40);
f(whatIf, 'tell_about_bra');
f('Sophie is looking really uncomfortable, while I, myself… well, I\'m a little shell shocked, really. I decide it might be best to just laugh the whole thing off.');
f(p, 'Hey Janet, that\'s like the second time you\'ve had a wardrobe malfunction in as many weeks.');
f(person, 'c', 'blushing_right_arm_behind_head', 'smallsmile');
f(c, 'Ahahaha… well, you know this bikini is all I have, my shirt got ripped to pieces and the only bra that survived the crash is pretty much see-through.');
f(person, 'c', 'blushing_left_arm_behind_head', 'smiling', x, x, true);
f(c, 'I\'m sorry though, I know you don\'t want your $fcousin$\'s boobs for breakfasts.');
f(c_t, 'Sophie Snow, you know nothing.');
f(c_b, 'Hah.', 'happy');
f(c_t, 'Is she really that oblivious, you think?');
f(c_b, 'Why?');
f(c_t, 'Well, with the constant references he makes to her body, her boobs, and, well, <i>not</i> having sex with her…');
f(c_b, 'The setting is that he has been able to hide his desires both from himself as well as her, I suppose.');
f(p, 'Ah, don\'t worry. I\'ve seen worse.');
f(whatIf, 'boob_joker');
f(person, c, 'blushing', 'irritated');
f(c, 'Shut up, perv!');
f(elseIf);
f(person, c, 'blushing', 'irritated_halfsmile');
f(c, 'Oh, shut up!');
f(endIf);
f(jump, 'day2_afterboobs');
f(otherwise);
f(whatIf, 'boob_joker');
f(person, c, 'blushing', 'irritated');
f(c, 'What the fuck man? Say something, will you? Were you enjoying that, or what?');
f(otherwise);
f(c, '$mcuz$, please say something, don\'t just stand there staring at my bare chest like some perv, please!');
f(endIf);
f(p, 'I\'m, I\'m sorry, they… they took me by surprise.');
f(c_t, '"They". That\'s a real charmer.', 'worried');
f(setVariable, 'day2_morning_mad', true);
f(person, c, 'blushing', 'hateful');
f('$myCousin$ winces at my words. Maybe I shouldn\'t have said "they" there.');
f(c, 'Ugh…');
f(jump, 'day2_afterboobs');
f(endIf);
f(label, 'day2_afterboobs');
f(remove, c);
f('Sophie, still embarrassed and obviously eager to head into the forest, grabs her bow and prepares to leave.');
f('You\'ve got to give it to her - $myCousin$ is fucking hardcore. The first boar here? She killed it with her own hands and a sharp rock. Though I doubt she really needed the rock. She throws a wicked mean punch.');
f(whatIf, 'catgirl');
f('It\'s not just her being a catgirl - I mean, she does have better reflexes than most, but she doesn\'t have superhuman strength or anything. She\'s not a super hero. She\'s just… I mean, even compared with other catgirls, she\'s a badass.');
f(endIf);
f('We used the first boar\'s sinews to make a string for a bow. No, I\'m not a LARPer, I\'m not that nerdy, but I\'ve seen on $youtube$ how to do it, and somehow we managed.');
f('I\'m of course complete shit with it, but Sophie actually did archery for a while in school.');
f(c_b, 'This is maybe a little outlandish, I don\'t know. I wanted to give her a weapon though.', 'unhappy');
f(c_t, 'I don\'t know, this is nothing compared to the stuff people actually surviving on stranded islands pull off. They usually come up with some pretty fucked up genius slash crazy shit.');
f(c_b, 'The original Crusoe… that bastard!');
f(c_t, 'He had it so easy!', 'happy');
f(c_b, '... the one the novel\'s most likely based on, he killed goats and made clothes from their skin. That\'s real hardcore. He was the son of a tanner, though.');
f(c_t, 'That\'s cheating.', 'unhappy');
f(c_b, 'He wasn\'t actually in the tropics, he was… I think it was an island somewhere outside the coast of southern Chile.');
f(person, c, 'bow', 'neutral', 'left');
f(c, 'Uh, I already had breakfast so I think I\'ll just head out now and, uh, you know, see if I maybe got something in one of my traps, \'k?');
f(p, 'OK, see you later. Be careful.');
f(remove, c);
f('I finish my breakfast. Usually I\'d might spend the first half of the day relaxing in the shades, conserving my energy, but I am feeling relatively rested. I also think this breakfast was pretty much the last roots we had.');
f('Maybe I should head into the forest already?');
f(c_b, 'If you want to learn about herbs, you shouldn\'t overextend yourself.');
f(choice);
f(choice, 'Head into the forest.');
f(setVariable, 'headintoforest', true);
f(incrementVariable, 'like', 1);
f(jump, 'day2_intoforest');
f(choice, 'Don\'t overextend yourself.');
f(setVariable, 'headintoforest', false);
f(jump, 'day2_lazyday');
f(endChoice);
f(label, 'day2_intoforest');
f('Right, let\'s not be too lazy while $myCousin$ is working. I\'d look bad!');
f(c_t, 'God damn try-hard!', 'angry');
f(c_b, 'Shh, Taxcup.', 'worried');
f('I head into the jungle.');
f(stopMusic, 'fade');
f(playMusic, 'jungle');
f(scene, 'jungle_day', 'blackFade', x, true);
f(panAll, 15);
f('Into the Heart of Darkness… Where is that damn $kurtz$?!');
f('Dr. $livingstone$, I presume? Wait, that\'s… that\'s something else…');
f(c_t, 'I love how you try and get these literary references in here from time to time.');
f(c_b, 'Well, a man must try.');
f('I\'ve found a spot where the jungle isn\'t too dense - you don\'t want to venture too far in, not knowing what might lurk there.');
f(c_t, 'Wait, what? A man must try? Was that some kind of a literary reference?');
f(c_b, 'Uh… no?', 'worried');
f(c_t, 'Oh. I don\'t know, it sounded like it was from Game of Thrones or something.');
f('I\'ve spent about an hour or two looking for this specific plant which I know has edible roots and that we\'ve eaten a lot of so far. Lady Fortune must be taking the day off because I can\'t seem to find anything at all, though.');
f('I\'m just about considering giving up, when, all of a sudden, I hear a short but loud scream from deeper inside the forest.');
f('The scream sends a jolt down my spine - that could only have been Sophie. What\'s happened?');
f(p, 'Sophie?! … $sophOrSis$?!');
f('I head off into the direction from which I think the scream came, while continuously calling for Sophie.');
f(p, ' $sophOrSis$?!');
f(c, 'FUCK!');
f(p, 'Sophie?! What happened!?! Where are you!?');
f(c, '$mcuz$, calm the fuck down, I\'m here!');
f(person, c, 'bow', 'irritated', 'left');
f(c, 'Shit… I was fucking bitten when I crossed a small stream. Fucking… crap! I think it was a snake. Can you have a look?');
f(cg, 'snakebite_jungle', 'fade');
f(c_t, 'Incidentally, this is the one picture in the game that isn\'t actually HD, assuming you define HD as at least 1280x720. This one\'s like 550p or something. Sorry, backers. False marketing right there.', 'unhappy');
f(c_b, 'Why\'s that?', 'confused');
f(c_t, 'BigB hacked it together himself from Gatto\'s background and one of Gakai\'s illustrations.');
f(pause);
f('Two red dots. If this isn\'t a snakebite, I don\'t know what is. Shit!');
f(p, 'Oh my fucking god! We need to do something, quick!');
f(scene, 'jungle_day', 'fade', x, true);
f(person, c, 'bow', 'irritated', 'left');
f(jump, 'poisonChoice');
f(label, 'day2_lazyday');
f(setVariable, 'knowsOfHerb');
f('Nah… let\'s take it a little easy today.');
f(scene, 'black', 'fade');
f('I spend a couple of hours resting in the shade, reading from a tattered book on medicinal plants.');
f(cg, 'book', 'fade');
f('A book? Yes, indeed! Where I got it from? Why, the island\'s local library, of course!');
f(c_t, 'Oh, haha. Good one. Hey everybody! This guy right here has a <i>sense of humor</i> on him!');
f(c_b, 'That\'s a little mean.', 'unhappy');
f('No, we found it one of the bags that floated ashore soon after we got here. ');
f('I assume it belonged to the chatty old botanist. He must have sunk to the bottom of the sea together with the plane and … well, the rest of them. ');
f('It\'s a wonder me and Sophie survived, really. In the end, I suppose we just got lucky with the seat placement.');
f(whatIf, 'elf');
f('I don\'t recognize any of them from what I\'ve already seen in the forest, but who knows, the knowledge might come in handy. The book is called "Plants and Herbs in the Ambo Archipelago", and I guess that\'s where we are, roughly. Some of these plants should be around.');
f(otherwise);
f('I don\'t recognize any of them from what I\'ve already seen in the forest, but who knows, the knowledge might come in handy. The book is called "Plants and Herbs in the Western Pacific", and I guess that\'s where we are. Some of these plants should definitely be around.');
f(endIf);
f('The one on this page has… "strong sedative, <i>anxiolytic</i>, and <i>hypnotic</i> properties", if ingested.');
f('I\'ve no idea what anxiolytic means, but hypnotic, that means…');
f(c_b, '<i>Anxiolytic</i> means "anxiety-inhibiting", I think.');
f(c_t, 'Oh. Makes sense once you know it.');
f(choice);
f(choice, '... something to do with hypnosis, right?');
f(choice, '... it turns you into a sleepwalker.');
f(choice, '... it keeps you awake.');
f(choice, '... no idea.');
f(choice, '... it\'s sleep-inducing.');
f(setVariable, 'knowsTheWordHypnotic');
f(choice, '... it puts a spell on you.');
f(endChoice);
f('... maybe.');
f('No luck in finding anything that would make me less horny, though. What would be the scientific word for that? <i>Anorgasmic</i>, I think?');
f(c_b, 'You do say that for men as well, not only women.');
f(c_t, 'Men have orgasms too, you mean?');
f(c_b, 'Well, yeah.', 'worried');
f(scene, 'black', 'fade');
f('I close the book and get ready to head into the forest to search for edible stuff - maybe bugs, if nothing else. They\'re a really good source of proteins, you know.');
f('On the other hand, they do of course taste like shit, though.');
f('Then, suddenly, I see $myCousin$ walking on the beach, towards me. Is that… is she limping? She yells as she slowly walks towards me. It sounds as if she\'s saying...');
f(c, 'Hey! I\'ve been bitten!');
f('What?! I run towards her.');
f(stopMusic, 'fade');
f(playMusic, 'regular_beach');
f(scene, 'beach_day', 'fade', x, x, x, 'right');
f(person, c, 'bow', 'irritated');
f(panAll, 35);
f('There\'s two shiny red marks on her ankle.');
f(p, 'What happened?! Are you alright?!');
f(c, 'I got fuckin\' bit, man. From the bite mark, I\'d say it was a snake or something… I had my feet in the river when I felt this, well, pricking…');
f(c_t, 'There\'s a river?');
f(c_b, 'A… rivulet. A very small stream. Why do you ask?', 'worried');
f(c_t, 'Couldn\'t they just get drinking water from there?');
f(c_b, 'Uhm… sure.', 'worried');
f(c_t, 'But the protagonist came up with some way of getting ahold of water, you said?');
f(c_t, 'Was his stroke of genius to just walk up to the river and drink?');
f(c_b, '... Details.', 'dumbfounded');
f(c_t, 'The devil\'s in them! Shoo, details, shoo! Be gone!', 'angry');
f(p, 'Well, shit, we need to do something!');
f(label, 'poisonChoice');
f('But… what? We could wrap it in rags, but the bleeding seems to have stopped already. Could I… suck out the poison? That\'s a thing, isn\'t it?');
f(choice);
f(choice, 'Attempt to suck out the poison.');
f(jump, 'suckpoison2');
f(choice, 'Just bandage it, and hope for the best.');
f(jump, 'bandageit');
f(choice, 'Leave it as it is.');
f(jump, 'leaveit');
f(endChoice);
f(label, 'suckpoison2');
f(p, 'Quick, there\'s no time to lose! Give me your foot.');
f(person, c, 'bow_right_arm_cover', 'irritated');
f(c, 'What? Why? What are you gonna do?');
f(p, 'I\'m gonna suck out the poison! Hurry!');
f(whatIf, 'headintoforest');
f(person, c, 'bow', 'inquisitive');
f(c, '$mcuz$… I… you… you\'re not really that stupid, right..?');
f(c, 'I mean, please tell me you\'re joking.');
f(p, 'What?? Do you have any better ideas?');
f(elseIf, 'day2_morning_mad');
f(person, c, 'bow', 'irritated');
f(c, '... are you stupid or something? I was bit like 15 minutes ago, what are you gonna do? Are you gonna suck out all my blood, filter out the venom and then somehow spit back the good blood back into me, or what did you have in mind, exactly?');
f(p, 'Well, huh… I-I, I…');
f(otherwise);
f(person, c, 'bow', 'inquisitive');
f(c, '...');
f(person, c, 'basic', 'irritated', x, x, true);
f(c, 'Are you serious? I was bitten like maybe more than 15 minutes ago. If there was any venom, I doubt you sucking my feet would help.');
f(p, 'Uh, yeah, well, maybe you\'re right…');
f(whatIf, 'like>=2');
f(c, '...');
f(person, c, 'bow', 'happy');
f(c, 'You\'re cute, you know? Slightly retarded, for sure, but cute nonetheless.');
f(endIf);
f(endIf);
f(whatIf, 'headintoforest');
f(c, ' Let\'s… let\'s just head back to camp and wrap it in something, or whatever.');
f(otherwise);
f(c, 'Let\'s just wrap it up in something. Can you give me a hand? I just washed it in the sea, I\'m just trying to not get sand all stuck all over it again.');
f(p, 'OK, of course.');
f(endIf);
f(remove, c);
f('I lay my arm around her and help her back to our shelter.');
f(stopMusic, 'fade');
f(playMusic, 'distant_waves');
f(scene, 'outside_shelter_day', 'blackFade', x, x, x, 'right');
f(p, '...');
f(person, c, 'basic', 'neutral');
f(panAll, 25);
f(p, 'How do you feel?');
f(jump, 'poisonfeel');
f(label, 'bandageit');
f(whatIf, 'headintoforest');
f(p, 'Let\'s head back to camp, clean it up and bandage it in something.');
f(person, c, 'bow', 'neutral');
f(c, 'Right… Can you… can you lend me an arm? I\'m trying to not get the wound any dirtier than it already is.');
f(p, 'Of course!');
f('It takes us a little while, stumbling through the dense jungle, but eventually we make it back to the beach.');
f(scene, 'beach_day', 'blackFade');
f('We have preciously little drinking water, so we wash the wound with seawater. Sophie let\'s out a couple of "fuck\'s" and "shit\'s" as I rub the salty water on her ankle, removing the dirt, but she keeps still.');
f(whatIf, 'catgirl');
f('No, she doesn\'t lick herself. Though I hear some of the Japanese catgirls actually do.');
f('Some have more cat DNA than others, supposedly.');
f('How I know? Oh, uh… no, it\'s not like I log on to PornTube searching for catgirls. Though <i>apparently</i>, it\'s turned into quite an industry. It\'s shameful, really.');
f('... OK, so maybe I did check it out just this once. Or you know, uh… OK, so maybe I\'ve seen… like, I don\'t know, a few catgirl porn flicks. No, I honestly don\'t think it has anything to do with Sophie being a catgirl. That would be...');
f(whatIf, '!friend');
f('That would be sick. I mean, she\'s my $fcousin$. Surely, you can appreciate a fetish without it… you know, without it stemming from something Freudian. No, I don\'t want to fuck my $fcousin$.');
f(endIf);
f(endIf);
f(c, 'Do you… do you think it might have been poisonous?');
f(otherwise);
f(p, 'Let\'s bandage it in something. Do you need a hand?');
f(c, 'OK, thanks. Do you think it might have been poisonous?');
f(endIf);
f(p, 'Your foot was in water, right? If you were bitten by a water snake, I think it could have been... but I\'ve no clue which type there are on this island, if any. I mean, even if I knew, I\'m not much of a water snake expert, I guess.');
f(c, 'Well, not much we can do about it, I guess.');
f(p, 'Let\'s… let\'s hope for the best.');
f(stopMusic, 'fade');
f(playMusic, 'distant_waves');
f(scene, 'outside_shelter_day', 'blackFade');
f('We walk back to the hut and I grab the least dirty-looking rag I can find. I shake off the sand and wrap it around Sophie\'s ankle.');
f('God, please God, I know you don\'t exist and all but I wouldn\'t at least mind if you did right now, as long as you don\'t let $myCousin$ get sick.');
f(whatIf, 'contempt>0');
f('I mean… how would I survive on my own?');
f(endIf);
f('The wrapping kind of looks like shit, but… it\'s better than just leaving it as it is, right?');
f(c_b, 'Maybe it\'s a little mean to not let the player know the rag was going to be pretty dirty before forcing them to commit to a choice.');
f(c_t, 'Well, player! Use your brain! Obviously you\'re not going to have a perfectly clean rag lying about after surviving a plane crash and living on a desert island for a month.', 'angry');
f(c_b, 'I could have given the player a choice here but since it doesn\'t actually matter what you do… I mean, Sophie turns out alright no matter what you choose. So I decided not to.');
f(p, 'There… how do you feel?');
f(person, c, 'basic', 'neutral');
f(jump, 'poisonfeel');
f(label, 'leaveit');
f(p, 'We don\'t have any proper band-aids… I don\'t know, we probably shouldn\'t wrap it up in dirty rags. You don\'t seem to be bleeding much either.');
f(c, 'OK, if you think that\'s best. Can you lend me a hand though? I washed it in the sea, I\'m trying to not get sand stuck all over.');
f(p, 'OK, of course.');
f('I lay my arm around her and help her back to our shelter.');
f(stopMusic);
f(playMusic, 'distant_waves');
f(scene, 'outside_shelter_day', 'blackFade');
f(p, '...');
f(person, c, 'basic', 'neutral');
f(panAll, 15);
f(p, 'How do you feel?');
f(jump, 'poisonfeel');
f(label, 'poisonfeel');
f(c, 'You know, I feel perfectly fine, at least for now. I mean it stings a little, but I\'m not like, drowsy or anything.');
f(p, 'Well, that\'s at least not a bad sign, I guess.');
f(c_t, 'Don\'t worry, she\'ll be fine.');
f(person, c, 'basic', 'smallsmile', x, x, true);
f(c, 'Don\'t worry. You should try and get us something to eat though, before it gets dark.');
f(whatIf, 'daughter');
f(c, 'Sorry I screwed up, Papa Bear! I guess it\'s on you to get us dinner tonight... again.');
f(otherwise);
f(c, 'Sorry I screwed up, $mcuz$! It\'s on your scrawny ass to get us dinner tonight, again.');
f(endIf);
f(c_b, 'Doesn\'t really matter what you choose here either, either way you\'ll come up empty-handed.');
f(c_t, 'False choices, yeah!', 'happy');
f(c_b, 'Yeah. Feels pretty good on the first playthrough, but gets kind of irritating if you bother to replay it. Did you play the Game of Thrones game?');
f(c_t, 'The Telltale one, I guess? Yeah.');
f(c_b, 'Like, it\'s a good game, of course. Way better than this. I mean, not only because they had better graphics, enormously much larger budget, and stuff… I mean, it\'s obviously much better written.');
f(c_b, 'But... I really hate how they handle choices. It feels like all choices are pretty much meaningless. Once you know this, it starts to have a negative effect on how you experience the game, even if you just play through it once.', 'unhappy');
f(c_b, 'You know your choices don\'t matter, right? And you start spotting where they\'ve merged different paths… like, oh, this specific answer could have been used no matter what I asked.', 'angry');
f(c_t, 'I think that\'s the most common critique against their games.');
f(c_b, 'Yeah, well, it\'s valid.');
f(c_t, 'I get them though, you don\'t want to create a whole bunch of content and then have some players miss it.');
f(c_t, 'For those who will only ever play it once, it\'s more bang for the buck this way.');
f(c_b, 'Yeah, that\'s true. But don\'t you think most people will be naturally inclined to play it more than once? Or you know, would be, if the choices weren\'t such shams?');
f(c_t, 'I guess.');
f(c_b, '... sorry for dragging on! Let\'s get back to the game.');
f(choice);
f(choice, 'Stay with her');
f(jump, 'staywithher');
f(choice, 'Go fishing');
f(jump, 'catchfish');
f(choice, 'Go into the forest to pick roots');
f(jump, 'pickroots');
f(endChoice);
f(label, 'staywithher');
f(p, 'Are you kidding? What if it was poisonous and you get like, I dunno, a spasm, or something?');
f(person, c, 'basic', 'teasing');
f(c, 'Well, even if I did, what help would you be? Aww, will you hold my hand as I slowly fade into the darkness?');
f(person, c, 'theatrical', 'theatrical_death', x, x, true);
f(c, 'Oh… I can see the light at the end of tunnel… $mcuz$… I\'ll never forget you… though technically, my brain, where you know, my memories are actually stored, will rot and become a nice little feast for the maggots in a week or two…');
f(p, 'Oh, shut up…');
f(person, c, 'basic', 'teasing', x, x, false);
f(c, '$mcuz$, please go pick some roots or something.');
f(choice);
f(choice, 'Refuse');
f(jump, 'refuse');
f(choice, 'Go fishing');
f(jump, 'catchfish');
f(choice, 'Go into the forest to pick roots');
f(jump, 'pickroots');
f(endChoice);
f(label, 'refuse');
f(incrementVariable, 'like', -1);
f(p, 'Seriously, no way I\'m going into the woods before I know whatever bit you won\'t kill you.');
f(person, c, 'basic', 'irritated');
f(c, 'Oh, so that\'s the problem then, is it? It\'s your own dear life you\'re worried about?');
f(p, 'Come on, that\'s not what I meant. If I come back here and something\'s happened to you, how do you think I\'d feel?');
f(p, 'Maybe there\'s nothing I can do, but what the hell, we can go hungry for one night. God knows it wouldn\'t be the first.');
f(person, c, 'basic', 'neutral', x, x, true);
f(c, 'You\'re such a softy, $mcuz$.');
f(c, 'OK. I didn\'t sleep that well last night, so I think I\'ll take a nap. I do feel safe knowing your watching eye is over me.');
f(p, 'Sure.');
f(person, c, 'basic', 'teasing');
f(c, 'That last bit was me being sarcastic.');
f(p, 'I know.');
f(whatIf, 'catgirl');
f('Meow.');
f(endIf);
f(scene, 'black', 'fade');
f('Sophie slept for a few hours as I went through the book on medicinal plants again.');
f('Unfortunately, there was no chapter on "how to treat a snakebite with random plants".');
f(scene, 'outside_shelter_evening', 'fade', 2);
f('Sophie got up for a while and said she was fine, but hungry. I gave her the last piece of root we had lying around, though it wasn\'t much.');
f(scene, 'outside_shelter_night', 'fade', 2);
f(stopMusic, 'fade');
f('We both went to bed hungry.');
f(jump, 'day3');
f(label, 'catchfish');
f(p, 'No way I\'m going into the jungle again after this! I\'ll go fish.');
f(whatIf, 'c_cooked');
f(c, 'Well, if I die tonight, you know you\'re not gonna be able to make me cook this time, is that alright?');
f(p, 'Alright alright, very funny.');
f(otherwise);
f(c, 'OK, let\'s hope you get lucky.');
f(endIf);
f(stopMusic, 'fade');
f(playMusic, 'underwater');
f(scene, 'inWater', 'blackFade');
f(pause);
f('I had no luck whatsoever at the beach.');
f(c_b, '... just cutting things short here.');
f(c_t, 'This could have been a good spot for some introspection. Maybe you could have given the player the choice to express he wants to stay on the island again?');
f(c_b, '... hey, that\'s kind of good. Why didn\'t you say something sooner?');
f(c_t, 'I didn\'t think of it until now, did I?');
f(c_t, 'Maybe we can add something in the next update.');
f(c_b, 'We shouldn\'t spend too much time trying to perfect things though. We need to get to work on our next title!');
f(stopMusic, 'fade');
f(playMusic, 'distant_waves');
f(scene, 'outside_shelter_evening', 'blackFade');
f(jump, 'day2_pointless_attempt');
f(label, 'pickroots');
f(p, 'Well… I guess I\'ll see if I can find some more roots.');
f(whatIf, 'c_cooked');
f(c, 'Well, if I die tonight, you know you\'re not gonna be able to make me cook this time, is that alright?');
f(c_t, 'Morbid sense of humor, this girl.', 'happy');
f(c_b, 'That\'s what I love about her.', 'inlove');
f(p, 'Alright alright, very funny.');
f(otherwise);
f(c, 'OK, let\'s hope you get lucky.');
f(endIf);
f(stopMusic, 'fade');
f(playMusic, 'jungle');
f(scene, 'jungle_day', 'blackFade');
f(pause, 1);
f(changeBg, 'jungle_night', 'fade', 8);
f(pause, 2);
f(stopMusic, 'fade', 7);
f(panAll);
f(whatIf, 'headintoforest');
f('I went back into the jungle.');
f(otherwise);
f('I headed into the dense jungle, looking for this specific plant whose roots we\'ve been eating for the past few days.');
f(endIf);
f('I kept worrying about snakes getting to me, and before I had found even a single plant, it began to grow dark.');
f('Before I knew it, it was so dark I could hardly see a thing. I decided to head back to the shelter.');
f(playMusic, 'distant_waves');
f(scene, 'outside_shelter_night', 'blackFade');
f(jump, 'day2_pointless_attempt');
f(label, 'day2_pointless_attempt');
f(changeBg, 'outside_shelter_night', fade, 3);
f(setFilter, 'night');
f(c_b, 'Yup, that was an entirely pointless diversion. Sorry.', 'unhappy');
f(c_b, 'On the plus side, if you had refused to go, Sophie would have liked you less for it. So there\'s that.');
f(c_t, 'Hey, didn\'t you say it didn\'t matter, before the choice?', 'angry');
f(c_b, 'Oops.', 'worried');
f('Sophie is up again by the time I get back.');
f(person, c, 'basic', 'neutral');
f(setZoom, c, 1.15);
f(c, 'Hey, how did it go?');
f(p, 'Uh, sorry, I\'ve got nothing. How are you feeling?');
f(c, 'I feel perfectly fine, actually. I guess it wasn\'t poisonous! I\'m damn hungry though$meow$… two days of unsuccessful hunts in a row…');
f(p, 'I feel you, my stomach is going crazy. We hardly have anything, do we?');
f(c, 'There\'s some pieces of root left… hold on.');
f(remove, c);
f(pause, 1);
f(person, c, 'basic', 'neutral', x, x, true);
f(setZoom, c, 1.3);
f(c, 'Here. You should have them, you\'ve been moving around more than I today.');
f(whatIf, '!headintoforest');
f('Not sure that\'s true, actually.');
f(endIf);
f(choice);
f(choice, 'Let Sophie have them.');
f(incrementVariable, 'contempt', -1);
f(incrementVariable, 'like', 1);
f(p, 'Hey, I\'m not <i>that</i> hungry. I\'m actually pretty damn sick of these stupid things. I think I\'d rather go to bed hungry.');
f(person, c, 'right_arm_cover', 'inquisitive', x, x, true);
f(c, '... Are you sure?');
f(p, 'Yeah, go ahead, you can have them.');
f(person, c, 'basic', 'smiling');
f(c, 'Thanks, $mcuz$.');
f('My stomach hates me right now, but there was really very little left, too little to share and really even too little to make any difference at all.');
f(choice, 'Take them.');
f(p, 'Thanks, Sophie.');
f('There\'s really not a lot of it left, not even enough to share. I eat them but it does nothing for my hunger.');
f(choice, 'Share them');
f(incrementVariable, 'like', -1);
f(p, 'Let\'s share them.');
f(c, 'There\'s hardly anything. Not enough to share. Come on, just take them.');
f(p, '... Alright.');
f('Sophie was right, of course. Too little to share, and too little to really make any difference whatsoever. I\'m still pretty damn hungry.');
f(endChoice);
f('We both went to bed hungry.');
f(stopMusic, '');
f(scene, 'black', 'fade');
f(jump, 'day3');
f(jump, 'day3');
f(label, 'day3');
f(playMusic, 'jungle', 50);
f(scene, 'black', 'fade');
f(pause, 2);
f(c, 'Oh, $mcuz$, harder!');
f(c_t, '...');
f(c_t, 'I\'ll be in my bunk.');
f(c_b, '...', 'dumbfounded');
f(c_b, 'You wrote this part, though..?', 'unhappy');
f(c_t, 'Well, I didn\'t draw it!', 'worried');
f(c_t, 'It\'s funny, you\'d think you wouldn\'t get excited about stuff you wrote yourself. Maybe that\'s true for what you\'ve drawn… but you know, when you write for a story, you have to get in that mindset, you have to actually imagine Sophie being your cousin, or whatever.');
f(c_t, 'I don\'t want to say too much, but… it can be a little challenging writing sex scenes, I find.');
f(c_b, 'Oh, no, I agree.');
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_comingexpression');
f(pause);
f(c, 'Ah, do me!');
f(c, 'Harder, harder!');
f(c, 'I\'m gonna come!! Nghhh!');
f(stopMusic, 'fade');
f(scene, 'black', 'fade', 2);
f(pause, 0.5);
f(playMusic, 'distant_waves');
f(pause, 0.5);
f(scene, 'inside_shelter', 'fade');
f(panAll, 30);
f(setFilter, '');
f('I wake up sweaty, with a dry mouth and a boner the size of Mt. $fuji$.');
f(c_t, 'Why Fuji?');
f(c_b, 'Something for the animu fans, I guess.');
f('Let\'s… let\'s not analyze that dream to carefully.');
f(pause, 1);
f('$myCousin$ is not by my side, and I can\'t see or hear her rustling about outside either.');
f('... Man, my dick is hard.');
f('Maybe I could…');
f(choice);
f(choice, 'Jerk off?');
f(jump, 'jerkoff');
f(choice, 'Not now...');
f(jump, 'notnow');
f(endChoice);
f(label, 'jerkoff');
f('Now\'s the fucking time. I\'ve only had the chance to masturbate a single time since I got here. Enough is enough - I need this.');
f(stopMusic, 'fade');
f(scene, 'black', 'fade');
f('I close my eyes.');
f('For whatever reason… it\'s Sophie, again, that materializes in front of my eyes.');
f(setFilter, 'night');
f(person, c, 'boob_squeeze', 'charming_smile');
f(setZoom, c, 1.2);
f(setFilter, '');
f(pause);
f(c_b, 'If you\'re not already a backer, please consider backing us right here! The premium choice is pretty good.');
f(c_t, 'Scripted by me! Yay!', 'happy');
f(c_b, 'It\'s a bit bizarre, of course. But it doesn\'t deviate too much from the main story.');
f(c_t, 'It doesn\'t?!', 'surprised');
f(c_b, 'I mean… it\'s still Sophie, in the dream, I mean. It does deviate wildly from the main story, but in a good way, in a funny way… in a sexy way!');
f(c_t, 'Five bucks plz!');
f(choice);
f(choice, 'Fuck it. It\'s just a wank.');
f(c_b, 'There\'s actually two slightly differently scripted scenes here, depending on whether the player has expressed any contempt for Sophie or not.');
f(setVariable, 'caughtMasturbating', true);
f(jump, 'regularWank');
f(choice, 'Don\'t jerk off.');
f(remove, c);
f(jump, 'notnow');
f(choice, 'Try and think of something else.', 'premium');
f(setVariable, 'caughtMasturbating', true);
f(jump, 'tentacleWank');
f(endChoice);
f(label, 'regularWank');
f(whatIf, 'contempt>=2');
f(jump, 'resentmentWank');
f(otherwise);
f(jump, 'regularWank2');
f(endIf);
f(label, 'regularWank2');
f(scene, 'white', 'fade', 0.5);
f(pause, 1);
f(person, c, 'boob_squeeze', 'charming_smile');
f(setZoom, c, 0.9);
f(c, '$mcuz$. I think I\'m going crazy.');
f(c, 'You think it\'s only you guys who ever get horny?!');
f(person, c, 'boob_squeeze', 'embarrassed', x, x, true);
f(setZoom, c, 1);
f(whatIf, 'elf');
f(c, 'I know it\'s wrong… in elven society. But… we\'re not in Elven society right now, are we?');
f(otherwise);
f(c, 'Hey, I know this is… I mean, it\'s crazy, but…');
f(endIf);
f(c, 'Might you wanna…');
f(c, '...');
f(c, 'Would you want have sex… with me?');
f(person, c, 'boob_squeeze', 'happy');
f(setZoom, c, 1.07);
f(c, 'I mean… it\'s not like we\'d… be doing it, for real, you know. It\'d just… I mean, it\'s better than masturbating, right?');
f(person, c, 'basicnude', 'charming_smile', x, x, true);
f(setZoom, c, 1.15);
f(c, 'We\'d just be taking care of each other\'s needs… right? Nothing weird about that. Even if we, you know, just happen to be $cousins$...');
f(person, c, 'basicnude', 'charming_smile');
f(setZoom, c, 1.25);
f(c, 'For crying out loud, we\'re stuck on a tropical island. This kind of stuff happens all the time in these situations, right?');
f(pause, 2);
f(person, c, 'basicnude_armsbehind', 'inquisitive', x, x, true);
f(setZoom, c, 1.35);
f(c, 'So… how about it?');
f(scene, 'white', 'whiteFade');
f(playMusic, 'jungle', 50);
f(pause, 2);
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_pants');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_seductive');
f(pause);
f(c, 'Oh my God… I\'m so fucking horny… $mcuz$, please don\'t chicken out, OK?');
f('I hurriedly pull down her bikini bottoms.');
f(playSound, 'pantsOff');
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_seductive');
f('I grab my dick…');
f(screenEffect, 'whiteFlash');
f(cg, 'cg_doggy_jungle');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_angrysurprised');
f(screenEffect, 'shake', 10, 0.5);
f(playSound, 'hump');
f(c, 'OH!');
f('I give it to her, and I give it good.');
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_enjoying');
f(c, 'Oh, $mcuz$!! You… you\'re inside me!');
f(c, 'Oh my God!! My $mcousin$\'s dick… is inside my wet pussy!');
f(c, 'Oh, it\'s so big! It feels… it feels so good!');
f(c, 'I don\'t believe this!');
f('I begin pumping her pussy.');
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(c, 'Oh, oh! Faster, $mcuz$, faster! I want more of you, harder, faster!');
f('Well, I just got started. I up the pace.');
f(screenEffect, 'shake', 15, 0.2);
f(playSound, 'hump');
f(pause, 0.4);
f(screenEffect, 'shake', 15, 0.2);
f(playSound, 'hump');
f(pause, 0.4);
f(screenEffect, 'shake', 15, 0.2);
f(playSound, 'hump');
f(pause, 0.4);
f(screenEffect, 'shake', 15, 0.2);
f(playSound, 'hump');
f(pause, 0.4);
f(screenEffect, 'shake', 15, 0.2);
f(playSound, 'hump');
f(pause, 0.4);
f(screenEffect, 'shake', 15, 0.2);
f(playSound, 'hump');
f(pause, 0.4);
f(screenEffect, 'shake', 15, 0.2);
f(playSound, 'hump');
f(pause, 0.4);
f(c, 'Ngh… ah… your dick… it\'s tearing up me inside..! Oh, it feels so good! Don\'t stop! Don\'t ever stop, $mcuz$! Keep giving it to me!');
f('I\'m humping her wet pussy like crazy.');
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(cg, 'cg_doggy_jungle');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_comingexpression');
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(c, 'Unhg… uh… mnngghh… oh, $mcuz$, ngh…');
f(c_t, 'Apologies in advance for the upcoming choice to those of you playing with the "nude" or "no bra" cheats activated.', 'worried');
f(choice);
f(choice, 'Rip off her top');
f(setVariable, 'ripofftop');
f(choice, 'Don\'t');
f(endChoice);
f(screenEffect, 'whiteFlash');
f(whatIf, 'ripofftop');
f(cg, 'cg_doggy_jungle');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_freeboobs');
f(addToCg, 'cg_doggy_jungle_comingexpression');
f(otherwise);
f(cg, 'cg_doggy_jungle');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_comingexpression');
f(endIf);
f(pause);
f(c, 'Ah, ah, ah, ah, ah!');
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(c, 'Ah, ahh, ahh, ahh ahh! $mcuz$, I\'m cumming, I\'m cumming!');
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(c, 'Cum inside me, $mcuz$! Cum inside me$meeoow$!!');
f(label, 'regularCumChoice');
f(choice);
f(choice, 'Hump her some more');
f(setVariable, 'loop', 0);
f(jump, 'regularExtraHumping');
f(choice, 'Walk around and come in her face');
f(whatIf, 'ripofftop');
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_freeboobs');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_coming');
f(addToCg, 'doggy_jungle_comeonface');
f(otherwise);
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_coming');
f(addToCg, 'doggy_jungle_comeonface');
f(endIf);
f(pause);
f(choice, 'Come inside of her');
f(screenEffect, 'shake', 8, 2);
f(playSound, 'hump');
f(whatIf, 'ripofftop');
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_freeboobs');
f(addToCg, 'cg_doggy_jungle_coming');
f(addToCg, 'cg_doggy_jungle_cuminside');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(otherwise);
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_coming');
f(addToCg, 'cg_doggy_jungle_cuminside');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(endIf);
f(pause, 3);
f('We come in unison.');
f(c, 'AHHHHH!!!! $mcuz$!!!!!');
f(pause);
f(choice, 'Come on her back');
f(whatIf, 'ripofftop');
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_comeonass');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_freeboobs');
f(addToCg, 'cg_doggy_jungle_coming');
f(otherwise);
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_comeonass');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_coming');
f(endIf);
f('I pull out and come, plentily, on her back. At the same time, Sophie is climaxing.');
f(c, 'Nghh!!! NGHHHH!!!');
f(pause);
f(choice, 'Pull out and come on the ground');
f(whatIf, 'ripofftop');
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_comeonground');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_freeboobs');
f(addToCg, 'cg_doggy_jungle_coming');
f(otherwise);
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_comeonground');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_coming');
f(endIf);
f(pause);
f('I pull out and come on the ground (come on, even if it\'s just a fantasy, I don\'t want to get her pregnant).');
f(endChoice);
f(stopMusic, 'fade');
f(jump, 'wankInterrupted');
f(label, 'regularExtraHumping');
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.4);
f(incrementVariable, 'loop', 1);
f(whatIf, 'loop>20');
f(c, 'Ahhh!');
f(jump, 'regularCumChoice');
f(otherwise);
f(jump, 'regularExtraHumping');
f(endIf);
f(label, 'resentmentWank');
f(screenEffect, 'whiteFlash');
f(playMusic, 'jungle', 50);
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_pants');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_angry');
f(pause);
f(c, 'Hey, what the hell do you think you\'re doing?');
f(p, 'Wh-what?');
f(c, 'Get going! I don\'t have all day!');
f(c, 'Stick it the fuck in! Or don\'t you have the balls?');
f(p, '...');
f(c, 'Come on then!');
f(whatIf, 'catgirl');
f(c, 'Just confess it, you always wanted to fuck a catgirl, didn\'t you?!');
f(endIf);
f('I hurriedly pull down her bikini bottoms.');
f(playSound, 'pantsOff');
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_angry');
f('I grab my dick…');
f(c, 'Get on with it!');
f(screenEffect, 'whiteFlash');
f(cg, 'cg_doggy_jungle');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_angrysurprised');
f(screenEffect, 'shake', 10, 0.5);
f(playSound, 'hump');
f(whatIf, 'catgirl');
f(c, 'MEOW!!');
f(otherwise);
f(c, 'OH!');
f(endIf);
f('I give it to her, and I give it good.');
f(pause);
f(cg, 'cg_doggy_jungle');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_angryenjoying');
f(c, 'About god damn time, you damn loser!');
f(c, 'Come on! Get to it!');
f('Well… if that\'s what you\'re asking for. I begin pumping her pussy.');
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(c, 'A guy you like you couldn\'t make me come in a million years!');
f('No? Well, I just got started. I up the pace.');
f(screenEffect, 'shake', 15, 0.2);
f(playSound, 'hump');
f(pause, 0.4);
f(screenEffect, 'shake', 15, 0.2);
f(playSound, 'hump');
f(pause, 0.4);
f(screenEffect, 'shake', 15, 0.2);
f(playSound, 'hump');
f(pause, 0.4);
f(screenEffect, 'shake', 15, 0.2);
f(playSound, 'hump');
f(pause, 0.4);
f(screenEffect, 'shake', 15, 0.2);
f(playSound, 'hump');
f(pause, 0.4);
f(screenEffect, 'shake', 15, 0.2);
f(playSound, 'hump');
f(pause, 0.4);
f(screenEffect, 'shake', 15, 0.2);
f(playSound, 'hump');
f(pause, 0.4);
f(whatIf, 'catgirl');
f(c, 'Meow… ah… is this the best you can do, you shithead?');
f(otherwise);
f(c, 'Ngh… ah… is this the best you can do, you shithead?');
f(endIf);
f('I\'m humping her soaking wet pussy like crazy.');
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(cg, 'cg_doggy_jungle');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_comingexpression');
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(c, 'Unhg… uh… mnngghh… you… mmh.. loser! Ungh…');
f(choice);
f(choice, 'Rip off her top');
f(setVariable, 'ripofftop');
f(choice, 'Don\'t');
f(endChoice);
f(screenEffect, 'whiteFlash');
f(whatIf, 'ripofftop');
f(cg, 'cg_doggy_jungle');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_freeboobs');
f(addToCg, 'cg_doggy_jungle_comingexpression');
f(otherwise);
f(cg, 'cg_doggy_jungle');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_comingexpression');
f(endIf);
f(pause);
f(c, 'You piece of shi-, ah ah!');
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(screenEffect, 'shake', 18, 0.1);
f(playSound, 'hump');
f(pause, 0.25);
f(c, 'Ah, ahh, ahh, ahh ahh!');
f(label, 'resentmentCumChoice');
f(choice);
f(choice, 'Hump her some more');
f(setVariable, 'loop', 0);
f(jump, 'resentmentExtraHumping');
f(choice, 'Walk around and come in her face');
f(whatIf, 'ripofftop');
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_freeboobs');
f(addToCg, 'cg_doggy_jungle_angryfacewithsperm');
f(otherwise);
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_angryfacewithsperm');
f(endIf);
f(pause);
f(c, 'What the fuck?! Who the fuck do you think you are?');
f(c, 'Did I give you permission to cum in my face, you miserable little shit?');
f(choice, 'Come inside of her');
f(screenEffect, 'shake', 8, 2);
f(playSound, 'hump');
f(whatIf, 'ripofftop');
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_freeboobs');
f(addToCg, 'cg_doggy_jungle_coming');
f(addToCg, 'cg_doggy_jungle_cuminside');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(otherwise);
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_coming');
f(addToCg, 'cg_doggy_jungle_cuminside');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(endIf);
f(pause, 3);
f('We come in unison.');
f(whatIf, 'catgirl');
f(c, 'MEOOW!! YOU… YOU… ANGH!!!');
f(otherwise);
f(c, 'AHHHHH!!!! YOU… YOU… LOSER!!!');
f(endIf);
f(pause);
f(choice, 'Come on her back');
f(whatIf, 'ripofftop');
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_comeonass');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_freeboobs');
f(addToCg, 'cg_doggy_jungle_coming');
f(otherwise);
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_comeonass');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_coming');
f(endIf);
f('I pull out and come, plentily, on her back. At the same time, Sophie is climaxing.');
f(c, 'Nghh!!! NGHHHH!!!');
f(whatIf, 'catgirl');
f(c, 'MEOOOOOOOOOW!!!');
f(endIf);
f(pause);
f(choice, 'Pull out and come on the ground');
f(whatIf, 'ripofftop');
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_comeonground');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_freeboobs');
f(addToCg, 'cg_doggy_jungle_coming');
f(otherwise);
f(cg, 'cg_doggy_jungle', 'fade');
f(addToCg, 'cg_doggy_jungle_manbehind');
f(addToCg, 'cg_doggy_jungle_manarm');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'cg_doggy_jungle_comeonground');
f(addToCg, 'cg_doggy_jungle_pantsoff');
f(addToCg, 'cg_doggy_jungle_bra');
f(addToCg, 'cg_doggy_jungle_coming');
f(endIf);
f(pause);
f('I pull out and come on the ground. The bitch isn\'t worth making pregnant.');
f(endChoice);
f(stopMusic, 'fade');
f(jump, 'wankInterrupted');
f(label, 'resentmentExtraHumping');
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.4);
f(incrementVariable, 'loop', 1);
f(whatIf, 'loop>20');
f(c, 'Ahhh!');
f(jump, 'resentmentCumChoice');
f(otherwise);
f(jump, 'resentmentExtraHumping');
f(endIf);
f(label, 'tentacleWank');
f('Fuck, this won\'t do. I can\'t jerk off to her.');
f(scene, 'black', 'fade');
f('Concentrate… concentrate. What else can I come up with…');
f(pause, 1);
f(cg, 'cg_tentacles_doggy', 'fade', 1);
f(addToCg, 'tentacles_doggy_tentacle_behind');
f(addToCg, 'tentacles_doggy_blonde');
f(addToCg, 'tentacles_doggy_boobsinbra');
f(addToCg, 'tentacles_doggy_pants2');
f(addToCg, 'cg_doggy_jungle_cattail');
f(addToCg, 'cg_doggy_jungle_dogtail');
f(addToCg, 'cg_doggy_jungle_elfears');
f(addToCg, 'cg_doggy_jungle_catears');
f(addToCg, 'tentacles_doggy_enjoying2');
f(addToCg, 'tentacles_doggy_tears_closed');
f(addToCg, 'tentacles_doggy_front1');
f(addToCg, 'tentacles_doggy_front2');
f(pause);
f('Fuck me. I can\'t get rid of Sophie, but I guess… the setting makes it less real. Is this… can I go with this?');
f(choice);
f(choice, '"Meh, it\'ll work."');
f(setVariable, 'caughtMasturbating', true);
f(jump, 'tentacleWank2');
f(choice, '... skip the tentacles.');
f(setVariable, 'caughtMasturbating', true);
f('Nah, that\'s not for me… but hell, my dick is rock-hard. I guess I might as well jerk off to… regular-setting-Sophie…');
f('It\'s not… I mean, it\'s just a wank. It doesn\'t mean anything. Nah, it\'s not weird. Perfectly normal. You know, people fantasize about the weirdest of things, but it doesn\'t mean a thing. I\'m sure modern psychology is in agreement with me here.');
f(jump, 'regularWank');
f(choice, 'Don\'t jerk off.');
f(setVariable, 'caughtMasturbating', false);
f('I can\'t do it. I can\'t jerk off to.. to my own $fcousin$.');
f(jump, 'notnow');
f(endChoice);
f(label, 'tentacleWank2');
f(setVariable, 'tentacleGuy');
f(scene, 'black', 'fade');
f('Hey, I\'ve watched enough hentai anime to fill out the gaps here…');
f('Our heroine, Soph… Sophella, who just, totally, by chance, happens to look exactly like Sophie, is the last in a long line of Japanese school girls turned demon hunters.');
f(whatIf, 'catgirl');
f('The last in a long line of Japanese school… uh, catgirls, turned demon hunters.');
f(endIf);
f('Let\'s not take the magical pussy route here… no, she\'s just been overmanned by the Demon Lord Marduku, who has just released his new genetically enginered tentacle fuckfest onto Sophella.');
f(playMusic, 'lady_marduka');
f('Hmm, let\'s make that … Demon Lady Marduka.');
f('This… this works. I being moving my hand up and down my shaft.');
f(cg, 'cg_tentacles_doggy', 'fade', 1);
f(addToCg, 'tentacles_doggy_uniform_back');
f(addToCg, 'tentacles_doggy_boobsinbra');
f(addToCg, 'tentacles_doggy_uniform_front');
f(addToCg, 'tentacles_doggy_cattail');
f(addToCg, 'tentacles_doggy_dogtail');
f(addToCg, 'tentacles_doggy_elfears');
f(addToCg, 'tentacles_doggy_catears');
f(addToCg, 'tentacles_doggy_surprise1');
f(addToCg, 'tentacles_doggy_tentacle_holding');
f(addToCg, 'tentacles_doggy_front1');
f(c_t, 'Let me just say I really love this song. It\'s called "Too Old For This Shit", by a guy called "fearing". We grabbed it from Newgrounds\' Audio Portal. Thank you, fearing!');
f(c_b, 'I thought you were in your bunk?');
f(c_t, '...', 'dumbfounded');
f(c_t, 'BRB', 'worried');
f(pause);
f(s, 'I… I can\'t move! What\'s happening?! Where am I?');
f(cg, 'cg_tentacles_doggy', 'fade', 0.5);
f(addToCg, 'tentacles_doggy_uniform_back');
f(addToCg, 'tentacles_doggy_boobsinbra');
f(addToCg, 'tentacles_doggy_uniform_front');
f(addToCg, 'tentacles_doggy_cattail');
f(addToCg, 'tentacles_doggy_dogtail');
f(addToCg, 'tentacles_doggy_elfears');
f(addToCg, 'tentacles_doggy_catears');
f(addToCg, 'tentacles_doggy_angry_yell');
f(addToCg, 'tentacles_doggy_tentacle_holding');
f(addToCg, 'tentacles_doggy_front1');
f(s, 'Marduka! You bastard whore! You will never get away with this! My sisters will find me, and punish you!! In the name of the Sun!');
f(cg, 'bg_demonsky', 'blackFade');
f(addToCg, 'marduka_base');
f(m, 'Hahaha! You stupid girl! Don\'t you see, that is <i>precisely</i> what I had planned! It\'s a trap, a-hahahah!! Do you think they will stand any better chance against Horgar, my new demonic pleasure weapon, than you?');
f(m, 'The Sun Girls will all succumb to the pleasures of Horgar, and with you pesky things out of the way, the world will be mine, to pervertedly rule!');
f(c_b, 'I tried to make this as corny as possible. It\'s slightly based off of Sailor Moon, though.');
f(c_b, 'Lady Marduka was drawn by Japanese artist Molky. It\'s based on a character from the Japanese browser game/anime Kantai Collection.');
f(cg, 'cg_tentacles_doggy', 'blackFade');
f(addToCg, 'tentacles_doggy_uniform_back');
f(addToCg, 'tentacles_doggy_boobsinbra');
f(addToCg, 'tentacles_doggy_uniform_front');
f(addToCg, 'tentacles_doggy_cattail');
f(addToCg, 'tentacles_doggy_dogtail');
f(addToCg, 'tentacles_doggy_elfears');
f(addToCg, 'tentacles_doggy_catears');
f(addToCg, 'tentacles_doggy_angry');
f(addToCg, 'tentacles_doggy_tentacle_holding');
f(addToCg, 'tentacles_doggy_front1');
f(s, 'Never!! Damn you, Marduka, you will get what\'s yours, trust me on this$nya$!');
f(m, 'Enough! Let\'s shut that piehole of yours! Horgar!');
f(h, 'Your wish is my command, my queen.');
f(screenEffect, 'whiteFlash');
f(playSound, 'flash');
f(pause, 0.1);
f(cg, 'cg_tentacles_doggy');
f(addToCg, 'tentacles_doggy_uniform_back');
f(addToCg, 'tentacles_doggy_boobsinbra');
f(addToCg, 'tentacles_doggy_uniform_front');
f(addToCg, 'tentacles_doggy_cattail');
f(addToCg, 'tentacles_doggy_dogtail');
f(addToCg, 'tentacles_doggy_elfears');
f(addToCg, 'tentacles_doggy_catears');
f(addToCg, 'tentacles_doggy_surprise1');
f(addToCg, 'tentacles_doggy_tentacle_holding');
f(addToCg, 'tentacles_doggy_tentacle_mouth');
f(addToCg, 'tentacles_doggy_front1');
f(pause);
f(s, 'Mgh! Mmh hmm!');
f(m, 'That\'s it, Horgar! Fill her up!');
f('The tentacle in Sophella\'s mouth begins plunging back and forth, and fills the entirety of her mouth, almost going into her throat.');
f(cg, 'cg_tentacles_doggy', 'fade', 0.5);
f(addToCg, 'tentacles_doggy_uniform_back');
f(addToCg, 'tentacles_doggy_boobsinbra');
f(addToCg, 'tentacles_doggy_uniform_front');
f(addToCg, 'tentacles_doggy_cattail');
f(addToCg, 'tentacles_doggy_dogtail');
f(addToCg, 'tentacles_doggy_elfears');
f(addToCg, 'tentacles_doggy_catears');
f(addToCg, 'tentacles_doggy_enjoying1');
f(addToCg, 'tentacles_doggy_tentacle_holding');
f(addToCg, 'tentacles_doggy_tentacle_mouth');
f(addToCg, 'tentacles_doggy_front1');
f('While Sophella tries to fight it, it begins… she is getting hornier by the second. She is powerless against Horgar…');
f(m, 'Horgar! Our heroine is wearing much too much clothes, if you ask me. Such youth, yet such little skin. It\'s a shame!');
f(s, 'Mghh!! Nghhh!!');
f(h, 'Of course, my queen.');
f(screenEffect, 'whiteFlash');
f(playSound, 'flash');
f(pause, 0.1);
f(cg, 'cg_tentacles_doggy');
f(addToCg, 'tentacles_doggy_pants1');
f(addToCg, 'tentacles_doggy_boobsinbra');
f(addToCg, 'tentacles_doggy_uniform_noskirt');
f(addToCg, 'tentacles_doggy_cattail');
f(addToCg, 'tentacles_doggy_dogtail');
f(addToCg, 'tentacles_doggy_elfears');
f(addToCg, 'tentacles_doggy_catears');
f(addToCg, 'tentacles_doggy_surprise1');
f(addToCg, 'tentacles_doggy_tentacle_holding');
f(addToCg, 'tentacles_doggy_tentacle_mouth');
f(addToCg, 'tentacles_doggy_front1');
f(pause);
f(cg, 'cg_tentacles_doggy', 'fade', 0.5);
f(addToCg, 'tentacles_doggy_pants1');
f(addToCg, 'tentacles_doggy_boobsinbra');
f(addToCg, 'tentacles_doggy_uniform_noskirt');
f(addToCg, 'tentacles_doggy_cattail');
f(addToCg, 'tentacles_doggy_dogtail');
f(addToCg, 'tentacles_doggy_elfears');
f(addToCg, 'tentacles_doggy_catears');
f(addToCg, 'tentacles_doggy_enjoying1');
f(addToCg, 'tentacles_doggy_tentacle_holding');
f(addToCg, 'tentacles_doggy_tentacle_mouth');
f(addToCg, 'tentacles_doggy_front1');
f(h, 'My queen… she is rather wet, already. She is soaking through her panties.');
f(m, 'Sophella, you slut. She is begging for it, isn\'t she? Well, let\'s not tease her any longer! Horgar, enter her!');
f(cg, 'cg_tentacles_doggy', 'fade', 0.5);
f(addToCg, 'tentacles_doggy_pants1');
f(addToCg, 'tentacles_doggy_boobsinbra');
f(addToCg, 'tentacles_doggy_uniform_noskirt');
f(addToCg, 'tentacles_doggy_cattail');
f(addToCg, 'tentacles_doggy_dogtail');
f(addToCg, 'tentacles_doggy_elfears');
f(addToCg, 'tentacles_doggy_catears');
f(addToCg, 'tentacles_doggy_surprise1');
f(addToCg, 'tentacles_doggy_tentacle_holding');
f(addToCg, 'tentacles_doggy_tentacle_mouth');
f(addToCg, 'tentacles_doggy_front1');
f(s, 'Ngh! Nghhh!! NGHHH!!');
f(m, 'Why, why… Our lady doth protest too much, methinks.');
f(screenEffect, 'whiteFlash');
f(playSound, 'flash');
f(playSound, 'hump');
f(pause, 0.1);
f(cg, 'cg_tentacles_doggy');
f(addToCg, 'tentacles_doggy_tentacle_behind');
f(addToCg, 'tentacles_doggy_pants2');
f(addToCg, 'tentacles_doggy_boobsinbra');
f(addToCg, 'tentacles_doggy_uniform_noskirt');
f(addToCg, 'tentacles_doggy_cattail');
f(addToCg, 'tentacles_doggy_dogtail');
f(addToCg, 'tentacles_doggy_elfears');
f(addToCg, 'tentacles_doggy_catears');
f(addToCg, 'tentacles_doggy_surprise2');
f(addToCg, 'tentacles_doggy_tentacle_holding');
f(addToCg, 'tentacles_doggy_tentacle_mouth');
f(addToCg, 'tentacles_doggy_front1');
f(pause);
f(s, 'Nhghghhh!!!!');
f('Horgar goes to work, front and back. Whatever control Sophella had of her bodies, is lost.');
f(cg, 'cg_tentacles_doggy');
f(addToCg, 'tentacles_doggy_tentacle_behind');
f(addToCg, 'tentacles_doggy_pants2');
f(addToCg, 'tentacles_doggy_boobsinbra');
f(addToCg, 'tentacles_doggy_uniform_noskirt');
f(addToCg, 'tentacles_doggy_cattail');
f(addToCg, 'tentacles_doggy_dogtail');
f(addToCg, 'tentacles_doggy_elfears');
f(addToCg, 'tentacles_doggy_catears');
f(addToCg, 'tentacles_doggy_enjoying2');
f(addToCg, 'tentacles_doggy_tentacle_holding');
f(addToCg, 'tentacles_doggy_tentacle_mouth');
f(addToCg, 'tentacles_doggy_front1');
f('Mentally though, she isn\'t entirely broken just yet. She still fights the pleasure.');
f('"I mustn\'t let myself enjoy it! I can\'t enjoy it! I can\'t! I can\'t!", she pleads to herself.');
f(pause);
f(m, 'Horgar, that bra has to go. She will have no use for it here.');
f(screenEffect, 'whiteFlash');
f(playSound, 'flash');
f(pause, 0.1);
f(cg, 'cg_tentacles_doggy');
f(addToCg, 'tentacles_doggy_freeboobs');
f(addToCg, 'tentacles_doggy_braoff');
f(addToCg, 'tentacles_doggy_pants2');
f(addToCg, 'tentacles_doggy_tentacle_behind');
f(addToCg, 'tentacles_doggy_uniform_noskirt');
f(addToCg, 'tentacles_doggy_cattail');
f(addToCg, 'tentacles_doggy_dogtail');
f(addToCg, 'tentacles_doggy_elfears');
f(addToCg, 'tentacles_doggy_catears');
f(addToCg, 'tentacles_doggy_surprise1');
f(addToCg, 'tentacles_doggy_tentacle_holding');
f(addToCg, 'tentacles_doggy_tentacle_mouth');
f(addToCg, 'tentacles_doggy_front1');
f(pause);
f(m, 'Now… let\'s make things more interesting. Turn her over, and go to work on those beautiful breasts of her.');
f(cg, 'cg_tentacles_doggy', 'fade', 0.5);
f(addToCg, 'tentacles_doggy_freeboobs');
f(addToCg, 'tentacles_doggy_braoff');
f(addToCg, 'tentacles_doggy_pants2');
f(addToCg, 'tentacles_doggy_tentacle_behind');
f(addToCg, 'tentacles_doggy_uniform_noskirt');
f(addToCg, 'tentacles_doggy_cattail');
f(addToCg, 'tentacles_doggy_dogtail');
f(addToCg, 'tentacles_doggy_elfears');
f(addToCg, 'tentacles_doggy_catears');
f(addToCg, 'tentacles_doggy_enjoying3');
f(addToCg, 'tentacles_doggy_tentacle_holding');
f(addToCg, 'tentacles_doggy_tentacle_outofmouth');
f(addToCg, 'tentacles_doggy_front1');
f(s, 'Peh!');
f('The tentacle in Sophella\'s mouth comes lose. Sophella desperately spits out the viscous tentacle secrete that has built up in her mouth.');
f(playSound, 'flash');
f(scene, 'white', 'fade', 0.5);
f(playSound, 'hump');
f(cg, 'tentacles_onback', 'fade', 0.5);
f(addToCg, 'tentacles_onback_pubes');
f(addToCg, 'tentacles_onback_uniform_skirt');
f(addToCg, 'tentacles_onback_cattail');
f(addToCg, 'tentacles_onback_dogtail');
f(addToCg, 'tentacles_onback_elfears');
f(addToCg, 'tentacles_onback_catears');
f(addToCg, 'tentacles_onback_freeboob_right');
f(addToCg, 'tentacles_onback_freeboob_left');
f(addToCg, 'tentacles_onback_uniform');
f(addToCg, 'tentacles_onback_surprise3');
f(pause);
f('With his tentacles, Horgar flips Sophella over as easily as one might flip a fried egg.');
f(s, 'Sisters!! Where are you?!! Help me$nyaaa$!!');
f(cg, 'tentacles_onback', 'fade', 0.5);
f(addToCg, 'tentacles_onback_pubes');
f(addToCg, 'tentacles_onback_uniform_skirt');
f(addToCg, 'tentacles_onback_cattail');
f(addToCg, 'tentacles_onback_dogtail');
f(addToCg, 'tentacles_onback_elfears');
f(addToCg, 'tentacles_onback_catears');
f(addToCg, 'tentacles_onback_freeboob_right');
f(addToCg, 'tentacles_onback_freeboob_left');
f(addToCg, 'tentacles_onback_uniform');
f(addToCg, 'tentacles_onback_surprise2');
f(addToCg, 'tentacles_onback_tentacle_mouth');
f('The tentacle finds it way back to Sophella\'s mouth. Sophella attempts to avert her face and close her mouth as it pulls up towards her face, but Horgar is too strong. He pushes through her clenched teeth with ease.');
f(s, 'Hmgph!');
f(m, 'There\'s no helping you now, sweet girl. Horgar, quickly! Her ample little breasts are craving our attention!');
f(pause, 0.1);
f(cg, 'tentacles_onback', 'fade', 0.5);
f(addToCg, 'tentacles_onback_pubes');
f(addToCg, 'tentacles_onback_freeboob_right');
f(addToCg, 'tentacles_onback_uniform');
f(addToCg, 'tentacles_onback_cattail');
f(addToCg, 'tentacles_onback_dogtail');
f(addToCg, 'tentacles_onback_elfears');
f(addToCg, 'tentacles_onback_catears');
f(addToCg, 'tentacles_onback_twistedboob_left');
f(addToCg, 'tentacles_onback_surprise3');
f(addToCg, 'tentacles_onback_tentacle_mouth');
f(pause);
f('In an instant, more tentacles shoot forth and slither around Sophella\'s breasts, fondling them.');
f('Sophella can\'t help herself. She\'s getting wetter by the minute.');
f(cg, 'tentacles_onback', 'fade', 0.5);
f(addToCg, 'tentacles_onback_pubes');
f(addToCg, 'tentacles_onback_uniform');
f(addToCg, 'tentacles_onback_cattail');
f(addToCg, 'tentacles_onback_dogtail');
f(addToCg, 'tentacles_onback_elfears');
f(addToCg, 'tentacles_onback_catears');
f(addToCg, 'tentacles_onback_twistedboob_right');
f(addToCg, 'tentacles_onback_twistedboob_left');
f(addToCg, 'tentacles_onback_enjoying1');
f(addToCg, 'tentacles_onback_tentacle_mouth');
f(addToCg, 'tentacles_onback_pussyjuice');
f(s, 'Ngh… ngh…');
f(m, 'Haha! That\'s right, enjoy it, you whore!');
f('Horgar\'s fondling becomes more and more aggressive, and the tentacle in Sophella\'s mouth thrusts in and out faster and faster.');
f(screenEffect, 'whiteFlash');
f(playSound, 'flash');
f(pause, 0.1);
f(cg, 'tentacles_onback', 'fade', 0.5);
f(addToCg, 'tentacles_onback_pubes');
f(addToCg, 'tentacles_onback_uniform');
f(addToCg, 'tentacles_onback_cattail');
f(addToCg, 'tentacles_onback_dogtail');
f(addToCg, 'tentacles_onback_elfears');
f(addToCg, 'tentacles_onback_catears');
f(addToCg, 'tentacles_onback_twistedboob_right');
f(addToCg, 'tentacles_onback_twistedboob_left');
f(addToCg, 'tentacles_onback_surprise2');
f(addToCg, 'tentacles_onback_stomach_deko');
f(addToCg, 'tentacles_onback_tears1');
f(addToCg, 'tentacles_onback_tentacle_mouth');
f(addToCg, 'tentacles_onback_pussyjuice');
f(addToCg, 'tentacles_onback_tentacle_pussy');
f(s, 'Ngh!!!');
f(cg, 'tentacles_onback', 'fade', 0.5);
f(addToCg, 'tentacles_onback_pubes');
f(addToCg, 'tentacles_onback_uniform');
f(addToCg, 'tentacles_onback_cattail');
f(addToCg, 'tentacles_onback_dogtail');
f(addToCg, 'tentacles_onback_elfears');
f(addToCg, 'tentacles_onback_catears');
f(addToCg, 'tentacles_onback_twistedboob_right');
f(addToCg, 'tentacles_onback_twistedboob_left');
f(addToCg, 'tentacles_onback_enjoying2');
f(addToCg, 'tentacles_onback_tentacle_mouth');
f(addToCg, 'tentacles_onback_pussyjuice');
f(addToCg, 'tentacles_onback_tentacle_pussy');
f('It is a moan of pleasure, not protest, that leaves Sophella\'s lips when Horgar finally penetrates her wet pussy.');
f(m, 'My oh my, aren\'t you wet, my dear.');
f(cg, 'tentacles_onback', 'fade', 0.5);
f(addToCg, 'tentacles_onback_pubes');
f(addToCg, 'tentacles_onback_uniform');
f(addToCg, 'tentacles_onback_cattail');
f(addToCg, 'tentacles_onback_dogtail');
f(addToCg, 'tentacles_onback_elfears');
f(addToCg, 'tentacles_onback_catears');
f(addToCg, 'tentacles_onback_twistedboob_right');
f(addToCg, 'tentacles_onback_twistedboob_left');
f(addToCg, 'tentacles_onback_enjoying2');
f(addToCg, 'tentacles_onback_tears1');
f(addToCg, 'tentacles_onback_tentacle_mouth');
f(addToCg, 'tentacles_onback_pussyjuice');
f(addToCg, 'tentacles_onback_tentacle_pussy');
f('Sophella can only pant in return. She can\'t hide it - the immense, unnatural pleasure is beginning to get to her, mentally as well as physically.');
f(m, 'Yes, sweet girl, you will get what you crave for.');
f('Harder, better, stronger. Horgar\'s thrusting is relentless. Sophella finds herself <i>entirely</i> lost to the lust.');
f(s, 'Nghmm… nghmm… ngh, ngh..!');
f(setVolume, 0.5, 'fade');
f(cg, 'bg_demonsky', 'blackFade');
f(addToCg, 'marduka_base');
f(addToCg, 'marduka_happy');
f(pause, 1);
f(m, 'Haha! Not so cocky now, are we!');
f(screenEffect, 'shake');
f(playSound, 'explosion');
f(cg, 'bg_demonsky');
f(addToCg, 'marduka_base');
f(addToCg, 'marduka_surprised');
f(m, 'What-, what\'s this?');
f(m, 'I\'m sensing… an irregular force… could it be?!');
f(screenEffect, 'shake');
f(playSound, 'explosion');
f(m, 'Oh, my Moon Lord! This… this is impossible!! Horgar?!');
f(cg, 'tentacles_onback', 'fade', 0.5);
f(addToCg, 'tentacles_onback_pubes');
f(addToCg, 'tentacles_onback_uniform');
f(addToCg, 'tentacles_onback_cattail');
f(addToCg, 'tentacles_onback_dogtail');
f(addToCg, 'tentacles_onback_elfears');
f(addToCg, 'tentacles_onback_catears');
f(addToCg, 'tentacles_onback_twistedboob_right');
f(addToCg, 'tentacles_onback_twistedboob_left');
f(addToCg, 'tentacles_onback_enjoying2');
f(addToCg, 'tentacles_onback_tentacle_mouth');
f(addToCg, 'tentacles_onback_tears2');
f(addToCg, 'tentacles_onback_pussyjuice');
f(addToCg, 'tentacles_onback_tentacle_pussy');
f(pause, 0.5);
f(h, 'My queen! She is moments from climaxing. Soon she will be ours!');
f(m, 'Horgar, no, stop! Her… her pussy! If she cums, it-');
f(h, 'What?');
f(stopMusic, 'fade');
f(cg, 'tentacles_onback', 'fade', 0.5);
f(addToCg, 'tentacles_onback_pubes');
f(addToCg, 'tentacles_onback_uniform');
f(addToCg, 'tentacles_onback_cattail');
f(addToCg, 'tentacles_onback_dogtail');
f(addToCg, 'tentacles_onback_elfears');
f(addToCg, 'tentacles_onback_catears');
f(addToCg, 'tentacles_onback_twistedboob_right');
f(addToCg, 'tentacles_onback_twistedboob_left');
f(addToCg, 'tentacles_onback_coming1');
f(addToCg, 'tentacles_onback_tentacle_mouth');
f(addToCg, 'tentacles_onback_tears2');
f(addToCg, 'tentacles_onback_pussyjuice');
f(addToCg, 'tentacles_onback_tentacle_pussy');
f(s, 'Ngh! Ngh!! Ngh!!! Ngh!!!!');
f(s, 'Mmmhh… mmhhhh… mmhhh… mhhh..! Mhh…!! Mh..!! Mh!! MHGH!! NGH!! NGH!!!!');
f(cg, 'tentacles_onback', 'fade', 0.5);
f(addToCg, 'tentacles_onback_pubes');
f(addToCg, 'tentacles_onback_uniform');
f(addToCg, 'tentacles_onback_cattail');
f(addToCg, 'tentacles_onback_dogtail');
f(addToCg, 'tentacles_onback_elfears');
f(addToCg, 'tentacles_onback_catears');
f(addToCg, 'tentacles_onback_twistedboob_right');
f(addToCg, 'tentacles_onback_twistedboob_left');
f(addToCg, 'tentacles_onback_coming1');
f(addToCg, 'tentacles_onback_tears2');
f(addToCg, 'tentacles_onback_stomach_deko');
f(addToCg, 'tentacles_onback_tentacle_outofmouth');
f(addToCg, 'tentacles_onback_pussyjuice');
f(addToCg, 'tentacles_onback_tentacle_pussy');
f(s, 'Aahh, aah, I\'m cumming, I\'m cumming!');
f(pause);
f(h, 'Yes!!!');
f(whatIf, 'catgirl');
f(s, 'NYAAAAAAAAAA!!!!!');
f(endIf);
f(cg, 'bg_demonsky', 'fade', 0.5);
f(addToCg, 'marduka_base');
f(addToCg, 'marduka_surprised');
f(screenEffect, 'shake');
f(playSound, 'explosion');
f(m, 'No!!! No!!! It\'s all coming undone!!');
f(screenEffect, 'whiteFlash');
f(pause, 0.1);
f(cg, 'bg_demonsky');
f(screenEffect, 'shake');
f(playSound, 'explosion');
f(addToCg, 'marduka_ripped');
f(pause);
f(m, 'No… No!!');
f(screenEffect, 'constantShake');
f(playMusic, 'explosionSong');
f(pause, 0.5);
f(m, 'NOOOOOO!!!!');
f(pause, 3);
f(stopMusic, 'fade');
f(scene, 'white', 'fade', 1);
f(removeScreenEffects);
f(pause, 1);
f(jump, 'wankInterrupted');
f(label, 'wankInterrupted');
f(scene, 'black', 'fade');
f(playMusic, 'distant_waves');
f(pause, 1);
f(c_t, 'And I\'m BACK!');
f('Just as I\'m about to come…');
f(c_b, 'Nice god damn timing, you too!', 'surprised');
f(c, 'Hey $mcuz$, are yo- OH MY GOD!');
f(cg, 'feet', 'fade', 0.5);
f(addToCg, 'feet_1');
f('Of course, this would have to happen.');
f('The odd thing is, Sophie suddenly appearing stirs something inside of me and rather than having a cooling effect, I find myself unable to stop myself from cumming, though my hand has stopped moving.');
f(pause, 0.5);
f(p, 'Ungh!');
f(cg, 'feet', 'fade', 1);
f(addToCg, 'feet_2');
f('Sophie turns around, just as I squirt. I pray to God she didn\'t see me actually cum. Not sure whether it makes a big difference at this point, though.');
f(c, 'I\'m… I\'m so sorry!');
f(cg, 'feet', 'fade', 0.5);
f('Sophie runs off. Thank god.');
f(scene, 'black', 'fade');
f(pause, 2);
f(scene, 'inside_shelter', 'fade', 0.3, x, x, 'center');
f('Shit, there\'s cum all over.');
f('I have a look outside - Sophie is nowhere near.');
f(stopMusic, 'fade');
f(playMusic, 'calm_beach');
f(scene, 'water_closeup', 'blackFade');
f('I venture down to the beach and clean myself up.');
f('Damn. I was a frickin\' idiot to try something like that, at a time like this. I got too absorbed by the jerking off I didn\'t even notice Sophie walking up towards the tent. Shit.');
f('I find a small amount of relief that there\'s at least no way for her to know what I was fantasizing about, though.');
f(whatIf, 'contempt>1');
f('Should I be feeling guilty over it? Hm. I guess… I guess I don\'t. The way she\'s behaving recently, I don\'t really care.');
f(otherwise);
f('Shit, I\'m beginning to feel really guilty about it.');
f('Her walking in on me like that, catching me in the act, just made everything 10 times worse.');
f(endIf);
f(choice);
f(choice, '"She shouldn\'t sneak up on me like that."');
f(incrementVariable, 'contempt', 1);
f('Like, hello, ever heard of knocking? … OK, so maybe that\'s not an option, but damn, could a guy get some privacy around here? She could at least announced she was coming near, instead of just walking in like… like an idiot.');
f(c_b, 'Seriously, how could you blame her for this? Protagonist\'s being an asshole.', 'angry');
f(choice, '"I timed it like an idiot."');
f('Man. I need to time it better. I mean, she spends all that time in the jungle. Hell, I could masturbate in the jungle instead, when she\'s sleeping. She wouldn\'t find me.');
f(' A bit creepy with all the birds, and bugs, and…');
f('Ah, never mind. I\'ll be more careful next time.');
f(endChoice);
f(jump, 'day3Morning2');
f(label, 'notnow');
f(p, 'Fuck.');
f('I\'m going to have to find another time to do it, when my mind\'s not filled with… these bizarre dream images, that make no sense. Damn it.');
f(c_t, '... making no sense whatsoever, right.');
f('I get up and go down to the beach.');
f(stopMusic, 'fade');
f(playMusic, 'regular_waves');
f(scene, 'beach_day', 'blackFade', x, x, x, 'right');
f(panAll, 40);
f('I see Sophie in the distance, heading towards the woods, with her bow in hand. I yell towards her.');
f(p, 'Hey! Good morning!!');
f(c, 'Morning sleepy head! Going hunting! Wish me luck$meow$!');
f('Well, that\'s that, then I guess.');
f('So… what should I do with this beautiful day?');
f(jump, 'day3ActivityChoice');
f(label, 'day3Morning2');
f('I walk back to the shelter.');
f(stopMusic, 'fade');
f(playMusic, 'distant_waves');
f(scene, 'outside_shelter_day', 'fade');
f(panAll, 30);
f('Sophie isn\'t around.');
f('Should I…');
f(choice);
f(choice, 'Go look for her');
f('I check the area near the shelter, but there\'s no sign of her.');
f('As I go back to the shelter, I realize her bow is gone. Well, guess she\'s out hunting, then.');
f('Though she\'s rash, she\'s not stupid. If she\'s not worried about the snakebite, I guess I shouldn\'t be either.');
f('That this one particular snake wasn\'t venomous doesn\'t mean that the next one won\'t be, though. That\'s what scares me, I guess.');
f('I guess I might as well make myself useful as well.');
f(choice, 'Look for food');
f('She\'s probably out hunting already.');
f(endChoice);
f(label, 'day3ActivityChoice');
f(choice);
f(choice, 'Go fishing');
f(setVariable, 'day3Activity', 'fishing');
f('Fishing it is.');
f(jump, 'day3Fishing');
f(choice, 'Go into the jungle looking for roots');
f(setVariable, 'day3Activity', 'picking');
f('Junglin\' it is.');
f(jump, 'day3Jungle');
f(endChoice);
f(label, 'day3Fishing');
f(stopMusic, 'fade');
f(playMusic, 'underwater');
f(scene, 'inwater', 'blackFade');
f(pause);
f('Blub, blub.');
f('Here fishie fishie fishie!!');
f('...');
f('I keep trying for a couple of hours, but luck is not on my side today. I\'d go on longer still, but I\'m really tired, and wading around in the salt water for too long gets pretty painful.');
f(scene, 'outside_shelter_day', 'blackFade');
f('Once I get back, I\'m feeling pretty exhausted I decide to take a nap and hope Sophie did better.');
f(scene, 'outside_shelter_evening', 'fade', 3);
f(setFilter, 'sunset');
f(stopMusic, 'fade');
f(jump, 'day3Evening');
f(label, 'day3Jungle');
f(stopMusic, 'fade');
f(playMusic, 'jungle');
f(scene, 'jungle_day', 'blackFade', x, x, x, 'right');
f(panAll, 50);
f('Though I\'m a little wary of snakes and what not after the incident yesterday… I head into the jungle.');
f('After an hour or so of searching, I stumble upon a small groove of herbs with edible roots. In terms of … protein? Is that what they contain? Ah, no, it\'s more like… potatoes, right? So carbohydrates, I guess?');
f('Well, I don\'t know if it\'s really one full meal for two adults, but there\'s quite a lot. I take off my dirty shirt and wrap it around the plants I\'ve picked, holding it like a bag.');
f('After uprooting all the little bastards, I decide to call it a day and head back to the beach.');
f(stopMusic, 'fade');
f('But… hold on a second.');
f('Which way did I come from..?');
f('...');
f('Shit.');
f('Don\'t panic.');
f(playMusic, 'lost_in_jungle', 80);
f(c_t, 'But let\'s start playing the panicky music!', 'happy');
f(c_b, 'It does help set the mood.');
f(c_b, 'I wrote this, but I mean… I was almost disappointed myself that the stakes weren\'t higher, when I played through it with this song. It does give you a feeling that things could go quite wrong.');
f(c_t, 'When actually, this is another false choice! Hello, Telltale!');
f(c_b, 'Well, no, not entirely. It does have bearing on the conversation afterwards, and you will only find the hypnotic herb if you are able to figure out the right way out of here.');
f(c_b, 'Or, if you make two perfect mistakes cancelling each other out. That was a bitch to script, kept getting it wrong. And playtesting it, too…');
f(c_t, 'Poor you.');
f('It\'s midday, so the sun is not much of a help, well, what little of I can see of it through the dense ceiling of branches and leaves.');
f('Uh… there\'s the… you look for moss, on the trees, right? And that tells you… the… the side the moss grows on, is the side…');
f(whatIf, 'elf');
f('Damn it, I\'m an elf! I should know this stuff, shouldn\'t I?');
f(endIf);
f(choice);
f(choice, '... the sun sets on.');
f(setVariable, 'mossDirection', 'west');
f('Of course, moss usually grows in dark places… so… they\'d get… less sun, on that side?');
f('How does that work, actually? Wouldn\'t the amount of sun be the same? It takes the same amount of time for the sun to set as to rise, doesn\'t it?');
f(choice, '... to the north.');
f(setVariable, 'mossDirection', 'north');
f('Right, moss grows on the north side… in the northern hemisphere. Which I\'m pretty sure we\'re still in. We didn\'t go that far south.');
f(choice, '... the sun rises on.');
f(setVariable, 'mossDirection', 'east');
f('Of course, moss usually grows in dark places… so… they\'d get… less sun, on that side?');
f('How does that work, actually? Wouldn\'t the amount of sun be the same? It takes the same amount of time for the sun to set as to rise, doesn\'t it?');
f(choice, '... to the south.');
f(setVariable, 'mossDirection', 'south');
f('Moss grows on the northern side in the northern hemisphere… but we\'re in the southern hemisphere now, aren\'t we? So it\'d probably be reversed. Just like the toilets... presumably.');
f(endChoice);
f('I check some of the trees for moss.');
f('Uh… yeah… I don\'t know, most of them don\'t have that much of it… on this larger one there\'s some. OK, I guess there\'s maybe more moss on this side than the other. So now I know the directions, assuming this is right.');
f('But, uh… which side of the island is it that we live on, now again? Fuck, I know this. It\'s not hard.');
f(c_b, 'This one is a little hard, but the background graphics for the beach does show the sun set. And, you know, you have the shades outside of the shelter kind of aligning with this. OK, so maybe not 100%. But the sunset, that\'s what you have to go on.');
f(c_t, 'It\'s some righteous Sherlock Holmin\' needed here, is what you\'re saying.', 'confused');
f(choice);
f(choice, 'The north side.');
f(setVariable, 'lostDirection', 'north');
f(choice, 'The east side.');
f(setVariable, 'lostDirection', 'east');
f(choice, 'The south side.');
f(setVariable, 'lostDirection', 'south');
f(choice, 'The west side.');
f(setVariable, 'lostDirection', 'west');
f('Right, of course, we live on the west side, that\'s why we can see the sun set in the evening. "The sun may rise in the east, at least it settles in its final location…" Yeah, I know it\'s corny, but that\'s how I remember it.');
f('My dad\'s a big fan of the $redhotchilipeppers$.');
f(endChoice);
f('OK, to the $lostDirection$ it is, then, I guess.');
f(setVariable, 'findWay', false);
f(setVariable, 'correctWay', false);
f(whatIf, 'mossDirection==north');
f(whatIf, 'lostDirection==west');
f(setVariable, 'findWay');
f(setVariable, 'correctWay');
f(endIf);
f(endIf);
f(whatIf, 'mossDirection==west');
f(whatIf, 'lostDirection==south');
f(setVariable, 'findWay');
f(endIf);
f(endIf);
f(whatIf, 'mossDirection==south');
f(whatIf, 'lostDirection==east');
f(setVariable, 'findWay');
f(endIf);
f(endIf);
f(whatIf, 'mossDirection==east');
f(whatIf, 'lostDirection==north');
f(setVariable, 'findWay');
f(endIf);
f(endIf);
f(pause, 0.5);
f(whatIf, 'findWay');
f(whatIf, '!correctWay');
f(c_t, 'Good job, you double-fucked up, thereby going in the right direction.', 'happy');
f(otherwise);
f(c_t, 'Good job! You should know that we\'re proud of you, player.');
f(endIf);
f(endIf);
f(whatIf, 'findWay');
f(stopMusic, 'fade', 4);
f(pause, 3);
f('After around half an hour of walking, I recognize where I am, and realize I\'m very close to the beach. Thank god.');
f(playMusic, 'jungle');
f(whatIf, 'knowsOfHerb');
f('I relax, and afford myself a short break.');
f(c_t, 'The herb! Oh the herb!');
f('As I sit down, I see a herb I recognize… right, it\'s the one from that book, the hypnotic and… anxio-whatever one.');
f(whatIf, 'knowsTheWordHypnotic');
f('Hypnotic, meaning sleep-inducing. And the other one, something to do with anxiety, I would guess.');
f('Not that I actually need it… but I don\'t know, I\'ve had trouble sleeping sometimes. Could be good to have, maybe?');
f('Unless I\'m mistaking it for something else? You should be damn careful with herbs and plants you aren\'t 100% sure of.');
f('I guess I\'m… 80% sure it\'s the one I saw in the book.');
f(choice);
f(choice, 'Take it');
f(setVariable, 'hasHerb');
f('I carefully uproot it and add it to my shirt-bag.');
f(c_b, 'Hey, player! What are you playing at?', 'surprised');
f(c_b, 'Don\'t you dare try and do anything… unforward, to my beautiful Sophie.', 'angry');
f(c_t, 'Don\'t you worry. He probably has sleeping problems of his own.');
f(choice, 'Leave it');
f('Nah, I could be wrong. Also, I don\'t actually need it. Waking up is my bigger problem, these days.');
f(endChoice);
f(otherwise);
f('Whatever hypnotic means. Well, I\'m no hypnotist, I\'ve no need for it.');
f(c_b, 'Buhbuhbuhbuh. If you didn\'t choose the right meaning back when you read the book, you won\'t pick it up. Too bad.', 'happy');
f(endIf);
f(otherwise);
f('I relax, and afford myself a short break before I head down to the beach. There\'s an interesting-looking herb by my feet, but I don\'t recognize it so I figure I best let it be.');
f(endIf);
f(stopMusic, 'fade');
f(playMusic, 'breezy_beach');
f(scene, 'beach_day', 'blackFade', x, x, x, 'right');
f('Looks like I made it home in one piece. With quite a catch too.');
f(otherwise);
f('After what must have been more than an hour of walking, I finally see the beach.');
f(stopMusic, 'fade');
f(playMusic, 'breezy_beach');
f(scene, 'beach_day', 'blackFade', 'rightMost', x, x, x, true);
f('It looks just as the one where we live… though I don\'t actually recognize anything in particular.');
f('I start walking along the beach but I don\'t recognize anything at all.');
f('It\'s a small, probably circular island though. If I just keep walking along the beach, I\'ll eventually get back. No biggie.');
f(pause);
f('It ends up taking me along time - how long, I don\'t know, but certainly more than one hour. But I do, in the end, finally get home.');
f(endIf);
f(stopMusic, 'fade');
f(playMusic, 'distant_waves');
f(scene, 'outside_shelter_day', 'blackFade');
f('Home, sweet home.');
f('I\'m totally exhausted after my adventurous day and decide to take a nap.');
f(scene, 'outside_shelter_evening', 'fade', 3);
f(setFilter, 'sunset');
f(jump, 'day3Evening');
f(label, 'day3Evening');
f('I wake up a couple of hours later by Sophie coming back. In her right hand, she\'s carrying a small piglet, all bloodied. She throws it down in front of me.');
f(c_t, 'This girl is hardcore.');
f(c_b, 'Gotta love it. I feel bad for little Piglet, though.');
f(person, c, 'bloody_peacebow', 'happy');
f(panAll, 40);
f(setZoom, c, 1.1);
f(c, 'Feast tonight, $mcuz$!');
f(whatIf, 'contempt>=2');
f(c_b, 'So you\'re now on "The Contempt Route", because you\'ve expressed contempt for Sophie at least twice. No good endings coming out of this. Though there\'s the sex scenes, of course.', 'unhappy');
f(p, '... Great.');
f('Now she\'s going to make me cook it, I guess.');
f(person, c, 'bloody_bow', 'neutral');
f(otherwise);
f(p, '<i>Heck</i> yeah! That\'s awesome!');
f(person, c, 'bloody_bow', 'smallsmile');
f(whatIf, 'day3Activity==picking');
f(p, 'I got a bunch of roots, too. I mean, not as exciting as spit-roast suckling, but… it seems our luck has turned!');
f(endIf);
f(endIf);
f(c, 'I\'m going to go wash off a bit. Could you prepare, and stuff?');
f(whatIf, 'contempt>=2');
f(p, '... Okay.');
f(otherwise);
f(p, 'OK, no problem.');
f(endIf);
f(c, 'Thanks.');
f(remove, c);
f(whatIf, 'contempt>=2');
f(jump, 'day3ContemptDinner');
f(otherwise);
f(jump, 'day3NormalDinner');
f(endIf);
f(label, 'day3ContemptDinner');
f(changeBg, 'outside_shelter_night', 'fade', 4);
f('While takes a rest in the shelter, I begin preparing the meal.');
f('I skin the piglet, awkwardly, with a sharpened rock. The skin is probably tasty but not with the hair… though there\'s tufts of it left, here and there. No big deal, it will be seared off in the fire, I guess.');
f('I open up the pig\'s belly with the rock, and remove its intestines with my hands. It\'s grisly, bloody, and disgusting, and I have to pull quite hard to get out some of them.');
f('I suppose they\'re edible too, but… I think this is how it\'s usually done. Maybe we should save them though, considering how little food we have…');
f('Ah, fuck it, I got sand on them. Next time, maybe.');
f(whatIf, 'day3Activity==picking');
f('I come up with the bright idea, though, of filling the opening with the roots. They kind of suck as they are, but we have nothing to boil them in. This way, they might get a little softer and juicier. And less chewy.');
f(endIf);
f('I wash my hands from the shit from the intestines in the sea before lighting the fire.');
f(changeBg, 'outside_shelter_night_fire', 'fade');
f('I struggle a while skewering the piglet, but in the end I manage without having to ask for Sophie\'s help. Which should have been quite degrading...');
f('I let it roast for quite a while. The remaining hair smells like hell when the fire catches it, but it\'s cool, breezy night so the smell doesn\'t linger.');
f(whatIf, 'hasHerb');
f('Hmmm… maybe I should spice things up a bit?');
f('The plant I picked up… what if I used it in Sophie\'s meal?');
f('Yes, the one with sedative and hypnotic effects…');
f(choice);
f(choice, 'Use the herb in Sophie\'s meal.');
f(setVariable, 'drugged');
f('Hah, this\'ll make for a good practical joke… after her being such a bitch, recently, it\'s just what she deserves.');
f('I remove the pig from the skewer, divide it into two parts and mix the herb with the roots on Sophie\'s plate.');
f('This\'ll be interesting.');
f(c_b, 'You bastard.', 'angry');
f(c_t, 'In his defense though…');
f(c_t, '... you\'re the one who wrote this.');
f(c_b, '...', 'dumbfounded');
f(choice, 'Don\'t.');
f('I shake my head. That… that was an odd idea. Not like me at all.');
f(whatIf, 'elf');
f('Elf shall never drug elf. That\'s… that\'s a thing, right?');
f(endIf);
f(endChoice);
f(endIf);
f(p, '$sophOrSis$? Dinner\'s ready...');
f(setFilter, 'nightFire');
f(person, c, 'right_arm_behind_head', 'neutral', x, x, true);
f(setZoom, c, 1.2);
f(c, 'It smells nice. $fuck$, I\'m hungry.');
f(remove, c);
f('The boar tastes great. Though game tends to be chewy, I guess the piglet didn\'t get to live long enough to build up that much muscle yet.');
f(whatIf, 'day3Activity==picking');
f('The roots… well, they taste like roots. But they\'ve been boiling in the pig\'s fat and are juicier and easier to chew than usual.');
f(endIf);
f('After finishing the entire pig in just 10 minutes or so, Sophie lies down to rest by the log.');
f(cg, 'by_fire', 'blackFade');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_lookingaway');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'Thanks, $mcuz$. That was not too shabby.');
f(p, '...');
f(p, 'Well, you caught it, so…');
f(c, '...');
f(whatIf, 'catgirl');
f(c, 'Meow…');
f(otherwise);
f(c, 'Right.');
f(endIf);
f(p, '...');
f(p, 'I think I\'m gonna head out for a walk. See you later.');
f(c, 'I\'ll probably be in bed while you get back. Night.');
f(whatIf, 'drugged');
f('I bet you will.');
f(c_t, 'This guy\'s bad.', 'unhappy');
f(endIf);
f(p, 'Night.');
f(label, 'lastContemptWalk');
f(stopMusic, 'fade');
f(playMusic, 'breezy_beach');
f(scene, 'beach_night', 'blackFade');
f('The night is breezy, but not too cold. I end up walking for a good hour. It\'s nice to clear one\'s thoughts… and let the meat juices sink in too, I guess.');
f('I think about me and Sophie.');
f(c_b, 'Kind of meaningless interlude here.');
f('Why can\'t we just get along recently?');
f(whatIf, 'friend');
f('We are best friends… or… <i>were<i> we, and <i>are</i> no longer? What happened here?');
f(elseIf, 'daughter');
f('We always got along well enough. Of course, maybe me not being home so often played a part in that.');
f('It\'s a little sad… people always tell me I\'m childish for my age, we should be able to get along better.');
f(otherwise);
f('I mean, we are $cousins$. Maybe we\'re kind of <i>meant</i> to pick fights with each other, but… I don\'t know, it feels different, somehow, this time.');
f(endIf);
f('I don\'t get it.');
f('Maybe she\'s on her period or something? That\'d explain some of the mood swings, I guess.');
f(whatIf, 'catgirl');
f('Is it because she\'s a catgirl? Something with her physiology acting up? Who knows what complications could arise.');
f(endIf);
f(jump, 'backFromwalk');
f(label, 'day3NormalDinner');
f(changeBg, 'outside_shelter_night', 'fade', 4);
f('While Sophie cleans herself and takes a well-deserved rest after spending the whole day hunting, I prepare the meal.');
f(whatIf, 'day3Activity==picking');
f('Suckling pork and yet another side dish of just roots, again. But maybe I could spice it up somehow…');
f(otherwise);
f('So, suckling pork… What herb might go along well with this?');
f(endIf);
f(whatIf, 'hasHerb');
f('I look at the sedative plant from the book. I pick it up, and have a smell. It does smell kind of nice… but, nah, we\'d just fall asleep. What\'d be the point?');
f(choice);
f(choice, 'Don\'t use it.');
f(choice, 'Put a little on Sophie\'s plate only.');
f('What? On Sophie\'s plate? You mean, like, drug her?');
f('No way man, that\'d be creepy. You don\'t do something like that to somebody you love. I mean, love as a $fcousin$. Don\'t get any ideas.');
f('I\'d have to bee seriously fed up with her yapping to even consider doing something like that.');
f(c_t, 'That\'s right, protagonist! Don\'t fall for the player\'s dirty tricks.', 'angry');
f(c_b, 'To use the herb, you have to go down the "I think Sophie is a bitch" road. You don\'t date rape somebody you like. Well, at least our protagonist won\'t.');
f(endChoice);
f(endIf);
f('Hm, I guess I have nothing. Oh well. Considering how hungry the both of us are, it will still be a feast.');
f('I skin the piglet, awkwardly, with a sharpened rock. The skin is probably tasty but not with the hair… though there\'s tufts of it left, here and there. No big deal, it will be seared off in the fire, I guess.');
f('I open up the pig\'s belly with the rock, and remove its intestines with my hands. It\'s grisly, bloody, and disgusting, and I have to pull quite hard to get out some of them.');
f('I suppose they\'re edible too, but… I think this is how it\'s usually done. Maybe we should save them though, considering how little food we have…');
f('Ah, fuck it, I got sand on them. Next time, maybe.');
f(whatIf, 'day3Activity==picking');
f('I come up with the bright idea, though, of filling the opening with the roots. They kind of suck as they are, but we have nothing to boil them in. This way, they might get a little softer and juicier. And less chewy.');
f(endIf);
f('I wash my hands from the shit from the intestines in the sea before lighting the fire.');
f(changeBg, 'outside_shelter_night_fire', 'fade');
f('I struggle a while skewering the piglet, but in the end I manage without having to ask for Sophie\'s help.');
f('I let it roast for quite a while. The remaining hair smells like hell when the fire catches it, but it\'s cool, breezy night so the smell doesn\'t linger.');
f(p, '$sophOrSis$? Dinner\'s ready!');
f(setFilter, 'nightFire');
f(person, c, 'right_arm_behind_head', 'smiling', x, x, true);
f(setZoom, c, 1.4);
f(c, 'It smells great. $fuck$, I\'m hungry.');
f(remove, c);
f('The boar tastes great. Though game tends to be chewy, I guess the piglet didn\'t get to live long enough to build up much muscle yet.');
f(whatIf, 'day3Activity==picking');
f('The roots… well, they taste like roots. But they\'ve been boiling in the pig\'s fat and are juicier and easier to chew than usual.');
f(endIf);
f('After finishing the entire pig in just 10 minutes or so, Sophie lets out a big burp and lies down to rest by the log.');
f(cg, 'by_fire', 'blackFade');
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_eyesclosed');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(pause);
f(whatIf, 'catgirl');
f(c, 'Meow!');
f(endIf);
f(c, 'Wow… what a meal! Nice teamwork, $mcuz$!');
f(p, 'Uh-huh.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_lookingaway');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'I mean, that actually tasted fucking nice. Hope I didn\'t piss the mother off too badly though... ');
f(p, 'Maybe you should stay out of the forest for a bit.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_inquisitivesmile');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'So… how was your day?');
f(whatIf, 'day3Activity==picking');
f(p, 'It was… interesting, I guess.');
f(p, 'I got lost in the middle of the jungle, for a while.');
f(whatIf, 'findWay');
f(p, 'Thankfully, I remembered that moss grows on the $mossDirection$ern side of trees, and that we live on the $lostDirection$ern side of the island… so I was able to get home safely.');
f(whatIf, 'mossDirection!=north');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_nigawarai2');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, '$mcuz$, you lucky idiot…');
f(p, 'What?');
f(c, 'We live on the western side of the island. We see the sun set, not rise, from this side, right? You\'ve… you\'ve noticed, right? And moss grows on the northern side of the trees. I mean, in general. Not always, though.');
f(whatIf, 'mossDirection==south');
f(p, 'No, but we\'re in the southern hemisphere…');
f(c, 'What are you talking about? We\'re not that far south. We\'re still in the northern hemisphere.');
f(endIf);
f(c, 'You got lucky though. They say two wrongs don\'t make one right, but I guess you must be the exception that proves the rule.');
f(c, 'Since you thought moss grows on the $mossDirection$ern side and you tried heading to the $lostDirection$, you actually ended up walking towards the west.');
f(p, '... oh.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_nigawarai');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'Good job… I guess!');
f(otherwise);
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_nigawarai');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'Good job. True $rambo$, aren\'t you? Jumping around in the jungle, uprooting villagers and suspected $vietcong$ supporters.');
f(p, 'Well, we can\'t all go around killing innocent $winniethepooh$ cast members nilly-willy...');
f(c, 'Aww, don\'t make me feel any worse about it than I already do.');
f(whatIf, 'catgirl');
f(p, 'Oh, come on. You\'re a catgirl. You love the hunt. Don\'t tell me you actually feel bad?');
f(c, 'Hah. Well. A little. But you\'re right. The hunt… Meow! It just feels so… good. I feel so alive.');
f(endIf);
f(endIf);
f(otherwise);
f(p, 'It took, well… at the very least an hour to get out of the jungle.');
f(c, 'That\'s odd.');
f(p, 'Well, not actually that odd, because it turns out I was walking in the wrong direction.');
f(p, 'I ended up on the other side of the island, I think. It took forever to get back here.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_nigawarai');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'You doofus.');
f(c_t, 'God damn doofus!');
f(p, 'Yeah… well, I guess I don\'t have a built-in GPS...');
f(endIf);
f(endIf);
f(c_b, 'Whether you got lost or not doesn\'t affect Sophie\'s feelings for you, though.');
f(c_t, 'So it was just the illusion of a choice, in the end?');
f(c_b, '... I don\'t know, I don\'t think so. I mean, unless you dislike Sophie and you pick up the herb, it has no permanent effect, but… you know, the same thing could be said of most real-life choices as well.');
f(c_t, 'I\'m just teasing you.');
f(label, 'day3NightConvo');
f(choice);
f(choice, 'Ask Sophie about the snakebite.', 'once');
f(p, 'How\'s the snakebite?');
f(c, 'No worries, it\'s perfectly fine.');
f(choice, 'Say nothing.');
f(jump, 'day3NightConvo2');
f(choice, 'Ask her if she wants to go for a walk.', 'once');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_lookingaway_irritated');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(p, 'Hey, do you want to go for a walk?');
f(c, 'Are you kidding? I\'m full, like, to the brim. I couldn\'t move if I wanted too. I\'ll just crawl into the shelter when the meat juice has subsided enough…');
f(p, 'Of course.');
f(endChoice);
f(jump, 'day3NightConvo');
f(label, 'day3NightConvo2');
f('We just sit, enjoying the warmth still radiating from the fireplace, in content silence.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_lookingaway');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(whatIf, 'daughter');
f(c, 'Hey, daddy… do you remember that one time, back when I was a kid?');
f(p, 'You\'re still a kid to me, Sophie. You\'ll always be.');
f(c, 'You know what I mean. There was this big family gathering in our house… in the summer. I must have been… I don\'t know, no more than 8 or so?');
f(otherwise);
f(c, 'Hey, $mcuz$... do you remember that one time, when we were kids..? It was this big family meet at your place… in the summer. We must have been… I don\'t know, no more than 8 or so?');
f(endIf);
f(whatIf, 'friend');
f(p, 'If it was a family meet, what were you doing there?');
f(c, 'I don\'t know, I think maybe you told me ahead and well, my family never does anything like that… so I really wanted to go, and I ended up actually asking your dad, and he gave me a bemused "yes".');
f(p, 'Oh, right… yeah, I remember it, I think.');
f(otherwise);
f(c, 'It was the year grandma died...');
f(p, 'Yeah, I remember.');
f(endIf);
f(whatIf, 'dad');
f(jump, 'day3NightConvo2Dad');
f(endIf);
f(c, 'We snuck away from the children\'s table and drank some of the punch...');
f(p, 'All your idea, of course.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_lookingaway_smiling');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'Well, I guess I wanted to try out what it was like being an adult.');
f(whatIf, 'sister');
f(c, 'Anyway, dad caught us, but we managed to run away…');
f(c, 'We hid in our neighbour\'s shed for a while…. Mr. Brown, right? God damn drunk little brats.');
f(otherwise);
f(c, 'Anyway, your dad caught us, and we ran away…');
f(c, 'We hid in your neighbour\'s shed for a while…. god damn drunk little brats.');
f(endIf);
f('In the shed, we didn\'t just hide. We actually kissed. Not in a romantic way of course, we were just kids, trying out being adults in the most obvious of ways. I think it was on Sophie\'s initiative, as usual. I was pretty shy already as a kid.');
f('Though… it was of course my first kiss.');
f(c_b, 'This whole conversation was my way of… well, giving you a chance to get in the mood before you go to bed.');
f(c_b, 'Ideally there would have been even more long conversations with Sophie, but we already went overboard on this game in so many ways.');
f(c_b, 'In terms of budget, intended script length, amount of cheats, etc…');
f(c_t, 'I think we\'ve also already added a lot more commentary than we had intended to!');
f(c_b, 'Mostly two-three word interjections by you, though.');
f(c_t, 'Hmpf! Taxcup_amorous_feelings_towards_Ben, minus one.', 'angry');
f(c_b, 'Oh, no!', 'surprised');
f(choice);
f(choice, 'Ask Sophie if she remembers the kiss.');
f(p, 'We kissed in there, didn\'t we?');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_surprised');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'Did we? I don\'t remember that.');
f(p, 'Seriously?');
f(c, 'What?');
f(jump, 'firstKiss');
f(choice, 'Ask what happened next.');
f(p, 'So what happened then?');
f(choice, 'Don\'t say anything.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_nigawarai');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'That old rickety toolshed… didn\'t it collapse during a storm a year after, or something?');
f(p, 'I don\'t remember… but not the safest place in the world, for sure. With all the tools out in the open…');
f(p, 'I don\'t think I would ever have come up with the idea of hiding there. Classic Sophie, I guess.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_nigawarai2');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'Haha, yeah, maybe.');
f(endChoice);
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_nigawarai');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(whatIf, 'sister');
f(c, 'We stayed there for a while, didn\'t we? Contemplating running away for ever. But then you started crying for mom so we went back to the party. I was feeling so horribly guilty$meow$.');
f(otherwise);
f(c, 'We stayed there for a while, didn\'t we? Contemplating running away for ever. But then you started crying for your mom so we went back to the party. I was feeling so horribly guilty$meow$.');
f(endIf);
f('She didn\'t mention the kiss. Though I guess broadly speaking, that is how it went down. Even back then, Sophie was the brave one.');
f(c_t, 'Man, stop idolizing her so much!', 'angry');
f(c_b, 'She\'s worth it! She\'s totally worth it$meow$.', 'inlove');
f(p, 'Is that how it went down, really?');
f(c, 'Pretty much, yeah.');
f(choice);
f(choice, 'Apologize for crying.');
f(p, 'Well, I know it\'s a little late, but I guess I\'m m sorry for inconveniencing you and ruining your great escape plan with my heartfelt, child-sized tears.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_nigawarai2');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'Awww.');
f(c, 'Your tears are still child-sized though, you big wuss.');
f(c_t, 'You\'ve been dissed!');
f(choice, 'Apologize for not running away together.');
f(p, 'I guess it\'s a little late, but, uh… sorry for not running away with you. I\'m sure it would have been a blast.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_nigawarai2');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'Haha! Yeah, well. I guess we\'ll never know, now.');
f(choice, 'Joke about ending up here anyway.');
f(p, 'Well, maybe I knew we didn\'t have to consciously run away like that… obviously, the two of us were destined to end up on a secluded, desert tropical island in the end anyway.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_nigawarai2');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'Oh, so you planned this all along, then?');
f(p, 'Why, of course. Who wouldn\'t want to end up with a beautiful woman like yourself in a place like this?');
f(c, 'Oh, ha-ha, really funny.');
f(jump, 'beautifulCompliment');
f(choice, 'Say nothing.');
f(p, '...');
f(endChoice);
f(jump, 'day3NightConvo3');
f(label, 'day3NightConvo2Dad');
f(c, 'Me and a friend… we escaped the boredom of the children\'s table and drank from the punch… Cousin Frederick told on us… God, Fred was such a buzzkill already back then.');
f(c_b, 'Had to re-write this part entirely for the dad route. No choices here unlike the other paths, because of… well, we can\'t keep referencing the budget. This was a time restraint, I guess.');
f(c_b, 'This was all added towards the very end of the game\'s development.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_lookingaway_smiling');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'Me and my friend ran to our neighbours\' and hid in their tool shed… we sat there for hours, and mom called for the police and there was a big search in the neighbourhood, lots of policemen, dogs…');
f('I smile at the memory.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_nigawarai2');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'Of course, this only made us even more scared, so we ended up spending the night there, and then our neighbour found us in the morning…');
f(p, 'Oh boy, you were such a tomboy.');
f(whatIf, 'catgirl');
f(c, 'Meow...');
f(otherwise);
f(c, 'Yeah…');
f(endIf);
f(jump, 'day3NightConvo3');
f(label, 'beautifulCompliment');
f(choice);
f(choice, 'Tell her you meant it - she\'s beautiful.');
f(p, 'I wasn\'t joking.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_lookingaway_irritated');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'Come on, $mcuz$. Don\'t tell your $fcousin$ that she\'s beautiful, that\'s-… it\'s a little creepy.');
f(p, 'It\'s not! I\'m just stating the facts. You know, which happen to be that you\'re a very attractive young woman.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_blush');
f(addToCg, 'by_fire_lookingaway_irritated');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'Now you\'re getting all cringey. Are you like, having a stroke or something? Let\'s change the topic.');
f(c_t, 'I love this come back. It feels very real.');
f(c_b, 'I bet you get to hear it all the time though, grandpa.');
f(c_t, '... Taxcup_amorous_feelings_towards_Ben, minus two.', 'angry');
f(c_b, 'Aw…', 'surprised');
f('Maybe I pushed it a little too far.');
f(setVariable, 'night3awkward');
f(choice, 'Say nothing.');
f(p, '...');
f(endChoice);
f(jump, 'day3NightConvo3');
f(label, 'firstKiss');
f(choice);
f(choice, 'Tell her it was your first kiss.');
f(setVariable, 'night3awkward');
f(p, 'That was my first kiss.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_nigawarai');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(whatIf, 'friend');
f(c, 'Oh come on, don\'t be so soapy. Seriously, "first kiss"?! It hardly counts at that age, it\'s just… I mean, it\'s exploring, if it even is that.');
f(otherwise);
f(c, 'Oh come on, don\'t be so soapy. Seriously, "first kiss"?! Everybody kisses their $mcousin$ when they\'re that age, it\'s just… I mean, exploring, if it even is that.');
f(endIf);
f(c, 'Yuck, "exploring" sounds horrible, I mean, it\'s just part of growing up.');
f('I blush a little.');
f(p, 'I don\'t… I don\'t mean like that! But it was, you know, still an actual kiss.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_blush');
f(addToCg, 'by_fire_lookingaway');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f('Sophie sees me blushing, and in turn, her cheeks grow a shade darker as well.');
f(c_b, 'I think this came out kind of nice. It\'s cute, her blushing like this.', 'inlove');
f(c, 'Right, fine.');
f(choice, 'Tell her you maybe remembered it wrong');
f(p, 'I don\'t know, maybe I mix things up.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_nigawarai');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'Yeah, seeing how you were such a prolific kisser back then, escaping into toolsheds with unsuspecting girls every chance you got!');
f(p, 'So you do remember it, then?');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_lookingaway');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'Yeah, well, now that you mention it. I mean, the whole theme of the day for us was trying to be adults so I guess it makes sense.');
f(choice, 'Ask her if she really doesn\'t remember.');
f(p, 'You really don\'t remember it? Despite remembering everything else quite vividly?');
f(p, 'Was I that poor of a kisser?');
f('I say that with a crooked smile.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_nigawarai');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'Haha! Yeah, well, now that you mention it... I mean, the whole theme of the day for us was trying to be adults so I guess it makes sense.');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_lookingaway');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(p, 'Yeah…');
f(endChoice);
f(label, 'day3NightConvo3');
f(whatIf, 'night3awkward');
f(c, '...');
f(p, '...');
f(cg, 'by_fire', 'fade', 0.5);
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_blush');
f(addToCg, 'by_fire_lookingaway');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f('We fall silent again, but the content silence from before has turned embarrassing. I… maybe I said too much.');
f('After a minute or two of this silence, I decide it\'s time I go for a walk.');
f(p, 'I\'ll be back in a little bit.');
f(jump, 'lastWalk');
f(endIf);
f('We sit like that for a good hour, silent for the most part, but occasionally talking about old memories.');
f(c, 'Hey, I think I can move now. I\'m going to bed… what about you?');
f(choice);
f(choice, 'Take a walk.');
f(p, 'I slept quite a bit today, so I\'m not quite tired yet. I\'ll take a little walk along the beach.');
f(addToCg, 'by_fire_pants');
f(addToCg, 'by_fire_bra');
f(addToCg, 'by_fire_lookingaway');
f(addToCg, 'by_fire_elfears');
f(addToCg, 'by_fire_catears');
f(c, 'OK, good night.');
f(p, 'Good night.');
f(jump, 'lastWalk');
f(choice, 'Go to bed.');
f(jump, 'lastBed');
f(endChoice);
f(label, 'lastBed');
f(stopMusic, 'fade');
f(scene, 'black', 'fade');
f('We go to bed. Sophie falls asleep pretty much immediately, like she always does. It\'s a nice and cool night, not too cold. I\'m not hungry at all, for the first time in maybe a week. It should be an easy thing to fall asleep, yet…');
f('I\'m feeling a bit restless.');
f(setVariable, 'inBed');
f(jump, 'wrestlingWithThoughts');
f(label, 'lastBed2');
f('Man, it\'s not healthy to wrestle with these thoughts as… well, as she\'s lying right behind me.');
f('...');
f('I\'m having problems going to sleep.');
f('I turn around, towards Sophie.');
f(playMusic, 'distant_waves', 30);
f('I open my eyes.');
f(cg, 'cg_face', 'fade');
f(addToCg, 'cg_face_bra');
f(addToCg, 'cg_face_asleep');
f(addToCg, 'cg_face_elfears');
f(addToCg, 'cg_face_catears');
f('Sophie is asleep, looking peaceful.');
f(whatIf, 'cantStopThinkingAbout==face');
f('She is so beautiful. There\'s no two ways about it.');
f(endIf);
f(choice);
f(choice, 'Try and go back to sleep.');
f(jump, 'day3Sleep');
f(choice, 'Sit up.');
f(jump, 'yobai_time');
f(endChoice);
f(label, 'lastWalk');
f(stopMusic, 'fade');
f(playMusic, 'breezy_beach');
f(scene, 'beach_night', 'blackFade');
f('The night is breezy, but not too cold. I end up walking for a good hour. It\'s nice to clear one\'s thoughts… and let the meat juices sink in too, I guess.');
f(label, 'wrestlingWithThoughts');
f('I\'m wrestling with all these … thoughts, though. I think I\'m seriously attracted to $myCousin$ - it\'s getting harder and harder to deny to myself. I know, it\'s probably just… what is it they call it on Hawai\'i, "rock fever"? I don\'t know if that\'s the same thing, but…');
f('I mean normally, we\'d never be in this situation. But…');
f(choice);
f(choice, 'Her body');
f(setVariable, 'cantStopThinkingAbout', 'body');
f('I just can\'t stop thinking about her body.');
f(choice, 'Her face');
f(setVariable, 'cantStopThinkingAbout', 'face');
f('She\'s beautiful. Her face… I can\'t get it out of my head. I mean, it\'s <i>right in front of my head</i> for the most part, considering we\'re the only two people stuck here, but…');
f(choice, 'Her tits');
f(setVariable, 'cantStopThinkingAbout', 'tits');
f('I know it\'s superficial, but… man, I\'m a boob man. I\'d do anything for another glimpse of them.');
f(choice, 'Her personality');
f(setVariable, 'cantStopThinkingAbout', 'personality');
f('It\'s… gah, fuck!');
f('Am I not merely just attracted to her physically, but actually… in love?');
f('No, I can\'t be… this is crazy.');
f(endChoice);
f(whatIf, 'catgirl');
f('She may be a catgirl… and some would think that just makes it even sicker, but…');
f(endIf);
f(c_t, 'What\'s your favorite thing about our Sophie, then?');
f(c_b, 'I\'m a boob man, through and through. But when it comes to Sophie… I guess I\'m really in love with her personality.', 'inlove');
f(c_t, 'Why\'s there no "ass" option, by the way?');
f(c_b, 'It\'s on purpose, I figured you don\'t really get to see any of it… so having that as a choice would be a bit weird.', 'worried');
f(whatIf, 'daughter');
f('I\'m… I\'m her father. Is there anything more shameful in this world than… than a father, sexually interested in his own daughter? Have I stooped this low?');
f(elseIf, 'sister');
f('I\'m… I\'m her brother. How… how is it even, like, mentally possible, for me to have these emotions?');
f('Is there something wrong with me?');
f('Or is my sister… is she just that hot?');
f('I bet that\'s it. It\'s her, not me. Really.');
f(endIf);
f(whatIf, '!friend');
f(c_b, 'So while we\'re here, let me just… I\'ve been meaning to say this somewhere, so…', 'unhappy');
f(c_b, 'In defense of incest fantasies!', 'unhappy');
f(c_t, 'This is sounding grandiose! The title of your self-biography?');
f(c_b, 'Hah! No, but what I want to say is, they don\'t hurt nobody. And they\'re just fantasies. Hating on people liking stuff like this is, to my mind, the exact same thing as hating on homosexuals.', 'unhappy');
f(c_t, 'Do you really think anybody with strong opinions against incest themes in games would have made it this far? With the commentary turned on, nonetheless.');
f(c_b, 'No, not really… but I just want to justify myself. Personally, I obviously think incest is kind of hot, but I\'ve never, not even once, felt the least bit attracted to either my mom or my sister.', 'unhappy');
f(c_t, 'What about your dad?');
f(c_b, '...', 'dumbfounded');
f(c_t, 'I get you, and obviously agree, though I don\'t have any female cousins or sisters myself.');
f(c_b, 'It\'s been speculated you must have had a mother at some point, though, right?');
f(c_t, 'Yeah, but those are just unfounded speculations for the most part, to be honest.');
f(c_b, 'Right. Sorry, just felt the need to preach to the choir.', 'unhapy');
f(c_t, 'Amen!', 'happy');
f(endIf);
f(whatIf, 'inBed');
f(jump, 'lastBed2');
f(endIf);
f(label, 'backFromwalk');
f(stopMusic, 'fade');
f(playMusic, 'distant_waves', 30);
f(scene, 'outside_shelter_night', 'blackFade', x, x, x, 'right');
f(panAll, 20);
f('When I get back to the shelter, Sophie is already asleep inside.');
f(jump, 'yobai_time');
f(label, 'night');
f(jump, 'yobai_time');
f(label, 'yobai_time');
f(scene, 'black', 'fade');
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_peacefulasleep');
f(addToCg, 'cg_sleeping_legsclosed');
f(addToCg, 'cg_sleeping_bra');
f(addToCg, 'cg_sleeping_legsclosed_pants');
f(whatIf, '!inBed');
f('She looks so peaceful when she\'s asleep. It really reminds me of when she was a little kid.');
f(whatIf, '!daughter');
f('When we were little kids, I mean.');
f(endIf);
f(endIf);
f(choice);
f(choice, 'Look at her');
f(choice, 'Go to sleep');
f(jump, 'day3Sleep');
f(endChoice);
f('She really is fast asleep. I let my eyes follow the contours of her body. She has quite the body, for sure.');
f('Ah, shit. I must be going crazy. I can\'t be looking at $myCousin$\'s body like this. I\'m… I\'m no neutral observer, for sure. Truth be told, I\'m… I\'m almost getting a little hard, just from looking at her.');
f(whatIf, 'daughter');
f('Oh my God, what am I even thinking.');
f(endIf);
f(choice);
f(choice, 'Caress her gently.');
f(choice, 'Go to sleep.');
f(jump, 'day3Sleep');
f(endChoice);
f('I gently touch her hair and face. She\'s not reacting.');
f(c_b, 'What… what are you doing? She\'s asleep!');
f(choice);
f(choice, 'Enough is enough. Go back to sleep.');
f(jump, 'day3Sleep');
f(choice, 'Touch her breasts.');
f(endChoice);
f('What… what are you suggesting? She\'s my $fcousin$, for $christ$\'s sake! I mean, do I want to touch them?');
f('...');
f('YES. Just thinking about it has made my dick attempt to stab me in my guts, it\'s so hard. But… there\'s a line in the sand, if you will. Whatever thoughts may exist in my head… if I touch her breast, it can\'t be undone. Should I really cross this line?');
f(choice);
f(choice, 'Cross it.');
f(choice, 'No.');
f('$christ$… what the hell was I thinking. I feel disgusted with myself.');
f(whatIf, 'daughter');
f('What kind of a father am I?! I nearly… no, let\'s not even think about it. Let\'s… let\'s pretend this never happened.');
f(endIf);
f(jump, 'day3Sleep');
f(endChoice);
f(c_t, 'So, my turn now. In defense of rape fantasies… Just like with incest, it\'s just fantasies. Rape is a horrible, horrible crime, but so is murder.', 'unhappy');
f(c_t, 'I don\'t think the Terminator movies are disrespectful to murder victims, just like I don\'t think a game featuring rape fantasies is disrespectful to rape survivors.', 'unhappy');
f(c_t, 'The whole "rape culture" thing, on the other hand… there\'s no actual science backing it.', 'unhappy');
f(c_b, 'Actually, I read an actual study, not a made-up one, I mean, that said that the more porn is readily available in a society, the less rapes and other crimes of a sexual nature are perpetrated.', 'unhappy');
f(c_t, 'Right, that makes 100% sense to me. I mean, while I could imagine some lone lunatic being motivated to rape people by rape, I think the opposite is true too - that rape porn can stop people from becoming rapists.', 'unhappy');
f(c_b, '...', 'worried');
f(c_b, 'Well, that sounds maybe a little far-fetched to me. No comment on that.');
f(c_b, 'But I guess it doesn\'t go against the grain of that study, though.');
f(c_t, 'Right.');
f('I carefully place my hand on Sophie\'s right breast, my heart beating heavily. What if she wakes up..?');
f(addToCg, 'cg_sleeping_handonboob', 'fade');
f(pause);
f('Oh… my… god.');
f('Her breast… it\'s so soft. I begin to massage it gently and I feel her nipple harden through the thin texture of the bra. She is still fast asleep, though - she is snoring slightly, and her breathing hasn\'t changed at all.');
f(whatIf, 'daughter');
f('My baby girl… all grown up.');
f(endIf);
f('If she\'s this deep asleep… and I\'ve already touched her breast…');
f('Well, I might as well take a look at it.');
f('$myCousin$\'s breasts... I\'m so excited, I almost feel like I\'m about to cum right now, but I contain myself.');
f(whatIf, '!friend');
f('This is so wrong, but it feels so right. At least it does right now, in this very moment.');
f('My dick nods in agreement.');
f(endIf);
f(whatIf, 'daughter');
f('I guess this by itself would be enough to send me to prison… not to mention what my wife would think… touching our daughter\'s breasts?!');
f('I-... I don\'t care. Who knows if we even will be saved. We might have to spend our entire lives out here.');
f(whatIf, 'drugged');
f('She\'s all drugged out. She won\'t even notice a thing.');
f(endIf);
f(endIf);
f('I slowly, slowly remove Sophie\'s bra.');
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_legsclosed');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_exp_peacefulasleep');
f(addToCg, 'cg_sleeping_legsclosed_pants');
f(pause);
f('Oh my God… what am I doing? This… this is insane. If I don\'t stop myself now, I don\'t know what I\'ll do.');
f(choice);
f(choice, 'Get control over yourself! Put her bra back on, and try and go back to sleep.');
f(jump, 'day3Sleep');
f(choice, 'Go on.');
f(endChoice);
f(addToCg, 'cg_sleeping_handonboob');
f(pause);
f('I begin to gently and slowly massage her right breast again. The softness… oh. The feeling as a I cup it in my hand overwhelms me.');
f('Sophie\'s nipple, on the other hand, is slowly becoming rock hard. I twist it gently.');
f('Sophie doesn\'t seem about to wake up, but her breathing is becoming… heavier?');
f(whatIf, 'catgirl');
f('She lets off a very soft "meow", in her sleep.');
f(endIf);
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_sleepingmouthopen');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_legsclosed');
f(addToCg, 'cg_sleeping_legsclosed_pants');
f(addToCg, 'cg_sleeping_handonboob');
f(pause);
f('I keep rubbing her breast. My dick is so hard it\'s almost hurting.');
f('This… this is not enough. I stop thinking. My eyes go towards her crotch. I crawl around her.');
f('I gently lift up her leg.');
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_peacefulasleep');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_legsopen');
f(addToCg, 'cg_sleeping_legsopen_pants');
f(addToCg, 'cg_sleeping_handonleg');
f(pause);
f('With one hand holding her leg up, I move the other to her pants. I slid them off her carefully.');
f(whatIf, 'like>2');
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_peacefulasleep');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_legsopen');
f(addToCg, 'cg_sleeping_handonleg');
f(addToCg, 'cg_sleeping_wetpussy');
f(pause);
f(whatIf, 'daughter');
f('My… my girl, she\'s already wet? Just from me massaging her breast? Sophie…');
f(c_b, 'I just want to add that I felt really bad, writing this from the dad\'s perspective. I do think father-daughter incest is kind of hot too, if I\'m being perfectly honest, but…', 'unhappy');
f(c_b, 'Father raping their daughters? It\'s just rotten to the core.', 'unhappy');
f(c_b, 'Fantasizing about it, I don\'t have any issues with! Again, like Taxcup said. It\'s just fantasies. But it\'s not my cup of tea, that\'s all.', 'unhappy');
f(otherwise);
f('She\'s… already wet? Just from the breast massage? You slut, Sophie.');
f(endIf);
f('I can no longer contain myself. My dick has already left my trunks out of its own volition.');
f(addToCg, 'cg_sleeping_man_approaching', 'fade');
f(pause);
f(otherwise);
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_peacefulasleep');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_legsopen');
f(addToCg, 'cg_sleeping_handonleg');
f(pause);
f('I can no longer contain myself. My dick has already left my trunks out of its own volition.');
f(addToCg, 'cg_sleeping_man_approaching', 'fade');
f(pause);
f('$myCousin$\'s pussy is dry. I grind my dick on her vagina gently. Gradually, it becomes juicy enough for me to take the next step.');
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_sleepingmouthopen');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_legsopen');
f(addToCg, 'cg_sleeping_handonleg');
f(addToCg, 'cg_sleeping_wetpussy');
f(addToCg, 'cg_sleeping_man_approaching');
f(pause);
f(endIf);
f('I gently, ever so gently, push my manhood inside of her.');
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_sleepingworried');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_legsopen');
f(addToCg, 'cg_sleeping_legsopen_pussyopen');
f(addToCg, 'cg_sleeping_wetpussy');
f(addToCg, 'cg_sleeping_man_inserting');
f(addToCg, 'cg_pussywipe', 'fade');
f(addToCg, 'cg_pussywipe_insert1', 'fade');
f(pause);
f('!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!');
f('I\'m inside of $myCousin$\'s pussy!!!!');
f('The warm, wet, welcome takes me by surprise. Sophie\'s pussy is so tight… though she still seems asleep, I can feel it cramping around my dick.');
f('I have to use some serious mind techniques to stop myself from coming, just two seconds after getting inside.');
f(c_t, 'This originally said "Vulcan mind techniques" or something like that, before I removed it.');
f(c_b, 'You party pooper.', 'angry');
f(c_t, 'I mean, is that even a thing? Wait, don\'t even answer that.');
f('I\'ve never felt this good before. I\'ve never had sex feel this good, from the get-go.');
f('...');
f('Time to push further.');
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_sleepingmouthopen');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_legsopen');
f(addToCg, 'cg_sleeping_legsopen_pussyopen');
f(addToCg, 'cg_sleeping_wetpussy');
f(addToCg, 'cg_sleeping_man_allin');
f(addToCg, 'cg_pussywipe', 'fade');
f(addToCg, 'cg_pussywipe_insert2', 'fade');
f(pause);
f('I\'m all in. Sophie let\'s out a quiet moan as I sink into her, but I\'m no longer worried about her waking up. I\'m feeling too good to devote even a single brain cell to anything other than enjoying the moment.');
f('I start thrusting in and out of her, gently at first… but it doesn\'t take long until I have no longer any control at all of what I\'m doing.');
f(whatIf, 'drugged');
f(jump, 'druggedEnding');
f(elseIf, 'like>3');
f(jump, 'sexyEnding');
f(otherwise);
f(jump, 'shittyEndings');
f(endIf);
f(label, 'day3Sleep');
f('I go to sleep.');
f(scene, 'black', 'fade');
f(pause, 1);
f(whatIf, 'like>3');
f(jump, 'consensual');
f(otherwise);
f(jump, 'sexless_ending');
f(endIf);
f(label, 'druggedEnding');
f('The herb definitely works as advertised! Sophie doesn\'t seem to notice a thing. I get bolder and bolder and thrust my hips into her deeper and deeper, heavier and heavier.');
f(whatIf, 'daughter');
f('Oh my god! Sophie, my little girl… I\'m turning you into a woman.');
f(elseIf, 'sister');
f('Sophie… sis... I-, I can\'t believe this. I\'m inside of my sister and it\'s the best feeling I\'ve ever felt.');
f(endIf);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f('I keep thrusting into her for a couple of more minutes, but the pleasure is just too much. I can\'t stop myself from cumming any longer.');
f(pause);
f(choice);
f(choice, 'Cum inside of her');
f(setVariable, 'cum', 'inside');
f('Here we go… I\'m fucking cumming inside of you, Sophie!!');
f(screenEffect, 'shake', 15, 0.6);
f(playSound, 'hump');
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_sleepingmouthopen');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_legsopen');
f(addToCg, 'cg_sleeping_legsopen_pussyopen');
f(addToCg, 'cg_sleeping_wetpussy');
f(addToCg, 'cg_sleeping_man_allin');
f(addToCg, 'cg_sleeping_cuminside');
f(addToCg, 'cg_pussywipe');
f(addToCg, 'cg_pussywipe_insert2');
f(addToCg, 'cg_pussywipe_cum');
f(pause);
f(choice, 'Pull out and cum all over her');
f(setVariable, 'cum', 'outside');
f('I give her a couple of more thrusts before I pull out. I cum immediately and violently.');
f(screenEffect, 'shake', 15, 0.6);
f(playSound, 'hump');
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_sleepingmouthopen');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_legsopen');
f(addToCg, 'cg_sleeping_legsopen_pussyopen');
f(addToCg, 'cg_sleeping_wetpussy');
f(addToCg, 'cg_sleeping_man_approaching');
f(addToCg, 'cg_sleeping_cumspray');
f(pause);
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_sleepingmouthopen');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_legsopen');
f(addToCg, 'cg_sleeping_legsopen_pussyopen');
f(addToCg, 'cg_sleeping_wetpussy');
f(addToCg, 'cg_sleeping_man_approaching');
f(addToCg, 'cg_sleeping_cumallover');
f(pause);
f(endChoice);
f(scene, 'black', 'fade');
f('I fall down next to Sophie, exhausted and ecstatic.');
f(whatIf, 'cum==outside');
f(cg, 'cg_face', 'fade');
f(addToCg, 'cg_face_elfears');
f(addToCg, 'cg_face_catears');
f(addToCg, 'cg_face_asleep');
f(addToCg, 'cg_face_sweat');
f(addToCg, 'cg_face_cum1');
f(otherwise);
f(cg, 'cg_face', 'fade');
f(addToCg, 'cg_face_elfears');
f(addToCg, 'cg_face_catears');
f(addToCg, 'cg_face_asleep');
f(addToCg, 'cg_face_sweat');
f(pause);
f(endIf);
f('My little $sophOrSis$... what have I done?');
f(whatIf, '!friend');
f('I\'ve drugged and raped my own $fcousin$ - but somehow, I have a hard time feeling ashamed over it. It… it just felt too good.');
f(c_b, 'You asshole.', 'angry');
f(c_t, 'But we don\'t judge you for it. Nope.', 'unhappy');
f(endIf);
f('...');
f(whatIf, 'cum==outside');
f('I look down on her naked body, covered with my cum. $christ$, I\'m getting hard again.');
f(otherwise);
f('I look down on her naked body. $christ$, I\'m getting hard again.');
f(endIf);
f('No time for the guilt to set in. I\'m going to hell anyways - might as well make it worth it.');
f('So, I\'ve had my fun with the main event. Maybe it\'s time for one of the side attractions?');
f('I climb over her and let my now fully hard penis inside of her mouth.');
f(whatIf, 'cum==outside');
f(cg, 'cg_face', 'fade');
f(addToCg, 'cg_face_elfears');
f(addToCg, 'cg_face_catears');
f(addToCg, 'cg_face_worriedasleep');
f(addToCg, 'cg_face_sweat');
f(addToCg, 'cg_face_cum1');
f(addToCg, 'cg_face_man');
f(otherwise);
f(cg, 'cg_face', 'fade');
f(addToCg, 'cg_face_elfears');
f(addToCg, 'cg_face_catears');
f(addToCg, 'cg_face_worriedasleep');
f(addToCg, 'cg_face_sweat');
f(addToCg, 'cg_face_man');
f(endIf);
f(pause);
f('The warmth… the wetness of the saliva… yes, the mouth was definitely worth sampling too.');
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f('I thrust my hips back and forth into her mouth. I soon cum again.');
f(pause);
f(screenEffect, 'shake', 12, 0.6);
f(addToCg, 'cg_face_cum2', 'fade', 0.5);
f(pause);
f(scene, 'black', 'fade');
f(stopMusic, 'fade');
f('I fall down next to Sophie again, exhausted from the pleasure. Before I know what\'s happening, I\'m asleep.');
f(pause, 2);
f(playMusic, 'distant_waves', 50);
f('I wake up as the confusion of reality hits me.');
f('Wow… I had the weirdest dream. The hottest…');
f('Wait... ');
f('...');
f('Oh.');
f('It wasn\'t…?');
f('No.');
f('Shit. I… I raped Sophie..?');
f('I open up my eyes.');
f(scene, 'inside_shelter_darknight');
f('It\'s still dark outside. I can\'t have slept for that long.');
f('I look to my side. Sophie\'s … not there.');
f('...');
f('Oh my God. What have I done?');
f(whatIf, 'cum==outside');
f('I drugged her, raped her, came all over her, and left her naked before falling asleep.');
f(otherwise);
f('I drugged her, raped her, came inside of her, and then just left her as she were, falling asleep.');
f(endIf);
f(whatIf, '!friend');
f('I did this to my own flesh and blood.');
f(elseIf, 'daughter');
f('I did this…');
f('I did this to my my own… baby daughter.');
f(otherwise);
f('I did this to my best friend.');
f(endIf);
f('The guilt washes over me.');
f(c_t, 'And about damn time too!', 'angry');
f('I put on my trunks and get up.');
f(stopMusic, 'fade');
f(playMusic, 'breezy_beach');
f(scene, 'beach_night', 'blackFade');
f(' I can\'t make out a thing in the dark and stumble around on the beach.');
f(c_b, 'This scene should really be a bit darker… I mean, the background. It\'s not all that dark, is it.', 'unhappy');
f(jump, 'worstEnding');
f(label, 'shittyEndings');
f(setFilter, 'night');
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_wakingup');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_legsopen');
f(addToCg, 'cg_sleeping_legsopen_pussyopen');
f(addToCg, 'cg_sleeping_wetpussy');
f(addToCg, 'cg_sleeping_man_allin');
f(addToCg, 'cg_pussywipe');
f(addToCg, 'cg_pussywipe_insert2');
f(p, 'Uhn, uhn, uhn.');
f('This feels too good. I can\'t help but let out a sound or two, in between the thrusts.');
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.8);
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_enjoying');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_legsopen');
f(addToCg, 'cg_sleeping_legsopen_pussyopen');
f(addToCg, 'cg_sleeping_wetpussy');
f(addToCg, 'cg_sleeping_man_allin');
f(addToCg, 'cg_pussywipe');
f(addToCg, 'cg_pussywipe_insert2');
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(whatIf, 'catgirl');
f(c, '...meow?');
f(otherwise);
f(c, '...what?');
f(endIf);
f(cg, 'cg_sleeping');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_angry');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_legsopen');
f(addToCg, 'cg_sleeping_legsopen_pussyopen');
f(addToCg, 'cg_sleeping_wetpussy');
f(addToCg, 'cg_sleeping_man_allin');
f(addToCg, 'cg_pussywipe');
f(addToCg, 'cg_pussywipe_insert2');
f(addToCg, 'cg_sleeping_effectlines_face');
f(pause);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(c, 'You sick fuck! Get off me!');
f('Sophie kicks me off her body, and the very instant my dick is forcibly pulled out, I can\'t contain myself and cum, spraying all over her.');
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_angry');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_wetpussy');
f(addToCg, 'cg_sleeping_legsclosed');
f(addToCg, 'cg_sleeping_cumallover');
f(pause);
f(scene, 'black', 'fade');
f('Sophie runs out of the shelter');
f(stopMusic, 'fade');
f('I get my trunks back on as quickly as I can and follow her outside.');
f(playMusic, 'breezy_beach');
f(scene, 'beach_night', 'fade');
f('I can\'t make out a thing in the dark and stumble around on the beach.');
f(whatIf, 'like<1');
f(jump, 'worstEnding');
f(otherwise);
f(jump, 'shittyEnding');
f(endIf);
f(label, 'worstEnding');
f(p, 'Soph! I\'m sorry! Oh my god! I\'m sorry!');
f('She\'s nowhere to be seen. I begin to cry as I realize what I\'ve done.');
f(p, 'Oh my god! Oh my god, what have I done! I\'m so sorry!');
f(scene, 'black', 'fade', 2);
f(screenEffect, 'shake', 18, 1);
f(playSound, 'stoneWhack');
f(pause, 0.4);
f(playSound, 'bodyHitsGround');
f('Whack. Suddenly I\'m smacked in the back of my head with what feels like a rock. I fall to the ground and the lights go out.');
f('After a couple of seconds, I manage to open my eyes, if not move my limbs.');
f('Standing above me is Sophie, still undressed, still with cum all over her, pointing an arrow to my face. She says nothing, as tears run down her face.');
f(p, 'So-... Soph…');
f('I painstakingly groan.');
f(p, 'I\'m… I\'m sorry...');
f('...');
f(c, '$mcuz$…');
f('She hulks.');
f(c, 'You dirty piece of shit.');
f(stopMusic);
f(playSound, 'arrowThwud');
f(pause, 2);
f('A \'thwong\' and a \'thud\' are the last sounds I hear, as Sophie releases the arrow into my face at point blank range.');
f(pause, 1.5);
f(c_t, 'I told you she was hardcore.');
f(c_b, 'Thanks for playing and thanks for not turning us off.');
f(c_t, 'Maybe he did, but turned it on again just now.');
f(c_b, 'Maybe he\'s a she and not a he!', 'angry');
f(c_t, 'Don\'t assume! It makes an ass out of you and me.');
f(c_b, '...', 'dumbfounded');
f(pause, 1.5);
f(whatIf, 'drugged');
f(ending, 'drugDeathEnding', 'Dead Date Drug Rapist');
f(otherwise);
f(ending, 'rapeDeathEnding', 'As Dead as a Rapist');
f(endIf);
f(label, 'shittyEnding');
f('Sophie is nowhere to be found. I cry out her name but only hear my own voice echoing back at me. As I begin to realize what I\'ve done, my stomach turns into knots. I fall on my knees by the water and throw up.');
f('I feel sorry for myself, for being in this situation. This would never have happened back home… I\'m not to blame!');
f(c_t, 'This one\'s just classic.', 'unhappy');
f(c_b, 'I think this is how you would be able to live with yourself, blaming somebody else.', 'unhappy');
f(pause);
f('I fall asleep on the beach, hulking pathetically.');
f(scene, 'black', 'fade');
f(stopMusic, 'fade');
f(pause, 1);
f('I sleep a long, dark, dreamless sleep.');
f(pause, 1);
f(playMusic, 'calm_beach');
f('I wake up with a strange tingling sensation in my hands.');
f(changeBg, 'beach_day', 'fade', 5);
f(setFilter, '');
f('As I slowly open my eyes, I realize I\'m in a sitting position, with my hands behind my back.');
f('I try and move and realize my hands are tied to a large piece of wood poled into the ground. It doesn\'t budge.');
f(p, 'What the hell? Sophie? Soph?! What\'s going on?!');
f('As I say the words, I remember what happened yesterday. Was… was it a dream?');
f('...');
f('No. It happened. I remember now. I hear somebody walking in the sand behind me.');
f(person, c, 'basic', 'hateful');
f(c, '...');
f(p, 'Soph… Soph, I\'m so-');
f(c, 'Just shut up.');
f(c, '... Fuck! You dirty fucking … shit! You piece of worthless human waste!');
f(p, '...');
f(c, 'You know, I actually considered killing you when I found you lying here. Just, bash your head in with a rock. Or at they very least cut off your <i>disgusting</i> dick.');
f('I instinctively turn my head towards my crotch, and realize my dick is still there, thank god!');
f(c, 'I couldn\'t bring me to it. You just looked too damn pathetic… but I\'m sure as hell not going to let you rapey piece of shit run around as you want.');
f(c, 'I\'ll bring you food and keep you alive until we\'re rescued, but I swear, if you even as much try to get loose... if I hear a single sound from you - I will kill you, $mcuz$, you\'d better believe it.');
f('Something in her expression makes me indeed believe her.');
f(c, 'Understood?');
f('I nod slightly in response, too terrorstruck to even open my mouth.');
f(person, c, 'basic', 'irritated');
f(c, 'Good dog.');
f(c, 'Fuck! You are my $mcousin$, man! What the hell, $mcuz$? How could you do this to me?!');
f(pause);
f(scene, 'black', 'fade');
f(stopMusic, 'fade');
f('About a week after the incident, a ship came upon us by chance. We were rescued.');
f('I don\'t think Sophie actually told any of the crew what happened, but they seem to have added one and one together. I haven\'t been shackled or anything but I\'m being treated like shit by exactly everyone.');
f('I\'m pretty sure the chef has been spitting in my food, and the captain has this look of utmost disgust on his face every time he sees me. I\'ve hardly even seen Sophie...');
f('I long to get home, but... I\'m worried about what awaits me…');
f('...');
f('If only I could turn back the hands of time... ');
f(pause, 1);
f(c_t, '<i>Turn back the hands, of time… then my darling you, you\'d still be miiii-iiine…</i>', 'happy');
f(c_b, 'Thanks for playing! Sorry you got the shitty ending. At least you\'re alive, not something you could say for all of your alternative timeline brothers.', 'unhappy');
f(c_t, '<i>Ooooh… if I could-</i>', 'happy');
f(c_b, 'KTHXBYE hope you enjoyed the commentary and please consider supporting us on Patreon if you aren\'t already! We can\'t make games without your support.');
f(pause, 1);
f(ending, 'rape_ending', 'Rapist');
f(label, 'sexless_ending');
f(setFilter, '');
f(stopMusic, 'fade');
f('A week passes without much happening.');
f('Then… on the horizon!');
f(playMusic, 'regular_beach');
f(cg, 'cg_boat_on_sea', 'fade');
f(' A ship!');
f('We are saved!');
f(pause, 2);
f(scene, 'black', 'fade');
f(stopMusic, 'fade');
f('Having watched $captainphillips$, I was almost sure they\'d actually miss us, but they caught eye of our fire, landed and took us onboard.');
f('Sophie has been given whatever clothes they happened to have in her size, to conceal her… assets, I suppose. Well, I got some clothes too, so I shouldn\'t complain.');
f('I sure feels nice not having to wear those trunks any longer. I think… I think I might just never, ever wear trunks again.');
f(pause, 1);
f(person, c, 'clothed', 'happy');
f(pause, 1);
f(changeBg, 'bubbles', 'fade', 3);
f(c, 'Hey, $mcuz$...');
f(c, 'You know… anything could have happened out there, just the two of us, sleeping together in a small space like that.');
f(person, c, 'clothed', 'embarrassed');
f(c, 'I… you know, I wouldn\'t ever have thought you\'d do something, I mean we\'re $cousins$ and all, and you\'re not like that, but…');
f(person, c, 'clothed', 'blushing');
f(c, 'I just wanna thank you for being a gentleman, you know?');
f(remove, c);
f(pause, 1);
f(scene, 'black', 'fade', 3);
f('We are scheduled to be picked up by helicopter from the ship. Our rescue has become big news back home, as you might imagine. Everybody thought we were dead, obviously.');
f('Yes, soon we\'ll be back, and everything will be back to normal.');
f('...');
f('I kind of wonder though... ');
f('Was this… was this really it?');
f(pause, 1);
f(c_t, 'The most boring ending, obviously.', 'unhappy');
f(c_b, 'I feel a little bad about how I set up this. If you don\'t know there\'s also a route where Sophie is the one coming onto you, if she likes you well enough, you might think the game is encouraging you to rape her in her sleep.', 'unhappy');
f(c_b, 'While I think it\'s fine as a fantasy, I really didn\'t want to force anybody to go through the more.. rapey routes.', 'unhappy');
f(c_b, 'I mean, none of the rape routes have a happy ending.', 'unhappy');
f(c_t, 'Yeah, well, whatever. I think it was fine. Thanks for playing! Hope you guys enjoyed us yapping.');
f(c_b, 'Support us on Patreon!');
f(c_t, 'Yes, do that. Bye.', 'happy');
f(pause, 1);
f(ending, 'gentlemanEnding', 'A True Gentleman');
f(label, 'sexyEnding');
f(p, 'Uhn, uhn, uhn.');
f(screenEffect, 'shake', 10, 0.4);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.4);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.4);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.4);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.4);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.4);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.4);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.4);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.4);
f(playSound, 'hump');
f(pause, 0.8);
f(whatIf, 'catgirl');
f(c, 'Meow… umpf…');
f(otherwise);
f(c, 'Uhh… umpf…');
f(endIf);
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_wakingup');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_legsopen');
f(addToCg, 'cg_sleeping_legsopen_pussyopen');
f(addToCg, 'cg_sleeping_wetpussy');
f(addToCg, 'cg_sleeping_man_allin');
f(addToCg, 'cg_pussywipe');
f(addToCg, 'cg_pussywipe_insert2');
f(pause);
f(screenEffect, 'shake', 10, 0.4);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.4);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.4);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.4);
f(playSound, 'hump');
f(pause, 0.8);
f(p, 'Oh, Soph, Soph, Soph..!');
f(screenEffect, 'shake', 10, 0.4);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.4);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.4);
f(playSound, 'hump');
f(pause, 0.8);
f(screenEffect, 'shake', 10, 0.4);
f(playSound, 'hump');
f(pause, 0.8);
f(whatIf, 'catgirl');
f(c, 'Uhn, meow, ah, nya, nya, ah , meow…');
f(otherwise);
f(c, 'Uhn, uhn, ah, ah, ah…');
f(endIf);
f('I come to the realization that Sophie is awake by now, but... despite this, she hasn\'t attempted to cut my dick off.');
f('Could this mean..?');
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_enjoying2');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_legsopen');
f(addToCg, 'cg_sleeping_legsopen_pussyopen');
f(addToCg, 'cg_sleeping_wetpussy');
f(addToCg, 'cg_sleeping_man_allin');
f(addToCg, 'cg_pussywipe');
f(addToCg, 'cg_pussywipe_insert2');
f(pause);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f(screenEffect, 'shake', 10, 0.3);
f(playSound, 'hump');
f(pause, 0.6);
f('We pant in tandem for what feels like an eternity of pleasure, and then come at the same time, Sophie screaming at the top of her lungs.');
f(choice);
f(choice, 'Cum inside of her.');
f(whatIf, 'catgirl');
f(c, 'MEEEEEOOOWWWOWOWOWOW!!');
f(endIf);
f('My mind goes blank, and I cum inside of Sophie\'s wet pussy.');
f(setVariable, 'cum', 'inside');
f(screenEffect, 'shake', 13, 0.6);
f(playSound, 'hump');
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_surprisedcumming');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_legsopen');
f(addToCg, 'cg_sleeping_legsopen_pussyopen');
f(addToCg, 'cg_sleeping_wetpussy');
f(addToCg, 'cg_sleeping_man_allin');
f(addToCg, 'cg_sleeping_cuminside');
f(addToCg, 'cg_pussywipe');
f(addToCg, 'cg_pussywipe_insert2');
f(addToCg, 'cg_pussywipe_cum');
f(pause);
f(choice, 'Pull out in the last second.');
f(setVariable, 'cum', 'outside');
f('I pull out just as I\'m about to cum, and spray it all over Sophie\'s body, as she]s coming');
f(whatIf, 'catgirl');
f(c, 'MEEEEEOOOWWWOWOWOWOW!!');
f(endIf);
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_surprisedcumming');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_legsopen');
f(addToCg, 'cg_sleeping_legsopen_pussyopen');
f(addToCg, 'cg_sleeping_wetpussy');
f(addToCg, 'cg_sleeping_man_approaching');
f(addToCg, 'cg_sleeping_cumspray');
f(pause);
f(cg, 'cg_sleeping', 'fade');
f(addToCg, 'cg_sleeping_dogtail');
f(addToCg, 'cg_sleeping_cattail');
f(addToCg, 'cg_sleeping_elfears');
f(addToCg, 'cg_sleeping_catears');
f(addToCg, 'cg_sleeping_exp_cumface');
f(addToCg, 'cg_sleeping_freeboobs');
f(addToCg, 'cg_sleeping_legsopen');
f(addToCg, 'cg_sleeping_legsopen_pussyopen');
f(addToCg, 'cg_sleeping_wetpussy');
f(addToCg, 'cg_sleeping_man_approaching');
f(addToCg, 'cg_sleeping_cumallover');
f(pause);
f(endChoice);
f(scene, 'white', 'whiteFade');
f(stopMusic, 'fade');
f(pause, 2);
f('I feel like I\'m in heaven.');
f(pause, 1);
f(playMusic, 'distant_waves', 30);
f(whatIf, 'cum==outside');
f(cg, 'cg_face', 'fade');
f(addToCg, 'cg_face_elfears');
f(addToCg, 'cg_face_catears');
f(addToCg, 'cg_face_cumface');
f(addToCg, 'cg_face_sweat');
f(addToCg, 'cg_face_cum1');
f(otherwise);
f(cg, 'cg_face', 'fade');
f(addToCg, 'cg_face_elfears');
f(addToCg, 'cg_face_catears');
f(addToCg, 'cg_face_cumface');
f(addToCg, 'cg_face_sweat');
f(pause);
f(endIf);
f('I let my body fall down, next to Soph, feeling ecstatic. We\'re both breathing heavily, exhausted. We fall asleep in each others arms.');
f(stopMusic, 'fade');
f(scene, 'black', 'fade');
f(pause, 3);
f(playMusic, 'distant_waves', 50);
f(changeBg, 'white', 'fade', 6);
f('I notice it\'s bright outside.');
f('I wake up, with my arms still around Sophie\'s naked body, with her back turned towards me.');
f('I let out a yawn.');
f(c, '...$mcuz$? Are you awake?');
f(p, 'Yeah.');
f(c, '...');
f(c, 'You…');
f(c, 'You\'re one dirty fucking perv, you know that?');
f(p, 'Haha-');
f(whatIf, 'catgirl');
f(c, 'Meow!');
f(endIf);
f(c, 'No, really.');
f(c, 'Dude, you stuck your dick inside me while I was still asleep. That\'s rape, man.');
f(p, 'B-but, you enjoyed it?');
f(c, '...');
f(c, 'Look, if you ever try anything like that again, I\'ll cut your dick off.');
f('I instinctively pull back my arm that\'s lying over her back.');
f(c, 'And I\'m serious. But…');
f(c, 'If we agree to never talk about this and pretend it never happened…');
f(c, '...');
f(c, 'OK?');
f(p, '...');
f(p, '...OK.');
f('I roll onto my side, away from Sophie, my stomach turned to knots.');
f(stopMusic, 'fadeOut');
f(scene, 'black', 'fade');
f('She… she\'s right, of course. Which… just makes me feel even worse.');
f('What I did was indefensible, whether or not she happened to enjoy it too.');
f(scene, 'black', 'fade');
f(pause);
f('Things became very tense between us, ever since..');
f('Luckily, it was only a week later that we finally sighted a ship - they saw our fire burning, and came for us!');
f(playMusic, 'calm_beach');
f(cg, 'boat_on_sea', 'fade');
f('My relief of being rescued was mixed with worries about what would happen when we came home. Would… would she tell anybody? My parents, her parents… they\'d kill me if they knew.');
f(scene, 'black', 'fade');
f(stopMusic, 'fadeOut');
f('The two of us are sitting in the ship\'s canteens, having lunch. Our rescue has apparently already become big news back home, and we\'ll be picked up by helicopter, instead of having to wait for the ship to arrive at its next port.');
f('...');
f(setFilter, '');
f('Sophie\'s already sitting by the table. I go sit down opposite her. I\'ve been avoiding her, mostly, but there\'s something I <i>need</i> to ask her.');
f(scene, 'canteen', 'fade');
f(item, 'item_canteen_front', 0, 0);
f(person, c, 'clothed', 'neutral', x, x, x, x, 'back');
f('Sophie doesn\'t say a word as I sit down in front of her.');
f(p, '... Soph?');
f(c, 'What?');
f(p, '...');
f(p, 'You… you won\'t tell, will you?');
f(c, '$mcuz$…');
f(person, c, 'clothed', 'irritated', x, x, true, x, 'back');
f('Sophie leans in over the table, and whispers to me.');
f(c, 'I should cut off your balls right now with this blunt table knife for even implying something anybody would have an interest in telling anybody might have happened.');
f('Sophie leans back and sits straight, turning her gaze towards her food and continues to eat.');
f(c, 'There\'s nothing to tell, OK?');
f(p, '... I\'m sorry.');
f(c, '...');
f(scene, 'black', 'fade', 3);
f(pause, 1);
f('Did… did it really have to end like this?');
f(pause, 1);
f(c_t, 'OK, congrats on the least shitty ending of the shitty endings.', 'unhappy');
f(c_b, 'The least sad of the rape endings.');
f(c_b, 'Remember kids, rape is always wrong. Except when it\'s pure fantasy.');
f(c_t, 'So like in this game then?');
f(c_b, 'Yes, exactly.');
f(c_t, 'So did you have to make all the rape endings so dark and bleak then?');
f(c_b, 'Well… not really, I guess. But if you\'re into rape fantasies, aren\'t you into that stuff too?');
f(c_t, '... are you asking me?', 'worried');
f(c_b, 'Yes?');
f(c_t, '... I\'ll, uh, ask my friend when gets online on Steam.', 'worried');
f(c_b, 'Thanks for playing! Please support us on Patreon, if you\'d like to see us make more games like this! Bye bye, now.');
f(pause, 1);
f(ending, 'sexyEnding', 'Nothing to Tell');
f(label, 'consensual');
f('I wake up but my eyes are still closed. It takes a couple of seconds, like always, before I realize what\'s happening, but something… feels very, very nice.');
f('Oh. My. God.');
f('I have a raging boner, like always, but… what\'s different is, I can feel Sophie slowly grinding her ass against it.');
f('The realization itself nearly makes me come on the spot, and I instinctively pull back my crotch, and Sophie freezes.');
f('I half-open one of my eyes, and see Sophie slowly turning towards me. Our eyes meet.');
f(cg, 'cg_face', 'fade');
f(addToCg, 'cg_face_elfears');
f(addToCg, 'cg_face_catears');
f(addToCg, 'cg_face_sensual');
f(addToCg, 'cg_face_bra');
f(pause);
f(p, '$fcuz$..?');
f(c, 'Shhh….');
f('She hushes me and moves my hand to left hand to her right breast, then moves her own hand to my crotch.');
f('I waste no time questioning what\'s happening. If it\'s a dream, then so be it. If it\'s real, well, I don\'t care. I\'ll play along.');
f('I move my right hand down to her pussy and start massaging it.');
f('With my left hand, I alternate between pulling her nipple and massaging her breast.');
f('I remove her top.');
f(cg, 'cg_face', 'fade');
f(addToCg, 'cg_face_elfears');
f(addToCg, 'cg_face_catears');
f(addToCg, 'cg_face_sensual2');
f(pause);
f('Sophie\'s hand on my dick begins to pull harder and faster and she begins to moan. She is getting wet.');
f(addToCg, 'cg_face_sweat', 'fade', 4);
f('We both begin to sweat.');
f(pause, 2);
f('Before I have time to do anything else, Sophie is on top of me, inserting my dick into herself.');
f(cg, 'cg_ontop', 'fade');
f(addToCg, 'cg_ontop_dogtail');
f(addToCg, 'cg_ontop_cattail');
f(addToCg, 'cg_ontop_elfears');
f(addToCg, 'cg_ontop_catears');
f(addToCg, 'cg_ontop_face1');
f(addToCg, 'cg_ontop_dickinpussy');
f('She begins to ride me violently and… well, sex never felt so good. I am so near cumming the only thing keeping me from spraying her inside is my faltering willpower.');
f('Every jerk, I\'m so close to cumming it\'s almost unbearable. I grab hold of her arms, if only to make her move slower.');
f(addToCg, 'cg_ontop_arms');
f('My plan fails.');
f('The jerks grow in frequency and intensity, and so does Sophie\'s panting.');
f(cg, 'cg_ontop', 'fade');
f(addToCg, 'cg_ontop_dogtail');
f(addToCg, 'cg_ontop_cattail');
f(addToCg, 'cg_ontop_elfears');
f(addToCg, 'cg_ontop_catears');
f(addToCg, 'cg_ontop_face2');
f(addToCg, 'cg_ontop_arms');
f(addToCg, 'cg_ontop_dickinpussy');
f(whatIf, 'catgirl');
f(c, 'Meow, meow, meow meow, yes, meow, meow!');
f(otherwise);
f(c, 'Oh, oh, oh, oh yes, oh, uuuh, oh!');
f(endIf);
f('Sophie\'s now moving so quickly I\'m almost a little worried she\'s going to break my dick. Wait, is that like an actual thing? Could that actually happen?');
f(c, 'Oh, $mcuz$!!');
f(whatIf, 'catgirl');
f(c, 'MEOW, OH YES!! MEOW, MEOW, MEOW, I\'M CUMMING!! I\'M CUMMING!! I\'M CUMMING!!');
f(otherwise);
f(c, 'OH, OH YES!! OH, OH, OH, I\'M CUMMING!! I\'M CUMMING!! I\'M CUMMING!!');
f(endIf);
f(choice);
f(choice, 'Cum inside of her');
f(cg, 'cg_ontop', 'fade');
f(addToCg, 'cg_ontop_dogtail');
f(addToCg, 'cg_ontop_cattail');
f(addToCg, 'cg_ontop_elfears');
f(addToCg, 'cg_ontop_catears');
f(addToCg, 'cg_ontop_face3');
f(addToCg, 'cg_ontop_dickinpussy');
f(addToCg, 'cg_ontop_arms');
f(addToCg, 'cg_ontop_cuminside');
f(pause);
f('I come as we scream together and begin to shake, uncontrollably, in ecstasy. Sophie comes tumbling down over me, still jerking her crotch over mine, while screaming in pleasure.');
f(choice, 'Pull out');
f(cg, 'cg_ontop', 'fade');
f(addToCg, 'cg_ontop_dogtail');
f(addToCg, 'cg_ontop_cattail');
f(addToCg, 'cg_ontop_elfears');
f(addToCg, 'cg_ontop_catears');
f(addToCg, 'cg_ontop_face3');
f(addToCg, 'cg_ontop_arms');
f(addToCg, 'cg_ontop_cumspray');
f(addToCg, 'cg_ontop_dick');
f(pause);
f(cg, 'cg_ontop', 'fade');
f(addToCg, 'cg_ontop_dogtail');
f(addToCg, 'cg_ontop_cattail');
f(addToCg, 'cg_ontop_elfears');
f(addToCg, 'cg_ontop_catears');
f(addToCg, 'cg_ontop_face4');
f(addToCg, 'cg_ontop_arms');
f(addToCg, 'cg_ontop_dick');
f(addToCg, 'cg_ontop_cum');
f(pause);
f(endChoice);
f(stopMusic, 'fade');
f(scene, 'white', 'whiteFade', 2);
f(whatIf, 'friend');
f('Oh my fucking god. That was the best fucking sex I ever had. With… Sophie! Who\'da thunk it?!');
f(otherwise);
f('Oh my fucking god. That was the best fucking sex I ever had. With my own blood, my hot and sexy $fcousin$.');
f('I had expected feelings of shame, but I just feel ecstatic, and happy.');
f(endIf);
f('I\'ve never felt so happy in my entire life.');
f(scene, 'black', 'fade');
f(pause, 2);
f(playMusic, 'distant_waves', 40);
f('I wake up to Sophie gently kissing me.');
f(cg, 'cg_face');
f(addToCg, 'cg_face_elfears');
f(addToCg, 'cg_face_catears');
f(addToCg, 'cg_face_sweat');
f(addToCg, 'cg_face_aftersexsmile');
f(pause);
f('We look each other in the eyes and smile, and let off a little laugh at how crazy this is.');
f(c, '$mcuz$… for being such a bookish nerd, you\'re pretty much a fucking stallion in bed, did you know that?');
f(whatIf, 'catgirl');
f(c, 'I mean…<i>MEOW!</i>');
f(endIf);
f(scene, 'white', 'fade');
f('We laugh loud and long and hold each other\'s naked bodies, slowly kissing each other all over.');
f(p, 'This is crazy… I never thought…');
f(c, 'You don\'t say? You never foresaw us getting stuck on a paradise island together, eventually having sex? It wasn\'t in your five year plan?');
f('We laugh again at the absurdity of it all.');
f(stopMusic, 'fade');
f(scene, 'black', 'fade');
f(pause, 1);
f('Over the next week, we learn everything about each other\'s bodies, nearly forgetting to hunt and gather food, so much are we swept away.');
f(c_b, 'Here we go… did you ever say you want to stay on the island? No? Well, then you\'re up for the melancholy ending.');
f(whatIf, 'wantToStay>0');
f(jump, 'paradiseEnding');
f(endIf);
f(jump, 'melancholyEnding');
f(label, 'melancholyEnding');
f(setFilter, '');
f('But all good things must come to an end.');
f(playMusic, 'regular_beach');
f(cg, 'cg_boat_on_sea', 'fade');
f('Just about a week after we first had sex, we\'re discovered by a passing ship! We\'re saved!');
f('We\'re brought aboard the ship and taken well care of, though we\'re given separate rooms.');
f(stopMusic, 'fade');
f(scene, 'white', 'fade');
f('The news of us being found alive spreads quickly, apparently. We get phone calls via satellite from our families. They let us we\'ve become a media sensation back home.');
f('The captain lets us borrow his laptop and we read some of the articles on the super slow and apparently super expensive to use Internet.');
f('A picture of the two of us hugging each other ecstatically as we were being saved, taken and uploaded to $facebook$ by one of the crew members, has spread all over the $internet$.');
f('Though the picture is entirely innocent, knowing the Internet as well as I do, I expect there\'s already people masturbating to the thought of two of us doing the nasty stuck on a tropical island.');
f(whatIf, 'catgirl');
f('It doesn\'t help that Sophie\'s a catgirl, of course. I mean, those… horrible, horrible fetish sites all over the Internet…');
f(endIf);
f(c_t, 'Those bastards! How dare they!', 'angry');
f(c_b, 'I would have.', 'inlove');
f('Can\'t be helped really, with Sophie looking so damn hot in her bikini, her boobs visibly pushed up against me.');
f('The two of us are sitting in the ship\'s canteen, having lunch. Tomorrow we\'ll be picked up by helicopter - since the whole thing blew up in the media, it seems they can\'t wait until the ship arrives in the next port.');
f('It does make you feel a little bit like a rockstar.');
f(screenEffect, 'whiteFlash');
f(scene, 'canteen');
f(item, 'item_canteen_front', 0, 0);
f(person, c, 'clothed', 'slightly_concerned', x, x, x, x, 'back');
f('As we sit down in the ship\'s canteen to eat, Sophie has a serious expression on her face. She clearly has something on her heart.');
f(c, '$mcuz$…');
f(p, 'Yeah?');
f(c, 'You know…');
f(c, 'You know how we had a lot of, uh, <I>fun</I> and all…');
f('The usually so strong Sophie seems to lose her will. She stares down her plate and lets out a sigh.');
f(c, 'You know, with the media on us like flies, you know.');
f(c, 'And that stupid photo, I mean, people might already suspect something.');
f(p, 'Hah, well, it\'s your fault for looking so damn sexy.');
f('I say that with a broad smile on my lips. Sophie lets out a short laugh without lifting her head.');
f(c, 'Yeah, well sorry for being kind of pre-occupied being happy like nuts we\'d been saved.');
f(person, c, 'clothed', 'irritated_halfsmile');
f('She looks up, shoots me a crooked smile, and then averts her eyes from me again.');
f(person, c, 'clothed', 'slightly_concerned');
f(c, 'But… what I wanted to say…');
f(c, 'You know, you must have understood as much, you\'re the smart one…');
f(c, 'But... we\'re gonna have to pretend like nothing happened, you know that, right?');
f(whatIf, 'daughter');
f(p, 'Of course! What do you think your mom would do to me if she knew what had happened? Or her parents? Christ, my lips are sealed!');
f(c, 'She would kill you… she\'d forgive me, but… I actually think she would probably try and kill you.');
f(otherwise);
f(p, 'Of course! I\'m not going to let anybody know about us, $christ$, can you imagine if our parents found out? I mean your dad especially, he\'d kill me!');
f(c, 'Yeah, he would. He literally would.');
f(endIf);
f(p, '...');
f(c, 'But I don\'t mean… to just, you know, them, or the media, or or friends, or everyone.');
f(c, 'I mean, you get that, right?');
f(c, 'That this can\'t go on? We can\'t do any of that… stuff, again, right?');
f(whatIf, 'catgirl');
f(c, 'Meow?');
f(endIf);
f('I feel a cold sensation spreading from my chest. No, Soph, no, that\'s not…');
f(p, 'B-but, Soph, no, I mean, it\'s not like we can\'t be a couple openly, b-but…');
f('Sophie looks around to make sure nobody is listening in, and leans in over the table, lowering her voice.');
f(c, '$mcuz$, you know, it wasn\'t just… fun, to me, you know.');
f(c, 'I… care, about you, deeply. I… $christ$, I can\'t believe I\'m saying this, but…');
f(c, 'I could imagine myself spending my rest of your life with you, getting married, having kids, I mean...');
f('My eyes feel like they\'re burning and I\'m afraid I\'m going to burst out in tears any moment. I put my elbows on the table and hide my face in my hands. I don\'t want Sophie to see.');
f('She whispers.');
f(c, 'I … love you, $mcuz$.');
f(whatIf, 'daughter');
f(c, 'And I don\'t mean the way a daughter should love her father… but… the other way.');
f(elseIf, 'sister');
f(c, 'I don\'t mean as a brother. I love you, the way a woman loves a man.');
f(elseIf, '!friend');
f(c, 'I don\'t mean as a $mcousin$... but you know, the other way.');
f(endIf);
f(whatIf, 'friend');
f(c, 'And like I\'m feeling, like at least now, I\'d do all that stuff with you, in a parallel universe where my parents wouldn\'t literally disown me in an instant. But… back home? You know it\'s not going to work.');
f(otherwise);
f(c, 'And like I\'m feeling, like at least now, I\'d do all that stuff with you, in a parallel universe where it was accepted. But… back home? You know it\'s not going to work.');
f(endIf);
f(whatIf, 'daughter');
f(c, 'I mean, I\'ve been accepted to $notredame$, right? I\'m not… I\'m not going to stay home forever, to be your little… <i>sex toy</i>. You understand that, right?');
f(otherwise);
f(c, 'Also, I mean, you know I was accepted to $notredame$, right? And you\'re heading for $california$, right?');
f(whatIf, 'sister');
f(p, 'So what? It\'s not like we\'re not ever going to see each other-');
f(c, 'So while mom and dad are preparing the turkey, you want to sneak up to your room for a quick fellatio?');
f(c, 'Bro, I love you… but I can\'t live like that.');
f(endIf);
f(endIf);
f(p, 'I, I don\'t care…');
f(whatIf, '!daughter');
f('That\'s about as much as I can get out before I have to stop myself, or I\'ll start crying uncontrollably.');
f('I want to say, I don\'t care about $stanford$, $UCLA$, $california$, any of that. I don\'t care where I go or where you go or how much we have to hide how we feel and what we do. I want to say I would do anything, ANYTHING, to just, keep … keep like one hundredth of what we had going here.');
f('But I can\'t.');
f(endIf);
f(c, '$mcuz$… I\'m sorry. You know what people would say. I can\'t… I can\'t live my life with something like this hanging over me.');
f(whatIf, '!friend');
f(c, 'I can\'t… this, this can\'t be found out. If we keep… if we kept doing any of this, I\'m done for. Even if we did… like a long distance thing, or whatever, the moment we\'re found out...');
f(c, 'We\'ll be kicked out of school... it\'ll be a media sensation, all over again. They\'ll post that picture again, and... we will be infamous.');
f('That damn, stupid picture. Can I sue every publication who ever printed it? Can I sue $google$ Images for bringing it up in search results? Can I force people to forget about us ever existing?');
f(endIf);
f(c, '$mcuz$, I\'ll never forget this, I\'ll treasure the memories.');
f(c, 'But we can\'t… you know, we can\'t even see each other just the two us, after we\'re home. I mean, family gatherings and stuff, of course, in front of people.');
f(c, 'But we can\'t risk… we must, you know, we must… we must shut off or feelings for each other completely.');
f(c, '...');
f(c, '$mcuz$?');
f(p, 'I don\'t want to.');
f(whatIf, '!daughter');
f('I splurt out, pathetically. It\'s all I can say, but I can\'t hide my tears as they\'re dripping of my red face on the food tray below.');
f(endIf);
f(c, '$mcuz$… I\'m sorry. But this is the way it has to be. It has to be.');
f('Sophie stands up. Is she leaving me? Already? Now?');
f('She walks over to my side of the table and puts her arm around me, as if I were a sick child. I keep my face hidden in my hands.');
f(c, '$mcuz$…');
f('She leans in and hugs me, her face, her face also also wet, leaning in on my neck. Sophie the Strong… I made her cry. Maybe she\'s just crying in sympathy for this pathetic wreck I am at the moment.');
f('We sit like that, silently crying and sniffling, holding each other, for a couple of minutes.');
f('Eventually, Sophie lets go of me. Don\'t let go! Don\'t leave! Stay here with me, forever.');
f('She stands up, returns to her side of the table, returns her tray, walks past me, pats me on the back, and leaves.');
f('I sit by myself, with the ship\'s chef curiously, perhaps sympathetically, looking at me from the other side of the trays. I\'ve lost all appetite, and my food is wet, probably salty, from my tears.');
f('I don\'t want to go back home.');
f('I regret ever setting my foot on this stupid ship.');
f(scene, 'black', 'fade', 3);
f(pause, 1);
f(c_b, 'And that\'s it! So close, but no cigar!');
f(c_b, 'Thanks for playing! And thanks for reading all of this commentary. I hope it was at least moderately interesting.', 'happy');
f(c_b, 'And please consider supporting us on Patreon! The more money we can raise, the better games we can make.');
f(c_t, 'Don\'t let us blame it on the budget next time..!', 'happy');
f(pause, 1);
f(ending, 'melancholy_ending', 'Regrets');
f(label, 'paradiseEnding');
f('But all good things…');
f(stopMusic);
f(playMusic, 'distant_waves');
f(scene, 'outside_shelter_evening', 'fade');
f(panAll, 30);
f('A week has passed after we first had sex.');
f('I\'m sitting by the fire, setting it up to cook yet another hopefully tasty yet awkwardly weird-looking fish, while Sophie is sitting down by the shoreline, with her feet in the water.');
f(c, '$mcuz$!');
f('I look up, and see Sophie running towards me with her hands waving in the air, excitedly.');
f(stopMusic, 'fade');
f(playMusic, 'regular_beach');
f(scene, 'beach_sunset', 'blackFade');
f(setFilter, 'sunset');
f(person, c, 'flower', 'surprised');
f(setZoom, c, 1.4);
f(c, '$mcuz$, come! Look!');
f('She grabs my hand and pulls me up into a standing position.');
f(whatIf, 'catgirl');
f(c, 'Meow! Can\'t you see?!');
f(otherwise);
f(c, 'Look! Can\'t you see?!');
f(endIf);
f(p, 'See what?');
f(c, 'Over there, dummy!');
f(cg, 'cg_boat_on_sea_sunset', 'blackFade');
f(pause);
f('She\'s right - there\'s a boat in the distance - the first we\'ve spotted this close ever since we came!');
f(p, 'Oh… my… god…');
f(c, 'Quick! We need to get the fire going, make it larger! Hurry, we need to get more firewood! Or old leaves, or anything… just throw it on there!');
f('Of course. Make the fire larger. Smoke signals, let them see there\'s people here, and with just a little bit of luck, they\'ll notice come and check it out.');
f('They must know this is an uninhabited island, it must be marked as such on their charts, or whatever.');
f(c, 'Should we… should we just burn the fucking forest down?');
f('Make them notice us, come and pick us up, bring us… bring us back home, where everything will…');
f(c, 'Come on, $mcuz$, let\'s get to it!');
f(scene, 'white', 'fade');
f(whatIf, '!friend');
f(whatIf, 'daughter');
f('Where everything will go back to normal. Sophie will go to Indiana for school, and I will go back to being the underdog to my wife.');
f(otherwise);
f('Where everything will go back to normal. I will go to $stanford$, and Sophie to $indiana$.');
f(endIf);
f('We will have to pretend… pretend like nothing ever happened.');
f(c, 'Hey, $mcuz$, come help me drag this thing over to the fire!');
f(whatIf, 'daughter');
f('If anybody ever found out… our lives would be over. We… we\'d have to pretend none of this ever happened.');
f('We\'d go on with our lives… always wondering…');
f(otherwise);
f('If anybody ever found out… our lives would be over. As if it\'s not enough that two teenaged $cousins$ are saved on a deserted island, after more than two months…');
f('And Sophie being hot as fuck, people might even start to imagine stuff. We… we\'d have to pretend… none of this happened.');
f('We\'d go on with our lives… I\'d become an engineer, settle for some girl who\'s a bleak copy of Sophie, always wondering…');
f(endIf);
f(endIf);
f('Wondering…');
f(c, '$mcuz$?');
f(stopMusic, 'fade');
f(playMusic, 'distant_waves');
f(changeBg, 'outside_shelter_evening', 3);
f('Wondering what would have happened if we had stayed.');
f(p, 'Soph! Stop. Listen!');
f(person, c, 'flower', 'surprised', x, x, true);
f(setZoom, c, 1.3);
f(c, 'What?');
f(p, 'Soph, I love you.');
f(person, c, 'flower_blush', 'embarrassed');
f(c, '... I…');
f(c, '$mcuz$, I…');
f(person, c, 'flower', 'blushing');
f(c, 'I… I love you too$meeoow$.');
f(p, 'You know what will happen the instance we got on that boat?');
f(person, c, 'flower', 'inquisitive', x, x, true);
f(c, 'We\'ll go back home?');
f(p, 'Things will go back to normal. Everything will get back to normal.');
f(p, 'Soph… $sophOrSis$. We won\'t… We can\'t be together, back home. It\'s the end of us.');
f(c, '...');
f(c, 'Yeah…');
f(p, 'Soph. What I\'m saying might sound crazy, but…');
f(person, c, 'flower', 'irritated');
f(c, 'What?');
f(p, 'Soph. Let\'s stay.');
f(person, c, 'flower', 'surprised', x, x, true);
f(c, 'What?!');
f(p, 'Let\'s stay. Let\'s turn out the fire. Don\'t let them find us. Stay here, just you and me. We have no worries in the world - this is paradise! Even the snakes aren\'t poisonous!');
f(person, c, 'flower', 'smallsmile');
f('We both laugh.');
f(person, c, 'flower', 'neutral', x, x, true);
f(p, 'The fish isn\'t killing us each other, we\'re not struck by fatigue, and we\'ve managed this far without any problems. We can stay… we can stay.');
f('I feel more and more crazy the more I say, but at the same time, the more it rings true.');
f(stopMusic, 'fade');
f(scene, 'white', 'fade');
f(pause, 3);
f('All good things must come to an end.');
f('Or so they say.');
f('Five years have passed since that day. I often think back, wondering what would have happened if we had chosen differently.');
f(playMusic, 'calm_beach');
f(pause, 1);
f(c_t, 'The music beginning to play here is a dead give away, obviously.');
f(pause, 2);
f(scene, 'beach_day', 'fade');
f('But I\'ve never really regretted it.');
f('Being stuck on a paradise island, with the sexiest and most gorgeous person I know? Well, I could think of a worse fate.');
f('The kids have of course made things a bit more complicated, but also more worthwhile at the same time.');
f(cg, 'cg_island_ending', 'blackFade');
f(addToCg, 'cg_island_ending_cattail');
f(addToCg, 'cg_island_ending_dogtail');
f(addToCg, 'cg_island_ending_catears');
f(addToCg, 'cg_island_ending_elfears');
f('Yes, kids…');
f(whatIf, 'daughter');
f('I know what you\'re thinking. A father, fathering children with his own daughter? But… where\'s the harm, really?');
f('Our kids are healthy. We aren\'t hurting anyone.');
f('Eventually getting around to explaining to them that their dad is also their granddad - well, that\'s a headache for the future us.');
f(otherwise);
f('You know, those little things that tend to be one of the consequences when two people at the peak of their fertility fuck like rabbits without any protection.');
f(endIf);
f(whatIf, 'catgirl');
f('There\'s two of them so far. Odd thing, genetics. Both are catgirls, as luck would have it. Two so far, but Sophie\'s period stopped a couple of months ago, and her belly has once again started expanding.');
f(otherwise);
f('There\'s two of them so far, two girls, but Sophie\'s period stopped a couple of months ago, and her belly has started expanding.');
f(endIf);
f('It doesn\'t turn off me in the least though, if anything… I\'m looking forward to her boobs growing to the size of melons again.');
f('We know that we will have to get off the island, eventually, for the kids\' sake, if nothing else.');
f('Me and Sophie saw the world, and <i>chose</i> this place, and each other.');
f('Of course, we\'d want to give our kids the same option.');
f(pause);
f(whatIf, 'daughter');
f('On the other hand… who knows how things work out. We might be forced to remain here for years, whether or not we want to. Personally, I wouldn\'t really mind- I could certainly imagine staying here forever.');
f('I haven\'t talked to Sophie about this, but… eventually our beautiful little girls will grow up into beautiful women, and they will have… their sexual exploration phase, just as Sophie did.');
f('If our third baby happens to be a boy, well, that will certainly be nice for them. Otherwise, as long as I\'m around, I\'d be happy to... volunteer my services, in the sex department.');
f('Hey now - it wouldn\'t be fair to Sophie\'s sisters if I just concentrated all my love on her, now would it?');
f(otherwise);
f('But hey - it can wait another 10 years, or so.');
f(endIf);
f(scene, 'black', 'fade', 3);
f(stopMusic, 'fade');
f(pause, 1);
f(c_b, 'Thanks for playing! And congrats on reaching the True Ending!');
f(c_t, 'Well done, my boy!', 'happy');
f(c_b, '... or girl, if that\'s what you happen to be.');
f(c_b, 'I\'m… I\'m actually <i>really</i> thankful that you read this far!');
f(c_t, 'He\'s kind of assuming you didn\'t reach this on your first try. But if you were playing the nice guy, it wouldn\'t have been that hard, obviously.');
f(c_b, 'Well, either way, you read it all the till at least one of the endings.');
f(c_b, 'My writing might not be stellar, but hope it\'s been enjoyable nonetheless.');
f(c_t, 'Or were you only looking at the pretty pictures? Gasp!', 'surprised');
f(c_b, 'Thank you, again! And please consider supporting us on Patreon!', 'happy');
f(c_t, 'Thank you!', 'happy');
f(pause, 1);
f(ending, 'paradiseEnding', 'Paradise (True Ending)');
}
frame 3 {
function checkShit() {
var v4 = new Object();
var v2 = new Array();
var v3 = new Array();
var v1 = 0;
while (v1 < v2.length) {
++v1;
}
}
function initVar() {
function acg(o) {
allCgs.push(o);
++amountOfCgs;
}
resizeAndReplaceF();
localTesting = true;
basicGameData = new Object();
basicGameData.gameFile = 'crusoe_1';
basicGameData.gameName = 'Flash VN Engine';
basicGameData.selfContained = true;
basicGameData.numberInSeries = 1;
basicGameData.characterHeight = 1140;
basicGameData.characterFace = {'x': 385, 'y': 350};
basicgameData.characterWidth = 400;
patreonURL = 'http://billkershaw.com/clients/redir/crusoe.html';
defaultFilter = new Array();
defaultFilter = defaultFilter.concat([1.1, 0, 0, 0, -13]);
defaultFilter = defaultFilter.concat([0, 1.1, 0, 0, -13]);
defaultFilter = defaultFilter.concat([0, 0, 1.1, 0, -13]);
defaultFilter = defaultFilter.concat([0, 0, 0, 1.5, 0]);
sunsetFilter = new Array();
sunsetFilter = sunsetFilter.concat([1.4, 0.1, 0.1, 0, -90]);
sunsetFilter = sunsetFilter.concat([0, 1.2, 0.1, 0, -90]);
sunsetFilter = sunsetFilter.concat([0, 0, 1.2, 0, -90]);
sunsetFilter = sunsetFilter.concat([0, 0, 0, 1, 0]);
eveningFilter = new Array();
eveningFilter = eveningFilter.concat([0.75, 0.1, 0, 0, -80]);
eveningFilter = eveningFilter.concat([0.1, 0.75, 0, 0, -80]);
eveningFilter = eveningFilter.concat([0.1, 0.1, 1.4, 0, -80]);
eveningFilter = eveningFilter.concat([0, 0, 0, 1, 0]);
nightFilter = new Array();
nightFilter = nightFilter.concat([0.4, 0.1, 0, 0, -25]);
nightFilter = nightFilter.concat([0.1, 0.4, 0, 0, -25]);
nightFilter = nightFilter.concat([0, 0, 1, 0, -25]);
nightFilter = nightFilter.concat([0, 0, 0, 1, 0]);
nightFireFilter = new Array();
nightFireFilter = nightFireFilter.concat([1, 0, 0, 0, -40]);
nightFireFilter = nightFireFilter.concat([0, 0.8, 0, 0, -40]);
nightFireFilter = nightFireFilter.concat([0, 0, 1.1, 0, -40]);
nightFireFilter = nightFireFilter.concat([0, 0, 0, 1, 0]);
if (System.capabilities.language == 'ja') {
}
allCgs = new Array();
amountOfCgs = 0;
acg({'base': ['bg_sunsetsky', 'ch_sophie_hi_base', 'ch_sophie_hi_pants', 'ch_sophie_hi_boobs_bra', 'ch_sophie_hi_eyes_wideopenfriendly', 'ch_sophie_hi_expression_smile'], 'sequence': [[0], [0, 'ch_sophie_hi_base', 'ch_sophie_hi_freeboobs', 'ch_sophie_hi_pants', 'ch_sophie_hi_eyes_surprised', 'ch_sophie_hi_expression_smile'], [0, 'ch_sophie_hi_base', 'ch_sophie_hi_freeboobs', 'ch_sophie_hi_eyes_komaru', 'ch_sophie_hi_expression_smile']]});
acg({'base': ['book'], 'sequence': [[0]]});
acg({'base': ['snakebite_jungle'], 'sequence': [[0]]});
acg({'base': ['doggy_jungle', 'doggy_jungle_pants', 'doggy_jungle_bra', 'doggy_jungle_manbehind', 'doggy_jungle_manarm', 'doggy_jungle_seductive'], 'sequence': [[0], ['doggy_jungle', 'doggy_jungle_pantsoff', 'doggy_jungle_manbehind', 'doggy_jungle_bra', 'doggy_jungle_manarm', 'doggy_jungle_seductive'], ['doggy_jungle', 'doggy_jungle_pantsoff', 'doggy_jungle_manbehind', 'doggy_jungle_bra', 'doggy_jungle_manarm', 'doggy_jungle_angrysurprised'], ['doggy_jungle', 'doggy_jungle_pantsoff', 'doggy_jungle_manbehind', 'doggy_jungle_freeboobs', 'doggy_jungle_manarm', 'doggy_jungle_comingexpression'], ['doggy_jungle', 'doggy_jungle_pantsoff', 'doggy_jungle_freeboobs', 'doggy_jungle_coming', 'doggy_jungle_comeonface'], ['doggy_jungle', 'doggy_jungle_pantsoff', 'doggy_jungle_manbehind', 'doggy_jungle_freeboobs', 'doggy_jungle_manarm', 'doggy_jungle_coming', 'doggy_jungle_cuminside'], ['doggy_jungle', 'doggy_jungle_pantsoff', 'doggy_jungle_manbehind', 'doggy_jungle_freeboobs', 'doggy_jungle_manarm', 'doggy_jungle_coming', 'doggy_jungle_comeonass'], ['doggy_jungle', 'doggy_jungle_pantsoff', 'doggy_jungle_manbehind', 'doggy_jungle_comeonground', 'doggy_jungle_freeboobs', 'doggy_jungle_manarm', 'doggy_jungle_coming']]});
acg({'base': ['bg_demonsky', 'marduka_base'], 'sequence': [[0], ['bg_demonsky', 'marduka_ripped']], 'premium': true});
acg({'base': ['tentacles_doggy', 'tentacles_doggy_uniform_back', 'tentacles_doggy_boobsinbra', 'tentacles_doggy_uniform_front', 'tentacles_doggy_surprise1', 'tentacles_doggy_tentacle_holding', 'tentacles_doggy_front1'], 'sequence': [['tentacles_doggy', 'tentacles_doggy_tentacle_behind', 'tentacles_doggy_blonde', 'tentacles_doggy_boobsinbra', 'tentacles_doggy_pants2', 'tentacles_doggy_enjoying2', 'tentacles_tears_closed', 'tentacles_front1', 'tentacles_doggy_front2', 'tentacles_doggy_front1'], [0], ['tentacles_doggy', 'tentacles_doggy_uniform_back', 'tentacles_doggy_boobsinbra', 'tentacles_doggy_uniform_front', 'tentacles_doggy_angry_yell', 'tentacles_doggy_tentacle_holding', 'tentacles_doggy_front1'], ['tentacles_doggy', 'tentacles_doggy_uniform_back', 'tentacles_doggy_boobsinbra', 'tentacles_doggy_uniform_front', 'tentacles_doggy_angry', 'tentacles_doggy_tentacle_holding', 'tentacles_doggy_front1'], ['tentacles_doggy', 'tentacles_doggy_uniform_back', 'tentacles_doggy_boobsinbra', 'tentacles_doggy_uniform_front', 'tentacles_doggy_surprise1', 'tentacles_doggy_tentacle_holding', 'tentacles_doggy_tentacle_mouth', 'tentacles_doggy_front1'], ['tentacles_doggy', 'tentacles_doggy_uniform_back', 'tentacles_doggy_boobsinbra', 'tentacles_doggy_uniform_front', 'tentacles_doggy_enjoying1', 'tentacles_doggy_tentacle_holding', 'tentacles_doggy_tentacle_mouth', 'tentacles_doggy_front1'], ['tentacles_doggy', 'tentacles_doggy_pants1', 'tentacles_doggy_boobsinbra', 'tentacles_doggy_uniform_noskirt', 'tentacles_doggy_surprise1', 'tentacles_doggy_tentacle_holding', 'tentacles_doggy_tentacle_mouth', 'tentacles_doggy_front1'], ['tentacles_doggy', 'tentacles_doggy_pants1', 'tentacles_doggy_boobsinbra', 'tentacles_doggy_uniform_noskirt', 'tentacles_doggy_enjoying1', 'tentacles_doggy_tentacle_holding', 'tentacles_doggy_tentacle_mouth', 'tentacles_doggy_front1'], ['tentacles_doggy', 'tentacles_doggy_tentacle_behind', 'tentacles_doggy_pants2', 'tentacles_doggy_boobsinbra', 'tentacles_doggy_uniform_noskirt', 'tentacles_doggy_surprise2', 'tentacles_doggy_tentacle_holding', 'tentacles_doggy_tentacle_mouth', 'tentacles_doggy_front1'], ['tentacles_doggy', 'tentacles_doggy_tentacle_behind', 'tentacles_doggy_pants2', 'tentacles_doggy_boobsinbra', 'tentacles_doggy_uniform_noskirt', 'tentacles_doggy_enjoying2', 'tentacles_doggy_tentacle_holding', 'tentacles_doggy_tentacle_mouth', 'tentacles_doggy_front1'], ['tentacles_doggy', 'tentacles_doggy_freeboobs', 'tentacles_doggy_braoff', 'tentacles_doggy_tentacle_behind', 'tentacles_doggy_pants2', 'tentacles_doggy_uniform_noskirt', 'tentacles_doggy_surprise1', 'tentacles_doggy_tentacle_holding', 'tentacles_doggy_tentacle_mouth', 'tentacles_doggy_front1'], ['tentacles_doggy', 'tentacles_doggy_freeboobs', 'tentacles_doggy_braoff', 'tentacles_doggy_tentacle_behind', 'tentacles_doggy_pants2', 'tentacles_doggy_uniform_noskirt', 'tentacles_doggy_enjoying3', 'tentacles_doggy_tentacle_holding', 'tentacles_doggy_tentacle_outofmouth', 'tentacles_doggy_front1']], 'premium': true});
acg({'base': ['tentacles_onback', 'tentacles_onback_pubes', 'tentacles_onback_uniform_skirt', 'tentacles_onback_freeboob_right', 'tentacles_onback_freeboob_left', 'tentacles_onback_uniform', 'tentacles_onback_surprise3'], 'sequence': [[0], ['tentacles_onback', 'tentacles_onback_pubes', 'tentacles_onback_uniform_skirt', 'tentacles_onback_freeboob_right', 'tentacles_onback_freeboob_left', 'tentacles_onback_uniform', 'tentacles_onback_surprise2', 'tentacles_onback_tentacle_mouth'], ['tentacles_onback', 'tentacles_onback_pubes', 'tentacles_onback_uniform_skirt', 'tentacles_onback_freeboob_right', 'tentacles_onback_uniform', 'tentacles_onback_twistedboob_left', 'tentacles_onback_surprise3', 'tentacles_onback_tentacle_mouth'], ['tentacles_onback', 'tentacles_onback_pubes', 'tentacles_onback_uniform_skirt', 'tentacles_onback_freeboob_right', 'tentacles_onback_twistedboob_left', '],[tentacles_onback_uniform', 'tentacles_onback_enjoying1', 'tentacles_onback_tentacle_mouth', 'tentacles_onback_pussyjuice'], ['tentacles_onback', 'tentacles_onback_pubes', 'tentacles_onback_uniform_skirt', 'tentacles_onback_twistedboob_right', 'tentacles_onback_twistedboob_left', 'tentacles_onback_enjoying2', 'tentacles_onback_tears1', 'tentacles_onback_tentacle_mouth', 'tentacles_onback_pussyjuice'], ['tentacles_onback', 'tentacles_onback_pubes', 'tentacles_onback_uniform_skirt', 'tentacles_onback_twistedboob_right', 'tentacles_onback_twistedboob_left', 'tentacles_onback_enjoying2', 'tentacles_onback_tears1', 'tentacles_onback_tentacle_mouth', 'tentacles_onback_pussyjuice', 'tentacles_onback_tentacle_pussy'], ['tentacles_onback', 'tentacles_onback_pubes', 'tentacles_onback_twistedboob_right', 'tentacles_onback_twistedboob_left', 'tentacles_onback_enjoying2', 'tentacles_onback_tentacle_mouth', 'tentacles_onback_tears2', 'tentacles_onback_pussyjuice', 'tentacles_onback_tentacle_pussy'], ['tentacles_onback', 'tentacles_onback_pubes', 'tentacles_onback_twistedboob_right', 'tentacles_onback_twistedboob_left', 'tentacles_onback_coming1', 'tentacles_onback_tentacle_outofmouth', 'tentacles_onback_tears2', 'tentacles_onback_stomach_deko', 'tentacles_onback_pussyjuice', 'tentacles_onback_tentacle_pussy']], 'premium': true});
acg({'base': ['feet', 'feet_1'], 'sequence': [[0], ['feet', 'feet_2'], ['feet']]});
acg({'base': ['by_fire', 'by_fire_bra', 'by_fire_pants', 'cg_by_fire_lookingaway'], 'sequence': [[0], ['by_fire', 'by_fire_bra', 'by_fire_pants', 'by_fire_nigawarai'], ['by_fire', 'by_fire_surprised']]});
acg({'base': ['face', 'face_asleep', 'face_bra'], 'sequence': [[0], ['face', 'face_sensual', 'face_sweat']]});
acg({'base': ['face', 'face_worriedasleep', 'face_sweat', 'face_man'], 'sequence': [[0], ['face', 'face_worriedasleep', 'face_sweat', 'cg_face_cum1', 'face_man'], ['face', 'face_worriedasleep', 'face_sweat', 'cg_face_cum1', 'face_man', 'cg_face_cum2']]});
acg({'base': ['sleeping', 'sleeping_exp_peacefulasleep', 'sleeping_legsclosed', 'sleeping_bra', 'sleeping_legsclosed_pants'], 'sequence': [[0], ['sleeping', 'sleeping_exp_peacefulasleep', 'sleeping_legsclosed', 'sleeping_bra', 'sleeping_legsclosed_pants', 'sleeping_handonboob'], ['sleeping', 'sleeping_exp_peacefulasleep', 'sleeping_freeboobs', 'sleeping_legsclosed', 'sleeping_legsclosed_pants'], ['sleeping', 'sleeping_exp_peacefulasleep', 'sleeping_freeboobs', 'sleeping_legsclosed', 'sleeping_legsclosed_pants', 'sleeping_handonboob'], ['sleeping', 'sleeping_exp_peacefulasleep', 'sleeping_freeboobs', 'sleeping_legsopen', 'sleeping_legsopen_pants', 'sleeping_handonleg'], ['sleeping', 'sleeping_exp_sleepingmouthopen', 'sleeping_freeboobs', 'sleeping_legsopen', 'sleeping_wetpussy', 'sleeping_handonleg'], ['sleeping', 'sleeping_exp_peacefulasleep', 'sleeping_freeboobs', 'sleeping_legsopen', 'sleeping_legsopen_pussyopen', 'sleeping_wetpussy', 'sleeping_handonleg', 'cg_sleeping_man_approaching'], ['sleeping', 'sleeping_exp_sleepingworried', 'sleeping_freeboobs', 'sleeping_legsopen', 'sleeping_legsopen_pussyopen', 'sleeping_wetpussy', 'sleeping_handonleg', 'cg_sleeping_man_inserting', 'cg_pussywipe', 'cg_pussywipe_insert1'], ['sleeping', 'sleeping_exp_sleepingmouthopen', 'sleeping_freeboobs', 'sleeping_legsopen', 'sleeping_legsopen_pussyopen', 'sleeping_wetpussy', 'cg_sleeping_man_allin', 'cg_pussywipe', 'cg_pussywipe_insert2'], ['sleeping', 'sleeping_exp_wakingup', 'sleeping_freeboobs', 'sleeping_legsopen', 'sleeping_legsopen_pussyopen', 'sleeping_wetpussy', 'cg_sleeping_man_allin', 'cg_pussywipe', 'cg_pussywipe_insert2'], ['sleeping', 'sleeping_exp_surprisedcumming', 'sleeping_freeboobs', 'sleeping_legsopen', 'sleeping_legsopen_pussyopen', 'sleeping_wetpussy', 'cg_sleeping_man_allin', 'cg_sleeping_cuminside', 'cg_pussywipe', 'cg_pussywipe_insert2', 'cg_pussywipe_cum'], ['sleeping', 'sleeping_exp_surprisedcumming', 'sleeping_freeboobs', 'sleeping_legsopen', 'sleeping_legsopen_pussyopen', 'sleeping_wetpussy', 'cg_sleeping_man_approaching', 'cg_sleeping_cumspray'], ['sleeping', 'sleeping_exp_surprisedcumming', 'sleeping_freeboobs', 'sleeping_legsopen', 'sleeping_legsopen_pussyopen', 'sleeping_wetpussy', 'cg_sleeping_man_approaching', 'cg_sleeping_cumallover']]});
acg({'base': ['ontop', 'ontop_pubes', 'ontop_face1', 'ontop_dickinpussy'], 'sequence': [[0], ['ontop', 'ontop_pubes', 'ontop_face2', 'ontop_dickinpussy'], ['ontop', 'ontop_pubes', 'ontop_face3', 'ontop_dickinpussy'], ['ontop', 'ontop_pubes', 'ontop_face4', 'ontop_arms', 'ontop_dickinpussy'], ['ontop', 'ontop_pubes', 'ontop_exp_cumming', 'ontop_arms', 'ontop_dickinpussy'], ['ontop', 'ontop_pubes', 'ontop_dick', 'ontop_exp_cumming', 'ontop_cumspray', 'ontop_arms'], ['ontop', 'ontop_pubes', 'ontop_face4', 'ontop_dick', 'ontop_cum'], ['ontop', 'ontop_pubes', 'ontop_exp_cumming', 'ontop_dickinpussy', 'ontop_cuminside']]});
acg({'base': ['boat_on_sea'], 'sequence': [[0], ['boat_on_sea_sunset']]});
acg({'base': ['island_ending'], 'sequence': [[0]]});
characterImageData = new Object();
characterImageData.c = new Object();
var v2 = characterImageData.c;
v2.basic = ['cattail', 'dogtail', 'base', 'pubes', 'pants', 'arm_upper_right', 'arm_upper_left', 'bra', 'arm_lower_right', 'arm_lower_left', 'catears', 'elfears'];
v2.basicnude = ['cattail', 'dogtail', 'base', 'pubes', 'arm_upper_right', 'arm_upper_left', 'freeboobs', 'arm_lower_right', 'arm_lower_left', 'catears', 'elfears'];
v2.basicnude_armsbehind = ['cattail', 'dogtail', 'base', 'pubes', 'arm_upper_right', 'arm_upper_left', 'freeboobs', 'arm_behindback_right', 'arm_behindback_left', 'catears', 'elfears'];
v2.leftpeace = ['cattail', 'dogtail', 'base', 'pubes', 'pants', 'arm_upper_right', 'arm_upper_left', 'bra', 'arm_lower_right', 'arm_peacesign_left', 'catears', 'elfears'];
v2.bow = ['cattail', 'dogtail', 'base', 'pubes', 'pants', 'arm_upper_right', 'arm_upper_left', 'arm_lower_right', 'bra', 'arm_left_bow', 'catears', 'elfears'];
v2.bow_right_arm_cover = ['cattail', 'dogtail', 'base', 'pubes', 'pants', 'arm_upper_right', 'arm_upper_left', 'bra', 'arm_coverboob_right', 'arm_left_bow', 'catears', 'elfears'];
v2.clothed = ['cattail', 'dogtail', 'base', 'pubes', 'arm_upper_right', 'arm_upper_left', 'clothes', 'arm_lower_right', 'arm_lower_left', 'catears', 'elfears'];
v2.theatrical = ['cattail', 'dogtail', 'base', 'pubes', 'pants', 'arm_upper_right', 'bra', 'elfears', 'catears', 'arm_theatrical_left', 'arm_coverboob_right'];
v2.bloody_peacebow = ['cattail', 'dogtail', 'base', 'dirt', 'pubes', 'pants', 'arm_upper_right', 'arm_upper_left', 'bra', 'arm_peacesign_right', 'bloodpeace', 'arm_left_bow', 'catears', 'elfears'];
v2.bloody_bow = ['cattail', 'dogtail', 'base', 'dirt', 'pubes', 'pants', 'arm_upper_right', 'arm_upper_left', 'bra', 'arm_lower_right', 'blood_armdown', 'arm_left_bow', 'catears', 'elfears'];
v2.right_arm_cover = ['cattail', 'dogtail', 'base', 'pubes', 'pants', 'arm_upper_right', 'arm_upper_left', 'bra', 'arm_coverboob_right', 'arm_lower_left', 'catears', 'elfears'];
v2.left_arm_cover = ['cattail', 'dogtail', 'base', 'pubes', 'pants', 'arm_upper_right', 'arm_upper_left', 'bra', 'arm_lower_right', 'arm_coverboob_left', 'catears', 'elfears'];
v2.right_arm_behind_head = ['cattail', 'dogtail', 'base', 'pubes', 'pants', 'arm_upper_left', 'arm_behindhead_right', 'bra', 'arm_lower_left', 'catears', 'elfears'];
v2.left_arm_behind_head = ['cattail', 'dogtail', 'base', 'pubes', 'pants', 'arm_upper_right', 'arm_behindhead_left', 'bra', 'morestrapforarmbehindhead', 'arm_lower_right', 'catears', 'elfears'];
v2.both_arms_behind_head = ['cattail', 'dogtail', 'base', 'pubes', 'pants', 'arm_behindhead_right', 'arm_behindhead_left', 'bra', 'morestrapforarmbehindhead', 'catears', 'elfears'];
v2.both_arms_behind_back = ['cattail', 'dogtail', 'base', 'pubes', 'pants', 'bra', 'arm_upper_right', 'arm_upper_left', 'arm_behindback_right', 'arm_behindback_left', 'catears', 'elfears'];
v2.dirty = ['cattail', 'dogtail', 'base', 'dirt', 'pubes', 'pants', 'arm_upper_right', 'arm_upper_left', 'arm_upper_right', 'bra', 'arm_lower_right', 'arm_lower_left', 'catears', 'elfears'];
v2.dirty_right_arm_cover = ['cattail', 'dogtail', 'base', 'dirt', 'pubes', 'pants', 'arm_upper_right', 'arm_upper_left', 'bra', 'arm_coverboob_right', 'arm_lower_left', 'catears', 'elfears'];
v2.dirty_left_arm_cover = ['cattail', 'dogtail', 'base', 'dirt', 'pubes', 'pants', 'arm_upper_right', 'arm_upper_left', 'bra', 'arm_lower_right', 'arm_coverboob_left', 'catears', 'elfears'];
v2.dirty_both_arms_cover = ['cattail', 'dogtail', 'base', 'dirt', 'pubes', 'pants', 'arm_upper_right', 'arm_upper_left', 'bra', 'arm_coverboob_right', 'arm_coverboob_left', 'catears', 'elfears'];
v2.dirty_both_arms_behind_back = ['cattail', 'dogtail', 'base', 'dirt', 'pubes', 'pants', 'arm_upper_right', 'arm_upper_left', 'bra', 'arm_behindback_right', 'arm_behindback_left', 'catears', 'elfears'];
v2.braundone = ['cattail', 'dogtail', 'base', 'pubes', 'pants', 'arm_upper_right', 'arm_upper_left', 'freeboobs', 'bra_open', 'arm_lower_right', 'arm_lower_left', 'catears', 'elfears'];
v2.braundone_mirrored = ['cattail', 'dogtail', 'base', 'pubes', 'pants', 'arm_upper_right', 'arm_upper_left', 'freeboobs', 'bra_open', 'arm_coverboob_left', 'arm_lower_right', 'catears', 'elfears'];
v2.blushing = ['cattail', 'dogtail', 'base', 'blush', 'pubes', 'pants', 'arm_upper_right', 'arm_upper_left', 'bra', 'arm_lower_right', 'arm_lower_left', 'catears', 'elfears'];
v2.boob_squeeze = ['cattail', 'dogtail', 'base', 'blush', 'pubes', 'arm_upper_right', 'arm_upper_left', 'arm_coverboob_left', 'arm_coverboob_right', 'arm_turnscoverintosqueezingboobs', 'catears', 'elfears'];
v2.blushing_right_arm_behind_head = ['cattail', 'dogtail', 'base', 'blush', 'pubes', 'pants', 'arm_upper_left', 'arm_behindhead_right', 'bra', 'arm_lower_left', 'catears', 'elfears'];
v2.blushing_left_arm_behind_head = ['cattail', 'dogtail', 'base', 'blush', 'pubes', 'pants', 'arm_upper_right', 'arm_behindhead_left', 'bra', 'morestrapforarmbehindhead', 'arm_lower_right', 'catears', 'elfears'];
v2.flower = ['cattail', 'dogtail', 'base', 'pubes', 'pants', 'arm_upper_right', 'arm_upper_left', 'bra', 'arm_lower_right', 'arm_lower_left', 'catears', 'elfears', 'accessory_flowers'];
v2.flower_mirrored = ['cattail', 'dogtail', 'base', 'pubes', 'pants', 'arm_upper_right', 'arm_upper_left', 'bra', 'arm_lower_right', 'arm_lower_left', 'catears', 'elfears', 'accessory_flowers_flipped'];
v2.flower_blush = ['cattail', 'dogtail', 'base', 'blush', 'pubes', 'pants', 'arm_upper_right', 'arm_upper_left', 'bra', 'arm_lower_right', 'arm_lower_left', 'catears', 'elfears', 'accessory_flowers'];
v2.nude = ['base2_cattail', 'base2_dogtail', 'base2', 'base2_pubes', 'base2_pants', 'base2_catears', 'base2_elfears'];
v2.hi = ['hi_cattail', 'hi_dogtail', 'hi_base', 'hi_pants', 'hi_boobs_bra', 'hi_pants', 'hi_expression_smile', 'hi_eyes_wideopenfriendly', 'hi_catears', 'hi_elfears'];
cheats = new Array();
cheatsO = new Object();
activatedCheats = new Object();
regCheat('kittykitty', 'skinnyTail');
regCheat('fluffykitty', 'fluffyTail');
regCheat('legolasbride', 'elf');
regCheat('iloveboobies', 'topNude');
regCheat('odysseyofthelostbikinibottom', 'bottomNude');
regCheat('nudetella', 'nude');
regCheat('destined', 'sister');
regCheat('shavednotstirred', 'shaved');
regCheat('oldschoolcheat', 'unlockAllCgs');
regCheat('papabear', 'daughter');
regCheat('notsoclose', 'friend');
saveLayer = 20;
crapLayer = 21;
outOfMenuIntoGame = false;
this.createEmptyMovieClip('server', saveLayer);
this.createEmptyMovieClip('crap', crapLayer);
server._x = -2000;
serverSaveOK = false;
if (!localTesting) {
var v4 = new Object();
v4.onLoadInit = function (target_mc) {
serverSaveOK = true;
delete crap.onEnterFrame;
onlyOnceStartF();
};
var v5 = new MovieClipLoader();
v5.addListener(v4);
v5.loadClip('http://www.billkershaw.com/clients/b/server.swf', server);
}
crap.t = 0;
crap.onEnterFrame = function () {
++this.t;
if (this.t == 100 or localTesting) {
onlyOnceStartF();
delete this.onEnterFrame;
}
};
var v3 = crap.createEmptyMovieClip('arab', crap.getNextHighestDepth());
v3.createEmptyMovieClip('m1', 1);
v3.createEmptyMovieClip('m2', 2);
loadMovie('crusoe2.patch', v3.m2);
loadMovie('crusoe1.patch', v3.m1);
v3.t = 0;
v3.onEnterFrame = function () {
++this.t;
if (this.pledgeLevel != undefined) {
pledgeLevel = this.pledgeLevel;
if (pledgeLevel >= 5) {
premiumPatron = true;
}
if (pledgeLevel >= 10) {
premiumPlusPatron = true;
}
removeMovieClip(crap.tempPatchLoader);
removeMovieClip(this);
delete this.onEnterFrame;
} else {
if (this.t > 60) {
removeMovieClip(crap.tempPatchLoader);
removeMovieClip(this);
delete this.onEnterFrame;
}
}
};
}
function initVar2(loaded) {
removeMovieClip(dialogue);
removeMovieClip(bg);
removeMovieClip(fadeDealer);
removeMovieClip(pixelDealer);
removeMovieClip(menu);
removeMovieClip(soundMC);
currentlyPlaying = 'none';
musicBeingFadedOut = 'none';
sounds = {};
gameEnded = false;
outOfMenuIntoGame = false;
noticeDialogueActive = false;
skipping = false;
maxTextSpeed = 20;
fps = 40;
t = 0;
ifNests = 0;
zoom = 100;
gamePaused = false;
currentFilter = 'default';
gameWorldLayer = 1;
bgLayer = 1;
pixelBehindDealerLayer = 2;
backgroundEffectsLayer = 3;
foregroundObjectLayer = 5;
effectsLayer = 8;
pixelDealerLayer = 22;
mouseCheckerLayer = 10;
dialogueLayer = 11;
commentaryChibiLayer = 12;
wordPopUpLayer = 13;
noticeDialogueLayer = 14;
pixellationLayer = 23;
pauseHandlerLayer = 24;
soundLayer = 25;
transitionLayer = 26;
buttonLayer = 29;
menuLayer = 30;
muteLayer = 35;
notificationLayer = 69;
blackFrameLayer = 99;
nvlText = '';
log = '';
currentBackground = '';
notificationsA = new Array();
foregroundObjectsA = new Array();
variables = new Object();
characterDataA = new Array();
characterData = new Object();
newChar('c', 'Sophie', 'sophie', 16744576);
newChar('p', 'Me', '', 13421772);
newChar('s', 'Sophella', '', 16777062);
newChar('m', 'Marduka', '', 13382553);
newChar('h', 'Horgar', '', 16751001);
newChar('c_t', 'Taxcup', 'taxcup', 16711935, true);
newChar('c_b', 'Ben', 'ben', 13408563, true);
setVariable2F('fcousin', 'cousin');
setVariable2F('mcousin', 'cousin');
setVariable2F('fcuz', 'cuz');
setVariable2F('mcuz', 'cuz');
setVariable2F('cousins', 'cousins');
setVariable2F('firstCousins', 'first cousins');
setVariable2F('sophOrSis', 'Soph');
setVariable2F('myCousin', 'Sophie');
cheatsCheck();
cheatstring = '';
cheatListener = new Object();
Key.addListener(cheatListener);
cheatListener.onKeyDown = function () {
var v4 = chr(Key.getAscii());
if (v4 != ' ') {
cheatstring += v4;
}
var v3 = 100;
if (cheatstring.length > v3) {
cheatstring = cheatstring.slice(cheatstring.length - v3, cheatstring.length);
}
var v2 = 0;
while (v2 < cheats.length) {
var v1 = cheats[v2];
if (v1.cheat == (cheatstring.slice(-v1.cheat.length, cheatstring.length)).toLowerCase()) {
playSound2F('cheat_unlocked');
activateCheat(v1);
}
++v2;
}
};
parser = 1;
initJapanese();
this.createEmptyMovieClip('gwContainer', gameWorldLayer);
gw = gwContainer.createEmptyMovieClip('gw', 1);
bg = gw.createEmptyMovieClip('bg', bgLayer);
backgroundEffects = gw.createEmptyMovieClip('backgroundEffects', backgroundEffectsLayer);
effects = gw.createEmptyMovieClip('effects', effectsLayer);
foregroundObjects = gw.createEmptyMovieClip('foregroundObjects', foregroundObjectLayer);
var bf = createEmptyMovieClip('blackFrame', blackFrameLayer);
with (bf) {
beginFill(0, 100);
moveTo(-3000, -3000);
lineTo(screenWidth + 3000, -3000);
lineTo(screenWidth + 3000, screenHeight + 3000);
lineTo(-3000, screenHeight + 3000);
lineTo(-3000, -3000);
moveTo(0, 0);
lineTo(screenWidth, 0);
lineTo(screenWidth, screenHeight);
lineTo(0, screenHeight);
lineTo(0, 0);
endFill();
}
this.createEmptyMovieClip('soundMC', soundLayer);
this.createEmptyMovieClip('mouseChecker', mouseCheckerLayer);
this.createEmptyMovieClip('transitions', transitionLayer);
this.createEmptyMovieClip('pauseHandler', pauseHandlerLayer);
this.createEmptyMovieClip('buttons', buttonLayer);
this.createEmptyMovieClip('notifications', notificationLayer);
var mute = this.attachMovie('muteThing', 'muteThing', muteLayer);
if (generalSave.removeMuteButton) {
mute._visible = false;
}
mute.stop();
mute._x = screenWidth - mute._width;
mute._y = 0;
mute._alpha = 70;
mute.t = 0;
masterVolume = 1;
mute.back.onRollOver = function () {
mute._alpha = 100;
mute.t = 0;
};
mute.back.onRollOut = function () {
mute._alpha = 70;
mute.t = 0;
};
mute.onEnterFrame = function () {
++mute.t;
if (!gameMuted && mute.t % 50 == 49) {
if (mute._alpha > 10) {
mute._alpha -= 1;
}
}
};
mute.back.onPress = function () {
if (gameMuted) {
mute.gotoAndStop(1);
gameMuted = false;
masterVolume = 1;
if (musicPlaying) {
sounds[currentlyPlaying].setVolume(soundMC[currentlyPlaying].vol * masterVolume * globalSave.musicVolume);
}
} else {
mute.gotoAndStop(2);
gameMuted = true;
masterVolume = 0;
if (musicPlaying) {
sounds[currentlyPlaying].setVolume(0);
}
}
};
with (mouseChecker) {
beginFill(16711680);
moveTo(0, 0);
lineTo(screenWidth, 0);
lineTo(screenWidth, screenHeight);
lineTo(0, screenHeight);
lineTo(0, 0);
endFill();
}
mouseChecker._alpha = 0;
mouseChecker.onPress = function () {
if (!gamePaused) {
mouseClick = true;
}
};
var scrollListener = new Object();
scrollListener.onMouseWheel = function (delta) {
mouseScrolledPre = delta;
};
Mouse.addListener(scrollListener);
myKeys = new Object();
keys = ['UP', 'DOWN', 'SPACE', 'RIGHT', 'TAB', 'LEFT', 'BACKSPACE', 'ENTER', 'CONTROL', 'ESCAPE', ['H', 72], ['F', 70], ['R', 82], ['S', 83], ['L', 76], ['Q', 81], ['A', 65], ['O', 79], ['Z', 90], ['K', 75], ['M', 77], ['P', 80], ['plus', 107], ['minus', 109]];
}
function newChar(letter, pName, image, pColor, commentary) {
characterData[letter] = {'letter': letter, 'pName': pName, 'image': image, 'pColor': pColor, 'commentary': commentary};
characterDataA.push(characterData[letter]);
}
function cheatsCheck() {
var v3 = 0;
var v1 = 0;
while (v1 < cheats.length) {
var v2 = cheats[v1];
if (v2.activated) {
++v3;
}
unactivateCheat(v2);
++v1;
}
if (v3 == 1) {
notificationF('Cheat deactivated.');
} else {
if (v3 > 1) {
notificationF('Cheats deactivated.');
}
}
}
function resizeAndReplaceF() {
var v3 = Stage.height;
var v4 = Stage.width;
if (v3 == 0 or v4 == 0) {
v3 = screenHeight;
v4 = screenWidth;
}
var v6 = v3 / screenHeight;
var v5 = v4 / screenWidth;
windowScale = v6;
if (v5 < v6) {
windowScale = v5;
}
_root._x = -(v4 / 2) + screenWidth / 2;
_root._y = -(v3 / 2) + screenHeight / 2;
_root._yscale = 100 * windowScale;
_root._xscale = _root._yscale;
if (windowScale == v5) {
_root._y += (v3 - screenHeight * windowScale) / 2;
} else {
_root._x += (v4 - screenWidth * windowScale) / 2;
}
var v2 = 100 / ((windowScale + 1) / 2);
if (v2 < 50) {
v2 = 50;
}
if (v2 > 100) {
v2 = 100;
}
if (dialogue != undefined) {
dialogue._yscale = int(v2);
dialogue._xscale = dialogue._yscale;
dialogue._x = int(screenWidth / 2 - dialogue._width / 2);
dialogue._y = int(screenHeight - dialogue._height - 10);
}
if (choiceMC != undefined && choiceMC.style == '') {
choiceMC._yscale = int(v2);
choiceMC._xscale = choiceMC._yscale;
choiceMC._y = int(screenHeight / 2 - (choiceMC._height - choiceMC.minusY) / 2);
choiceMC._x = int((screenWidth - choiceMC._width) / 2);
}
}
function notificationF(note, stayLonger, delay) {
var v7 = notifications.getNextHighestDepth();
topMargin = 10;
margin = 20;
var v4 = notifications.createEmptyMovieClip('n' + v7, v7);
var v6 = new TextFormat();
v6.font = 'Century Gothic';
v6.size = 12;
var v5 = v4.createTextField('txt', 1, 0, 0, screenWidth * 0.8, margin * 3);
v5.embedFonts = true;
v5.textColor = 16777215;
v5.mouseWheelEnabled = false;
v5.html = true;
v5.multiline = true;
v5.wordWrap = true;
v5.htmlText = '<b>' + note + '</b>';
v5.setTextFormat(v6);
var v8 = new flash.filters.DropShadowFilter(0, 45, 0, 0.8, 4, 4, 50, 1, false, false, false);
v5.filters = [v8];
v4.margin = margin;
v4._y -= margin;
v4._x = topMargin;
v4.targetY = topMargin;
v4.t = 0;
v4.endt = 80;
v4.del = 0;
if (delay != undefined) {
v4.del = delay;
}
if (stayLonger) {
v4.endt = 160;
}
v4.onEnterFrame = function () {
if (this.t == this.del) {
var v2 = notificationsA.length - 1;
while (v2 > -1) {
var v3 = notificationsA[v2];
if (v3.remove) {
removeMovieClip(v3);
notificationsA.splice(v2, 1);
}
v3.targetY += margin;
--v2;
}
notificationsA.push(this);
}
if (this.t >= this.del) {
if (this._y < this.targetY) {
var v4 = this.targetY - this._y;
this._y += Math.ceil(v4 / 4);
}
if (this.t > this.endt + this.del) {
this._alpha -= 10;
}
if (this._alpha <= 0) {
this.remove = true;
delete this.onEnterFrame;
}
}
++this.t;
};
}
function nkF(romaji, hira, kata) {
hiragana[romaji] = hira;
if (kata == undefined) {
kata = hira;
}
katakana[romaji] = kata;
}
function nrF(existingWord, newReading) {
japanese[newReading] = japanese[existingWord];
}
function nwF(word, defs) {
var v1 = new Object();
v1.word = word;
v1.defs = defs;
japanese[word] = v1;
}
function initJapanese() {
japDisplay = 'romaji';
hiragana = new Object();
katakana = new Object();
japanese = new Object();
nkF('dot', '。');
nkF('nakaguro', 'ï½¥');
nkF('threeDots', '・・・');
nkF('openQuote', '「');
nkF('endQuote', 'ã€');
nkF('questionMark', '?');
nkF('longVowelMark', 'ー');
nkF('exclamationMark', 'ï¼');
nkF('comma', 'ã€', 'ã€');
nkF('a', 'ã‚', 'ã‚¢');
nkF('i', 'ã„', 'イ');
nkF('u', 'ã†', 'ウ');
nkF('e', 'ãˆ', 'エ');
nkF('o', 'ãŠ', 'オ');
nkF('ka', 'ã‹', 'ã‚«');
nkF('ki', 'ã', 'ã‚');
nkF('ku', 'ã', 'ク');
nkF('ke', 'ã‘', 'ケ');
nkF('ko', 'ã“', 'コ');
nkF('sa', 'ã•', 'サ');
nkF('shi', 'ã—', 'ã‚·');
nkF('su', 'ã™', 'ス');
nkF('se', 'ã›', 'ã‚»');
nkF('so', 'ã', 'ソ');
nkF('ta', 'ãŸ', 'ã‚¿');
nkF('chi', 'ã¡', 'ãƒ');
nkF('tsu', 'ã¤', 'ツ');
nkF('te', 'ã¦', 'テ');
nkF('to', 'ã¨', 'ト');
nkF('na', 'ãª', 'ナ');
nkF('ni', 'ã«', 'ニ');
nkF('nu', 'ã¬', 'ヌ');
nkF('ne', 'ã', 'ãƒ');
nkF('no', 'ã®', 'ノ');
nkF('ha', 'ã¯', 'ãƒ');
nkF('hi', 'ã²', 'ヒ');
nkF('fu', 'ãµ', 'フ');
nkF('he', 'ã¸', 'ヘ');
nkF('ho', 'ã»', 'ホ');
nkF('ma', 'ã¾', 'マ');
nkF('mi', 'ã¿', 'ミ');
nkF('mu', 'む', 'ム');
nkF('me', 'ã‚', 'メ');
nkF('mo', 'も', 'モ');
nkF('ya', 'や', 'ヤ');
nkF('yu', 'ゆ', 'ユ');
nkF('yo', 'よ', 'ヨ');
nkF('ra', 'ら', 'ラ');
nkF('ri', 'り', 'リ');
nkF('ru', 'る', 'ル');
nkF('re', 'れ', 'レ');
nkF('ro', 'ã‚', 'ãƒ');
nkF('ba', 'ã°', 'ãƒ');
nkF('bi', 'ã³', 'ビ');
nkF('bu', 'ã¶', 'ブ');
nkF('be', 'ã¹', 'ベ');
nkF('bo', 'ã¼', 'ボ');
nkF('pa', 'ã±', 'パ');
nkF('pi', 'ã´', 'ピ');
nkF('pu', 'ã·', 'プ');
nkF('pe', 'ãº', 'ペ');
nkF('po', 'ã½', 'ポ');
nkF('da', 'ã ', 'ダ');
nkF('di', 'ã¢', 'ヂ');
nkF('du', 'ã¥', 'ヅ');
nkF('de', 'ã§', 'デ');
nkF('do', 'ã©', 'ド゚');
nkF('ga', 'ãŒ', 'ガ');
nkF('gi', 'ãŽ', 'ã‚®');
nkF('gu', 'ã', 'ã‚°');
nkF('ge', 'ã’', 'ゲ');
nkF('go', 'ã”', 'ゴ゚');
nkF('za', 'ã–', 'ザ');
nkF('ji', 'ã˜', 'ジ');
nkF('zu', 'ãš', 'ズ');
nkF('ze', 'ãœ', 'ゼ');
nkF('zo', 'ãž', 'ゾ');
nkF('kya', 'ãゃ', 'ã‚ャ');
nkF('kyu', 'ãã‚…', 'ã‚ュ');
nkF('kyo', 'ãょ', 'ã‚ョ');
nkF('sha', 'ã—ゃ', 'シャ');
nkF('shu', 'ã—ã‚…', 'シュ');
nkF('she', 'ã—ã‡', 'シェ');
nkF('sho', 'ã—ょ', 'ショ');
nkF('ja', 'ã˜ã‚ƒ', 'ジャ');
nkF('ju', 'ã˜ã‚…', 'ジュ');
nkF('je', 'ã˜ã‡', 'ジェ');
nkF('jo', 'ã˜ã‚‡', 'ジョ');
nkF('cha', 'ã¡ã‚ƒ', 'ãƒãƒ£');
nkF('chu', 'ã¡ã‚…', 'ãƒãƒ¥');
nkF('che', 'ã¡ã‡', 'ãƒã‚§');
nkF('cho', 'ã¡ã‚‡', 'ãƒãƒ§');
nkF('nya', 'ã«ã‚ƒ', 'ニャ');
nkF('nyu', 'ã«ã‚…', 'ニュ');
nkF('nyo', 'ã«ã‚‡', 'ニョ');
nkF('hya', 'ã²ã‚ƒ', 'ヒャ');
nkF('hyu', 'ã²ã‚…', 'ヒュ');
nkF('hyo', 'ã²ã‚‡', 'ヒョ');
nkF('mya', 'ã¿ã‚ƒ', 'ミャ');
nkF('myu', 'ã¿ã‚…', 'ミュ');
nkF('myo', 'ã¿ã‚‡', 'ミョ');
nkF('rya', 'りゃ', 'リャ');
nkF('ryu', 'りゅ', 'リュ');
nkF('ryo', 'りょ', 'リョ');
nkF('wa', 'ã‚', 'ワ');
nkF('we', 'ã†ã‡', 'ウェ');
nkF('wo', 'を', 'ヲ');
nkF('wi', 'ã†ãƒ', 'ウィ');
nkF('n', 'ん', 'ン');
nkF('ltsu', 'ã£', 'ッ');
nkF('hwa', 'ã¯', 'ãƒ');
}
function onlyOnceStartF() {
globalSave = checkWhichSave('globalSave', 'general');
generalSave = checkWhichSave(basicGameData.gameFile, 'general');
if (!generalSave.defined) {
generalSave = new Object();
generalSave.defined = true;
generalSave.unlockedCg = new Object();
generalSave.endings = new Object();
generalSave.endingsA = new Array();
generalSave.readDialogueO = new Object();
generalSave.readDialogues = 0;
generalSave.timePlayed = 0;
}
if (generalSave.timePlayed == undefined) {
generalSave.timePlayed = 0;
}
if (!globalSave.defined) {
globalSave = new Object();
globalSave.defined = true;
globalSave.playedGamesA = new Array();
globalSave.musicVolume = 100;
globalSave.sfxVolume = 100;
globalSave.voiceVolume = 100;
globalSave.textSpeed = 5;
globalSave.stats = new Object();
globalSave.stats.playedGamesO = new Object();
globalSave.stats.playedGamesA = new Array();
}
if (!globalSave.stats.playedGamesO[basicGameData.gameFile]) {
globalSave.stats.playedGamesO[basicGameData.gameFile] = true;
globalSave.stats.playedGamesA.push(basicGameData.gameFile);
}
save3F(basicGameData.gameFile, 'general', generalSave);
save3F('globalSave', 'general', globalSave);
startF();
}
function startF(jump) {
initVar2(false);
if (jump != undefined) {
jumpF(jump);
} else {
parserF(parser);
}
}
function checkWhichSave(gameFile, saveFile) {
var v3 = SharedObject.getLocal(gameFile, '/');
var v1 = v3.data[saveFile];
if (serverSaveOK) {
sd = server.loadFromServer(gameFile);
var v2 = sd[saveFile];
if (v2.timeStamp == undefined && v1.timeStamp == undefined) {
return v1;
}
if (v2.timeStamp >= v1.timeStamp or v1.timeStamp == undefined) {
v1 = v2;
}
}
return v1;
}
function loadF(saveFile) {
initVar2(true);
stopMusic2F();
stopAllSounds();
var v3 = checkWhichSave(basicGameData.gameFile, saveFile);
if (v3.parser == undefined or isNaN(v3.parser)) {
} else {
outOfMenuIntoGame = true;
notificationF('Game successfully loaded.');
parser = v3.parser;
if (!identicalArrayCheck(v3.currentParse, parsing['s' + parser])) {
var v8 = findRightPlaceInParser(parser, v3.currentParse, v3.previousParse);
if (v8 == 0) {
} else {
parser = v8;
}
}
currentFilter = v3.currentFilter;
variables = v3.variables.clone();
v8 = v3.scene;
var v7 = v8.addedCgA;
addBg(v8.current, true, v8.xFlipped, v8.yFlipped, v8.x, v8.y, v8.heightStretchToFit);
if (v3.currentlyPlaying != 'none') {
playMusic2F(v3.currentlyPlaying);
}
var v5 = 0;
while (v5 < v7.length) {
addToCgF(v7[v5], '', '', true);
++v5;
}
characterData = new Object();
characterDataA = new Array();
var v4 = 0;
while (v4 < v3.characterDataA.length) {
var v2 = v3.characterDataA[v4];
newChar(v2.letter, v2.pName, v2.image, v2.pColor, v2.commentary);
++v4;
}
var v6 = 0;
while (v6 < v3.foregroundObjects.length) {
var v1 = v3.foregroundObjects[v6];
if (v1.mc && !v1.isCharacter) {
mcItem2F(v1.who, v1.x, v1.y, v1.depth);
} else {
foregroundObjectF(v1.who, v1.mood, v1.mood2, v1.x, v1.y, v1.depth, v1.xFlipped, v1.yFlipped, v1.isCharacter, v1.scaleToFullScreen, v1.zoom);
}
++v6;
}
}
parserF(parser);
}
function findRightPlaceInParser(p, pA, cPA) {
var v5 = false;
var v4 = 0;
var v1 = p + 1;
while (v1 < p + 101) {
if (identicalArrayCheck(pA, parsing['s' + v1])) {
v5 = true;
v4 = v1;
break;
}
++v1;
}
if (!v5) {
v1 = p - 1;
while (v1 > p - 101) {
if (identicalArrayCheck(pA, parsing['s' + v1])) {
v5 = true;
v4 = v1;
break;
}
--v1;
}
}
return v4;
}
function identicalArrayCheck(ar1, ar2) {
var v3 = true;
if (ar1.length == ar2.length) {
var v1 = 0;
while (v1 < ar1.length) {
if (ar1[v1] != ar2[v1]) {
v3 = false;
break;
}
++v1;
}
return v3;
}
v3 = false;
return v3;
}
function saveF(saveFile) {
var v3 = new Object();
v3.variables = variables.clone();
v3.parser = parser;
v3.previousParse = parsing['s' + (parser - 1)].clone();
v3.currentParse = parsing['s' + parser].clone();
v3.currentlyPlaying = currentlyPlaying;
v3.characterDataA = characterDataA.clone();
v3.currentFilter = currentFilter;
var v22 = new Date();
v3.timeStamp = v22.getTime();
var v17 = new Date();
var v20 = v17.getHours();
if ((String(seconds)).length == 1) {
v20 = '0' + v20;
}
var v19 = v17.getMinutes();
if ((String(v19)).length == 1) {
v19 = '0' + v19;
}
var seconds = v17.getSeconds();
if ((String(seconds)).length == 1) {
seconds = '0' + seconds;
}
v3.saveDate = v17.getDate() + '/' + (v17.getMonth() + 1) + '/' + v17.getFullYear() + ', ' + v20 + ':' + v19 + ':' + seconds;
v3.scene = {'current': currentBackground, 'x': bg.x, 'y': bg.y, 'w': bg._width, 'h': bg._height, 'xFlipped': bg.xFlipped, 'yFlipped': bg.yFlipped, 'addedCgA': bg.addedCgA, 'heightStretchToFit': bg.heightStretchToFit};
var v16 = new Array();
for (var v18 in foregroundObjectsA) {
var v1 = foregroundObjectsA[v18];
var v2 = {'who': v1.who, 'mood': v1.mood, 'mood2': v1.mood2, 'zoom': v1.zoom, 'x': v1.x, 'y': v1.y, 'depth': v1.depth, 'mc': v1.mc, 'scaleToFullScreen': v1.scaleToFullScreen, 'isCharacter': v1.isCharacter, 'xFlipped': v1.xFlipped, 'yFlipped': v1.yFlipped};
v16.push(v2);
}
v3.foregroundObjects = v16;
var v21 = v3.clone();
save3F(basicGameData.gameFile, saveFile, v21);
}
function save3F(gameFile, saveFile, object) {
var v2 = new Date();
object.timeStamp = v2.getTime();
server.saveOnServer(gameFile, saveFile, object);
var v1 = SharedObject.getLocal(gameFile, '/');
v1.data[saveFile] = object;
v1.flush();
}
function continueLastGameF() {
loadF('autoSave');
}
function centerXF(a) {
a._x = screenWidth / 2 - a._width / 2;
}
function centerYF(a) {
a._y = screenHeight / 2 - a._height / 2;
}
function openMainMenuF(menu) {
menuF(menu, 'backToStartMenu');
}
function barizeReleaseF(thing, variable, min, max) {
var v1 = thing.bar._width / thing.fullW;
v1 = Math.round(min + v1 * (max - min));
thing.bar._width = thing.fullW * ((v1 - min) / (max - min));
globalSave[variable] = v1;
if (variable == 'musicVolume' && musicPlaying) {
sounds[currentlyPlaying].setVolume(soundMC[currentlyPlaying].vol * globalSave.musicVolume * masterVolume);
}
}
function barize(thing, variable, min, max, integer) {
thing.fullW = 250;
thing.onPress = function () {
this.onEnterFrame = function () {
var v2 = this._xmouse;
var v3 = this._ymouse;
if (v2 < -1 or v2 > this._width or v3 < 0 or v3 > this._height) {
if (v2 > this._width) {
v2 = this._width;
} else {
if (v2 < 0.5) {
v2 = 0;
}
}
barizeReleaseF(this, variable, min, max);
delete this.onEnterFrame;
}
if (v2 > this.fullW) {
v2 = this.fullW;
} else {
if (v2 <= 0.5) {
v2 = 0;
}
}
this.bar._width = v2;
barizeReleaseF(this, variable, min, max);
};
};
thing.onRelease = function () {
barizeReleaseF(this, variable, min, max, integer, a);
delete this.onEnterFrame;
};
}
function squareFill(target, color, sX, sY, gX, gY) {
with (target) {
beginFill(color);
moveTo(sX, sY);
lineTo(gX, sY);
lineTo(gX, gY);
lineTo(sX, gY);
lineTo(sX, sY);
endFill();
}
}
function restartF() {
stopMusic2F();
stopAllSounds();
startF('startMenu2');
}
function menuF(a, onBackPress) {
gamePaused = true;
if (menu == undefined) {
var menu = this.createEmptyMovieClip('menu', menuLayer);
menu.attachMovie('menuBack', 'menuBack', 1, {'_width': screenWidth, '_height': screenHeight});
menu2F(a, onBackPress);
} else {
var v2 = menu.getInstanceAtDepth(menu.getNextHighestDepth() - 1);
v2.t = 0;
v2.t2 = 0;
v2.onEnterFrame = function () {
this.t += 0.25;
this._alpha -= 12;
this._y += this.t;
this.back._y -= this.t;
this.titleT._y -= this.t;
if (this._alpha <= 0) {
++this.t2;
if (this.t2 > 3) {
menu2F(a, onBackPress);
removeMovieClip(this);
delete this.onEnterFrame;
}
}
};
}
}
function menu2F(a, onBackPress) {
menu.t = t;
var v29 = 0.18;
if (a == 'menu') {
var v15 = menu.attachMovie('mainMenu', 'menuScreen', menu.getNextHighestDepth());
v15._alpha = 0;
v15.onEnterFrame = function () {
if (this._alpha <= 100) {
this._alpha += 10;
}
if ((myKeys.ESCAPE or myKeys.BACKSPACE or myKeys.P or myKeys.M) && t > menu.t) {
removeMenuF();
}
};
v15._x = screenWidth / 2 - v15._width / 2;
v15._y = screenHeight / 2 - v15._height / 2;
v15.back.onRelease = function () {
removeMenuF();
};
v15.loadGame.onRelease = function () {
menuF('load');
};
v15.saveGame.onRelease = function () {
menuF('save');
};
v15.log.onRelease = function () {
menuF('log');
};
v15.options.onRelease = function () {
menuF('options');
};
v15.help.onRelease = function () {
menuF('keyboardShortcuts');
};
v15.stats.onRelease = function () {
menuF('stats');
};
v15.pledge.onRelease = function () {
url2F('patreonURL');
};
v15.startOver.onRelease = function () {
restartF();
};
} else {
if (a == 'stats') {
var v33 = Math.round(generalSave.timePlayed / fps);
var v32 = Math.floor(v33 / 60);
var v41 = Math.floor(v32 / 60);
v33 -= v32 * 60;
v32 -= v41 * 60;
if ((String(v33)).length == 1) {
v33 = '0' + v33;
}
if ((String(v32)).length == 1) {
v32 = '0' + v32;
}
if ((String(v41)).length == 1) {
v41 = '0' + v41;
}
var v11 = v41 + ':' + v32 + ':' + v33;
var v45 = Math.round((generalSave.readDialogues / totalNumberOfDialogues) * 1000) / 10;
if (v45 > 100) {
v45 = 100;
}
var v46 = 'N/A';
if (premiumPlusPatron) {
v46 = '<b>Premium Plus</b> ($10+ pledger)';
} else {
if (premiumPatron) {
v46 = '<b>Premium Plus</b> ($5+ pledger)';
}
}
var v51 = '\nSTATS\n\nTime played:\t\t\t\t' + v11 + '\n\nEndings:\t\t\t\t\t' + generalSave.endingsA.length + ' / ' + allUniqueEndings.length + '\n\nDialogue read:\t\t\t\t' + v45 + '%\n\nPremium content level:\t\t' + v46;
var v15 = menu.createEmptyMovieClip('keyScreen', menu.getNextHighestDepth());
v15._alpha = 0;
v15.onEnterFrame = function () {
if (this._alpha <= 100) {
this._alpha += 10;
}
if ((myKeys.ESCAPE or myKeys.BACKSPACE or myKeys.K or myKeys.P) && t > menu.t) {
if (onBackPress == 'backToGame') {
removeMenuF();
} else {
menuF('menu');
}
}
};
var v31 = new TextFormat();
v31.font = 'Arvo';
v31.size = 18;
var v49 = 20;
var v40 = v15.attachMovie('backIcon', 'back', 2);
v40._x = screenWidth / 2 - v40._width / 2;
v40._y = screenHeight - v40._height * 1.5;
var main = v15.createTextField('main', 1, v49 * 8, v49, screenWidth - v49 * 16, screenHeight - v49 * 6);
main.embedFonts = true;
main.textColor = 16777215;
main.mouseWheelEnabled = true;
main.html = true;
main.selectable = false;
main.multiline = true;
main.wordWrap = true;
main.htmlText = v51;
main.setTextFormat(v31);
if (onBackPress == 'backToGame') {
v15.back.onRelease = function () {
removeMenuF();
};
} else {
v15.back.onRelease = function () {
menuF('menu');
};
}
} else {
if (a == 'keyboardShortcuts') {
var v51 = '\nKEYBOARD SHORTCUTS\n\nSpace\tNext/select\nEnter\tNext/select\nF\t\tEnter/exit fullscreen (desktop version only)\nK\t\tDisplay keyboard shortcuts\nL\t\tDisplay the load game menu\nM\t\tOpen the main menu\nO\t\tDisplay the options menu\nP\t\tEnter/exit menu\nQ\t\tQuicksave\nR\t\tDisplay the log\nS\t\tDisplay the save game menu\nZ\t\tZoom in/out\n+\t\tZoom in\n-\t\tZoom out\nBackspace\t\tEnter/exit menu\nCtrl\t\tSkip mode (hold)\nTab\t\tSkip conversation (toggle)';
var v15 = menu.createEmptyMovieClip('keyScreen', menu.getNextHighestDepth());
v15._alpha = 0;
v15.onEnterFrame = function () {
if (this._alpha <= 100) {
this._alpha += 10;
}
if ((myKeys.ESCAPE or myKeys.BACKSPACE or myKeys.K or myKeys.P) && t > menu.t) {
if (onBackPress == 'backToGame') {
removeMenuF();
} else {
menuF('menu');
}
}
};
var v31 = new TextFormat();
v31.font = 'Arvo';
v31.size = 18;
var v49 = 20;
var v40 = v15.attachMovie('backIcon', 'back', 2);
v40._x = screenWidth / 2 - v40._width / 2;
v40._y = screenHeight - v40._height * 1.5;
var main = v15.createTextField('main', 1, v49 * 8, v49, screenWidth - v49 * 16, screenHeight - v49 * 6);
main.embedFonts = true;
main.textColor = 16777215;
main.mouseWheelEnabled = true;
main.html = true;
main.selectable = false;
main.multiline = true;
main.wordWrap = true;
main.htmlText = v51;
main.setTextFormat(v31);
if (onBackPress == 'backToGame') {
v15.back.onRelease = function () {
removeMenuF();
};
} else {
v15.back.onRelease = function () {
menuF('menu');
};
}
} else {
if (a == 'log') {
var v15 = menu.createEmptyMovieClip('logScreen', menu.getNextHighestDepth());
v15._alpha = 0;
v15.onEnterFrame = function () {
if (this._alpha <= 100) {
this._alpha += 10;
}
if (myKeys.DOWNPressed) {
main.scroll += 1;
}
if (myKeys.UPPressed) {
main.scroll -= 1;
}
if ((myKeys.ESCAPE or myKeys.BACKSPACE or myKeys.R or myKeys.P) && t > menu.t) {
if (onBackPress == 'backToGame') {
removeMenuF();
} else {
menuF('menu');
}
}
};
var v31 = new TextFormat();
v31.font = 'Arvo';
v31.size = 16;
var v49 = 20;
var v40 = v15.attachMovie('backIcon', 'back', 2);
v40._x = screenWidth / 2 - v40._width / 2;
v40._y = screenHeight - v40._height * 1.5;
var main = v15.createTextField('main', 1, v49 * 8, v49, screenWidth - v49 * 16, screenHeight - v49 * 6);
main.embedFonts = true;
main.textColor = 16777215;
main.mouseWheelEnabled = true;
main.html = true;
main.multiline = true;
main.wordWrap = true;
main.htmlText = log;
main.setTextFormat(v31);
if (onBackPress == 'backToGame') {
v15.back.onRelease = function () {
removeMenuF();
};
} else {
v15.back.onRelease = function () {
menuF('menu');
};
}
} else {
if (a == 'load') {
var v15 = menu.createEmptyMovieClip('loadScreen', menu.getNextHighestDepth());
v15._alpha = 0;
v15.onEnterFrame = function () {
if (this._alpha <= 100) {
this._alpha += 10;
}
if ((myKeys.ESCAPE or myKeys.BACKSPACE or myKeys.P or myKeys.L) && t > menu.t) {
if (onBackPress == 'backToStartMenu') {
removeMenuF();
jumpF('startMenu3');
} else {
if (onBackPress == 'backToGame') {
removeMenuF();
} else {
menuF('menu');
}
}
}
};
var v43 = v15.attachMovie('loadGame', 'titleT', 132);
var v40 = v15.attachMovie('backIcon', 'back', 12);
if (onBackPress == 'backToStartMenu') {
v40.onPress = function () {
removeMenuF();
jumpF('startMenu3');
};
} else {
if (onBackPress == 'backToGame') {
v40.onPress = function () {
removeMenuF();
};
} else {
v40.onPress = function () {
menuF('menu');
};
}
}
var v16 = -1;
var v13 = 0;
while (v13 < 12) {
if (v13 != 1 && v13 != 4 && v13 != 5) {
++v16;
var v30 = v29;
var v10 = screenWidth * v30;
var v8 = screenHeight * v30;
var v3 = 12;
var v34 = 50;
var v26 = 1;
var v27 = 20;
if (v13 == 0) {
var v23 = (v10 + v3) * 2 + v26;
var v24 = (v8 + v3) * 2 + (v26 + v27);
v10 = v23 - v3;
v8 = v24 - v3;
v30 = v8 / screenHeight;
}
var v2 = v15.createEmptyMovieClip('g', v15.getNextHighestDepth());
var w = v10 + v3;
var h = v8 + v3 + v27;
squareFill(v2, 10592421, 0, 0, w, h);
var b = v2.createEmptyMovieClip('b', 1);
b._x = v3 / 2;
b._y = v3 / 2;
var v6 = v2.attachMovie('fileButtonSmaller', 'k', 3);
var v4 = v2.attachMovie('overButtonShade', 'shade', 4);
var v5 = v2.attachMovie('fileButton', 'fntc', 5);
v2._x = (v13 % 4) * (v10 + v26 + v3);
v2._y = v34 + Math.floor(v13 / 4) * (v26 + v8 + v3 + v27);
v6._y = v8 + 4;
v6._x = v3 / 2 + v10 - v6._width;
v5._y = v3 / 2 + v8 - v5._height;
v5._x = v3 / 2;
v4._width = v10;
v4._x = v3 / 2;
v4._y = v8 + v3 / 2 - v4._height;
v2.fileNo = v16 + 1;
var tf = 'file' + (v2.fileNo - 2);
var v22 = 'FILE ' + (v2.fileNo - 2);
if (v16 == 0) {
tf = 'autoSave';
v22 = 'AUTO';
} else {
if (v16 == 1) {
tf = 'quickSave';
v22 = 'QUICK';
}
}
v2.tf = tf;
var v20 = checkWhichSave(basicGameData.gameFile, tf);
var v11 = v20.saveDate;
if (v11 == undefined) {
v11 = 'EMPTY';
v4.removeMovieClip();
} else {
var v21 = makeSmallScreenshot(v30, v20.scene, v20.foregroundObjects);
b.attachBitmap(v21, 10, auto, true);
b._width = v10;
}
if (v11 == 'EMPTY') {
v5.main.htmlText = '';
v6.main.htmlText = '';
} else {
v5.main.htmlText = v22;
v6.main.htmlText = v11;
}
v2.w = w;
v2.h = h;
v2.onRollOver = function () {
playSound2F('buttonUp');
squareFill(this, 14277081, 0, 0, this.w, this.h);
};
v2.onRollOut = function () {
squareFill(this, 10592421, 0, 0, this.w, this.h);
};
if (v11 != 'EMPTY') {
v2.onPress = function () {
loadF(this.tf);
};
}
}
++v13;
}
v43._x = v15._width / 2 - v43._width / 2;
v40._x = v15._width / 2 - v40._width / 2;
v40._y = v15._height + v34 - v43._height;
v15._x = screenWidth / 2 - v15._width / 2;
v15._y = screenHeight / 2 - v15._height / 2;
} else {
if (a == 'options') {
var v15 = menu.attachMovie('optionsScreen', 'optionsScreen', menu.getNextHighestDepth());
v15._alpha = 0;
v15.onEnterFrame = function () {
if (this._alpha <= 100) {
this._alpha += 10;
}
if ((myKeys.ESCAPE or myKeys.BACKSPACE or myKeys.P or myKeys.O) && t > menu.t) {
if (onBackPress == 'backToStartMenu') {
save3F('globalSave', 'general', globalSave);
save3F(basicGameData.gameFile, 'general', generalSave);
removeMenuF();
jumpF('startMenu3');
} else {
if (onBackPress == 'backToGame') {
save3F('globalSave', 'general', globalSave);
save3F(basicGameData.gameFile, 'general', generalSave);
removeMenuF();
} else {
save3F('globalSave', 'general', globalSave);
save3F(basicGameData.gameFile, 'general', generalSave);
menuF('menu');
}
}
}
};
var v40 = v15.back;
v40.main.htmlText = 'BACK';
if (onBackPress == 'backToStartMenu') {
v40.onPress = function () {
save3F('globalSave', 'general', globalSave);
save3F(basicGameData.gameFile, 'general', generalSave);
removeMenuF();
jumpF('startMenu3');
};
} else {
if (onBackPress == 'backToGame') {
v40.onPress = function () {
save3F('globalSave', 'general', globalSave);
save3F(basicGameData.gameFile, 'general', generalSave);
removeMenuF();
};
} else {
v40.onPress = function () {
save3F('globalSave', 'general', globalSave);
save3F(basicGameData.gameFile, 'general', generalSave);
menuF('menu');
};
}
}
v15._x = screenWidth / 2 - v15._width / 2;
v15._y = screenHeight / 2 - v15._height / 2;
v15.mVolume.bar._xscale = globalSave.musicVolume;
v15.sVolume.bar_xscale = globalSave.soundVolume;
v15.clickHere.onPress = function () {
url2F('patreonURL');
};
if (generalSave.removeMuteButton) {
v15.removeMuteButton.stop();
} else {
v15.removeMuteButton.nextFrame();
}
if (!premiumPlusPatron && !generalSave.unlockedCommentary) {
v15.commentary.stop();
} else {
if (generalSave.commentary) {
v15.commentary.gotoAndStop(2);
} else {
v15.commentary.gotoAndStop(3);
}
}
if (globalSave.skipOnlyUnreadDialogue) {
v15.skipOnlyUnreadDialogue.stop();
} else {
v15.skipOnlyUnreadDialogue.nextFrame();
}
if (globalSave.continueSkippingAfterChoices) {
v15.continueSkippingAfterChoices.stop();
} else {
v15.continueSkippingAfterChoices.nextFrame();
}
v15.removeMuteButton.butt.onRelease = function () {
if (generalSave.removeMuteButton) {
this._parent.gotoAndStop(2);
generalSave.removeMuteButton = false;
muteThing._visible = true;
muteThing._alpha = 70;
} else {
this._parent.gotoAndStop(1);
generalSave.removeMuteButton = true;
muteThing._visible = false;
}
};
if (v15.commentary._currentframe > 1) {
v15.commentary.butt.onRelease = function () {
if (generalSave.commentary) {
this._parent.gotoAndStop(3);
generalSave.commentary = false;
} else {
this._parent.gotoAndStop(2);
generalSave.commentary = true;
}
};
}
v15.continueSkippingAfterChoices.butt.onRelease = function () {
if (globalSave.continueSkippingAfterChoices) {
this._parent.gotoAndStop(2);
globalSave.continueSkippingAfterChoices = false;
} else {
this._parent.gotoAndStop(1);
globalSave.continueSkippingAfterChoices = true;
}
};
v15.skipOnlyUnreadDialogue.butt.onRelease = function () {
if (globalSave.skipOnlyUnreadDialogue) {
this._parent.gotoAndStop(2);
globalSave.skipOnlyUnreadDialogue = false;
} else {
this._parent.gotoAndStop(1);
globalSave.skipOnlyUnreadDialogue = true;
}
};
var v44 = 1;
var v48 = maxTextSpeed;
var v42 = 0;
var v50 = 100;
var v47 = v15.tSpeed._width;
v15.tSpeed.bar._width = v47 * ((globalSave.textSpeed - v44) / (v48 - v44));
v15.mVolume.bar._width = v47 * ((globalSave.musicVolume - v42) / (v50 - v42));
v15.sVolume.bar._width = v47 * ((globalSave.sfxVolume - v42) / (v50 - v42));
barize(v15.tSpeed, 'textSpeed', v44, v48, true);
barize(v15.mVolume, 'musicVolume', 0, 100, true);
barize(v15.sVolume, 'sfxVolume', 0, 100, true);
} else {
if (a == 'gallery') {
var v15 = menu.createEmptyMovieClip('galleryScreen', menu.getNextHighestDepth());
v15._alpha = 0;
v29 = 0.16;
v15.onEnterFrame = function () {
if (this._alpha < 100) {
this._alpha += 10;
}
if ((myKeys.ESCAPE or myKeys.BACKSPACE or myKeys.P) && t > menu.t) {
if (onBackPress == 'backToStartMenu') {
removeMenuF();
jumpF('startMenu3');
} else {
menuF('menu');
}
}
};
var v43 = v15.attachMovie('gallery', 'titleT', 132);
var v40 = v15.attachMovie('backIcon', 'back', 12);
if (onBackPress == 'backToStartMenu') {
v40.onPress = function () {
removeMenuF();
jumpF('startMenu3');
};
} else {
v40.onPress = function () {
menuF('menu');
};
}
var v30 = v29;
var v10 = screenWidth * v30;
var v8 = screenHeight * v30;
var v49 = 10;
var v52 = v10 * 3 + v49 * 2;
var v53 = (v8 + 20) * 3 + v49 * 2;
v15._x = screenWidth / 2 - v52 / 2;
v15._y = screenHeight / 2 - v53 / 2;
var v3 = 12;
var v34 = 50;
var v26 = 1;
var v27 = 0;
var v37 = 10592421;
var v38 = 15454309;
var v35 = 14277081;
var v39 = 15984792;
var v13 = 0;
while (v13 < amountOfCgs) {
var v17 = v15.getNextHighestDepth();
var v2 = v15.createEmptyMovieClip('g' + v17, v17);
var w = v10 + v3;
var h = v8 + v3 + v27;
var b = v2.createEmptyMovieClip('b', 1);
b._x = v3 / 2;
b._y = v3 / 2;
v2._x = (v13 % 4) * (v10 + v26 + v3);
v2._y = v34 + Math.floor(v13 / 4) * (v26 + v8 + v3 + v27);
storedv6._y = v8 + 4;
storedv6._x = v3 / 2 + v10 - storedv6._width;
storedv5._y = v3 / 2 + v8 - storedv5._height;
storedv5._x = v3 / 2;
storedv4._width = v10;
storedv4._x = v3 / 2;
storedv4._y = v8 + v3 / 2 - storedv4._height;
v2.fileNo = v13;
if (allCgs[v13].premium) {
v2.premium = true;
v2.col = v38;
v2.selectCol = v39;
} else {
v2.col = v37;
v2.selectCol = v35;
}
squareFill(v2, v2.col, 0, 0, w, h);
var v12 = 'locked';
var v18 = false;
var v19 = allCgs[v13].base[0];
var v25 = 'cg_' + v19;
if (generalSave.unlockedCg[v19] || generalSave.unlockedCg[v25]) {
v18 = true;
var v14 = [];
var v6 = 1;
while (v6 < allCgs[v13].base.length) {
var v9 = allCgs[v13].base[v6];
v14.push(v9);
++v6;
}
v12 = [allCgs[v13].base[0], 0, 0, screenWidth, screenHeight, false, false, v14];
}
var v21 = makeSmallScreenshotForCg(v30, v12, []);
b.attachBitmap(v21, 10, auto, true);
if (v12 == 'locked') {
var v7 = b.attachMovie('lockIcon', 'lockIcon', 11);
v7._x = v10 / 2 - v7._width / 2;
v7._y = v8 / 2 - v7._height / 2;
tintF(v7, v2.col);
}
if (v2.premium) {
var v28 = b.attachMovie('premiumTopLeft', 't', 12);
}
v2.w = w;
v2.h = h;
v2.onRollOver = function () {
playSound2F('buttonUp');
squareFill(this, this.selectCol, 0, 0, this.w, this.h);
tintF(this.b.lockIcon, this.selectCol);
};
v2.onRollOut = function () {
squareFill(this, this.col, 0, 0, this.w, this.h);
tintF(this.b.lockIcon, this.col);
};
if (v18) {
v2.onPress = function () {
galleryF(this.fileNo, 0, undefined, onBackPress);
};
}
++v13;
}
v43._x = v15._width / 2 - v43._width / 2;
v40._x = v15._width / 2 - v40._width / 2;
v40._y = v15._height + v34 - v43._height;
v15._x = screenWidth / 2 - v15._width / 2;
v15._y = screenHeight / 2 - v15._height / 2;
} else {
if (a == 'save') {
var v15 = menu.attachMovie('saveLoadScreen', 'saveScreen', menu.getNextHighestDepth());
v15._alpha = 0;
v15.onEnterFrame = function () {
if (this._alpha <= 100) {
this._alpha += 10;
}
if ((myKeys.ESCAPE or myKeys.BACKSPACE or myKeys.P or myKeys.S) && t > menu.t) {
if (onBackPress == 'backToGame') {
removeMenuF();
} else {
menuF('menu');
}
}
};
v15._x = screenWidth / 2 - v15._width / 2;
v15._y = screenHeight / 2 - v15._height / 2;
var v31 = new TextFormat();
v31.font = 'Century Gothic';
v31.size = 12;
fA = ['file1', 'file2', 'file3', 'file4', 'file5', 'file6', 'file7', 'file8'];
var v13 = 0;
while (v13 < fA.length) {
var b = v15[fA[v13]];
b.fileNo = v13 + 1;
b.main._width = 300;
b.main.htmlText = 'SHIT';
b.main.textColor = 16777215;
b.main.setTextFormat(v31);
b.onRollOver = function () {
this.main.textColor = 13421772;
playSound2F('buttonUp');
};
b.onRollOut = function () {
this.main.textColor = 16777215;
};
++v13;
}
saveF('autoSave', 'menuF autosave');
save3F(basicGameData.gameFile, 'general', generalSave);
v15.head.htmlText = 'SAVE GAME';
v15.file8.main.htmlText = 'BACK';
v15.file8._visible = true;
v15.file8._y += 20;
if (onBackPress == 'backToGame') {
v15.file8.onPress = function () {
removeMenuF();
};
} else {
v15.file8.onPress = function () {
menuF('menu');
};
}
v13 = 0;
while (v13 < 7) {
var v6 = v15[fA[v13]];
v6.main.htmlText = 'FILE ' + v6.fileNo + ' - EMPTY';
v6._visible = true;
var tf = 'file' + v6.fileNo;
var v22 = 'FILE ' + v6.fileNo;
v6.tf = tf;
var v20 = checkWhichSave(basicGameData.gameFile, tf);
var v11 = v20.saveDate;
if (v11 == undefined) {
v11 = 'EMPTY';
}
v6.main.htmlText = v22 + ' - ' + v11;
v6.onPress = function () {
saveF(this.tf, 'menuOnPressOfEachFile');
this.main.htmlText = 'SAVED';
};
++v13;
}
}
}
}
}
}
}
}
}
}
function removeMenuF() {
playSound2F('buttonUp');
gamePaused = false;
menu.removeMovieClip();
}
function galleryF(a, b, cameHereWith, onBackPress) {
var v11 = true;
var v9 = allCgs[a];
var v5 = v9.base;
var seq = v9.sequence;
var v7 = createEmptyMovieClip('galleryClip', menuLayer);
var v8 = v7.createEmptyMovieClip('container', 1);
var v6 = flash.display.BitmapData.loadBitmap(v5[0] + '.png');
if (v6 == undefined) {
v6 = flash.display.BitmapData.loadBitmap('cg_' + v5[0] + '.png');
}
var v2 = 1;
while (v2 < v5.length) {
var v3 = flash.display.BitmapData.loadBitmap(v5[v2] + '.png');
if (v3 == undefined) {
v3 = flash.display.BitmapData.loadBitmap('cg_' + v5[v2] + '.png');
}
v6.draw(v3);
v3.dispose();
++v2;
}
var v4 = 0;
while (v4 < seq[b].length) {
v3 = flash.display.BitmapData.loadBitmap(seq[b][v4] + '.png');
if (v3 == undefined) {
v3 = flash.display.BitmapData.loadBitmap('cg_' + seq[b][v4] + '.png');
}
v6.draw(v3);
v3.dispose();
++v4;
}
v8.attachBitmap(v6, 1, auto, true);
if (v11) {
var v10 = screenHeight / v8._height;
v8._yscale = 100 * v10;
v8._xscale = v8._yscale;
}
var left = v7.attachMovie('arrowButton', 'left', 2);
left._x = 10;
left._y = screenHeight / 2 - left._height / 2;
if (b > 0) {
left.onPress = function () {
galleryF(a, b - 1, x, onBackPress);
};
} else {
left.onPress = function () {
menuF('gallery', onBackPress);
};
}
if (b < seq.length - 1) {
var right = v7.attachMovie('arrowButton', 'right', 3);
right._xscale = -right._xscale;
right._x = screenWidth - 10;
right._y = screenHeight / 2 - right._height / 2;
right.onPress = function () {
galleryF(a, b + 1, x, onBackPress);
};
}
if (cameHereWith == 'arrows') {
right._alpha = 0;
left._alpha = 0;
}
v7.notMovingT = 0;
v7.onEnterFrame = function () {
if (mouseMoving) {
this.notMovingT = 0;
right._alpha = 100;
left._alpha = 100;
} else {
++this.notMovingT;
if (this.notMovingT > 20) {
right._alpha -= 5;
left._alpha -= 5;
}
}
if (myKeys.RIGHT && myKeys.LEFT) {
} else {
if (myKeys.RIGHT or myKeys.SPACE) {
if (b < seq.length - 1) {
galleryF(a, b + 1, 'arrows', onBackPress);
}
} else {
if (myKeys.LEFT) {
if (b > 0) {
galleryF(a, b - 1, 'arrows', onBackPress);
} else {
menuF('gallery', onBackPress);
}
} else {
if (myKeys.ESCAPE or myKeys.BACKSPACE or myKeys.P) {
menuF('gallery', onBackPress);
}
}
}
}
};
}
function makeSmallScreenshotForCg(scale, scene, charA) {
var v7 = new flash.display.BitmapData(screenWidth * scale, screenHeight * scale, false, 0);
var v6 = scene[7];
v6.splice(0, 0, [scene[0]]);
var v2 = 0;
while (v2 < v6.length) {
var v5 = v6[v2] + '.png';
var v1 = flash.display.BitmapData.loadBitmap(v5);
if (v1 == undefined) {
v1 = flash.display.BitmapData.loadBitmap('cg_' + v5);
}
var v4 = new flash.geom.Matrix();
var v3 = scale * (screenHeight / v1.height);
v4.scale(v3, v3);
v7.draw(v1, v4);
v1.dispose();
++v2;
}
return v7;
}
function makeSmallScreenshot(scale, scene, charA) {
var v8 = new flash.geom.Matrix();
var v5 = scene.addedCgA;
var v4 = addBg(scene.current, true, scene.xFlipped, scene.yFlipped, scene.x, scene.y, b.heightStretchToFit, false, true);
v4.createEmptyMovieClip('foregroundObjects', v4.getNextHighestDepth());
var v2 = 0;
while (v2 < v5.length) {
addToCgF(v5[v2], '', '', true, v4);
++v2;
}
var v3 = 0;
while (v3 < charA.length) {
var v1 = charA[v3];
if (v1.mc && !v1.isCharacter) {
} else {
foregroundObjectF(v1.who, v1.mood, v1.mood2, v1.x, v1.y, v1.depth, v1.xFlipped, v1.yFlipped, v1.isCharacter, v1.scaleToFullScreen, v1.zoom, true, v4);
}
++v3;
}
var v11 = bitmapCopy(v4);
v8.scale(scale, scale);
var v10 = new flash.display.BitmapData(screenWidth * scale, screenHeight * scale, false, 0);
v10.draw(v11, v8);
v11.dispose();
removeMovieClip(v4);
return v10;
}
function zoomF(outOrIn) {
var v1 = 1.5;
var v2 = 300;
zoomed = true;
if (!generalSave.hasZoomed) {
generalSave.hasZoomed = true;
if (!generalSave.cgNotification2Shown) {
generalSave.cgNotification2Shown = true;
notificationF('Use the mouse to look around.');
}
}
if (outOrIn == 'out') {
zoom /= v1;
} else {
zoom *= v1;
}
if (zoom > v2 or zoom < 100) {
if (outOrIn == 'in') {
zoom /= v1;
} else {
zoom = 100;
zoomed = false;
gwContainer._x = 0;
gwContainer._y = 0;
}
}
gwContainer._yscale = zoom;
gwContainer._xscale = gwContainer._yscale;
scale = gwContainer._xscale / 100 - 1;
gwContainer._x = -_xmouse * scale;
gwContainer._y = -_ymouse * scale;
}
function keyChecker() {
keyHandler();
mouseStuff();
if (myKeys.ESCAPE) {
resizeAndReplaceF();
}
if (!gamePaused && outOfMenuIntoGame) {
if (skipping) {
if (myKeys.SPACE or mouseClick or myKeys.ENTER or myKeys.TAB or myKeys.CONTROLReleased) {
skipping = false;
}
} else {
if (myKeys.CONTROL or myKeys.TAB) {
skipping = true;
dialogue.finishNow = true;
}
}
if (myKeys.ESCAPE or myKeys.BACKSPACE or myKeys.P or myKeys.M) {
menuF('menu');
}
if (myKeys.Z or myKeys.plus) {
zoomF();
}
if (myKeys.minus) {
zoomF('out');
}
if (myKeys.R) {
menuF('log', 'backToGame');
}
if (myKeys.K) {
menuF('keyboardShortcuts');
}
if (myKeys.H) {
dialogueHiderF();
}
if (myKeys.L) {
menuF('load', 'backToGame');
}
if (myKeys.O) {
menuF('options', 'backToGame');
}
if (myKeys.S) {
menuF('save', 'backToGame');
}
if (myKeys.Q) {
saveF('quickSave');
notificationF('Game successfully saved.');
}
if (mouseScrolled > 0) {
zoomF('in');
} else {
if (mouseScrolled < 0) {
zoomF('out');
}
}
}
if (myKeys.F) {
if (Stage.displayState == 'fullScreen') {
Stage.displayState = 'normal';
} else {
Stage.displayState = 'fullScreen';
}
}
}
function mouseStuff() {
var v1 = mouseScrolledPre;
mouseScrolledPre = 0;
v1 /= Math.abs(v1);
mouseScrolled = v1;
var v2 = _xmouse + ' ' + _ymouse;
if (v2 == lastMouse) {
mouseMoving = false;
} else {
mouseMoving = true;
}
lastMouse = _xmouse + ' ' + _ymouse;
mouseClick = false;
scale = gwContainer._xscale / 100 - 1;
gwContainer._x = -_xmouse * scale;
gwContainer._y = -_ymouse * scale;
}
function keyHandler() {
var v3 = 0;
while (v3 < keys.length) {
var v2 = keys[v3];
var v1 = v2;
if (typeof v2 == 'object') {
v2 = String(keys[v3][1]);
v1 = keys[v3][0];
} else {
v2 = Key[v2];
}
if (Key.isDown(v2)) {
if (!myKeys[v1 + 'Pressed']) {
myKeys[v1] = true;
myKeys[v1 + 'Pressed'] = true;
} else {
myKeys[v1] = false;
}
} else {
if (myKeys[v1 + 'Pressed']) {
myKeys[v1 + 'Released'] = true;
} else {
myKeys[v1 + 'Released'] = false;
}
myKeys[v1 + 'Pressed'] = false;
myKeys[v1] = false;
}
++v3;
}
}
function parseNextF(parseNextWithoutFiringParseNext) {
if (parsing['s' + (parser + 1)] != undefined) {
++parser;
parserF(parser, parseNextWithoutFiringParseNext);
}
if (outOfMenuIntoGame && !gameEnded) {
if (!generalSave.welcomeNotificationShown) {
generalSave.welcomeNotificationShown = true;
notificationF('Welcome to the game.', true, 60);
notificationF('Press <K> for a list of available keyboard shortcuts.', true, 120);
}
if (lastAddToTimePlayed == undefined) {
lastAddToTimePlayed = 0;
}
generalSave.timePlayed += t - lastAddToTimePlayed;
lastAddToTimePlayed = t;
saveF('autoSave', 'parseNextF');
}
}
function parserF(parser, parseNextWithoutFiringParseNext) {
var v4 = parser;
var v2 = parsing['s' + parser];
if (v2 == undefined) {
initVar2(false);
startF();
} else {
checkAfterParsing(v2);
var v3 = v2[0];
if (parseNextWithoutFiringParseNext) {
v3 = v2[0] + '2';
}
this[v3 + 'F'](v2[1], v2[2], v2[3], v2[4], v2[5], v2[6], v2[7], v2[8], v2[9], v2[10], v2[11]);
}
}
function checkAfterParsing(p) {
if (p[0] == 'talking' && characterData[p[1]].commentary or p[0] == 'whatIf' or p[0] == 'endIf' or p[0] == 'otherwise' or p[0] == 'elseIf') {
} else {
if (commentaryChibis != undefined) {
removeMovieClip(commentaryChibis);
}
}
}
function removeAtF(layer) {
removeMovieClip(this.getInstanceAtDepth(layer));
}
function attachDialogue() {
var v1 = attachMovie('dialogue', 'dialogue', dialogueLayer);
v1._yscale = 100 / ((windowScale + 1) / 2);
v1._xscale = v1._yscale;
v1.menu.onRelease = function () {
menuF('menu');
};
v1.log.onRelease = function () {
menuF('log', 'backToGame');
};
v1.quickSave.onRelease = function () {
saveF('quickSave', 'quickSaveButton');
notificationF('Game successfully saved.');
};
v1.quickLoad.onRelease = function () {
loadF('quickSave');
};
v1.skip.onRelease = function () {
if (skipping) {
skipping = false;
} else {
skipping = true;
}
};
return v1;
}
function rollbackF() {}
function thinkingF(serifu) {
var v1 = attachDialogue();
v1.gotoAndStop(1);
dialogueF(serifu);
}
function talkingF(who, serifu, mood) {
if (!characterData[who].commentary || characterData[who].commentary && generalSave.commentary) {
var v2 = attachDialogue();
v2.gotoAndStop(2);
dialogueF(serifu, who, mood);
} else {
parseNextF();
}
}
function romajize2F(a) {
var v3 = '';
var v1 = 2;
while (v1 < a.length) {
v3 += '<a href="asfunction:clickLink,' + a[v1] + '"><i>' + romajizeF(a[v1], v3) + '</i></a> ';
v1 += 2;
}
return v3;
}
function romajizeF(a, replaceWith) {
var v11 = 0;
var v12 = new Array();
var v9 = 10;
var v8 = replaceWith.slice(replaceWith.length - v9, replaceWith.length - v9 + 1);
var v7 = false;
if (v8 == '' || v8 == '.' || v8 == '!' || v8 == '?' || v8 == '…') {
v7 = true;
}
var v2 = a;
var v1 = 0;
while (v1 <= a.length) {
var v3 = a.slice(v1, v1 + 1);
if (v1 == 0) {
if (v7) {
v2 = (v2.slice(0, 1)).toUpperCase() + v2.slice(1);
v7 = false;
}
}
var v6 = a.slice(v1 - 1, v1);
var v5 = a.slice(v1 + 1, v1 + 2);
if (v3 == 'X') {
v2 = v2.slice(0, v1) + ' ' + v2.slice(v1 + 1);
} else {
if (v3 == 'h' && v5 == 'w') {
v2 = v2.slice(0, v1) + '' + v2.slice(v1 + 1);
} else {
if (v3 == '\'') {
v2 = v2.slice(0, v1) + '"' + v2.slice(v1 + 1);
} else {
if (v3 == '_') {
v2 = v2.slice(0, v1) + v6 + v2.slice(v1 + 1);
}
}
}
}
++v1;
}
return v2;
}
function hiraganizeF(a) {
var v3 = 0;
var v5 = new Array();
var v10 = '';
var v1 = 0;
while (v1 <= a.length) {
var v2 = a.slice(v1, v1 + 1);
var v4 = a.slice(v1 + 1, v1 + 2);
var v8 = a.slice(v1 + 2, v1 + 3);
if (v2 == 'X') {
++v3;
} else {
if (v2 == '\'') {
var v9 = v1 + 1;
if (dialogue.openQuote) {
myKana = 'endQuote';
dialogue.openQuote = false;
} else {
myKana = 'openQuote';
dialogue.openQuote = true;
}
v5.push(myKana);
v3 = v9;
} else {
if (v2 == 'n' && !(v4 == 'a' || v4 == 'i' || v4 == 'u' || v4 == 'e' || v4 == 'o')) {
var v9 = v1 + 1;
myKana = a.slice(v3, v9);
v5.push(myKana);
v3 = v9;
} else {
if (v2 == 'a' || v2 == 'i' || v2 == 'u' || v2 == 'e' || v2 == 'o') {
var v9 = v1 + 1;
myKana = a.slice(v3, v9);
v5.push(myKana);
v3 = v9;
} else {
if (v2 == '_') {
var v9 = v1 + 1;
myKana = 'longVowelMark';
v5.push(myKana);
v3 = v9;
} else {
if (v2 == ',') {
var v9 = v1 + 1;
myKana = 'comma';
v5.push(myKana);
v3 = v9;
} else {
if (v2 == '.' && v4 == '.' && v8 == '.') {
var v9 = v1 + 3;
myKana = 'threeDots';
v5.push(myKana);
v3 = v9;
v1 += 2;
} else {
if (v2 == '…') {
var v9 = v1 + 1;
myKana = 'threeDots';
v5.push(myKana);
v3 = v9;
} else {
if (v2 == '.') {
var v9 = v1 + 1;
myKana = 'dot';
v5.push(myKana);
v3 = v9;
} else {
if (v2 == '!') {
var v9 = v1 + 1;
myKana = 'exclamationMark';
v5.push(myKana);
v3 = v9;
} else {
if (v2 == '?') {
var v9 = v1 + 1;
myKana = 'questionMark';
v5.push(myKana);
v3 = v9;
} else {
if (v1 < a.length && v2 == v4 && !(v4 == 'a' || v4 == 'i' || v4 == 'u' || v4 == 'e' || v4 == 'o')) {
var v9 = v1 + 1;
if (v2 == 'n') {
myKana = 'ã‚“';
} else {
myKana = 'ltsu';
}
v5.push(myKana);
v3 = v9;
}
}
}
}
}
}
}
}
}
}
}
}
++v1;
}
var v7 = 0;
while (v7 < v5.length) {
v10 += hiragana[v5[v7]];
++v7;
}
return v10;
}
function wordPopUpF(a) {
var v3 = a;
var v2 = 0;
while (v2 < v3.length) {
var v1 = v3.slice(v2, v2 + 1);
if (v1 == ',' || v1 == '.' || v1 == '?' || v1 == '!' || v1 == '.' || v1 == ':' || v1 == ';') {
v3 = v3.slice(0, v2) + v3.slice(v2 + 1);
--v2;
}
++v2;
}
var v4 = attachMovie('wordPopUp', 'wordPopUp', wordPopUpLayer);
v4._x = mouse._x;
v4._y = mouse._y;
v4.main.text = '';
wordPopUpLayer;
}
function initKanjiButtons(n) {
dialogue.kanji.gotoAndStop(n);
dialogue.kana.gotoAndStop(n);
dialogue.romaji.gotoAndStop(n);
if (japDisplay == 'romaji') {
dialogue.romaji.gotoAndStop(n + 1);
} else {
if (japDisplay == 'kana') {
dialogue.kana.gotoAndStop(n + 1);
} else {
if (japDisplay == 'kanji') {
dialogue.kanji.gotoAndStop(n + 1);
}
}
}
}
function dialogueHiderF() {
if (noticeDialogueActive) {
if (nd.hidden) {
nd.hidden = false;
nd._visible = true;
} else {
nd.hidden = true;
nd._visible = false;
}
} else {
if (dialogue.hidden) {
dialogue.hidden = false;
dialogue._visible = true;
} else {
dialogue.hidden = true;
dialogue._visible = false;
}
}
}
function chibiF(char, mood, xPos, depth) {
chibi2F(char, mood, xPos, depth);
parseNextF();
}
function chibi2F(char, mood, xPos, depth) {
var v8 = true;
var v11 = false;
var v4 = 0;
if (mood == undefined) {
mood = 'neutral';
}
if (commentaryChibis == undefined) {
this.createEmptyMovieClip('commentaryChibis', commentaryChibiLayer);
}
var v6 = commentaryChibis;
if (char.image == 'ben') {
xPos = 'right';
} else {
xPos = left;
}
if (xPos == 'right') {
v8 = false;
}
if (v6['chibi_' + char.image] != undefined) {
v6['chibi_' + char.image].removeMovieClip();
}
if (depth == undefined) {
v4 = v6.getNextHighestDepth();
} else {
v4 = depth;
}
var v2 = v6.createEmptyMovieClip('chibi_' + char.image, v4);
v2.d = v4;
var v3 = flash.display.BitmapData.loadBitmap('commentary_' + char.image + '.png');
var v10 = flash.display.BitmapData.loadBitmap('commentary_' + mood + '.png');
var v13 = flash.display.BitmapData.loadBitmap(char.image + '_top.png');
v3.draw(v10);
v3.draw(v13);
v10.dispose();
v13.dispose();
if (v8 || v11) {
var v15 = 1;
var v14 = 1;
var v17 = 0;
var v18 = 0;
if (v8) {
v15 = -1;
v17 = v3.width;
}
if (v11) {
v14 = -1;
v18 = v3.height;
}
var v9 = new flash.geom.Matrix();
v9.scale(v15, v14);
v9.translate(v17, v18);
var v12 = new flash.display.BitmapData(v3.width, v3.height, true, 0);
v12.draw(v3, v9);
v3.dispose();
v2.attachBitmap(v12, 1, auto, true);
} else {
v2.attachBitmap(v3, 1, auto, true);
}
v2._yscale = 45;
v2._xscale = 45;
v2._y = screenHeight - v2._height + 15;
if (xPos == 'right') {
v2._x = (dialogue._x + dialogue._width + screenWidth) / 2 - v2._width / 2 + 20;
} else {
if (xPos == 'left') {
v2._x = dialogue._x / 2 - v2._width / 2 - 20;
}
}
}
function dialogueF(serifu, who, mood) {
if (skipping && globalSave.skipOnlyUnreadDialogue) {
if (!generalSave.readDialogueO['s' + parser]) {
skipping = false;
}
}
if (!generalSave.readDialogueO['s' + parser]) {
if (generalSave.readDialogues == undefined) {
generalSave.readDialogues = 0;
}
++generalSave.readDialogues;
generalSave.readDialogueO['s' + parser] = true;
}
save3F(basicGameData.gameFile, 'general', generalSave);
resizeAndReplaceF();
var v26 = false;
if (who == undefined) {
v26 = true;
} else {
dialogue.who.text = characterData[who].pName;
dialogue.who.textColor = characterData[who].pColor;
}
if (characterData[who].commentary) {
chibi2F(characterData[who], mood);
dialogue.commentary = true;
}
slicer = 0;
currentLine = serifu;
if (!v26) {
currentLine = '' + currentLine + '';
}
currentLineFinished = false;
japDisplayed = false;
dialogue.hider.onRelease = function () {
dialogueHiderF();
};
dialogue.kana._visible = false;
dialogue.kanji._visible = false;
dialogue.romaji._visible = false;
var v5 = 0;
while (v5 <= currentLine.length) {
var v15 = currentLine.slice(v5, v5 + 1);
var v22 = currentLine.slice(v5 + 1, v5 + 2);
var v6 = '';
if (v15 == '{') {
var v23 = '';
var v12 = '';
var v3 = new Array();
var v2 = v5 + 1;
while (v2 <= currentLine.length) {
v6 = currentLine.slice(v2, v2 + 1);
if (v6 == '|' or v6 == '}') {
if (v12 == '') {
v3.push(currentLine.slice(v5 + 1, v2));
var v20 = currentLine.slice(v5 + 1, v2);
v12 = v2;
} else {
v3.push(currentLine.slice(v12 + 1, v2));
v12 = v2;
}
}
if (v6 == '}') {
v2 = currentLine.length;
}
++v2;
}
var v11 = '';
if (storedv20 == 'jp') {
japDisplayed = true;
dialogue.kanji.onPress = function () {
japDisplay = 'kanji';
dialogueF(serifu, who);
dialogue.finishNow = true;
initKanjiButtons(2);
this.gotoAndStop(3);
};
dialogue.romaji.onPress = function () {
slicer = currentLine.length;
japDisplay = 'romaji';
dialogueF(serifu, who);
dialogue.finishNow = true;
initKanjiButtons(2);
this.gotoAndStop(3);
};
dialogue.kana.onPress = function () {
slicer = currentLine.length;
japDisplay = 'kana';
dialogueF(serifu, who);
dialogue.finishNow = true;
initKanjiButtons(2);
this.gotoAndStop(3);
};
initKanjiButtons(2);
dialogue.kana._visible = false;
dialogue.kanji._visible = false;
dialogue.romaji._visible = false;
if (japDisplay == 'kanji') {
var v8 = 1;
while (v8 < v3.length) {
v11 += '<font face=\'Arial Unicode MS\'><a href="asfunction:clickLink,' + v3[v8 + 1] + '">' + v3[v8] + '</a></font>';
v8 += 2;
}
} else {
if (japDisplay == 'romaji') {
v11 = romajize2F(v3);
} else {
if (japDisplay == 'kana') {
var v8 = 2;
while (v8 < v3.length) {
v11 += '<font face=\'Arial Unicode MS\'><a href="asfunction:clickLink,' + v3[v8] + '">' + hiraganizeF(v3[v8]) + '</a></font>';
v8 += 2;
}
}
}
}
} else {
if (Number(variables[storedv20]) == 1) {
v11 = v3[1];
} else {
if (v3.length == 3) {
v11 = v3[2];
} else {
v11 = v3[1] + 's';
}
}
}
currentLine = currentLine.slice(0, v5) + v11 + currentLine.slice(v12 + 1);
} else {
if ((v15 == '$' or v15 == '@') && isNaN(Number(v22))) {
var v4 = v5 + 1;
while (v4 <= currentLine.length) {
v6 = currentLine.slice(v4, v4 + 1);
if (v6 == '$' or v6 == '@' or v4 == currentLine.length) {
var v14 = v4;
v4 = Infinity;
}
++v4;
}
var v10 = variables[currentLine.slice(v5 + 1, v14)];
if (v15 == '@' && Number(v10) <= 20) {
var v21 = ['zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine', 'ten', 'eleven', 'twelve', 'thirteen', 'fourteen', 'fifteen', 'sixteen', 'seventeen', 'eighteen', 'nineteen', 'twenty'];
v10 = v21[Number(v10)];
}
if (v10 == undefined) {
v10 = currentLine.slice(v5 + 1, v14);
}
var v16 = currentLine.slice(v5 - 2, v5 - 1);
if (v5 == 0 || v16 == '.' || v16 == '!' || v16 == '?' || v16 == '…') {
v10 = (v10.slice(0, 1)).toUpperCase() + v10.slice(1);
}
currentLine = currentLine.slice(0, v5) + v10 + currentLine.slice(v14 + 1);
}
}
++v5;
}
dialogue.clickLink = function (a) {
if (!gamePaused) {
wordPopUpF(a);
}
};
dialogue.t = 0;
dialogue.t2 = 0;
dialogue.firstWord = true;
dialogue.onEnterFrame = function () {
if (!gamePaused) {
++this.t2;
if (!currentLineFinished) {
if (myKeys.SPACE or mouseClick or skipping or myKeys.ENTER or this.finishNow or globalSave.textSpeed >= maxTextSpeed) {
if (dialogue.hidden) {
dialogue.hidden = false;
dialogue._visible = true;
} else {
slicer = currentLine.length;
this.finishNow = false;
}
} else {
var v9 = globalSave.textSpeed;
if (this.t2 % Math.ceil(1 / v9) == 0) {
var v7 = 0;
while (v7 < v9) {
++slicer;
var v8 = true;
while (v8) {
ch1 = currentLine.slice(slicer - 1, slicer);
if (ch1 == '>') {
++slicer;
} else {
v8 = false;
}
}
if (ch1 == '<') {
var v3 = slicer;
while (v3 <= currentLine.length) {
var v4 = currentLine.slice(v3, v3 + 1);
if (v4 == '>') {
slicer = v3 + 1;
v3 = currentLine.length;
--v7;
}
++v3;
}
} else {
if ((ch1 == ' ' || ch1 == '-') && who != 'nvl') {
var v5 = 0;
var v2 = slicer;
while (v2 <= currentLine.length) {
var v4 = currentLine.slice(v2, v2 + 1);
if (v4 == '<') {
++v5;
} else {
if (v4 == '>') {
--v5;
}
}
if (v5 == 0 && (v4 == ' ' || v4 == '-') or v2 == currentLine.length) {
var v10 = currentLine.slice(0, slicer);
this.main.htmlText = v10;
var v6 = this.main.bottomScroll;
v10 = currentLine.slice(0, v2 + 1);
this.main.htmlText = v10;
if (v6 < this.main.bottomScroll) {
currentLine = currentLine.slice(0, slicer) + '\n' + currentLine.slice(slicer);
}
v2 = currentLine.length;
}
++v2;
}
}
}
++v7;
}
}
}
v10 = currentLine.slice(0, slicer);
if (who == 'nvl') {
v10 = nvlText + v10;
}
if (slicer >= currentLine.length) {
if (who == 'nvl') {
nvlText = v10 + '\n';
}
registerInLog(v10, who);
currentLineFinished = true;
}
this.main.htmlText = v10;
if (this.commentary) {
this.main.textColor = 16237039;
}
} else {
if (currentLineFinished) {
if (myKeys.SPACE or mouseClick or myKeys.ENTER or skipping) {
if (dialogue.hidden) {
dialogue.hidden = false;
dialogue._visible = true;
} else {
if (myKeys.SPACE or myKeys.ENTER) {
lastAction = 'key';
} else {
lastAction = 'mouse';
}
if (skipping && this.t < 2) {
++this.t;
} else {
currentLineFinished = false;
slicer = 0;
if (who != 'nvl') {
removeAtF(dialogueLayer);
}
delete this.onEnterFrame;
parseNextF();
}
}
}
}
}
}
};
}
function registerInLog(txt, who) {
var v2 = '';
var v1 = txt;
var v3 = '';
if (who == 'choice') {
v2 = '<b>->';
v1 += '</b>';
} else {
if (who != undefiend) {
v2 = '<b>' + characterData[who].pName + '</b>: ';
v1 = '"' + v1 + '"';
}
}
if (log != '') {
v3 = '\n<p align="center">——————————————————</p>\n';
}
log = v2 + v1 + v3 + log;
}
function queueF(music) {
currentlyPlaying.onSoundComplete = function () {
playMusicF(music);
};
}
function mcItemF(item, xPos, yPos) {
var v1 = foregroundObjects.getNextHighestDepth();
mcItem2F(item, xPos, yPos, v1);
parseNextF();
}
function mcItem2F(item, xPos, yPos, depth) {
m = foregroundObjects.attachMovie(item, item, depth);
m.who = item;
m.isCharacter = false;
m.depth = depth;
m.mc = true;
if (!isNaN(Number(yPos))) {
m._y = yPos;
} else {
if (yPos == 'below') {
m._y = screenHeight;
}
}
if (!isNaN(Number(xPos))) {
m._x = xPos;
} else {
if (xPos == 'left') {
m._x = screenWidth / 3;
} else {
if (xPos == 'right') {
m._x = (screenWidth / 3) * 2;
} else {
if (xPos == 'center') {
m._x = int(screenWidth / 2);
}
}
}
}
m.y = m._y;
m.x = m._x;
foregroundObjectsA.push(m);
}
function itemF(item, xPos, yPos, xFlipped, yFlipped, depth) {
item2F(item, xPos, yPos, xFlipped, yFlipped, depth);
parseNextF();
}
function item2F(item, xPos, yPos, xFlipped, yFlipped, depth) {
foregroundObjectF(item, '', '', xPos, yPos, depth, xFlipped, yFlipped, false);
}
function personF(who, mood, mood2, xPos, yPos, xFlipped, yFlipped, depth, scaleToFullScreen) {
person2F(who, mood, mood2, xPos, yPos, xFlipped, yFlipped, depth, scaleToFullScreen);
parseNextF();
}
function person2F(who, mood, mood2, xPos, yPos, xFlipped, yFlipped, depth, scaleToFullScreen) {
if (yPos == undefined) {
yPos = 0;
}
foregroundObjectF(who, mood, mood2, xPos, yPos, depth, xFlipped, yFlipped, true, scaleToFullScreen);
}
function foregroundObjectF(who, mood, mood2, xPos, yPos, depth, xFlipped, yFlipped, isCharacter, scaleToFullScreen, zoom, forScreenshot, bgForScreenshot) {
var m = '';
var v10 = foregroundObjects;
var v22 = foregroundObjects[who]._x;
if (foregroundObjects[who] == undefined || forScreenshot) {
var v31 = true;
if (forScreenshot) {
v10 = bgForScreenshot.foregroundObjects;
v31 = false;
}
var v14 = v10.getNextHighestDepth();
if (v14 < 100) {
v14 = 100;
}
if (depth == 'back') {
v14 = 1;
while (v10.getInstanceAtDepth(v14) != undefined) {
++v14;
}
}
if (typeof depth == 'number') {
v14 = depth;
}
var v5 = v10.createEmptyMovieClip(who, v14);
v5.who = who;
v5.depth = v14;
if (!forScreenshot) {
foregroundObjectsA.push(v5);
}
if (!isNaN(Number(xPos))) {
v5.x = xPos;
}
}
v5 = v10[who];
v14 = v5.getNextHighestDepth();
var m = v5.createEmptyMovieClip('c' + v14, v14);
v5.latest = m;
if (!forScreenshot) {
var v20 = v5.getInstanceAtDepth(v14 - 1);
v20.m = m;
m._alpha = 0;
m.onEnterFrame = function () {
if (this._alpha <= 100) {
this._alpha += 10;
} else {
delete this.onEnterFrame;
}
};
v20.onEnterFrame = function () {
if (this.m._alpha > 90 or this.m._alpha == undefined) {
if (this._alpha >= 0) {
this._alpha -= 10;
} else {
removeMovieClip(this);
delete this.onEnterFrame;
}
}
};
}
if (zoom != undefined) {
v5.zoom = zoom;
} else {
if (v5.zoom == undefined) {
v5.zoom = 1;
}
}
v5.xFlipped = xFlipped;
v5.yFlipped = yFlipped;
v5.mood = mood;
v5.mood2 = mood2;
v5.scaleToFullScreen = scaleToFullScreen;
v5.isCharacter = isCharacter;
if (isCharacter) {
var v12 = characterData[who];
var v3 = characterImageData[who][mood];
var v21 = flash.display.BitmapData.loadBitmap('ch_' + v12.image + '_' + v3[0] + '.png');
var v8 = new flash.display.BitmapData(v21.width, v21.height, true, 0);
var v37 = new Array();
var v2 = 0;
while (v2 < v3.length) {
var v4 = false;
var v6 = v3[v2];
if (!activatedCheats.skinnyTail) {
if (v3[v2].indexOf('cattail') != -1) {
v4 = true;
}
}
if (!activatedCheats.fluffyTail) {
if (v3[v2].indexOf('dogtail') != -1) {
v4 = true;
}
}
if (!activatedCheats.elf) {
if (v3[v2].indexOf('elfears') != -1) {
v4 = true;
}
}
if (!activatedCheats.fluffyTail && !activatedCheats.skinnyTail) {
if (v3[v2].indexOf('catears') != -1) {
v4 = true;
}
}
if (activatedCheats.nude or activatedCheats.topNude) {
if (v3[v2].indexOf('bra') != -1) {
if (v3[v2].indexOf('hi_boobs_bra') != -1) {
v6 = 'hi_freeboobs';
} else {
v6 = 'freeboobs';
}
}
if (v3[v2].indexOf('strap') != -1) {
v4 = true;
}
}
if (activatedCheats.nude or activatedCheats.bottomNude) {
if (v3[v2].indexOf('pants') != -1) {
v4 = true;
}
}
if (activatedCheats.shaved) {
if (v3[v2].indexOf('pubes') != -1) {
v4 = true;
}
}
if (!v4) {
var v7 = flash.display.BitmapData.loadBitmap('ch_' + v12.image + '_' + v6 + '.png');
v8.draw(v7);
v7.dispose();
}
++v2;
}
var v19 = flash.display.BitmapData.loadBitmap('ch_' + v12.image + '_exp_' + mood2 + '.png');
v8.draw(v19);
v19.dispose();
} else {
var v8 = flash.display.BitmapData.loadBitmap('item_' + who + '.png');
if (v8 == undefined) {
v8 = flash.display.BitmapData.loadBitmap(who + '.png');
}
}
var v34 = this[currentFilter + 'Filter'];
var v17 = new flash.filters.ColorMatrixFilter(v34);
if (xFlipped || yFlipped) {
var v24 = 1;
var v23 = 1;
var v32 = 0;
var v33 = 0;
if (xFlipped) {
v24 = -1;
v32 = v8.width;
}
if (yFlipped) {
v23 = -1;
v33 = v8.height;
}
var v15 = new flash.geom.Matrix();
v15.scale(v24, v23);
v15.translate(v32, v33);
var v13 = new flash.display.BitmapData(v8.width, v8.height, true, 0);
v13.draw(v8, v15);
v13.applyFilter(v13, v13.rectangle, new flash.geom.Point(0, 0), v17);
m.attachBitmap(v13, 1, auto, true);
v5.bitmap = v13;
} else {
v8.applyFilter(v8, v8.rectangle, new flash.geom.Point(0, 0), v17);
m.attachBitmap(v8, 1, auto, true);
v5.bitmap = v8;
}
if (!isNaN(Number(yPos))) {
v5._y = yPos;
v5.y = v5._y;
} else {
if (yPos == 'below') {
v5._y = screenHeight;
v5.y = v5._y;
} else {
if (yPos == 'bottom') {
v5._y = screenHeight - v5._height;
}
}
}
setXTag = true;
if (xPos == undefined or xPos == '') {
if (v22 == undefined) {
xPos = 'center';
} else {
xPos = v22;
setXTag = false;
}
}
if (!isNaN(Number(xPos))) {
v5._x = xPos;
} else {
if (xPos == 'left') {
v5._x = screenWidth / 3;
} else {
if (xPos == 'right') {
v5._x = (screenWidth / 3) * 2;
} else {
if (xPos == 'rightOutside') {
v5._x = screenWidth;
} else {
if (xPos == 'leftOutside') {
v5._x = -characterWidth;
} else {
if (xPos == 'center') {
v5._x = screenWidth / 2;
}
}
}
}
}
}
if (setXTag) {
v5.x = v5._x;
}
if (scaleToFullScreen) {
}
m.originalHeight = m._height;
if (isCharacter && mood != 'hi') {
var v26 = (basicGameData.characterHeight / m._height) * v5.zoom;
setZoom2F(who, v5.zoom, v10);
} else {
heightStretchToFit = v8.height;
var v26 = screenHeight / heightStretchToFit;
m._yscale = 100 * v26;
m._xscale = m._yscale;
v5.yscale = m._xscale;
v5.xscale = v5.yscale;
}
}
function setZoomF(who, zoom) {
setZoom2F(who, zoom);
parseNextF();
}
function setZoom2F(who, zoom, fo) {
if (fo == undefined) {
fo = foregroundObjects;
}
var v2 = fo[who];
var v1 = fo[who].latest;
v2.zoom = zoom;
var v3 = (basicGameData.characterHeight / v1.originalHeight) * v2.zoom;
v1._yscale = 100 * v3;
v1._xscale = v1._yscale;
v1._x = -v1._width / 2;
var v5 = basicGameData.characterFace.y * v3;
var v9 = 120;
var v8 = screenHeight / 2.5;
var v7 = zoom / 3;
var v6 = valueBetween(v9, v8, v7);
v1._y = v6 - v5;
v2.yscale = v1._xscale;
v2.xscale = v2.yscale;
}
function valueBetween(v1, v2, p) {
var v1 += v2 * p;
return v1;
}
function setFilterF(filter) {
currentFilter = filter;
parseNextF();
}
function playSoundF(sound) {
if (!skipping) {
playSound2F(sound);
}
parseNextF();
}
function playSound2F(sound) {
var v2 = soundMC[sound];
if (v2 == undefined) {
v2 = soundMC.createEmptyMovieClip(sound, soundMC.getNextHighestDepth());
}
var v1 = new Sound(v2);
v1.attachSound(sound + '.wav');
if (v1.duration == undefined) {
v1.attachSound(sound + '.mp3');
}
v1.setVolume(globalSave.sfxVolume * masterVolume);
v1.start();
}
function addButtonF(button, url, xPos, yPos) {
var v2 = buttons.getNextHighestDepth();
var v1 = buttons.attachMovie(button, 'button' + v2, v2);
if (xPos == 'right') {
v1._x = screenWidth - v1._width - 10;
v1.x = v1._x;
}
if (yPos == 'allTheWayDown') {
v1._y = screenHeight - v1._height;
v1.y = v1._y;
}
v1.onRelease = function () {
url2F(url);
};
parseNextF();
}
function screenIsALinkF(url) {
mouseChecker.onRelease = function () {
getURL(url, '_blank');
};
parseNextF();
}
function pauseF(seconds) {
if (skipping) {
var v2 = crap.getNextHighestDepth();
var c = crap.createEmptyMovieClip('crap' + v2, v2);
c.t = 0;
c.onEnterFrame = function () {
++c.t;
if (c.t == 2) {
parseNextF();
delete this.onEnterFrame;
removeMovieClip(this);
}
};
} else {
pause2F(int(seconds * fps));
}
}
function pause2F(frames) {
var v2 = createEmptyMovieClip('pauseHandler', pauseHandlerLayer);
v2.t = 0;
if (frames == undefined) {
frames = 0;
}
v2.goal = frames;
v2.onEnterFrame = function () {
if (!gamePaused) {
if (skipping or (!outOfMenuIntoGame or this.goal == 0) && (myKeys.SPACE or mouseClick or myKeys.ENTER)) {
removeMovieClip(this);
delete this.onEnterFrame;
parseNextF();
} else {
++this.t;
if (this.t == this.goal) {
removeMovieClip(this);
delete this.onEnterFrame;
parseNextF();
}
}
}
};
}
function stopMusicF(method, time) {
stopMusic2F(method, time);
parseNextF();
}
function stopMusic2F(method, time) {
musicPlaying = false;
if (skipping) {
method = '';
}
if (method == 'fadeOut' or method == 'fade') {
if (time == undefined) {
time = 1;
}
time = int(time * fps);
var v3 = soundMC.createEmptyMovieClip(musicBeingFadedOut + 'Fade', soundMC.getNextHighestDepth());
v3.t = 0;
musicBeingFadedOut = currentlyPlaying;
v3.onEnterFrame = function () {
++this.t;
var v2 = int(easeInOutSine(this.t, globalSave.musicVolume, -globalSave.musicVolume, time));
sounds[musicBeingFadedOut].setVolume(soundMC[musicBeingFadedOut].vol * v2 * masterVolume);
if (v2 <= 0) {
sounds[musicBeingFadedOut].stop();
musicBeingFadedOut = 'none';
delete this.onEnterFrame;
removeMovieClip(this);
}
};
} else {
sounds[currentlyPlaying].stop();
}
currentlyPlaying = 'none';
}
function changeNameF(who, newName) {
changeName2F(who, newName);
parseNextF();
}
function changeName2F(who, newName) {
characterData[who].pName = newName;
}
function languageScreenF() {
attachMovie(languageScreen, 'bg', dialogueLayer);
bg.ja.onPress = function () {
currentLanguage = this._name;
parseNextF();
};
bg.en.onPress = bg.ja.onPress;
}
function playMusicF(music, vol) {
playMusic2F(music, vol);
parseNextF();
}
function playMusic2F(music, vol) {
if (vol > 1) {
vol /= 100;
}
if (vol == undefined) {
vol = 1;
}
sounds[currentlyPlaying].stop();
if (musicBeingFadedOut == music) {
var v4 = soundMC[musicBeingFadedOut + 'Fade'];
delete v4.onEnterFrame;
removeMovieClip(v4);
sounds[musicBeingFadedOut].stop();
musicBeingFadedOut = '';
}
currentlyPlaying = music;
musicPlaying = true;
var v2 = soundMC[music];
if (v2 == undefined) {
v2 = soundMC.createEmptyMovieClip(music, soundMC.getNextHighestDepth());
sounds[music] = new Sound(v2);
var v5 = sounds[music];
v5.attachSound(music + '.wav');
if (v5.duration == undefined) {
v5.attachSound(music + '.mp3');
}
} else {
var v5 = sounds[music];
}
v2.vol = vol;
v5.setVolume(globalSave.musicVolume * v2.vol * masterVolume);
v5.start(0, 9990);
}
function setVolumeF(vol, method) {
var v2 = soundMC[currentlyPlaying];
if (method == 'fade') {
var b = crap.createEmptyMovieClip('musicFader', crap.getNextHighestDepth());
b.song = v2;
b.currentVol = v2.vol;
b.desiredVol = vol;
b.t = 0;
b.onEnterFrame = function () {
++b.t;
var v2 = this.song;
v2.vol = easeInOutSine(this.t, this.currentVol, this.desiredVol - this.currentVol, 0.5 * fps);
if (Math.round(v2.vol * 100) == Math.round(this.desiredVol * 100)) {
v2.vol = this.desiredVol;
var v3 = true;
}
sounds[currentlyPlaying].setVolume(globalSave.musicVolume * v2.vol * masterVolume);
if (v3) {
removeMovieClip(this);
delete this.onEnterFrame;
}
};
} else {
v2.vol = vol;
v2.setVolume(globalSave.musicVolume * v2.vol * masterVolume);
}
parseNextF();
}
function removeF(char, method, seconds) {
if (seconds == undefined) {
seconds = 0.3;
}
method = 'fade';
time = int(seconds * fps);
foregroundObjects[char].remove = true;
if (method == 'fade') {
foregroundObjects[char].pseudoAlpha = 100;
foregroundObjects[char].incrementAlpha = 100 / time;
foregroundObjects[char].onEnterFrame = function () {
this._x -= 1;
this.pseudoAlpha -= this.incrementAlpha;
this._alpha = this.pseudoAlpha;
if (this._alpha <= 0) {
this.removeMovieClip();
}
};
} else {
foregroundObjects[char].removeMovieClip();
}
var v2 = 0;
while (v2 <= foregroundObjectsA.length) {
if (foregroundObjectsA[v2].remove) {
foregroundObjectsA.splice(v2, 1);
v2 = foregroundObjectsA.length;
}
++v2;
}
parseNextF();
}
function removeAllCharsF() {
removeAllChars2F();
parseNextF();
}
function removeAllChars2F() {
foregroundObjects.removeMovieClip();
foregroundObjects = gw.createEmptyMovieClip('foregroundObjects', foregroundObjectLayer);
foregroundObjectsA = new Array();
buttons.removeMovieClip();
this.createEmptyMovieClip('buttons', buttonLayer);
effects.removeMovieClip();
effects = gw.createEmptyMovieClip('effects', effectsLayer);
backgroundEffects.removeMovieClip();
backgroundEffects = gw.createEmptyMovieClip('backgroundEffects', backgroundEffectsLayer);
}
function changeBgF(scene, method, time, xFlipped, yFlipped, xPos, yPos, heightStretchToFit) {
scene2F(scene, method, time, false, xFlipped, yFlipped, xPos, yPos, heightStretchToFit);
parseNextF();
}
function cgF(scene, method, time, xFlipped, yFlipped, xPos, yPos, heightStretchToFit) {
if (!generalSave.cgNotificationShown) {
generalSave.cgNotificationShown = true;
notificationF('Press <Z>, <+> or <->; or use the mousewheel (Windows only) to zoom in/out of the picture.', true);
}
sceneF(scene, method, time, xFlipped, yFlipped, xPos, yPos, heightStretchToFit);
generalSave.unlockedCg[scene] = true;
save3F(basicGameData.gameFile, 'general', generalSave);
}
function sceneF(scene, method, time, xFlipped, yFlipped, xPos, yPos, heightStretchToFit) {
scene2F(scene, method, time, true, xFlipped, yFlipped, xPos, yPos, heightStretchToFit);
}
function scene2F(scene, method, time, newScene, xFlipped, yFlipped, xPos, yPos, heightStretchToFit) {
if (gw.fadeDealer) {
delete gw.fadeDealer.onEnterFrame;
removeMovieClip(gw.fadeDealer);
}
if ((newScene or xPos != undefined or yPos != undefined) && transitions.bg != undefined) {
removeMovieClip(transitions.bg);
delete transitions.bg.onEnterFrame;
}
currentBackground = scene;
if (isNaN(time)) {
if (method == 'blackFade' || method == 'whiteFade') {
time = 1.2;
} else {
time = 0.6;
}
}
delete mouseChecker.onRelease;
if (method == 'pixellate' && !skipping) {
removeAllChars2F();
pixellateF(scene, xFlipped, yFlipped, xPos, yPos, heightStretchToFit);
} else {
if (method == 'fade' && !skipping) {
if (newScene) {
removeAllChars2F();
}
fadeF(scene, newScene, time, xFlipped, yFlipped, xPos, yPos, heightStretchToFit);
} else {
if (method == 'blackFade' && !skipping) {
colorFadeF(scene, 'black', newScene, time, xFlipped, yFlipped, xPos, yPos, heightStretchToFit);
} else {
if (method == 'whiteFade' && !skipping) {
colorFadeF(scene, 'white', newScene, time, xFlipped, yFlipped, xPos, yPos, heightStretchToFit);
} else {
addBg(scene, newScene, xFlipped, yFlipped, xPos, yPos, heightStretchToFit);
if (newScene) {
removeAllChars2F();
parseNextF();
}
}
}
}
}
}
function jumpF(to) {
ifNests = 0;
removeAllChars2F;
parser = labels[to] - 1;
parseNextF();
}
function endChoiceF() {
parseNextF();
}
function endingF(endingName, endingNameWithSpaces, type) {
skipping = false;
var v2 = false;
if (!generalSave.endings[endingName]) {
generalSave.endingsA.push(endingName);
generalSave.endings[endingName] = true;
generalSave.lastEnding = endingName;
if (generalSave.endingsA.length >= allUniqueEndings.length) {
generalSave.unlockedCommentary = true;
v2 = true;
if (!premiumPatreon) {
notificationF('You have unlocked "Commentary" mode.');
}
}
}
saveF(endingName);
save3F(basicGameData.gameFile, 'general', generalSave);
gameEnded = true;
var v3 = 'ending';
if (v2) {
v3 = 'allEndingsJustNow';
}
noticeDialogueF('ending', endingNameWithSpaces);
}
function choiceF(argument) {
if (argument && argument.style == undefined) {
var v2 = parser;
var v7 = true;
while (v7) {
var v3;
while (v3 == undefined) {
if (parsing['s' + v2][0] == 'endChoice') {
parser = v2 - 1;
parseNextF();
v3 = 'shit';
v7 = false;
} else {
++v2;
}
}
}
} else {
if (!globalSave.continueSkippingAfterChoices) {
skipping = false;
}
var v11 = '';
var v10 = 'middle';
var v9 = 'middle';
if (argument.style != undefined) {
v11 = argument.style;
}
if (argument.xPos != undefined) {
v10 = argument.xPos;
}
if (argument.yPos != undefined) {
v9 = argument.yPos;
}
if (argument.rot != undefined) {
var v12 = argument.rot;
}
var v6 = new Array();
var v2 = parser + 1;
var v7 = true;
while (v7) {
this['choice' + m] = undefined;
var v3 = this['choice' + m];
while (v3 == undefined) {
if (parsing['s' + v2][0] == 'choice') {
if (parsing['s' + v2][2] == undefined or parsing['s' + v2][2] == '') {
v3 = v2;
v6.push(v3);
} else {
var v4 = parsing['s' + v2][2];
if (v4 == 'once') {
v4 = '!choice' + v2;
}
var v5 = false;
v5 = evaluateConditionalF(v4);
if (v5) {
v3 = v2;
v6.push(v3);
}
}
} else {
if (parsing['s' + v2][0] == 'endChoice') {
v3 = 'shit';
v7 = false;
}
}
++v2;
}
}
attachChoiceF(v6, v11, v10, v9, v12);
}
}
function urlF(url) {
url2F(url);
parseNextF();
}
function url2F(url) {
if (url == 'patreonURL') {
url = patreonURL;
}
if (url != '') {
getURL(url, '_blank');
}
}
function easeInOutSine(t, b, c, d) {
return (-c / 2) * (Math.cos(Math.PI * t / d) - 1) + b;
}
function effectF(target, method, strength) {
if (method == 'joltRight') {
panF(target, 15, 0, 0.3);
} else {
if (method == 'joltLeft') {
panF(target, -15, 0, 0.3);
}
}
}
function bitmapCopy(sourceMovieClip, w, h) {
if (w == undefined) {
w = sourceMovieClip._width;
}
if (h == undefined) {
h = sourceMovieClip._height;
}
var v1 = new flash.display.BitmapData(w, h, true, 16777215);
v1.draw(sourceMovieClip);
return v1;
}
function attachLensflare(x, y, strength) {
if (strength == undefined) {
strength = 1;
}
var v16 = effects.getNextHighestDepth();
var v19 = effects.attachMovie('lensflare', 'toBeCopied', v16);
var v15 = effects.createEmptyMovieClip('lensflare', v16 + 1);
var mover = v15.createEmptyMovieClip('mover', 500);
mover.x = x;
mover._x = mover.x;
mover.y = y;
mover._y = mover.y;
v15.flares = [];
var v8 = 0;
while (v8 <= 16) {
var v4 = v19['f' + v8];
var v5 = v15.createEmptyMovieClip('orb' + (v8 + 1), v8 + 1);
var v17 = bitmapCopy(v4);
v5.attachBitmap(v17, 1);
v5._alpha = v4._alpha;
v5.blendMode = 'screen';
v15.flares.push(v5);
v5._height = v5._width / 2;
v5._width = v5._height;
if (v8 == 3) {
v16 = backgroundEffects.getNextHighestDepth();
var n = backgroundEffects.createEmptyMovieClip('backgroundFlare', v16);
n._alpha = 0;
n.maxAlpha = v4._alpha;
v5.mate = n;
v17 = bitmapCopy(v4);
n.attachBitmap(v17, 1);
n.blendMode = 'screen';
n._height = n._width / 2;
n._width = n._height;
}
++v8;
}
v15.flaresDist = [2.5, 1.2, 1, 1, 1, 0.6800000000000001, 0.64, 0.59, 0.3, 0.12, -0.1, -0.25, -0.31, -0.32, -0.5, -0.8, -1.12];
v15._visible = false;
v15.onEnterFrame = function () {
this._visible = true;
var v9 = {'x': screenWidth / 2, 'y': screenHeight / 2};
var v6 = {'x': this.mover._x, 'y': this.mover._y};
this.hit = 100;
var v14 = 150;
var v8 = 0;
while (v8 < foregroundObjectsA.length) {
var v2 = foregroundObjectsA[v8];
var v13 = new flash.geom.Point(v2.bitmap.rectangle.x, v2.bitmap.rectangle.y);
var v5 = new flash.geom.Point();
var v3 = 4;
var v12 = [-v3, -v3, v3, v3, 0, 0, v3, -v3];
var v11 = [v3, -v3, v3, -v3, v3, -v3, 0, 0];
n = 0;
while (n < 8) {
v5.x = (v6.x + v12[n] - v2._x) / (v2.xscale / 100);
v5.y = (v6.y + v11[n] - v2._y) / (v2.yscale / 100);
if (v2.bitmap.hitTest(v13, v14, v5)) {
this.hit -= 12.5;
}
++n;
}
++v8;
}
if (this.hit < 100) {
var v16 = 6.25 * ((100 - this.hit) / 50);
if (this._alpha > this.hit) {
this._alpha -= v16;
} else {
if (this._alpha < this.hit) {
this._alpha += v16;
}
}
} else {
if (this._alpha < 100) {
this._alpha += 25;
}
}
if (this._alpha > 100) {
this._alpha = 100;
} else {
if (this._alpha < 0) {
this._alpha = 0;
}
}
var v15 = backgroundEffects.backgroundFlare;
var v17 = v15.maxAlpha / 100;
v15._alpha = (100 - this._alpha) * 1.1;
var v7 = 0;
while (v7 < this.flaresDist.length) {
var v4 = this.flares[v7];
var v10 = this.flaresDist[v7];
v4._x = v9.x + (v6.x - v9.x) * v10 - v4._width / 2;
v4._y = v9.y + (v6.y - v9.y) * v10 - v4._height / 2;
if (v4.mate != undefined) {
v4.mate._x = v4._x;
v4.mate._y = v4._y;
}
++v7;
}
};
}
function removeScreenEffectsF() {
shakeF(gw, 0, 0, 0, false, false);
effects.removeMovieClip();
effects = gw.createEmptyMovieClip('effects', effectsLayer);
backgroundEffects.removeMovieClip();
backgroundEffects = gw.createEmptyMovieClip('backgroundEffects', backgroundEffectsLayer);
parseNextF();
}
function screenEffectF(method, a, b, c, d) {
screenEffect2F(method, a, b, c, d);
parseNextF();
}
function screenEffect2F(method, a, b, c, d) {
if (method == 'whiteFlash') {
var col = 16777215;
var bc = crap.createEmptyMovieClip(what._name + 'Flash', crap.getNextHighestDepth());
with (bc) {
beginFill(col);
moveTo(0, 0);
lineTo(screenWidth, 0);
lineTo(screenWidth, screenHeight);
lineTo(0, screenHeight);
lineTo(0, 0);
endFill();
}
bc._alpha = 70;
bc.t = 0;
bc.onEnterFrame = function () {
if (!gamePaused) {
++this.t;
if (this.t == 2) {
this._alpha = 100;
} else {
if (this.t >= 3) {
this._alpha -= this.t * 3;
if (this._alpha <= 0) {
removeMovieClip(this);
delete this.onEnterFrame;
}
}
}
}
};
} else {
if (method == 'lensflare') {
attachLensflare(a, b, c);
} else {
if (method == 'verticalShakeBg') {
if (a == undefined) {
a = 25;
}
if (b == undefined) {
b = 1;
}
if (c == undefined) {
c = 35;
}
shakeF(bg, a, b, c, false, true);
} else {
if (method == 'constantShake') {
shakeF(gw, 8, 1000, 50, true, true);
} else {
if (method == 'verticalShake') {
if (a == undefined) {
a = 25;
}
if (b == undefined) {
b = 1;
}
if (c == undefined) {
c = 35;
}
shakeF(gw, a, b, c, false, true);
} else {
if (method == 'shakeBg') {
if (a == undefined) {
a = 25;
}
if (b == undefined) {
b = 1;
}
shakeF(bg, a, b, x, true, true);
} else {
if (method == 'shake') {
if (a == undefined) {
a = 25;
}
if (b == undefined) {
b = 1;
}
shakeF(gw, a, b, x, true, true);
} else {
if (method == 'shakeForeground') {
if (a == undefined) {
a = 25;
}
if (b == undefined) {
b = 1;
}
shakeF(foregroundObjects, a, b, x, true, true);
} else {
if (method == 'quake') {
if (a == undefined) {
a = 25;
}
if (b == undefined) {
b = 1;
}
shakeF(gw, a, b, x, true, true);
shakeF(foregroundObjects, a / 2, b, x, true, true);
} else {
if (method == 'injured') {
shakeF(gw, 20, x, true, true);
}
}
}
}
}
}
}
}
}
}
}
function shakeF(what, intensity, time, freq, x, y) {
if (!skipping) {
var v2 = crap[what._name + 'Shaker'];
if (v2 != undefined) {
delete v2.onEnterFrame;
removeMovieClip(v2);
what._x = what.motoX;
what._y = what.motoY;
}
if (freq == undefined or freq == '') {
freq = 50;
}
what.motoX = what._x;
what.motoY = what._y;
var b = crap.createEmptyMovieClip(what._name + 'Shaker', crap.getNextHighestDepth());
b.t = 0;
b.tim = time * fps;
b.x = x;
b.y = y;
b.freq = freq;
b.onEnterFrame = function () {
++this.t;
this.shake = intensity * ((this.tim - this.t) / this.tim);
if (this.shake <= 0) {
what._x = what.motoX;
what._y = what.motoY;
removeMovieClip(this);
delete this.onEnterFrame;
} else {
amp = this.shake;
freq = this.freq;
var t = this.t;
var v3 = amp * Math.sin(freq * 2 * t * 0.0174532925199433);
var v2 = amp * Math.cos(freq * 2 * t * 0.0174532925199433);
if (b.x) {
what._x = v3;
}
if (b.y) {
what._y = v2;
}
}
};
}
}
function tintF(what, color, alpha) {
if (alpha == undefined) {
alpha = 100;
}
var v1 = hexToRGB(color);
var v2 = new Color(what);
v2.setTint(v1[0], v1[1], v1[2], alpha);
}
function unTintF(what) {
var v1 = new Color(what);
v1.setTint(0, 0, 0, 0);
v1.removeTint();
}
function hexToRGB(hex) {
r = hex >> 16;
temp = hex ^ r << 16;
g = temp >> 8;
b = temp ^ g << 8;
return [r, g, b];
}
function panAllF(time) {
var v5 = time;
if (v5 == undefined) {
v5 = 15;
}
var v4 = -(bg._width - screenWidth);
if (bg._x < 0) {
v4 = -v4;
}
pan2F('bg', v4, 0, v5);
var v1 = 0;
while (v1 < foregroundObjectsA.length) {
var v3 = foregroundObjectsA[v1].who;
var v2 = foregroundObjectsA[v1];
pan2F(v3, v4 / (1 + v2.zoom * 1.5), 0, v5);
++v1;
}
parseNextF();
}
function panF(target, xDistance, yDistance, seconds) {
pan2F(target, xDistance, yDistance, seconds);
parseNextF();
}
function pan2F(target, xDistance, yDistance, seconds) {
seconds = int(seconds * fps);
var v3 = transitions[target];
if (v3 != undefined) {
v3.targ._x = v3.targ.x;
v3.targ._y = v3.targ.y;
delete v3.onEnterFrame;
removeMovieClip(v3);
}
if (target == 'bg') {
var targ = bg;
} else {
if (target == 'lensflare') {
g = effects.lensflare.mover;
var targ = g;
} else {
var targ = foregroundObjects[target];
}
}
if (skipping) {
targ.x += xDistance;
targ._x = targ.x;
targ.y += yDistance;
targ._y = targ.y;
} else {
d = transitions.getNextHighestDepth();
var v2 = transitions.createEmptyMovieClip(target, d);
v2.targ = targ;
v2.targ.x += xDistance;
v2.targ.y += yDistance;
v2.t = 0;
v2.motoX = v2.targ._x;
v2.motoY = v2.targ._y;
v2.xDist = xDistance;
v2.yDist = yDistance;
v2.dur = seconds;
v2.onEnterFrame = function () {
if (!gamePaused) {
++this.t;
this.targ._x = easeInOutSine(this.t, this.motoX, this.xDist, this.dur);
this.targ._y = easeInOutSine(this.t, this.motoY, this.yDist, this.dur);
if (this.t >= this.dur) {
this.targ._x = this.motoX + this.xDist;
this.targ._y = this.motoY + this.yDist;
if (this.remove) {
}
removeMovieClip(this);
delete this.onEnterFrame;
}
}
};
}
}
function highlightChoiceF(order) {
var v1 = 0;
while (v1 < choiceBoxA.length) {
if (order != v1) {
choiceBoxA[v1].prevFrame();
choiceBoxA[v1].theText.htmlText = choiceBoxA[v1].choiceText;
}
++v1;
}
playSound2F('buttonUp');
choiceBoxA[order].nextFrame();
choiceBoxA[order].theText.htmlText = choiceBoxA[order].choiceText;
currentlySelected = order;
}
function selectChoiceF(what, txt) {
if (outOfMenuIntoGame) {
registerInLog(txt, 'choice');
}
playSound2F('buttonUp');
variables['choice' + what] = true;
removeMovieClip(choiceMC);
parser = what;
parseNextF();
}
function otherwiseF() {
++parser;
var v2 = ifNests;
while (!false) {
++parser;
var v1 = parsing['s' + parser][0];
if (v1 == undefined) {
break;
}
if (v1 == 'whatIf') {
++v2;
} else {
if (v2 == ifNests) {
if (v1 == 'endIf') {
--ifNests;
break;
}
} else {
if (v1 == 'endIf') {
--v2;
}
}
}
}
parseNextF();
}
function passF() {
parseNextF();
}
function elseIfF(conditional) {
otherwiseF();
}
function endIfF(conditional) {
--ifNests;
parseNextF();
}
function evaluateConditionalF(conditional) {
var v8 = false;
var v9 = variables;
if (conditional.indexOf('cheats.') != -1) {
v9 = activatedCheats;
conditional = conditional.substr(conditional.indexOf('.') + 1);
}
if (conditional == '') {
v8 = true;
return v8;
}
if (conditional == 'premium') {
v8 = true;
return v8;
}
if (conditional == 'autoSaveExists') {
var v10 = checkWhichSave(basicGameData.gameFile, 'autoSave');
if (v10 != undefined) {
v8 = true;
}
return v8;
}
if (conditional == 'showPatreon') {
if (!dontShowPatreon) {
v8 = true;
}
return v8;
}
if (conditional == 'continueCheck') {
v10 = checkWhichSave(basicGameData.gameFile, 'autoSave');
if (v10 != undefined) {
v8 = true;
}
return v8;
}
if (conditional.substr(0, 1) == '!') {
if (!v9[conditional.substr(1, conditional.length)]) {
v8 = true;
}
return v8;
}
if (conditional.indexOf('=') == -1 && conditional.indexOf('>') == -1 && conditional.indexOf('<') == -1) {
if (v9[conditional]) {
v8 = true;
}
return v8;
}
var v2 = '';
var v7 = '';
var v4 = '';
var v5 = ['>=', '<=', '==', '<', '>', '!=', '='];
var v1 = 0;
while (v1 < v5.length) {
var v6 = conditional.indexOf(v5[v1]);
if (v6 != -1) {
v4 = conditional.substr(0, v6);
v4 = v9[v4];
v7 = conditional.substr(v6 + v5[v1].length, conditional.length);
v2 = v5[v1];
v1 = v5.length;
if (v2 == '<' or v2 == '<=' or v2 == '>' or v2 == '>=') {
if (isNaN(Number(v4))) {
v4 = 0;
}
if (isNaN(Number(v7))) {
v7 = 0;
}
}
}
++v1;
}
if (v2 == '') {
return v8;
}
if (v2 == '<') {
if (v4 < v7) {
v8 = true;
}
return v8;
}
if (v2 == '>') {
if (v4 > v7) {
v8 = true;
}
return v8;
}
if (v2 == '>=') {
if (v4 >= v7) {
v8 = true;
}
return v8;
}
if (v2 == '<=') {
if (v4 <= v7) {
v8 = true;
}
return v8;
}
if (v2 == '=' or v2 == '==') {
if (v4 == v7) {
v8 = true;
}
return v8;
}
if (v2 == '!=') {
if (v4 != v7) {
v8 = true;
}
}
return v8;
}
function whatIfF(conditional) {
var v4 = false;
++ifNests;
v4 = evaluateConditionalF(conditional);
if (v4) {
parseNextF();
} else {
var v2 = 0;
var v3 = 0;
while (!false) {
++parser;
var v1 = parsing['s' + parser][0];
if (v2 == 0) {
if (v1 == 'elseIf') {
--ifNests;
whatIfF(parsing['s' + parser][1]);
break;
} else {
if (v1 == 'otherwise') {
parseNextF();
break;
} else {
if (v1 == 'endIf') {
--ifNests;
parseNextF();
break;
}
}
}
}
if (v1 == 'whatIf') {
++v2;
} else {
if (v1 == 'endIf') {
--v2;
}
}
++v3;
if (v3 > 500) {
break;
}
}
}
}
function incrementVariableF(variable, amount) {
if (variables[variable] == undefined) {
variables[variable] = amount;
} else {
variables[variable] += amount;
}
parseNextF();
}
function setVariableF(variable, amount) {
setVariable2F(variable, amount);
parseNextF();
}
function setVariable2F(variable, amount) {
if (amount == undefined) {
amount = true;
}
variables[variable] = amount;
}
function startGameAndJumpF(label) {
outOfMenuIntoGame = true;
Key.removeListener(cheatListener);
jumpF(label);
}
function removeNoticeDialogueF() {
var v1 = getInstanceAtDepth(dialogueLayer);
v1._visible = true;
noticeDialogueActive = false;
removeMovieClip(getInstanceAtDepth(noticeDialogueLayer));
}
function noticeDialogueF(d, a) {
currentlySelected = -1;
highlightChoiceF(currentlySelected);
if (d == 'premium') {
var v16 = 'PREMIUM CONTENT UNAVAILABLE';
var v17 = 'Premium choices lead to bonus content/branches/routes (that are not necessary to reach the end of the game). They are only available to those of our patrons who have pledged $5 (or more) to support us developing games like this one. If you would like to become a patron, please <a href=\'' + patreonURL + '\'>click here</a> (link opens in a new window).';
var v18 = 'If you choose to become a premium patron you can access the premium content immediately if you follow the instructions after pledging - you won\'t even have to restart the game. ';
var v4 = ['Return', 'Support us on Patreon'];
var types = ['ok', 'patreon'];
} else {
if (d == 'ending' || d == 'allEndingsJustNow') {
var v16 = 'ENDING: ' + a;
var v7 = '';
var v10 = ' Please consider <a href=\'' + patreonURL + '\'>supporting us on Patreon</a>.';
var types = ['restart', 'patreon'];
if (d == allEndingsJustNow) {
v7 = ' Congratulations! You can now play the game with commentary from the authors of the game (see the "Options" screen).';
}
if (patreonPledger) {
v10 = ' Thank you for pledging to support us on <a href=\'' + patreonURL + '\'>Patreon</a>! Without your support, we couldn\'t go on.';
}
var v17 = 'You\'ve unlocked ' + generalSave.endingsA.length + ' out of ' + allUniqueEndings.length + ' endings.' + v7 + ' Thank you for playing!' + v10;
var v4 = ['Main menu', 'Support us on Patreon'];
}
}
var options = types.length;
a = getInstanceAtDepth(dialogueLayer);
a._visible = false;
noticeDialogueActive = true;
this.createEmptyMovieClip('nd', noticeDialogueLayer);
nd.types = types;
nd.options = options;
var v3 = nd.attachMovie('noticeDialogue', 'nd', 1);
v3.head.htmlText = v16;
v3.main.html = true;
v3.main.htmlText = v17;
var v5 = new TextField.StyleSheet();
v5.setStyle('a:link', {'color': '#FF8774', 'textDecoration': 'none'});
v5.setStyle('a:hover', {'color': '#CCCCCC', 'textDecoration': 'none'});
v3.main.styleSheet = v5;
false;
var v9 = v3.main.bottomScroll;
var v13 = 232;
var v11 = 81;
var v12 = 8;
v3.body._height = v11 + (v13 - v11) * ((v9 - 2) / (v12 - 2));
v3.main._height -= (v12 - v9) * 20;
var v14 = v3.head.bottomScroll;
if (v14 == 2) {
v3.body._height += v3.head._height / 2;
v3.main._y += v3.head._height / 2;
}
var i = 0;
while (i < options) {
var v2 = nd.attachMovie('noticeDialogueChoice', 'choice' + (i + 1), 2 + i, {'_y': v3.body._height});
v2._y += nd.choice1._height * i;
v2.stop();
v2.i = i;
v2.main.htmlText = v4[i];
v2.onRollOver = function () {
playSound2F('buttonUp');
nd['choice' + nd.currentlySelected].prevFrame();
nd.currentlySelected = this.i + 1;
this.nextFrame();
};
v2.onPress = function () {
var v2 = nd.types[this.i];
playSound2F('buttonUp');
if (v2 == 'ok') {
removeNoticeDialogueF();
} else {
if (v2 == 'patreon') {
getURL(patreonURL, '_blank');
} else {
if (v2 == 'restart') {
removeNoticeDialogueF();
restartF();
}
}
}
};
++i;
}
nd.attachMovie('noticeDialogueBottom', 'bottom', 15, {'_y': v3.body._height + nd.choice1._height * options});
nd.currentlySelected = 0;
nd.onEnterFrame = function () {
if (nd.hidden) {
if (myKeys.ENTER or myKeys.SPACE) {
dialogueHiderF();
}
} else {
if (this.currentlySelected >= 1 && (myKeys.ENTER or myKeys.SPACE)) {
playSound2F('buttonUp');
var v2 = this.types[this.currentlySelected - 1];
if (v2 == 'ok') {
removeNoticeDialogueF();
} else {
if (v2 == 'patreon') {
getURL(patreonURL, '_blank');
} else {
if (v2 == 'restart') {
removeNoticeDialogueF();
restartF();
}
}
}
}
if (myKeys.DOWN) {
playSound2F('buttonUp');
if (this.currentlySelected < this.options) {
this['choice' + this.currentlySelected].prevFrame();
++this.currentlySelected;
this['choice' + this.currentlySelected].nextFrame();
}
} else {
if (myKeys.UP) {
playSound2F('buttonUp');
if (this.currentlySelected >= 0) {
this['choice' + this.currentlySelected].prevFrame();
if (this.currentlySelected <= 1) {
this.currentlySelected = 1;
} else {
--this.currentlySelected;
}
this['choice' + this.currentlySelected].nextFrame();
}
}
}
}
};
nd._x = screenWidth / 2 - nd._width / 2;
nd._y = screenHeight / 2 - nd._height / 2;
}
function attachChoiceF(choiceA, style, xPos, yPos, rot) {
this.createEmptyMovieClip('choiceMC', dialogueLayer);
choiceMC.style = style;
var premiumChoices = new Object();
choiceBoxA = new Array();
var v9 = 0;
choiceMC.minusY = 0;
var i = 0;
while (i < choiceA.length) {
var v7 = parsing['s' + choiceA[i]][2];
var v5 = style;
var v12 = false;
if (v7 == 'premium') {
premiumChoices['choice' + i] = true;
v5 = 'Premium';
v12 = true;
}
var v2 = choiceMC.attachMovie('choiceBox' + v5, 'choiceBox' + i, i + 1);
v2.stop();
v2.premium = v12;
var v3 = v2.body._height;
if (v3 == undefined) {
v3 = v2._height;
}
v2._y = v9 + i * (v3 + 10);
v2._x = 0;
choiceBoxA.push(v2);
v2.choiceText = parsing['s' + choiceA[i]][1];
v2.theText.htmlText = v2.choiceText;
var v4 = v2.theText.bottomScroll;
v2.body.gotoAndStop(v4);
var v6 = 4;
var v8 = v2._height / v6;
choiceMC.minusY = (v6 - v4) * v8;
v9 += v2.body._height - v3;
v2.i = i;
v2.onRollOver = function () {
highlightChoiceF(this.i);
};
v2.onPress = function () {
if (!this.premium || this.premium && premiumPatron) {
selectChoiceF(choiceA[this.i], this.choiceText);
} else {
noticeDialogueF('premium');
}
};
++i;
}
if (rot != undefined) {
choiceMC._rotation = rot;
}
if (!isNaN(Number(yPos))) {
choiceMC._y = yPos;
} else {
if (yPos == 'middle') {
choiceMC._y = int(screenHeight / 2 - (choiceMC._height - choiceMC.minusY) / 2);
} else {
if (yPos == 'bottom') {
choiceMC._y = screenHeight - (choiceMC._height + 10);
}
}
}
if (!isNaN(Number(xPos))) {
choiceMC._x = xPos;
} else {
if (xPos == 'middle') {
choiceMC._x = (screenWidth - choiceMC._width) / 2;
} else {
if (xPos == 'left') {
choiceMC._x = 10;
} else {
if (xPos == 'right') {
choiceMC._x = screenWidth - (choiceMC._width + 10);
}
}
}
}
resizeAndReplaceF();
if (lastAction == 'key') {
highlightChoiceF(0);
} else {
currentlySelected = -1;
}
choiceMC.onEnterFrame = function () {
if (!gamePaused && !noticeDialogueActive) {
if (currentlySelected >= 0 && (myKeys.ENTER or myKeys.SPACE)) {
var v1 = premiumChoices['choice' + currentlySelected];
playSound2F('select');
if (!v1 || v1 && premiumPatron) {
selectChoiceF(choiceA[currentlySelected], choiceMC['choiceBox' + currentlySelected].choiceText);
} else {
noticeDialogueF('premium');
}
}
if (myKeys.DOWN) {
if (currentlySelected < choiceBoxA.length - 1) {
++currentlySelected;
}
highlightChoiceF(currentlySelected);
} else {
if (myKeys.UP) {
if (currentlySelected > 0) {
--currentlySelected;
} else {
if (currentlySelected == -1) {
currentlySelected = 0;
}
}
highlightChoiceF(currentlySelected);
}
}
}
};
}
function sceneClipF(clip, playOnceBeforeParseNext) {
removeMovieClip(bg);
bg = gw.createEmptyMovieClip('bg', bgLayer);
var c = bg.attachMovie(clip, 'clip', bg.getNextHighestDepth());
c.stop();
c.onEnterFrame = function () {
if (c._currentframe == c._totalframes or !outOfMenuIntoGame && (myKeys.SPACE or mouseClick or myKeys.ENTER)) {
c.gotoAndStop(c._totalframes);
delete this.onEnterFrame;
parseNextF();
} else {
c.nextFrame();
}
};
}
function addToCgF(b, method, time, dontFireOffParseNext, otherBg) {
var v4 = false;
var v2 = b;
if (!activatedCheats.skinnyTail) {
if (v2.indexOf('cattail') != -1) {
v4 = true;
}
}
if (!activatedCheats.fluffyTail) {
if (v2.indexOf('dogtail') != -1) {
v4 = true;
}
}
if (!activatedCheats.elf) {
if (v2.indexOf('elfears') != -1) {
v4 = true;
}
}
if (!activatedCheats.fluffyTail && !activatedCheats.skinnyTail) {
if (v2.indexOf('catears') != -1) {
v4 = true;
}
}
if (activatedCheats.nude or activatedCheats.topNude) {
if (v2.indexOf('bra') != -1) {
if (v2.indexOf('face_bra') != -1 or v2.indexOf('doggy_braoff') != -1 or v2.indexOf('by_fire_bra') != -1) {
v4 = true;
} else {
if (v2.indexOf('doggy_boobsinbra') != -1) {
v2 = 'doggy_jungle_freeboobs';
} else {
var v11 = v2.indexOf('bra');
var v10 = v2.slice(0, v11);
v2 = v10 + 'freeboobs';
}
}
}
}
if (activatedCheats.nude or activatedCheats.bottomNude) {
if (v2.indexOf('pants') != -1) {
v4 = true;
}
}
if (activatedCheats.shaved) {
if (v2.indexOf('pubes') != -1) {
v4 = true;
}
}
if (v4) {
if (method == undefined && !dontFireOffParseNext) {
parseNextF();
}
} else {
var v14 = true;
var v3 = bg;
if (otherBg != undefined) {
v3 = otherBg;
}
if (time == undefined) {
time = 0.6;
}
time = int(time * fps);
var v6 = flash.display.BitmapData.loadBitmap(v2 + '.png');
if (v6 == undefined) {
v6 = flash.display.BitmapData.loadBitmap('cg_' + v2 + '.png');
}
v3.addedCgA.push(b);
if (method == 'fade') {
checkIfNextFewItemsAreAddToCg(true);
var v5 = gw.createEmptyMovieClip('fadeDealer', pixelDealerLayer);
var v8 = flash.display.BitmapData.loadBitmap(v3.backgroundContainer.image);
v8.draw(v3.backgroundContainer.imageBmp);
v5.attachBitmap(v8, 1);
var v9 = screenHeight / v3.heightStretchToFit;
v5._yscale = 100 * v9;
v5._xscale = v5._yscale;
v5.t = 0;
v5.t2 = 0;
v5.onEnterFrame = function () {
if (!gamePaused) {
if (this.t == 0) {
++this.t2;
this._alpha = easeInOutSine(this.t2, 100, -100, time);
if (this._alpha <= 0) {
this.t = 1;
}
} else {
if (this.t == 1) {
this.t = 2;
removeMovieClip(this);
delete this.onEnterFrame;
if (!dontFireOffParseNext) {
parseNextF();
}
}
}
}
};
}
if (v3.xFlipped) {
var v7 = new flash.geom.Matrix();
v7.scale(-1, 1);
v7.translate(v3.backgroundContainer.xFlippedBmp.width, 0);
v3.backgroundContainer.xFlippedBmp.draw(v6, v7);
} else {
v3.backgroundContainer.imageBmp.draw(v6);
}
if (method == undefined && !dontFireOffParseNext) {
parseNextF();
}
}
}
function addBg(b, newScene, xFlipped, yFlipped, xPos, yPos, heightStretchToFit, temp, forScreenshot) {
if (xFlipped) {
} else {
xFlipped = false;
}
if (yFlipped) {
} else {
yFlipped = false;
}
var v13 = 2;
var v1 = bg;
if (forScreenshot) {
v1 = crap.createEmptyMovieClip('bg', crap.getNextHighestDepth());
} else {
if (!temp) {
removeMovieClip(v1);
v1 = gw.createEmptyMovieClip('bg', bgLayer);
} else {
var v8 = v1.getNextHighestDepth();
var v19 = v1.getInstanceAtDepth(v8 - 1);
var v4 = v8 - 2;
while (v4 >= 0) {
var v3 = v1.getInstanceAtDepth(v4);
if (v3 != undefined) {
removeMovieClip(v3);
}
--v4;
}
v13 = v8;
}
}
v1.xFlipped = xFlipped;
v1.yFlipped = yFlipped;
var v2 = v1.createEmptyMovieClip('container' + v13, v13);
v1.backgroundContainer = v2;
if (!forScreenshot) {
currentBackground = b;
}
v1.addedCgA = new Array();
var v5 = b + '.png';
v2.imageBmp = flash.display.BitmapData.loadBitmap(v5);
if (v2.imageBmp == undefined) {
v5 = 'bg_' + b + '.png';
v2.imageBmp = flash.display.BitmapData.loadBitmap(v5);
}
if (v2.imageBmp == undefined) {
v5 = 'cg_' + b + '.png';
v2.imageBmp = flash.display.BitmapData.loadBitmap(v5);
}
v2.image = v5;
if (v2.imageBmp == undefined) {
v2.attachMovie(b, 'bg', 1);
if (xFlipped) {
v2.bg._xscale = -v2.bg._xscale;
v2.bg._x = v2.bg._width;
}
} else {
if (xFlipped || yFlipped) {
var v11 = new flash.geom.Matrix();
var v18 = 1;
var v17 = 1;
var v15 = 0;
var v16 = 0;
if (xFlipped) {
v18 = -1;
v15 = v2.imageBmp.width;
}
if (yFlipped) {
v17 = -1;
v16 = v2.imageBmp.height;
}
v11.scale(v18, v17);
v11.translate(v15, v16);
v2.xFlippedBmp = new flash.display.BitmapData(v2.imageBmp.width, v2.imageBmp.height, true, 0);
v2.xFlippedBmp.draw(v2.imageBmp, v11);
v2.imageBmp.dispose();
v2.attachBitmap(v2.xFlippedBmp, 1, auto, true);
} else {
v2.attachBitmap(v2.imageBmp, 1, auto, true);
}
}
if (heightStretchToFit == undefined) {
heightStretchToFit = v2._height;
}
v1.heightStretchToFit = heightStretchToFit;
var v20 = screenHeight / heightStretchToFit;
v2._yscale = 100 * v20;
v2._xscale = v2._yscale;
if (yPos != undefined) {
if (yPos == 'bottom') {
yPos = screenHeight - v1._height;
}
v1._y = yPos;
v1.y = v1._y;
} else {
if (newScene) {
v1._y = 0;
v1.y = 0;
}
}
if (xPos != undefined && xPos != '') {
if (xPos == 'right') {
xPos = screenWidth - v1._width;
} else {
if (xPos == 'center') {
xPos = int((screenWidth - v1._width) / 2);
}
}
v1._x = xPos;
v1.x = v1._x;
} else {
if (newScene) {
v19._x += v1._x;
v1._x = 0;
v1.x = 0;
}
}
if (forScreenshot) {
return v1;
} else {
return v2;
}
}
function calculateF(variable, expression, integer) {
var v7 = '';
var v2 = '';
var v1 = '';
var v8 = '';
var v4 = ['+', '-', '/', 'x', '*'];
var v3 = 0;
while (v3 < v4.length) {
var v5 = expression.indexOf(v4[v3]);
if (v5 != -1) {
v2 = expression.substr(0, v5);
if (isNaN(Number(v2))) {
v2 = variables[v2];
if (isNaN(Number(v2))) {
v2 = 0;
}
}
v2 = Number(v2);
v7 = v4[v3];
v1 = expression.substr(v5 + v4[v3].length, expression.length);
if (isNaN(Number(v1))) {
v1 = variables[v1];
if (isNaN(Number(v1))) {
v1 = 0;
}
}
v1 = Number(v1);
v3 = v4.length;
}
++v3;
}
if (v7 == '') {
v8 = expression;
} else {
if (v7 == '+') {
v8 = v2 + v1;
} else {
if (v7 == '-') {
v8 = v2 - v1;
} else {
if (v7 == '/') {
v8 = v2 / v1;
} else {
if (v7 == '*' or v7 == 'x') {
v8 = v2 * v1;
}
}
}
}
}
if (integer) {
v8 = int(v8);
}
variables[variable] = v8;
parseNextF();
}
function fadeF(newBg, newScene, time, xFlipped, yFlipped, xPos, yPos, heightStretchToFit) {
var v2 = addBg(newBg, newScene, xFlipped, yFlipped, xPos, yPos, heightStretchToFit, true);
checkIfNextFewItemsAreAddToCg(false);
time = int(time * fps);
var v3 = pixelDealerLayer;
if (!newScene) {
v3 = pixelBehindDealerLayer;
}
fadeDealer = gw.createEmptyMovieClip('fadeDealer', v3);
if (xPos != undefined or yPos != undefined) {
}
v2._alpha = 0;
fadeDealer.targ = v2;
fadeDealer.t = 0;
fadeDealer.t2 = 0;
fadeDealer.onEnterFrame = function () {
if (!gamePaused) {
if (this.t == 0) {
if (!outOfMenuIntoGame && (myKeys.SPACE or mouseClick or myKeys.ENTER)) {
this.t = 1;
this.targ._alpha = 100;
} else {
++this.t2;
this.targ._alpha = int(easeInOutSine(this.t2, 0, 100, time));
if (this.targ._alpha >= 100) {
this.t = 1;
}
}
} else {
if (this.t == 1) {
if (newScene) {
addBg(newBg, true, xFlipped, yFlipped, xPos, yPos, heightStretchToFit);
checkIfNextFewItemsAreAddToCg(true);
}
this.t = 2;
removeMovieClip(this);
delete this.onEnterFrame;
if (newScene) {
parseNextF();
}
}
}
}
};
}
function colorFadeF(newBg, color, newScene, time, xFlipped, yFlipped, xPos, yPos, heightStretchToFit) {
time = int(time * fps);
var layer = pixelDealerLayer;
if (!newScene) {
layer = pixelBehindDealerLayer;
}
fadeDealer = gw.createEmptyMovieClip('fadeDealer', layer);
fadeDealer._alpha = 0;
fadeDealer.pseudoAlpha = 0;
fadeDealer.t = 0;
fadeDealer.incrementAlpha = (100 / time) * 2;
var c = 0;
if (color == 'black') {
} else {
if (color == 'white') {
var c = 16777215;
}
}
with (fadeDealer) {
beginFill(c);
moveTo(-500, -500);
lineTo(screenWidth + 500, -500);
lineTo(screenWidth + 500, screenHeight + 500);
lineTo(-500, screenHeight + 500);
lineTo(-500, -500);
endFill();
}
fadeDealer.onEnterFrame = function () {
if (!gamePaused) {
if (this.t == 0) {
if (skipping) {
this.t = 1;
}
if (!outOfMenuIntoGame && (myKeys.SPACE or mouseClick or myKeys.ENTER)) {
this.t = 1;
this._alpha = 100;
this.pressed = true;
} else {
this.pseudoAlpha += this.incrementAlpha;
this._alpha = int(this.pseudoAlpha);
if (this._alpha >= 100) {
this.t = 1;
}
}
} else {
if (this.t == 1) {
if (newScene) {
removeAllChars2F();
}
addBg(newBg, newScene, xFlipped, yFlipped, xPos, yPos, heightStretchToFit);
checkIfNextFewItemsAreAddToCg(true);
this.t = 2;
} else {
if (this.t == 2) {
this.pseudoAlpha -= this.incrementAlpha;
this._alpha = int(this.pseudoAlpha);
if (this._alpha <= 0 or this.pressed or skipping) {
removeMovieClip(this);
delete this.onEnterFrame;
if (newScene) {
parseNextF();
}
}
}
}
}
}
};
}
function checkIfNextFewItemsAreAddToCg(parsePlus) {
var v3 = parser;
var v2 = true;
while (v2) {
++v3;
var v1 = parsing['s' + v3];
if (v1[0] == 'addToCg' && v1[2] != 'fade') {
addToCgF(v1[1], x, x, true);
if (parsePlus) {
++parser;
}
} else {
if (v1[0] == 'screenEffect' && v1[1] == 'lensflare' || v1[0] == 'item') {
parseNextF(true);
} else {
v2 = false;
}
}
}
}
function pixellateF(newBg, xFlipped, yFlipped, xPos, yPos) {
this.createEmptyMovieClip('pixelDealer', pixelDealerLayer);
pixelDealer.t = 10000;
pixelDealer.f = 1;
pixelDealer.scaler = 0;
scaleA = [0.5, 0.3, 0.2, 0.1, 0.05, 0.02, 0.01, 0.002];
pixelDealer.onEnterFrame = function () {
if (!gamePaused) {
++this.t;
if (this.t >= 2) {
this.t = 0;
if (this.f == 1) {
pixellyF(scaleA[this.scaler]);
++this.scaler;
if (this.scaler == scaleA.length) {
addBg(newBg, true, xFlipped);
this.f = 2;
this.scaler -= 2;
}
} else {
if (this.f == 2) {
pixellyF(scaleA[this.scaler]);
--this.scaler;
if (this.scaler < 0) {
bg.container._yscale = 100;
bg.container._xscale = 100;
this.f = 3;
removeMovieClip(pix);
}
} else {
if (this.f >= 3) {
++this.f;
if (this.f == 8) {
removeMovieClip(this);
delete this.onEnterFrame;
parseNextF();
}
}
}
}
}
}
};
}
function pixellyF(scale) {
removeMovieClip(this.getInstanceAtDepth(pixellationLayer));
this.createEmptyMovieClip('pix', pixellationLayer);
bg.container._yscale = 100 * scale;
bg.container._xscale = bg.container._yscale;
myBitmap = new flash.display.BitmapData(screenWidth * scale, screenHeight * scale, false, 16777215);
myBitmap.draw(bg);
pix.attachBitmap(myBitmap, 5);
pix._width = screenWidth;
pix._height = screenHeight;
}
function unactivateCheat(ch) {
ch.activated = false;
var v1 = ch.effect;
activatedCheats[v1] = false;
variables[v1] = false;
setVariable2F('fcousin', 'cousin');
setVariable2F('mcousin', 'cousin');
setVariable2F('fcuz', 'cuz');
setVariable2F('mcuz', 'cuz');
setVariable2F('cousins', 'cousins');
setVariable2F('firstCousins', 'first cousins');
setVariable2F('sophOrSis', 'Soph');
setVariable2F('myCousin', 'Sophie');
setVariable2F('catgirl', false);
}
function activateCheat(ch) {
var v2 = ch.effect;
ch.activated = true;
activatedCheats[v2] = true;
variables[v2] = true;
notificationF('Cheat: "' + v2 + '" activated.');
cheatstring = '';
if (v2 == 'nude') {
} else {
if (v2 == 'topNude') {
unactivateCheat(cheatsO.nude);
} else {
if (v2 == 'bottomNude') {
unactivateCheat(cheatsO.nude);
} else {
if (v2 == 'shaved') {
} else {
if (v2 == 'friend') {
unactivateCheat(cheatsO.daughter);
unactivateCheat(cheatsO.sister);
unactivateCheat(cheatsO.elf);
setVariable2F('fcousin', 'friend');
setVariable2F('mcousin', 'friend');
setVariable2F('fcuz', 'Soph');
setVariable2F('mcuz', 'man');
setVariable2F('cousins', 'friends');
setVariable2F('firstCousins', 'friends');
setVariable2F('sophOrSis', 'Soph');
setVariable2F('myCousin', 'Sophie');
} else {
if (v2 == 'sister') {
unactivateCheat(cheatsO.daughter);
unactivateCheat(cheatsO.friend);
unactivateCheat(cheatsO.elf);
setVariable2F('fcousin', 'sister');
setVariable2F('mcousin', 'brother');
setVariable2F('fcuz', 'sis');
setVariable2F('mcuz', 'bro');
setVariable2F('cousins', 'brother and sister');
setVariable2F('firstCousins', 'siblings');
setVariable2F('sophOrSis', 'sis');
setVariable2F('myCousin', 'my sister');
} else {
if (v2 == 'skinnyTail') {
unactivateCheat(cheatsO.elf);
unactivateCheat(cheatsO.fluffyTail);
setVariable2F('catgirl', true);
} else {
if (v2 == 'fluffyTail') {
unactivateCheat(cheatsO.elf);
unactivateCheat(cheatsO.skinnyTail);
setVariable2F('catgirl', true);
} else {
if (v2 == 'elf') {
unactivateCheat(cheatsO.sister);
unactivateCheat(cheatsO.friend);
unactivateCheat(cheatsO.daughter);
unactivateCheat(cheatsO.skinnyTail);
unactivateCheat(cheatsO.fluffyTail);
} else {
if (v2 == 'daughter') {
unactivateCheat(cheatsO.sister);
unactivateCheat(cheatsO.friend);
unactivateCheat(cheatsO.elf);
setVariable2F('fcousin', 'daughter');
setVariable2F('mcousin', 'father');
setVariable2F('fcuz', 'my daughter');
setVariable2F('mcuz', 'dad');
setVariable2F('cousins', 'father and daughter');
setVariable2F('firstCousins', 'father and daughter');
setVariable2F('sophOrSis', 'Soph');
setVariable2F('myCousin', 'my daughter');
} else {
if (v2 == 'unlockAllCgs') {
var v1 = 0;
while (v1 < allCgs.length) {
generalSave.unlockedCg[allCgs[v1].base[0]] = true;
++v1;
}
}
}
}
}
}
}
}
}
}
}
}
}
function regCheat(cheat, effect) {
cheatsO[effect] = new Object();
var v2 = cheatsO[effect];
cheatsO[effect].cheat = cheat;
cheatsO[effect].effect = effect;
cheatsO[effect].activated = false;
cheats.push(v2);
}
Stage.scaleMode = 'noScale';
Stage.displayState = 'fullScreen';
screenWidth = 1024;
screenHeight = 576;
var myListener = new Object();
myListener.onResize = function () {
resizeAndReplaceF();
};
Stage.addListener(myListener);
Object.prototype.clone = function () {
if (this instanceof Array) {
var v2 = [];
var v3 = 0;
while (v3 < this.length) {
v2[v3] = (typeof this[v3] == 'object') ? this[v3].clone() : this[v3];
++v3;
}
return v2;
}
if (this instanceof Date) {
v2 = new Date(this.getTime());
return v2;
}
if (this instanceof XML || this instanceof MovieClip) {
v2 = null;
return v2;
}
v2 = {};
for (v3 in this) {
v2[v3] = (typeof this[v3] == 'object') ? this[v3].clone() : this[v3];
}
return v2;
};
ASSetPropFlags(Object.prototype, ['clone'], 1);
Color.prototype.setTint = function (r, g, b, amount) {
var v4 = 100 - amount;
var v2 = new Object();
v2.ba = v4;
v2.ga = v2.ba;
v2.ra = v2.ba;
var v3 = amount / 100;
v2.rb = r * v3;
v2.gb = g * v3;
v2.bb = b * v3;
this.setTransform(v2);
};
Color.prototype.removeTint = function () {
this.setTint(0, 0, 0, 0);
};
loading._visible = false;
checkShit();
initVar();
this.onEnterFrame = function () {
++t;
keyChecker();
};
}