Frame 1
function makepercent(n, min, max) {
return(Math.floor(((n - min) / (max - min)) * 100));
}
contextmenu = new ContextMenu();
contextmenu.hideBuiltInItems();
_root.menu = contextmenu;
var loadin = 1;
this.onEnterFrame = function () {
if (loadin) {
var _local2 = makepercent(_root.getBytesLoaded(), 0, _root.getBytesTotal());
_root.percent.text = _local2 + "%";
if (_local2 == 100) {
loadin = 0;
_root.gotoAndStop("load");
}
}
};
this.stop();
Frame 2
this.prevFrame();
Frame 10
function tile_table(c, tl, tr, bl, br) {
tl = ((tl == c) ? 1 : 0);
tr = ((tr == c) ? 1 : 0);
bl = ((bl == c) ? 1 : 0);
br = ((br == c) ? 1 : 0);
c = ((tl + tr) + bl) + br;
if (c == 4) {
return("cx");
}
if (c == 3) {
if ((tl && (tr)) && (bl)) {
return("br");
}
if ((tl && (tr)) && (br)) {
return("bl");
}
if ((tl && (bl)) && (br)) {
return("tr");
}
if ((tr && (bl)) && (br)) {
return("tl");
}
} else if (c == 2) {
if (tl && (tr)) {
return("b");
}
if (tr && (br)) {
return("l");
}
if (bl && (br)) {
return("t");
}
if (tl && (bl)) {
return("r");
}
if (bl && (tr)) {
return("fs");
}
if (tl && (br)) {
return("bs");
}
} else if (c == 1) {
if (tl) {
return("btl");
}
if (tr) {
return("btr");
}
if (bl) {
return("bbl");
}
if (br) {
return("bbr");
}
} else if (c == 0) {
return("co");
}
}
function gstate_transition(sub) {
switch (sub.gstate) {
case "walk" :
return("stand");
case "northdoor" :
return("stand");
}
return(sub.gstate);
}
function nomovement_transition(sub) {
switch (sub.gstate) {
case "walk" :
return(1);
case "northdoor" :
return(1);
case "stand" :
return(1);
}
return(0);
}
function gameinit_designed(lvl) {
init_bgsnds(0);
paths_state("bare");
init_player(31, 56);
if (!(lvl === "start")) {
} else {
performaction(world_text[1]);
}
}
function init_bgsnds(txt) {
txt = txt.split(",");
if (txt[0] == "dark") {
world_map[0] = [{desc:"", snd:""}, {desc:"living", snd:"room", dark:1}, {desc:"hall", snd:"hall", dark:1}, {desc:"bath", snd:"bath", dark:1}, {desc:"melissa", snd:"room", dark:1}, {desc:"melissa2", snd:""}];
world_map[1] = [{desc:"dining", snd:"room", dark:1}, {desc:"kitchen", snd:"kitchen", dark:1}, {desc:"entrance", snd:"hall", dark:1}, {desc:"laundry", snd:"laundry", dark:1}, {desc:"david", snd:"room", dark:1}, {desc:"", snd:""}];
} else {
world_map[0] = [{desc:"", snd:""}, {desc:"living", snd:"room", dark:0}, {desc:"hall", snd:"hall", dark:0}, {desc:"bath", snd:"bath", dark:0}, {desc:"melissa", snd:"room", dark:0}, {desc:"melissa2", snd:""}];
world_map[1] = [{desc:"dining", snd:"room", dark:0}, {desc:"kitchen", snd:"kitchen", dark:0}, {desc:"entrance", snd:"hall", dark:0}, {desc:"laundry", snd:"laundry", dark:0}, {desc:"david", snd:"room", dark:0}, {desc:"", snd:""}];
}
var _local1 = 1;
while (_local1 < txt.length) {
var _local4 = world_map[quickmapA[txt[_local1]]][quickmapB[txt[_local1]]];
var _local2 = txt[_local1 + 1];
if (isNaN(Number(_local2))) {
_local4.snd = _local2;
} else {
_local4.dark = Number(_local2);
}
_local1 = _local1 + 2;
}
cam();
}
function changeworldtime() {
var _local1 = ((world_state.mvar == 2) ? 6 : (world_state.mvar));
_local1 = ((_local1 == 0) ? 7 : (_local1));
_local1 = ((_local1 == -2) ? 8 : (_local1));
var _local2 = ((world_state.dvar == 2) ? 7 : (world_state.dvar));
_local2 = ((_local2 == 0) ? 8 : (_local2));
_local2 = ((_local2 == -2) ? 9 : (_local2));
world_state.worldtime = ((_local1 < _local2) ? (_local1) : (_local2));
world_state.dvar = _local2;
world_state.mvar = _local1;
}
function disableplayer(yn) {
pcp.disablewarp = yn;
}
function paths_state(st) {
world_state.toaster = 0;
switch (st) {
case "bare" :
world_state.toaster = 1;
create_player_paths(1, 0, paths_living_bare);
create_player_paths(2, 0, paths_hall);
create_player_paths(3, 0, paths_roomtohall_bare);
create_player_paths(4, 0, paths_roomtohall_bare);
create_player_paths(0, 1, paths_dining_bare);
create_player_paths(1, 1, paths_kitchen_bare);
create_player_paths(2, 1, paths_entrance);
create_player_paths(3, 1, paths_laundry_bare);
create_player_paths(4, 1, paths_roomtohall_bare);
break;
case "full" :
world_state.toaster = 1;
create_player_paths(1, 0, paths_living);
create_player_paths(2, 0, paths_hall);
create_player_paths(3, 0, paths_bath);
create_player_paths(4, 0, paths_melissa);
create_player_paths(0, 1, paths_dining);
create_player_paths(1, 1, paths_kitchen);
create_player_paths(2, 1, paths_entrance);
create_player_paths(3, 1, paths_laundry);
create_player_paths(4, 1, paths_david);
break;
case "coke" :
create_player_paths(1, 1, paths_kitchen_coke);
break;
case "sleep_kitchen" :
create_player_paths(1, 1, paths_kitchen_sleep);
break;
case "sleep_living" :
create_player_paths(1, 0, paths_living_sleep);
break;
case "sleep_david" :
create_player_paths(4, 1, paths_david_sleep);
break;
case "sleep_melissa" :
create_player_paths(4, 0, paths_melissa_sleep);
break;
case "unsleep_david" :
world_state.toaster = 1;
create_player_paths(4, 1, paths_david);
break;
case "unsleep_melissa" :
world_state.toaster = 1;
create_player_paths(4, 0, paths_melissa);
break;
case "pee_kitchen" :
create_player_paths(1, 1, paths_kitchen_pee);
}
}
function output_faces() {
emotes = [];
for (var _local6 in sub_numbers) {
emotes[sub_numbers[_local6]] = {};
}
var _local6 = 0;
while (_local6 < world_text.length) {
var _local3 = world_text[_local6];
if (_local3 instanceof Array) {
var _local5 = 1;
while (_local5 < _local3.length) {
var _local2 = _local3[_local5].split("::");
if (sub_numbers[_local2[0]] == undefined) {
} else {
emotes[sub_numbers[_local2[0]]][_local2[1]] = 1;
}
_local5++;
}
}
_local6++;
}
for (_local6 in sub_numbers) {
var _local4 = _local6 + ": ";
var _local1 = "";
for (var _local5 in emotes[sub_numbers[_local6]]) {
_local1 = _local1 + ((_local1 == "") ? (_local5) : ("," + _local5));
}
_local1 = _local1.split(",");
_local1.sort();
_local4 = _local4 + _local1.join(", ");
trace(_local4);
}
}
function gameinit(lvl) {
if (demoing) {
lvl = "start";
}
if (design) {
backup_tilesA = copyarr(world_tilesA);
backup_tilesB = copyarr(world_tilesB);
}
backup_interactA = copyarr(world_interactA);
backup_interactB = copyarr(world_interactB);
bgaud.setVolume(100);
timer = 0;
backup_sprites = copyarr(world_sprites);
backup_world_state = copyob(world_state);
gamep = {state:"playing", timer:0, fcount:0, tcount:0, fpt:4, fps:60, snd:""};
gamep.tps = Math.round(gamep.fps / gamep.fpt);
frameon("game");
_root.fg._xscale = tilep.zoom;
_root.fg._yscale = tilep.zoom;
_root.overlay.gotoAndStop("game");
_root.overlay.spc.gotoAndStop(3);
world_state.hidetiles = 1;
gameinit_designed(lvl);
}
function gameexit() {
gamep.state = "exiting";
if (design) {
world_tilesA = copyarr(backup_tilesA);
world_tilesB = copyarr(backup_tilesB);
}
world_interactA = copyarr(backup_interactA);
world_interactB = copyarr(backup_interactB);
world_sprites = copyarr(backup_sprites);
world_state = copyob(backup_world_state);
}
function superexit() {
frameon("menu");
}
function simulation() {
snd_fade();
switch (gamep.state) {
case "text" :
textcontrol();
break;
case "minigame" :
_root["minigame_" + gamep.minigame]();
break;
case "cutscene" :
if (_root.overlay.mc._currentframe == _root.overlay.mc._totalframes) {
finishcutscene();
snd_initfade("bgaud", 0, 1, 100);
}
break;
case "precutscene" :
if (_root.overlay.mc._currentframe != _root.overlay.mc._totalframes) {
break;
}
finishcutscene();
snd_initfade("bgaud", 0, 1, 100);
performaction(text_text);
}
if (gamep.state != "playing") {
return(undefined);
}
gamep.timer++;
gamep.fcount = (((gamep.fcount + 1) == gamep.fpt) ? 0 : (gamep.fcount + 1));
player();
if (gamep.fcount != 0) {
return(undefined);
}
gamep.tcount++;
var _local3 = 0;
while (_local3 < ref_sprites.length) {
var _local2 = ref_sprites[_local3];
var _local4 = world_sprites[_local2][0];
if (!_local4.live) {
} else {
_local4.ganim = _root.fg.sorted["s" + _local2].mc.mc._currentframe;
npc(_local2);
if (gamep.state != "playing") {
return(undefined);
}
}
_local3++;
}
pcp.wtcheck = 0;
}
function npc(id) {
var _local2 = world_sprites[id][0];
var _local11 = onscreen(_local2.tx, _local2.ty);
if (_local2.delay == "c") {
if (_local11) {
_local2.delay = -1;
if (_local2.wt != -1) {
var _local14 = world_text[_local2.wt];
performaction(_local14);
return(undefined);
}
// unexpected jump
}
return(undefined);
}
if (_local2.delay > -1) {
if ((pcp.wtcheck && (_local2.wt != -1)) && (_local11)) {
var _local14 = world_text[_local2.wt];
performaction(_local14);
_local2.delay = -1;
} else {
_local2.delay--;
}
return(undefined);
}
if (_local2.wt != -1) {
_local2.wt = -1;
}
var _local5 = world_sprites[id][_local2.state];
if (_local5.pa != undefined) {
var _local14 = world_text[_local5.pa];
_local2.state++;
performaction(_local14);
return(undefined);
}
if (_local5.statejump) {
if (_local5.statejump == 2) {
_local2.state++;
_local5 = world_sprites[id][_local2.state];
}
update_mainstate(_local2, _local5);
movesprite(id);
return(undefined);
}
if (_local5.mov && (!_local2.movn)) {
var _local14 = _local5.mov.split(".");
if ((_local2.mov == undefined) || (_local2.mov == -1)) {
_local2.mov = 0;
} else {
_local2.mov++;
}
if (_local2.mov == _local14.length) {
_local2.mov = -1;
_local2.state++;
return(undefined);
}
_local5.dir = undefined;
_local5.gdir = undefined;
_local5.gstate = undefined;
var _local3 = 0;
var _local4 = 0;
do {
if (_local4) {
_local2.mov++;
_local4 = 0;
}
switch (_local14[_local2.mov]) {
case "w" :
_local2.delay = ((_local14[_local2.mov + 1] == "c") ? "c" : (Number(_local14[_local2.mov + 1]) * gamep.tps));
_local2.mov = _local2.mov + 1;
break;
case "wt" :
if ((Number(_local14[_local2.mov + 2]) == 0) || (_local11)) {
var _local8 = world_text[Number(_local14[_local2.mov + 1])];
var _local9 = performaction(_local8);
if (_local9) {
return(undefined);
}
} else {
_local2.wt = Number(_local14[_local2.mov + 1]);
_local2.delay = ((_local14[_local2.mov + 2] == "c") ? "c" : (Number(_local14[_local2.mov + 2]) * gamep.tps));
}
_local2.mov = _local2.mov + 2;
_local3 = 1;
break;
case "cs" :
var _local6 = tile_interact(id);
if (_local6 != -1) {
var _local10 = (_local6.l ? ((("bx" + _local6.tx) + "y") + _local6.ty) : ((("ax" + _local6.tx) + "y") + _local6.ty));
_root.fg.sorted[_local10].mc.play();
}
_local3 = 1;
break;
case "as" :
var _local9 = advancestates(_local14[_local2.mov + 1], id);
if (_local9) {
return(undefined);
}
_local2.mov = _local2.mov + 1;
_local3 = 1;
_local4 = (((_local2.mov + 1) == _local14.length) ? 0 : 1);
break;
case "cw" :
change_world(_local14[_local2.mov + 1]);
_local2.mov = _local2.mov + 1;
_local3 = 1;
break;
case "ne" :
_local5.dir = "ne";
break;
case "nw" :
_local5.dir = "nw";
break;
case "se" :
_local5.dir = "se";
break;
case "sw" :
_local5.dir = "sw";
break;
case "j" :
_local2.tx = Number(_local14[_local2.mov + 1]);
_local2.ty = Number(_local14[_local2.mov + 2]);
_local2.mov = _local2.mov + 2;
_local3 = 1;
_local4 = (((_local2.mov + 1) == _local14.length) ? 0 : 1);
break;
case "snd" :
if (_local11) {
snd_play(_local14[_local2.mov + 1]);
}
_local2.mov = _local2.mov + 1;
_local3 = 1;
_local4 = (((_local2.mov + 1) == _local14.length) ? 0 : 1);
break;
case "dark" :
changedark(_local2.tx, _local2.ty, Number(_local14[_local2.mov + 1]));
_local2.mov = _local2.mov + 1;
_local3 = 1;
_local4 = (((_local2.mov + 1) == _local14.length) ? 0 : 1);
break;
case "bgsnd" :
changebgsnd(_local2.tx, _local2.ty, _local14[_local2.mov + 1]);
_local2.mov = _local2.mov + 1;
_local3 = 1;
_local4 = (((_local2.mov + 1) == _local14.length) ? 0 : 1);
break;
case "locks" :
locks(_local14[_local2.mov + 1]);
_local2.mov = _local2.mov + 1;
_local3 = 1;
_local4 = (((_local2.mov + 1) == _local14.length) ? 0 : 1);
break;
default :
_local2[_local14[_local2.mov]] = _local14[_local2.mov + 1];
_local2.mov = _local2.mov + 1;
_local3 = 1;
_local4 = (((_local2.mov + 1) == _local14.length) ? 0 : 1);
}
} while (_local4);
if (_local3 && ((_local2.mov + 1) == _local14.length)) {
_local2.mov = -1;
_local2.state++;
}
if (_local5.dir) {
if (Number(_local14[_local2.mov + 1]) == 0) {
_local5.gdir = _local5.dir;
_local5.gstate = "stand";
_local5.dir = undefined;
_local2.mov = _local2.mov + 1;
} else {
_local2.movn = 1;
var _local13 = world_sprites[id][_local2.state + 1];
var _local16 = _local14[_local2.mov + 1];
if (_local16 == "t") {
_local13.tx = Number(_local14[_local2.mov + 2]);
_local13.ty = Number(_local14[_local2.mov + 3]);
_local2.movdist = -1;
_local2.mov = _local2.mov + 3;
} else {
_local13.tx = -1;
_local13.ty = -1;
_local2.movdist = Number(_local16);
_local2.mov = _local2.mov + 1;
}
}
}
}
if (_local5.dir != undefined) {
var _local13 = world_sprites[id][_local2.state + 1];
if (_local2.movn && (_local2.movdist != -1)) {
if (_local2.movdist) {
_local2.movdist--;
} else {
_local13.tx = _local2.tx;
_local13.ty = _local2.ty;
}
}
var _local12 = _local5.dir;
if (_local5.gstate == undefined) {
_local2.gstate = "walk";
}
if (_local5.gdir == undefined) {
_local2.gdir = _local12;
}
update_gstate(id, _local5);
var _local15 = 0;
if ((_local2.ty == _local13.ty) && (_local2.tx == _local13.tx)) {
_local15 = 1;
}
if (_local15) {
if (_local5.mov) {
_local2.movn = 0;
} else {
_local2.state++;
}
_local2.gstate = ((_local2.gstate == "walk") ? "stand" : (_local2.gstate));
update_gstate(id, _local13);
movesprite(id);
return(undefined);
}
if ((_local12 == "nw") || (_local12 == "se")) {
var _local17 = ((_local12 == "nw") ? "se" : "nw");
} else {
var _local17 = ((_local12 == "ne") ? "sw" : "ne");
}
var _local14 = checktileto(_local12, _local17, id);
if ((_local14 != 0) && (_local14.ret != 0)) {
preparespritemove(id, _local5.spd, _local14);
if (_local5.spd != undefined) {
_local2.spd = _local5.spd;
}
} else if (_local2.movn && (_local2.movdist != -1)) {
_local2.movdist++;
}
} else {
update_gstate(id, _local5);
movesprite(id);
}
}
function tile_interact(id) {
var _local1 = world_sprites[id][0];
var _local2 = tile2point(_local1.tx, _local1.ty);
_local2.px = _local2.px + (((_local1.gdir == "nw") || (_local1.gdir == "sw")) ? 0 : (tilep.w));
_local2.py = _local2.py + (((_local1.gdir == "nw") || (_local1.gdir == "ne")) ? (-tilep.hh) : (tilep.halfh + tilep.hh));
_local2 = point2tile(_local2.px, _local2.py);
if (tiledata[world_tilesB[_local2.tx][_local2.ty]].animt) {
return({tx:_local2.tx, ty:_local2.ty, l:1});
}
if (tiledata[world_tilesB[_local1.tx][_local1.ty]].animt) {
return({tx:_local1.tx, ty:_local1.ty, l:1});
}
if (tiledata[world_tilesA[_local2.tx][_local2.ty]].animt) {
return({tx:_local2.tx, ty:_local2.ty, l:0});
}
if (tiledata[world_interactA[_local1.tx][_local1.ty]].animt) {
return({tx:_local1.tx, ty:_local1.ty, l:0});
}
return(-1);
}
function finishcutscene() {
_root.overlay.gotoAndStop("game");
_root.overlay.spc.gotoAndStop(3);
gamep.state = "playing";
clicks.u = 0;
clicks.d = 0;
clicks.l = 0;
clicks.r = 0;
clicks.space = 2;
}
function performaction(sub) {
var _local6 = typeof(sub);
if (sub instanceof Array) {
if (sub[0].precut != undefined) {
gamep.state = "precutscene";
snd_initfade("bgaud", 0, 1, 0);
_root.overlay.gotoAndStop(sub[0].precut);
text_text = copyarr(sub);
text_text[0].precut = undefined;
return(1);
}
gamep.state = "text";
_root.overlay.gotoAndStop("text");
var _local9 = copyarr(sub);
text_end = _local9.shift();
text_text = copyarr(_local9);
text_on = 0;
text_choice = (sub[0].choice ? 1 : 0);
updatetext();
clicks.u = 2;
clicks.d = 2;
clicks.l = 2;
clicks.r = 2;
clicks.space = 2;
return(1);
}
if (_local6 == "object") {
var _local3 = 0;
if (sub.checkpoint) {
var _local5 = sub.cut;
var _local8 = sub.checkpoint;
sub = world_text[world_state.checkpoint];
}
if (sub.audio != undefined) {
snd_play(sub.audio);
}
if (sub.sprite != undefined) {
if (sub.animate) {
_root.fg.sorted["s" + sub.sprite].mc.mc.play();
}
var _local4 = world_sprites[sub.sprite][0];
if (sub.propname) {
var _local7 = sub["propval" + _local4[sub.propname]];
var _local10 = ((_local7 == undefined) ? (sub.propval) : (_local7));
_local4[sub.propname] = _local10;
}
if (sub.propname2) {
_local4[sub.propname2] = sub.propval2;
}
movesprite(sub.sprite);
}
if (sub.locks) {
locks(sub.locks);
}
if (sub.warps) {
warps(sub.warps);
}
if (sub.changeworld) {
if (_local8 == 1) {
_root.nextws = sub.changeworld;
} else {
change_world(sub.changeworld);
_local3 = 1;
}
}
if (sub.nextws) {
if (_local8 == 1) {
change_world(sub.nextws);
_local3 = 1;
} else {
_root.nextws = (isNaN(sub.nextws) ? (sub.nextws) : ("state," + sub.nextws));
}
}
if (sub.sav) {
saveprogress(sub.sav);
}
if (sub.func) {
_root[sub.func](sub.funcpass);
}
if (sub.func2) {
_root[sub.func2](sub.func2pass);
}
if (sub.func3) {
_root[sub.func3](sub.func3pass);
}
if (sub.as) {
advancestates(sub.as);
}
if (sub.cut || (_local5)) {
gamep.state = "cutscene";
snd_initfade("bgaud", 0, 1, 0);
var _local9 = (_local5 ? (_local5) : (sub.cut));
_root.overlay.gotoAndStop(_local9);
return(1);
}
finishcutscene();
if (sub.nextext != undefined) {
nextext(sub.nextext);
}
if (sub.choice != undefined) {
var _local9 = sub.choice.split(",");
var _local11 = Number(_local9[text_on]);
performaction(world_text[_local11]);
}
if (sub.minigame) {
gamep.minigame = sub.minigame;
_root["initminigame_" + gamep.minigame]();
gamep.state = "minigame";
return(1);
}
return(_local3);
}
if (_local6 == "string") {
finishcutscene();
} else if (_local6 == "number") {
finishcutscene();
}
}
function textcontrol(minigame) {
var _local2 = text_on;
if (clicks.space == 1) {
clicks.space = 2;
if (text_choice || (text_on == (text_text.length - 1))) {
clicks.u = 0;
clicks.d = 0;
clicks.l = 0;
clicks.r = 0;
if (minigame) {
minigamep.texting = 0;
_root.overlay.gotoAndStop("game");
_root.overlay.spc.gotoAndStop(3);
} else {
performaction(text_end);
}
return(undefined);
}
}
if (clicks.r == 1) {
_local2++;
clicks.r = 2;
}
if (clicks.l == 1) {
_local2--;
clicks.l = 2;
}
if (((_local2 != text_on) && (_local2 > -1)) && (_local2 < text_text.length)) {
text_on = _local2;
updatetext();
}
}
function updatetext() {
var _local5 = ((text_on == 0) ? 2 : 1);
var _local3 = text_on == (text_text.length - 1);
var _local4 = (_local3 ? 2 : 1);
_root.overlay.lft.gotoAndStop(_local5);
_root.overlay.rght.gotoAndStop(_local4);
if (text_choice) {
_root.overlay.spc.gotoAndStop(4);
} else if (_local3) {
_root.overlay.spc.gotoAndStop(1);
} else {
_root.overlay.spc.gotoAndStop(2);
}
var _local2 = text_text[text_on].split("::");
_root.overlay.heads.gotoAndStop(_local2[0]);
_root.overlay.heads.mc.gotoAndStop(_local2[1]);
_root.overlay.txt.text = _local2[2];
}
function update_gstate(id, dub) {
var _local2 = world_sprites[id][0];
if (dub.gchar) {
_local2.gchar = dub.gchar;
}
if (dub.gstate) {
_local2.gstate = dub.gstate;
}
if (dub.gdir) {
_local2.gdir = dub.gdir;
}
if (dub.forceinclude != undefined) {
_local2.forceinclude = dub.forceinclude;
}
if (dub.ignoreblocking != undefined) {
_local2.ignoreblocking = dub.ignoreblocking;
}
}
function nextext(t) {
if (!isNaN(t)) {
performaction(world_text[t]);
return(undefined);
}
t = t.split(".");
var _local3 = 0;
while (_local3 < t.length) {
var _local4 = world_state[t[_local3]];
var _local2 = t[_local3 + 1].split(",");
var _local1 = 0;
while (_local1 < _local2.length) {
if (_local4 == Number(_local2[_local1])) {
performaction(world_text[Number(_local2[_local1 + 1])]);
return(undefined);
}
_local1 = _local1 + 2;
}
_local3 = _local3 + 2;
}
}
function change_world(t) {
t = t.split(",");
var _local5 = 0;
while (_local5 < t.length) {
if (t[_local5 + 1] == "++") {
world_state[t[_local5]]++;
} else if (t[_local5 + 1] == "--") {
world_state[t[_local5]]--;
} else {
world_state[t[_local5]] = Number(t[_local5 + 1]);
}
if (t[_local5] == "checkpoint") {
saveprogress("0," + world_state.checkpoint);
}
if (t[_local5] == "state") {
var _local2 = 0;
while (_local2 < world_sprites.length) {
var _local3 = world_sprites[_local2][0];
_local3.delay = -1;
_local3.mov = -1;
_local3.movn = 0;
var _local1 = 1;
while (_local1 < world_sprites[_local2].length) {
var _local4 = world_sprites[_local2][_local1];
if (_local4.ws == world_state.state) {
_local3.state = _local1;
break;
}
if (_local4.ws > world_state.state) {
break;
}
_local1++;
}
_local2++;
}
cam();
}
_local5 = _local5 + 2;
}
createarea();
}
function locks(t) {
t = t.split(",");
var _local2 = 0;
while (_local2 < t.length) {
var _local4 = Number(t[_local2 + 2]);
var _local6 = Number(t[_local2]);
if (!isNaN(_local6)) {
var _local8 = Number(t[_local2 + 1]);
locks_locker(_local6, _local8, _local4);
} else if (t[_local2] == "all") {
for (var _local5 in quickmapA) {
locks((_local5 + ",all,") + _local4);
}
} else {
var _local5 = _root["quickmap_" + t[_local2]];
if (t[_local2 + 1] == "all") {
for (var _local9 in _local5) {
var _local7 = _local5[_local9].split(",");
locks_locker(Number(_local7[0]), Number(_local7[1]), _local4);
}
} else {
var _local7 = _local5[t[_local2 + 1]].split(",");
locks_locker(Number(_local7[0]), Number(_local7[1]), _local4);
}
}
_local2 = _local2 + 3;
}
}
function locks_locker(tx, ty, tch) {
if (world_interactA[tx][ty] == undefined) {
world_interactA[tx][ty] = {};
}
var _local1 = world_interactA[tx][ty];
if (tch == -2) {
tch = _local1.touch;
_local1.touch = _local1.touch2;
_local1.touch2 = tch;
} else {
_local1.touch2 = _local1.touch;
_local1.touch = tch;
}
}
function warps(t) {
t = t.split(",");
var _local1 = 0;
while (_local1 < t.length) {
var _local4 = Number(t[_local1]);
var _local3 = Number(t[_local1 + 1]);
var _local7 = Number(t[_local1 + 2]);
var _local6 = Number(t[_local1 + 3]);
if (world_interactB[_local4][_local3] == undefined) {
world_interactB[_local4][_local3] = {};
}
var _local5 = world_interactB[_local4][_local3];
_local5.tx = _local7;
_local5.ty = _local6;
_local5.l = 1;
_local1 = _local1 + 6;
}
}
function advancestates(t, id) {
var _local12 = t.split("+++");
if (_local12.length > 1) {
var _local13 = 0;
var _local2 = 0;
while (_local2 < _local12.length) {
var _local10 = advancestates(_local12[_local2], id);
if (_local10) {
_local13 = 1;
}
_local2++;
}
return(_local13);
}
var _local20 = 1;
var _local10 = t.split("+");
t = _local10[0].split(",");
var _local1 = _local10[1];
if (_local1 != undefined) {
_local1 = _local1.split(",");
var _local14 = ((_local1[0] == "if") ? 1 : 0);
var _local7 = ((_local1[0] == "is") ? 1 : 0);
var _local18 = ((_local1[1] == "or") ? 1 : 0);
var _local19 = (_local14 + _local7) + _local18;
_local20 = ((_local14 || (_local7)) ? 1 : 0);
}
var _local16 = _local10[2];
if (_local16 != undefined) {
_local16 = _local16.split(",");
_local20 = 0;
}
var _local15 = _local10[3];
if (_local15 != undefined) {
_local15 = _local15.split(",");
var _local17 = 1;
}
if (_local14 || (_local7)) {
_local10 = 0;
var _local11 = 0;
var _local2 = _local19;
while (_local2 < _local1.length) {
var _local6 = (_local7 ? (world_state[_local1[_local2]]) : (world_sprites[sub_numbers[_local1[_local2]]][0].state));
var _local9 = ((_local7 && (isNaN(Number(_local1[_local2 + 1])))) ? (world_state[_local1[_local2 + 1]]) : (Number(_local1[_local2 + 1])));
if (_local18 && (_local6 == _local9)) {
_local10 = 1;
_local11 = 1;
break;
}
_local10 = _local10 + ((_local6 == _local9) ? 1 : 0);
_local11++;
_local2 = _local2 + 2;
}
if (_local17 && (_local11 == _local10)) {
var _local17 = 0;
} else if ((!_local17) && (_local11 != _local10)) {
return(undefined);
}
}
var _local13 = 0;
if (_local20) {
var _local2 = 0;
while (_local2 < t.length) {
var _local5 = sub_numbers[t[_local2]];
var _local3 = world_sprites[_local5][0];
_local3.state++;
_local3.mov = -1;
_local3.movn = 0;
_local3.delay = -1;
if (id == _local5) {
_local13 = 1;
}
_local2++;
}
} else {
var _local2 = 0;
while (_local2 < t.length) {
if (_local17) {
var _local9 = Number(_local15[_local2]);
} else if (_local14 || (_local7)) {
var _local9 = Number(_local16[_local2]);
} else {
var _local9 = Number(_local1[_local2]);
}
var _local5 = sub_numbers[t[_local2]];
var _local3 = world_sprites[_local5][0];
_local3.state = _local9;
_local3.mov = -1;
_local3.movn = 0;
_local3.delay = -1;
if (id == _local5) {
_local13 = 1;
}
_local2++;
}
}
return(_local13);
}
function exportworld() {
var _local1 = "";
var _local2 = new Date();
_local1 = _local1 + ((((((((("//" + _local2.getFullYear()) + "/") + (_local2.getMonth() + 1)) + "/") + _local2.getDate()) + " ") + _local2.getHours()) + ":") + _local2.getMinutes());
_local1 = _local1 + newline;
_local1 = _local1 + (("world_txtA = \"" + exporttiles(world_tilesA)) + "\";");
_local1 = _local1 + newline;
_local1 = _local1 + (("world_txtB = \"" + exporttiles(world_tilesB)) + "\";");
_local1 = _local1 + newline;
_local1 = _local1 + "world_tilesA = importtiles(world_txtA);";
_local1 = _local1 + newline;
_local1 = _local1 + "world_tilesB = importtiles(world_txtB);";
trace(_local1);
}
function exportvar(nam, val, multi) {
var _local3 = nam + " = ";
if (multi) {
_local3 = _local3 + "new Array();\r";
var _local1 = 0;
while (_local1 < val.length) {
_local3 = _local3 + (((((((nam + "[") + _local1) + "]") + " = ") + exportarray(val[_local1])) + ";") + newline);
_local1++;
}
return(_local3);
}
var _local5 = typeof(val);
if (val instanceof Array) {
_local3 = _local3 + exportarray(val);
} else if (_local5 == "object") {
_local3 = _local3 + exportobject(val);
} else if (_local5 == "string") {
_local3 = _local3 + (("\"" + val) + "\"");
} else if (_local5 == "number") {
_local3 = _local3 + val;
}
_local3 = _local3 + ";";
return(_local3);
}
function exportarray(arr, kill) {
var _local3 = "[";
var _local1 = 0;
while (_local1 < arr.length) {
var _local4 = typeof(arr[_local1]);
if (arr[_local1] == undefined) {
_local3 = _local3 + (kill ? "" : ",0");
} else {
if (_local1) {
_local3 = _local3 + ", ";
}
if (arr[_local1] instanceof Array) {
_local3 = _local3 + exportarray(arr[_local1]);
} else if (_local4 == "object") {
_local3 = _local3 + exportobject(arr[_local1]);
} else if (_local4 == "string") {
_local3 = _local3 + (("\"" + arr[_local1]) + "\"");
} else if (_local4 == "number") {
_local3 = _local3 + arr[_local1];
}
}
_local1++;
}
_local3 = _local3 + "]";
if (_local3 == "[]") {
_local3 = "0";
}
return(_local3);
}
function exportobject(obj) {
var _local2 = "{";
var _local4 = 0;
for (var _local5 in obj) {
if (_local4) {
_local2 = _local2 + ", ";
}
var _local3 = typeof(obj[_local5]);
if (obj[_local5] == undefined) {
_local2 = _local2 + ((_local5 + ":") + 0);
} else if (_local3 == "string") {
_local2 = _local2 + (((_local5 + ":\"") + obj[_local5]) + "\"");
} else if (_local3 == "number") {
_local2 = _local2 + ((_local5 + ":") + obj[_local5]);
}
_local4++;
}
_local2 = _local2 + "}";
return(_local2);
}
function importarray(txt) {
var _local4 = new Array();
txt = txt.slice(1, -1);
while (true) {
var _local6 = txt.charAt(0);
if (_local6 == "[") {
var _local2 = 1;
var _local7 = 1;
while (true) {
_local7 = txt.indexOf("]", _local7);
_local2 = txt.indexOf("[", _local2);
if ((_local2 == -1) || (_local2 > _local7)) {
break;
}
_local2++;
_local7++;
}
_local7++;
var _local8 = txt.slice(0, _local7);
_local4.push(importarray(_local8));
txt = txt.slice(_local7);
} else if (_local6 == "{") {
var _local7 = txt.indexOf("}") + 1;
_local4.push(importobject(txt.slice(0, _local7)));
txt = txt.slice(_local7);
} else {
_local4 = txt.split(", ");
var _local3 = 0;
while (_local3 < _local4.length) {
var _local5 = Number(_local4[_local3]);
if (!isNaN(_local5)) {
_local4[_local3] = _local5;
}
_local3++;
}
}
if (txt.charAt(0) == ",") {
txt = txt.slice(2);
continue;
}
return(_local4);
}
}
function importobject(txt) {
var _local5 = new Object();
txt = txt.slice(1, -1);
var _local4 = txt.split(", ");
var _local2 = 0;
while (_local2 < _local4.length) {
var _local1 = _local4.split(":");
var _local3 = ((_local1[1].charAt(0) == "\"") ? (_local1[1].slice(1, -1)) : (Number(_local1[_local2])));
_local5[_local1[0]] = _local3;
_local2++;
}
return(_local5);
}
function copyarr(arr) {
var _local4 = new Array();
var _local1 = 0;
while (_local1 < arr.length) {
var _local2 = arr[_local1];
if (_local2 instanceof Array) {
var _local5 = copyarr(arr[_local1]);
_local4.push(_local5);
} else if (typeof(_local2) == "object") {
var _local5 = copyob(arr[_local1]);
_local4.push(_local5);
} else {
_local4.push(_local2);
}
_local1++;
}
return(_local4);
}
function copyob(ob) {
var _local2 = new Object();
for (var _local3 in ob) {
_local2[_local3] = ob[_local3];
}
return(_local2);
}
function importtiles(txt) {
txt = txt.split(",");
var _local6 = new Array();
var _local5 = 0;
var _local2 = 0;
_local6[_local5] = new Array();
var _local4 = 0;
while (_local4 < txt.length) {
if (txt[_local4] == "br") {
_local5++;
_local6[_local5] = new Array();
_local2 = 0;
} else {
var _local1 = txt[_local4].split("x");
if (_local1.length == 0) {
} else if (_local1.length == 1) {
_local6[_local5][_local2] = Number(_local1[0]);
_local2++;
} else {
_local1[0] = Number(_local1[0]);
_local1[1] = Number(_local1[1]);
if (_local1[0] == 0) {
_local2 = _local2 + _local1[1];
} else {
var _local3 = 0;
while (_local3 < _local1[1]) {
_local6[_local5][_local2] = _local1[0];
_local2++;
_local3++;
}
}
}
}
_local4++;
}
return(_local6);
}
function exporttiles(arr) {
var _local2 = "";
var _local3 = 0;
var _local4 = 0;
var _local6 = 0;
while (_local6 < arr.length) {
if (_local6 != 0) {
if (_local3 != 0) {
_local2 = _local2 + ((_local2.length == 0) ? "" : ",");
_local2 = _local2 + ((_local4 > 1) ? ((_local3 + "x") + _local4) : (_local3));
}
_local2 = _local2 + ((_local2.length == 0) ? "" : ",");
_local2 = _local2 + "br";
_local3 = 0;
_local4 = 0;
}
var _local1 = 0;
while (_local1 < arr[_local6].length) {
if (arr[_local6][_local1] == undefined) {
arr[_local6][_local1] = 0;
}
if (arr[_local6][_local1] == _local3) {
_local4++;
} else {
_local2 = _local2 + ((_local2.length == 0) ? "" : ",");
_local2 = _local2 + ((_local4 > 1) ? ((_local3 + "x") + _local4) : (_local3));
_local3 = arr[_local6][_local1];
_local4 = 1;
}
_local1++;
}
_local6++;
}
var _local7 = _local2.split(",");
_local6 = _local7.length - 1;
while (_local6 > 0) {
if (_local7[_local6] != "br") {
_local7.splice(_local6 + 1);
_local2 = _local7.join(",");
break;
}
_local6--;
}
return(_local2);
}
function cam(xto, yto) {
if (xto == undefined) {
var _local2 = tile2screen(pcp.tx, pcp.ty);
xto = _local2.sx;
yto = _local2.sy;
pcp.xto = _local2.sx;
pcp.yto = _local2.sy;
}
if (xto != -999) {
_root.fg._x = -(xto * Stage.width);
}
if (yto != -999) {
_root.fg._y = -(yto * Stage.height);
}
campointa = {x:0, y:0};
_root.fg.globalToLocal(campointa);
campointb = {x:Stage.width, y:Stage.height};
_root.fg.globalToLocal(campointb);
snd_ambience(xto, yto);
overlay_effect(xto, yto);
createarea();
}
function onscreen(tx, ty) {
var _local1 = tile2screen(tx, ty);
if ((_local1.sx == pcp.xto) && (_local1.sy == pcp.yto)) {
return(1);
}
return(0);
}
function overlay_effect(xto, yto) {
var _local2 = _root.fg.dark;
if (design == 1) {
_local2.gotoAndStop(1);
return(undefined);
}
var _local3 = world_map[yto][xto];
if (_local3.dark) {
_local2._x = campointa.x;
_local2._y = campointa.y;
_local2.gotoAndStop(2);
return(undefined);
}
_local2.gotoAndStop(1);
}
function changedark(tx, ty, dark) {
var _local1 = tile2screen(tx, ty);
world_map[_local1.sy][_local1.sx].dark = dark;
if ((_local1.sx == pcp.xto) && (_local1.sy == pcp.yto)) {
overlay_effect(_local1.sx, _local1.sy);
}
}
function changebgsnd(tx, ty, snd) {
if (design == 1) {
return(undefined);
}
var _local1 = tile2screen(tx, ty);
world_map[_local1.sy][_local1.sx].snd = snd;
if ((_local1.sx == pcp.xto) && (_local1.sy == pcp.yto)) {
snd_ambience(_local1.sx, _local1.sy);
}
}
function createarea() {
var _local8 = {xMin:campointa.x - tlradius.l, xMax:campointb.x + tlradius.r, yMin:campointa.y - tlradius.u, yMax:campointb.y + tlradius.d};
tilearea = new Object();
var _local9 = point2tile(_local8.xMin, _local8.yMin);
tilearea.xMin = _local9.tx;
tilearea.yMin = _local9.ty;
_local9 = point2tile(_local8.xMax, _local8.yMax);
tilearea.xMax = _local9.tx;
tilearea.yMax = _local9.ty;
tilearea.line = tilearea.xMax - tilearea.xMin;
tilearea.fulline = tilearea.line * 3;
tilearea.layer = tilearea.fulline * ((tilearea.yMax - tilearea.yMin) + 2);
_root.fg.gotoAndStop(3);
_root.fg.gotoAndStop(1);
var _local3 = tilearea.xMin;
while (_local3 <= tilearea.xMax) {
if (world_tilesA[_local3] == undefined) {
world_tilesA[_local3] = new Array();
}
if (world_tilesB[_local3] == undefined) {
world_tilesB[_local3] = new Array();
}
var _local2 = tilearea.yMin;
while (_local2 <= tilearea.yMax) {
if (world_tilesA[_local3][_local2] == undefined) {
world_tilesA[_local3][_local2] = 0;
}
if (world_tilesB[_local3][_local2] == undefined) {
world_tilesB[_local3][_local2] = 0;
}
var _local6 = world_tilesA[_local3][_local2];
if (_local6 != 0) {
attachtile(_local3, _local2, _local6, 0);
}
_local6 = world_tilesB[_local3][_local2];
if (_local6 != 0) {
attachtile(_local3, _local2, _local6, 1);
}
_local2++;
}
_local3++;
}
if (design == 1) {
return(undefined);
}
ref_sprites = new Array();
var _local5 = 0;
for ( ; _local5 < world_sprites.length ; _local5++) {
var _local4 = world_sprites[_local5][0];
update_mainstate(_local4, world_sprites[_local5][_local4.state]);
if (_local4.forceinclude) {
} else if ((((_local4.tx < (tilearea.xMin - 1)) || (_local4.tx > (tilearea.xMax + 1))) || (_local4.ty < (tilearea.yMin - 1))) || (_local4.ty > (tilearea.yMax + 1))) {
continue;
}
ref_sprites.push(_local5);
var _local7 = ((_local4.ganim == undefined) ? 1 : (_local4.ganim));
attachsprite(_local5, _local7);
}
}
function update_mainstate(sub, dub) {
if (dub.statejump || (dub.ws == world_state.state)) {
if (dub.spd != undefined) {
sub.spd = dub.spd;
}
sub.tx = dub.tx;
sub.ty = dub.ty;
sub.l = dub.l;
sub.state++;
}
if (dub.forceinclude != undefined) {
sub.forceinclude = dub.forceinclude;
}
if (dub.ignoreblocking != undefined) {
sub.ignoreblocking = dub.ignoreblocking;
}
if (dub.gchar != undefined) {
sub.gchar = dub.gchar;
}
if (dub.gstate != undefined) {
sub.gstate = dub.gstate;
}
if (dub.gdir != undefined) {
sub.gdir = dub.gdir;
}
sub.turnarrive = 0;
sub.live = 1;
}
function attachtile(tx, ty, tl, l) {
var _local5 = (l ? ((("bx" + tx) + "y") + ty) : ((("ax" + tx) + "y") + ty));
var _local3 = tiledata[tl];
var _local13 = (_local3.over ? 1 : 0);
var _local10 = get_depth(tx, ty, l, _local13, 0);
_root.fg.sorted.attachMovie("tiles", _local5, _local10);
var _local9 = tile2point(tx, ty);
_root.fg.sorted[_local5]._x = _local9.px;
_root.fg.sorted[_local5]._y = _local9.py;
tl = ((tl == 0) ? (tiledata.length) : (tl));
_root.fg.sorted[_local5].gotoAndStop(tl);
if (_local3.checkerz) {
_root.fg.sorted[_local5].multi.gotoAndStop(((tx + ty) % _local3.checkerz) + 1);
} else if (_local3.checkerx && (_local3.checkery)) {
_root.fg.sorted[_local5].multi.gotoAndStop(((tx % _local3.checkerx) + 1) + ((ty % _local3.checkery) * _local3.checkerx));
} else if (_local3.checkerx) {
_root.fg.sorted[_local5].multi.gotoAndStop((tx % _local3.checkerx) + 1);
} else if (_local3.checkery) {
_root.fg.sorted[_local5].multi.gotoAndStop((ty % _local3.checkery) + 1);
} else if (_local3.table) {
var _local7 = ty % 2;
var _local11 = ((!_local7) ? (hastile(tx - 1, ty - 1, l)) : (hastile(tx, ty - 1, l)));
var _local14 = ((!_local7) ? (hastile(tx, ty - 1, l)) : (hastile(tx + 1, ty - 1, l)));
var _local12 = ((!_local7) ? (hastile(tx - 1, ty + 1, l)) : (hastile(tx, ty + 1, l)));
var _local15 = ((!_local7) ? (hastile(tx, ty + 1, l)) : (hastile(tx + 1, ty + 1, l)));
_root.fg.sorted[_local5].multi.gotoAndStop(tile_table(tl, _local11, _local14, _local12, _local15));
}
}
function hastile(tx, ty, l) {
var _local1 = (l ? (world_tilesB[tx][ty]) : (world_tilesA[tx][ty]));
if (_local1 > 0) {
return(_local1);
}
return(0);
}
function settile(tx, ty, l, tl) {
if (l) {
var _local6 = world_tilesB[tx][ty];
var _local5 = (("bx" + tx) + "y") + ty;
world_tilesB[tx][ty] = tl;
} else {
var _local6 = world_tilesA[tx][ty];
var _local5 = (("ax" + tx) + "y") + ty;
world_tilesA[tx][ty] = tl;
}
if ((_local6 == 0) && (_root.fg.sorted[_local5] == undefined)) {
attachtile(tx, ty, tl, l);
} else {
tl = ((tl == 0) ? (tiledata.length) : (tl));
_root.fg.sorted[_local5].gotoAndStop(tl);
}
}
function attachsprite(id, ganim) {
var _local2 = "s" + id;
_root.fg.sorted.attachMovie("sprites", _local2, _root.fg.sorted.getNextHighestDepth());
movesprite(id);
_root.fg.sorted[_local2].mc.mc.mc.gotoAndStop(ganim);
}
function movesprite(id) {
sprite_depth(id);
sprite_position(id);
}
function sprite_depth(id) {
var _local2 = world_sprites[id][0];
if ((((_local2.tx < (tilearea.xMin - 1)) || (_local2.tx > (tilearea.xMax + 1))) || (_local2.ty < (tilearea.yMin - 1))) || (_local2.ty > (tilearea.yMax + 1))) {
return(undefined);
}
var _local4 = "s" + id;
var _local3 = get_depth(_local2.tx, _local2.ty, _local2.l, 0, 1);
_root.fg.sorted[_local4].swapDepths(_local3);
}
function sprite_position(id) {
var _local2 = world_sprites[id][0];
var _local4 = "s" + id;
var _local10 = (_local2.l ? (world_tilesB[_local2.tx][_local2.ty]) : (world_tilesA[_local2.tx][_local2.ty]));
var _local3 = tiledata[_local10];
var _local5 = tile2point(_local2.tx, _local2.ty);
var _local8 = _local5.px;
_local8 = _local8 + (_local3.sitx ? (_local3.sitx) : 0);
var _local7 = _local5.py;
_local7 = _local7 + (_local3.sity ? (_local3.sity) : 0);
_root.fg.sorted[_local4]._x = _local8;
_root.fg.sorted[_local4]._y = _local7;
var _local6 = _local2.gstate;
var _local9 = _local2.gdir;
if (_local2.gstate == "stand") {
_local6 = ((_local3.xstate != undefined) ? (_local3.xstate) : (_local2.gstate));
_local9 = ((_local3.xdir != undefined) ? (_local3.xdir) : (_local2.gdir));
}
_root.fg.sorted[_local4].gotoAndStop(_local2.gchar);
_root.fg.sorted[_local4].mc.gotoAndStop(_local6);
_root.fg.sorted[_local4].mc.mc.gotoAndStop(_local9);
_root.fg.sorted[_local4].mc.mc.mc.gotoAndPlay(1);
}
function get_depth(tx, ty, l, o, s) {
var _local1 = 0;
if (l) {
_local1 = _local1 + tilearea.layer;
}
_local1 = _local1 + ((ty - tilearea.yMin) * tilearea.fulline);
_local1 = _local1 + (tx - tilearea.xMin);
if (s) {
_local1 = _local1 + tilearea.line;
}
if (o) {
_local1 = _local1 + (tilearea.line * 2);
}
return(_local1);
}
function tile2tile(tx, ty, dir, dist) {
var _local4 = ty % 2;
var _local1 = (_local4 ? (Math.ceil(dist / 2)) : (Math.floor(dist / 2)));
ty = ty + (((dir == "se") || (dir == "sw")) ? (dist) : (-dist));
tx = tx + (((dir == "ne") || (dir == "se")) ? (_local1) : (-_local1));
return({tx:tx, ty:ty});
}
function tile2point(tx, ty) {
var _local4 = ty * tilep.halfh;
var _local1 = ty % 2;
var _local5 = (_local1 ? ((tx * tilep.w) + tilep.halfw) : (tx * tilep.w));
return({px:_local5, py:_local4});
}
function point2tile(px, py) {
var _local6 = Math.floor(py / tilep.halfh);
var _local2 = _local6 % 2;
px = px - (_local2 ? (tilep.halfw) : 0);
tx = Math.floor(px / tilep.w);
px = px - (tx * tilep.w);
py = py - (_local6 * tilep.halfh);
if (px < tilep.halfw) {
var _local5 = px / tilep.halfw;
var _local4 = py / tilep.halfh;
if ((_local5 + _local4) < 1) {
if (_local2) {
return({tx:tx, ty:_local6 - 1});
}
return({tx:tx - 1, ty:_local6 - 1});
}
} else if (px > tilep.halfw) {
px = px - tilep.halfw;
var _local5 = (tilep.halfw - px) / tilep.halfw;
var _local4 = py / tilep.halfh;
if ((_local5 + _local4) < 1) {
if (_local2) {
return({tx:tx + 1, ty:_local6 - 1});
}
return({tx:tx, ty:_local6 - 1});
}
}
return({tx:tx, ty:_local6});
}
function tile2screen(tx, ty) {
var _local1 = tile2point(tx, ty);
var _local2 = Math.floor(_local1.px / tilep.stagew);
var _local3 = Math.floor(_local1.py / tilep.stageh);
return({sx:_local2, sy:_local3});
}
function render() {
if (gamep.state != "playing") {
return(undefined);
}
var _local1 = 0;
while (_local1 < ref_sprites.length) {
var _local2 = ref_sprites[_local1];
animatesprite(_local2);
_local1++;
}
}
function animatesprite(id) {
var _local2 = world_sprites[id][0];
if (!_local2.turnarrive) {
return(undefined);
}
var _local3 = "s" + id;
_root.fg.sorted[_local3]._x = _root.fg.sorted[_local3]._x + _local2.moveratex;
_root.fg.sorted[_local3]._y = _root.fg.sorted[_local3]._y + _local2.moveratey;
if (_local2.turnarrive == -25) {
if (_root.fg.sorted[_local3].mc.mc.mc._currentframe == _root.fg.sorted[_local3].mc.mc.mc._totalframes) {
_local2.turnarrive = 0;
_local2.live = 1;
}
} else if (_local2.turnarrive <= gamep.tcount) {
_local2.turnarrive = 0;
_local2.live = 1;
}
}
function checktileto(dir, opdir, id) {
var _local2 = world_sprites[id][0];
var _local25 = (_local2.l ? (world_tilesB[_local2.tx][_local2.ty]) : (world_tilesA[_local2.tx][_local2.ty]));
var _local8 = tiledata[_local25];
var _local9 = _local2.l;
var _local14 = 0;
if ((!_local2.l) && (_local8["layer" + dir])) {
_local9 = 1;
_local14 = 1;
}
var _local15 = _local2.ty % 2;
var _local13 = (_local8["exit" + dir] ? (_local8["exit" + dir]) : 0);
var _local12 = dir;
if (_local13 != 0) {
switch (dir) {
case "nw" :
_local12 = ((_local13 == 1) ? "north" : "west");
break;
case "ne" :
_local12 = ((_local13 == -1) ? "north" : "east");
break;
case "sw" :
_local12 = ((_local13 == 1) ? "south" : "west");
break;
case "se" :
_local12 = ((_local13 == -1) ? "south" : "east");
}
}
var _local22 = _local2.tx;
var _local21 = _local2.ty;
switch (_local12) {
case "nw" :
_local21--;
_local22 = _local22 - (_local15 ? 0 : 1);
break;
case "ne" :
_local21--;
_local22 = _local22 + (_local15 ? 1 : 0);
break;
case "sw" :
_local21++;
_local22 = _local22 - (_local15 ? 0 : 1);
break;
case "se" :
_local21++;
_local22 = _local22 + (_local15 ? 1 : 0);
break;
case "north" :
_local21 = _local21 - 2;
break;
case "south" :
_local21 = _local21 + 2;
break;
case "west" :
_local22--;
break;
case "east" :
_local22++;
}
var _local23 = world_tilesA[_local22][_local21];
var _local7 = tiledata[_local23];
if (_local9) {
if (_local7["layer" + opdir]) {
_local9 = 0;
_local14 = 1;
} else {
_local23 = world_tilesB[_local22][_local21];
_local7 = tiledata[_local23];
}
}
if (_local2.ignoreblocking) {
_local14 = 1;
}
if (!_local14) {
var _local17 = world_state[_local7.blockstate];
if (((_local7.blockx || (_local17)) || (_local23 == undefined)) || (_local23 == 0)) {
if (_local17 && (id != 0)) {
} else {
return(0);
}
}
switch (dir) {
case "nw" :
if ((_local8.blocknw || (_local7.blockse)) || (_local7.trapse)) {
return(0);
}
break;
case "ne" :
if ((_local8.blockne || (_local7.blocksw)) || (_local7.trapsw)) {
return(0);
}
break;
case "sw" :
if ((_local8.blocksw || (_local7.blockne)) || (_local7.trapne)) {
return(0);
}
break;
case "se" :
if (!((_local8.blockse || (_local7.blocknw)) || (_local7.trapnw))) {
break;
}
return(0);
}
}
var _local5 = 0;
while (_local5 < ref_sprites.length) {
var _local3 = ref_sprites[_local5];
if (_local3 == id) {
} else {
var _local4 = world_sprites[_local3][0];
if (((_local9 == _local4.l) && (_local4.tx == _local22)) && (_local4.ty == _local21)) {
return({id:_local3, ret:0});
}
}
_local5++;
}
var _local24 = (_local9 ? (world_interactB[_local22][_local21]) : (world_interactA[_local22][_local21]));
if (_local8["anim" + dir]) {
var _local18 = (_local2.l ? ((("bx" + _local2.tx) + "y") + _local2.ty) : ((("ax" + _local2.tx) + "y") + _local2.ty));
var _local19 = ((_local8.animout == undefined) ? 2 : (_local8.animout));
_root.fg.sorted[_local18].mc.gotoAndPlay(_local19);
}
if (_local7["anim" + opdir]) {
var _local18 = (_local9 ? ((("bx" + _local22) + "y") + _local21) : ((("ax" + _local22) + "y") + _local21));
var _local19 = ((_local8.animin == undefined) ? 2 : (_local8.animin));
_root.fg.sorted[_local18].mc.gotoAndPlay(_local19);
}
if (_local8["gstate" + dir]) {
_local2.gstate = _local8["gstate" + dir];
} else if (_local7["gstate" + opdir]) {
_local2.gstate = _local7["gstate" + opdir];
} else if (_local7[("gstate" + opdir) + "nx"]) {
_local2.gstate = "enter" + _local7[("gstate" + opdir) + "nx"];
} else if (_local8[("gstate" + dir) + "nx"]) {
_local2.gstate = "exit" + _local8[("gstate" + dir) + "nx"];
}
if (_local2.l != _local9) {
if (_local9) {
sprite_position(id);
_local2.l = 1;
sprite_depth(id);
} else {
movesprite(id);
_local2.l = 0;
}
} else if (_local7.under || (_local8.under)) {
if (_local21 > _local2.ty) {
sprite_position(id);
var _local20 = _local2.ty;
_local2.ty = _local21;
sprite_depth(id);
_local2.ty = _local20;
} else {
movesprite(id);
}
} else if (_local21 < _local2.ty) {
sprite_position(id);
var _local20 = _local2.ty;
_local2.ty = _local21;
sprite_depth(id);
_local2.ty = _local20;
} else {
movesprite(id);
}
return({tx:_local22, ty:_local21, tlon:_local25, tlto:_local23});
}
function preparespritemove(id, spd, obj) {
var _local2 = world_sprites[id][0];
var _local4 = tiledata[obj.tlon];
var _local7 = tiledata[obj.tlto];
var _local6 = nomovement_transition(_local2);
var _local11 = tile2point(_local2.tx, _local2.ty);
var _local10 = _local11.px;
var _local19 = (_local4.sitx ? (_local10 + _local4.sitx) : (_local10));
var _local8 = _local11.py;
var _local18 = (_local4.sity ? (_local8 + _local4.sity) : (_local8));
_local11 = tile2point(obj.tx, obj.ty);
var _local14 = (_local6 ? (_local10) : (_local11.px));
_local14 = _local14 + (_local7.sitx ? (_local7.sitx) : 0);
var _local13 = (_local6 ? (_local8) : (_local11.py));
_local13 = _local13 + (_local7.sity ? (_local7.sity) : 0);
var _local16 = _local14 - _local19;
var _local15 = _local13 - _local18;
if (spd == undefined) {
if (_local4.spd != undefined) {
spd = _local4.spd;
} else {
spd = _local2.spd;
}
}
var _local17 = "s" + id;
var _local12 = (_local6 ? (_root.fg.sorted[_local17].mc.mc.mc._totalframes) : ((gamep_spd[spd] * gamep.fpt) + 2));
_local2.moveratey = ((_local15 == 0) ? 0 : (_local15 / _local12));
_local2.moveratex = ((_local16 == 0) ? 0 : (_local16 / _local12));
_local2.turnarrive = (_local6 ? -25 : (gamep.tcount + gamep_spd[spd]));
_local2.live = 0;
_local2.gstate = gstate_transition(_local2);
var _local5 = (_local2.l ? (world_interactB[obj.tx][obj.ty]) : (world_interactA[obj.tx][obj.ty]));
if (_local5.l != undefined) {
_local2.l = _local5.l;
_local2.tx = _local5.tx;
_local2.ty = _local5.ty;
if (_local5.func != undefined) {
_root[_local5.func](_local2);
}
return(undefined);
}
_local2.tx = obj.tx;
_local2.ty = obj.ty;
}
function ctrlen() {
if (design == 1) {
control_length = inputs.length;
} else if (design == 2) {
control_length = 9;
} else {
control_length = 6;
}
}
function controls() {
var _local2 = 0;
while (_local2 < control_length) {
var _local1 = inputs[_local2];
var _local3 = Key.isDown(_local1.kcode) || (Key.isDown(_local1.kcode2));
if (_local3 && (!clicks[_local1.tag])) {
clicks[_local1.tag] = 1;
} else if ((!_local3) && (clicks[_local1.tag] == 2)) {
clicks[_local1.tag] = 0;
}
_local2++;
}
}
function switch_keyboard(a) {
switch (a) {
case "qwerty" :
inputs[0].kcode = 74;
inputs[0].kcode2 = 65;
inputs[1].kcode = 76;
inputs[1].kcode2 = 68;
inputs[2].kcode = 73;
inputs[2].kcode2 = 87;
inputs[3].kcode = 75;
inputs[3].kcode2 = 83;
keyboard_type = 1;
return(undefined);
case "azerty" :
inputs[0].kcode = 74;
inputs[0].kcode2 = 81;
inputs[1].kcode = 76;
inputs[1].kcode2 = 68;
inputs[2].kcode = 73;
inputs[2].kcode2 = 90;
inputs[3].kcode = 75;
inputs[3].kcode2 = 83;
keyboard_type = 2;
return(undefined);
case "dvorak" :
inputs[0].kcode = 84;
inputs[0].kcode2 = 65;
inputs[1].kcode = 69;
inputs[1].kcode2 = 83;
inputs[2].kcode = 82;
inputs[2].kcode2 = 188;
inputs[3].kcode = 78;
inputs[3].kcode2 = 79;
keyboard_type = 3;
return(undefined);
case "fallback" :
inputs[0].kcode = 100;
inputs[0].kcode2 = 37;
inputs[1].kcode = 102;
inputs[1].kcode2 = 39;
inputs[2].kcode = 104;
inputs[2].kcode2 = 38;
inputs[3].kcode = 101;
inputs[3].kcode2 = 40;
keyboard_type = 4;
return(undefined);
}
}
function snd_play(snd, loop) {
var _local2 = "aud_" + snd;
if (_root[_local2] == undefined) {
_root.attachMovie("empty", "mc" + _local2, _root.getNextHighestDepth());
_root[_local2] = new Sound(_root["mc" + _local2]);
}
sndsplaying[snd] = 1;
_root[_local2].attachSound(snd + ".wav");
if (loop) {
_root[_local2].start(0, 9999);
} else {
_root[_local2].start();
}
}
function stopsounds() {
for (var _local1 in sndsplaying) {
if (sndsplaying[_local1]) {
snd_stop(_local1);
}
}
}
function snd_stop(snd) {
var _local2 = "aud_" + snd;
_root[_local2].stop();
sndsplaying[snd] = 0;
}
function snd_ambience(xto, yto) {
var _local1 = world_map[yto][xto];
if (_local1.snd == gamep.snd) {
return(undefined);
}
gamep.snd = _local1.snd;
bgaud.stop();
bgaud.attachSound(_local1.snd + ".wav");
var _local2 = (getTimer() % bgaud.duration) / 1000;
bgaud.start(_local2);
}
function snd_initfade(sndname, ease, len, vol, kill) {
var _local2 = fadep.length;
fadep[_local2] = new Object();
fadep[_local2].snd = sndname;
fadep[_local2].ease = ease / 100;
fadep[_local2].timers = timer;
fadep[_local2].timere = timer + (len * gamep.fps);
fadep[_local2].vols = _root[sndname].getVolume();
fadep[_local2].vole = vol;
fadep[_local2].kill = (kill ? 1 : 0);
}
function snd_fade() {
if (fadep.length == 0) {
return(undefined);
}
var _local4 = new Array();
var _local2 = 0;
while (_local2 < fadep.length) {
var _local6 = fadep[_local2];
var _local5 = makepercent(timer, _local6.timers, _local6.timere);
var _local3 = demakepercent(_local5, _local6.vols, _local6.vole);
_root[_local6.snd].setVolume(_local3);
if (_local3 == _local6.vole) {
if (_local6.kill) {
_root[_local6.snd].stop();
}
} else {
_local4.push(_local2);
}
_local2++;
}
if (_local4.length == 0) {
fadep = [0];
return(undefined);
}
if (_local4.length < fadep.length) {
var _local6 = new Array();
_local2 = 0;
while (_local2 < _local4.length) {
_local6[_local2] = copyob(fadep[_local4[_local2]]);
_local2++;
}
fadep = copyarr(_local6);
}
}
function makepercent(n, min, max) {
return(Math.floor(((n - min) / (max - min)) * 100));
}
function demakepercent(p, min, max) {
var _local1 = (p / 100) * Math.abs(max - min);
_local1 = ((min < max) ? (_local1 + min) : (min - _local1));
return(_local1);
}
function designinit() {
clicks.spinner = 0;
clicks.leftclick = 2;
frameon("game");
_root.fg._xscale = tilep.zoom;
_root.fg._yscale = tilep.zoom;
_root.overlay.gotoAndStop("designer");
_root.overlay.l.text = designp.l;
cam(designp.camx, designp.camy);
}
function designloop() {
var _local7 = point2tile(_root.fg._xmouse, _root.fg._ymouse);
var _local4 = _local7.tx;
var _local3 = _local7.ty;
var _local2 = hastile(_local4, _local3, designp.l);
_root.overlay.t.text = (((("x" + _local4) + "_y") + _local3) + "_tl") + _local2;
if ((((clicks.left == 1) || (clicks.right == 1)) || (clicks.up == 1)) || (clicks.down == 1)) {
var _local6 = designp.camx;
_local6 = _local6 - (clicks.left ? 1 : 0);
_local6 = _local6 + (clicks.right ? 1 : 0);
var _local5 = designp.camy;
_local5 = _local5 - (clicks.up ? 1 : 0);
_local5 = _local5 + (clicks.down ? 1 : 0);
cam(_local6, _local5);
designp.camx = _local6;
designp.camy = _local5;
clicks.left = 2;
clicks.right = 2;
clicks.up = 2;
clicks.down = 2;
}
if (clicks.one == 1) {
copyscreen();
clicks.one = 2;
} else if (clicks.two == 1) {
pastescreen();
clicks.two = 2;
}
if (clicks.space == 1) {
designp.l = (designp.l ? 0 : 1);
_root.overlay.l.text = designp.l;
clicks.space = 2;
}
if (clicks.spinner != 0) {
_local2 = _local2 + clicks.spinner;
_local2 = ((_local2 == tiledata.length) ? 0 : (_local2));
_local2 = ((_local2 == -1) ? (tiledata.length - 1) : (_local2));
settile(_local4, _local3, designp.l, _local2);
clicks.spinner = 0;
}
if (clicks.middleclick) {
if (clicks.middleclick == 1) {
designp.copypasta = hastile(_local4, _local3, designp.l);
clicks.middleclick = 2;
} else {
settile(_local4, _local3, designp.l, designp.copypasta);
}
}
if (clicks.playtest == 1) {
clicks.playtest = 2;
design = 2;
ctrlen();
gameinit("design");
}
}
function testloop() {
if (clicks.playtest == 1) {
clicks.playtest = 2;
design = 1;
ctrlen();
gameexit();
designinit();
_root.fg.pc.removeMovieClip();
return(undefined);
}
if (clicks.test == 1) {
clicks.test = 2;
}
}
function copyscreen() {
var _local6 = {x:0, y:0};
_root.fg.globalToLocal(_local6);
_local6 = point2tile(_local6.x, _local6.y);
var _local7 = {x:Stage.width, y:Stage.height};
_root.fg.globalToLocal(_local7);
_local7 = point2tile(_local7.x, _local7.y);
screen_tilesA = new Array();
screen_tilesB = new Array();
var _local4 = _local6.tx;
while (_local4 <= _local7.tx) {
var _local3 = _local4 - _local6.tx;
if (screen_tilesA[_local3] == undefined) {
screen_tilesA[_local3] = new Array();
}
if (screen_tilesB[_local3] == undefined) {
screen_tilesB[_local3] = new Array();
}
var _local2 = _local6.ty;
while (_local2 <= _local7.ty) {
var _local5 = _local2 - _local6.ty;
screen_tilesA[_local3][_local5] = world_tilesA[_local4][_local2];
screen_tilesB[_local3][_local5] = world_tilesB[_local4][_local2];
_local2++;
}
_local4++;
}
}
function pastescreen() {
var _local5 = {x:0, y:0};
_root.fg.globalToLocal(_local5);
_local5 = point2tile(_local5.x, _local5.y);
var _local7 = {x:Stage.width, y:Stage.height};
_root.fg.globalToLocal(_local7);
_local7 = point2tile(_local7.x, _local7.y);
var _local3 = _local5.tx;
while (_local3 <= _local7.tx) {
var _local6 = _local3 - _local5.tx;
var _local2 = _local5.ty;
while (_local2 <= _local7.ty) {
var _local4 = _local2 - _local5.ty;
world_tilesA[_local3][_local2] = screen_tilesA[_local6][_local4];
world_tilesB[_local3][_local2] = screen_tilesB[_local6][_local4];
_local2++;
}
_local3++;
}
createarea();
}
function onEnterFrame() {
if (gamep.state != "paused") {
timer++;
}
controls();
if (framein == "game") {
if (design == 1) {
designloop();
} else if (design == 2) {
testloop();
render();
simulation();
} else {
render();
simulation();
}
}
}
function frameon(goto) {
framein = goto;
_root.gotoAndStop(goto);
}
function designing(b) {
if (b == 0) {
design = 0;
frameon("menu");
} else {
design = 1;
frameon("designer");
}
ctrlen();
}
function finishgame(a) {
gameexit();
if (demoing) {
frameon("demoend");
} else {
frameon("menu");
}
}
function init_saves(d) {
var _local2 = _root._url.split(":");
demoing = (((_local2[0] == "http") || (d)) ? 1 : 0);
world_state.demoing = demoing;
defaultstate = defaultstate + (("demoing," + demoing) + ",");
mainmen = ((!demoing) ? "full" : "demo");
mainmen = mainmen + ((fetchprogress() == 0) ? "A" : "B");
}
function saveprogress(t) {
t = t.split(",");
var _local3 = prog.split(",");
var _local1 = 0;
while (_local1 < t.length) {
_local3[Number(t[_local1])] = t[_local1 + 1];
_local1 = _local1 + 2;
}
prog = _local3.join(",");
sav.data.prog = prog;
sav.flush();
}
function fetchprogress() {
var _local1 = prog.split(",");
return(Number(_local1[0]));
}
function initminigame_pee() {
minigamep = {texting:0, canmove:0, section:0, min:20, max:796, spd:0, maxspd:10, accl:1.5, hitting:0, hits:0, goal:300, w:60, wh:90, streamspd:0, streamdir:1, streamaccl:0.75, streamburst:20};
_root.miniclip.gotoAndStop("pee");
_root.miniclip.mc.gotoAndStop("intro");
snd_initfade("bgaud", 0, 1, 0);
snd_play("pee", 1);
}
function minigame_pee() {
if (minigamep.texting) {
textcontrol(1);
return(undefined);
}
if (!minigamep.canmove) {
return(undefined);
}
switch (minigamep.section) {
case 0 :
_root.miniclip.mc.gotoAndStop("side");
_root.miniclip.mc.stream.gotoAndStop(1);
_root.miniclip.mc.bottle.goingin.gotoAndStop(2);
_root.miniclip.mc.bottle.peelevel.gotoAndStop(1);
minigamep.section++;
break;
case 1 :
minigame_peeside();
break;
case 2 :
_root.miniclip.mc.gotoAndStop("interlude");
minigamep.canmove = 0;
minigamep.section++;
break;
case 3 :
_root.miniclip.mc.gotoAndStop("front");
_root.miniclip.mc.bottle.miss.gotoAndStop(1);
_root.miniclip.mc.bottle.peelevel.gotoAndStop(1);
minigamep.maxspd = 15;
minigamep.hitting = 0;
minigamep.hits = 0;
minigamep.goal = 1000;
minigamep.section++;
break;
case 4 :
minigame_peefront();
break;
case 5 :
performaction([{func:"end_minigame", funcpass:"pee"}, "hikki::laugh::AHAHAHA.", "hikki::laugh::What a stupid thing to make a minigame.", "hikki::laugh::Oh lord."]);
}
}
function minigame_peefront() {
var _local2 = 0;
if (clicks.ul || (clicks.dl)) {
clicks.ul = 2;
clicks.dl = 2;
_local2 = -1;
} else if (clicks.ur || (clicks.dr)) {
clicks.ur = 2;
clicks.dr = 2;
_local2 = 1;
}
if ((_local2 == 0) || ((_local2 * minigamep.spd) < 0)) {
minigamep.spd = 0;
} else if (minigamep.spd == 0) {
minigamep.spd = _local2;
} else {
var _local11 = minigamep.maxspd * _local2;
var _local8 = minigamep.spd * minigamep.accl;
minigamep.spd = ((minigamep.maxspd < Math.abs(_local8)) ? (_local11) : (_local8));
}
var _local5 = _root.miniclip.mc.bottle._x + minigamep.spd;
if (_local5 < minigamep.min) {
minigamep.spd = 0;
_root.miniclip.mc.bottle._x = minigamep.min;
} else if (_local5 > minigamep.max) {
minigamep.spd = 0;
_root.miniclip.mc.bottle._x = minigamep.max;
} else {
_root.miniclip.mc.bottle._x = _local5;
}
if (minigamep.streamspd == 0) {
minigamep.streamspd = random(minigamep.streamburst);
}
var _local4 = _root.miniclip.mc.stream._x + (minigamep.streamspd * minigamep.streamdir);
if (_local4 < minigamep.min) {
minigamep.streamdir = 1;
_root.miniclip.mc.stream._x = minigamep.min;
} else if (_local4 > minigamep.max) {
minigamep.streamdir = -1;
_root.miniclip.mc.stream._x = minigamep.max;
} else {
_root.miniclip.mc.stream._x = _local4;
if (random(20) == 11) {
minigamep.streamdir = minigamep.streamdir * -1;
}
}
minigamep.streamspd = Math.floor(minigamep.streamspd * minigamep.streamaccl);
var _local6 = _root.miniclip.mc.bottle._x - minigamep.wh;
var _local9 = _local6 + minigamep.w;
var _local7 = _local9 + minigamep.w;
var _local10 = _local7 + minigamep.w;
_local2 = _root.miniclip.mc.stream._x;
if ((_local2 > _local6) && (_local2 < _local10)) {
if (_local2 < _local9) {
if (minigamep.hitting != 3) {
minigamep.hitting = 3;
_root.miniclip.mc.bottle.miss.gotoAndStop(3);
}
} else if (_local2 > _local7) {
if (minigamep.hitting != 2) {
minigamep.hitting = 2;
_root.miniclip.mc.bottle.miss.gotoAndStop(2);
}
} else {
minigamep.hits++;
var _local3 = Math.ceil((minigamep.hits / minigamep.goal) * 100);
_root.miniclip.mc.bottle.peelevel.gotoAndStop(_local3);
if (minigamep.hits >= minigamep.goal) {
minigamep.section++;
} else if (_local3 > 70) {
minigamep.hits++;
minigamep.streamburst = 90;
} else if (_local3 > 40) {
minigamep.hits = minigamep.hits + 3;
minigamep.streamburst = 50;
}
if (minigamep.hitting != 0) {
minigamep.hitting = 0;
_root.miniclip.mc.bottle.miss.gotoAndStop(1);
}
}
} else if (minigamep.hitting != 0) {
minigamep.hitting = 0;
_root.miniclip.mc.bottle.miss.gotoAndStop(1);
}
}
function minigame_peeside() {
var _local3 = 0;
if (clicks.ul || (clicks.dl)) {
clicks.ul = 2;
clicks.dl = 2;
_local3 = -1;
} else if (clicks.ur || (clicks.dr)) {
clicks.ur = 2;
clicks.dr = 2;
_local3 = 1;
}
if ((_local3 == 0) || ((_local3 * minigamep.spd) < 0)) {
minigamep.spd = 0;
} else if (minigamep.spd == 0) {
minigamep.spd = _local3;
} else {
var _local6 = minigamep.maxspd * _local3;
var _local5 = minigamep.spd * minigamep.accl;
minigamep.spd = ((minigamep.maxspd < Math.abs(_local5)) ? (_local6) : (_local5));
}
var _local4 = _root.miniclip.mc.bottle._x + minigamep.spd;
if (_local4 < minigamep.min) {
minigamep.spd = 0;
_root.miniclip.mc.bottle._x = minigamep.min;
} else if (_local4 > minigamep.max) {
minigamep.spd = 0;
_root.miniclip.mc.bottle._x = minigamep.max;
} else {
_root.miniclip.mc.bottle._x = _local4;
}
_local3 = _root.miniclip.mc.stream.hitTest(_root.miniclip.mc.bottle._x, _root.miniclip.mc.bottle._y, true);
if ((!minigamep.hitting) && (_local3)) {
_root.miniclip.mc.bottle.goingin.gotoAndStop(1);
minigamep.hitting = 1;
minigamep.hitsmooth = 20;
} else if (minigamep.hitting && (!_local3)) {
if (minigamep.hitsmooth) {
minigamep.hitsmooth--;
} else {
_root.miniclip.mc.bottle.goingin.gotoAndStop(2);
minigamep.hitting = 0;
}
}
if (_local3) {
minigamep.hits++;
var _local2 = Math.ceil((minigamep.hits / minigamep.goal) * 100);
_root.miniclip.mc.bottle.peelevel.gotoAndStop(_local2);
if (minigamep.hits >= minigamep.goal) {
minigamep.section++;
} else if (_local2 >= 60) {
_root.miniclip.mc.stream.gotoAndStop(3);
} else if (_local2 >= 30) {
_root.miniclip.mc.stream.gotoAndStop(2);
}
}
}
function minigame_peeanim(anim) {
if (!(anim === "toend")) {
} else {
minigamep.canmove = 1;
}
}
function initminigame_hands() {
snd_initfade("bgaud", 0, 1, 0);
snd_play("blood", 1);
minigamep = {texting:0, canmove:1, frames:0, pace:34, update:0, back:1, north:1, action:-1, turning:0, turnt:0, miss:0, section:0, small:0, big:0, flip1:0, flip2:0, flipseq:0, sequence:0};
hands_sequence_small = new Array();
hands_sequence_big = new Array();
var _local5 = 0;
while (_local5 < 4) {
var _local4 = random(5);
hands_sequence_small[_local5] = new Array();
var _local3 = 0;
while (_local3 < 4) {
hands_sequence_small[_local5].push(_local4);
var _local2 = random(5);
if (_local2 == _local4) {
_local2 = random(5);
}
_local4 = _local2;
_local3++;
}
hands_sequence_big[_local5] = new Array();
_local3 = 0;
while (_local3 < 5) {
hands_sequence_big[_local5].push(_local4);
var _local2 = random(5);
if (_local2 == _local4) {
_local2 = random(5);
}
_local4 = _local2;
_local3++;
}
_local5++;
}
hands_fliponce = new Array();
_local5 = 0;
while (_local5 < 5) {
hands_fliponce[_local5] = random(3) + 1;
_local5++;
}
hands_fliptwice = new Array();
_local5 = 0;
while (_local5 < 3) {
var _local4 = random(3) + 1;
hands_fliptwice[_local5] = [_local4, (random(4 - _local4) + _local4) + 1];
_local5++;
}
_root.miniclip.gotoAndStop("hands");
_root.miniclip.repeat.gotoAndStop(2);
}
function minigame_hands() {
if (minigamep.texting) {
textcontrol(1);
return(undefined);
}
if (!minigamep.canmove) {
return(undefined);
}
if (minigamep.update == 2) {
_root.miniclip.feedback.gotoAndStop(1);
_root.miniclip.repeat.gotoAndStop(2);
} else if (minigamep.update == 1) {
minigamep.update = 0;
if (minigamep.turning) {
if (minigamep.back) {
_root.miniclip.simon.gotoAndStop("ftob");
} else {
_root.miniclip.simon.gotoAndStop("btof");
}
minigamep.turning = 0;
minigamep.canmove = 0;
return(undefined);
}
var _local2 = (minigamep.back ? "b" : "f");
_local2 = _local2 + (minigamep.north ? "n" : "s");
switch (minigamep.action) {
case -1 :
break;
case 0 :
_local2 = _local2 + "w";
break;
case 1 :
_local2 = _local2 + "e";
break;
case 2 :
_local2 = _local2 + "sp";
}
_root.miniclip.simon.gotoAndStop(_local2);
}
switch (minigamep.section) {
case 0 :
minigame_textprep(["hand::::Watch as I do then do as I did."]);
minigamep.section++;
return(undefined);
case 1 :
minigame_handsactions(0, 0);
return(undefined);
case 2 :
minigame_handsrepeat(0);
return(undefined);
case 3 :
minigamep.update = 2;
_root.miniclip.feedback.gotoAndStop("success");
minigame_textprep(["hand::::Ok, you've got the basics down.", "hand::::Now comes the hard stuff."]);
minigamep.section++;
return(undefined);
case 4 :
minigame_handsactions(0, 1);
return(undefined);
case 5 :
minigame_handsrepeat(0);
return(undefined);
case 6 :
minigamep.update = 2;
_root.miniclip.feedback.gotoAndStop("success");
minigame_textprep(["hand::::Confusing isn't it?", "hand::::Let's step it up."]);
minigamep.section++;
return(undefined);
case 7 :
minigame_handsactions(1, 1);
return(undefined);
case 8 :
minigame_handsrepeat(1);
return(undefined);
case 9 :
minigamep.update = 2;
_root.miniclip.feedback.gotoAndStop("success");
minigame_textprep(["hand::::I'm impressed.", "hand::::This will be the last one."]);
minigamep.section++;
return(undefined);
case 10 :
minigame_handsactions(1, 2);
return(undefined);
case 11 :
minigame_handsrepeat(1);
return(undefined);
case 12 :
_root.miniclip.feedback.gotoAndStop("success");
_root.miniclip.win.gotoAndPlay(2);
_root.miniclip.simon.gotoAndStop("blank");
minigamep.section++;
minigamep.canmove = 0;
return(undefined);
case 13 :
performaction([{func:"end_minigame", funcpass:"hands", func2:"locks", func2pass:mwell_fill}, "hikki::bloody::"]);
return(undefined);
}
}
function minigame_handsrepeat(seq) {
var _local2 = -1;
if (clicks.ul == 1) {
clicks.ul = 2;
_local2 = 0;
_root.snd_play("westminster_B");
} else if (clicks.ur == 1) {
clicks.ur = 2;
_local2 = 1;
_root.snd_play("westminster_E");
} else if (clicks.dl == 1) {
clicks.dl = 2;
_local2 = 2;
_root.snd_play("westminster_Gs");
} else if (clicks.dr == 1) {
clicks.dr = 2;
_local2 = 3;
_root.snd_play("westminster_Fs");
} else if (clicks.space == 1) {
clicks.space = 2;
_local2 = 4;
_root.snd_play("westminster_combo");
}
if (_local2 != -1) {
var _local4 = (seq ? (hands_sequence_big[minigamep.big][minigamep.sequence]) : (hands_sequence_small[minigamep.small][minigamep.sequence]));
if (_local2 == _local4) {
minigamep.sequence++;
var _local5 = (seq ? (hands_sequence_big[minigamep.big].length) : (hands_sequence_small[minigamep.small].length));
if (minigamep.sequence == _local5) {
minigamep.sequence = 0;
minigamep.section++;
if (seq) {
minigamep.big++;
} else {
minigamep.small++;
}
}
} else {
minigamep.miss++;
if (minigamep.miss == 3) {
_root.miniclip.xxx.gotoAndPlay(4);
snd_stop("blood");
performaction([{func:"end_minigame"}, "hand::::Ok, now I said I wanted to know what you thought of the game BUT...", "hand::::As it stands you're quite pathetic at this game and WELL...", "hand::::I can't really take criticism... from someone as pathetic as you SO...", "hand::::I ask that you try again and succeed before offering your opinion on this game's quality."]);
} else {
if (seq) {
minigamep.big++;
} else {
minigamep.small++;
}
minigamep.sequence = 0;
minigamep.section--;
minigamep.update = 2;
_root.miniclip.xxx.gotoAndStop(minigamep.miss + 1);
_root.miniclip.feedback.gotoAndStop("fail");
switch (random(5)) {
case 0 :
minigame_textprep(["hand::::No see, that's wrong.", "hand::::Let's try again."]);
break;
case 1 :
minigame_textprep(["hand::::Rookie mistake.", "hand::::Let's try again."]);
break;
case 2 :
minigame_textprep(["hand::::Are you even paying attention?", "hand::::Let's try again."]);
break;
case 3 :
minigame_textprep(["hand::::I don't even get how you thought that was correct.", "hand::::Let's try again."]);
break;
case 4 :
minigame_textprep(["hand::::Don't do that again as we do this again."]);
}
}
}
}
}
function minigame_handsactions(seq, flp) {
minigamep.frames++;
if (minigamep.frames == minigamep.pace) {
minigamep.frames = 0;
} else {
return(undefined);
}
minigamep.update = 1;
if (minigamep.action != -1) {
minigamep.action = -1;
return(undefined);
}
if (!minigamep.turnt) {
if (flp == 1) {
var _local2 = hands_fliponce[minigamep.flip1];
} else if (flp == 2) {
var _local2 = hands_fliptwice[minigamep.flip2][minigamep.flipseq];
}
if (_local2 == minigamep.sequence) {
if (!minigamep.north) {
minigamep.north = 1;
return(undefined);
}
minigamep.flipseq++;
minigamep.turning = 1;
minigamep.back = (minigamep.back ? 0 : 1);
minigamep.turnt = 1;
return(undefined);
}
}
var _local2 = (seq ? (hands_sequence_big[minigamep.big][minigamep.sequence]) : (hands_sequence_small[minigamep.small][minigamep.sequence]));
if (_local2 == undefined) {
if (minigamep.section == 10) {
if (!minigamep.north) {
minigamep.north = 1;
return(undefined);
}
if (minigamep.back) {
minigamep.back = 0;
minigamep.turning = 1;
return(undefined);
}
}
_root.miniclip.feedback.gotoAndStop("repeat");
_root.miniclip.repeat.gotoAndStop(1);
minigamep.update = 0;
minigamep.sequence = 0;
minigamep.flipseq = 0;
if (flp) {
minigamep["flip" + flp]++;
}
minigamep.section++;
return(undefined);
}
if (((!minigamep.north) && ((_local2 == 0) || (_local2 == 1))) || (minigamep.north && ((_local2 == 2) || (_local2 == 3)))) {
minigamep.north = (minigamep.north ? 0 : 1);
return(undefined);
}
minigamep.action = ((_local2 > 1) ? (_local2 - 2) : (_local2));
minigamep.sequence++;
minigamep.turnt = 0;
}
function minigame_handsanim(anim) {
if (!(anim === "toend")) {
} else {
minigamep.canmove = 1;
}
}
function initminigame_lab() {
minigamep = {texting:0, flask:0, moves:0, cmyk:"c", canmove:1, reset:0, pour1:"c", pour2:"c", pour3:"c"};
minigamep.c = world_state.cjuice;
minigamep.m = world_state.mjuice;
minigamep.y = world_state.yjuice;
minigamep.k = world_state.kjuice;
_root.miniclip.gotoAndStop("lab");
_root.miniclip.mc.gotoAndStop("c");
minigame_labanim("set");
var _local2 = (world_state.mouthd ? 1 : 3);
_root.miniclip.mc.tag1.gotoAndStop(_local2);
_local2 = (world_state.lolid ? 2 : 3);
_root.miniclip.mc.tag2.gotoAndStop(_local2);
}
function minigame_lab() {
if (minigamep.texting) {
textcontrol(1);
return(undefined);
}
if (!minigamep.canmove) {
return(undefined);
}
if (minigamep.flask == 3) {
var _local2 = {c:0, m:0, y:0, k:0};
_local2.c = ((((minigamep.pour1 == "c") || (minigamep.pour2 == "c")) || (minigamep.pour3 == "c")) ? 1 : 0);
_local2.m = ((((minigamep.pour1 == "m") || (minigamep.pour2 == "m")) || (minigamep.pour3 == "m")) ? 1 : 0);
_local2.y = ((((minigamep.pour1 == "y") || (minigamep.pour2 == "y")) || (minigamep.pour3 == "y")) ? 1 : 0);
_local2.k = ((((minigamep.pour1 == "k") || (minigamep.pour2 == "k")) || (minigamep.pour3 == "k")) ? 1 : 0);
if ((_local2.c && (_local2.m)) && (_local2.y)) {
performaction({cut:"potionhand", func:"end_minigame", funcpass:"destroy", func2:"change_world", func2pass:"state,5,glass,1"});
return(undefined);
}
if ((_local2.k && (_local2.m)) && (_local2.y)) {
if (world_state.mouthd) {
performaction([{func:"end_minigame"}, "hikki::mono::I've already mixed these...", "hikki::mono::I like having a mouth...", "hikki::mono::Even if it isn't mine."]);
return(undefined);
}
performaction({cut:"potionmouth", func2:"end_minigame", func2pass:"juice", func:"change_world", funcpass:"state,2,mouthd,1"});
return(undefined);
}
if ((_local2.k && (_local2.c)) && (_local2.y)) {
if (world_state.lolid) {
performaction([{func:"end_minigame"}, "hikki::mono::I've already mixed these...", "hikki::mono::Being young again was freeing but...", "hikki::mono::..."]);
return(undefined);
}
performaction({cut:"potionloli", func2:"end_minigame", func2pass:"juice", func:"change_world", funcpass:"state,6,lolid,1,trydoor,-1,mwell,0,kwell,1,cwell,1"});
return(undefined);
}
if ((_local2.k && (_local2.m)) && (_local2.c)) {
if (world_state.lolid) {
performaction({cut:"potiondeath", func:"end_minigame", funcpass:"destroy", func2:"change_world", func2pass:"state,8,glass,1,trydoor,-1"});
return(undefined);
}
performaction({cut:"potiondie"});
return(undefined);
}
} else if ((((!minigamep.c) && (!minigamep.m)) && (!minigamep.y)) && (!minigamep.k)) {
if (minigamep.flask == 0) {
if (minigamep.moves > 1) {
if (world_state.alchemy == 0) {
performaction([{func:"end_minigame"}, "hikki::mono::A chemistry set..."]);
} else {
performaction([{func:"end_minigame"}, "hikki::mono::I should try to fill these vials."]);
}
return(undefined);
}
} else {
var _local4 = world_sprites[0][0];
if (_local4.gchar == "loli") {
performaction([{func:"end_minigame"}, "loli::smile::Potions!"]);
} else {
performaction([{func:"end_minigame"}, "hikki::mono::I believe I will require atleast 3 full vials to perform any alchemic feats."]);
}
return(undefined);
}
}
var _local3 = "";
if (clicks.ul == 1) {
clicks.ul = 2;
_local3 = "c";
} else if (clicks.ur == 1) {
clicks.ur = 2;
_local3 = "m";
} else if (clicks.dl == 1) {
clicks.dl = 2;
_local3 = "y";
} else if (clicks.dr == 1) {
clicks.dr = 2;
_local3 = "k";
}
if ((_local3 != "") && (_local3 != minigamep.cmyk)) {
_root.miniclip.mc.gotoAndStop((minigamep.cmyk + "to") + _local3);
minigamep.cmyk = _local3;
minigamep.canmove = 0;
if (minigamep.reset) {
minigame_labanim("set");
minigamep.reset = 0;
}
minigamep.moves++;
return(undefined);
}
if (clicks.space == 1) {
clicks.space = 2;
if (minigamep[minigamep.cmyk]) {
minigamep[minigamep.cmyk] = 0;
minigamep.flask++;
minigamep["pour" + minigamep.flask] = minigamep.cmyk;
minigamep.reset = 1;
_root.miniclip.mc.gotoAndStop(minigamep.cmyk + "pour");
minigame_labanim("set");
minigamep.canmove = 0;
}
}
}
function minigame_labanim(anim) {
switch (anim) {
case "set" :
_root.miniclip.mc.c.gotoAndStop(minigamep.c + 1);
_root.miniclip.mc.m.gotoAndStop(minigamep.m + 1);
_root.miniclip.mc.y.gotoAndStop(minigamep.y + 1);
_root.miniclip.mc.k.gotoAndStop(minigamep.k + 1);
break;
case "pour" :
_root.miniclip.mc.flask.gotoAndStop(minigamep.flask + 1);
_root.miniclip.mc.flask["pour" + minigamep.flask].mc.gotoAndStop(minigamep["pour" + minigamep.flask]);
break;
case "toend" :
minigamep.canmove = 1;
}
}
function end_minigame(v) {
switch (v) {
case "juice" :
world_state.cjuice = minigamep.c;
world_state.mjuice = minigamep.m;
world_state.yjuice = minigamep.y;
world_state.kjuice = minigamep.k;
break;
case "hands" :
change_world("mwell,1,state,1");
snd_stop("blood");
break;
case "pee" :
if (demoing) {
finishgame("demo");
return(undefined);
}
change_world("ywell,1,minibottle,1,bigbottle,2");
locks(ywell_fill);
snd_stop("pee");
break;
case "destroy" :
world_state.cjuice = minigamep.c;
world_state.mjuice = minigamep.m;
world_state.yjuice = minigamep.y;
world_state.kjuice = minigamep.k;
performaction({func:"locks", funcpass:destroy_lab});
break;
}
snd_initfade("bgaud", 0, 1, 100);
gamep.state = "playing";
_root.miniclip.gotoAndStop(1);
}
function minigame_textprep(sub) {
minigamep.texting = 1;
_root.overlay.gotoAndStop("text");
var _local2 = copyarr(sub);
text_text = copyarr(_local2);
text_on = 0;
updatetext();
clicks.left = 2;
clicks.right = 2;
clicks.space = 2;
}
function init_player(tx, ty) {
var _local2 = _root.fg;
_local2.pc.removeMovieClip();
_local2.attachMovie("player_cursor", "pc", _local2.getNextHighestDepth());
var _local3 = tile2point(tx, ty);
_local2.pc._x = _local3.px;
_local2.pc._y = _local3.py;
pcp = {tx:tx, ty:ty, movframes:20, disablewarp:0};
_root.overlay.spc.gotoAndStop(3);
cam();
}
function player() {
if (pcp.animate) {
player_animate();
return(undefined);
}
if (clicks.space == 1) {
clicks.space = 2;
var _local1 = world_interactA[pcp.tx][pcp.ty];
if ((_local1.tx != undefined) && (!pcp.disablewarp)) {
pcp.tx = _local1.tx;
pcp.ty = _local1.ty;
pcp.animate = 1;
player_animate();
cam();
pcp.wtcheck = 1;
stopsounds();
}
if (_local1.touch > -1) {
performaction(world_text[_local1.touch]);
}
return(undefined);
}
var _local2 = 0;
if (clicks.u == 1) {
_local2 = 1;
player_move("u");
} else if (clicks.d == 1) {
_local2 = 1;
player_move("d");
} else if (clicks.l == 1) {
_local2 = 1;
player_move("l");
} else if (clicks.r == 1) {
_local2 = 1;
player_move("r");
}
if (_local2) {
clicks.u = 2;
clicks.d = 2;
clicks.l = 2;
clicks.r = 2;
}
}
function player_animate() {
var _local2 = _root.fg.pc;
pcp.animate--;
if (!pcp.animate) {
var _local4 = tile2point(pcp.tx, pcp.ty);
_local2._x = _local4.px;
_local2._y = _local4.py;
_local2.gotoAndStop("idle");
return(undefined);
}
_local2._x = _local2._x + pcp.movx;
_local2._y = _local2._y + pcp.movy;
if (random(5)) {
return(undefined);
}
_local2 = _root.fg;
var _local5 = _local2.getNextHighestDepth();
var _local3 = "drop" + _local5;
_local2.attachMovie("player_cursor", _local3, _local5);
_local2[_local3]._x = _local2.pc._x;
_local2[_local3]._y = _local2.pc._y;
_local2[_local3].gotoAndStop("drop" + (random(3) + 1));
}
function player_move(dir) {
var _local4 = world_interactA[pcp.tx][pcp.ty];
var _local7 = _local4[dir + "x"];
var _local8 = _local4[dir + "y"];
var _local5 = tile2point(pcp.tx, pcp.ty);
var _local6 = tile2point(_local7, _local8);
var _local2 = {};
_local2.h = _local6.px - _local5.px;
_local2.v = _local6.py - _local5.py;
var _local9 = _root.fg.pc;
_local9.gotoAndStop("move");
pcp.animate = pcp.movframes;
pcp.movx = _local2.h / pcp.movframes;
pcp.movy = _local2.v / pcp.movframes;
pcp.tx = _local7;
pcp.ty = _local8;
var _local3 = Math.floor(((Math.abs(_local2.h) + Math.abs(_local2.v)) / tilep.stageadd) * 100);
if (_local3 < 10) {
snd_play("soar");
} else if (_local3 < 30) {
snd_play("soar2");
} else {
snd_play("soar3");
}
}
function rad2deg(radians) {
return((radians * 180) / Math.PI);
}
function deg2rad(degrees) {
return((degrees * Math.PI) / 180);
}
function create_player_paths(xto, yto, links) {
var _local20 = tilep.stagew * xto;
var _local21 = _local20 + tilep.stagew;
var _local17 = tilep.stageh * yto;
var _local18 = _local17 + tilep.stageh;
var _local22 = point2tile(_local20, _local17);
_local20 = _local22.tx;
_local17 = _local22.ty;
_local22 = point2tile(_local21, _local18);
_local21 = _local22.tx;
_local18 = _local22.ty;
var _local1 = [];
var _local9 = _local20;
while (_local9 <= _local21) {
var _local5 = _local17;
while (_local5 <= _local18) {
var _local4 = world_interactA[_local9][_local5];
if (_local4.name == undefined) {
} else {
_local1.push({name:_local4.name, tx:_local9, ty:_local5, u:-1, d:-1, l:-1, r:-1});
}
_local5++;
}
_local9++;
}
links = links.split("/");
var _local11 = 0;
while (_local11 < links.length) {
var _local8 = links[_local11].split(",");
var _local3 = -1;
var _local6 = -1;
var _local10 = -1;
var _local2 = 0;
while (_local2 < _local1.length) {
var _local4 = _local1[_local2];
if (_local4.name == _local8[0]) {
_local3 = _local2;
}
if (_local4.name == _local8[1]) {
_local6 = _local2;
}
if (_local4.name == _local8[2]) {
_local10 = _local2;
}
_local2++;
}
if (_local8[2] == "all") {
_local1[_local3].u = _local6;
_local1[_local3].d = _local6;
_local1[_local3].r = _local6;
_local1[_local3].l = _local6;
} else {
_local1[_local6].u = _local3;
_local1[_local10].l = _local3;
_local1[_local3].r = _local10;
_local1[_local3].d = _local6;
}
_local11++;
}
_local11 = 0;
while (_local11 < _local1.length) {
var _local4 = _local1[_local11];
var _local7 = world_interactA[_local4.tx][_local4.ty];
_local7.ux = _local1[_local4.u].tx;
_local7.uy = _local1[_local4.u].ty;
_local7.dx = _local1[_local4.d].tx;
_local7.dy = _local1[_local4.d].ty;
_local7.lx = _local1[_local4.l].tx;
_local7.ly = _local1[_local4.l].ty;
_local7.rx = _local1[_local4.r].tx;
_local7.ry = _local1[_local4.r].ty;
_local11++;
}
}
world_txtA = "br,br,br,0x45,28,br,0x43,34,28,3x3,br,0x41,28,33,3x7,br,0x40,28,3x10,br,0x40,20,18,3x7,br,0x42,72,0,3x3,69,br,br,br,br,br,br,br,br,br,0x15,28,0x27,28x2,2,br,0x13,28x2,3x3,70,0x23,28,2x5,br,0x11,28,31,3x7,0x19,71,0,2x9,br,0x10,28,3x11,0x17,18,2x12,br,0x10,18x2,3x12,0x16,18x2,2x9,br,0x12,21,18,3x9,69,0x18,18x2,2x5,69,br,0x14,22,18,3x5,0x23,18x2,2,br,0x16,18x2,3,br,br,br,br,br,br,br,0x11,28,71,3x3,0x35,3x3,70,br,0x12,3x6,0x3,3x2,0x25,71,3x6,br,0x11,28x2,3x8,0x26,3x6,69,br,0x12,3x10,0x22,71,3x6,br,0x14,3x10,0x20,3x5,br,0x16,3x3,0,3x5,0x21,3,br,0x22,3,0,69,br,br,br,br,br,br,br,br,br,0x15,63x2,4,br,0x13,28x2,4x5,0x27,28x2,65,0,70,br,0x12,28,4x8,0x24,28x2,65x5,br,0x12,18x2,4x5,0x25,28,65x8,br,0x14,18x2,4,0,69,0x25,18,25,65x3,0,65,br,0x46,26,br,br,br,br,br,br,br,br,0x17,28x2,3,0x27,28x2,3,0,70,br,0x15,28x2,3x5,0x23,28x2,3x5,br,0x13,28,32,3x9,70,0x18,28x2,3x9,br,0x12,28,3x12,0x17,28,3x12,br,0x12,18,24,3x9,0x19,18,25,3x9,br,0x14,18,25,3x5,0x23,26,18,3x5,br,0x16,26,18,3,0x27,23,18,3,br,br,br,br,br,br,br,br,0x17,28x2,3,br,0x15,28x2,3x5,br,0x13,28,32,3x9,70,0x18,72,2,br,0x12,28,3x12,br,0x12,18,24,3x9,0x24,71,br,0x14,18";
world_txtB = "br,br,br,br,0x45,1x3,br,0x43,1x4,44,1x2,br,0x41,1x10,br,0x42,1x7,br,0x42,27,18,1x4,br,0x44,18,br,br,br,br,br,br,br,br,0x45,8,br,0x15,1x4,0x22,28,0,7,5,1,8x2,br,0x13,42,1x5,38,0x19,35,28,1,6,1x2,14,1x2,8,10,br,0x11,1x11,0x18,1x4,15x2,14x2,1x2,9,8,br,0x12,1,39,1x2,41,1x7,0x18,16,12,1x4,74,1x2,br,0x14,40x2,1x8,0x20,13,11,1x4,br,0x16,1x3,43,1,0x25,17,0,73,br,0x18,1,br,br,br,br,br,br,0x13,28,0x37,28,br,0x12,35,1x3,0x5,28,0x27,28x2,1x4,br,0x11,18,1x6,0,28,29,76,1,0x24,28,35,1x6,br,0x12,22,1x8,0x24,28,30,1x7,br,0x11,18,1,75,1x8,0x21,28,35,1x6,br,0x12,19,18,1,75,1x8,0x19,18,1,75,1x3,br,0x14,19,18,1,28x2,18,1x5,0x19,19,18,1,br,0x16,18,0x3,20,18,1,0,1,br,br,br,br,br,br,br,br,br,0x17,1,br,0x15,1,64,1,47,62,0x29,1,0,1,br,0x13,58,1x6,47,0,61,0x24,55,68,1x3,br,0x15,60,1x3,0x26,1x6,0,67,br,0x16,59,0,1,0x27,1x3,0,66,br,br,br,br,br,br,br,br,br,0x49,1,0,1,br,0x17,48,0x29,56,1x4,br,0x15,1x2,46,1x2,45,1x4,0x20,1x7,57,1,br,0x13,1,42,1x10,0x18,55,54,1x2,51,1,52,1x3,55,1,br,0x14,1x9,0x21,1x2,56,1x6,br,0x16,49,1x4,0x25,53,1x3,50,br,0x18,1,0x29,1,br,br,br,br,br,br,br,br,br,0x17,48,br,0x15,1x2,47,46,47,45,1x4,0x18,1x2,br,0x13,1,42,1x3,47x3,1x4,br,0x14,1x9,0x24,1,br,0x16,49,0x31,1,br,br,br,br,br,br,br,br,br,br,br,br,br,br,0";
world_tilesA = importtiles(world_txtA);
world_tilesB = importtiles(world_txtB);
tiledata = new Array();
tmp = 2;
tiledata[tmp] = {checkery:2};
tiledata[tmp + 1] = {checkery:2};
tiledata[tmp + 2] = {checkery:2};
tmp = 5;
tiledata[tmp] = {animt:1, blockx:1};
tiledata[tmp + 1] = {animt:1, blockx:1};
tiledata[tmp + 2] = {animt:1, blockx:1};
tmp = 11;
tiledata[tmp] = {animt:1, blockx:1};
tiledata[tmp + 1] = {animt:1, blockx:1};
tiledata[tmp + 2] = {animt:1, blockx:1};
tiledata[15] = {sity:10};
tiledata[17] = {animt:1, blockx:1};
tiledata[19] = {forceout:"sw", animsw:1, animout:12};
tiledata[29] = {forceout:"se", animse:1, animout:12};
tmp = 36;
tiledata[tmp] = {animnw:1, forceout:"nw", under:1, warpframe:15};
tiledata[tmp + 1] = {animne:1, forceout:"ne", under:1, warpframe:15};
tiledata[46] = {under:1};
tmp = 54;
tiledata[tmp] = {animt:1};
tiledata[tmp + 2] = {under:1};
tiledata[tmp + 3] = {under:1};
tiledata[62] = {sity:-8};
tiledata[47] = {sity:-8, sitx:-4};
tmp = 66;
tiledata[tmp] = {animt:1};
tiledata[42] = {under:1};
tiledata[48] = {under:1};
tiledata[53] = {under:1};
tiledata[76] = {};
start_save = "0,0,0,0,0,0,0,0";
is_dem = 1;
world_map = new Array();
quickmapA = {living:0, hall:0, bath:0, melissa:0, dining:1, kitchen:1, entrance:1, laundry:1, david:1};
quickmapB = {living:1, hall:2, bath:3, melissa:4, dining:0, kitchen:1, entrance:2, laundry:3, david:4};
world_state = {state:0, hidetiles:0, stove:1, tree:1, microwave:1, melissabed:2, guestbed:4, stereo:1, dresser:1, davidbed:2, nintendo:1, toilet:1, shower:1, curtain:1, towels:1, fridge:1, coke:2, dishes:2, mvar:0, dvar:0, toaster:1, toasterexplained:0, checkpoint:0};
defaultstate = "dishes,2,stove,1,fridge,1,tree,1,melissabed,1,guestbed,4,stereo,1,dresser,1,davidbed,1,nintendo,1,toilet,1,shower,1,curtain,1,towels,1,coke,2,microwave,1,";
world_text = new Array();
world_interactA = new Array();
world_interactB = new Array();
var i = 0;
while (i < 80) {
world_interactA[i] = new Array();
world_interactB[i] = new Array();
i++;
}
quickmap_living = {tv:"19,19", tree:"23,19", table:"21,18", vhs:"19,14"};
world_interactA[18][20] = {name:"todining", tx:7, ty:45};
world_interactA[22][25] = {name:"toentrance", tx:34, ty:47};
world_interactA[19][19] = {name:"tv", touch:101};
world_text[101] = [0, "pc::d::Television, the modern altar."];
world_text[130] = [0, "pc::concern::With my injected lust I'm afraid I've made this hypnotic device even more potent."];
world_interactA[23][19] = {name:"tree", touch:102};
world_text[102] = [0, "pc::bask::Ah, the traditional fir tree ritual of Winter Solstice carries on as it always did.", "pc::d::Some things are eternal."];
world_text[131] = [0, "pc::blush::What Thor must think for me to inject my lustful sap into a fir!"];
world_interactA[21][18] = {name:"table", touch:103};
world_text[103] = [0, "pc::shock::Oh-ho! A crystal clear tabletop so that objects on it seem to float."];
world_text[132] = [0, "pc::concern::I was trying to focus my lust on the table itself but it's lack of visibility...", "pc::contemplation::I much rather my tables have some meat on them."];
world_interactA[19][14] = {name:"vhs", touch:104};
world_text[104] = [0, "pc::d::A collection of VHS tapes...", "pc::laugh::Does the collector not realize we're entering the age of the Disc?"];
paths_living_bare = "todining,toentrance,toentrance/toentrance,todining,todining";
paths_living = "todining,tv,vhs/toentrance,vhs,tree/tv,tree,table/tree,toentrance,todining/table,todining,toentrance/vhs,table,tv";
paths_living_sleep = "todining,tv,all/toentrance,tree,all/vhs,table,all/tv,tree,table/table,tv,tree/tree,table,tv";
quickmap_hall = {thermostat:"36,19", tohide:"37,26"};
world_interactA[36][19] = {name:"thermostat", touch:144};
world_text[144] = [0, "pc::d::A thermostat, the modern fireplace.", "pc::laugh::Silly humans, winter nipples are best nipples."];
world_interactA[31][15] = {name:"toentrance", tx:33, ty:55};
world_interactA[32][23] = {name:"tobath", tx:50, ty:20};
world_interactA[34][15] = {name:"tomelissa", tx:61, ty:26};
world_interactA[35][17] = {name:"todavid", tx:59, ty:53};
world_interactA[37][26] = {name:"tohide", touch:105};
world_text[105] = [0, "pc::d::Beyond is the parent's room.", "pc::contemplation::But I won't enter as they're not my concern."];
paths_hall = "toentrance,tobath,tomelissa/tomelissa,todavid,todavid/todavid,thermostat,tobath/tobath,tomelissa,thermostat/tohide,toentrance,toentrance/thermostat,tohide,tohide";
quickmap_bath = {bath:"47,17", toilet:"48,13", sink:"50,16"};
world_interactA[50][20] = {name:"tohall", tx:32, ty:23};
world_interactA[47][17] = {name:"bath", touch:106};
world_text[106] = [0, "pc::concern::The tub is the only place that each of the young couple allow disrobing.", "pc::contemplation::Such prudish behaviors makes my task difficult."];
world_interactA[48][13] = {name:"toilet", touch:107};
world_text[107] = [0, "pc::curious::It always surprises me to see such a crystal pool of water being used for bodily evacuation.", "pc::d::Not that I have a problem with wasteful extravagance."];
world_interactA[50][16] = {name:"mirror", touch:108};
world_text[108] = [0, "pc::curious::...", "pc::d::...", "pc::blush::My beauty is hypnotic."];
paths_roomtohall_bare = "tohall,tohall,all";
paths_bath = "tohall,toilet,bath/bath,tohall,toilet/toilet,mirror,mirror/mirror,bath,tohall";
quickmap_melissa = {bed:"60,20", stereo:"60,17", music:"61,15", dresser:"63,17"};
world_interactA[61][26] = {name:"tohall", tx:34, ty:15};
world_interactA[60][20] = {name:"bed", touch:109};
world_text[109] = [0, "pc::disdain::These modern sleeping mats are far too firm.", "pc::disdain::Why no down and dander?"];
world_interactA[60][17] = {name:"stereo", touch:110};
world_text[110] = [0, "pc::shock::Melissa is quite the emphatic audiophile. What is this kinship I feel?", "pc::bask::Such resonant resonance, such attention to attenuation."];
world_text[133] = [0, "pc::blush::My lustful frequencies have intermingled with this magnificent machine."];
world_interactA[61][15] = {name:"music", touch:111};
world_text[111] = [0, "pc::shock::What a collection!", "pc::shock::Music of many eras and of every continent!"];
world_text[134] = [0, "pc::concern::I hope I didn't do any damage to her discs...", "pc::blush::My lustful injections can be rough."];
world_interactA[63][17] = {name:"dresser", touch:112};
world_text[112] = [0, "pc::curious::Hmmm...", "pc::d::No phallic idolatries to be found."];
world_text[135] = [0, "pc::contemplation::A rather wasteful place to have injected my lust.", "pc::contemplation::Not that there's anything wrong with wasteful lust.", "pc::contemplation::Really all lust is wasted lust, to not waste of it would be the waste."];
paths_melissa = "bed,stereo,tohall/stereo,tohall,bed/tohall,music,music/music,dresser,dresser/dresser,bed,stereo";
paths_melissa_sleep = "bed,stereo,all/tohall,dresser,all/stereo,dresser,music/music,stereo,dresser/dresser,music,stereo";
quickmap_dining = {thermostat:"6,39", art:"6,44"};
world_interactA[7][45] = {name:"toliving", tx:18, ty:20};
world_interactA[8][49] = {name:"tokitchen", tx:20, ty:42};
world_interactA[6][39] = {name:"thermostat", touch:144};
world_interactA[6][44] = {name:"art", touch:113};
world_text[113] = [0, "pc::smile::Artistic passions waft around this room.", "pc::bask::I always wanted to dabble in musery."];
paths_dining_bare = "tokitchen,toliving,toliving/toliving,tokitchen,tokitchen";
paths_dining = "art,tokitchen,thermostat/tokitchen,thermostat,art/toliving,art,tokitchen/thermostat,toliving,toliving";
quickmap_kitchen = {microwave:"18,43", sink:"19,49", stove:"21,42", coffee:"21,43", fridge:"23,46", coke:"20,47", toaster:"22,44"};
world_interactA[20][42] = {name:"todining", tx:8, ty:49};
world_interactA[22][51] = {name:"toentrance", tx:32, ty:51};
world_interactA[18][43] = {name:"microwave", touch:114};
world_text[114] = [0, "pc::disdain::Such a pathetic grill these things are, everything exits soggy."];
world_text[127] = [0, "pc::blush::That injection was hotter than I'm accustomed to from grills."];
world_interactA[19][49] = {name:"sink", touch:115};
world_text[115] = [0, "pc::bask::The soapy scents are delightful."];
world_text[128] = [0, "pc::d::I feel somewhat dirty pouring my lust down the sink."];
world_interactA[21][42] = {name:"stove", touch:116};
world_text[116] = [0, "pc::concern::What a waste, this thing should be baking cakes and caramel mincing."];
world_interactA[21][43] = {name:"coffee", touch:117};
world_text[117] = [0, "pc::bask::Mmm, this is the good stuff I smell.", "pc::d::Father clearly doesn't mess around."];
world_text[129] = [0, "pc::blush::I prefer black, yet had no choice but to inject cream."];
world_interactA[22][44] = {name:"toaster", touch:118};
world_text[118] = [0, "pc::curious::The're an odd scent to this...", "pc::curious::And not just that overwhelming seizurey-strokey smell."];
world_text[139] = {nextext:"toaster.0,143.toasterexplained.0,140,1,141"};
world_text[140] = [{nextext:142, changeworld:"toasterexplained,1"}, "pc::d::There's always one of these around, the odd smelling time-distortion device.", "pc::concern::Of course I could bend time of my own will if I wanted...", "pc::contemplation::But that's just too much strain.", "pc::d::Anyhow, I think I just press this thing and..."];
world_text[141] = [{choice:"142,100"}, "pc::concern::Shall I take off back to the past?", "pc::contemplation::Or stick around?"];
world_text[142] = {cut:"timetravel", checkpoint:1};
world_text[143] = [0, "pc::concern::I can't seem to get time-distort-travel up and working at this moment.", "pc::concern::I'm sure it happens to every guy once in a while."];
world_interactA[23][46] = {name:"fridge", touch:119};
world_text[119] = [0, "pc::d::Gotta love the icebox, filled with sugar-waters and frosted-meats."];
world_interactA[20][47] = {name:"coke", touch:4};
paths_kitchen_bare = "coke,toentrance,all/todining,toentrance,toentrance/toentrance,todining,todining";
paths_kitchen_coke = "todining,coke,all/toentrance,coke,all/coke,coke,all";
paths_kitchen = "todining,microwave,stove/microwave,stove,sink/stove,coffee,coffee/coffee,toaster,toaster/toaster,sink,toentrance/sink,fridge,todining/fridge,toentrance,microwave/toentrance,todining,fridge";
paths_kitchen_sleep = "todining,microwave,all/stove,microwave,all/toaster,coffee,all/fridge,coffee,all/toentrance,sink,all/microwave,coffee,coffee/coffee,sink,sink/sink,microwave,microwave";
paths_kitchen_pee = "todining,stove,all/coffee,stove,all/sink,fridge,all/toaster,microwave,all/toentrance,fridge,all/microwave,stove,stove/stove,fridge,fridge/fridge,microwave,microwave";
quickmap_entrance = {tohide:"31,56"};
world_interactA[32][51] = {name:"tokitchen", tx:22, ty:51};
world_interactA[34][47] = {name:"toliving", tx:22, ty:25};
world_interactA[35][47] = {name:"tolaundry", tx:47, ty:53};
world_interactA[33][55] = {name:"tohall", tx:31, ty:15};
world_interactA[31][56] = {name:"tohide", touch:120};
world_text[120] = [0, "pc::d::As much as I enjoy frolicking through nature...", "pc::d::I think I'll stay inside until I've achieved my task."];
paths_entrance = "toliving,tolaundry,tolaundry/tolaundry,tokitchen,tohide/tokitchen,tohall,toliving/tohall,tohide,tokitchen/tohide,toliving,tohall";
quickmap_laundry = {waterheater:"48,48", washer:"49,49"};
world_interactA[47][53] = {name:"toentrance", tx:35, ty:47};
world_interactA[48][48] = {name:"heater", touch:121};
world_text[121] = [0, "pc::d::Nothing really special about the heated water barrel."];
world_interactA[49][49] = {name:"washer", touch:122};
world_text[122] = [0, "pc::concern::A washer but no dryer...", "pc::curious::Maybe they rely on air drying of their garments like pathetic ancient people."];
paths_laundry_bare = "toentrance,toentrance,all";
paths_laundry = "heater,washer,washer/washer,toentrance,toentrance/toentrance,heater,heater";
quickmap_david = {bed:"64,50", dresser:"62,44", tv:"62,47", games:"64,46"};
world_interactA[59][53] = {name:"tohall", tx:35, ty:17};
world_interactA[64][50] = {name:"bed", touch:123};
world_text[123] = [0, "pc::disdain::Dreadful, the linens are filthy and the springs pierce the cushioning."];
world_text[136] = [0, "pc::disdain::I can't believe I injected lust on such a filthy thing.", "pc::contemplation::I should inspect myself for Lice."];
world_interactA[62][44] = {name:"dresser", touch:124};
world_text[124] = [0, "pc::d::David's fashion sense is terrible."];
world_interactA[62][47] = {name:"tv", touch:125};
world_text[125] = [0, "pc::d::A gaming entertainment mechanism. Like cards or ball-cup."];
world_text[137] = [0, "pc::bask::Injecting lust into a game felt much better than I expected it would."];
world_interactA[64][46] = {name:"games", touch:126};
world_text[126] = [0, "pc::d::David's collection of games and sequential art.", "pc::blush::I can also sense areas of lustful aura hiding within."];
world_text[138] = [0, "pc::blush::I didn't need to inject much lust to attract David to his secret collection."];
paths_david = "dresser,games,tv/games,tv,bed/tv,bed,games/bed,tohall,tohall/tohall,dresser,dresser";
paths_david_sleep = "dresser,games,all/tohall,tv,all/games,tv,bed/tv,bed,games/bed,games,tv";
world_interactB[18][18] = {name:"todining", tx:8, ty:42, l:1};
world_interactB[22][23] = {name:"toentrance", tx:34, ty:44, l:1};
world_interactB[31][12] = {name:"toentrance", tx:33, ty:53, l:1};
world_interactB[32][20] = {name:"tobath", tx:50, ty:18, l:1};
world_interactB[37][24] = {name:"tohide", tx:77, ty:47, l:1};
world_interactB[35][12] = {name:"tomelissa", tx:61, ty:24, l:1};
world_interactB[36][14] = {name:"todavid", tx:59, ty:51, l:1};
world_interactB[50][18] = {name:"tohall", tx:32, ty:20, l:1};
world_interactB[61][24] = {name:"tohall", tx:35, ty:12, l:1};
world_interactB[8][42] = {name:"toliving", tx:18, ty:18, l:1};
world_interactB[8][47] = {name:"tokitchen", tx:19, ty:39, l:1};
world_interactB[19][39] = {name:"todining", tx:8, ty:47, l:1};
world_interactB[22][49] = {name:"toentrance", tx:32, ty:48, l:1};
world_interactB[32][48] = {name:"tokitchen", tx:22, ty:49, l:1};
world_interactB[34][44] = {name:"toliving", tx:22, ty:23, l:1};
world_interactB[36][44] = {name:"tolaundry", tx:47, ty:51, l:1};
world_interactB[31][54] = {name:"tohide", tx:75, ty:43, l:1};
world_interactB[33][53] = {name:"tohall", tx:31, ty:12, l:1};
world_interactB[47][51] = {name:"toentrance", tx:36, ty:44, l:1};
world_interactB[59][51] = {name:"tohall", tx:36, ty:14, l:1};
world_interactB[75][43] = {name:"toentrance", tx:31, ty:54, l:1};
world_interactB[77][47] = {name:"tohall", tx:37, ty:24, l:1};
world_sprites = new Array();
sub_david = (world_sprites[0] = new Array());
sub_melissa = (world_sprites[1] = new Array());
sub_mom = (world_sprites[2] = new Array());
sub_dad = (world_sprites[3] = new Array());
sub_girl = (world_sprites[4] = new Array());
sub_numbers = {david:0, melissa:1, mom:2, dad:3, girl:4, pc:5, none:6};
sub_girl.push({tx:70, ty:40, state:1, l:1, gchar:"girl", gstate:"stand", gdir:"ne", spd:0, forceinclude:1});
sub_dad.push({tx:21, ty:44, state:1, l:1, gchar:"father_work", gstate:"stand", gdir:"ne", spd:0, forceinclude:1});
sub_melissa.push({tx:62, ty:21, state:1, l:1, gchar:"melissa_summer", gstate:"stand", gdir:"sw", spd:0, forceinclude:1});
sub_mom.push({tx:78, ty:48, state:1, l:1, gchar:"mother_work", gstate:"stand", gdir:"ne", spd:0, forceinclude:1});
sub_david.push({tx:64, ty:50, state:1, l:1, gchar:"david_summer", gstate:"bed", gdir:"ne", spd:0, forceinclude:1});
sub_mom.push({});
sub_david.push({});
sub_girl.push({});
world_text[1] = [{precut:"previously"}, "pc::d::Ok, did you get all that?", "pc::curious::No? Alright...", "pc::d::The boy is David and the girl is Melissa.", "pc::d::They met and fell in love over summer break. (*game_01)", "pc::d::At around the same time their parents started also dating.", "pc::d::Then when they were going to school again Melissa somewhat cheated on David with another boy. (*game_03)", "pc::d::David broke up the relationship immediately but their parents were engaged soon after and they married and bought this house.", "pc::d::And now it is winter holidays and David will not be able to ignore Melissa for much longer so-", "pc::shock::What's that?", "pc::laugh::Aha you're right, I need to introduce myself.", "pc::devious::I am...", "pc::lust::~PANEROS~\n-Reuniter of lovers. Mender of shattered bonds.-", "pc::determined::And I won't be leaving until our task of reuniting these two is accomplished.", "pc::d::Let's begin!"];
sub_melissa.push({mov:"sw.t.34.14.se.3.sw.1.se.3.gdir.ne.gstate.touch.w.2.nw.3.sw.1.nw.t.32.51.as.dad.ne.t.35.46.sw.0"});
sub_melissa.push({});
sub_dad.push({mov:"gstate.touch.w.2.cs.w.3.cs.ne.0"});
sub_dad.push({});
sub_dad.push({mov:"se.3.sw.1.se.t.32.49.ne.0.wt.0.10"});
world_text[0] = [0, "melissa::tired::Bye Dad, have a good day at work.", "dad::smile::Thanks sleepyhead.", "dad::smile::I know it's your first real day of vacation but don't spend the whole time lazing about.", "melissa::tired::No promises.", "dad::laugh::Okay okay, bye."];
sub_melissa.push({mov:"ne.t.35.46.nw.t.21.20.ne.3.nw.1.j.22.15.gstate.couch.w.2.bgsnd.tv_soap"});
sub_melissa.push({});
sub_dad.push({mov:"se.1.as.melissa,mom.sw.4"});
sub_dad.push({});
sub_mom.push({mov:"nw.t.34.18.ne.3.w.2.sw.3.nw.t.32.51.ne.5.nw.3.wt.2.4.se.3.sw.4.as.melissa,david.sw.4"});
sub_mom.push({});
world_text[2] = [0, "mom::d::Goodbye Melissa, I'm off to work.", "melissa::tired::Bye."];
sub_melissa.push({mov:"w.6.j.22.16.nw.2.sw.2.nw.1.sw.t.7.43.se.1.sw.1.se.t.20.40.sw.1.se.6.ne.0.gstate.touch.cw.fridge,4.w.2.cw.fridge,2.nw.1.sw.2.nw.0.gstate.touch.cw.coke,1"});
sub_melissa.push({});
sub_david.push({mov:"cw.davidbed,1.nw.0.j.63.49.nw.1.sw.3.nw.2.sw.t.32.21.nw.t.48.14.ne.0.cw.toilet,2.snd.pee.w.5.cw.toilet,3.snd.flush.se.3.ne.0.snd.sink.w.2.se.2.ne.2.nw.2.ne.1.nw.t.32.51.ne.1.nw.t.22.48.wt.3.c"});
sub_david.push({});
world_text[3] = [{func:"paths_state", funcpass:"coke"}, "pc::d::I have the distinct feeling I've happened upon my first opportunity to bring these two closer."];
world_text[4] = [{cut:"kitchen", func3:"saveprogress", func3pass:"1,1", func:"paths_state", funcpass:"bare", as:"melissa"}, "pc::d::Yes, this is it. I can use this.", "pc::devious::I will tickle the bubbles within this bottle so that when it's opened..."];
sub_melissa.push({mov:"j.21.47.sw.1.nw.0.as.david.w.2.cw.coke,2.ne.1.se.1.ne.1.gstate.touch.cw.fridge,4.w.1.cw.fridge,2.sw.1.se.2.ne.4.nw.3.ne.2.nw.1.ne.1.nw.1.j.22.15.gstate.couch.w.1.wt.5.c"});
sub_melissa.push({});
world_text[5] = [{as:"girl"}, "pc::concern::I thought for sure that would work.", "pc::contemplation::A peek is certainly all I need to renew my romantic spirits.", "pc::concern::These two didn't even aknowledge each others existence.", "pc::concern::Humans are difficult as normal."];
sub_david.push({mov:"nw.1.ne.1.nw.4.sw.1.nw.0.gstate.touch.cs.w.1.sw.1.nw.0.w.1.gstate.touch.cw.microwave,2.bgsnd.microwave.sw.1.nw.0.w.1.gstate.touch.cs.w.1.ne.1.nw.0.gstate.touch.w.1.cw.microwave,1.bgsnd.kitchen.w.1.ne.2.se.4.sw.1.se.4.sw.1.se.t.34.18.ne.t.61.48.se.2.ne.2.nw.0.gstate.sit.w.2.cw.nintendo,2.bgsnd.vidya.w.2.wt.6.c"});
sub_david.push({});
world_text[6] = [{as:"girl"}, "david::focus::...", "pc::shock::He's not even masturbating in secret after such a stimulus!", "pc::contemplation::What a stubborn boy."];
sub_girl.push({});
sub_girl.push({mov:"wt.7.0"});
world_text[7] = {cut:"transition", nextws:defaultstate + "state,1,mvar,0,dvar,0,checkpoint,7,stereo,2,dishes,1,toilet,3", func:"paths_state", funcpass:"full", func2:"init_bgsnds", func2pass:"0,living,tv_game,melissa,song1"};
sub_girl.push({tx:70, ty:40, l:1, ws:1, gstate:"stand", gdir:"ne"});
sub_girl.push({});
sub_dad.push({tx:75, ty:44, l:1, ws:1, gchar:"father_work", gstate:"stand", gdir:"ne"});
sub_dad.push({});
sub_melissa.push({tx:60, ty:21, l:1, ws:1, gchar:"melissa_summer", gstate:"music", gdir:"nw"});
sub_melissa.push({});
sub_david.push({tx:22, ty:14, l:1, ws:1, gchar:"david_summer", gstate:"couch", gdir:"nw"});
sub_david.push({});
sub_mom.push({tx:75, ty:44, l:1, ws:1, gchar:"mother_work", gstate:"stand", gdir:"ne"});
sub_mom.push({mov:"w.1.ne.2.wt.8.0.sw.0.w.1.wt.9.4.ne.2.se.t.78.48.gchar.mother.as.melissa"});
sub_mom.push({});
sub_mom.push({mov:"nw.t.32.51.ne.t.35.46.nw.3.wt.10.4.se.2.sw.4.nw.2.ne.1.cw.fridge,4.w.3.cw.fridge,2.nw.t.20.42.ne.1.nw.4.ne.1.nw.2.sw.2.se.0.w.1.wt.11.6.w.2.gstate.art"});
sub_mom.push({});
world_text[8] = [0, "mom::yell::David! Melissa! I'm home!"];
world_text[9] = [0, "mom::tired::Welcome home, Mom.", "mom::tired::How was work?", "mom::tired::Tiring.", "mom::tired::Go take a bath while we make dinner for you.", "mom::tired::Thanks guys, you're such wonderful children.", "pc::concern::I think she's lost the plot."];
world_text[10] = [0, "mom::d::Hi David.", "david::d::Hey.", "mom::d::What have you been up to today?", "david::d::Nothing.", "mom::smile::Sounds good, what are you watching?", "david::d::Endless commercials.", "mom::smile::Well, I'm gonna try and get some work done on my painting.", "david::d::Kay."];
world_text[11] = [0, "mom::focus::...", "mom::focus::These greens are so ugly..."];
sub_melissa.push({mov:"j.60.17.nw.0.cw.stereo,1.bgsnd.room.gstate.touch.w.1.ne.3.nw.0.gstate.crouch.w.2.as.mom.se.2.sw.2.se.2.sw.t.33.15.se.1.sw.2.se.1.sw.2.nw.5.ne.0.gstate.toilet.snd.pee.w.5.snd.flush.cw.toilet,1.se.3.ne.0.gstate.touch.snd.sink.w.2.se.2.ne.3.nw.t.32.51.ne.1.nw.t.21.47.wt.15.c"});
sub_melissa.push({});
tempstate1 = sub_melissa.push({mov:"cw.mvar,--.sw.2.nw.4.gstate.touch.cs.w.2.ne.2.nw.0.gstate.touch.cs.w.2.sw.1.nw.0.gstate.touch.w.1.cw.microwave,2.bgsnd.microwave.w.3.cw.microwave,1.bgsnd.kitchen.w.1.wt.12.5.ne.3.as.girl"}) - 1;
sub_melissa.push({});
world_text[12] = [{nextext:51}, "melissa::food::Mmmm...", "none::d::[Sleepiness Decreased.]"];
tempstate2 = sub_melissa.push({mov:"cw.mvar,++.ne.1.nw.2.ne.0.gstate.touch.w.1.cs.w.4.wt.13.5.cs.w.2.nw.2.ne.1.as.girl"}) - 1;
sub_melissa.push({});
world_text[13] = [{nextext:49}, "melissa::bask::Ahhh, Dad's coffee is the best.", "pc::d::This will likely keep her up all night.", "melissa::smile::And it's the perfect time, I'll caffeine crash right at bedtime.", "pc::concern::Or not.", "none::d::[Sleepiness Increased.]"];
tempstate3 = sub_melissa.push({mov:"cw.mvar,++.sw.2.w.1.wt.14.5.cw.dishes,2.w.2.nw.4.ne.4.as.girl"}) - 1;
sub_melissa.push({});
world_text[14] = [{nextext:49}, "melissa::mad::They're all so lazy, I'm the only one who does the dishes.", "melissa::mad::Dad was promising me the whole time things would be better when he remarries.", "melissa::mad::But all it got me was two more people to clean up after.", "melissa::tired::...", "none::d::[Sleepiness Increased.]"];
temp_m = "kitchen,microwave,";
temp_c = ",kitchen,coffee,";
temp_s = ",kitchen,sink,";
world_text[15] = [{func:"paths_state", funcpass:"sleep_kitchen", locks:((((temp_m + "16") + temp_c) + "18") + temp_s) + "20"}, "pc::contemplation::Once again I sense an opportunity arising in this cluttered room.", "pc::d::I shall inject my potent lust into one of the objects in this room to attract Melissa to it."];
world_text[16] = [{choice:"100,17,100"}, "pc::d::I believe if I inject my lust into this microwave it will cause Melissa to chow down on a plump sausage.", "none::d::[Inject Microwave with Lust]", "none::d::[Cancel]"];
world_text[17] = [{as:"melissa+" + tempstate1, nextext:22, locks:((((temp_m + "127") + temp_c) + "117") + temp_s) + "115"}, "pc::lust::~THE LUST SONG~"];
world_text[18] = [{choice:"100,19,100"}, "pc::d::If I were to inject my lust into this coffee Melissa would surely swallow.", "none::d::[Inject Coffee Pot with Lust]", "none::d::[Cancel]"];
world_text[19] = [{as:"melissa+" + tempstate2, nextext:22, locks:((((temp_m + "114") + temp_c) + "129") + temp_s) + "115"}, "pc::lust::~THE LUST SONG~"];
world_text[20] = [{choice:"100,21,100"}, "pc::d::To inject this sink with lust would cause Melissa to rub these dishes all over.", "none::d::[Inject Sink with Lust]", "none::d::[Cancel]"];
world_text[21] = [{as:"melissa+" + tempstate3, nextext:22, locks:((((temp_m + "114") + temp_c) + "117") + temp_s) + "128"}, "pc::lust::~THE LUST SONG~"];
world_text[22] = {func:"paths_state", funcpass:"full"};
world_text[100] = {};
tempstate1 = sub_melissa.push({mov:"as.dad.nw.3.gstate.touch.w.2.nw.1.ne.1.nw.3.sw.2.se.0.w.1.wt.23.5.w.2.ne.2.se.2.ne.3.se.t.35.46.ne.t.49.48.se.1.cs.w.4.as.melissa,melissa"}) - 1;
sub_melissa.push({});
sub_girl.push({mov:"as.melissa+" + tempstate1});
sub_girl.push({});
world_text[23] = [0, "mom::d::So what do you think?", "melissa::d::It's pretty.", "mom::focus::...", "melissa::d::It doesn't look the same though.", "mom::focus::I know.", "melissa::d::Why is it different?", "mom::focus::I'm trying to recapture my youth.", "mom::d::All of us oldies try to do that."];
sub_dad.push({mov:"ne.2.sw.0.wt.24.3.ne.2.se.t.36.22.ne.1.w.1.sw.1.se.3.gchar.father.w.2.nw.t.32.51.ne.1.nw.3.ne.1.gstate.touch.cw.fridge,4.w.2.cw.fridge,2.nw.6.ne.1.nw.3.ne.1.nw.2.sw.0.wt.25.4.se.1.ne.2.wt.26.5.ne.2.se.5.ne.1.se.1.ne.0.w.1.gstate.touch.as.david"});
sub_dad.push({});
world_text[24] = [0, "dad::shock::Christ, it's hot in here.", "dad::mad::You wouldn't think it's winter at all."];
world_text[25] = [0, "mom::focus::How was work?", "dad::d::Jay got me to go on-site again.", "mom::focus::Tell Jay to get a new guy already, you're a supervisor now.", "dad::tired::I do but he keeps saying we can't afford it.", "dad::tired::How was your day?", "mom::focus::Absolutely mind-numbing, endless mountains of forms.", "mom::d::The brats get pizza and music on their last day before holidays...", "dad::smile::You want to order a pizza? If we're lucky, one of those brats will be delivering it.", "mom::smile::I'd rather keep them as far away as possible."];
world_text[26] = [0, "dad::d::Hi David.", "david::d::...", "dad::d::What are you watching?", "david::d::Re-runs.", "dad::smile::I'm gonna work on the Tree. You could help if you want.", "david::d::..."];
sub_melissa.push({mov:"nw.1.sw.t.32.51.se.t.33.16.ne.t.64.18.nw.1.ne.0.cw.dresser,3.w.2.cw.dresser,1.nw.1.ne.0.cw.dresser,2.w.2.cw.dresser,7.w.1.cw.dresser,6.w.1.cw.dresser,1.w.1.sw.1.nw.2.gstate.crouch.w.3.sw.2.nw.0.w.2.j.60.21.gstate.music.bgsnd.song3.cw.stereo,2"});
sub_melissa.push({});
sub_david.push({mov:"w.2.wt.27.c"});
sub_david.push({});
tempstate1 = sub_david.push({mov:"cw.dvar,++.w.2.wt.34.5.w.2.wt.37.0"}) - 1;
sub_david.push({});
world_text[34] = [{nextext:51}, "david::d::...", "pc::concern::...", "david::d::...", "pc::contemplation::Well... that was effective.", "none::d::[Sleepiness Increased.]"];
tempstate2 = sub_david.push({mov:"cw.dvar,--.gstate.tvsurf.bgsnd.tvsurf.w.2.wt.35.5.w.2.wt.37.0"}) - 1;
sub_david.push({});
world_text[35] = [{nextext:53}, "david::d::Commercial, rerun, local news, commercial, commercial...", "david::mad::No, no, nope, hell no...", "none::d::[Sleepiness Decreased.]"];
tempstate3 = sub_david.push({mov:"cw.dvar,++.j.21.15.se.3.w.1.wt.36.5.w.2.wt.37.0"}) - 1;
sub_david.push({});
world_text[36] = [{nextext:51}, "dad::smile::Glad you decided to join me.", "david::d::Sure.", "dad::d::...", "david::d::...", "dad::d::So anything in particular you wanting from Santa?", "david::think::Hmmm...", "david::think::If you intend to buy my love I can think of a few games and manga I'd like.", "pc::shock::How cruel!", "dad::mad::How about I get you Superman64 and a pack of Archie comics?", "david::shock::Don't even joke about that.", "dad::devious::Casper meets Richie Rich.", "david::shock::...", "pc::laugh::I don't completely get the threat but David has the painful expression of a fish.", "none::d::[Sleepiness Increased.]"];
temp_tv = "living,tv,";
temp_ta = ",living,table,";
temp_tr = ",living,tree,";
world_text[27] = [{func:"paths_state", funcpass:"sleep_living", locks:((((temp_tv + "28") + temp_ta) + "30") + temp_tr) + "32"}, "pc::d::Another lust injecting opportunity.", "pc::curious::What shall I attract David to?"];
world_text[28] = [{choice:"29,100"}, "none::d::[Inject TV with Lust]", "none::d::[Cancel]"];
world_text[29] = [{as:"david+" + tempstate1, nextext:22, locks:((((temp_tv + "130") + temp_ta) + "103") + temp_tr) + "102"}, "pc::lust::~THE LUST SONG~"];
world_text[30] = [{choice:"31,100"}, "none::d::[Inject Remote with Lust]", "none::d::[Cancel]"];
world_text[31] = [{as:"david+" + tempstate2, nextext:22, locks:((((temp_tv + "101") + temp_ta) + "132") + temp_tr) + "102"}, "pc::lust::~THE LUST SONG~"];
world_text[32] = [{choice:"33,100"}, "none::d::[Inject Tree with Lust]", "none::d::[Cancel]"];
world_text[33] = [{as:"david+" + tempstate3, nextext:22, locks:((((temp_tv + "101") + temp_ta) + "103") + temp_tr) + "131"}, "pc::lust::~THE LUST SONG~"];
world_text[37] = {cut:"night", changeworld:"state,2,stereo,1,tree,2,davidbed,1,melissabed,1", func:"paths_state", funcpass:"full", func2:"init_bgsnds", func2pass:"dark,melissa,0,dining,0,kitchen,0,david,0"};
world_text[49] = [0, "none::d::[Bedtime ETA 10:30pm]"];
world_text[51] = [0, "none::d::[Bedtime ETA 11:30pm]"];
world_text[53] = [0, "none::d::[Bedtime ETA 12:30am]"];
sub_girl.push({tx:70, ty:40, l:1, ws:2, gstate:"stand", gdir:"ne"});
sub_girl.push({});
sub_dad.push({tx:70, ty:40, l:1, ws:2, gstate:"stand", gdir:"ne"});
sub_dad.push({});
sub_melissa.push({tx:63, ty:21, l:1, ws:2, gstate:"stand", gchar:"melissa_pj", gdir:"nw"});
sub_david.push({tx:61, ty:46, l:1, ws:2, gstate:"stand", gdir:"se"});
sub_mom.push({tx:6, ty:44, l:1, ws:2, gstate:"art", gchar:"mother", gdir:"se"});
sub_david.push({mov:"wt.38.c"});
sub_david.push({});
temp_nextext = "dvar.-2,54,0,52,2,50";
tempstate1 = sub_david.push({mov:"cw.dvar,--.se.2.sw.3.w.1.dark.1.ne.3.w.1.se.1.ne.1.se.1.j.64.50.gstate.bed.cw.davidbed,2.w.3.wt.45.3.as.girl"}) - 1;
sub_david.push({});
world_text[45] = [{nextext:temp_nextext}, "david::sleep::...", "david::sleep::Why can't I fall asleep?", "david::sleep::I want to fall asleep so much that I can't sleep.", "none::d::[Sleepiness Decreased.]"];
tempstate2 = sub_david.push({mov:"cw.dvar,--.se.3.ne.1.nw.0.gstate.sit.cw.nintendo,2.bgsnd.vidya.w.1.wt.46.3.as.girl"}) - 1;
sub_david.push({});
world_text[46] = [{nextext:temp_nextext}, "david::focus::...", "david::pissed::Ugh, I keep dying before I can reach the last red coin.", "david::focus::I'm getting this star no matter what!", "none::d::[Sleepiness Decreased.]"];
tempstate3 = sub_david.push({mov:"cw.dvar,++.se.1.ne.2.se.2.ne.1.gstate.sit.w.3.wt.47.3.as.girl"}) - 1;
sub_david.push({});
world_text[47] = [{nextext:temp_nextext}, "pc::d::He's pulled out a hidden Japanese book from the back.", "pc::blush::He's pulled out something else as well.", "pc::shock::What an amazing single-handed book-holding/page-flipping technique!", "none::d::[Sleepiness Increased.]"];
temp_b = "david,bed,";
temp_t = ",david,tv,";
temp_g = ",david,games,";
world_text[38] = [{func:"paths_state", funcpass:"sleep_david", locks:((((temp_b + "39") + temp_t) + "41") + temp_g) + "43"}, "pc::d::Ok, what shall I make David do now?"];
world_text[39] = [{choice:"40,100"}, "none::d::[Inject Bed with Lust]", "none::d::[Cancel]"];
world_text[40] = [{as:"david+" + tempstate1, func:"paths_state", funcpass:"unsleep_david", locks:((((temp_b + "136") + temp_t) + "125") + temp_g) + "126"}, "pc::lust::~THE LUST SONG~"];
world_text[41] = [{choice:"42,100"}, "none::d::[Inject Videogame Console with Lust]", "none::d::[Cancel]"];
world_text[42] = [{as:"david+" + tempstate2, func:"paths_state", funcpass:"unsleep_david", locks:((((temp_b + "123") + temp_t) + "137") + temp_g) + "126"}, "pc::lust::~THE LUST SONG~"];
world_text[43] = [{choice:"44,100"}, "none::d::[Inject Collection with Lust]", "none::d::[Cancel]"];
world_text[44] = [{as:"david+" + tempstate3, func:"paths_state", funcpass:"unsleep_david", locks:((((temp_b + "123") + temp_t) + "125") + temp_g) + "138"}, "pc::lust::~THE LUST SONG~"];
sub_melissa.push({mov:"wt.58.c"});
sub_melissa.push({});
temp_nextext = "mvar.-2,52,0,50,2,48";
tempstate1 = sub_melissa.push({mov:"cw.mvar,++.nw.2.sw.3.w.1.dark.1.ne.2.nw.3.gstate.touch.w.1.j.60.21.gstate.music.bgsnd.song3.cw.stereo,2.w.1.wt.55.3.as.girl"}) - 1;
sub_melissa.push({});
world_text[55] = [{nextext:temp_nextext}, "melissa::musicmouth::Oh oh-oh ooohhh", "melissa::music::Mmmm~~", "melissa::musicmouth::pachu wari wari, pachu wa-ri wa-", "melissa::music::...", "pc::curious::I think she fell asleep.", "none::d::[Sleepiness Increased.]"];
tempstate2 = sub_melissa.push({mov:"cw.mvar,--.nw.2.ne.1.nw.3.gstate.crouch.w.1.wt.56.3.as.girl"}) - 1;
sub_melissa.push({});
world_text[56] = [{nextext:temp_nextext}, "melissa::focus::Where is Schizophonia?!", "melissa::focus::...", "melissa::d::There it is... this ordering is terrible.", "melissa::focus::I should reorder... maybe by genre.", "melissa::focus::Hip-Hop, Orchestral Rock, Baroque Pop, Rockabilly, J-Rock, Kraut-rock...", "melissa::focus::No wait those last two aren't really genres, they're geography. And I have stuff that fits into multiple genres.", "melissa::focus::...", "pc::d::She's going to be at this all night from the looks of it.", "none::d::[Sleepiness Decreased.]"];
tempstate3 = sub_melissa.push({mov:"cw.mvar,++.nw.2.w.1.ne.2.w.2.cw.dresser,4.w.1.wt.57.4.as.girl"}) - 1;
sub_melissa.push({});
world_text[57] = [{nextext:temp_nextext}, "melissa::d::...", "melissa::focus::...", "melissa::tired::What did I come over here for? I've forgotten completely.", "pc::d::I can't say I'm sure why I decided to send you over there either.", "melissa::tired::...", "none::d::[Sleepiness Increased.]"];
temp_s = "melissa,stereo,";
temp_m = ",melissa,music,";
temp_d = ",melissa,dresser,";
world_text[58] = [{func:"paths_state", funcpass:"sleep_melissa", locks:((((temp_s + "59") + temp_m) + "61") + temp_d) + "63"}, "pc::d::Melissa once again looks susceptible to my influence..."];
world_text[59] = [{choice:"60,100"}, "none::d::[Inject Stereo with Lust]", "none::d::[Cancel]"];
world_text[60] = [{as:"melissa+" + tempstate1, func:"paths_state", funcpass:"unsleep_melissa", locks:((((temp_s + "133") + temp_m) + "111") + temp_d) + "112"}, "pc::lust::~THE LUST SONG~"];
world_text[61] = [{choice:"62,100"}, "none::d::[Inject Music Collection with Lust]", "none::d::[Cancel]"];
world_text[62] = [{as:"melissa+" + tempstate2, func:"paths_state", funcpass:"unsleep_melissa", locks:((((temp_s + "110") + temp_m) + "134") + temp_d) + "112"}, "pc::lust::~THE LUST SONG~"];
world_text[63] = [{choice:"64,100"}, "none::d::[Inject Dresser with Lust]", "none::d::[Cancel]"];
world_text[64] = [{as:"melissa+" + tempstate3, func:"paths_state", funcpass:"unsleep_melissa", locks:((((temp_s + "110") + temp_m) + "111") + temp_d) + "135"}, "pc::lust::~THE LUST SONG~"];
world_text[48] = [0, "none::d::[Bedtime ETA 10:00pm]"];
world_text[50] = [0, "none::d::[Bedtime ETA 11:00pm]"];
world_text[52] = [0, "none::d::[Bedtime ETA 12:00am]"];
world_text[54] = [0, "none::d::[Bedtime ETA 1:00am]"];
sub_girl.push({mov:"as.mom"});
sub_girl.push({});
tempstate1 = sub_mom.push({}) - 1;
sub_mom.push({mov:(("w.3.ne.2.se.2.sw.1.se.1.sw.1.se.0.w.1.dark.1.ne.1.se.3.sw.1.se.4.sw.2.as.mom+is,dishes,1+" + (tempstate1 + 3)) + "+") + (tempstate1 + 5)});
sub_mom.push({});
sub_mom.push({mov:"sw.1.w.5.cw.dishes,2.ne.1.as.mom+" + (tempstate1 + 5)});
sub_mom.push({});
sub_mom.push({mov:"se.1.dark.1.ne.1.se.4.sw.1.se.t.32.15.sw.1.se.t.36.24.ne.1.se.2"});
sub_mom.push({});
sub_girl.push({mov:"w.2.wt.65.0"});
sub_girl.push({});
sub_girl.push({tx:70, ty:40, l:1, ws:3, gstate:"stand", gdir:"ne"});
sub_girl.push({});
sub_melissa.push({tx:60, ty:21, l:1, ws:3, gchar:"melissa_pj", gstate:"bed", gdir:"ne"});
sub_melissa.push({});
sub_david.push({tx:64, ty:50, l:1, ws:3, gchar:"david_summer", gstate:"bed", gdir:"nw"});
sub_david.push({});
sub_dad.push({tx:78, ty:48, l:1, ws:3, gchar:"father_work", gstate:"stand", gdir:"ne"});
tempstate1 = sub_dad.push({mov:"nw.t.32.51.ne.1.nw.4.ne.1.cs.w.1.nw.1.ne.0.gstate.touch.w.2.se.1.sw.1.se.3.ne.4.nw.4.ne.1.nw.2.ne.0.w.1.sw.0.bgsnd.tv_news.wt.70.c"}) - 1;
sub_dad.push({});
world_text[70] = [0, "none::d::The housing market shows no sign of slowing, this is the best time to sell. Everyone in America wants a house of their own right now.", "dad::d::...", "none::d::To the big headline this morning, footage of the continued nighttime bombings of Iraq.", "none::d::These airstrikes are taking place on a facility that we're told is suspected of the manufacture of chemical weapons.", "none::d::This is the result of the Iraqi government breaking an agreement to allow United Nations weapons inspectors..."];
tempstate2 = sub_dad.push({mov:"j.20.17.sw.0.bgsnd.tv_news.wt.70.2.nw.2.sw.4.se.2.sw.1.se.3.sw.1.se.2.as.girl"}) - 1;
sub_dad.push({});
sub_girl.push({});
sub_dad.push({mov:"ne.0.gstate.touch.w.1.cs.w.2.cs.w.2.se.2.sw.1.se.4.sw.3.w.1.sw.2.j.70.40"});
sub_dad.push({});
tempstate3 = sub_dad.push({mov:"j.20.17.bgsnd.tv_news.j.70.40"}) - 1;
sub_dad.push({});
sub_mom.push({tx:78, ty:48, l:1, ws:3, gchar:"mother_work", gstate:"stand", gdir:"ne"});
tempstate4 = sub_mom.push({}) - 1;
tempstate5 = sub_mom.push({mov:"nw.t.32.51.ne.1.nw.4.ne.1.nw.1.as.girl"}) - 1;
sub_mom.push({});
tempstate6 = sub_mom.push({mov:"wt.66.8.as.dad.sw.1.nw.3.w.1.cs.w.1.ne.2.nw.4.ne.1.nw.2.sw.2.se.0"}) - 1;
sub_mom.push({});
sub_girl.push({mov:"as.mom+" + tempstate6});
sub_girl.push({});
world_text[66] = [0, "mom::tired::You have a good day, hubs.", "dad::smile::You too. There's still some coffee if you want some.", "mom::tired::Thanks.", "dad::smile::Ok, I'm off."];
tempstate6 = sub_mom.push({mov:"j.6.44.se.0.w.3.ne.2.se.2.sw.1.se.3.sw.1.se.t.22.46.sw.1.se.4.sw.3.w.1.sw.2"}) - 1;
sub_mom.push({});
temp_x = (((((((((("dad,mom+is,worldtime,8+" + tempstate3) + ",") + tempstate6) + "+++dad,mom+is,worldtime,7+") + tempstate2) + ",") + tempstate5) + "+++dad,mom+is,worldtime,6+") + tempstate1) + ",") + tempstate4;
tempstate1 = sub_melissa.push({mov:"w.3.j.61.18.ne.0.cw.melissabed,2.se.2.w.1.se.1.sw.t.34.14.se.1.sw.1.se.1.sw.4.nw.3.wt.68.0.ne.0.gstate.touch.w.3.nw.0.gchar.melissa_nude.w.1.sw.1.cw.curtain,2.se.1.sw.0.bgsnd.shower.cw.shower,2.w.1.wt.69.3.nw.1.sw.0.j.47.19.w.1.ne.0.cw.curtain,4.se.0.w.4.nw.0.w.4.se.1.w.4.ne.0.w.2.nw.0"}) - 1;
sub_melissa.push({});
world_text[69] = [0, "melissa::d::...", "melissa::shock::Too cold!", "melissa::d::...", "melissa::pain::Too hot!", "melissa::d::...", "melissa::grit::Too cold.", "melissa::d::..."];
tempstate2 = sub_melissa.push({mov:"w.13.j.61.18.ne.0.cw.melissabed,2.se.2.w.1.se.1.sw.2.wt.67.c"}) - 1;
sub_melissa.push({});
tempstate3 = sub_david.push({mov:"w.3.j.63.48.nw.0.cw.davidbed,1.w.1.sw.3.nw.2.sw.5.nw.2.sw.1.nw.7.ne.1.wt.68.0.nw.2.ne.1.cw.fridge,4.gstate.touch.w.3.cw.fridge,2.sw.3.nw.t.18.45.ne.1.nw.0.cw.microwave,2.bgsnd.microwave.ne.0.w.1.se.0.w.1.sw.0.w.1.nw.0.cw.microwave,1.bgsnd.kitchen.w.1.ne.2.nw.1.ne.1.nw.3.ne.1.nw.3.ne.0.gstate.touch.w.1.se.2.ne.t.20.13.se.2.sw.0.w.1.j.22.14.gstate.couch.w.4.gstate.tvsurf.bgsnd.tvsurf.w.4.gstate.couch.bgsnd.tv_game"}) - 1;
sub_david.push({});
tempstate4 = sub_david.push({mov:"w.10.j.63.48.nw.0.cw.davidbed,1.w.1.sw.3.nw.2.sw.5.nw.1.gstate.walk.w.1.wt.67.c"}) - 1;
sub_david.push({});
temp_a = (((((("+++melissa+is,mvar,worldtime+" + tempstate1) + "+++david+is,dvar,worldtime+") + tempstate3) + "+++melissa,david+is,mvar,dvar+") + tempstate2) + ",") + tempstate4;
world_text[65] = {cut:"day", as:temp_x + temp_a, func3:"changeworldtime", changeworld:defaultstate + "state,3,melissabed,3,tree,2,davidbed,2,toilet,2", func:"paths_state", funcpass:"full", func2:"init_bgsnds", func2pass:"laundry,laundry_washing"};
world_text[68] = [{locks:"kitchen,toaster,139", nextext:"toasterexplained.0,323"}, "pc::contemplation::I feel like I've missed my chance.", "pc::concern::I'm going to need to go back."];
world_text[323] = [0, "pc::d::Luckily I sensed an item earlier that could return me.", "pc::d::It was in the kitchen..."];
tempstate1 = sub_girl.push({mov:"w.1.wt.327.0"}) - 1;
sub_girl.push({});
world_text[67] = {as:"girl+" + tempstate1};
world_text[327] = [{precut:"morning", func3:"saveprogress", func3pass:"2,1", nextext:71}, "pc::laugh::Now that's how it's done!", "pc::d::I will stoke her lust and broker trust.", "pc::bask::I'll have them reunited in no time at all."];
world_text[71] = {cut:"transition", nextws:defaultstate + "state,4,mvar,0,dvar,0,checkpoint,71,tree,2,curtain,3,towels,4", locks:"kitchen,toaster,139", func:"paths_state", funcpass:"full", func2:"init_bgsnds", func2pass:0};
sub_girl.push({tx:75, ty:44, l:1, ws:4, gstate:"stand", gdir:"ne"});
sub_girl.push({});
sub_dad.push({tx:75, ty:44, l:1, ws:4, gstate:"stand", gdir:"ne"});
sub_dad.push({});
sub_mom.push({tx:75, ty:44, l:1, ws:4, gstate:"stand", gdir:"ne"});
sub_mom.push({});
sub_david.push({tx:22, ty:14, l:1, ws:4, gstate:"couch", gchar:"david_summer", gdir:"ne"});
sub_david.push({mov:"bgsnd.tv_soap.wt.72.c.as.melissa"});
sub_david.push({});
world_text[72] = [{nextext:324}, "pc::disdain::He's been sitting there all day like a toad."];
sub_melissa.push({tx:49, ty:16, l:1, ws:4, gstate:"stand", gchar:"melissa_towel", gdir:"ne"});
sub_melissa.push({mov:"wt.73.c.as.david"});
world_text[73] = [{nextext:324}, "pc::disdain::This stubborn girl just putters around."];
world_text[324] = [0, "pc::disdain::This is pathetic. They're alone together with all the chances in the world...", "pc::disdain::They leave me no choice but to be more proactive in my approach.", "pc::contemplation::I need to force them to engage with one another...", "pc::contemplation::A sexually charged situation.", "pc::disdain::But these damn puritanicals won't even disrobe without complete privacy...", "pc::determined::One way or another, I will force them to bathe together like children!"];
world_text[200] = [{locks:"kitchen,toaster,139", nextext:"toasterexplained.0,323"}, "pc::concern::This is not going as I had planned. I have no choice but to reset the gameboard of life."];
sub_melissa.push({mov:"w.2.sw.1.nw.2.sw.1.nw.0.w.1.cw.towels,3.ne.2.se.t.32.21.ne.4.nw.2.ne.t.63.19.nw.1.ne.1.cw.dresser,3.wt.74.c.w.5.gchar.melissa_nude.w.5.wt.75.0.as.david.gchar.melissa_winter.cw.dresser,1.nw.3.gstate.crouch.w.3.se.1.sw.3.nw.1.gstate.touch.w.2.j.60.21.gstate.music.cw.stereo,2.bgsnd.song1.w.2.wt.200.0"});
sub_melissa.push({});
world_text[74] = [{locks:"hall,thermostat,145,dining,thermostat,145"}, "melissa::grit::So cold...", "pc::concern::This cold is going to drive Melissa to dress in even thicker clothing if I don't quickly remind her of a way to get warm without bundling up."];
world_text[75] = [{locks:"hall,thermostat,144,dining,thermostat,144"}, "melissa::d::I guess I'll put on my sweats.", "pc::disdain::Argh, I might as well give up now."];
world_text[145] = [{locks:"hall,thermostat,144,dining,thermostat,144", as:"melissa,melissa", changeworld:"mvar,1"}, "pc::d::This should work.", "pc::lust::~THE LUST SONG~"];
sub_melissa.push({mov:"as.david.gchar.melissa_summer.cw.dresser,1.se.1.sw.t.34.14.se.4.sw.1.se.2.ne.0.gstate.touch.wt.76.2.w.1.nw.t.32.13.sw.1.nw.4.ne.t.49.48.se.1.w.1.cs.w.1.nw.1.sw.t.32.51.se.t.33.16.ne.t.62.21.nw.4.w.2.j.60.21.gstate.music.cw.stereo,2.bgsnd.song3"});
sub_melissa.push({});
world_text[76] = [0, "melissa::d::Let's burn this motherfucker down."];
tempstate1 = sub_melissa.push({mov:"j.60.21.bgsnd.room.j.32.49.cw.stereo,1.nw.2.ne.1.cw.fridge,4.gstate.touch.w.4.cw.fridge,2.sw.2.nw.1.cw.coke,1.gstate.touch.w.2.cw.coke,2.ne.2.se.1.ne.0.cw.fridge,4.gstate.touch.w.1.cw.fridge,2.sw.1.as.melissa,melissa+is,mvar,1.se.3.sw.1.se.t.33.16.ne.t.62.21.nw.4.j.60.21.gstate.music.cw.stereo,2"}) - 1;
sub_melissa.push({});
sub_david.push({mov:"j.21.15.nw.2.sw.6.se.2.sw.1.se.2.sw.1.se.4.sw.0.wt.77.c"});
sub_david.push({});
world_text[77] = [{locks:"kitchen,microwave,146,kitchen,stove,147,kitchen,fridge,148", func:"paths_state", funcpass:"pee_kitchen"}, "david::tired::What to eat...", "pc::d::A meal decision doesn't seem too important but maybe I can get him into the bath somehow through this."];
temp_a = "kitchen,microwave,114,kitchen,stove,116,kitchen,fridge,119";
world_text[148] = [{locks:temp_a, as:("melissa+" + tempstate1) + "+++david", func:"paths_state", funcpass:"full"}, "pc::d::The icebox it is.", "pc::lust::~THE LUST SONG~"];
sub_david.push({mov:"se.0.w.1.se.1.w.2.wt.78.3.sw.1.se.4.sw.1.se.t.34.18.wt.200.0.ne.t.62.45.se.2.w.1.j.64.50.gstate.bed.cw.davidbed,2"});
sub_david.push({});
world_text[78] = [0, "melissa::d::Sorry, were you going to the fridge?", "pc::shock::Oh! Somehow I got them speaking!", "david::pissed::It's ok, I've lost my appetite.", "pc::concern::That's not good."];
tempstate2 = sub_david.push({mov:"nw.3.sw.1.nw.0.gstate.touch.cs.w.2.sw.2.nw.0.gstate.touch.cs.w.2.ne.1.nw.0.gstate.touch.w.2.cw.microwave,2.bgsnd.microwave.w.2.gstate.stand.w.9.cw.microwave,1.bgsnd.kitchen.gstate.touch.w.4.se.0.w.1.wt.79.c.w.10.wt.80.0.ne.2.se.3.sw.1.nw.1.sw.0.gstate.eat.cw.coke,3.wt.200.0"}) - 1;
sub_david.push({});
world_text[146] = [{locks:temp_a, as:(("melissa+" + tempstate1) + "+++david+") + tempstate2, func:"paths_state", funcpass:"full"}, "pc::d::The microwave will have to do.", "pc::lust::~THE LUST SONG~"];
world_text[79] = [{locks:"david,tv,149"}, "david::pissed::I wanted to eat in the livingroom but it sounds like Melissa has taken that spot.", "david::d::I suppose I could eat in here...", "pc::curious::Maybe I should have him eat somewhere, else?"];
world_text[80] = [{locks:"david,tv,125"}, "david::d::Whatever, I'll just eat in here."];
world_text[149] = [{locks:"david,tv,125", as:"david,david"}, "david::d::Oh right, I need to be the level I started last night. I'll eat while I play.", "pc::devious::Perfect, he'll definitely make a mess and need to bathe."];
sub_david.push({mov:"sw.1.se.4.ne.2.se.5.sw.1.se.t.34.18.ne.t.61.47.se.2.ne.1.nw.0.gstate.sit.w.1.cw.nintendo,2.bgsnd.vidya.w.3.wt.81.4.cw.dvar,1.as.girl"});
sub_david.push({});
world_text[81] = [0, "david::shock::God damnit!", "david::pissed::Food all up in my junk. I'll have to take a shower later.", "pc::d::Called it!"];
sub_david.push({mov:"cw.nintendo,1.bgsnd.room.sw.3.nw.2"});
tempstate3 = sub_david.push({mov:"sw.t.32.21.nw.2.sw.2.cw.shower,2.bgsnd.shower.w.1.nw.1.gchar.david_nude.w.1.sw.0.w.1.j.47.19.ne.0.cw.curtain,4.w.1.se.0.w.1.se.1.w.3.as.melissa,melissa,melissa+is,mvar,2.w.3.cw.shower,1.bgsnd.bath.w.1.ne.0.w.2.cw.curtain,2.as.david+is,mvar,2.w.1.j.48.19.nw.3.sw.0.w.1.cw.towels,1.gchar.david_towel.se.2.ne.2"}) - 1;
sub_david.push({});
sub_david.push({mov:"se.0.cw.shower,1.bgsnd.bath"});
sub_david.push({});
tempstate2 = sub_david.push({mov:"ne.0.cs.w.2.nw.2.ne.0.gstate.touch.w.1.nw.1.sw.3.se.1.sw.0.w.2.nw.1.ne.3.se.1.ne.0.gstate.touch.cw.stove,2.w.3.se.4.ne.0.cw.fridge,4.gstate.touch.w.3.cw.fridge,2.nw.4.ne.0.gstate.touch.cw.stove,3.w.2.ne.0.w.3.gstate.touch.w.1.wt.85.4.w.6.cw.stove,2.se.2.sw.1.nw.1.sw.0.gstate.eat.cw.coke,3.as.david+is,mvar,0.cw.dvar,1.w.3.as.girl"}) - 1;
sub_david.push({});
world_text[147] = [{locks:temp_a, as:(("melissa+" + tempstate1) + "+++david+") + tempstate2, func:"paths_state", funcpass:"full"}, "pc::d::I'll have him cook in front of a hot stove!", "pc::lust::~THE LUST SONG~"];
world_text[85] = [0, "david::smile::...", "pc::d::David's making french toast.", "pc::curious::It seems he puts the cinnamon in the pan with the butter, very interesting.", "pc::d::My personal theory is that there's 3 types of people...", "pc::bask::There's those who put the cinnamon in the coating...", "pc::bask::Those are the optimistic people who think they can lazily just dump all the cinnamon in and maybe it will spread evenly on it's own.", "pc::bask::Second there's the ones who put the cinnamon directly on the bread as it fries...", "pc::bask::These people are eternal pessimists, stingily conserving the cinnamon.", "pc::d::And then there's the people who mix the cinnamon with the frying butter...", "pc::d::The realists who realize it's worth the extra effort and wasted cinnamon to enrapture their breads and dwelling with the delightful scent.", "pc::d::Now knowing that David is a logical boy who can be plied by the rationality of pleasure...", "pc::bask::...well that makes my task easier."];
sub_david.push({mov:"cw.coke,2.se.2.sw.2.cw.dishes,1.w.1.ne.2.se.4.sw.1.se.t.34.18.as.david+" + tempstate3});
sub_david.push({});
sub_melissa.push({mov:"se.2.ne.4.nw.t.19.16.ne.1.nw.1.gstate.crouch.w.2.wt.82.c.w.1.se.3.sw.1.gstate.crouch.w.2.sw.0.w.1.bgsnd.tv_movie.se.1.ne.1.se.1.ne.2.nw.1.j.22.15.gstate.couch.w.1.as.girl"});
sub_melissa.push({});
world_text[82] = [{nextext:83}, "melissa::d::Let's see... Big Daddy... Yellow Submari-", "melissa::smile::Ah, Scream...", "melissa::think::Or maybe Ferris Beuller... hmmm, which should I watch?"];
world_text[83] = [{choice:"325,84"}, "pc::contemplation::If she watches the horror flick maybe she'll be so scared she'll wet herself.\n[Watch Horror]", "pc::laugh::Or maybe she'll pee herself laughing at the comedy film.\n[Watch Comedy]"];
world_text[84] = [{changeworld:"mvar,2"}, "pc::lust::~THE LUST SONG~"];
world_text[325] = [0, "pc::lust::~THE LUST SONG~"];
sub_melissa.push({mov:"wt.326.4.j.22.16.se.1.sw.2.nw.2.sw.1.gstate.crouch.bgsnd.room.w.1.se.7.wt.200.0.sw.5.se.t.34.18.sw.3.nw.5.ne.0.cw.toilet,3.gstate.toilet.snd.pee.w.7.snd.flush.se.3.ne.0.gstate.touch.snd.sink.w.2.se.2.ne.2.as.david.nw.5.ne.1.nw.3.ne.5.nw.t.20.18.sw.0.bgsnd.tv_movie.w.1.se.1.ne.1.se.1.ne.2.nw.1.j.22.15.gstate.couch"});
sub_melissa.push({});
world_text[326] = [0, "melissa::d::Stop running to stupid places you stupid girl.", "melissa::d::...", "melissa::d::Well I gotta pee..."];
sub_melissa.push({mov:"wt.86.5.j.22.16.se.0.gchar.melissa_fast.se.1.sw.3.se.5.sw.5.se.t.34.18.as.david.sw.3.nw.0.wt.87.0"});
sub_melissa.push({mov:"j.48.14.gchar.melissa_summer.gstate.toilet.w.2.snd.flush.se.3.ne.0.snd.sink.w.2.wt.88.0"});
sub_melissa.push({});
world_text[86] = [0, "melissa::laugh::Hahaha, oh man they stole the car they stole the car has been double st-", "melissa::shock::-AH, I'm busting to pee. Gotta go fast!"];
world_text[87] = {cut:"bathroom", func3:"saveprogress", func3pass:"3,1", changeworld:"curtain,1"};
world_text[88] = [{nextext:89}, "pc::blush::I can sense lust rising on every front.", "pc::laugh::The proactive approach is working miracles!", "pc::d::I'll push them even further next round.", "pc::laugh::Paneros will squish you two together until you're in-love once more!"];
sub_girl.push({});
sub_girl.push({mov:"w.3.as.david+is,mvar,2+++melissa+is,mvar,1"});
sub_girl.push({});
world_text[89] = {cut:"night", changeworld:defaultstate + "state,5,mvar,0,dvar,0,checkpoint,89,tree,2,dishes,1,toilet,3,nintendo,2", locks:"kitchen,toaster,139", func:"paths_state", funcpass:"full", func2:"init_bgsnds", func2pass:"0,david,vidya,living,tv_show,laundry,1"};
sub_girl.push({tx:70, ty:40, l:1, ws:5, gstate:"stand", gdir:"ne"});
sub_girl.push({});
sub_dad.push({tx:75, ty:44, l:1, ws:5, gchar:"father_work", gstate:"stand", gdir:"ne"});
sub_dad.push({});
sub_melissa.push({tx:22, ty:15, l:1, ws:5, gchar:"melissa_summer", gstate:"couch", gdir:"nw"});
sub_melissa.push({});
sub_mom.push({tx:21, ty:13, l:1, ws:5, gchar:"mother", gstate:"couch", gdir:"ne"});
sub_david.push({tx:63, ty:48, l:1, ws:5, gchar:"david_summer", gstate:"sit", gdir:"nw"});
sub_david.push({mov:"w.3.wt.92.c"});
tempstate1 = sub_david.push({}) - 1;
world_text[92] = [0, "david::contemplation::*sigh* I can't find the last 5 coins in this level anywhere..."];
sub_mom.push({mov:"w.3.wt.90.c"});
sub_mom.push({});
world_text[90] = [{as:"david+" + (tempstate1 + 1)}, "none::d::~Who will Markob give the final 'rose of romantic consideration' to? Samanthelly or Tanyezebel?~", "none::d::*tension*", "mom::smile::He is an absolute idiot if he doesn't pick Sammy, she's so smart and considerate.", "melissa::dispoint::He'll probably just pick Tanya because she's prettier.", "mom::shock::Sammy is cuter! Guys like cute too.", "none::d::I'm having a, like, really hard decision because I really, really, like, enjoyed the time I spent with both of you...", "none::d::I think that like I want...", "none::d::~Rose of Romantic Consideration will return shortly.~", "melissa::laugh::Not only is Sam not as pretty, she ruined their date.", "mom::d::But she apologized afterwards, you have to be very brave and thoughtful to recognize your faults and apologize for them.", "melissa::think::I suppose...", "pc::contemplation::I can sense Melissa considering apologizing to David.", "none::d::~Rose of Romantic Consideration returns. What will Markob's decision be?~", "melissa::smile::All of that doesn't matter anyways, he'll pick Tanya.", "mom::d::Why do you say that?", "none::d::I have decided that I will give my final rose to...", "none::d::*tension*", "none::d::Tanyeezy.", "none::d::~The final 'rose of romantic consideration' is handed to Tanyezebel, eliminating Samanthelly.~", "mom::dispoint::Awwww...", "melissa::smile::I knew he would choose the pretty one because Mark is obviously SHALLOW.", "mom::dispoint::I guess so..."];
sub_mom.push({mov:"wt.91.3.j.21.15.nw.2.sw.t.7.43.nw.1.sw.2.se.0.w.2.gstate.art"});
sub_mom.push({});
world_text[91] = [0, "mom::smile::Well that's enough for me, I'm going to work on my painting.", "melissa::d::Ok."];
sub_david.push({mov:"cw.nintendo,1.bgsnd.room.j.33.49.ne.3.nw.3.wt.93.4.se.3.sw.2.w.2.nw.0.w.2.wt.94.c.w.1.sw.3.as.mom.se.t.34.18.ne.t.61.48.se.1.ne.1.se.1.ne.1.nw.0.gstate.sit.w.1.cw.nintendo,2.bgsnd.vidya.w.2.wt.95.c"});
sub_david.push({});
world_text[93] = [0, "david::d::Oh...", "mom::smile::Hey David, sit down. Watch Rose of Romantic Consideration with us.", "david::d::No... I'm good."];
world_text[94] = [0, "pc::curious::David's looking quite intently at this portrait of Melissa and her Father.", "pc::contemplation::He's thinking about...", "pc::shock::This is intense, there's dense inner conflict here I don't feel I was prepared for!", "pc::concern::Here I was thinking that David was just sour over his lover's infidelity but there's even more to it...", "pc::concern::A jealousy of her upbringing and assumed spoiled nature...", "pc::concern::A cocktail of feelings concerning how his philandering Father left him and his Mother...", "pc::contemplation::I may have my work cut out for me after all."];
world_text[95] = [{locks:"david,tv,96"}, "pc::disdain::This won't do, I cannot let David distract himself anymore.", "pc::determined::I will make him face these feelings one way or another."];
world_text[96] = [{locks:"david,tv,97", as:"david"}, "pc::devious::ZAP!"];
world_text[97] = [0, "pc::blush::A zapped television."];
sub_david.push({mov:"cw.nintendo,1.bgsnd.room.w.1.ne.0.wt.98.3.ne.1.nw.2.sw.1.se.0.wt.99.4.cw.nintendo,2.bgsnd.vidya.wt.150.2.ne.1.se.2.sw.1.nw.0.w.1.gstate.sit.w.2.wt.151.4.cw.nintendo,1.bgsnd.room.w.2.wt.152.c"});
sub_david.push({});
world_text[98] = [0, "david::d::What...?", "david::shock::WHAT?!"];
world_text[99] = [0, "david::focus::Red wire, red plug. Yellow wire, yellow plug. White wire, white plug.", "david::focus::Electricity plugs are fine, tv powerlight is on.", "david::shock::Did the console break?!", "david::focus::Calm! Calmly turn off and on the console..."];
world_text[150] = [0, "david::relief::Thank god, it works.", "pc::d::That's right thank me."];
world_text[151] = [0, "david::d::Alright where was-", "david::shock::The savefile is gone...", "david::pissed::Ugggggh, all my progress.", "david::sad::Man, whatever... I was getting sick of collecting stuff anyways."];
world_text[152] = [{locks:"all,all,153,living,tree,-2,bath,bath,-2,bath,toilet,-2,hall,tohide,-2,living,vhs,-2,melissa,music,-2,melissa,stereo,-2,kitchen,coffee,-2,living,tree,155,bath,bath,157,bath,toilet,157,hall,tohide,159,living,vhs,161,melissa,music,163,melissa,stereo,163,kitchen,coffee,165"}, "david::sad::...", "pc::determined::David is spacing out, this is the opportunity I need to get him thinking about things.", "pc::determined::The things that anger him about his new life.", "pc::determined::The things that will move him to action!"];
temp_a = "pc::curious::Maybe THIS will spark David.\n[Use]";
temp_b = "pc::d::Or maybe it will waste my chances.\n[Cancel]";
temp_x = "mvar.6,168.dvar.3,169";
world_text[153] = [{choice:"154,100"}, temp_a, temp_b];
world_text[154] = [{changeworld:"mvar,++", nextext:temp_x}, "david::sad::...", "pc::dispoint::No effect.", "pc::dispoint::I can't keep suggesting the wrong things or I will miss my chance."];
world_text[155] = [{choice:"156,100"}, temp_a, temp_b];
world_text[156] = [{changeworld:"dvar,++", nextext:temp_x, locks:"living,tree,-2,living,tree,167"}, "david::sad::...", "david::focus::...", "david::focus::Why do I have to share Christmas with a couple of strangers?", "david::mad::..."];
world_text[157] = [{choice:"158,100"}, temp_a, temp_b];
world_text[158] = [{changeworld:"dvar,++", nextext:temp_x, locks:"bath,bath,-2,bath,toilet,-2,bath,bath,167,bath,toilet,167"}, "david::sad::...", "david::focus::...", "david::focus::It's bad enough I can't walk around the house without running into her but then I can't even get any privacy in the shower.", "david::mad::..."];
world_text[159] = [{choice:"160,100"}, temp_a, temp_b];
world_text[160] = [{changeworld:"dvar,++", nextext:temp_x, locks:"hall,tohide,-2,hall,tohide,167"}, "david::sad::...", "david::focus::...", "david::focus::That asshole sleeping with my mom.", "david::mad::..."];
world_text[161] = [{choice:"162,100"}, temp_a, temp_b];
world_text[162] = [{changeworld:"dvar,++", nextext:temp_x, locks:"living,vhs,-2,living,vhs,167"}, "david::sad::...", "david::focus::...", "david::focus::Me and my mom didn't have any money to waste but this stupid guy was buying crappy movies every week.", "david::mad::..."];
world_text[163] = [{choice:"164,100"}, temp_a, temp_b];
world_text[164] = [{changeworld:"dvar,++", nextext:temp_x, locks:"melissa,music,-2,melissa,music,167,melissa,stereo,-2,melissa,stereo,167"}, "david::sad::...", "david::focus::...", "david::focus::Melissa got all this shit whenever she wanted, spoiled brat.", "david::mad::..."];
world_text[165] = [{choice:"166,100"}, temp_a, temp_b];
world_text[166] = [{changeworld:"dvar,++", nextext:temp_x, locks:"kitchen,coffee,-2,kitchen,coffee,167"}, "david::sad::...", "david::focus::...", "david::focus::Stupid pretentious old man yakking on about coffees, thinking he's classy because he overpays.", "david::mad::..."];
world_text[167] = [0, "pc::d::I've already used this one."];
world_text[168] = [{locks:"all,all,-2", as:"david", nextext:"toasterexplained.0,323"}, "david::sad::What am I doing spacing out and thinking about stupid things?", "david::sad::Screw it, I'm going to sleep.", "pc::dispoint::Rats, all I managed to do was make David depressed. I should start over."];
sub_david.push({mov:"w.2.nw.0.w.1.se.0.j.64.50.gstate.bed.cw.davidbed,2"});
sub_david.push({});
world_text[169] = [{locks:"all,all,-2", as:"david,david,david"}, "david::mad::And fucking Melissa...", "david::mad::I loved her.", "pc::d::Here we go!"];
sub_david.push({mov:"sw.3.nw.2.sw.3.nw.2.ne.t.63.19.nw.2.wt.170.c.nw.2"});
sub_david.push({});
world_text[170] = [{as:"melissa"}, "david::mad::...", "david::mad::How about I scratch 'Michael' into every one of these discs.", "pc::curious::Wait, who's Michael?"];
sub_melissa.push({mov:"j.34.13.ne.2.wt.171.c.ne.1"});
sub_melissa.push({});
world_text[171] = [{as:"david"}, "melissa::concern::David? What are you doing in my room?", "david::mad::..."];
sub_david.push({mov:"se.3.as.dad.sw.4.se.1.sw.0.wt.172.c.w.1.ne.0.wt.173.c.gchar.david_fast.nw.1.ne.2.nw.2.gchar.david_summer.gstate.sit.as.melissa"});
sub_david.push({});
sub_david.push({mov:"j.70.40"});
sub_david.push({});
world_text[172] = [0, "melissa::think::Wait, David...", "melissa::think::I've been thinking about stuff from before...", "david::mad::...", "melissa::sad::And well, I never properly apologized for what I did..."];
world_text[173] = [{nextext:175, as:"melissa"}, "david::mad::Apologize?! You think you can just say 'sorry' and everything will be fine!?", "melissa::sad::No.", "david::mad::I'm never forgiving you.", "melissa::sad::That's fine, I deserve that... I let myself be manipulated and hurt you and...", "melissa::contemplation::I just want you to know that I never stopped loving you so if you could at least...", "david::mad::...", "david::pain::You're...", "david::pain::You're not fair..."];
sub_melissa.push({mov:"gstate.crouch"});
sub_melissa.push({});
sub_melissa.push({mov:"gstate.stand.gchar.melissa_fast.ne.1.as.david.nw.3.se.0.gchar.melissa_summer"});
sub_melissa.push({});
sub_dad.push({mov:"ne.2.wt.174.4.sw.0.w.2.ne.2.se.t.36.22.ne.1.gstate.touch"});
sub_dad.push({});
world_text[174] = [0, "dad::shock::Holy hell is it hot in here.", "dad::mad::That's enough of that, I'm gonna give these Honolulu kids a talking to."];
tempstate1 = sub_dad.push({mov:"j.36.21.nw.4.ne.1.nw.2.ne.3.nw.0.wt.177.c.sw.2.se.2.as.melissa.ne.2.wt.176.4.sw.5.se.t.78.48"}) - 1;
sub_dad.push({});
world_text[175] = [{precut:"fuck", func3:"saveprogress", func3pass:"4,1", as:"dad+" + tempstate1}, "dad::mad::MELISSA?!", "dad::mad::DAVID!?"];
world_text[176] = [0, "dad::d::Where's David gone to?"];
world_text[177] = [0, "dad::mad::Melissa, are you kidding me?", "melissa::nervous::Um, what?", "dad::mad::It's freezing outside and you're walking around with bare arms like it's Honolulu!", "melissa::nervous::Oh...", "dad::d::Stop wasting electricity and put on some warmer clothes.", "melissa::nervous::Yeah, ok... sorry."];
sub_melissa.push({mov:"se.2.nw.0.as.david"});
sub_melissa.push({});
sub_melissa.push({mov:"ne.1.sw.0.w.1.sw.1.se.0"});
sub_melissa.push({});
sub_david.push({mov:"j.61.18.w.1.nw.0.w.1.se.0.wt.178.c.w.1.se.1.as.melissa.se.2.sw.6.wt.179.0"});
sub_david.push({});
world_text[178] = [0, "melissa::relief::Crap, I thought he heard us...", "melissa::laugh::Hahaha.", "david::shame::What's so funny?", "melissa::laugh::This happened the first time we had sex too.", "david::smile::Your Dad has the worst timing.", "david::d::...", "pc::determined::Go on David, say what you feel.", "david::shame::..."];
world_text[179] = [{nextext:185}, "pc::determined::It isn't perfect yet but I'm clearly making progress.", "pc::lust::OneHandGames 'Cold Winter Days' will be right back after the break!"];
world_text[185] = {func:"finishgame"};
tlradius = {r:0, l:0, u:0, d:0};
tilep = {w:48, h:24, zoom:150};
tilep.stagew = (100 / tilep.zoom) * Stage.width;
tilep.stageh = (100 / tilep.zoom) * Stage.height;
tilep.stageadd = tilep.stagew + tilep.stageh;
tilep.halfw = tilep.w / 2;
tilep.halfh = tilep.h / 2;
tilep.hh = tilep.halfh / 2;
tileradius.l = (tileradius.r = tilep.halfw);
tileradius.u = (tileradius.d = tilep.halfh);
tilearea = {xMin:0, xMax:0, yMin:0, yMax:0};
gamep_spd = [8, 6, 5, 3, 2];
inputs = new Array();
inputs.push({tag:"l", desc:"Move"});
inputs.push({tag:"r", desc:"Move"});
inputs.push({tag:"u", desc:"Move"});
inputs.push({tag:"d", desc:"Move"});
inputs.push({tag:"space", desc:"Action", kcode:32});
inputs.push({tag:"f", desc:"Fullscreen", kcode:70});
inputs.push({tag:"playtest", desc:"Shift", kcode:16});
inputs.push({tag:"leftclick", desc:"Leftclick", kcode:1});
inputs.push({tag:"test", desc:"T", kcode:84});
inputs.push({tag:"middleclick", desc:"Middleclick", kcode:4});
inputs.push({tag:"up", desc:"Move", kcode:104});
inputs.push({tag:"down", desc:"Move", kcode:101});
inputs.push({tag:"right", desc:"Move", kcode:102});
inputs.push({tag:"left", desc:"Move", kcode:100});
inputs.push({tag:"one", desc:"Copy", kcode:109});
inputs.push({tag:"two", desc:"Paste", kcode:107});
clicker = new Object();
clicker.onMouseWheel = function (delta) {
clicks.spinner = ((delta > 0) ? 1 : -1);
};
Mouse.addListener(clicker);
clicks = {};
var i = 0;
while (i < 9) {
var sub = inputs[i];
clicks[sub.tag] = 0;
i++;
}
switch_keyboard("qwerty");
sndsplaying = {};
_root.attachMovie("empty", "bgaudio", _root.getNextHighestDepth());
bgaud = new Sound(_root.bgaudio);
bgaud.onSoundComplete = function () {
bgaud.start(0, 999);
};
fadep = new Array();
designp = {camx:0, camy:0, l:1};
timer = 0;
designing(0);
sav = SharedObject.getLocal("x");
prog = ((sav.data.prog == undefined) ? (start_save) : (sav.data.prog));
Instance of Symbol 881 MovieClip in Frame 17
on (press) {
_root.designinit();
}
Instance of Symbol 881 MovieClip in Frame 17
on (press) {
_root.exportworld();
}
Frame 25
_root._quality = "HIGH";
this.nextFrame();
Instance of Symbol 940 MovieClip in Frame 25
on (rollOver) {
this.gotoAndStop(2);
}
on (rollOut) {
this.gotoAndStop(1);
}
on (press) {
getURL ("http://twitter.com/onehandgames/", "_blank");
}
Instance of Symbol 943 MovieClip in Frame 25
on (rollOver) {
this.gotoAndStop(2);
}
on (rollOut) {
this.gotoAndStop(1);
}
on (press) {
getURL ("http://onehandgames.tumblr.com", "_blank");
}
Frame 26
this.stop();
init_saves(is_dem);
_root.mc.gotoAndStop(_root.mainmen);
Frame 27
this.prevFrame();
Frame 31
this.nextFrame();
Frame 32
this.stop();
Frame 33
this.prevFrame();
Frame 40
this.nextFrame();
Frame 41
this.stop();
Frame 42
this.prevFrame();
Frame 46
this.nextFrame();
Instance of Symbol 940 MovieClip in Frame 46
on (rollOver) {
this.gotoAndStop(2);
}
on (rollOut) {
this.gotoAndStop(1);
}
on (press) {
getURL ("http://twitter.com/onehandgames/", "_blank");
}
Instance of Symbol 943 MovieClip in Frame 46
on (rollOver) {
this.gotoAndStop(2);
}
on (rollOut) {
this.gotoAndStop(1);
}
on (press) {
getURL ("http://onehandgames.tumblr.com", "_blank");
}
Instance of Symbol 1862 MovieClip in Frame 46
on (rollOver) {
this.gotoAndStop(2);
}
on (rollOut) {
this.gotoAndStop(1);
}
on (press) {
getURL ("http://onehandgames.bandcamp.com", "_blank");
}
Instance of Symbol 1862 MovieClip in Frame 46
on (rollOver) {
this.gotoAndStop(2);
}
on (rollOut) {
this.gotoAndStop(1);
}
on (press) {
getURL ("http://onehandgames.bandcamp.com", "_blank");
}
Instance of Symbol 1862 MovieClip in Frame 46
on (rollOver) {
this.gotoAndStop(2);
}
on (rollOut) {
this.gotoAndStop(1);
}
on (press) {
getURL ("http://onehandgames.bandcamp.com", "_blank");
}
Instance of Symbol 1862 MovieClip in Frame 46
on (rollOver) {
this.gotoAndStop(2);
}
on (rollOut) {
this.gotoAndStop(1);
}
on (press) {
getURL ("http://onehandgames.bandcamp.com", "_blank");
}
Instance of Symbol 1862 MovieClip in Frame 46
on (rollOver) {
this.gotoAndStop(2);
}
on (rollOut) {
this.gotoAndStop(1);
}
on (press) {
getURL ("http://onehandgames.bandcamp.com", "_blank");
}
Instance of Symbol 1862 MovieClip in Frame 46
on (rollOver) {
this.gotoAndStop(2);
}
on (rollOut) {
this.gotoAndStop(1);
}
on (press) {
getURL ("http://onehandgames.bandcamp.com", "_blank");
}
Frame 47
this.stop();
Frame 48
this.prevFrame();
Symbol 16 MovieClip Frame 40
stop();
Symbol 25 MovieClip Frame 40
stop();
Symbol 55 MovieClip Frame 40
stop();
Symbol 64 MovieClip Frame 40
stop();
Symbol 78 MovieClip Frame 48
stop();
Symbol 87 MovieClip Frame 48
stop();
Symbol 101 MovieClip Frame 40
stop();
Symbol 110 MovieClip Frame 40
stop();
Symbol 133 MovieClip Frame 40
stop();
Symbol 144 MovieClip Frame 40
stop();
Symbol 179 MovieClip Frame 47
stop();
Symbol 204 MovieClip Frame 47
stop();
Symbol 235 MovieClip Frame 48
stop();
Symbol 244 MovieClip Frame 48
stop();
Symbol 270 MovieClip Frame 40
stop();
Symbol 279 MovieClip Frame 40
stop();
Symbol 293 MovieClip Frame 48
stop();
Symbol 302 MovieClip Frame 48
stop();
Symbol 328 MovieClip Frame 49
stop();
Symbol 336 MovieClip Frame 49
stop();
Symbol 360 MovieClip Frame 42
stop();
Symbol 368 MovieClip Frame 42
stop();
Symbol 385 MovieClip Frame 48
stop();
Symbol 394 MovieClip Frame 48
stop();
Symbol 419 MovieClip Frame 40
stop();
Symbol 428 MovieClip Frame 40
stop();
Symbol 449 MovieClip Frame 48
stop();
Symbol 458 MovieClip Frame 47
stop();
Symbol 477 MovieClip Frame 56
stop();
Symbol 486 MovieClip Frame 56
stop();
Symbol 500 MovieClip Frame 24
stop();
Symbol 509 MovieClip Frame 24
stop();
Symbol 520 MovieClip Frame 16
stop();
Symbol 529 MovieClip Frame 16
stop();
Symbol 540 MovieClip Frame 16
stop();
Symbol 549 MovieClip Frame 16
stop();
Symbol 563 MovieClip Frame 18
stop();
Symbol 572 MovieClip Frame 18
stop();
Symbol 630 MovieClip [loadaudio] Frame 1
stop();
Symbol 637 MovieClip Frame 33
stop();
_parent._parent.removeMovieClip();
Symbol 638 MovieClip Frame 39
stop();
_parent._parent.removeMovieClip();
Symbol 639 MovieClip Frame 41
stop();
_parent._parent.removeMovieClip();
Symbol 640 MovieClip [player_cursor] Frame 1
stop();
Symbol 646 MovieClip Frame 1
stop();
Symbol 649 MovieClip Frame 1
stop();
Symbol 652 MovieClip Frame 1
stop();
Symbol 659 MovieClip Frame 1
stop();
Symbol 659 MovieClip Frame 2
_root.snd_play("drawer_open");
Symbol 659 MovieClip Frame 70
_root.snd_play("drawer_close");
Symbol 668 MovieClip Frame 1
stop();
Symbol 668 MovieClip Frame 2
_root.snd_play("cabinet_open");
Symbol 668 MovieClip Frame 49
_root.snd_play("cabinet_close");
Symbol 692 MovieClip Frame 1
stop();
Symbol 692 MovieClip Frame 2
_root.snd_play("drawer_open");
Symbol 692 MovieClip Frame 48
_root.snd_play("drawer_close");
Symbol 697 MovieClip Frame 1
stop();
Symbol 697 MovieClip Frame 2
_root.snd_play("coffeepot_out");
Symbol 697 MovieClip Frame 30
stop();
Symbol 697 MovieClip Frame 31
_root.snd_play("coffeepot_in");
Symbol 701 MovieClip Frame 1
stop();
Symbol 701 MovieClip Frame 2
_root.snd_play("cabinet_open");
Symbol 701 MovieClip Frame 42
_root.snd_play("cabinet_close");
Symbol 710 MovieClip Frame 2
_root.snd_play("pan");
_root.world_state.stove = 4;
Symbol 710 MovieClip Frame 3
_root.snd_play("fry");
Symbol 721 MovieClip Frame 1
stop();
Symbol 721 MovieClip Frame 2
_root.snd_play("door_open");
Symbol 721 MovieClip Frame 98
_root.snd_play("door_close");
Symbol 745 MovieClip Frame 1
stop();
Symbol 786 MovieClip Frame 2
_root.snd_play("dresser1");
Symbol 786 MovieClip Frame 3
_root.snd_play("dresser1");
Symbol 786 MovieClip Frame 4
_root.snd_play("dresser2");
Symbol 786 MovieClip Frame 5
_root.snd_play("dresser1");
Symbol 786 MovieClip Frame 6
_root.snd_play("dresser2");
Symbol 786 MovieClip Frame 7
_root.snd_play("dresser2");
Symbol 786 MovieClip Frame 8
_root.snd_play("dresser2");
Symbol 805 MovieClip Frame 1
stop();
Symbol 805 MovieClip Frame 2
_root.snd_play("dresser1");
Symbol 840 MovieClip Frame 2
_root.snd_play("showercurtain_open");
Symbol 840 MovieClip Frame 22
stop();
Symbol 845 MovieClip Frame 2
_root.snd_play("showercurtain_close");
Symbol 845 MovieClip Frame 23
stop();
Symbol 846 MovieClip Frame 2
_root.world_state.curtain = 3;
Symbol 846 MovieClip Frame 4
_root.world_state.curtain = 1;
Symbol 861 MovieClip Frame 1
stop();
Symbol 861 MovieClip Frame 2
_root.snd_play("washinglid_open");
Symbol 861 MovieClip Frame 76
_root.snd_play("washinglid_close");
Symbol 869 MovieClip Frame 2
_root.snd_play("fridge_close");
_root.world_state.fridge = 1;
Symbol 869 MovieClip Frame 4
_root.snd_play("fridge_open");
_root.world_state.fridge = 3;
Symbol 876 MovieClip [tiles] Frame 1
this.design.gotoAndStop(_root.world_state.hidetiles + 1);
Symbol 876 MovieClip [tiles] Frame 7
this.mc.gotoAndStop(_root.world_state.microwave);
Symbol 876 MovieClip [tiles] Frame 9
this.mc.gotoAndStop(_root.world_state.dishes);
Symbol 876 MovieClip [tiles] Frame 10
this.mc.gotoAndStop(_root.world_state.dishes);
Symbol 876 MovieClip [tiles] Frame 16
this.mc.gotoAndStop(_root.world_state.stove);
Symbol 876 MovieClip [tiles] Frame 17
this.mc.gotoAndStop(_root.world_state.fridge);
Symbol 876 MovieClip [tiles] Frame 40
this.design.gotoAndStop(_root.world_state.hidetiles + 1);
Symbol 876 MovieClip [tiles] Frame 43
this.mc.gotoAndStop(_root.world_state.tree);
Symbol 876 MovieClip [tiles] Frame 45
this.mc.gotoAndStop(_root.world_state.melissabed);
Symbol 876 MovieClip [tiles] Frame 46
this.mc.gotoAndStop(_root.world_state.guestbed);
Symbol 876 MovieClip [tiles] Frame 47
this.design.gotoAndStop(_root.world_state.hidetiles + 1);
Symbol 876 MovieClip [tiles] Frame 48
this.mc.gotoAndStop(_root.world_state.stereo);
Symbol 876 MovieClip [tiles] Frame 49
this.mc.gotoAndStop(_root.world_state.dresser);
Symbol 876 MovieClip [tiles] Frame 50
this.mc.gotoAndStop(_root.world_state.davidbed);
Symbol 876 MovieClip [tiles] Frame 51
this.mc.gotoAndStop(_root.world_state.nintendo);
Symbol 876 MovieClip [tiles] Frame 58
this.mc.gotoAndStop(_root.world_state.toilet);
Symbol 876 MovieClip [tiles] Frame 61
this.mc.gotoAndStop(_root.world_state.shower);
Symbol 876 MovieClip [tiles] Frame 62
this.mc.gotoAndStop(_root.world_state.curtain);
Symbol 876 MovieClip [tiles] Frame 64
this.mc.gotoAndStop(_root.world_state.towels);
Symbol 876 MovieClip [tiles] Frame 73
this.mc.gotoAndStop(_root.world_state.fridge);
Symbol 876 MovieClip [tiles] Frame 74
this.mc.gotoAndStop(_root.world_state.coke);
Symbol 881 MovieClip Frame 1
this.stop();
Symbol 921 MovieClip Frame 1
this.gotoAndStop(_root.keyboard_type);
Instance of Symbol 932 MovieClip in Symbol 937 MovieClip Frame 1
on (rollOver) {
_parent.gotoAndStop(2);
}
on (rollOut) {
_parent.gotoAndStop(1);
}
on (press) {
_root.gameinit("start");
}
Instance of Symbol 932 MovieClip in Symbol 937 MovieClip Frame 1
on (rollOver) {
_parent.gotoAndStop(3);
}
on (rollOut) {
_parent.gotoAndStop(1);
}
on (press) {
_root.frameon("cutscenes");
}
Instance of Symbol 932 MovieClip in Symbol 937 MovieClip Frame 1
on (press) {
getURL ("http://onehandgames.bandcamp.com/", "_blank");
}
Instance of Symbol 932 MovieClip in Symbol 937 MovieClip Frame 7
on (rollOver) {
_parent.gotoAndStop(8);
}
on (rollOut) {
_parent.gotoAndStop(7);
}
on (press) {
_root.gameinit("start");
}
Instance of Symbol 932 MovieClip in Symbol 937 MovieClip Frame 7
on (rollOver) {
_parent.gotoAndStop(9);
}
on (rollOut) {
_parent.gotoAndStop(7);
}
on (press) {
_root.frameon("cutscenes");
}
Instance of Symbol 932 MovieClip in Symbol 937 MovieClip Frame 7
on (rollOver) {
_parent.gotoAndStop(10);
}
on (rollOut) {
_parent.gotoAndStop(7);
}
on (press) {
_root.gameinit("demo");
}
Instance of Symbol 932 MovieClip in Symbol 937 MovieClip Frame 11
on (rollOver) {
_parent.gotoAndStop(14);
}
on (rollOut) {
_parent.gotoAndStop(11);
}
on (press) {
_root.gameinit("start");
}
Instance of Symbol 932 MovieClip in Symbol 937 MovieClip Frame 11
on (rollOver) {
_parent.gotoAndStop(13);
}
on (rollOut) {
_parent.gotoAndStop(11);
}
on (press) {
_root.frameon("cutscenes");
}
Instance of Symbol 932 MovieClip in Symbol 937 MovieClip Frame 11
on (rollOver) {
_parent.gotoAndStop(12);
}
on (rollOut) {
_parent.gotoAndStop(11);
}
on (press) {
_root.gameinit("continue");
}
Symbol 940 MovieClip Frame 1
stop();
Symbol 943 MovieClip Frame 1
stop();
Symbol 945 MovieClip Frame 1
this.gotoAndStop(_root.keyboard_type);
Instance of Symbol 932 MovieClip in Symbol 945 MovieClip Frame 1
on (press) {
_root.switch_keyboard("qwerty");
_parent.gotoAndStop(1);
_root.anim.mc.gotoAndStop(1);
}
Instance of Symbol 932 MovieClip in Symbol 945 MovieClip Frame 1
on (press) {
_root.switch_keyboard("azerty");
_parent.gotoAndStop(2);
_root.anim.mc.gotoAndStop(2);
}
Instance of Symbol 932 MovieClip in Symbol 945 MovieClip Frame 1
on (press) {
_root.switch_keyboard("dvorak");
_parent.gotoAndStop(3);
_root.anim.mc.gotoAndStop(3);
}
Instance of Symbol 932 MovieClip in Symbol 945 MovieClip Frame 1
on (press) {
_root.switch_keyboard("fallback");
_parent.gotoAndStop(4);
_root.anim.mc.gotoAndStop(4);
}
Symbol 951 MovieClip Frame 1
stop();
Symbol 993 MovieClip Frame 1
_root.snd_play("mu_kitchen");
Symbol 993 MovieClip Frame 493
stop();
Symbol 1013 MovieClip Frame 1
_root.snd_play("mu_morning");
Symbol 1013 MovieClip Frame 302
stop();
Symbol 1112 MovieClip Frame 1
_root.snd_play("mu_shower");
Symbol 1112 MovieClip Frame 1016
stop();
Symbol 1157 MovieClip Frame 1
_root.snd_play("mu_sex");
Symbol 1157 MovieClip Frame 1228
stop();
Symbol 1158 MovieClip Frame 1
stop();
var temp = _root.prog.split(",");
_root.cutscanplay = new Object();
var i = 1;
while (i < 8) {
_root.cutscanplay["cut" + i] = Number(temp[i]);
_root.overlay["lines" + i].onPress = function () {
var _local3 = this._name.split("s");
_local3 = Number(_local3[1]);
if (_root.cutscanplay["cut" + _local3]) {
_root.overlay.gotoAndStop(["play" + _local3]);
}
};
_root.overlay["lines" + i].onRollOver = function () {
var _local3 = this._name.split("s");
_local3 = Number(_local3[1]);
if (_root.cutscanplay["cut" + _local3]) {
_root.overlay["lines" + _local3].gotoAndStop(2);
} else {
_root.overlay["lines" + _local3].gotoAndStop(3);
}
};
_root.overlay["lines" + i].onRollOut = function () {
var _local3 = this._name.split("s");
_local3 = Number(_local3[1]);
_root.overlay["lines" + _local3].gotoAndStop(1);
};
i++;
}
Instance of Symbol 881 MovieClip in Symbol 1158 MovieClip Frame 1
on (press) {
_root.frameon("menu");
}
Instance of Symbol 881 MovieClip in Symbol 1158 MovieClip Frame 14
on (press) {
_root.snd_stop("mu_kitchen");
_root.snd_stop("mu_love");
_root.snd_stop("mu_morning");
_root.snd_stop("mu_movie");
_root.snd_stop("mu_sex");
_root.snd_stop("mu_shower");
_root.snd_stop("mu_sleepover");
_parent.gotoAndStop(1);
}
Symbol 1160 MovieClip Frame 1
stop();
Symbol 1161 MovieClip Frame 1
stop();
Symbol 1216 MovieClip Frame 1
_root.snd_play("pipespin");
Symbol 1216 MovieClip Frame 46
_root.snd_play("pipe");
Symbol 1216 MovieClip Frame 143
stop();
Symbol 1219 MovieClip Frame 1
stop();
Symbol 1253 MovieClip Frame 1
var temp = _root.world_sprites[0][0].gchar;
switch (temp) {
case "david_summer" :
temp = 1;
break;
case "david_fast" :
temp = 1;
break;
case "david_winter" :
temp = 2;
break;
case "david_wfast" :
temp = 2;
break;
default :
temp = 3;
}
this.mc.gotoAndStop(temp);
Symbol 1281 MovieClip Frame 1
var temp = _root.world_sprites[3][0].gchar;
switch (temp) {
case "father_work" :
temp = 1;
break;
default :
temp = 2;
}
this.mc.gotoAndStop(temp);
Symbol 1342 MovieClip Frame 1
var temp = _root.world_sprites[1][0].gchar;
switch (temp) {
case "melissa_pj" :
temp = 2;
break;
case "melissa_winter" :
temp = 3;
break;
case "melissa_wfast" :
temp = 3;
break;
default :
temp = 1;
}
this.mc.gotoAndStop(temp);
Symbol 1359 MovieClip Frame 1
var temp = _root.world_sprites[4][0].gchar;
if (temp == "girl_pj") {
temp = 2;
} else if (_root.world_sprites[4][0].gstate == "nude") {
temp = 3;
} else {
temp = 1;
}
this.mc.gotoAndStop(temp);
Symbol 1369 MovieClip Frame 95
_root.change_world(_root.nextws);
Symbol 1369 MovieClip Frame 211
stop();
Symbol 1375 MovieClip Frame 1
_root.snd_play("mu_timetravel");
Symbol 1375 MovieClip Frame 95
_root.change_world(_root.nextws);
Symbol 1375 MovieClip Frame 211
stop();
Symbol 1377 MovieClip Frame 130
stop();
if (_root.framein == "game") {
_root.finishgame();
}
Symbol 1849 MovieClip Frame 1
_root.snd_play("mu_previously");
Symbol 1852 MovieClip Frame 1
_root.snd_play("mu_day");
Symbol 1852 MovieClip Frame 126
stop();
Symbol 1854 MovieClip Frame 1
_root.snd_play("mu_night");
Symbol 1854 MovieClip Frame 130
stop();
Instance of Symbol 881 MovieClip in Symbol 1855 MovieClip Frame 13
on (press) {
_root.frameon("designer");
}
Symbol 1862 MovieClip Frame 1
stop();