[Tools][Expand/Collapse All]Note that automatic extraction of ActionScript 3 is still pretty much unsupported by swfchan. AS1/AS2 works okay most of the time.Section 1 (278 B)
//control_94 (Homestuck1_fla.control_94)
package Homestuck1_fla {
import flash.display.*;
public dynamic class control_94 extends MovieClip {
public function control_94(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Homestuck1_fla
Section 2 (286 B)
//KS_babble_91 (Homestuck1_fla.KS_babble_91)
package Homestuck1_fla {
import flash.display.*;
public dynamic class KS_babble_91 extends MovieClip {
public function KS_babble_91(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Homestuck1_fla
Section 3 (48.55 KiB) ● ● ● ●
//MainTimeline (Homestuck1_fla.MainTimeline)
package Homestuck1_fla {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
import flash.text.*;
import flash.net.*;
import flash.media.*;
import flash.ui.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.system.*;
import flash.utils.*;
import flash.xml.*;
public dynamic class MainTimeline extends MovieClip {
public var camPos:Point;
public var studyDesk:MovieClip;
public var kitchDoor:MovieClip;
public var loader:TextField;
public var manhandle:Array;
public var yDiff:Number;
public var livingLamp:MovieClip;
public var pressed:Array;
public var livingHead:MovieClip;
public var kitchSplats:MovieClip;
public var balcAlchemiter:MovieClip;
public var PSSafe:MovieClip;
public var tDist:Number;
public var kitchBowl:MovieClip;
public var studyRack:MovieClip;
public var moving:Boolean;
public var outsideSwing:MovieClip;
public var textDelay:int;
public var scaler:Number;
public var changing:Boolean;
public var kitchPhone:MovieClip;
public var mousey:MovieClip;
public var mouser:Point;
public var studyClown1:MovieClip;
public var studyClown2:MovieClip;
public var livingFire:MovieClip;
public var studyMagazine:MovieClip;
public var tempMc:DisplayObject;
public var livingDoorBalc:MovieClip;
public var curAction:Array;
public var newPos:Point;
public var shifted:Point;
public var req:URLRequest;
public var roomWindow:MovieClip;
public var outsideSlimer:MovieClip;
public var bathWindow:MovieClip;
public var bathArrow:MovieClip;
public var looking:Boolean;
public var textz:TextFormat;
public var artPos:Point;
public var texts:Array;
public var studySafe:MovieClip;
public var hud:MovieClip;
public var studyPiano:MovieClip;
public var song:Sound;
public var studyDoor:MovieClip;
public var keying:Boolean;
public var myMenu:ContextMenu;
public var studyMural:MovieClip;
public var utilArrow:MovieClip;
public var balcCruxite:MovieClip;
public var pausing:Boolean;
public var tScale:Number;
public var roomConair:MovieClip;
public var studyCan:MovieClip;
public var spritePos:Point;
public var studyPic2:MovieClip;
public var studyPic1:MovieClip;
public var map:MovieClip;
public var livingDolls:MovieClip;
public var inventory:Array;
public var targ:Point;
public var muted:Boolean;
public var scale:Number;
public var kitchPlant:MovieClip;
public var scaleRate:Number;
public var spacer1:MovieClip;
public var spacer3:MovieClip;
public var spacer5:MovieClip;
public var spacer4:MovieClip;
public var livingCrux:MovieClip;
public var spacer2:MovieClip;
public var choice:int;
public var disp:Point;
public var spd:Number;
public var livingDoorKitchen:MovieClip;
public var mainF:int;
public var dist:Point;
public var main:int;
public var walk:Array;
public var roomMonsters:MovieClip;
public var ang:Number;
public var kitchBetty:MovieClip;
public var livingQuin1:MovieClip;
public var livingQuin3:MovieClip;
public var livingQuin4:MovieClip;
public var kitchDrawing:MovieClip;
public var livingQuin2:MovieClip;
public var outsideWires:MovieClip;
public var interacting:int;
public var roomGhostbusters:MovieClip;
public var poser:Point;
public var livingSteps:MovieClip;
public var songChan:SoundChannel;
public var livingUrn:MovieClip;
public var bathTub:MovieClip;
public var livingDoorStudy:MovieClip;
public var roomDesk:MovieClip;
public var livingPie:MovieClip;
public var utilWasher:MovieClip;
public var sCont:SoundTransform;
public var outsideGauge:MovieClip;
public var pos:Point;
public var roomBook:MovieClip;
public var roomBedDoor:MovieClip;
public var hallDoorDad:MovieClip;
public var livingCouch:MovieClip;
public var hallPic:MovieClip;
public var spriteFloat:Number;
public var texter:String;
public var textDelay2:int;
public var livingTable:MovieClip;
public var balcRail:MovieClip;
public var depthed:Array;
public var studyJoker:MovieClip;
public var options:Sprite;
public var kitchHutch:MovieClip;
public var fText:String;
public var roomLathe:MovieClip;
public var balcDoor:MovieClip;
public var roomCpu:MovieClip;
public var livingDoorHall:MovieClip;
public var kitchTable:MovieClip;
public var utilDoor:MovieClip;
public var bathToilet:MovieClip;
public var charClicks:Array;
public var roomTowel:MovieClip;
public var outsideTree:MovieClip;
public var livingBeagle:MovieClip;
public var roomBox:MovieClip;
public var outsideDoor:MovieClip;
public var rooms:Array;
public var kitchArrow:MovieClip;
public var studyPipe:MovieClip;
public var studyWindow:MovieClip;
public var studyCards:MovieClip;
public var livingLid:MovieClip;
public var tempText:TextField;
public var inters:Array;
public var roomDoor:MovieClip;
public var zooming:Boolean;
public var kSprite:MovieClip;
public var curRoom:int;
public var PSDesk:MovieClip;
public var spriteClicks:Array;
public var kitchBook:MovieClip;
public var hallDoorBath:MovieClip;
public var roomSplats:MovieClip;
public var hallArrow:MovieClip;
public var req2:URLRequest;
public var req3:URLRequest;
public var char:MovieClip;
public var outsideCuffs:MovieClip;
public var hotSpots:Array;
public var examine:Array;
public var livingDoorRoom:MovieClip;
public var idiotMessages:Array;
public var chosen:Boolean;
public var livingSoot:MovieClip;
public var roomMacnme:MovieClip;
public var vel:Point;
public var livingPokers:MovieClip;
public var vault01:MovieClip;
public var roomDresser:MovieClip;
public var PSWindow:MovieClip;
public var facing:String;
public var PSPumpkin:MovieClip;
public var utilCabinet:MovieClip;
public function MainTimeline(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 6, frame7, 7, frame8, 10, frame11, 11, frame12);
}
function frame11(){
tScale = 1;
stage.quality = "low";
songChan.stop();
}
function frame1(){
stop();
this.loaderInfo.addEventListener(ProgressEvent.PROGRESS, progresser);
}
function frame2(){
req = new URLRequest("http://www.mspaintadventures.com/storyfiles/hs2/00253/mspa_harlequin.mp3");
req2 = new URLRequest("http://www.mspaintadventures.com/storyfiles/hs2/00253/wind.wav");
req3 = new URLRequest("http://www.mspaintadventures.com/storyfiles/hs2/00253/afterthought-showtime_piano.mp3");
song = new Sound(req);
myMenu = new ContextMenu();
myMenu.hideBuiltInItems();
contextMenu = myMenu;
stage.quality = "low";
stage.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown);
stage.addEventListener(Event.ENTER_FRAME, enterFrame);
stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDown);
stage.addEventListener(KeyboardEvent.KEY_UP, keyUp);
sCont = new SoundTransform();
muted = false;
char = new character();
char.x = (stage.stageWidth / 2);
char.y = (stage.stageHeight / 1.5);
hud = new hudd();
mousey = new mouses();
kSprite = new kernelSprite();
addChild(char);
addChild(kSprite);
addChild(hud);
addChild(mousey);
spriteClicks = new Array(new Array("ЧТО ЭТО ", " Теперь он выглядит иначе. \n\nПосле того, как ты надкусил то яблоко, весь твой дом очутился в странном месте. Затем ЯБЛОКО исчезло, а ПРОТОСПРАЙТ изменился. Но трансформация, видимо, не имела значительных последствий. \n\nТы все еще не понимаешь ни слова из болтовни этого идиота.", 6, new Array("spriteClicks", 1)), new Array("КЛОУН-ПРИЗРАК. СДЕЛАЙ С НИМ ЧТО-НИБУДЬ.", "КЛОУН-ПРИЗРАК называется ПРОТОСПРАЙТОМ! Или, скорее, теперь просто СПРАЙТОМ. \n\nСейчас ты не можешь 'СДЕЛАТЬ С НИМ ЧТО-НИБУДЬ'! Теоретически, все, что с ним можно поделать - провести ПРОТОТИПИРОВАНИЕ 2ГО УРОВНЯ, если это еще возможно...", 6, new Array("spriteClicks", 2)), new Array("ПРОТРИ ТИПА СПРАЙТА ИЛИ КАК ТЫ ТАМ СКАЗАЛ. ДАВАЙ.", "Прототипировать спрайта должен не ты! Это обязанность ИГРОКА-СЕРВЕРА.", 6, new Array("spriteClicks", 0)));
charClicks = new Array(new Array("ЭЙ ТЫ. ПАРЕНЬ.", " ..\n\nЧто?", 5, new Array("charClicks", 1)), new Array("ПАРЕНЬ. СЛУШАЙ МЕНЯ, ПАРЕНЬ.", " Его зовут Джон, дурачье ты лопоухое.", 5, new Array("charClicks", 2)), new Array("ПАРЕНЬ ПО ИМЕНИ ДЖОН. ДЕЛАЙ, КАК Я СКАЖУ.", " И что 'ПАРЕНЬ ПО ИМЕНИ ДЖОН' должен делать?", 5, new Array("charClicks", 3)), new Array("СЛУШАЙ МОИ КОМАНДЫ, ПАРЕНЬ ДЖОН.", " И каковы будут эти команды...?", 5, new Array("charClicks", 4)), new Array("Я ХОЧУ, ЧТОБЫ ПАРЕНЬ КОНСТРУКТИВНО ВЗАИМОДЕЙСТВОВАЛ СО СВОИМ ОКРУЖЕНИЕМ.", " Может быть, тебе стоит уточнить?", 5, new Array("charClicks", 5)), new Array("ЗАСТАВЬ ПАРНЯ ОЦЕНИТЬ ТЕКУЩЕЕ ПОЛОЖЕНИЕ ДЕЛ.", " Боюсь, я не могу 'ЗАСТАВИТЬ ПАРНЯ' сделать что-либо. Прикажи ему сам!", 5, new Array("charClicks", 6)), new Array("ХОРОШО.", " ..\n\nОтлично. ", 5, new Array("charClicks", 7)), new Array("==>", "Эта команда сейчас бесполезна!!!", 5, new Array("charClicks", 8)), new Array("==>", "Эм. Не можешь ли ты передать управление кому-нибудь более компетентному?", 5, new Array("charClicks", 9)), new Array("АСЛФСАКЛАДТАК ", " Маразм крепчал. \n\nКстати, ты почти написал 'САЛАТ'.", 5, new Array("charClicks", 0)));
targ = new Point();
pos = new Point(char.x, char.y);
artPos = new Point();
newPos = new Point();
camPos = new Point(0, 0);
disp = new Point(0, 0);
spritePos = new Point(0, 0);
spriteFloat = 0;
pressed = new Array();
scale = 1;
scaler = 1;
tScale = 1;
scaleRate = 0;
dist = new Point();
mainF = 2;
tDist = 0;
spd = 7;
ang = 0;
yDiff = 0.8;
moving = false;
main = 0;
options = new Sprite();
tempText = new TextField();
choice = 0;
interacting = 0;
chosen = false;
changing = false;
looking = false;
pausing = false;
zooming = false;
facing = "Front";
curRoom = 1;
texter = "";
textDelay = 0;
textDelay2 = 0;
textz = new TextFormat("Courier New", 14, 0xFFFFFF, true);
texts = new Array();
mouser = new Point();
vel = new Point(0, 0);
keying = true;
shifted = new Point();
poser = new Point();
addChild(options);
stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMove);
inventory = new Array();
manhandle = new Array();
examine = new Array();
idiotMessages = new Array("Die. Now. Please.", "That doesn't even start to make sense.", "My dick. Suck it.", "So like, you ate a lot of lead as a child?", "Okay, I'll get right on that Professor Stoopid.", "'You shouldn't drink while you're pregnant.' Tell your mother this");
hotSpots = new Array(new Array(), new Array(new Array(251.8, 176, 200, 200)), new Array(), new Array(), new Array(new Array(-20, -373, 400, 800)), new Array(new Array(1299.6, 562, -1299.6, -100)), new Array(), new Array(), new Array(), new Array());
inters = new Array("PSPumpkin", "char", "kSprite", "outsideGauge", "outsideWires", "outsideSlimer", "outsideSwing", "outsideCuffs", "utilWasher", "utilCabinet", "kitchPhone", "kitchBetty", "kitchBowl", "kitchBook", "kitchHutch", "kitchPlant", "kitchSplats", "studyMagazine", "studyCan", "studyRack", "studyClown2", "studyPic1", "studyPic2", "studyWindow", "studyJoker", "studyClown1", "studySafe", "studyPipe", "studyCards", "studyPiano", "studyMural", "bathTub", "bathToilet", "bathWindow", "hallPic", "hallDoorDad", "roomCpu", "roomWindow", "roomSplats", "roomTowel", "roomBox", "roomBedDoor", "roomMacnme", "roomGhostbusters", "roomMonsters", "roomConair", "roomLathe", "roomBook", "vault01", "PSDesk", "PSWindow", "PSSafe", "livingPokers", "livingDolls", "livingSoot", "livingUrn", "livingLamp", "livingPie", "livingLid", "livingHead", "livingQuin1", "livingQuin2", "livingQuin3", "livingQuin4", "livingBeagle", "balcRail", "balcCruxite", "balcAlchemiter", "kitchDrawing", "outsideDoor", "utilDoor", "livingCrux", "balcDoor", "livingDoorBalc", "livingDoorHall", "livingDoorRoom", "livingDoorKitchen", "livingDoorStudy", "studyDoor", "roomDoor", "hallDoorBath", "bathArrow", "kitchArrow", "hallArrow", "utilArrow", "kitchDoor");
depthed = new Array("kitchHutch", "livingFire", "livingHead", "bathTub", "roomBook", "outsideTree", "outsideSwing", "outsideSlimer", "livingCouch", "balcRail", "roomDesk", "roomDresser", "livingCrux", "livingTable", "studySafe", "studyDesk", "kitchTable", "utilWasher", "utilCabinet", "livingSteps");
rooms = new Array(new Array(5, 69, -456, -300, -850), new Array(1, 160, 250, -200, -300), new Array(3, -360, 250, -200, 200), new Array(4, 200, 305, (-(stage.stageWidth) / 2), (-(stage.stageHeight) / 2)), new Array(8, 600, 365, (-(stage.stageWidth) / 2), (-(stage.stageHeight) * 1.3)), new Array(7, -201, 355, (-(stage.stageWidth) / 2), (stage.stageHeight / 2)), new Array(5, 0xFF, 0, (-(stage.stageWidth) / 2), -500), new Array(5, 109, -520, -320, -900), new Array(2, 359, 300, (-(stage.stageWidth) / 2), -300), new Array(5, 109, -520, -320, -900), new Array(4, 200, 305, (-(stage.stageWidth) / 2), (-(stage.stageHeight) / 2)), new Array(5, 0xFF, 0, (-(stage.stageWidth) / 2), -500), new Array(9, 355, 300, ((-(stage.stageWidth) / 2) - 100), -400), new Array(8, 400, 200, ((-(stage.stageWidth) / 2) - 100), -550), new Array(6, 242, 242, (-(stage.stageWidth) / 2), -300), new Array(9, 300, 75, (-(stage.stageWidth) / 2), -500));
walk = new Array(new Array("outsideCuffs", new Array(new Array("ОВЛАДЕЙ СВИСАЮЩЕЙ С ВЕТКИ БЕЗДЕЛУШКОЙ.", "Твои НАРУЧНИКИ С СЕКРЕТОМ все еще здесь! СЛАВА БОГУ.\n\nИ нет, ты не станешь 'овладевать' ими прямо сейчас", false))), new Array("outsideSwing", new Array(new Array("ПАРЕНЬ, ЗАЙМИСЬ ЭТОЙ ИСКОРЕЖЕННОЙ ТРАПЕЦИОИДНОЙ ИНСТАЛЛЯЦИЕЙ.", "Похоже, КАЧЕЛЯМ крышка. В порыве печали ты вновь переживаешь свои приятные воспоминания.", false))), new Array("outsideSlimer", new Array(new Array("ПОРАЗМЫСЛИ НАД ДВОРОВЫМ АТТРАКЦИОНОМ.", "Враг всего твоего детства, ПРУЖИННАЯ КАЧАЛКА, к сожалению, не была поглощена пустотой. Придется ей понести свое заслуженное наказание когда-нибудь потом.", false))), new Array("outsideWires", new Array(new Array("ПОИГРАЙСЯ С ТЕМИ СВЕРКАЮЩИМИ ШТУЧКАМИ.", "Звучит чертовски опасно! Джон благоразумно игнорирует твой ужасный совет.", false))), new Array("outsideGauge", new Array(new Array("ВОСХИЩАЙСЯ ЭТИМ НАСТЕННЫМ ПРИСПОСОБЛЕНИЕМ. ", "Какая-то мистическая сила питает всю технику в твоем доме, несмотря на порванные провода. Довольно странно.", false))), new Array("utilCabinet", new Array(new Array("ОТКРОЙ ИХ И ОБШАРЬ НА ПРЕДМЕТ ПОЛЕЗНОСТЕЙ.", "Тебе абсолютно плевать, что находится внутри! Наверняка ничего, что пригодилось бы сейчас.", false))), new Array("utilWasher", new Array(new Array("НЕ ВРЕМЯ ДЛЯ СТИРКИ", "Ты прав. Спасибо за проявленное благоразумие.", false))), new Array("kitchPhone", new Array(new Array("ТЕЛЕФОН, ПАРЕНЬ. ИСПОЛЬЗУЙ ЕГО.", "Телефон не работает!", false))), new Array("kitchBowl", new Array(new Array("ЗАГЛЯНИ В МИСКУ С ОСТАТКАМИ ЖИЖИ.", "Где бы сейчас ни был твой ОТЕЦ, он явно уходил второпях. \n\nНесмотря на все его странности, с которыми тебе приходилось мириться, очень хотелось бы, чтоб он был здесь.", false))), new Array("kitchBetty", new Array(new Array("ПОПРОБУЙ НЕИСПЕЧЕННЫЙ ПОРОШКООБРАЗНЫЙ ДЕСЕРТ.", "Прочь, падшая девка! Смири свои удушающие воздушные частицы искушения!!!", false))), new Array("kitchBook", new Array(new Array("ЭТА КНИГА КРУПНОВАТА ДЛЯ МАЛЕНЬКОГО И ГЛУПОГО РЕБЕНКА.", "ПОЛКОВНИК САССАКР - твоя любимейшая книга! Почти как УМНЫЙ МАЛЫЙ! Обе они - твои самые любимейшие из всех!", false))), new Array("kitchHutch", new Array(new Array("ОПУСТОШИ КОМОД.", "Хочешь сыграть в игру?", false))), new Array("kitchSplats", new Array(new Array("ИЗУЧИ СУБСТАНЦИЮ, РАЗМАЗАННУЮ ПО ПОЛУ.", false, 4, new Array(9, "Это...\n\nНефть?\n\nТы пытаешься понять, что же здесь произошло. Где твой ОТЕЦ?")))), new Array("kitchPlant", new Array(new Array("ПОНЮХАЙ РАСТЕНИЕ.", "Ничем не пахнет.", false))), new Array("studyRack", new Array(new Array("НЕ ОБРАЩАЙ ВНИМАНИЯ НА ЭТУ ЧЕПУХУ.", "Иногда ПАПА пользовался этим, дабы поразить тебя своими глупыми водевильными выходками. Серьезно, ты уже устал возводить очи горе при виде такой избитой пошлости.", false))), new Array("studyMagazine", new Array(new Array("ЧИТАЙ НЕПРИЯТНУЮ ЛИТЕРАТУРУ.", false, 4, new Array(8, "СЕРЬЕЗНЫЙ ШУТ.\n\nЖУРНАЛ ДЛЯ ТЕХ, ЧЬЕ ДЕЛО - КЛОУНАДА.")))), new Array("studyCan", new Array(new Array("УПОТРЕБИ ОРЕХ.", "Ты мог бы, но не уверен, что в этом темном измерении есть больницы.", false))), new Array("studySafe", new Array(new Array("ОТКРОЙ ЭТО ЖЕЛЕЗНОЕ ХРАНИЛИЩЕ, ПАРЕНЬ.", "Ты не знаешь комбинации!!!", false))), new Array("studyClown2", new Array(new Array("ВЫПРОСИ СОКРОВИЩА, КОТОРЫЕ ОН ОХРАНЯЕТ ПОД СОБОЙ.", "Этот дружелюбно машет рукой.\n\nНо да, на самом деле это очередная тупая хрень.", false))), new Array("studyWindow", new Array(new Array("СМОТРИ СЮДА.", false, 4, new Array(7, "Там темно. Ничего не видать на мили окрест.")))), new Array("studyPic2", new Array(new Array("Я ВИЖУ ПРЕДАТЕЛЬСТВО В ЕГО ГЛАЗАХ.", "Ой, да не такой уж он и плохой.", false))), new Array("studyPic1", new Array(new Array("ЭТОТ ЧЕЛОВЕК – ИМБЕЦИЛ. ИГНОРИРУЙ ЕГО.", "Да нормальный он. Видимо, умеет хорошо провести время, и не даёт себе погрязнуть в заботах.\n\nТы можешь лишь предположить, что ОТЕЦ повесил его криво, дабы придать ему 'эксцентричности'. ", false))), new Array("studyJoker", new Array(new Array("У НЕГО НОЖ. БУДЬ НАСТОРОЖЕ.", "Покойся с миром, Леджер.", false))), new Array("studyClown1", new Array(new Array("ВЫКИНЬ ЭТУ УРОДЛИВУЮ ВЕЩЬ В ОКНО.", "Ты не будешь так делать нарочно!\n\nВещи в окно ты выбрасываешь, только если не справишься с ИНВЕНТЕКОЙ.", false))), new Array("studyPipe", new Array(new Array("ЭТО ЧТО, ПРИСПОСОБЛЕНИЕ ДЛЯ СЖИГАНИЯ ТАБАКА?", "Фу. У тебя до сих пор вкус трубки во рту.", false))), new Array("studyMural", new Array(new Array("ИССЛЕДУЙ ВЕСЕЛУЮ ГРУППУ АРТИСТОВ.", "Когда-то Цирк Солнца подал прошение на судебный запрет против твоего отца. Никогда в жизни тебе не было так стыдно.", false))), new Array("studyCards", new Array(new Array("НУ И БАРДАК, ПАРЕНЬ.", "Хорошо, что ОТЦА не было, когда ты тут всё разбросал. Он бы тебе это припоминал до конца жизни.", false))), new Array("studyPiano", new Array(new Array("ПОИГРАЙ НА ЭТОМ ИНСТРУМЕНТЕ.", false, 7, new Array(6, "Ты играешь свой любимый навязчивый рефрен.")))), new Array("bathWindow", new Array(new Array("ВЗГЛЯНИ В ЭТО ОКНО.", false, 4, new Array(5, "По крайней мере, твой задний двор был спасен от разрушения.\n\nВроде как.")))), new Array("bathToilet", new Array(new Array("ПОХОЖЕ, ТВОЙ ВОДОПРОВОД НЕИСПРАВЕН.", "Черт, Роуз так облажалась с ремонтом уборной! Наверняка теперь даже не стоит и думать о нормальном туалете!\n\nПожалуй, можно просто отлить с края обрыва, если что...", false))), new Array("bathTub", new Array(new Array("ПОХОЖЕ, ТВОЙ ВОДОПРОВОД НЕИСПРАВЕН.", "Черт, Роуз так облажалась с ремонтом уборной! Наверняка теперь даже не стоит и думать о нормальном туалете!\n\nПожалуй, можно просто отлить с края обрыва, если что...", false))), new Array("hallPic", new Array(new Array("Я НЕ В ВОСТОРГЕ ОТ ЭТОГО САМОДОВОЛЬНОГО ПАРНЯ.", "ЧЕЛОВЕК. МИФ. ЛЕГЕНДА.\n\nЧто у тебя в рукаве, Андерсон?\n\nПосмотрите на это бесстрастное лицо. Да, из него и клещами слова не вытянешь!", false))), new Array("hallDoorDad", new Array(new Array("ОТКРОЙ.", "Комната твоего ОТЦА все еще заперта!!!", false))), new Array("roomMonsters", new Array(new Array("ИССЛЕДУЙ ЭТОГО ЖУТКОГО ЧЕЛОВЕКА И ЕГО МАЛЬЧИКА.", "'У Фреда Севеджа лицо, по которому хочется врезать', ага! Скорее, у него лицо талантливого молодого актера, с которым ты бы охотно потусовался при возможности, не будь он уже совсем взрослым.\n\nКак бы то ни было, сама мысль о монстрах, таящихся в твоем доме, пугает тебя до чертиков, и потому-то этот фильм такой потрясный. А то, что эти монстры могли бы стать твоими ЛУЧШИМИ ДРУЗЬЯМИ, делает его ВДВОЙНЕ ПОТРЯСНЫМ.", false))), new Array("roomCpu", new Array(new Array("ИЗУЧИ ЭТОТ ПРИБОР.", false, 4, new Array(4, "Кажется, ты все еще подключен к Интернету. Роуз пытается выйти с тобой на связь. Ты ответишь ей, как только полностью оценишь сложившуюся ситуацию.")))), new Array("roomBook", new Array(new Array("ТЕКСТЫ ЭТОГО СМЕХАЧА. ТЕБЕ СТОИТ ПРОИГНОРИРОВАТЬ ИХ.", "Один лишь взгляд на обложку заставляет тебя широко улыбаться. Что за замечательная книга. Гарри Андерсон - твой герой, а то, как блестяще его вывел Майк Кэвени, заставляет сполна отдать ему должное.\n\nНадо бы ее в ближайшее время перечитать.", false))), new Array("roomLathe", new Array(new Array("ЭТО ЖЕ ГИГАНТСКАЯ ШВЕЙНАЯ МАШИНКА. КАКАЯ ОТ НЕЕ МОЖЕТ БЫТЬ ПОЛЬЗА.", "Кажется, ПЕРФОКАРТЫ содержат инструкции для создания ТОТЕМОВ определенной формы. А что, если от других ПЕРФОКАРТ получатся другие ТОТЕМЫ? Это требует более пристального изучения.", false))), new Array("roomWindow", new Array(new Array("ПАРЕНЬ, ВЫГЛЯНИ В ЭТО ОКНО.", false, 4, new Array(3, "По крайней мере, твои КАЧЕЛИ ИЗ ШИНЫ остались нетронутыми. Дерево без таких качелей совсем как... \n\nКак дом без соседей. Да.")))), new Array("roomMacnme", new Array(new Array("ПОЛЮБУЙСЯ НА ЭТО ПРИКЛЮЧЕНИЕ В ОТКРЫТОМ КОСМОСЕ.", "Этот фильм... \n\nЛадно, этот фильм действительно ужасен. Даже ты не в силах сказать что-то в его защиту. Вообще, стоило бы снять этот плакат.", false))), new Array("roomGhostbusters", new Array(new Array("ВООРУЖЕННЫЕ ВРАГИ УСОПШИХ?", "Большинство людей говорит, что вторая часть вышла не такой классной, как первая, но ты думаешь, что все как раз наоборот. Было очень клево и довольно мерзко, когда они заливали друг друга из шлангов слизью, от которой люди становились злыми.\n\nВД называет эту ленту 'отвратным театром гомогейского буккакэ', что бы это ни значило.", false))), new Array("roomConair", new Array(new Array("ЭТО ДЖОН КЬЮСАК?", "Да, видимо, но черт побери, эта дверь не на шутку закрывает офигенного Кейджа. Это совсем не круто!", false))), new Array("roomTowel", new Array(new Array("ВОЗЬМИ ЭТОТ МАЛЕНЬКИЙ ПЕРСИДСКИЙ КОВРИК.", "Это полотенце, тупица! Оно наверняка пригодится, чтобы убрать этот странный беспорядок в твоей комнате. Впрочем, это может и подождать немного.", false))), new Array("roomSplats", new Array(new Array("ИЗУЧИ ЭТУ НЕПРИВЛЕКАТЕЛЬНУЮ ЖИДКОСТЬ.", "Что это такое?", false))), new Array("roomBox", new Array(new Array("ИЗУЧИ ЭТУ КОРОБКУ.", "КРОЛИКА В КОРОБКЕ НЕТ. \n\nЯ СКАЗАЛ, КРОЛИКА В КОРОБКЕ НЕТ.\n\nНУ ПОЧЕМУ КРОЛИК НЕ ЛЕЖИТ В КОРОБКЕ?", false))), new Array("roomBedDoor", new Array(new Array("ЭТА ДВЕРЬ. ОБЪЯСНИ ЭТО.", "Роуз устроила изрядный беспорядок в твоем доме. Но она вроде бы спасла твою жизнь. \n\nВРОДЕ БЫ.", false))), new Array("livingQuin2", new Array(new Array("НЕТ НЕТ НЕТ НЕТ НЕТ. НЕ ОСТАНАВЛИВАЙСЯ.", "Поверь мне, ты совсем не хочешь повернуть голову и узреть эту отвратительную вещь.", false))), new Array("livingQuin1", new Array(new Array("НЕНАВИЖУ ЭТУ ШТУКУ! ТЫ ЖЕ НЕ СТАНЕШЬ ОСМАТРИВАТЬ ЕЁ?", "КАРТИНА С АРЛЕКИНОМ? \n\nВы с Джоном испытываете одни и те же чувства, я полагаю.", false))), new Array("livingBeagle", new Array(new Array("ЭТОТ ЧЕЛОВЕК В СМЕШНЫХ ОЧКАХ. ВОСХИЩАЙСЯ ИМ.", "О, Майкл Сера. Его теплая улыбка как лучик света в эти темные времена.", false))), new Array("balcRail", new Array(new Array("ВЫГЛЯНИ ЗА ПЕРИЛА. ", "Сама мысль о них заставляет тебя немножко нервничать. Падать будешь долго, если вдруг что.", false))), new Array("balcCruxite", new Array(new Array("ИЗУЧИ ЭТУ СТРАННУЮ ГОЛУБУЮ ВАЗОЧКУ.", "Это кусок ОСНОВИТА, которому ты придал форму с помощью ТОТЕМОФРЕЗЕРА. \n\nКогда его силуэт был просканирован, АЛХИМАТОР смог создать это дерево. Как странно!", false))), new Array("balcAlchemiter", new Array(new Array("ЭТА ГИГАНТСКАЯ ПЛАТФОРМА. ЧЕРТ ВОЗЬМИ, ПАРЕНЬ, ЧТО ЭТО?", "АЛХИМАТОР создал ЯБЛОКО, или точнее, то дерево, на котором оно росло, как раз вовремя, чтобы спасти тебя от гибели. Ты, правда, не уверен, что соседям повезло так же. \n\nИнтересно, что же случилось с твоим ОТЦОМ? ", false))), new Array("char", new Array(new Array("ЭЙ ТЫ. ПАРЕНЬ.", "...\n\nЧто?", 5, new Array("charClicks", 1)))), new Array("balcDoor", new Array(new Array("ПАРЕНЬ, ОТКРОЙ ЭТУ ДВЕРЬ И ВОЙДИ ВНУТРЬ.", false, 3, new Array(5, 69, -456, -300, -850)))), new Array("livingDoorBalc", new Array(new Array("ПОДОЖДИ ВЫЙДИ ОБРАТНО, ПАРЕНЬ.", false, 3, new Array(1, 160, 250, -200, -300)))), new Array("livingDoorRoom", new Array(new Array("ПАРЕНЬ, ВОЙДИ СЮДА.", false, 3, new Array(3, -360, 250, -200, 200)))), new Array("livingDoorHall", new Array(new Array("ЧТО ЭТО ТАМ. ВПЕРЕД, ПАРЕНЬ.", false, 3, new Array(4, 200, 305, (-(stage.stageWidth) / 2), (-(stage.stageHeight) / 2))))), new Array("livingDoorKitchen", new Array(new Array("СЮДА. ЧЕРЕЗ ДВЕРЬ, ПОХОЖУЮ НА ТЕ, ЧТО В КОВБОЙСКИХ САЛУНАХ.", false, 3, new Array(8, 600, 365, (-(stage.stageWidth) / 2), (-(stage.stageHeight) * 1.3))))), new Array("livingDoorStudy", new Array(new Array("СЮДА, ПАРЕНЬ. ИДИ СЮДА.", false, 3, new Array(7, -201, 355, (-(stage.stageWidth) / 2), (stage.stageHeight / 2))))), new Array("studyDoor", new Array(new Array("ВЕРНИСЬ В БОЛЬШУЮ КОМНАТУ С ОТВРАТИТЕЛЬНЫМИ КАРТИНАМИ.", false, 3, new Array(5, 0xFF, 0, (-(stage.stageWidth) / 2), -500)))), new Array("roomDoor", new Array(new Array("ВЫЙДИ ЧЕРЕЗ ДВЕРЬ, КОТОРОЙ ЗДЕСЬ НЕТ.", false, 3, new Array(5, 109, -520, -320, -900)))), new Array("hallDoorBath", new Array(new Array("ТЕПЕРЬ ВОЙДИ ТУДА.", false, 3, new Array(2, 359, 300, (-(stage.stageWidth) / 2), -300)))), new Array("hallArrow", new Array(new Array("НЕТ, ИДИ ОБРАТНО.", false, 3, new Array(5, 109, -520, -320, -900)))), new Array("bathArrow", new Array(new Array("ВЫЙДИ НЕМЕДЛЕННО.", false, 3, new Array(4, 200, 305, (-(stage.stageWidth) / 2), (-(stage.stageHeight) / 2))))), new Array("kitchArrow", new Array(new Array("ВЕРНИСЬ В КОМНАТУ С ОСТАНКАМИ КАРГИ.", false, 3, new Array(5, 0xFF, 0, (-(stage.stageWidth) / 2), -500)))), new Array("kitchDoor", new Array(new Array("ОТКРОЙ ЭТУ ДВЕРЬ.", false, 3, new Array(9, 355, 300, ((-(stage.stageWidth) / 2) - 100), -400)))), new Array("utilArrow", new Array(new Array("ВЕРНИСЬ В ГОСТИНУЮ.", false, 3, new Array(8, 400, 200, ((-(stage.stageWidth) / 2) - 100), -550)))), new Array("livingCrux", new Array(new Array("ПОДВИНЬ ЭТО НЕПОНЯТНОЕ УСТРОЙСТВО И ПОКИНЬ СВОЙ ДОМ, ПАРЕНЬ.", "Да эта штука весит тонну! Честно говоря, ты бы удивился, если игровой курсор смог бы поднять её, по крайней мере, без существенного расхода СТРОЙМАТЕРИИ.\n\nВот надо было Роуз уронить этот дьявольский агрегат именно сюда. Сейчас, как никогда сильно, ты ощущаешь себя... Как бы лучше сказать?\n\nАх да. Запертым дома.", false))), new Array("utilDoor", new Array(new Array("ВЫЙДИ, ПАРЕНЬ.", false, 3, new Array(6, 242, 242, (-(stage.stageWidth) / 2), -300)))), new Array("outsideDoor", new Array(new Array("ОБРАТНО В ДОМ, ЖИВО.", false, 3, new Array(9, 300, 75, (-(stage.stageWidth) / 2), -500)))), new Array("kitchDrawing", new Array(new Array("ОЦЕНИ ЭТО ПРОИЗВЕДЕНИЕ ИСКУССТВА.", false, 4, new Array(2, "Отец так гордился тобой, когда увидел рисунок, что сразу же повесил его на холодильник. С тех пор он там и висит.\n\nВсю неделю.")))), new Array("kSprite", new Array(new Array("ЧТО ЭТО. ", "Теперь он выглядит иначе.\n\nПосле того, как ты укусил то ЯБЛОКО, весь твой дом очутился в странном месте. Затем ЯБЛОКО исчезло, а ПРОТОСПРАЙТ изменился. Однако, трансформация, видимо, не имела значительных последствий.\n\nТы все еще не понимаешь ни слова из болтовни этого идиота.", 6, new Array("spriteClicks", 1)))), new Array("livingDolls", new Array(new Array("УНИЧТОЖЬ ЭТИХ КРОШЕЧНЫХ СОЛДАТ ВЕСЕЛЬЯ.", "Они едва ли стоят того, чтобы так утруждать себя. \n\nВряд ли ты выручишь что-то за них даже на гаражной распродаже. Разве что скупую горсть медяков да пинок промеж ног за всех разом.", false))), new Array("livingPokers", new Array(new Array("ВООРУЖИСЬ ЭТИМИ ОРУДИЯМИ БОЯ.", "Каждая из этих штук могла бы стать неплохим оружием. Если бы только твой БОЕВОЙ СПОСОБУС не был уже занят... Что поделать.", false))), new Array("livingUrn", new Array(new Array("ОПРОКИНЬ ЭТУ УРНУ СЕЙЧАС ЖЕ!", "Это было бы хамством по отношению к твоей БАБУЛЕ! Ты не будешь это делать! Или, по крайней мере, не специально! \n\nПожалуй, даже хорошо, что она сейчас не видит весь этот ужас. С другой стороны, в такой непростой ситуации тебе бы не помешала ее накопленная с годами мудрость...", false))), new Array("livingSoot", new Array(new Array("ВОЗЬМИ ГОРСТЬ ЭТОЙ САЖИ ДЛЯ ДАЛЬНЕЙШЕГО ИСПОЛЬЗОВАНИЯ, ПАРЕНЬ.", "Внутри этого камина очень грязно, и у тебя нет никакого желания прикасаться к саже! \n\nКроме того, тебе хорошо известно, что в ней содержится большая доля асбеста.", false))), new Array("livingLid", new Array(new Array("ИСПОЛЬЗУЙ ЭТО, ЧТОБЫ ЗАПЕЧАТАТЬ ТО ОТВЕРСТИЕ.", "Ах, если бы можно было просто закрыть ОСНОВОПРЕСС, и всё бы тут же вернулось на круги своя! Увы, Труба Пандоры уже открыта.", false))), new Array("livingPie", new Array(new Array("МАЛЕНЬКАЯ ДЕСЕРТНИЦА? БЕСПОЛЕЗНО ", "Если подумать, было довольно весело, когда ОТЕЦ влепил из нее тебе в лицо пирогом. Опять попался на уловку старика!", false))), new Array("livingLamp", new Array(new Array("ПОЧЕМУ ЭТОТ ЧЕЛОВЕЧЕК СТОИТ ТАМ?", "Этот АРЛЕКИН всегда готов дарить тебе свой свет, читаешь ли ты книгу или просто наслаждаешься курением хорошей трубки.", false))), new Array("livingQuin4", new Array(new Array("ЭЭЭ, НЕТ. ", "Так недосягаемо. Так загадочно.", false))), new Array("livingQuin3", new Array(new Array("МЕРЗОСТЬ. НЕ ОБРАЩАЙ ВНИМАНИЯ НА ЭТУ ГРЯЗЬ.", "Что он вообще делает? Играет с мячом, или что?\n\nКлоуны – это тупо.", false))), new Array("livingHead", new Array(new Array("НУ И ЗАЧЕМ НУЖЕН ЭТОТ МУСОР?", "Ладно, даже ТЫ готов признать. Он жутко смешной!\n\nхехехехе!", false))), new Array("vault01", new Array(new Array("ПРОКАЗЫ.", false, 3, new Array(10, 147, 422, -200, -100)))), new Array("PSSafe", new Array(new Array("Достать руки из сейфа.", "У тебя уже ЕСТЬ руки, тупица!", false), new Array("Выстрели в сейф.", "Из чего?", false), new Array("Открой сейф.", false, 3, new Array(6, 242, 242, (-(stage.stageWidth) / 2), -300)))), new Array("PSDesk", new Array(new Array("Сделай форт из стола и посети ВООБРАЖЕЛЯНДИЮ!", "О... ух ты... \n\nСлушай... Чувак, отсыпь, чем ты там упарываешься?!", false))), new Array("PSWindow", new Array(new Array("Отключи окно ", "...Это же окно...", false), new Array("Подбери окно ", "Это настолько невозможно, что мне стало плохо.", false))), new Array("PSPumpkin", new Array(new Array("ОГО, ЧТО? ЭТО ТЫКВА? ОТПАДОТПАДОТПАД!!!!!!1111", "Нет, это граффити в виде тыквы...\n\nФАКТЫ О РАЗРАБОТКЕ:\nВсе элементы (кроме тыквы) нарисованы Andrew Hussie в Фотошопе, импортированы и впоследствии векторизованы, организованы, именованы и заскриптованы Alexis 'Gankro' Beingessner... Который таки чел... \n148 Объектов, 538 линий, 140 битовых карт, 9 душ, 2 тыквы, Длина этой линии кода – 16732 символа...", false))));
curAction = walk;
}
function frame3(){
stop();
songChan = new Sound(req2).play(0, 9999);
}
function frame7(){
songChan.stop();
}
function frame8(){
tScale = 0.75;
stage.quality = "medium";
songChan = new Sound(req2).play(0, 9999);
}
function frame12(){
tScale = 1;
stage.quality = "low";
songChan.stop();
}
public function act(_arg1, _arg2):void{
switch (_arg1){
case 1:
char.gotoAndPlay(_arg2);
return;
case 2:
curAction[interacting][1].splice(choice, 1);
return;
case 3:
changing = true;
curRoom = _arg2[0];
newPos = new Point(_arg2[1], _arg2[2]);
camPos = new Point(_arg2[3], _arg2[4]);
disp = new Point(0, 0);
return;
case 4:
hud.zooms.gotoAndStop(_arg2[0]);
fText = _arg2[1];
zooming = true;
return;
case 5:
curAction[interacting][1][choice] = this[_arg2[0]][_arg2[1]];
return;
case 6:
curAction[interacting][1][choice] = this[_arg2[0]][_arg2[1]];
kSprite.babble.play();
return;
case 7:
hud.zooms.gotoAndStop(_arg2[0]);
fText = _arg2[1];
zooming = true;
songChan.stop();
songChan = new Sound(req3).play(0, 9999);
return;
};
}
public function keyUp(_arg1:KeyboardEvent):void{
pressed[_arg1.keyCode] = false;
}
public function enterFrame(_arg1:Event):void{
var _local2:int;
var _local3:int;
var _local4:Boolean;
var _local5:int;
var _local6:int;
var _local7:int;
var _local8:int;
var _local9:int;
if (!pausing){
if (!zooming){
if (!changing){
if (((pressed[Keyboard.LEFT]) || (pressed[65]))){
vel.x = (vel.x - ((spd / 3.5) * scale));
if (((!(keying)) || (!((scaler == -1))))){
scaler = -1;
char.gotoAndPlay(("walk" + facing));
keying = true;
moving = false;
};
} else {
if (((pressed[Keyboard.RIGHT]) || (pressed[68]))){
vel.x = (vel.x + ((spd / 3.5) * scale));
if (((!(keying)) || (!((scaler == 1))))){
scaler = 1;
char.gotoAndPlay(("walk" + facing));
keying = true;
moving = false;
};
};
};
if (((pressed[Keyboard.UP]) || (pressed[87]))){
vel.y = (vel.y - (((spd / 3.5) * yDiff) * scale));
if (((!(keying)) || (!((facing == "Back"))))){
facing = "Back";
char.gotoAndPlay(("walk" + facing));
keying = true;
moving = false;
};
} else {
if (((pressed[Keyboard.DOWN]) || (pressed[83]))){
vel.y = (vel.y + (((spd / 3.5) * yDiff) * scale));
if (((!(keying)) || (!((facing == "Front"))))){
facing = "Front";
char.gotoAndPlay(("walk" + facing));
keying = true;
moving = false;
};
};
};
if (((((((((((((((((keying) && (!(pressed[Keyboard.LEFT])))) && (!(pressed[Keyboard.RIGHT])))) && (!(pressed[Keyboard.UP])))) && (!(pressed[Keyboard.DOWN])))) && (!(pressed[65])))) && (!(pressed[68])))) && (!(pressed[83])))) && (!(pressed[87])))){
char.gotoAndPlay(("still" + facing));
keying = false;
vel = new Point(0, 0);
};
if (!keying){
if (moving){
dist.x = (targ.x - pos.x);
dist.y = ((targ.y - pos.y) * yDiff);
tDist = Math.sqrt(((dist.x * dist.x) + (dist.y * dist.y)));
if (tDist <= (spd * scale)){
pos.x = targ.x;
pos.y = targ.y;
moving = false;
char.gotoAndPlay(("still" + facing));
} else {
pos.x = (pos.x + ((Math.cos(ang) * spd) * scale));
pos.y = (pos.y + (((Math.sin(ang) * spd) * scale) * yDiff));
};
if (char.alpha == 1){
_local6 = 0;
while (_local6 < 40) {
if (!map.hitTestPoint((pos.x - ((Math.cos((((Math.PI * 2) / 40) * _local6)) * char.shade.width) / 2)), (pos.y - ((Math.sin((((Math.PI * 2) / 40) * _local6)) * char.shade.height) / 2)), true)){
pos.x = (pos.x - ((Math.cos(ang) * spd) * scale));
pos.y = (pos.y - (((Math.sin(ang) * spd) * scale) * yDiff));
moving = false;
char.gotoAndPlay(("still" + facing));
break;
};
_local6++;
};
} else {
_local6 = 40;
};
if ((((_local6 == 40)) && (!(looking)))){
if ((((dist.x < 0)) && (((map.x + x) <= 50)))){
poser.x = (poser.x - ((Math.cos(ang) * spd) * scale));
};
if ((((dist.x > 0)) && ((((x + map.width) + map.x) >= (stage.stageWidth - 50))))){
poser.x = (poser.x - ((Math.cos(ang) * spd) * scale));
};
if (dist.y > 0){
poser.y = (poser.y - (((Math.sin(ang) * spd) * scale) * yDiff));
};
if (dist.y < 0){
poser.y = (poser.y - (((Math.sin(ang) * spd) * scale) * yDiff));
};
};
};
};
if (char.alpha == 1){
shifted = new Point(pos.x, pos.y);
if (((!((vel.x == 0))) || (!((vel.y == 0))))){
_local7 = 0;
while (_local7 < 7) {
while (!(map.hitTestPoint(((pos.x + (vel.x * 0.8)) - ((Math.cos((((Math.PI * 2) / 7) * _local7)) * char.shade.width) / 2)), ((pos.y + (vel.y * 0.8)) - ((Math.sin((((Math.PI * 2) / 7) * _local7)) * char.shade.height) / 2)), true))) {
pos.x = (pos.x + (Math.cos((((Math.PI * 2) / 7) * _local7)) * 0.1));
pos.y = (pos.y + (Math.sin((((Math.PI * 2) / 7) * _local7)) * 0.1));
};
_local7++;
};
};
if (((((shifted.x - pos.x) < 0)) && (((map.x + x) <= 50)))){
poser.x = (poser.x + (shifted.x - pos.x));
};
if (((((shifted.x - pos.x) > 0)) && ((((x + map.width) + map.x) >= (stage.stageWidth - 50))))){
poser.x = (poser.x + (shifted.x - pos.x));
};
poser.y = (poser.y + (shifted.y - pos.y));
};
if (hud.fader.alpha > 0){
hud.fader.alpha = (hud.fader.alpha - 0.1);
};
} else {
if (hud.fader.alpha < 1.2){
hud.fader.alpha = (hud.fader.alpha + 0.1);
} else {
_local8 = (numChildren - 1);
while (_local8 > 0) {
if (((((((((((((getChildAt(_local8)) && (!((getChildAt(_local8) == char))))) && (!((getChildAt(_local8) == kSprite))))) && (!((getChildAt(_local8) == hud))))) && (!((getChildAt(_local8) == options))))) && (!((getChildAt(_local8) == map))))) && (!((getChildAt(_local8) == mousey))))){
if (((((((((!((getChildAt(_local8) == spacer1))) && (!((getChildAt(_local8) == spacer2))))) && (!((getChildAt(_local8) == spacer3))))) && (!((getChildAt(_local8) == spacer4))))) && (!((getChildAt(_local8) == spacer5))))){
removeChildAt(_local8);
};
};
_local8--;
};
gotoAndStop((curRoom + mainF));
char.gotoAndPlay("stillFront");
changing = false;
pos.x = newPos.x;
pos.y = newPos.y;
x = (poser.x = (-(pos.x) - camPos.x));
y = (poser.y = (-(pos.x) - camPos.y));
};
};
looking = false;
_local2 = 0;
while (_local2 < hotSpots[((currentFrame - mainF) - 1)].length) {
dist.x = (char.x - hotSpots[((currentFrame - mainF) - 1)][_local2][0]);
dist.y = (char.y - hotSpots[((currentFrame - mainF) - 1)][_local2][1]);
tDist = Math.sqrt(((dist.x * dist.x) + (dist.y * dist.y)));
if (tDist < 100){
looking = true;
artPos = new Point(hotSpots[((currentFrame - mainF) - 1)][_local2][2], hotSpots[((currentFrame - mainF) - 1)][_local2][3]);
};
_local2++;
};
if (looking){
tDist = Math.sqrt((Math.pow((artPos.x - x), 2) + Math.pow((artPos.y - y), 2)));
if (tDist > 6){
x = (x + ((artPos.x - x) / 18));
y = (y + ((artPos.y - y) / 18));
disp.x = (disp.x + ((artPos.x - x) / 18));
disp.y = (disp.y + ((artPos.y - y) / 18));
};
};
kSprite.scaleY = (char.scaleY = (scale = (((pos.y / stage.stageHeight) * scaleRate) + tScale)));
if (char.x != kSprite.x){
kSprite.scaleX = (kSprite.scaleY * (Math.abs((kSprite.x - char.x)) / (kSprite.x - char.x)));
};
char.scaleX = (char.scaleY * scaler);
if (keying){
char.x = (pos.x = (pos.x + (vel.x = (vel.x * 0.8))));
char.y = (pos.y = (pos.y + (vel.y = (vel.y * 0.8))));
if ((((vel.x < 0)) && (((map.x + x) <= 50)))){
poser.x = (poser.x - vel.x);
};
if ((((vel.x > 0)) && ((((x + map.width) + map.x) >= (stage.stageWidth - 50))))){
poser.x = (poser.x - vel.x);
};
poser.y = (poser.y - vel.y);
} else {
char.x = pos.x;
char.y = pos.y;
};
if (!looking){
x = (x + ((poser.x - x) / 10));
y = (y + ((poser.y - y) / 10));
};
hud.x = -(x);
hud.y = -(y);
setChildIndex(kSprite, (numChildren - 5));
setChildIndex(char, (numChildren - 4));
setChildIndex(hud, (numChildren - 3));
setChildIndex(options, (numChildren - 2));
setChildIndex(mousey, (numChildren - 1));
_local3 = 0;
while (_local3 < depthed.length) {
if (((this[depthed[_local3]]) && (contains(this[depthed[_local3]])))){
if (char.y < this[depthed[_local3]].y){
if (getChildIndex(char) > getChildIndex(this[depthed[_local3]])){
swapChildren(char, this[depthed[_local3]]);
setChildIndex(kSprite, (getChildIndex(char) - 1));
};
} else {
if ((numChildren - 3) < getChildIndex(this[depthed[_local3]])){
swapChildren(char, this[depthed[_local3]]);
setChildIndex(kSprite, (getChildIndex(char) - 1));
};
};
};
_local3++;
};
if ((((((hud.currentFrame == 2)) && (hud.promp))) && ((hud.promp.currentFrame == 14)))){
hud.promp.gotoAndStop(1);
hud.gotoAndStop(1);
};
kSprite.x = (spritePos.x = (spritePos.x + ((char.x - spritePos.x) / 30)));
spritePos.y = (spritePos.y + ((char.y - spritePos.y) / 30));
kSprite.y = (spritePos.y + (Math.sin((spriteFloat = (spriteFloat + 0.1))) * 40));
_local4 = false;
_local5 = 0;
while (_local5 < inters.length) {
if (((this[inters[_local5]]) && (this[inters[_local5]].hitTestPoint(mouseX, mouseY, true)))){
_local4 = true;
break;
};
_local5++;
};
if (options.hitTestPoint(mouseX, mouseY, true)){
_local4 = true;
};
if (_local4){
mousey.gotoAndStop(2);
} else {
mousey.gotoAndStop(1);
};
};
};
if ((((((((hud.currentFrame == 2)) && (hud.promp))) && ((hud.promp.currentFrame == 8)))) && (hud.promp.infoer))){
textDelay = (textDelay + 2);
hud.promp.infoer.text = texter.substr(0, textDelay);
};
if (options.numChildren > 1){
textDelay2 = (textDelay2 + 2);
_local9 = 0;
while (_local9 < texts.length) {
texts[_local9].setTextFormat(textz);
if (textDelay2 < texts[_local9].length){
texts[_local9].setTextFormat(new TextFormat("Courier New", 14, 0, true), textDelay2, texts[_local9].length);
};
_local9++;
};
};
stage.focus = stage;
mousey.x = mouseX;
mousey.y = mouseY;
}
public function mouseMove(_arg1:MouseEvent):void{
Mouse.hide();
}
public function mouseDown(_arg1:MouseEvent):void{
var _local2:int;
var _local3:int;
var _local4:int;
var _local5:int;
var _local6:int;
if (((!(pausing)) && (!(changing)))){
if (!zooming){
if (hud.currentFrame == 1){
if (((!(hud.front.hitTestPoint(mouseX, mouseY, true))) && (!(hud.control.hitTestPoint(mouseX, mouseY, true))))){
chosen = false;
if (options.numChildren > 0){
if (options.hitTestPoint(mouseX, mouseY, true)){
choice = ((mouseY - options.getChildAt(1).y) / options.getChildAt(1).height);
if ((((choice >= 0)) && ((choice < curAction[interacting][1].length)))){
if (curAction[interacting][1][choice][1]){
hud.gotoAndStop(2);
texter = curAction[interacting][1][choice][1];
textDelay = 0;
};
if (curAction[interacting][1][choice][2]){
act(curAction[interacting][1][choice][2], curAction[interacting][1][choice][3]);
};
chosen = true;
};
};
};
while (options.numChildren > 0) {
options.removeChildAt(0);
};
options.graphics.clear();
if (!chosen){
interacting = -1;
_local2 = 0;
while (_local2 < inters.length) {
if (((this[inters[_local2]]) && (this[inters[_local2]].hitTestPoint(mouseX, mouseY, true)))){
interacting = _local2;
break;
};
_local2++;
};
if (interacting >= 0){
_local3 = 0;
while (_local3 < curAction.length) {
_local4 = 200;
_local5 = 0;
while (_local5 < curAction[_local3][1].length) {
if ((curAction[_local3][1][_local5][0].length * 8) > 172){
_local4 = ((curAction[_local3][1][_local5][0].length * 8) + 28);
};
_local5++;
};
mouser.x = mouseX;
mouser.y = mouseY;
while (((mouser.x + x) + _local4) > stage.stageWidth) {
mouser.x = (mouser.x - 2);
};
if (((mouser.y + y) + (18 * curAction[_local3][1].length)) > stage.stageHeight){
mouser.y = (mouser.y - (18 * curAction[_local3][1].length));
};
if (mouser.y < -(y)){
mouser.y = (((-18 * curAction[_local3][1].length) + (y + stage.stageHeight)) - 20);
};
if (curAction[_local3][0] == inters[interacting]){
interacting = _local3;
tempMc = options.addChild(new optionTop());
tempMc.x = mouser.x;
tempMc.y = mouser.y;
tempMc.width = _local4;
texts = new Array();
_local6 = 0;
while (_local6 < curAction[_local3][1].length) {
tempMc = options.addChild(new optionCore());
tempMc.x = mouser.x;
tempMc.y = (mouser.y + (_local6 * tempMc.height));
tempMc.width = _local4;
tempText = new TextField();
tempText.x = tempMc.x;
tempText.y = (mouser.y + (_local6 * tempMc.height));
tempText.width = _local4;
tempText.height = tempMc.height;
tempText.text = (" > " + curAction[_local3][1][_local6][0]);
tempText.selectable = false;
tempText.setTextFormat(textz);
options.addChild(tempText);
texts.push(tempText);
tempMc = options.addChild(new optionBtn());
tempMc.x = mouser.x;
tempMc.y = (mouser.y + (_local6 * tempMc.height));
tempMc.width = _local4;
_local6++;
};
tempMc = options.addChild(new optionTop());
tempMc.width = _local4;
tempMc.scaleY = -1;
tempMc.x = mouser.x;
tempMc.y = (mouser.y + (options.getChildAt(1).height * curAction[_local3][1].length));
textDelay2 = 0;
break;
} else {
if (_local3 == (curAction.length - 1)){
hud.gotoAndStop(2);
texter = idiotMessages[Math.round((Math.random() * (idiotMessages.length - 1)))];
textDelay = 0;
};
};
_local3++;
};
} else {
if (curAction == walk){
targ.x = mouseX;
targ.y = mouseY;
ang = Math.atan2(((targ.y - pos.y) / yDiff), (targ.x - pos.x));
if ((((ang > (Math.PI * -0.5))) && ((ang < (Math.PI * 0.5))))){
scaler = 1;
} else {
scaler = -1;
};
if ((((ang > 0)) && ((ang < Math.PI)))){
if (((!(moving)) || (!((facing == "Front"))))){
facing = "Front";
char.gotoAndPlay(("walk" + facing));
};
} else {
if (((!(moving)) || (!((facing == "Back"))))){
facing = "Back";
char.gotoAndPlay(("walk" + facing));
};
};
moving = true;
vel = new Point(0, 0);
};
};
};
} else {
while (options.numChildren > 0) {
options.removeChildAt(0);
};
if (hud.control.hitTestPoint(mouseX, mouseY, true)){
hud.gotoAndStop(2);
hud.control.gotoAndStop(2);
texter = "Для передвижения используй мышь, стрелки или WASD. Щелкай на различные обьекты, чтобы открыть меню команд! Эту флешку весьма неплохо программировал Alexis 'Gankro' Beingessner. Перевод выполнен командой RTFelt. Все права на Homestuck и MSPaintAdventures принадлежат Andrew Hussie.";
};
options.graphics.clear();
if (hud.examine.hitTestPoint(mouseX, mouseY, true)){
curAction = examine;
mousey.gotoAndStop(1);
};
if (hud.manhandle.hitTestPoint(mouseX, mouseY, true)){
curAction = manhandle;
mousey.gotoAndStop(2);
};
if (hud.walk.hitTestPoint(mouseX, mouseY, true)){
curAction = walk;
mousey.gotoAndStop(3);
};
};
} else {
hud.promp.play();
};
} else {
if (hud.currentFrame == 1){
hud.gotoAndStop(2);
texter = fText;
textDelay = 0;
} else {
hud.zooms.gotoAndStop(1);
hud.promp.play();
zooming = false;
};
};
};
}
public function progresser(_arg1:ProgressEvent):void{
if (((_arg1.bytesLoaded / _arg1.bytesTotal) * 100) == 100){
play();
this.loaderInfo.removeEventListener(ProgressEvent.PROGRESS, progresser);
};
loader.text = (((_arg1.bytesLoaded / _arg1.bytesTotal) * 100) + "% loaded...");
}
public function keyDown(_arg1:KeyboardEvent):void{
if ((((((_arg1.keyCode == 84)) && (!(pressed[84])))) && (_arg1.ctrlKey))){
kSprite.play();
char.rotation = (char.rotation + 180);
if (char.alpha == 1){
char.filters = [new BlurFilter(10, 10, 2), new GlowFilter(0xAAAA00, 1, 20, 20, 5, 2)];
char.alpha = 0.5;
songChan.stop();
songChan = song.play(0, 99999);
} else {
char.filters = [];
char.alpha = 1;
songChan.stop();
};
};
pressed[_arg1.keyCode] = true;
}
}
}//package Homestuck1_fla
Section 4 (348 B)
//textprompt_100 (Homestuck1_fla.textprompt_100)
package Homestuck1_fla {
import flash.display.*;
import flash.text.*;
public dynamic class textprompt_100 extends MovieClip {
public var infoer:TextField;
public function textprompt_100(){
addFrameScript(7, frame8);
}
function frame8(){
stop();
}
}
}//package Homestuck1_fla
Section 5 (270 B)
//vDisp_98 (Homestuck1_fla.vDisp_98)
package Homestuck1_fla {
import flash.display.*;
public dynamic class vDisp_98 extends MovieClip {
public function vDisp_98(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Homestuck1_fla
Section 6 (270 B)
//zooms_99 (Homestuck1_fla.zooms_99)
package Homestuck1_fla {
import flash.display.*;
public dynamic class zooms_99 extends MovieClip {
public function zooms_99(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Homestuck1_fla
Section 7 (482 B)
//character (character)
package {
import flash.display.*;
public dynamic class character extends MovieClip {
public var shade:MovieClip;
public function character(){
addFrameScript(1, frame2, 17, frame18, 20, frame21, 34, frame35);
}
function frame18(){
gotoAndPlay("walkFront");
}
function frame21(){
gotoAndPlay("stillBack");
}
function frame2(){
gotoAndPlay("stillFront");
}
function frame35(){
gotoAndPlay("walkBack");
}
}
}//package
Section 8 (547 B)
//hudd (hudd)
package {
import flash.display.*;
public dynamic class hudd extends MovieClip {
public var zooms:MovieClip;
public var manhandle:MovieClip;
public var promp:MovieClip;
public var front:MovieClip;
public var vDisp:MovieClip;
public var control:MovieClip;
public var fader:MovieClip;
public var examine:MovieClip;
public var walk:MovieClip;
public var vSlide:MovieClip;
public var vbar:MovieClip;
public function hudd(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 9 (320 B)
//kernelSprite (kernelSprite)
package {
import flash.display.*;
public dynamic class kernelSprite extends MovieClip {
public var babble:MovieClip;
public function kernelSprite(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
stop();
}
function frame2(){
stop();
}
}
}//package
Section 10 (217 B)
//mouses (mouses)
package {
import flash.display.*;
public dynamic class mouses extends MovieClip {
public function mouses(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 11 (130 B)
//optionBtn (optionBtn)
package {
import flash.display.*;
public dynamic class optionBtn extends SimpleButton {
}
}//package
Section 12 (130 B)
//optionCore (optionCore)
package {
import flash.display.*;
public dynamic class optionCore extends MovieClip {
}
}//package
Section 13 (126 B)
//optionTop (optionTop)
package {
import flash.display.*;
public dynamic class optionTop extends MovieClip {
}
}//package