Section 1
//Color (fl.motion.Color)
package fl.motion {
import flash.display.*;
import flash.geom.*;
public class Color extends ColorTransform {
private var _tintMultiplier:Number;// = 0
private var _tintColor:Number;// = 0
public function Color(_arg1:Number=1, _arg2:Number=1, _arg3:Number=1, _arg4:Number=1, _arg5:Number=0, _arg6:Number=0, _arg7:Number=0, _arg8:Number=0){
_tintColor = 0;
_tintMultiplier = 0;
super(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8);
}
public function setTint(_arg1:uint, _arg2:Number):void{
var _local3:uint;
var _local4:uint;
var _local5:uint;
this._tintColor = _arg1;
this._tintMultiplier = _arg2;
this.redMultiplier = (this.greenMultiplier = (this.blueMultiplier = (1 - _arg2)));
_local3 = ((_arg1 >> 16) & 0xFF);
_local4 = ((_arg1 >> 8) & 0xFF);
_local5 = (_arg1 & 0xFF);
this.redOffset = Math.round((_local3 * _arg2));
this.greenOffset = Math.round((_local4 * _arg2));
this.blueOffset = Math.round((_local5 * _arg2));
}
public function set tintColor(_arg1:uint):void{
this.setTint(_arg1, this.tintMultiplier);
}
public function get brightness():Number{
return ((this.redOffset) ? (1 - this.redMultiplier) : (this.redMultiplier - 1));
}
private function deriveTintColor():uint{
var _local1:Number;
var _local2:uint;
var _local3:uint;
var _local4:uint;
var _local5:uint;
_local1 = (1 / this.tintMultiplier);
_local2 = Math.round((this.redOffset * _local1));
_local3 = Math.round((this.greenOffset * _local1));
_local4 = Math.round((this.blueOffset * _local1));
_local5 = (((_local2 << 16) | (_local3 << 8)) | _local4);
return (_local5);
}
public function get tintMultiplier():Number{
return (this._tintMultiplier);
}
public function get tintColor():uint{
return (this._tintColor);
}
public function set brightness(_arg1:Number):void{
var _local2:Number;
var _local3:Number;
if (_arg1 > 1){
_arg1 = 1;
} else {
if (_arg1 < -1){
_arg1 = -1;
};
};
_local2 = (1 - Math.abs(_arg1));
_local3 = 0;
if (_arg1 > 0){
_local3 = (_arg1 * 0xFF);
};
this.redMultiplier = (this.greenMultiplier = (this.blueMultiplier = _local2));
this.redOffset = (this.greenOffset = (this.blueOffset = _local3));
}
public function set tintMultiplier(_arg1:Number):void{
this.setTint(this.tintColor, _arg1);
}
private function parseXML(_arg1:XML=null):Color{
var _local2:XML;
var _local3:XML;
var _local4:String;
var _local5:uint;
if (!_arg1){
return (this);
};
_local2 = _arg1.elements()[0];
if (!_local2){
return (this);
};
for each (_local3 in _local2.attributes()) {
_local4 = _local3.localName();
if (_local4 == "tintColor"){
_local5 = (Number(_local3.toString()) as uint);
this.tintColor = _local5;
} else {
this[_local4] = Number(_local3.toString());
};
};
return (this);
}
public static function interpolateColor(_arg1:uint, _arg2:uint, _arg3:Number):uint{
var _local4:Number;
var _local5:uint;
var _local6:uint;
var _local7:uint;
var _local8:uint;
var _local9:uint;
var _local10:uint;
var _local11:uint;
var _local12:uint;
var _local13:uint;
var _local14:uint;
var _local15:uint;
var _local16:uint;
var _local17:uint;
_local4 = (1 - _arg3);
_local5 = ((_arg1 >> 24) & 0xFF);
_local6 = ((_arg1 >> 16) & 0xFF);
_local7 = ((_arg1 >> 8) & 0xFF);
_local8 = (_arg1 & 0xFF);
_local9 = ((_arg2 >> 24) & 0xFF);
_local10 = ((_arg2 >> 16) & 0xFF);
_local11 = ((_arg2 >> 8) & 0xFF);
_local12 = (_arg2 & 0xFF);
_local13 = ((_local5 * _local4) + (_local9 * _arg3));
_local14 = ((_local6 * _local4) + (_local10 * _arg3));
_local15 = ((_local7 * _local4) + (_local11 * _arg3));
_local16 = ((_local8 * _local4) + (_local12 * _arg3));
_local17 = ((((_local13 << 24) | (_local14 << 16)) | (_local15 << 8)) | _local16);
return (_local17);
}
public static function interpolateTransform(_arg1:ColorTransform, _arg2:ColorTransform, _arg3:Number):ColorTransform{
var _local4:Number;
var _local5:ColorTransform;
_local4 = (1 - _arg3);
_local5 = new ColorTransform(((_arg1.redMultiplier * _local4) + (_arg2.redMultiplier * _arg3)), ((_arg1.greenMultiplier * _local4) + (_arg2.greenMultiplier * _arg3)), ((_arg1.blueMultiplier * _local4) + (_arg2.blueMultiplier * _arg3)), ((_arg1.alphaMultiplier * _local4) + (_arg2.alphaMultiplier * _arg3)), ((_arg1.redOffset * _local4) + (_arg2.redOffset * _arg3)), ((_arg1.greenOffset * _local4) + (_arg2.greenOffset * _arg3)), ((_arg1.blueOffset * _local4) + (_arg2.blueOffset * _arg3)), ((_arg1.alphaOffset * _local4) + (_arg2.alphaOffset * _arg3)));
return (_local5);
}
public static function fromXML(_arg1:XML):Color{
return (Color(new (Color).parseXML(_arg1)));
}
}
}//package fl.motion
Section 2
//Regular (fl.transitions.easing.Regular)
package fl.transitions.easing {
public class Regular {
public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = (_arg1 / _arg4);
return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2));
}
public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = (_arg1 / _arg4);
return ((((_arg3 * _arg1) * _arg1) + _arg2));
}
public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((_arg3 / 2) * _arg1) * _arg1) + _arg2));
};
--_arg1;
return ((((-(_arg3) / 2) * ((_arg1 * (_arg1 - 2)) - 1)) + _arg2));
}
}
}//package fl.transitions.easing
Section 3
//Transition (fl.transitions.Transition)
package fl.transitions {
import flash.display.*;
import flash.events.*;
import flash.geom.*;
public class Transition extends EventDispatcher {
protected var _direction:uint;// = 0
protected var _progress:Number;
public var ID:int;
protected var _twn:Tween;
protected var _content:MovieClip;
protected var _height:Number;// = NAN
protected var _width:Number;// = NAN
protected var _outerBounds:Rectangle;
protected var _easing:Function;
protected var _innerBounds:Rectangle;
protected var _manager:TransitionManager;
protected var _duration:Number;// = 2
public static const IN:uint = 0;
public static const OUT:uint = 1;
public function Transition(_arg1:MovieClip, _arg2:Object, _arg3:TransitionManager){
_direction = 0;
_duration = 2;
_width = NaN;
_height = NaN;
super();
this.content = _arg1;
this.direction = _arg2.direction;
this.duration = _arg2.duration;
this.easing = _arg2.easing;
this.manager = _arg3;
this._innerBounds = this.manager._innerBounds;
this._outerBounds = this.manager._outerBounds;
this._width = this.manager._width;
this._height = this.manager._height;
this._resetTween();
}
public function stop():void{
this._twn.fforward();
this._twn.stop();
}
private function _resetTween():void{
if (this._twn){
this._twn.stop();
this._twn.removeEventListener(TweenEvent.MOTION_FINISH, this.onMotionFinished);
};
this._twn = new Tween(this, "", this.easing, 0, 1, this.duration, true);
this._twn.stop();
this._twn.prop = "progress";
this._twn.addEventListener(TweenEvent.MOTION_FINISH, this.onMotionFinished, false, 0, true);
}
public function onMotionFinished(_arg1:Object):void{
if (this.direction == Transition.OUT){
this.dispatchEvent(new Event("transitionOutDone"));
} else {
this.dispatchEvent(new Event("transitionInDone"));
};
}
public function get duration():Number{
return (this._duration);
}
public function set duration(_arg1:Number):void{
if (_arg1){
this._duration = _arg1;
if (this._twn){
this._twn.duration = _arg1;
};
};
}
public function get easing():Function{
return (this._easing);
}
public function get manager():TransitionManager{
return (this._manager);
}
public function get progress():Number{
return (this._progress);
}
protected function _render(_arg1:Number):void{
}
public function get type():Class{
return (Transition);
}
public function drawCircle(_arg1:MovieClip, _arg2:Number, _arg3:Number, _arg4:Number):void{
_arg1.graphics.moveTo((_arg2 + _arg4), _arg3);
_arg1.graphics.curveTo((_arg4 + _arg2), ((Math.tan((Math.PI / 8)) * _arg4) + _arg3), ((Math.sin((Math.PI / 4)) * _arg4) + _arg2), ((Math.sin((Math.PI / 4)) * _arg4) + _arg3));
_arg1.graphics.curveTo(((Math.tan((Math.PI / 8)) * _arg4) + _arg2), (_arg4 + _arg3), _arg2, (_arg4 + _arg3));
_arg1.graphics.curveTo(((-(Math.tan((Math.PI / 8))) * _arg4) + _arg2), (_arg4 + _arg3), ((-(Math.sin((Math.PI / 4))) * _arg4) + _arg2), ((Math.sin((Math.PI / 4)) * _arg4) + _arg3));
_arg1.graphics.curveTo((-(_arg4) + _arg2), ((Math.tan((Math.PI / 8)) * _arg4) + _arg3), (-(_arg4) + _arg2), _arg3);
_arg1.graphics.curveTo((-(_arg4) + _arg2), ((-(Math.tan((Math.PI / 8))) * _arg4) + _arg3), ((-(Math.sin((Math.PI / 4))) * _arg4) + _arg2), ((-(Math.sin((Math.PI / 4))) * _arg4) + _arg3));
_arg1.graphics.curveTo(((-(Math.tan((Math.PI / 8))) * _arg4) + _arg2), (-(_arg4) + _arg3), _arg2, (-(_arg4) + _arg3));
_arg1.graphics.curveTo(((Math.tan((Math.PI / 8)) * _arg4) + _arg2), (-(_arg4) + _arg3), ((Math.sin((Math.PI / 4)) * _arg4) + _arg2), ((-(Math.sin((Math.PI / 4))) * _arg4) + _arg3));
_arg1.graphics.curveTo((_arg4 + _arg2), ((-(Math.tan((Math.PI / 8))) * _arg4) + _arg3), (_arg4 + _arg2), _arg3);
}
public function cleanUp():void{
this.removeEventListener("transitionInDone", this._manager.transitionInDone);
this.removeEventListener("transitionOutDone", this._manager.transitionOutDone);
this.stop();
}
public function set easing(_arg1:Function):void{
this._easing = _arg1;
if (this._twn){
this._twn.func = _arg1;
};
}
public function set manager(_arg1:TransitionManager):void{
if (this._manager){
this.removeEventListener("transitionInDone", this._manager.transitionInDone);
this.removeEventListener("transitionOutDone", this._manager.transitionOutDone);
};
this._manager = _arg1;
this.addEventListener("transitionInDone", this._manager.transitionInDone);
this.addEventListener("transitionOutDone", this._manager.transitionOutDone);
}
public function set progress(_arg1:Number):void{
if (this._progress == _arg1){
return;
};
this._progress = _arg1;
if (this._direction){
this._render((1 - _arg1));
} else {
this._render(_arg1);
};
this.dispatchEvent(new Event("transitionProgress"));
}
public function start():void{
this.content.visible = true;
this._twn.start();
}
public function drawBox(_arg1:MovieClip, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):void{
_arg1.graphics.moveTo(_arg2, _arg3);
_arg1.graphics.lineTo((_arg2 + _arg4), _arg3);
_arg1.graphics.lineTo((_arg2 + _arg4), (_arg3 + _arg5));
_arg1.graphics.lineTo(_arg2, (_arg3 + _arg5));
_arg1.graphics.lineTo(_arg2, _arg3);
}
public function set content(_arg1:MovieClip):void{
if (_arg1){
this._content = _arg1;
if (this._twn){
this._twn.obj = _arg1;
};
};
}
private function _noEase(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
public function get content():MovieClip{
return (this._content);
}
public function set direction(_arg1:Number):void{
this._direction = (_arg1) ? 1 : 0;
}
public function get direction():Number{
return (this._direction);
}
}
}//package fl.transitions
Section 4
//TransitionManager (fl.transitions.TransitionManager)
package fl.transitions {
import flash.display.*;
import flash.events.*;
import flash.geom.*;
public class TransitionManager extends EventDispatcher {
public var _innerBounds:Rectangle;
private var _visualPropList:Object;
private var _triggerEvent:String;
public var className:String;// = "TransitionManager"
public var type:Object;
private var _contentAppearance:Object;
private var _content:MovieClip;
public var _width:Number;// = NAN
public var _height:Number;// = NAN
public var _outerBounds:Rectangle;
private var _transitions:Object;
private static var IDCount:int = 0;
public function TransitionManager(_arg1:MovieClip){
type = TransitionManager;
className = "TransitionManager";
_width = NaN;
_height = NaN;
_visualPropList = {x:null, y:null, scaleX:null, scaleY:null, alpha:null, rotation:null};
super();
this.content = _arg1;
this._transitions = {};
}
public function get content():MovieClip{
return (this._content);
}
public function removeAllTransitions():void{
var _local1:Transition;
for each (_local1 in this._transitions) {
_local1.cleanUp();
this.removeTransition(_local1);
};
}
function transitionInDone(_arg1:Object):void{
var _local2:Boolean;
this.removeTransition(_arg1.target);
if (this.numInTransitions == 0){
_local2 = this._content.visible;
if ((((this._triggerEvent == "hide")) || ((this._triggerEvent == "hideChild")))){
this._content.visible = false;
};
if (_local2){
this.dispatchEvent(new Event("allTransitionsInDone"));
};
};
}
public function get numOutTransitions():Number{
var _local1:Number;
var _local2:Object;
var _local3:Transition;
_local1 = 0;
_local2 = this._transitions;
for each (_local3 in _local2) {
if (_local3.direction){
_local1++;
};
};
return (_local1);
}
public function get contentAppearance():Object{
return (this._contentAppearance);
}
public function saveContentAppearance():void{
var _local1:MovieClip;
var _local2:Object;
var _local3:String;
_local1 = this._content;
if (!this._contentAppearance){
_local2 = (this._contentAppearance = {});
for (_local3 in this._visualPropList) {
_local2[_local3] = _local1[_local3];
};
_local2.colorTransform = _local1.transform.colorTransform;
};
this._innerBounds = _local1.getBounds(_local1);
this._outerBounds = _local1.getBounds(_local1.parent);
this._width = _local1.width;
this._height = _local1.height;
}
public function addTransition(_arg1:Transition):Transition{
_arg1.ID = ++TransitionManager.IDCount;
this._transitions[_arg1.ID] = _arg1;
return (_arg1);
}
public function startTransition(_arg1:Object):Transition{
var _local2:Class;
var _local3:Transition;
this.removeTransition(this.findTransition(_arg1));
_local2 = _arg1.type;
_local3 = new _local2(this._content, _arg1, this);
this.addTransition(_local3);
_local3.start();
return (_local3);
}
function transitionOutDone(_arg1:Object):void{
var _local2:Boolean;
this.removeTransition(_arg1.target);
if (this.numOutTransitions == 0){
this.restoreContentAppearance();
_local2 = this._content.visible;
if (((_local2) && ((((_triggerEvent == "hide")) || ((_triggerEvent == "hideChild")))))){
this._content.visible = false;
};
if (_local2){
this.dispatchEvent(new Event("allTransitionsOutDone"));
};
};
}
public function restoreContentAppearance():void{
var _local1:MovieClip;
var _local2:Object;
var _local3:String;
_local1 = this._content;
_local2 = this._contentAppearance;
for (_local3 in this._visualPropList) {
_local1[_local3] = _local2[_local3];
};
_local1.transform.colorTransform = _local2.colorTransform;
}
public function get numTransitions():Number{
var _local1:Number;
var _local2:Transition;
_local1 = 0;
for each (_local2 in this._transitions) {
_local1++;
};
return (_local1);
}
public function findTransition(_arg1:Object):Transition{
var _local2:Transition;
for each (_local2 in this._transitions) {
if (_local2.type == _arg1.type){
return (_local2);
};
};
return (null);
}
public function set content(_arg1:MovieClip):void{
this._content = _arg1;
this.saveContentAppearance();
}
public function get numInTransitions():Number{
var _local1:Number;
var _local2:Object;
var _local3:Transition;
_local1 = 0;
_local2 = this._transitions;
for each (_local3 in _local2) {
if (!_local3.direction){
_local1++;
};
};
return (_local1);
}
public function removeTransition(_arg1:Transition):Boolean{
if (((((!(_arg1)) || (!(this._transitions)))) || (!(this._transitions[_arg1.ID])))){
return (false);
};
_arg1.cleanUp();
return (delete this._transitions[_arg1.ID]);
}
public function get transitionsList():Object{
return (this._transitions);
}
public static function start(_arg1:MovieClip, _arg2:Object):Transition{
if (!_arg1.__transitionManager){
_arg1.__transitionManager = new TransitionManager(_arg1);
};
if (_arg2.direction == 1){
_arg1.__transitionManager._triggerEvent = "hide";
} else {
_arg1.__transitionManager._triggerEvent = "reveal";
};
return (_arg1.__transitionManager.startTransition(_arg2));
}
}
}//package fl.transitions
Section 5
//Tween (fl.transitions.Tween)
package fl.transitions {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
public class Tween extends EventDispatcher {
private var _position:Number;// = NAN
public var prevTime:Number;// = NAN
public var prevPos:Number;// = NAN
public var isPlaying:Boolean;// = false
public var begin:Number;// = NAN
private var _fps:Number;// = NAN
private var _time:Number;// = NAN
public var change:Number;// = NAN
private var _finish:Number;// = NAN
public var looping:Boolean;// = false
private var _intervalID:uint;// = 0
public var func:Function;
private var _timer:Timer;// = null
private var _startTime:Number;// = NAN
public var prop:String;// = ""
private var _duration:Number;// = NAN
public var obj:Object;// = null
public var useSeconds:Boolean;// = false
protected static var _mc:MovieClip = new MovieClip();
public function Tween(_arg1:Object, _arg2:String, _arg3:Function, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Boolean=false){
isPlaying = false;
obj = null;
prop = "";
func = function (_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
};
begin = NaN;
change = NaN;
useSeconds = false;
prevTime = NaN;
prevPos = NaN;
looping = false;
_duration = NaN;
_time = NaN;
_fps = NaN;
_position = NaN;
_startTime = NaN;
_intervalID = 0;
_finish = NaN;
_timer = null;
super();
if (!arguments.length){
return;
};
this.obj = _arg1;
this.prop = _arg2;
this.begin = _arg4;
this.position = _arg4;
this.duration = _arg6;
this.useSeconds = _arg7;
if ((_arg3 is Function)){
this.func = _arg3;
};
this.finish = _arg5;
this._timer = new Timer(100);
this.start();
}
public function continueTo(_arg1:Number, _arg2:Number):void{
this.begin = this.position;
this.finish = _arg1;
if (!isNaN(_arg2)){
this.duration = _arg2;
};
this.start();
}
public function stop():void{
this.stopEnterFrame();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_STOP, this._time, this._position));
}
private function fixTime():void{
if (this.useSeconds){
this._startTime = (getTimer() - (this._time * 1000));
};
}
public function set FPS(_arg1:Number):void{
var _local2:Boolean;
_local2 = this.isPlaying;
this.stopEnterFrame();
this._fps = _arg1;
if (_local2){
this.startEnterFrame();
};
}
public function get finish():Number{
return ((this.begin + this.change));
}
public function get duration():Number{
return (this._duration);
}
protected function startEnterFrame():void{
var _local1:Number;
if (isNaN(this._fps)){
_mc.addEventListener(Event.ENTER_FRAME, this.onEnterFrame, false, 0, true);
} else {
_local1 = (1000 / this._fps);
this._timer.delay = _local1;
this._timer.addEventListener(TimerEvent.TIMER, this.timerHandler, false, 0, true);
this._timer.start();
};
this.isPlaying = true;
}
public function set time(_arg1:Number):void{
this.prevTime = this._time;
if (_arg1 > this.duration){
if (this.looping){
this.rewind((_arg1 - this._duration));
this.update();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_LOOP, this._time, this._position));
} else {
if (this.useSeconds){
this._time = this._duration;
this.update();
};
this.stop();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_FINISH, this._time, this._position));
};
} else {
if (_arg1 < 0){
this.rewind();
this.update();
} else {
this._time = _arg1;
this.update();
};
};
}
protected function stopEnterFrame():void{
if (isNaN(this._fps)){
_mc.removeEventListener(Event.ENTER_FRAME, this.onEnterFrame);
} else {
this._timer.stop();
};
this.isPlaying = false;
}
public function getPosition(_arg1:Number=NaN):Number{
if (isNaN(_arg1)){
_arg1 = this._time;
};
return (this.func(_arg1, this.begin, this.change, this._duration));
}
public function set finish(_arg1:Number):void{
this.change = (_arg1 - this.begin);
}
public function set duration(_arg1:Number):void{
this._duration = ((_arg1)<=0) ? Infinity : _arg1;
}
public function setPosition(_arg1:Number):void{
this.prevPos = this._position;
if (this.prop.length){
this.obj[this.prop] = (this._position = _arg1);
};
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_CHANGE, this._time, this._position));
}
public function resume():void{
this.fixTime();
this.startEnterFrame();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_RESUME, this._time, this._position));
}
public function fforward():void{
this.time = this._duration;
this.fixTime();
}
protected function onEnterFrame(_arg1:Event):void{
this.nextFrame();
}
public function get position():Number{
return (this.getPosition(this._time));
}
public function yoyo():void{
this.continueTo(this.begin, this.time);
}
public function nextFrame():void{
if (this.useSeconds){
this.time = ((getTimer() - this._startTime) / 1000);
} else {
this.time = (this._time + 1);
};
}
protected function timerHandler(_arg1:TimerEvent):void{
this.nextFrame();
_arg1.updateAfterEvent();
}
public function get FPS():Number{
return (this._fps);
}
public function rewind(_arg1:Number=0):void{
this._time = _arg1;
this.fixTime();
this.update();
}
public function set position(_arg1:Number):void{
this.setPosition(_arg1);
}
public function get time():Number{
return (this._time);
}
private function update():void{
this.setPosition(this.getPosition(this._time));
}
public function start():void{
this.rewind();
this.startEnterFrame();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_START, this._time, this._position));
}
public function prevFrame():void{
if (!this.useSeconds){
this.time = (this._time - 1);
};
}
}
}//package fl.transitions
Section 6
//TweenEvent (fl.transitions.TweenEvent)
package fl.transitions {
import flash.events.*;
public class TweenEvent extends Event {
public var time:Number;// = NAN
public var position:Number;// = NAN
public static const MOTION_START:String = "motionStart";
public static const MOTION_STOP:String = "motionStop";
public static const MOTION_LOOP:String = "motionLoop";
public static const MOTION_CHANGE:String = "motionChange";
public static const MOTION_FINISH:String = "motionFinish";
public static const MOTION_RESUME:String = "motionResume";
public function TweenEvent(_arg1:String, _arg2:Number, _arg3:Number, _arg4:Boolean=false, _arg5:Boolean=false){
time = NaN;
position = NaN;
super(_arg1, _arg4, _arg5);
this.time = _arg2;
this.position = _arg3;
}
override public function clone():Event{
return (new TweenEvent(this.type, this.time, this.position, this.bubbles, this.cancelable));
}
}
}//package fl.transitions
Section 7
//MainTimeline (HOUSEOFHELL_fla.MainTimeline)
package HOUSEOFHELL_fla {
import flash.display.*;
import flash.events.*;
import org.flintparticles.twoD.particles.*;
import flash.geom.*;
import flash.utils.*;
import fl.motion.*;
import fl.transitions.*;
import org.flintparticles.common.initializers.*;
import org.flintparticles.common.actions.*;
import org.flintparticles.common.counters.*;
import org.flintparticles.common.events.*;
import org.flintparticles.twoD.zones.*;
import flash.text.*;
import flash.filters.*;
import fl.transitions.easing.*;
import org.flintparticles.common.energyEasing.*;
import org.flintparticles.twoD.actions.*;
import org.flintparticles.twoD.initializers.*;
import flash.media.*;
import org.flintparticles.twoD.emitters.*;
import org.flintparticles.common.displayObjects.*;
import org.flintparticles.twoD.renderers.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.net.*;
import flash.printing.*;
import flash.system.*;
import flash.ui.*;
import flash.xml.*;
import org.flintparticles.threeD.actions.*;
import org.flintparticles.threeD.activities.*;
public dynamic class MainTimeline extends MovieClip {
public var KEY_LEFT;
public var keycheck:Boolean;
public var startColor:ColorTransform;
public var STAGE_CENTERY:int;
public var obArray:Array;
public var emitterCount:int;
public var STAGE_CENTERX:int;
public var rArrayCount:int;
public var renderArray:Array;
public var dead:Boolean;
public var tp:Array;
public var tween:Tween;
public var mouse_clicked:Boolean;
public var KEY_UP;
public var attacking;
public var KEY_DOWN;
public var KEY_ENTER;
public var renderer:DisplayObjectRenderer;
public var BATTLE_MODE:Boolean;
public var Bfilt:BlurFilter;
public var roomTag:Number;
public var shout:Object;
public var arrListeners:Array;
public var CURRENT_OBJECT:String;
public var _arial_str:String;
public var tMgr:TransitionManager;
public var STAGE_WIDTH:int;
public var Bfilt3:BlurFilter;
public var ITEM:Boolean;
public var renderCount:int;
public var filtersArray:Array;
public var my_shadow:DropShadowFilter;
public var yourFont;
public var Rooms:Array;
public var eArray:Array;
public var SHOUT_BOX_BLUR:Boolean;
public var _arial_fmt:TextFormat;
public var clip:MovieClip;
public var inventorySprite:Sprite;
public var endColor:ColorTransform;
public var display_txt:TextField;
public var PASSCODE:String;
public var SHOUT_BOX_TIMER:Number;
public var sawOb:Object;
public var STAGE_HEIGHT:int;
public var _text_txt:TextField;
public var antiGC:Dictionary;
public var m_held:Boolean;
public var itemsInInventory:Array;
public var keys;
public var format:TextFormat;
public var ITEM_IN_USE:MovieClip;
public var KEY_RIGHT;
public function MainTimeline(){
addFrameScript(0, frame1);
}
public function sawStart(_arg1:Event):void{
var _local2:Sound;
var _local3:Sound;
var _local4:MovieClip;
var _local5:die_wav;
var _local6:Timer;
if (Rooms[roomTag].timeUP){
Rooms[roomTag].imageB.saw.gotoAndStop(1);
Rooms[roomTag].imageB.saw.y = (Rooms[roomTag].imageB.saw.y + 1);
if (Rooms[roomTag].imageB.saw.y > 350){
_local2 = new open_wav();
_local2.play();
Rooms[roomTag].imageB.cuff.visible = false;
Text("I did it!");
stage.removeEventListener(Event.ENTER_FRAME, sawStart);
Rooms[roomTag].imageB.button1.removeEventListener(MouseEvent.CLICK, sawLEFT);
Rooms[roomTag].imageB.button3.removeEventListener(MouseEvent.CLICK, sawRIGHT);
Rooms[roomTag].countDown.removeEventListener(TimerEvent.TIMER, onTick3);
Rooms[25].collected = true;
Rooms[26].token = true;
Go_Back(25);
};
return;
};
if (!Rooms[roomTag].imageB.switch2.op){
Rooms[roomTag].imageB.switch2.gotoAndStop(1);
Rooms[roomTag].imageB.saw.gotoAndStop(1);
};
if (Rooms[roomTag].imageB.switch2.currentFrame >= Rooms[roomTag].imageB.switch2.totalFrames){
Rooms[roomTag].imageB.switch2.op = false;
};
sawOb.countdown--;
Rooms[roomTag].imageB.saw.x = (Rooms[roomTag].imageB.saw.x + ((sawOb.movement + sawOb.inertia) * sawOb.facing));
sawOb.inertia = (sawOb.inertia + 0.04);
if ((((sawOb.countdown < 0)) && (!(sawOb.win)))){
Rooms[roomTag].imageB.saw.gotoAndStop(2);
Rooms[roomTag].imageB.switch2.gotoAndPlay(2);
_local3 = new Electric_mc();
_local3.play();
Rooms[roomTag].imageB.switch2.op = true;
sawOb.speed = 0;
sawOb.countdown = sawOb.countdownX;
if (sawOb.countdownX > 30){
sawOb.countdownX = (sawOb.countdownX - 5);
};
};
if (sawOb.spin != false){
sawOb.speed = (Math.round((((sawOb.speed = (sawOb.speed + 10)) + 0.1) * 100)) / 100);
Rooms[roomTag].imageB.saw.rotation = (Rooms[roomTag].imageB.saw.rotation + sawOb.speed);
if (sawOb.speed >= 260){
sawOb.speed = 260;
};
if (sawOb.hit){
sawOb.speed = 10;
sawOb.hit = false;
};
Bfilt3.blurX = (Bfilt3.blurY = (sawOb.speed / 25));
Rooms[roomTag].imageB.saw.filters = [Bfilt3];
};
if (Rooms[roomTag].imageB.saw.x < 0){
Rooms[roomTag].imageB.saw.x = 550;
};
if (Rooms[roomTag].imageB.saw.x > 550){
Rooms[roomTag].imageB.saw.x = 0;
};
Rooms[roomTag].imageB.blind.visible = false;
if ((((Rooms[roomTag].imageB.saw.x > 180)) && ((Rooms[roomTag].imageB.saw.x < 390)))){
Rooms[roomTag].countDown.removeEventListener(TimerEvent.TIMER, onTick3);
removeMovie(Rooms[roomTag].imageC);
sawOb.win = true;
sawOb.movement = 2;
sawOb.inertia = 0;
if (((((((++sawOb.timer % 5) == 0)) && ((sawOb.timer < 60)))) || ((sawOb.timer == 0)))){
if (!sawOb.quake){
Rooms[roomTag].imageB.button1.removeEventListener(MouseEvent.CLICK, sawLEFT);
Rooms[roomTag].imageB.button3.removeEventListener(MouseEvent.CLICK, sawRIGHT);
Earthquake.go(Rooms[roomTag].imageB, 3, 3);
sawOb.quake = true;
};
Rooms[roomTag].imageB.blind.visible = true;
sawOb.hit = true;
Bleed(Rooms[roomTag].imageB.saw.x, Rooms[roomTag].imageB.saw.y, sawOb.facing);
_local4 = new splatter_mc();
_local4.x = (Rooms[roomTag].imageB.saw.x + (60 * sawOb.facing));
_local4.alpha = (randRange(80, 100) / 100);
_local4.y = (Rooms[roomTag].imageB.saw.y + randRange(10, -40));
if (sawOb.timer > 30){
Rooms[roomTag].imageB.bARM.y = (Rooms[roomTag].imageB.bARM.y + 20);
Rooms[roomTag].imageB.bARM.filters = [Bfilt3];
};
stage.addChild(_local4);
};
if (sawOb.timer > 90){
stage.removeEventListener(Event.ENTER_FRAME, sawStart);
Rooms[roomTag].imageB.blind.visible = true;
dead = true;
_local5 = new die_wav();
_local5.play();
Rooms[roomTag].ready = false;
Rooms[roomTag].first_time = true;
Rooms[roomTag].imageB.hex = 0;
Rooms[roomTag].imageB.alphaV = -0.2;
Rooms[roomTag].imageB.addEventListener(Event.ENTER_FRAME, fadeColor, false, 0, true);
Rooms[roomTag].newTag = 26;
_local6 = new Timer(5000, 1);
_local6.start();
_local6.addEventListener(TimerEvent.TIMER, retry);
};
};
}
public function mouse_down(_arg1:MouseEvent):void{
mouse_clicked = true;
}
public function restart(_arg1:MouseEvent):void{
var _local2:SimpleButton;
var _local3:*;
_local2 = SimpleButton(_arg1.target);
for (_local3 in Rooms[roomTag].deleteArray) {
removeMovie(Rooms[roomTag].deleteArray[_local3]);
};
_arg1.target.removeEventListener(MouseEvent.CLICK, restart);
removeMovie(_local2);
Rooms[roomTag].imageB.alpha = 1;
Tint(Rooms[roomTag].imageB, 0, 0);
dead = false;
stage.addEventListener(Event.ENTER_FRAME, main);
}
public function room8EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:MovieClip;
var _local4:Boolean;
var _local5:Sound;
var _local6:MovieClip;
var _local7:MovieClip;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
if (Rooms[roomTag].imageF){
if (Rooms[roomTag].imageF.currentFrame == Rooms[roomTag].imageF.totalFrames){
removeMovie(Rooms[roomTag].imageF);
};
};
if (((((!(Rooms[roomTag].bird_complete)) && (Rooms[roomTag].window_open))) && (Rooms[roomTag].birdcage_open))){
Rooms[roomTag].bird_complete = true;
mouse_clicked = false;
Rooms[roomTag].timer = 20;
removeMovie(Rooms[roomTag].imageC);
_local3 = new bird3_mc();
_local3.x = 221;
_local3.y = 200;
_local3.mouseEnabled = false;
Rooms[roomTag].imageF = _local3;
stage.addChild(Rooms[roomTag].imageF);
Rooms[roomTag].deleteArray.push(_local3);
display_txt.text = "The crow flew out of the window.";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local4 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
if (!_local4){
Rooms[roomTag].mouseSet = false;
Rooms[roomTag].imageB.buttonMode = false;
Rooms[roomTag].imageB.useHandCursor = false;
if (stage.getChildByName("global_text")){
removeMovie(stage.getChildByName("global_text"));
};
};
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local4){
if (_local2 == 0){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "WINDOW";
};
};
if (_local2 == 1){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "CROW";
};
};
if (_local2 == 2){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "DOLLS";
};
};
if (_local2 == 3){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "DIRTY SHELVES";
};
};
if (_local2 == 4){
break;
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local4) && ((_local2 == 0)))){
if (Rooms[roomTag].window_open){
display_txt.text = "DAMN! It's too far down for me to climb out and escape here.";
if (Rooms[roomTag].bird_complete){
display_txt.text = "At least the crow got out of here alive..Too high for myself.";
};
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
if (!Rooms[roomTag].window_open){
if (mouse_clicked){
_local5 = new window_open_wav();
_local5.play();
Rooms[roomTag].window_open = true;
mouse_clicked = false;
Rooms[roomTag].timer = 20;
_local6 = new room8window_mc();
_local6.x = 445;
_local6.y = 98;
_local6.mouseEnabled = false;
Rooms[roomTag].imageE = _local6;
stage.addChild(Rooms[roomTag].imageE);
Rooms[roomTag].deleteArray.push(_local6);
break;
} else {
display_txt.text = "This window hasn't been locked! Can I escape here? Open?";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
};
};
if (((_local4) && ((_local2 == 1)))){
if (Rooms[roomTag].birdcage_open){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
display_txt.text = "The bird cage is open. The crow is flying around looking for a way out.";
if (Rooms[roomTag].bird_complete){
display_txt.text = "The cage has been vacated.";
};
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
} else {
if (((mouse_clicked) && (!(Rooms[roomTag].birdcage_open)))){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Rooms[roomTag].birdcage_open = true;
Rooms[roomTag].imageD.gotoAndStop(2);
removeMovie(Rooms[roomTag].imageC);
_local7 = new bird2_mc();
_local7.x = 230;
_local7.y = 177;
Rooms[roomTag].imageC = _local7;
stage.addChild(Rooms[roomTag].imageC);
Rooms[roomTag].deleteArray.push(_local7);
display_txt.text = "The latch springs open.";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
} else {
display_txt.text = "A miserable-looking crow in a bird cage. An odd pet to keep. It has a note tied to one of it's feet- might be useful. There's a latch, should I let it out? ";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
};
};
if (((_local4) && ((_local2 == 2)))){
display_txt.text = "Morbid childrens dolls stare in my direction. They're harmless.";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
if (((_local4) && ((_local2 == 3)))){
display_txt.text = "The shelves are a mess, full of animal organs.";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
if (((((_local4) && ((_local2 == 4)))) && (!(Rooms[roomTag].stone_taken)))){
if (mouse_clicked){
Rooms[roomTag].stone_taken = true;
Rooms[roomTag].imageZ.addEventListener(Event.ENTER_FRAME, getItem, false, 0, true);
break;
} else {
Text("Looks like a stone made of salt crystal. Take?");
break;
};
};
if (((_local4) && ((_local2 == 5)))){
if (mouse_clicked){
Go_Back(5);
break;
} else {
display_txt.text = "BACK?";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
};
};
}
public function randRange(_arg1:Number, _arg2:Number):Number{
return (Math.floor((_arg1 + (Math.random() * (_arg2 - _arg1)))));
}
public function mouseStopDrag(_arg1:MouseEvent):void{
_arg1.target.removeEventListener(MouseEvent.MOUSE_UP, mouseStopDrag);
_arg1.target.stopDrag();
}
public function Fizzle(_arg1:Event):void{
var _local2:MovieClip;
var _local3:Number;
_local2 = MovieClip(_arg1.target);
_local3 = randRange(80, 100);
_local2.alpha = (_local3 / 100);
}
public function particleFade(_arg1:Event):void{
var _local2:MovieClip;
var _local3:*;
_local2 = (_arg1.target as MovieClip);
_local3 = _local2.getChildByName("son");
_local3.alpha = (_local3.alpha - 0.02);
if (_local3.alpha <= 0){
_local2.emitter.stop();
_local3.removeEmitter(_local2.emitter);
_local2.removeEventListener(Event.ENTER_FRAME, particleFade);
_local2.removeChild(_local3);
_local2.filters = [];
removeMovie(_local2);
};
}
public function onTick(_arg1:TimerEvent):void{
var _local2:die_wav;
var _local3:Function;
Rooms[roomTag].currentTime = (Rooms[roomTag].targetTime - _arg1.target.currentCount);
Rooms[roomTag].imageC.timer_txt.text = Rooms[roomTag].currentTime;
if (Rooms[roomTag].currentTime <= 0){
Rooms[roomTag].timeUP = true;
if (stage.getChildByName("global_text")){
removeMovie(stage.getChildByName("global_text"));
};
dead = true;
Rooms[roomTag].countDown.removeEventListener(TimerEvent.TIMER, onTick);
_local2 = new die_wav();
_local2.play();
Rooms[roomTag].imageB.hex = 0;
Rooms[roomTag].imageB.alphaV = 0;
Rooms[roomTag].imageB.addEventListener(Event.ENTER_FRAME, fadeColor, false, 0, true);
_local3 = this[("roomTimeOutEvent" + roomTag)];
stage.addEventListener(Event.ENTER_FRAME, _local3, false, 0, true);
};
}
public function remove_at_finish(_arg1:Event){
var _local2:MovieClip;
_local2 = MovieClip(_arg1.target);
if (_local2.currentFrame == _local2.totalFrames){
attacking = false;
removeMovie(_local2);
_local2.removeEventListener(Event.ENTER_FRAME, remove_at_finish);
};
}
public function room15EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
Quick(_local3);
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local3){
if (_local2 == 0){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "THE JOURNAL OF EDGAR FRIENDLY";
};
};
if (_local2 == 1){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "BOOKS";
};
};
if (_local2 == 2){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "MUSIC BOX";
};
};
if (_local2 == 3){
if (!Rooms[roomTag].secretDoor_open){
break;
} else {
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "SECRET DOOR";
};
};
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 0)))){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Go_Back(16);
break;
} else {
Text("I think it's a journal. It's entitled 'Edgar Friendly' and inside are various notes and newspaper clippings. Read?");
break;
};
};
if (((_local3) && ((_local2 == 1)))){
Text("Just a collection of various books and documents- mostly medical. I have a feeling I may have read one or two.");
break;
};
if (((_local3) && ((_local2 == 2)))){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Go_Back(17);
break;
} else {
Text("This is a curious item. Looks like an antique musical box. Open?");
break;
};
};
if (((_local3) && ((_local2 == 3)))){
if (!Rooms[roomTag].secretDoor_open){
break;
};
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Go_Back(23);
break;
} else {
Text("This dark, hidden entranceway suddenly appeared when I put the toy miniatures into the music box. Enter?");
break;
};
};
if (((_local3) && ((_local2 == 4)))){
if (mouse_clicked){
Go_Back(14);
break;
} else {
Text("BACK?");
break;
};
};
};
}
public function FadeOutMC(_arg1:Event):void{
var _local2:DisplayObject;
_local2 = DisplayObject(_arg1.target);
_local2.alpha = (_local2.alpha - 0.05);
if ((((((_local2.alpha <= 0)) || ((Rooms[roomTag].tag <= 0)))) || ((Rooms[roomTag].currentTime <= 0)))){
_local2.removeEventListener(Event.ENTER_FRAME, FadeOutMC);
removeMovie(_local2);
};
}
public function Go_Back_Quick(_arg1:Number){
var _local2:MovieClip;
var _local3:Function;
var _local4:*;
mouse_clicked = false;
Rooms[roomTag].timer = 10;
_local2 = new transition_mc();
_local2.name = "transition";
_local2.mouseEnabled = false;
_local2.mouseChildren = false;
stage.addChild(_local2);
_local2.alpha = 0.5;
Rooms[roomTag].newTag = _arg1;
_local3 = this[(("room" + roomTag) + "EVENTS")];
if (stage.hasEventListener(Event.ENTER_FRAME)){
stage.removeEventListener(Event.ENTER_FRAME, _local3);
};
for (_local4 in Rooms[roomTag].deleteArray) {
removeMovie(Rooms[roomTag].deleteArray[_local4]);
};
if (stage.getChildByName("global_text")){
removeMovie(stage.getChildByName("global_text"));
};
roomTag = Rooms[roomTag].newTag;
stage.addEventListener(Event.ENTER_FRAME, main);
_local2.addEventListener(Event.ENTER_FRAME, FadeOut, false, 0, true);
}
public function createTextField(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):TextField{
var _local5:TextField;
_local5 = new TextField();
_local5.x = _arg1;
_local5.y = _arg2;
_local5.width = _arg3;
_local5.height = _arg4;
addChild(_local5);
return (_local5);
}
public function barHEALTH(_arg1:int, _arg2:MovieClip, _arg3:MovieClip, _arg4:int, _arg5:int):void{
var _local6:int;
var _local7:*;
_local6 = _arg3.totalFrames;
_local7 = Math.round(((100 - _arg1) / (100 / _local6)));
_arg3.gotoAndStop(_local7);
}
public function room26EVENTS(_arg1:Event):void{
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
}
public function room11(_arg1:Event):void{
var _local2:String;
var _local3:Class;
var _local4:MovieClip;
var _local5:MovieClip;
var _local6:Object;
var _local7:Array;
var _local8:Object;
var _local9:SimpleButton;
_local2 = "house9_mc";
_local3 = (getDefinitionByName(_local2) as Class);
_local4 = new (_local3);
Rooms[roomTag].imageB = _local4;
_local5 = new statueman_mc();
Rooms[roomTag].imageC = _local5;
_local6 = Rooms[roomTag];
_local7 = new Array();
_local6.MouseEvents = _local7;
Rooms[roomTag].timer = 0;
stage.addChild(Rooms[roomTag].imageB);
stage.addChild(Rooms[roomTag].imageC);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageC);
Rooms[roomTag].imageC.addEventListener(Event.ENTER_FRAME, blurIN, false, 0, true);
Rooms[roomTag].imageC.visible = true;
Earthquake.go(Rooms[roomTag].imageB, 10, 0.5);
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
Rooms[roomTag].imageB.addEventListener(Event.ENTER_FRAME, Fizzle, false, 0, true);
_local8 = {link:Rooms[roomTag].imageB, Ename:"Fizzle"};
arrListeners.push(_local8);
Text((("The Statue wasn't a statue at all! Another one of the Doctors monsters!" + "There's no way to defeat this creature without a weapon. In my hasty escape I drop the ammonia.") + "(CLICK THE EXIT DIALOGUE ICON)"));
_local9 = new exitdialogue_mc();
_local9.x = 270;
_local9.y = 320;
stage.addChild(_local9);
Rooms[roomTag].targetRoom = 5;
Rooms[9].ammonia = false;
Rooms[10].first_time = true;
removeICON("AMMONIA");
_local9.addEventListener(MouseEvent.MOUSE_DOWN, exitShout, false, 0, true);
Rooms[roomTag].deleteArray.push(_local9);
stage.removeEventListener(Event.ENTER_FRAME, room11);
stage.addEventListener(Event.ENTER_FRAME, room11EVENTS, false, 0, true);
}
public function room14(_arg1:Event):void{
var _local2:String;
var _local3:Class;
var _local4:MovieClip;
var _local5:MovieClip;
var _local6:Object;
var _local7:Array;
var _local8:Rectangle;
var _local9:Rectangle;
var _local10:Rectangle;
var _local11:Rectangle;
if (Rooms[roomTag].first_time){
_local2 = (("house" + roomTag) + "_mc");
_local3 = (getDefinitionByName(_local2) as Class);
_local4 = new (_local3);
Rooms[roomTag].imageB = _local4;
_local5 = new BACK_mc();
_local5.x = 260;
_local5.y = 380;
Rooms[roomTag].back = _local5;
_local6 = Rooms[roomTag];
_local7 = new Array();
_local6.mephDoor_open = false;
_local6.accerbusDoor_open = false;
_local8 = new Rectangle(54, 50, 72, 272);
_local9 = new Rectangle(221, 121, 108, 201);
_local10 = new Rectangle(458, 3, 73, 205);
_local11 = new Rectangle(245, 360, 30, 30);
_local7.push(_local8);
_local7.push(_local9);
_local7.push(_local10);
_local7.push(_local11);
_local6.MouseEvents = _local7;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].timer = 0;
stage.addChild(Rooms[roomTag].imageB);
stage.addChild(Rooms[roomTag].back);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
stage.removeEventListener(Event.ENTER_FRAME, room14);
stage.addEventListener(Event.ENTER_FRAME, room14EVENTS, false, 0, true);
}
public function room15(_arg1:Event):void{
var _local2:String;
var _local3:Class;
var _local4:MovieClip;
var _local5:MovieClip;
var _local6:MovieClip;
var _local7:MovieClip;
var _local8:Object;
var _local9:Array;
var _local10:Rectangle;
var _local11:Rectangle;
var _local12:Rectangle;
var _local13:Rectangle;
var _local14:Rectangle;
if (Rooms[roomTag].first_time){
_local2 = (("house" + roomTag) + "_mc");
_local3 = (getDefinitionByName(_local2) as Class);
_local4 = new (_local3);
Rooms[roomTag].imageB = _local4;
_local5 = new RM15door1_mc();
Rooms[roomTag].imageC = _local5;
_local6 = new RM15door2_mc();
Rooms[roomTag].imageD = _local6;
_local7 = new BACK_mc();
_local7.x = 260;
_local7.y = 380;
Rooms[roomTag].back = _local7;
_local8 = Rooms[roomTag];
_local9 = new Array();
_local8.secretDoor_open = false;
_local10 = new Rectangle(364, 315, 84, 64);
_local11 = new Rectangle(394, 81, 156, 214);
_local12 = new Rectangle(104, 242, 103, 68);
_local13 = new Rectangle(236, 93, 147, 163);
_local14 = new Rectangle(245, 360, 30, 30);
_local9.push(_local10);
_local9.push(_local11);
_local9.push(_local12);
_local9.push(_local13);
_local9.push(_local14);
_local8.MouseEvents = _local9;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].timer = 0;
stage.addChild(Rooms[roomTag].imageB);
if (!Rooms[roomTag].secretDoor_open){
stage.addChild(Rooms[roomTag].imageC);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageC);
} else {
stage.addChild(Rooms[roomTag].imageD);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageD);
};
stage.addChild(Rooms[roomTag].back);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
stage.removeEventListener(Event.ENTER_FRAME, room15);
stage.addEventListener(Event.ENTER_FRAME, room15EVENTS, false, 0, true);
}
public function room19(_arg1:Event):void{
var _local2:String;
var _local3:Class;
var _local4:MovieClip;
var _local5:MovieClip;
var _local6:Object;
var _local7:Array;
var _local8:Rectangle;
var _local9:Rectangle;
var _local10:Rectangle;
if (Rooms[roomTag].first_time){
_local2 = (("house" + roomTag) + "_mc");
_local3 = (getDefinitionByName(_local2) as Class);
_local4 = new (_local3);
Rooms[roomTag].imageB = _local4;
_local5 = new BACK_mc();
_local5.x = 260;
_local5.y = 380;
Rooms[roomTag].back = _local5;
_local6 = Rooms[roomTag];
_local7 = new Array();
_local8 = new Rectangle(72, 156, 55, 124);
_local9 = new Rectangle(204, 158, 55, 120);
_local10 = new Rectangle(245, 360, 30, 30);
_local7.push(_local8);
_local7.push(_local9);
_local7.push(_local10);
_local6.MouseEvents = _local7;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].timer = 0;
stage.addChild(Rooms[roomTag].imageB);
stage.addChild(Rooms[roomTag].back);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
stage.removeEventListener(Event.ENTER_FRAME, room19);
stage.addEventListener(Event.ENTER_FRAME, room19EVENTS, false, 0, true);
}
public function room13(_arg1:Event):void{
var _local2:String;
var _local3:Class;
var _local4:MovieClip;
var _local5:MovieClip;
var _local6:MovieClip;
var _local7:Object;
var _local8:Array;
var _local9:Rectangle;
var _local10:Rectangle;
var _local11:Rectangle;
var _local12:Rectangle;
if (Rooms[roomTag].first_time){
_local2 = (("house" + roomTag) + "_mc");
_local3 = (getDefinitionByName(_local2) as Class);
_local4 = new (_local3);
Rooms[roomTag].imageB = _local4;
_local5 = new BACK_mc();
_local5.x = 260;
_local5.y = 380;
Rooms[roomTag].back = _local5;
_local6 = new BACK_mc();
_local6.x = 530;
_local6.y = 300;
_local6.rotation = -90;
Rooms[roomTag].back2 = _local6;
_local7 = Rooms[roomTag];
_local8 = new Array();
_local7.mobiusDoor_open = false;
_local7.key_appear = false;
_local9 = new Rectangle(410, 2, 112, 74);
_local10 = new Rectangle(466, 168, 84, 232);
_local11 = new Rectangle(106, 5, 163, 147);
_local12 = new Rectangle(245, 360, 30, 30);
_local8.push(_local9);
_local8.push(_local10);
_local8.push(_local11);
_local8.push(_local12);
_local7.MouseEvents = _local8;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].timer = 0;
stage.addChild(Rooms[roomTag].imageB);
stage.addChild(Rooms[roomTag].back);
stage.addChild(Rooms[roomTag].back2);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back2);
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
stage.removeEventListener(Event.ENTER_FRAME, room13);
stage.addEventListener(Event.ENTER_FRAME, room13EVENTS, false, 0, true);
}
public function room17(_arg1:Event):void{
var _local2:MovieClip;
var _local3:MovieClip;
var _local4:MovieClip;
var _local5:MovieClip;
var _local6:MovieClip;
var _local7:MovieClip;
var _local8:MovieClip;
var _local9:MovieClip;
var _local10:MovieClip;
var _local11:Object;
var _local12:Array;
var _local13:Rectangle;
var _local14:Rectangle;
if (Rooms[roomTag].first_time){
_local2 = new temp();
Rooms[roomTag].imageB = _local2;
_local3 = new pig_mc();
_local3.name = "FEMALE MINIATURE";
_local3.tag = "birdICON_mc";
Rooms[roomTag].imageZ = _local3;
Rooms[roomTag].imageZ.addEventListener(Event.ENTER_FRAME, getItem, false, 0, true);
_local4 = new pig_mc();
_local4.name = "MALE MINIATURE";
_local4.tag = "pigICON_mc";
Rooms[roomTag].imageY = _local4;
Rooms[roomTag].imageY.addEventListener(Event.ENTER_FRAME, getItem, false, 0, true);
_local5 = new littlebirdie2_mc();
_local5.x = 275;
_local5.y = 200;
Rooms[roomTag].imageC = _local5;
_local6 = new littlepig2_mc();
_local6.x = 275;
_local6.y = 200;
Rooms[roomTag].imageD = _local6;
_local7 = new centerpiece_mc();
Rooms[roomTag].imageE = _local7;
_local8 = new littlebirdie1_mc();
_local8.x = 275;
_local8.y = 200;
Rooms[roomTag].imageF = _local8;
_local9 = new littlepig1_mc();
_local9.x = 275;
_local9.y = 200;
Rooms[roomTag].imageG = _local9;
_local10 = new BACK_mc();
_local10.x = 260;
_local10.y = 380;
Rooms[roomTag].back = _local10;
_local11 = Rooms[roomTag];
_local12 = new Array();
_local11.pig_placed = false;
_local11.bird_placed = false;
_local11.unlocked = false;
_local13 = new Rectangle(147, 145, 243, 132);
_local14 = new Rectangle(245, 360, 30, 30);
_local12.push(_local13);
_local12.push(_local14);
_local11.MouseEvents = _local12;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].timer = 0;
stage.addChild(Rooms[roomTag].imageB);
if (Rooms[roomTag].bird_placed){
stage.addChild(Rooms[roomTag].imageC);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageC);
};
if (Rooms[roomTag].pig_placed){
stage.addChild(Rooms[roomTag].imageD);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageD);
};
stage.addChild(Rooms[roomTag].imageE);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageE);
if (Rooms[roomTag].bird_placed){
stage.addChild(Rooms[roomTag].imageF);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageF);
};
if (Rooms[roomTag].pig_placed){
stage.addChild(Rooms[roomTag].imageG);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageG);
};
stage.addChild(Rooms[roomTag].back);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
stage.removeEventListener(Event.ENTER_FRAME, room17);
stage.addEventListener(Event.ENTER_FRAME, room17EVENTS, false, 0, true);
}
public function snapClip(_arg1:DisplayObject):BitmapData{
var _local2:Rectangle;
var _local3:BitmapData;
var _local4:*;
_local2 = _arg1.getBounds(_arg1);
_local3 = new BitmapData(int((_local2.width + 0.5)), int((_local2.height + 0.5)), true, 0);
_local4 = new Matrix();
_local4.scale(_arg1.scaleX, _arg1.scaleY);
_local4.rotate((_arg1.rotation * (Math.PI / 180)));
_local4.translate(-(_local2.x), -(_local2.y));
_local3.draw(_arg1, _local4);
return (_local3);
}
public function room16(_arg1:Event):void{
var _local2:Object;
var _local3:MovieClip;
var _local4:MovieClip;
var _local5:MovieClip;
var _local6:MovieClip;
var _local7:Object;
var _local8:Array;
var _local9:Rectangle;
var _local10:Rectangle;
var _local11:Rectangle;
if (Rooms[roomTag].first_time){
_local3 = new journal_mc();
Rooms[roomTag].imageB = _local3;
_local4 = new BACK_mc();
_local4.x = 500;
_local4.y = 380;
Rooms[roomTag].back = _local4;
_local5 = new BACK_mc();
_local5.x = 530;
_local5.y = 280;
_local5.rotation = -90;
Rooms[roomTag].back2 = _local5;
_local6 = new BACK_mc();
_local6.x = 20;
_local6.y = 280;
_local6.rotation = 90;
Rooms[roomTag].back3 = _local6;
_local7 = Rooms[roomTag];
_local8 = new Array();
_local7.read = false;
_local7.current_page = 1;
_local9 = new Rectangle(510, 265, 30, 30);
_local10 = new Rectangle(5, 265, 30, 30);
_local11 = new Rectangle(486, 360, 30, 30);
_local8.push(_local9);
_local8.push(_local10);
_local8.push(_local11);
_local7.MouseEvents = _local8;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].timer = 0;
stage.addChild(Rooms[roomTag].imageB);
stage.addChild(Rooms[roomTag].back);
stage.addChild(Rooms[roomTag].back2);
stage.addChild(Rooms[roomTag].back3);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back2);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back3);
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
Rooms[roomTag].imageB.addEventListener(Event.ENTER_FRAME, Fizzle, false, 0, true);
_local2 = {link:Rooms[roomTag].imageB, Ename:"Fizzle", Fname:"Room16Fizzle"};
arrListeners.push(_local2);
stage.removeEventListener(Event.ENTER_FRAME, room16);
stage.addEventListener(Event.ENTER_FRAME, room16EVENTS, false, 0, true);
}
public function room20(_arg1:Event):void{
var _local2:String;
var _local3:Class;
var _local4:MovieClip;
var _local5:MovieClip;
var _local6:MovieClip;
var _local7:MovieClip;
var _local8:Object;
var _local9:Array;
var _local10:Rectangle;
var _local11:Rectangle;
var _local12:Rectangle;
var _local13:Rectangle;
var _local14:Rectangle;
var _local15:Rectangle;
var _local16:MovieClip;
if (Rooms[roomTag].first_time){
_local2 = (("house" + roomTag) + "_mc");
_local3 = (getDefinitionByName(_local2) as Class);
_local4 = new (_local3);
Rooms[roomTag].imageB = _local4;
_local5 = new room20panel_mc();
Rooms[roomTag].imageC = _local5;
_local6 = new pig_mc();
_local6.name = "MALE MINIATURE";
_local6.tag = "pigICON_mc";
Rooms[roomTag].imageD = _local6;
_local7 = new BACK_mc();
_local7.x = 260;
_local7.y = 380;
Rooms[roomTag].back = _local7;
_local8 = Rooms[roomTag];
_local9 = new Array();
_local8.panel_smashed = false;
_local8.pushed = false;
_local8.pig_taken = false;
_local8.pole_taken = false;
_local10 = new Rectangle(38, 59, 87, 265);
_local11 = new Rectangle(304, 23, 63, 144);
_local12 = new Rectangle(455, 108, 65, 80);
_local13 = new Rectangle(152, 133, 37, 193);
_local14 = new Rectangle(479, 130, 17, 50);
_local15 = new Rectangle(245, 360, 30, 30);
_local16 = new RM20pole_mc();
_local16.name = "POLE";
_local16.tag = "poleICON_mc";
Rooms[roomTag].imageZ = _local16;
_local9.push(_local10);
_local9.push(_local11);
_local9.push(_local12);
_local9.push(_local13);
_local9.push(_local14);
_local9.push(_local15);
_local8.MouseEvents = _local9;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].timer = 0;
stage.addChild(Rooms[roomTag].imageB);
stage.addChild(Rooms[roomTag].back);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
if (Rooms[roomTag].panel_smashed){
stage.addChild(Rooms[roomTag].imageC);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageC);
};
if (!Rooms[roomTag].pole_taken){
stage.addChild(Rooms[roomTag].imageZ);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageZ);
};
if (((Rooms[roomTag].pushed) && (!(Rooms[roomTag].pig_taken)))){
stage.addChild(Rooms[roomTag].imageD);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageD);
};
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
stage.removeEventListener(Event.ENTER_FRAME, room20);
stage.addEventListener(Event.ENTER_FRAME, room20EVENTS, false, 0, true);
}
public function exitShout(_arg1:Event):void{
var _local2:MovieClip;
_local2 = new transition_mc();
_local2.name = "transition";
_local2.mouseEnabled = false;
_local2.mouseChildren = false;
stage.addChild(_local2);
_local2.alpha = 0;
_local2.addEventListener(Event.ENTER_FRAME, FadeIn, false, 0, true);
_arg1.target.removeEventListener(MouseEvent.MOUSE_DOWN, exitShout);
Rooms[roomTag].newTag = Rooms[roomTag].targetRoom;
}
public function room24(_arg1:Event):void{
var _local2:String;
var _local3:Class;
var _local4:MovieClip;
var _local5:MovieClip;
var _local6:MovieClip;
var _local7:Object;
var _local8:Array;
var _local9:Rectangle;
var _local10:Rectangle;
var _local11:MovieClip;
var _local12:String;
var _local13:String;
var _local14:String;
if (Rooms[roomTag].first_time){
_local2 = (("house" + roomTag) + "_mc");
_local3 = (getDefinitionByName(_local2) as Class);
_local4 = new (_local3);
Rooms[roomTag].imageB = _local4;
_local5 = new RM24char_mc();
Rooms[roomTag].imageC = _local5;
_local6 = new BACK_mc();
_local6.x = 260;
_local6.y = 380;
Rooms[roomTag].back = _local6;
_local7 = Rooms[roomTag];
_local7.introduced = true;
_local8 = new Array();
_local9 = new Rectangle(73, 44, 418, 329);
_local10 = new Rectangle(245, 360, 30, 30);
_local8.push(_local9);
_local8.push(_local10);
_local7.MouseEvents = _local8;
_local11 = new text_frame_mc();
_local13 = (("<font color='#ABFEC4'>" + "RODENT FACE:") + "</font>");
_local14 = (("<font color='#ADDFFF'>" + "YOU:") + "</font>");
_local12 = ((((((((((((((((((((((((((((((((((((((((((((((((("Standing ahead is a pitiful visage with skinless hands and a face like a rat. He looks terrified at the sight of me.<br>" + "<font size='12'>") + _local13) + "(howling)Wait! WAIT! Oh God! If you're going to kill me do it quickly I beg of you!<br>") + _local14) + "What? I'm not going to-, I just..I thought you were one of them! The only thing I'm doing is getting the hell out of here!<br>") + _local13) + "Really?...<br>") + _local14) + "Yes.<br>") + _local13) + "Then it looks like my prayers have been answered! We've got to help each-other!<br>") + _local14) + "Yes but did you find any way out down here?<br>") + _local13) + "There's a door ahead but...<br>") + _local14) + "But what?<br>") + _local13) + "The only way through is by beating...beating The Machine...<br>") + _local14) + "What is 'The Machine'?<br>") + _local13) + "It's a disgusting game designed to entertain the sick bastard that runs this house.") + "It's...well, one look at it and you'll know what you're supposed to do. Survive on it for longer than 30 seconds and you'll get access to the way ahead. It's ") + "upstairs in the Accerbus room. <br>") + _local14) + "I looked everywhere for that code but...<br>") + _local13) + "-Did you check any of the notes found in the house? I know The Doctor has a habit of keeping his secrets in obvious places, like his journals. <br>") + _local14) + "I thought I had but...<br>") + _local13) + "You had better check again more carefully.<br>") + _local14) + "Alright. Why didn't you use 'The Machine' yourself?<br>") + _local13) + "I've been too scared to move..I---I...I.. think.. Someone..or something...is down here with us.<br>") + _local14) + "What?!!Where?<br>") + _local13) + "I don't know. Maybe it's just a feeling. But I'm paralysed. I can't explain it but I've heard noises...please, hurry back.<br>") + _local14) + "You're not coming?Are you serious? We'd be better off together, no?<br>") + _local13) + "I can't..please understand...I'm a coward..It's all been too much. I don't care about my life. I think if I stay here maybe it's my only way to stay alive!(sobbing)<br>") + _local14) + "..Don't worry, this will all be over soon. When I find this Doctor character I'll make sure he pays for all of this madness. Wait here.<br>") + _local13) + "OK. I'll hide for a bit and wait for you to come back with the key.<br>");
};
Rooms[roomTag].timer = 0;
stage.addChild(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
if (Rooms[roomTag].first_time){
stage.addChild(Rooms[roomTag].imageC);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageC);
stage.addChild(_local11);
Rooms[roomTag].deleteArray.push(_local11);
Start_ShoutBox(_local11, 100, 100, _local12);
Rooms[roomTag].targetRoom = 24;
Rooms[roomTag].first_time = false;
} else {
stage.addEventListener(Event.ENTER_FRAME, room24EVENTS, false, 0, true);
stage.addChild(Rooms[roomTag].back);
};
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
stage.removeEventListener(Event.ENTER_FRAME, room24);
}
public function fadeColor(_arg1:Event):void{
var _local2:MovieClip;
_local2 = MovieClip(_arg1.target);
_local2.alphaV = (_local2.alphaV + 0.01);
if (_local2.alphaV >= 0.8){
_local2.removeEventListener(Event.ENTER_FRAME, fadeColor);
};
Tint(_local2, _local2.hex, _local2.alphaV);
}
public function room27(_arg1:Event):void{
var _local2:Object;
var _local3:String;
var _local4:Class;
var _local5:MovieClip;
var _local6:MovieClip;
var _local7:MovieClip;
var _local8:MovieClip;
var _local9:MovieClip;
var _local10:MovieClip;
var _local11:Object;
var _local12:Array;
var _local13:Rectangle;
var _local14:Rectangle;
if (Rooms[roomTag].first_time){
_local3 = (("house" + roomTag) + "_mc");
_local4 = (getDefinitionByName(_local3) as Class);
_local5 = new (_local4);
Rooms[roomTag].imageB = _local5;
_local6 = new one_mc();
Rooms[roomTag].reel1 = _local6;
Rooms[roomTag].reel1.name = "1";
_local7 = new one_mc();
Rooms[roomTag].reel2 = _local7;
_local7.x = 45;
_local7.y = -5;
_local7.name = "2";
_local8 = new one_mc();
Rooms[roomTag].reel3 = _local8;
_local8.x = 85;
_local8.y = -10;
_local8.name = "3";
_local9 = new one_mc();
Rooms[roomTag].reel4 = _local9;
_local9.x = 125;
_local9.y = -15;
_local9.name = "4";
_local10 = new BACK_mc();
_local10.x = 260;
_local10.y = 380;
Rooms[roomTag].back = _local10;
_local11 = Rooms[roomTag];
_local12 = new Array();
_local11.tag1 = 1;
_local11.tag2 = 1;
_local11.tag3 = 1;
_local11.tag4 = 1;
_local13 = new Rectangle(73, 44, 418, 329);
_local14 = new Rectangle(245, 360, 30, 30);
_local12.push(_local13);
_local12.push(_local14);
_local11.MouseEvents = _local12;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].mouseSet = true;
Rooms[roomTag].reel1.buttonMode = true;
Rooms[roomTag].reel1.useHandCursor = true;
Rooms[roomTag].reel1.tag = Rooms[roomTag].tag1;
Rooms[roomTag].reel2.buttonMode = true;
Rooms[roomTag].reel2.useHandCursor = true;
Rooms[roomTag].reel2.tag = Rooms[roomTag].tag2;
Rooms[roomTag].reel3.buttonMode = true;
Rooms[roomTag].reel3.useHandCursor = true;
Rooms[roomTag].reel3.tag = Rooms[roomTag].tag3;
Rooms[roomTag].reel4.buttonMode = true;
Rooms[roomTag].reel4.useHandCursor = true;
Rooms[roomTag].reel4.tag = Rooms[roomTag].tag4;
Rooms[roomTag].timer = 0;
stage.addChild(Rooms[roomTag].imageB);
stage.addChild(Rooms[roomTag].reel1);
Rooms[roomTag].reel1.gotoAndStop(Rooms[roomTag].tag1);
Rooms[roomTag].reel1.addEventListener(MouseEvent.CLICK, reelRoll, false, 0, true);
stage.addChild(Rooms[roomTag].reel2);
Rooms[roomTag].reel2.gotoAndStop(Rooms[roomTag].tag2);
Rooms[roomTag].reel2.addEventListener(MouseEvent.CLICK, reelRoll, false, 0, true);
stage.addChild(Rooms[roomTag].reel3);
Rooms[roomTag].reel3.gotoAndStop(Rooms[roomTag].tag3);
Rooms[roomTag].reel3.addEventListener(MouseEvent.CLICK, reelRoll, false, 0, true);
stage.addChild(Rooms[roomTag].reel4);
Rooms[roomTag].reel4.gotoAndStop(Rooms[roomTag].tag4);
Rooms[roomTag].reel4.addEventListener(MouseEvent.CLICK, reelRoll, false, 0, true);
Rooms[roomTag].reel1.filters = filtersArray;
Rooms[roomTag].reel2.filters = filtersArray;
Rooms[roomTag].reel3.filters = filtersArray;
Rooms[roomTag].reel4.filters = filtersArray;
stage.addChild(Rooms[roomTag].back);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
Rooms[roomTag].imageB.addEventListener(Event.ENTER_FRAME, Fizzle, false, 0, true);
_local2 = {link:Rooms[roomTag].imageB, Ename:"Fizzle", Fname:"Room27Fizzle"};
arrListeners.push(_local2);
stage.removeEventListener(Event.ENTER_FRAME, room27);
stage.addEventListener(Event.ENTER_FRAME, room27EVENTS, false, 0, true);
}
public function room21(_arg1:Event):void{
var _local2:String;
var _local3:Class;
var _local4:MovieClip;
var _local5:MovieClip;
var _local6:MovieClip;
var _local7:MovieClip;
var _local8:MovieClip;
var _local9:Object;
var _local10:Array;
var _local11:Rectangle;
var _local12:Rectangle;
var _local13:Rectangle;
var _local14:Rectangle;
var _local15:Rectangle;
if (Rooms[roomTag].first_time){
_local2 = (("house" + roomTag) + "_mc");
_local3 = (getDefinitionByName(_local2) as Class);
_local4 = new (_local3);
Rooms[roomTag].imageB = _local4;
_local5 = new slide_latch2_mc();
_local5.gotoAndStop(1);
Rooms[roomTag].imageD = _local5;
_local6 = new RM21_pic_mc();
Rooms[roomTag].imageE = _local6;
_local7 = new RM21polejut_mc();
Rooms[roomTag].imageF = _local7;
_local8 = new BACK_mc();
_local8.x = 260;
_local8.y = 380;
Rooms[roomTag].back = _local8;
_local9 = Rooms[roomTag];
_local10 = new Array();
_local9.window_open = false;
_local11 = new Rectangle(52, 76, 79, 100);
_local12 = new Rectangle(180, 115, 65, 121);
_local13 = new Rectangle(330, 144, 49, 84);
_local14 = new Rectangle(278, 236, 151, 34);
_local15 = new Rectangle(245, 360, 30, 30);
_local10.push(_local11);
_local10.push(_local12);
_local10.push(_local13);
_local10.push(_local14);
_local10.push(_local15);
_local9.MouseEvents = _local10;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].timer = 0;
stage.addChild(Rooms[roomTag].imageB);
stage.addChild(Rooms[roomTag].imageD);
stage.addChild(Rooms[roomTag].back);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageD);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
if (Rooms[22].smashed){
stage.addChild(Rooms[roomTag].imageE);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageE);
};
if (Rooms[roomTag].window_open){
Rooms[roomTag].imageD.gotoAndStop(2);
};
if (Rooms[20].pushed){
stage.addChild(Rooms[roomTag].imageF);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageF);
};
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
stage.removeEventListener(Event.ENTER_FRAME, room21);
stage.addEventListener(Event.ENTER_FRAME, room21EVENTS, false, 0, true);
}
public function room5EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
var _local4:MovieClip;
var _local5:MovieClip;
var _local6:MovieClip;
var _local7:door_knob_wav;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
if (!_local3){
Rooms[roomTag].mouseSet = false;
Rooms[roomTag].imageB.buttonMode = false;
Rooms[roomTag].imageB.useHandCursor = false;
if (stage.getChildByName("global_text")){
removeMovie(stage.getChildByName("global_text"));
};
};
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local3){
if (_local2 == 0){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "BELLOC DOOR";
};
};
if (_local2 == 1){
if (mouse_clicked){
if (ITEM_IN_USE.name == "M KEY"){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Rooms[roomTag].mobiusDoor_open = true;
removeICON("M KEY");
Text("It works! The door unlocks!");
break;
} else {
mouse_clicked = false;
};
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "MOBIUS DOOR";
};
};
if (_local2 == 2){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "CLORIS DOOR";
};
};
if (_local2 == 3){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "OIL-PAINTING";
};
};
if (_local2 == 4){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "PAINTING";
};
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 0)))){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
_local4 = new transition_mc();
_local4.name = "transition";
_local4.mouseEnabled = false;
_local4.mouseChildren = false;
stage.addChild(_local4);
_local4.alpha = 0;
_local4.addEventListener(Event.ENTER_FRAME, FadeIn, false, 0, true);
Rooms[roomTag].newTag = 6;
break;
} else {
display_txt.text = "A placard on the door reads: 'BELLOC QUARTERS' Enter?";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
};
if (((_local3) && ((_local2 == 2)))){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
_local5 = new transition_mc();
_local5.name = "transition";
_local5.mouseEnabled = false;
_local5.mouseChildren = false;
stage.addChild(_local5);
_local5.alpha = 0;
_local5.addEventListener(Event.ENTER_FRAME, FadeIn, false, 0, true);
Rooms[roomTag].newTag = 9;
break;
} else {
display_txt.text = "A placard on the door reads: 'CLORIS ENCLOSURE' Enter?";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
};
if (((_local3) && ((_local2 == 1)))){
if (Rooms[roomTag].mobiusDoor_open){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
_local6 = new transition_mc();
_local6.name = "transition";
_local6.mouseEnabled = false;
_local6.mouseChildren = false;
stage.addChild(_local6);
_local6.alpha = 0;
_local6.addEventListener(Event.ENTER_FRAME, FadeIn, false, 0, true);
Rooms[roomTag].newTag = 8;
break;
} else {
display_txt.text = "You've unlocked the door. Enter?";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
};
if ((((Rooms[roomTag].mobiusDoor_open == false)) && (mouse_clicked))){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
_local7 = new door_knob_wav();
_local7.play();
display_txt.text = "This door wont open without a key.";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
} else {
display_txt.text = "A placard on the door reads: 'MOBIUS GALLERY' Enter?";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
};
if (((_local3) && ((_local2 == 3)))){
display_txt.text = "An old-fashioned oil-painting.";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
if (((_local3) && ((_local2 == 4)))){
display_txt.text = "Creepy stuff.";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
if (((((_local3) && ((_local2 == 5)))) && (Rooms[roomTag].key_appear))){
if (mouse_clicked){
Rooms[roomTag].key_appear = false;
Rooms[roomTag].imageD.addEventListener(Event.ENTER_FRAME, getItem, false, 0, true);
break;
} else {
Text("It's a key. Where the hell did this come from? Someone must've placed it here. Take?");
break;
};
};
if (((_local3) && ((_local2 == 6)))){
if (mouse_clicked){
Go_Back(2);
break;
} else {
display_txt.text = "BACK?";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
};
};
}
public function roomTimeOutEvent2(_arg1:Event):void{
var _local2:MovieClip;
var _local3:Timer;
if (Rooms[roomTag].imageC){
removeMovie(Rooms[roomTag].imageC);
};
_local2 = new death1_mc();
_local2.visible = false;
stage.addChild(_local2);
Rooms[roomTag].deleteArray.push(_local2);
Rooms[roomTag].newTag = 2;
_local3 = new Timer(5000, 1);
_local3.start();
_local3.addEventListener(TimerEvent.TIMER, retry);
_local2.addEventListener(Event.ENTER_FRAME, blurIN, false, 0, true);
_local2.visible = true;
stage.removeEventListener(Event.ENTER_FRAME, roomTimeOutEvent2);
}
public function room26(_arg1:Event):void{
var _local2:MovieClip;
var _local3:Timer;
var _local4:MovieClip;
var _local5:Object;
var _local6:Array;
if (Rooms[roomTag].first_time){
_local4 = new the_machine_mc();
Rooms[roomTag].imageB = _local4;
_local5 = Rooms[roomTag];
_local6 = new Array();
_local5.MouseEvents = _local6;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].timer = 0;
sawOb.xPos = Rooms[roomTag].imageB.saw.x;
sawOb.yPos = Rooms[roomTag].imageB.saw.y;
sawOb.speed = 0;
sawOb.sawy = 0;
sawOb.spin = true;
sawOb.facing = 1;
sawOb.timer = 0;
sawOb.movement = 0;
sawOb.hit = false;
sawOb.win = false;
sawOb.countdown = 40;
sawOb.countdownX = 40;
sawOb.quake = false;
sawOb.inertia = 0.09;
Rooms[roomTag].imageB.switch2.op = false;
Rooms[roomTag].timeUP = false;
stage.addEventListener(Event.ENTER_FRAME, sawStart, false, 0, true);
Rooms[roomTag].imageB.button1.addEventListener(MouseEvent.CLICK, sawLEFT, false, 0, true);
Rooms[roomTag].imageB.button3.addEventListener(MouseEvent.CLICK, sawRIGHT, false, 0, true);
stage.addChild(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
_local2 = new survive_mc();
Rooms[roomTag].imageC = _local2;
stage.addChild(Rooms[roomTag].imageC);
Rooms[roomTag].deleteArray.push(_local2);
Rooms[roomTag].targetTime = 15;
Rooms[roomTag].imageC.timer_txt.text = Rooms[roomTag].targetTime;
_local3 = new Timer(1000, 15);
_local3.start();
_local3.addEventListener(TimerEvent.TIMER, onTick3, false, 0, true);
Rooms[roomTag].countDown = _local3;
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
stage.removeEventListener(Event.ENTER_FRAME, room26);
stage.addEventListener(Event.ENTER_FRAME, room26EVENTS, false, 0, true);
}
public function room10(_arg1:Event):void{
var _local2:Object;
var _local3:String;
var _local4:Class;
var _local5:MovieClip;
var _local6:MovieClip;
var _local7:MovieClip;
var _local8:Object;
var _local9:Array;
var _local10:Rectangle;
var _local11:Rectangle;
var _local12:Rectangle;
if (Rooms[roomTag].first_time){
_local3 = (("house" + roomTag) + "_mc");
_local4 = (getDefinitionByName(_local3) as Class);
_local5 = new (_local4);
Rooms[roomTag].imageB = _local5;
_local6 = new ammonia_mc();
_local6.name = "AMMONIA";
_local6.x = 406;
_local6.y = 205;
_local6.tag = "ammoniaICON_mc";
Rooms[roomTag].imageC = _local6;
_local7 = new BACK_mc();
_local7.x = 260;
_local7.y = 380;
Rooms[roomTag].back = _local7;
_local8 = Rooms[roomTag];
_local9 = new Array();
_local8.ammonia_taken = false;
_local10 = new Rectangle(69, 90, 280, 280);
_local11 = new Rectangle(376, 183, 70, 70);
_local12 = new Rectangle(245, 360, 30, 30);
_local9.push(_local10);
_local9.push(_local11);
_local9.push(_local12);
_local8.MouseEvents = _local9;
Earthquake.go(Rooms[roomTag].imageB, 10, 2, Rooms[roomTag].imageC);
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].timer = 0;
stage.addChild(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
if (!Rooms[roomTag].ammonia_taken){
stage.addChild(Rooms[roomTag].imageC);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageC);
};
stage.addEventListener(Event.ENTER_FRAME, room10EVENTS, false, 0, true);
stage.addChild(Rooms[roomTag].back);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
Rooms[roomTag].imageB.addEventListener(Event.ENTER_FRAME, Fizzle, false, 0, true);
_local2 = {link:Rooms[roomTag].imageB, Ename:"Fizzle"};
arrListeners.push(_local2);
stage.removeEventListener(Event.ENTER_FRAME, room10);
}
public function room12(_arg1:Event):void{
var _local2:String;
var _local3:Class;
var _local4:MovieClip;
var _local5:MovieClip;
var _local6:Object;
var _local7:Array;
var _local8:Object;
var _local9:SimpleButton;
var _local10:MovieClip;
BATTLE_MODE = true;
_local2 = "house9_mc";
_local3 = (getDefinitionByName(_local2) as Class);
_local4 = new (_local3);
Rooms[roomTag].imageB = _local4;
_local5 = new statueman_mc();
Rooms[roomTag].imageC = _local5;
_local6 = Rooms[roomTag];
_local7 = new Array();
_local6.MouseEvents = _local7;
Rooms[roomTag].timer = 0;
Rooms[roomTag].ready = false;
stage.addChild(Rooms[roomTag].imageB);
stage.addChild(Rooms[roomTag].imageC);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageC);
Rooms[roomTag].imageC.addEventListener(Event.ENTER_FRAME, blurIN, false, 0, true);
Rooms[roomTag].imageC.visible = true;
Earthquake.go(Rooms[roomTag].imageB, 10, 0.5);
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
Rooms[roomTag].imageB.addEventListener(Event.ENTER_FRAME, Fizzle, false, 0, true);
_local8 = {link:Rooms[roomTag].imageB, Ename:"Fizzle"};
arrListeners.push(_local8);
Text((("The Statue wasn't a statue at all! Another one of the Doctors monsters!" + "It blocks my path. Fight or die! With the hammer in my grasp I prepare for battle.") + "(CLICK THE EXIT DIALOGUE ICON)"));
_local9 = new exitdialogue_mc();
_local9.x = 270;
_local9.y = 320;
stage.addChild(_local9);
_local10 = new BATTLEMENU_mc();
_local10.alpha = 0.7;
stage.addChild(_local10);
Rooms[roomTag].menuT = _local10;
Rooms[roomTag].exitT = _local9;
Rooms[roomTag].targetRoom = 9;
_local9.addEventListener(MouseEvent.MOUSE_DOWN, exitMenu, false, 0, true);
stage.removeEventListener(Event.ENTER_FRAME, room12);
stage.addEventListener(Event.ENTER_FRAME, room12EVENTS, false, 0, true);
}
public function room22(_arg1:Event):void{
var _local2:Object;
var _local3:String;
var _local4:Class;
var _local5:MovieClip;
var _local6:MovieClip;
var _local7:MovieClip;
var _local8:Object;
var _local9:Array;
var _local10:Rectangle;
var _local11:Rectangle;
if (Rooms[roomTag].first_time){
_local3 = (("house" + roomTag) + "_mc");
_local4 = (getDefinitionByName(_local3) as Class);
_local5 = new (_local4);
Rooms[roomTag].imageB = _local5;
_local6 = new RM20pipe_mc();
Rooms[roomTag].imageC = _local6;
_local7 = new BACK_mc();
_local7.x = 260;
_local7.y = 380;
Rooms[roomTag].back = _local7;
_local8 = Rooms[roomTag];
_local9 = new Array();
_local8.smashed = false;
_local8.pole_in = false;
_local10 = new Rectangle(73, 44, 418, 329);
_local11 = new Rectangle(245, 360, 30, 30);
_local9.push(_local10);
_local9.push(_local11);
_local8.MouseEvents = _local9;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].timer = 0;
if (!Rooms[roomTag].smashed){
stage.addChild(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
};
if (Rooms[roomTag].smashed){
stage.addChild(Rooms[roomTag].imageC);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageC);
};
stage.addChild(Rooms[roomTag].back);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
Rooms[roomTag].imageB.addEventListener(Event.ENTER_FRAME, Fizzle, false, 0, true);
_local2 = {link:Rooms[roomTag].imageB, Ename:"Fizzle", Fname:"Room22Fizzle"};
arrListeners.push(_local2);
stage.removeEventListener(Event.ENTER_FRAME, room22);
stage.addEventListener(Event.ENTER_FRAME, room22EVENTS, false, 0, true);
}
public function room12EVENTS(_arg1:Event):void{
var _local2:MovieClip;
var _local3:MovieClip;
var _local4:Timer;
var _local5:Timer;
var _local6:BitmapData;
var _local7:BitmapData;
var _local8:Rectangle;
var _local9:Point;
var _local10:Bitmap;
var _local11:MovieClip;
if (dead){
return;
};
if (Rooms[roomTag].ready == false){
return;
};
if (Rooms[roomTag].first_time){
Rooms[roomTag].tag = 10;
_local2 = new attack_mc();
Rooms[roomTag].imageF = _local2;
stage.addChild(_local2);
_local3 = new hitCOUNT_mc();
Rooms[roomTag].imageG = _local3;
stage.addChild(_local3);
Rooms[roomTag].targetTime = 15;
_local4 = new Timer(1000, 15);
_local4.start();
_local4.addEventListener(TimerEvent.TIMER, onTick2, false, 0, true);
Rooms[roomTag].countDown = _local4;
Rooms[roomTag].imageF.timer_txt.text = Rooms[roomTag].targetTime;
_local5 = new Timer(800, 30);
_local5.start();
_local5.addEventListener(TimerEvent.TIMER, clockHit, false, 0, true);
Rooms[roomTag].countDown2 = _local5;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].imageG.timer_txt.text = Rooms[roomTag].tag;
if (Rooms[roomTag].tag <= 0){
removeMovie(Rooms[roomTag].imageC);
removeMovie(Rooms[roomTag].imageF);
removeMovie(Rooms[roomTag].imageG);
Rooms[roomTag].countDown.stop();
Rooms[roomTag].countDown.removeEventListener(TimerEvent.TIMER, onTick2);
Rooms[roomTag].countDown2.stop();
Rooms[roomTag].countDown2.removeEventListener(TimerEvent.TIMER, clockHit);
_local6 = new BitmapData(1000, 1000, true, 0xFF);
_local7 = new enemy1_mc(1000, 1000);
_local8 = new Rectangle(0, 0, 1000, 1000);
_local9 = new Point(0, 0);
_local6.copyPixels(_local7, _local8, _local9);
_local10 = new Bitmap(_local6);
_local10.name = "temp";
stage.addChild(_local10);
Explode(_local7, 16718362, 40, 123, 14, 101);
_local6.dispose();
removeBitmap(_local10);
BATTLE_MODE = false;
Text("WELL DONE! YOU'VE DEFEATED THE ENEMY!");
Rooms[9].statue_defeated = true;
Rooms[5].key_appear = true;
_local11 = new transition_mc();
_local11.name = "transition";
_local11.mouseEnabled = false;
_local11.mouseChildren = false;
stage.addChild(_local11);
_local11.alpha = 0;
_local11.addEventListener(Event.ENTER_FRAME, FadeIn, false, 0, true);
Rooms[roomTag].newTag = 9;
stage.removeEventListener(Event.ENTER_FRAME, room4);
stage.removeEventListener(Event.ENTER_FRAME, room12EVENTS);
};
}
public function removeAllListeners():void{
var _local1:*;
var _local2:Function;
if (arrListeners.length > 0){
for (_local1 in arrListeners) {
_local2 = this[arrListeners[_local1].Ename];
if (arrListeners[_local1].link.hasEventListener(Event.ENTER_FRAME)){
arrListeners[_local1].link.removeEventListener(Event.ENTER_FRAME, _local2);
arrListeners[_local1] = null;
};
};
arrListeners = [];
};
}
function frame1(){
ITEM = false;
STAGE_WIDTH = stage.stageWidth;
STAGE_HEIGHT = stage.stageHeight;
STAGE_CENTERX = (stage.stageWidth / 2);
STAGE_CENTERY = (stage.stageHeight / 2);
SHOUT_BOX_TIMER = 0;
SHOUT_BOX_BLUR = false;
KEY_UP = 87;
KEY_DOWN = 83;
KEY_LEFT = 65;
KEY_RIGHT = 68;
KEY_ENTER = 79;
sawOb = new Object();
Bfilt3 = new BlurFilter();
Bfilt3.blurX = 50;
Bfilt3.blurY = 50;
Bfilt3.quality = BitmapFilterQuality.LOW;
keys = new Object();
keys[Keyboard.UP] = {down:false, dirx:0, diry:-1};
keys[Keyboard.DOWN] = {down:false, dirx:0, diry:1};
keys[Keyboard.LEFT] = {down:false, dirx:-1, diry:0};
keys[Keyboard.RIGHT] = {down:false, dirx:1, diry:0};
keys[KEY_UP] = {down:false, dirx:0, diry:-1};
keys[KEY_DOWN] = {down:false, dirx:0, diry:1};
keys[KEY_LEFT] = {down:false, dirx:-1, diry:0};
keys[KEY_RIGHT] = {down:false, dirx:1, diry:0};
keys[KEY_ENTER] = {down:false, dirx:0, diry:0, held:false};
my_shadow = new DropShadowFilter();
my_shadow.color = 0;
my_shadow.blurY = 2;
my_shadow.blurX = 2;
my_shadow.strength = 150;
my_shadow.distance = 1;
filtersArray = new Array(my_shadow);
yourFont = getDefinitionByName("fontin");
Font.registerFont(yourFont);
format = new TextFormat();
format.font = "fontin";
format.color = 0xFFFFFF;
format.size = 13;
display_txt = new TextField();
display_txt.name = "global_text";
display_txt.width = 500;
display_txt.height = 300;
display_txt.wordWrap = true;
display_txt.embedFonts = true;
display_txt.selectable = false;
display_txt.x = 10;
display_txt.y = 330;
display_txt.filters = filtersArray;
emitterCount = 0;
renderCount = 0;
eArray = new Array();
tp = new Array();
renderArray = new Array();
rArrayCount = 0;
keycheck = true;
arrListeners = [];
dead = false;
BATTLE_MODE = false;
startColor = new ColorTransform();
endColor = new ColorTransform();
clip = new MovieClip();
itemsInInventory = new Array();
inventorySprite = new Sprite();
inventorySprite.name = "inventory";
inventorySprite.x = 20;
inventorySprite.y = 30;
stage.addChild(inventorySprite);
PASSCODE = (((String(randRange(1, 7)) + String(randRange(1, 7))) + String(randRange(1, 7))) + String(randRange(1, 7)));
Key.initialize(stage);
stage.addEventListener(Event.ENTER_FRAME, main, false, 0, true);
stage.addEventListener(MouseEvent.MOUSE_DOWN, mouse_down);
stage.addEventListener(MouseEvent.MOUSE_UP, mouse_up);
stage.addEventListener(KeyboardEvent.KEY_DOWN, downKeys);
stage.addEventListener(KeyboardEvent.KEY_UP, upKeys);
roomTag = 0;
Rooms = new Array();
obArray = new Array();
attacking = false;
shout = new Object();
Bfilt = new BlurFilter();
Bfilt.blurX = 50;
Bfilt.blurY = 50;
Bfilt.quality = BitmapFilterQuality.LOW;
antiGC = new Dictionary(false);
Initialise();
roomTag = 15;
stage.addEventListener(Event.ENTER_FRAME, inVent, false, 0, true);
}
public function room23(_arg1:Event):void{
var _local2:Object;
var _local3:String;
var _local4:Class;
var _local5:MovieClip;
var _local6:MovieClip;
var _local7:Object;
var _local8:Array;
var _local9:Rectangle;
var _local10:Rectangle;
if (Rooms[roomTag].first_time){
_local3 = (("house" + roomTag) + "_mc");
_local4 = (getDefinitionByName(_local3) as Class);
_local5 = new (_local4);
Rooms[roomTag].imageB = _local5;
_local6 = new BACK_mc();
_local6.x = 260;
_local6.y = 380;
Rooms[roomTag].back = _local6;
_local7 = Rooms[roomTag];
_local8 = new Array();
_local9 = new Rectangle(73, 44, 418, 329);
_local10 = new Rectangle(245, 360, 30, 30);
_local8.push(_local9);
_local8.push(_local10);
_local7.MouseEvents = _local8;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].timer = 0;
stage.addChild(Rooms[roomTag].imageB);
stage.addChild(Rooms[roomTag].back);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
Rooms[roomTag].imageB.addEventListener(Event.ENTER_FRAME, Fizzle, false, 0, true);
_local2 = {link:Rooms[roomTag].imageB, Ename:"Fizzle", Fname:"Room22Fizzle"};
arrListeners.push(_local2);
stage.removeEventListener(Event.ENTER_FRAME, room23);
stage.addEventListener(Event.ENTER_FRAME, room23EVENTS, false, 0, true);
}
public function mouse_up(_arg1:MouseEvent):void{
mouse_clicked = false;
}
public function room25(_arg1:Event):void{
var _local2:Object;
var _local3:String;
var _local4:Class;
var _local5:MovieClip;
var _local6:MovieClip;
var _local7:MovieClip;
var _local8:Object;
var _local9:Array;
var _local10:Rectangle;
var _local11:Rectangle;
var _local12:Rectangle;
if (Rooms[roomTag].first_time){
_local3 = (("house" + roomTag) + "_mc");
_local4 = (getDefinitionByName(_local3) as Class);
_local5 = new (_local4);
Rooms[roomTag].imageB = _local5;
_local6 = new bird_mc();
_local6.name = "FEMALE MINIATURE";
_local6.tag = "birdICON_mc";
Rooms[roomTag].imageD = _local6;
_local7 = new BACK_mc();
_local7.x = 260;
_local7.y = 380;
Rooms[roomTag].back = _local7;
_local8 = Rooms[roomTag];
_local9 = new Array();
_local8.collected = false;
_local8.bird_taken = false;
_local10 = new Rectangle(95, 195, 374, 127);
_local11 = new Rectangle(119, 327, 50, 50);
_local12 = new Rectangle(245, 360, 30, 30);
_local9.push(_local10);
_local9.push(_local11);
_local9.push(_local12);
_local8.MouseEvents = _local9;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].timer = 0;
stage.addChild(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
if (((Rooms[roomTag].collected) && (!(Rooms[roomTag].bird_taken)))){
stage.addChild(Rooms[roomTag].imageD);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageD);
};
stage.addChild(Rooms[roomTag].back);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
Rooms[roomTag].imageB.addEventListener(Event.ENTER_FRAME, Fizzle, false, 0, true);
_local2 = {link:Rooms[roomTag].imageB, Ename:"Fizzle", Fname:"Room22Fizzle"};
arrListeners.push(_local2);
stage.removeEventListener(Event.ENTER_FRAME, room25);
stage.addEventListener(Event.ENTER_FRAME, room25EVENTS, false, 0, true);
}
public function onMouseCompleteEvent(_arg1:MouseEvent){
m_held = true;
}
public function FireWork():void{
var _local1:Emitter2D;
var _local2:BitmapRenderer;
var _local3:MovieClip;
_local1 = new Emitter2D();
_local1.counter = new Blast(40);
_local1.addInitializer(new SharedImage(new Dot(3)));
_local1.addInitializer(new ColorInit(4294782253, 4289790209));
_local1.addInitializer(new Velocity(new DiscZone(new Point(0, 0), 160, 0)));
_local1.addInitializer(new Lifetime(2));
_local1.addAction(new Age(Quadratic.easeIn));
_local1.addAction(new Fade(1, 0));
_local1.addAction(new Move());
_local1.addAction(new Accelerate(0, 150));
_local2 = new BitmapRenderer(new Rectangle(0, 0, 550, 400));
_local2.addFilter(new BlurFilter(2, 2, 1));
_local2.addFilter(new ColorMatrixFilter([1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0.95, 0]));
_local2.addEmitter(_local1);
_local3 = new MovieClip();
_local3.mouseEnabled = false;
_local3.mouseChildren = false;
_local3.name = "sfx";
_local3.addChild(_local2);
stage.addChild(_local3);
Rooms[roomTag].deleteArray.push(_local3);
_local3.emitter = _local1;
eArray.push(_local1);
renderArray.push(_local2);
_local1.addEventListener(EmitterEvent.EMITTER_EMPTY, kill_particles_Bitmap);
_local1.x = stage.mouseX;
_local1.y = stage.mouseY;
_local1.start();
}
public function room2EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
var _local4:MovieClip;
var _local5:door_knob_wav;
var _local6:MovieClip;
var _local7:cloth_wav;
var _local8:MovieClip;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
if (!_local3){
Rooms[roomTag].mouseSet = false;
Rooms[roomTag].imageB.buttonMode = false;
Rooms[roomTag].imageB.useHandCursor = false;
if (stage.getChildByName("global_text")){
removeMovie(stage.getChildByName("global_text"));
};
};
if (ITEM){
if (_local3){
if (_local2 == 0){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "DOOR";
};
};
if (_local2 == 1){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "WADROBE";
};
};
if (_local2 == 2){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "METAL CAGE";
};
};
if (_local2 == 3){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "DEAD BODY";
};
};
if (_local2 == 4){
if (!Rooms[roomTag].wardrobe){
break;
};
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "PRISONER (DECEASED)";
};
};
if (_local2 == 5){
break;
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 0)))){
if (Rooms[roomTag].doorA_open){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
_local4 = new transition_mc();
_local4.name = "transition";
_local4.mouseEnabled = false;
_local4.mouseChildren = false;
stage.addChild(_local4);
_local4.alpha = 0;
_local4.addEventListener(Event.ENTER_FRAME, FadeIn, false, 0, true);
Rooms[roomTag].newTag = 5;
break;
} else {
display_txt.text = "It's been left unlocked. Looks like I can leave.";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
};
if ((((Rooms[roomTag].doorA_open == false)) && (mouse_clicked))){
if (Rooms[roomTag].cage_open){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
display_txt.text = "It's still jammed! I better hide quickly!";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
mouse_clicked = false;
Rooms[roomTag].timer = 20;
_local5 = new door_knob_wav();
_local5.play();
display_txt.text = "It won't budge no matter how I try.";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
} else {
display_txt.text = "A heavy door. It's firmly bolted from the other side.";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
};
if (((_local3) && ((_local2 == 1)))){
if ((((Rooms[roomTag].wardrobe == false)) && (mouse_clicked))){
if (Rooms[roomTag].cage_open){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
_local6 = new transition_mc();
_local6.name = "transition";
_local6.mouseEnabled = false;
_local6.mouseChildren = false;
stage.addChild(_local6);
_local6.alpha = 0;
_local6.addEventListener(Event.ENTER_FRAME, FadeIn, false, 0, true);
if (Rooms[roomTag].countDown){
Rooms[roomTag].countDown.removeEventListener(TimerEvent.TIMER, onTick);
};
Rooms[roomTag].newTag = 4;
break;
};
mouse_clicked = false;
Rooms[roomTag].timer = 20;
display_txt.text = "There's nothing to investigate, it's empty.";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
} else {
display_txt.text = "The wardrobe is huge, yet empty.";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
};
if (((_local3) && ((_local2 == 2)))){
if (Rooms[roomTag].wardrobe){
break;
};
if ((((Rooms[roomTag].wardrobe == false)) && (mouse_clicked))){
if (Rooms[roomTag].cage_open){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
display_txt.text = "What am I doing? I can't hide in there!";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
mouse_clicked = false;
Rooms[roomTag].timer = 20;
_local7 = new cloth_wav();
_local7.play();
_local8 = new transition_mc();
_local8.name = "transition";
_local8.mouseEnabled = false;
_local8.mouseChildren = false;
stage.addChild(_local8);
_local8.alpha = 0;
_local8.addEventListener(Event.ENTER_FRAME, FadeIn, false, 0, true);
Rooms[roomTag].newTag = 3;
break;
} else {
display_txt.text = "Beneath the drapes you can hear a muffled noise of some type of creature.Remove the drapes?";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
};
if (((_local3) && ((_local2 == 3)))){
display_txt.text = "My God..some poor soul has been eviscerated here.";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
if (((((_local3) && ((_local2 == 4)))) && (Rooms[roomTag].wardrobe))){
Text("He was viciously murdered with a claw hammer before my very eyes.");
break;
};
if (((((((_local3) && ((_local2 == 5)))) && (Rooms[roomTag].doorA_open))) && (!(Rooms[roomTag].hammer_taken)))){
if (mouse_clicked){
Rooms[roomTag].hammer_taken = true;
Rooms[roomTag].imageD.addEventListener(Event.ENTER_FRAME, getItem, false, 0, true);
break;
} else {
Text("Looks like the murder weapon has been discarded here. I hate to admit it, but it might come in handy. Take?");
break;
};
};
};
}
public function Conversation(_arg1:Event):void{
if (SHOUT_BOX_TIMER++ < 50){
return;
};
if (SHOUT_BOX_BLUR){
shout.text_image.addEventListener(Event.ENTER_FRAME, blurIN, false, 0, true);
SHOUT_BOX_BLUR = false;
};
if (shout.count < shout.myText.length){
shout.text_image.text_field.htmlText = shout.myText.substring(0, shout.count);
shout.count++;
shout.text_image.text_field.scrollV = shout.text_image.text_field.maxScrollV;
} else {
shout.text_image.text_field.htmlText = shout.myText;
shout.text_image.exitT.visible = true;
_arg1.target.removeEventListener(Event.ENTER_FRAME, Conversation);
};
if (mouse_clicked){
mouse_clicked = false;
shout.text_image.text_field.htmlText = shout.myText;
shout.text_image.exitT.visible = true;
_arg1.target.removeEventListener(Event.ENTER_FRAME, Conversation);
};
}
public function clockHit(_arg1:TimerEvent):void{
var _local2:SimpleButton;
_local2 = new HITBUTTON_mc();
_local2.x = randRange(_local2.width, (STAGE_WIDTH - _local2.width));
_local2.y = randRange(_local2.height, (STAGE_HEIGHT - _local2.height));
stage.addChild(_local2);
_local2.addEventListener(Event.ENTER_FRAME, FadeButton, false, 0, true);
_local2.addEventListener(MouseEvent.CLICK, hitSuccess, false, 0, true);
}
public function retry(_arg1:TimerEvent):void{
var _local2:MovieClip;
_local2 = new retry_mc();
stage.addChild(_local2);
_local2.mouseSet = true;
_local2.buttonMode = true;
_local2.useHandCursor = true;
_local2.addEventListener(MouseEvent.CLICK, restart);
_arg1.target.removeEventListener(TimerEvent, retry);
}
public function mouseDownScroll(_arg1:MouseEvent):void{
shout.text_image.text_field.scrollV++;
}
public function room23EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
Quick(_local3);
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local3){
if (_local2 == 0){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "SPIRAL STAIRCASE";
};
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 0)))){
if (mouse_clicked){
Go_Back(24);
break;
} else {
Text("A great spiral staircase that winds down into the darkness. I don't want to go down there but...Proceed?");
break;
};
};
if (((_local3) && ((_local2 == 1)))){
if (mouse_clicked){
Go_Back(15);
break;
} else {
Text("BACK?");
break;
};
};
};
}
public function room18(_arg1:Event):void{
var _local2:String;
var _local3:Class;
var _local4:MovieClip;
var _local5:MovieClip;
var _local6:Object;
var _local7:Array;
var _local8:Rectangle;
var _local9:Rectangle;
if (Rooms[roomTag].first_time){
_local2 = (("house" + roomTag) + "_mc");
_local3 = (getDefinitionByName(_local2) as Class);
_local4 = new (_local3);
Rooms[roomTag].imageB = _local4;
_local5 = new BACK_mc();
_local5.x = 260;
_local5.y = 380;
Rooms[roomTag].back = _local5;
_local6 = Rooms[roomTag];
_local7 = new Array();
_local8 = new Rectangle(226, 144, 118, 161);
_local9 = new Rectangle(245, 360, 30, 30);
_local7.push(_local8);
_local7.push(_local9);
_local6.MouseEvents = _local7;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].timer = 0;
stage.addChild(Rooms[roomTag].imageB);
stage.addChild(Rooms[roomTag].back);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
stage.removeEventListener(Event.ENTER_FRAME, room18);
stage.addEventListener(Event.ENTER_FRAME, room18EVENTS, false, 0, true);
}
public function room2(_arg1:Event):void{
var _local2:Object;
var _local3:String;
var _local4:Class;
var _local5:MovieClip;
var _local6:MovieClip;
var _local7:Object;
var _local8:Array;
var _local9:Rectangle;
var _local10:Rectangle;
var _local11:Rectangle;
var _local12:Rectangle;
var _local13:Rectangle;
var _local14:Rectangle;
var _local15:MovieClip;
var _local16:Timer;
if (Rooms[roomTag].first_time){
_local3 = (("house" + roomTag) + "_mc");
_local4 = (getDefinitionByName(_local3) as Class);
_local5 = new (_local4);
Rooms[roomTag].mouseEnabled = true;
Rooms[roomTag].mouseChildren = true;
Rooms[roomTag].imageB = _local5;
_local6 = new hammer_mc();
_local6.name = "CLAW HAMMER";
_local6.tag = "hammerICON_mc";
Rooms[roomTag].imageD = _local6;
_local7 = Rooms[roomTag];
_local8 = new Array();
_local7.doorA_open = false;
_local7.alarm = false;
_local7.cage_open = false;
_local7.hammer_taken = false;
_local7.wardrobe = false;
_local7.mouseSet = false;
_local7.timeUP = false;
_local9 = new Rectangle(57, 54, 139, 163);
_local10 = new Rectangle(360, 5, 135, 165);
_local11 = new Rectangle(0, 240, 135, 108);
_local12 = new Rectangle(277, 185, 135, 108);
_local13 = new Rectangle(24, 310, 228, 59);
_local14 = new Rectangle(366, 327, 64, 47);
_local8.push(_local9);
_local8.push(_local10);
_local8.push(_local11);
_local8.push(_local12);
_local8.push(_local13);
_local8.push(_local14);
_local7.MouseEvents = _local8;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].timer = 0;
stage.addChild(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
if (((!(Rooms[roomTag].hammer_taken)) && (Rooms[roomTag].doorA_open))){
stage.addChild(Rooms[roomTag].imageD);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageD);
};
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
if (Rooms[roomTag].alarm){
_local15 = new hide_mc();
Rooms[roomTag].imageC = _local15;
stage.addChild(Rooms[roomTag].imageC);
Rooms[roomTag].deleteArray.push(_local15);
Rooms[roomTag].targetTime = 15;
Rooms[roomTag].imageC.timer_txt.text = Rooms[roomTag].targetTime;
_local16 = new Timer(1000, 15);
_local16.start();
_local16.addEventListener(TimerEvent.TIMER, onTick, false, 0, true);
Rooms[roomTag].countDown = _local16;
Earthquake.go(Rooms[roomTag].imageB, 3, 30);
};
Rooms[roomTag].imageB.addEventListener(Event.ENTER_FRAME, Fizzle, false, 0, true);
_local2 = {link:Rooms[roomTag].imageB, Ename:"Fizzle", Fname:"Room2Fizzle"};
arrListeners.push(_local2);
stage.removeEventListener(Event.ENTER_FRAME, room2);
stage.addEventListener(Event.ENTER_FRAME, room2EVENTS, false, 0, true);
}
public function room4(_arg1:Event):void{
var _local2:Tween;
var _local3:Tween;
var _local4:String;
var _local5:Class;
var _local6:MovieClip;
var _local7:MovieClip;
var _local8:MovieClip;
var _local9:Object;
var _local10:Array;
var _local11:MovieClip;
var _local12:MovieClip;
var _local13:String;
var _local14:String;
var _local15:String;
var _local16:String;
if (Rooms[roomTag].first_time){
_local4 = (("house" + roomTag) + "_mc");
_local5 = (getDefinitionByName(_local4) as Class);
_local6 = new (_local5);
Rooms[roomTag].imageB = _local6;
_local7 = new house32_mc();
Rooms[roomTag].imageC = _local7;
_local8 = new house33_mc();
Rooms[roomTag].imageD = _local8;
_local9 = Rooms[roomTag];
_local10 = new Array();
Rooms[2].cage_open = false;
Rooms[2].alarm = false;
Rooms[2].doorA_open = true;
Rooms[2].wardrobe = true;
_local11 = new house2new_mc();
Rooms[2].imageB = _local11;
_local12 = new text_frame_mc();
_local14 = (("<font color='#54C571'>" + "CREATURE:") + "</font>");
_local15 = (("<font color='#ADDFFF'>" + "YOU:") + "</font>");
_local16 = (("<font color='#D2B9D3'>" + "PRISONER:") + "</font>");
_local13 = ((((((((((((((((((((("Hiding inside the wardrobe you pray not to be discovered.<br>" + "<font size='12'>") + _local14) + "Whaattsss thisss...heee's goooonnneee. YOU IN THE CAGE!! Didd you heelpp himm?<br>") + _local16) + "NO...I..I HEARD HIM LEAVE..THAT'S ALL!<br>") + _local14) + "Yoou liieee.... musst be punisssshed!!<br>") + _local15) + "(whispering to yourself)..Is that..the Doctor?<br>") + _local16) + "WHAT ARE YOU DOING? WHY ARE YOU UUNNLOCKING MY DOOR...NOOO..<br>") + _local14) + "Disgustting failed experimmennt...sayyy goodbye to your soooullll.<br>") + _local16) + "NO...!!!!!I'LL DO ANYTHING!!<br>") + "<br>*SMASHING SOUNDS*<br><br>") + "ARRRGHHHG...!!!!!<br>") + _local14) + "Nowww..I goo...time to seeeek outt ourr lost exss-periiment..<br>") + _local15) + "(under breath) He was killed by that..thing...Now it's gone..I have to get out of here!");
Rooms[roomTag].first_time = false;
};
stage.addChild(Rooms[roomTag].imageB);
stage.addChild(Rooms[roomTag].imageC);
stage.addChild(Rooms[roomTag].imageD);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageC);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageD);
_local2 = new Tween(Rooms[roomTag].imageC, "x", Regular.easeOut, 500, -50, 5, true);
_local2.addEventListener(TweenEvent.MOTION_FINISH, tweenFinished);
antiGC[_local2] = _local2;
_local3 = new Tween(Rooms[roomTag].imageB, "x", Regular.easeOut, -10, 0, 5, true);
_local3.addEventListener(TweenEvent.MOTION_FINISH, tweenFinished);
antiGC[_local3] = _local3;
stage.addChild(_local12);
Rooms[roomTag].deleteArray.push(_local12);
Start_ShoutBox(_local12, 180, -45, _local13);
Rooms[roomTag].targetRoom = 2;
stage.removeEventListener(Event.ENTER_FRAME, room4);
stage.addEventListener(Event.ENTER_FRAME, room4EVENTS, false, 0, true);
}
public function room5(_arg1:Event):void{
var _local2:String;
var _local3:Class;
var _local4:MovieClip;
var _local5:MovieClip;
var _local6:MovieClip;
var _local7:Object;
var _local8:Array;
var _local9:Rectangle;
var _local10:Rectangle;
var _local11:Rectangle;
var _local12:Rectangle;
var _local13:Rectangle;
var _local14:Rectangle;
var _local15:Rectangle;
if (Rooms[roomTag].first_time){
_local2 = (("house" + roomTag) + "_mc");
_local3 = (getDefinitionByName(_local2) as Class);
_local4 = new (_local3);
Rooms[roomTag].imageB = _local4;
_local5 = new mkey_mc();
_local5.name = "M KEY";
_local5.tag = "mkeyICON_mc";
Rooms[roomTag].imageD = _local5;
_local6 = new BACK_mc();
_local6.x = 260;
_local6.y = 380;
Rooms[roomTag].back = _local6;
_local7 = Rooms[roomTag];
_local8 = new Array();
_local7.mobiusDoor_open = false;
_local7.key_appear = false;
_local9 = new Rectangle(362, 90, 38, 292);
_local10 = new Rectangle(160, 90, 38, 280);
_local11 = new Rectangle(249, 147, 38, 60);
_local12 = new Rectangle(28, 126, 60, 120);
_local13 = new Rectangle(465, 143, 60, 120);
_local14 = new Rectangle(260, 292, 20, 20);
_local15 = new Rectangle(245, 360, 30, 30);
_local8.push(_local9);
_local8.push(_local10);
_local8.push(_local11);
_local8.push(_local12);
_local8.push(_local13);
_local8.push(_local14);
_local8.push(_local15);
_local7.MouseEvents = _local8;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].timer = 0;
stage.addChild(Rooms[roomTag].imageB);
stage.addChild(Rooms[roomTag].back);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
if (Rooms[roomTag].key_appear){
stage.addChild(Rooms[roomTag].imageD);
stage.setChildIndex(Rooms[roomTag].imageD, (stage.numChildren - 1));
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageD);
};
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
stage.removeEventListener(Event.ENTER_FRAME, room5);
stage.addEventListener(Event.ENTER_FRAME, room5EVENTS, false, 0, true);
}
public function room6(_arg1:Event):void{
var _local2:String;
var _local3:Class;
var _local4:MovieClip;
var _local5:MovieClip;
var _local6:MovieClip;
var _local7:Object;
var _local8:Array;
var _local9:Rectangle;
var _local10:Rectangle;
var _local11:Rectangle;
var _local12:Rectangle;
var _local13:MovieClip;
var _local14:String;
var _local15:String;
var _local16:String;
if (Rooms[roomTag].first_time){
_local2 = (("house" + roomTag) + "_mc");
_local3 = (getDefinitionByName(_local2) as Class);
_local4 = new (_local3);
Rooms[roomTag].imageB = _local4;
_local5 = new monk_mc();
Rooms[roomTag].imageC = _local5;
_local5.x = 188;
_local5.y = 350;
_local6 = new BACK_mc();
_local6.x = 260;
_local6.y = 380;
Rooms[roomTag].back = _local6;
_local7 = Rooms[roomTag];
_local8 = new Array();
_local7.doorA_open = false;
_local7.npc = true;
_local9 = new Rectangle(280, 28, 43, 143);
_local10 = new Rectangle(452, 213, 84, 84);
_local11 = new Rectangle(338, 5, 183, 129);
_local12 = new Rectangle(245, 360, 30, 30);
_local8.push(_local9);
_local8.push(_local10);
_local8.push(_local11);
_local8.push(_local12);
_local7.MouseEvents = _local8;
_local13 = new text_frame_mc();
_local15 = (("<font color='#DFF709'>" + "CLINICIAN:") + "</font>");
_local16 = (("<font color='#ADDFFF'>" + "YOU:") + "</font>");
_local14 = ((((((((((((((((((((((((((((((((((("Within Belloc chamber stands an odd creature. It stares at you nervously.<br>" + "<font size='12'>") + _local15) + "Who are YOU?! A wanderer?! A new initiate? You're covered in bandages, you may be one of us. But let loose..or...are you trying to escape? <br>") + _local16) + "I..I don't know..I can't think-- clearly right now..<br>") + _local15) + "Wonderful! You must have broke free before they started tampering with your brain. You have to get us all out of here!<br>") + _local16) + "Is there a way out?<br>") + _local15) + "This isn't an ordinary house, the exit is deep in the basement, through") + "<i>") + " his ") + "</i>") + " chambers.<br>") + _local16) + "..Who is 'he' exactly?<br>") + _local15) + "We don't have time to discuss that. The master and his activities are well documented throughout the house, you will learn more of him soon enough. <br>") + _local16) + "And you?<br>") + _local15) + "Me?I was once a reknowned scientist, now look at me, sir... I'm barely human. All I do all day now is construct and supply neurological inhibitor compounds....<br>..in plain English..<br>.<br> memory erasers <br>") + "- anyway enough self-pity! You must get out! And as quickly as possible!<br>") + _local16) + "..So-sorry..Do you know a way?<br>") + _local15) + "The only exit to the rest of the house is through this door. It's locked and I don't have a key since I'm") + " something of a prisoner myself. I have heard rumours that there is a spare key around one of these rooms") + " although it is carefully hidden within some kind of material- like Excalibur from King Arthur. If you do come") + " across it I suppose you'll have to figure out some clever way to get at it.<br>") + _local16) + "Thankyou.<br>") + _local15) + "That's all the advice I can give you. I must go now, may God be with you.<br>");
};
Rooms[roomTag].timer = 0;
stage.addChild(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
if (Rooms[roomTag].first_time){
stage.addChild(Rooms[roomTag].imageC);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageC);
stage.addChild(_local13);
Rooms[roomTag].deleteArray.push(_local13);
Start_ShoutBox(_local13, 180, 100, _local14);
Rooms[roomTag].targetRoom = 6;
Rooms[roomTag].first_time = false;
} else {
stage.addEventListener(Event.ENTER_FRAME, room6EVENTS, false, 0, true);
stage.addChild(Rooms[roomTag].back);
};
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
stage.removeEventListener(Event.ENTER_FRAME, room6);
}
public function room1(_arg1:Event):void{
var _local2:Tween;
var _local3:BitmapData;
var _local4:BitmapData;
var _local5:Rectangle;
var _local6:Point;
var _local7:Bitmap;
var _local8:Tween;
var _local9:*;
var _local10:String;
var _local11:Class;
var _local12:MovieClip;
var _local13:Object;
var _local14:Array;
var _local15:Rectangle;
var _local16:MovieClip;
if (Rooms[roomTag].first_time){
_local10 = (("house" + roomTag) + "_mc");
_local11 = (getDefinitionByName(_local10) as Class);
_local12 = new (_local11);
Rooms[roomTag].imageB = _local12;
Rooms[roomTag].ready = false;
_local13 = Rooms[roomTag];
_local14 = new Array();
_local13.deleteArray.push(_local12);
_local13.lock_open = false;
_local13.lock_hit = 0;
_local15 = new Rectangle(216, 140, 116, 116);
_local14.push(_local15);
_local13.MouseEvents = _local14;
Rooms[roomTag].first_time = false;
_local16 = new beginning_mc();
_local16.x = 30;
Rooms[roomTag].imageZ = _local16;
_local13.deleteArray.push(_local16);
};
stage.addChild(Rooms[roomTag].imageB);
_local2 = new Tween(Rooms[roomTag].imageB, "alpha", Regular.easeOut, 0, 1, 5, true);
_local2.addEventListener(TweenEvent.MOTION_FINISH, tweenFinished);
antiGC[_local2] = _local2;
Earthquake.go(Rooms[roomTag].imageB, 10, 0.5);
_local3 = new BitmapData(STAGE_WIDTH, STAGE_WIDTH, true, 0xFF);
_local4 = new room1_mc(width, height);
_local5 = new Rectangle(0, 0, STAGE_WIDTH, STAGE_HEIGHT);
_local6 = new Point(0, 0);
_local3.copyPixels(_local4, _local5, _local6);
_local7 = new Bitmap(_local3);
_local7.name = "temp";
stage.addChild(_local7);
_local8 = new Tween(_local7, "alpha", Regular.easeOut, 0, 1, 5, true);
_local8.addEventListener(TweenEvent.MOTION_FINISH, tweenFinished);
antiGC[_local2] = _local8;
Rooms[roomTag].bmd2 = _local4;
Rooms[roomTag].main_background = _local3;
Rooms[roomTag].bm1 = _local7;
_local9 = new house1lock_mc();
stage.addChild(_local9);
Rooms[roomTag].key_item = _local9;
stage.addChild(_local16);
stage.removeEventListener(Event.ENTER_FRAME, room1);
stage.addEventListener(Event.ENTER_FRAME, room1EVENTS, false, 0, true);
}
public function room9(_arg1:Event):void{
var _local2:Object;
var _local3:String;
var _local4:Class;
var _local5:MovieClip;
var _local6:MovieClip;
var _local7:MovieClip;
var _local8:Object;
var _local9:Array;
var _local10:Rectangle;
var _local11:Rectangle;
var _local12:Rectangle;
var _local13:Rectangle;
var _local14:MovieClip;
var _local15:MovieClip;
if (Rooms[roomTag].first_time){
_local3 = (("house" + roomTag) + "_mc");
_local4 = (getDefinitionByName(_local3) as Class);
_local5 = new (_local4);
Rooms[roomTag].imageB = _local5;
_local6 = new room9statue_mc();
Rooms[roomTag].imageC = _local6;
_local7 = new BACK_mc();
_local7.x = 260;
_local7.y = 380;
Rooms[roomTag].back = _local7;
_local8 = Rooms[roomTag];
_local9 = new Array();
_local8.statue_defeated = false;
_local8.ammonia = false;
_local10 = new Rectangle(0, 285, 304, 85);
_local11 = new Rectangle(262, 177, 117, 96);
_local12 = new Rectangle(397, 127, 116, 195);
_local13 = new Rectangle(245, 360, 30, 30);
_local9.push(_local10);
_local9.push(_local11);
_local9.push(_local12);
_local9.push(_local13);
_local8.MouseEvents = _local9;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].timer = 0;
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
if (((((Rooms[roomTag].ammonia) && (!(Rooms[roomTag].statue_defeated)))) && (checkInventory("CLAW HAMMER")))){
Rooms[roomTag].targetRoom = 12;
_local14 = new transition_mc();
_local14.name = "transition";
_local14.mouseEnabled = false;
_local14.mouseChildren = false;
stage.addChild(_local14);
_local14.alpha = 0;
_local14.addEventListener(Event.ENTER_FRAME, FadeIn, false, 0, true);
Rooms[roomTag].newTag = Rooms[roomTag].targetRoom;
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
stage.removeEventListener(Event.ENTER_FRAME, room9);
return;
};
if (((((Rooms[roomTag].ammonia) && (!(Rooms[roomTag].statue_defeated)))) && (!(checkInventory("CLAW HAMMER"))))){
Rooms[roomTag].targetRoom = 11;
_local15 = new transition_mc();
_local15.name = "transition";
_local15.mouseEnabled = false;
_local15.mouseChildren = false;
stage.addChild(_local15);
_local15.alpha = 0;
_local15.addEventListener(Event.ENTER_FRAME, FadeIn, false, 0, true);
Rooms[roomTag].newTag = Rooms[roomTag].targetRoom;
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
stage.removeEventListener(Event.ENTER_FRAME, room9);
return;
};
stage.addChild(Rooms[roomTag].imageB);
if (!Rooms[roomTag].statue_defeated){
stage.addChild(Rooms[roomTag].imageC);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageC);
};
stage.addEventListener(Event.ENTER_FRAME, room9EVENTS, false, 0, true);
stage.addChild(Rooms[roomTag].back);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
Rooms[roomTag].imageB.addEventListener(Event.ENTER_FRAME, Fizzle, false, 0, true);
_local2 = {link:Rooms[roomTag].imageB, Ename:"Fizzle"};
arrListeners.push(_local2);
stage.removeEventListener(Event.ENTER_FRAME, room9);
}
public function double_click_Item(_arg1:Event){
var _local2:MovieClip;
if (BATTLE_MODE){
return;
};
_local2 = MovieClip(_arg1.currentTarget);
if ((((_local2.x == _local2.setX)) && ((_local2.y == _local2.setY)))){
trace("EXAMINE");
};
_local2.inUse = false;
ITEM = false;
ITEM_IN_USE = null;
if (_local2.inUse){
_local2.inUse = false;
};
_local2.x = _local2.setX;
_local2.y = _local2.setY;
_local2.stopDrag();
Mouse.show();
if (stage.getChildByName("d_click")){
removeMovie(stage.getChildByName("d_click"));
};
}
public function Explode(_arg1:BitmapData, _arg2, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):void{
var _local7:Emitter2D;
var _local8:Rectangle;
var _local9:BitmapData;
var _local10:DisplayObjectRenderer;
var _local11:Point;
var _local12:Point;
var _local13:Array;
var _local14:MovieClip;
_local7 = new Emitter2D();
_local8 = new Rectangle(0, 0, 1000, 1000);
_local9 = _arg1;
_local10 = new DisplayObjectRenderer();
_local10.name = "son";
_local11 = new Point((_arg4 - 15), (_arg5 + _arg6));
_local12 = stage.globalToLocal(_local11);
_local13 = Particle2DUtils.createRectangleParticlesFromBitmapData(_local9, _arg3, _local7.particleFactory, _local12.x, _local12.y);
_local7.addExistingParticles(_local13, true);
_local10.addEmitter(_local7);
stage.addChild(_local10);
_local14 = new MovieClip();
_local14.name = "sfx";
_local14.addChild(_local10);
stage.addChild(_local14);
_local14.emitter = _local7;
eArray.push(_local7);
_local7.addAction(new Move());
_local7.addAction(new RandomDrift(100, 100));
_local7.addAction(new Accelerate(0, 550));
renderArray.push(_local10);
_local7.addEventListener(EmitterEvent.EMITTER_EMPTY, kill_particles);
_local14.addEventListener(Event.ENTER_FRAME, particleFade);
_local7.start();
}
public function room8(_arg1:Event):void{
var _local2:String;
var _local3:Class;
var _local4:MovieClip;
var _local5:MovieClip;
var _local6:MovieClip;
var _local7:MovieClip;
var _local8:MovieClip;
var _local9:Object;
var _local10:Array;
var _local11:Rectangle;
var _local12:Rectangle;
var _local13:Rectangle;
var _local14:Rectangle;
var _local15:Rectangle;
var _local16:Rectangle;
var _local17:MovieClip;
var _local18:MovieClip;
if (Rooms[roomTag].first_time){
_local2 = (("house" + roomTag) + "_mc");
_local3 = (getDefinitionByName(_local2) as Class);
_local4 = new (_local3);
Rooms[roomTag].imageB = _local4;
_local5 = new BACK_mc();
_local5.x = 260;
_local5.y = 380;
Rooms[roomTag].back = _local5;
_local6 = new bird1_mc();
_local6.x = 230;
_local6.y = 177;
Rooms[roomTag].imageC = _local6;
_local7 = new slide_latch_mc();
_local7.x = 274;
_local7.y = 81;
_local7.gotoAndStop(1);
Rooms[roomTag].imageD = _local7;
_local8 = new saltstone_mc();
_local8.name = "SALT STONE";
_local8.tag = "saltstoneICON_mc";
Rooms[roomTag].imageZ = _local8;
_local9 = Rooms[roomTag];
_local10 = new Array();
_local9.birdcage_open = false;
_local9.window_open = false;
_local9.bird_out = false;
_local9.bird_complete = false;
_local9.stone_taken = false;
_local11 = new Rectangle(408, 36, 73, 103);
_local12 = new Rectangle(240, 38, 54, 73);
_local13 = new Rectangle(198, 148, 156, 53);
_local14 = new Rectangle(410, 218, 66, 118);
_local15 = new Rectangle(111, 159, 46, 58);
_local16 = new Rectangle(245, 360, 30, 30);
_local10.push(_local11);
_local10.push(_local12);
_local10.push(_local13);
_local10.push(_local14);
_local10.push(_local15);
_local10.push(_local16);
_local9.MouseEvents = _local10;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].timer = 0;
if (Rooms[roomTag].birdcage_open){
Rooms[roomTag].imageD.gotoAndStop(2);
_local17 = new bird2_mc();
_local17.x = 230;
_local17.y = 177;
Rooms[roomTag].imageC = _local17;
Rooms[roomTag].deleteArray.push(_local17);
};
stage.addChild(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
if (!Rooms[roomTag].stone_taken){
stage.addChild(Rooms[roomTag].imageZ);
stage.setChildIndex(Rooms[roomTag].imageZ, (stage.numChildren - 1));
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageZ);
};
if (!Rooms[roomTag].bird_complete){
stage.addChild(Rooms[roomTag].imageC);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageC);
};
stage.addChild(Rooms[roomTag].imageD);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageD);
stage.addChild(Rooms[roomTag].back);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
if (Rooms[roomTag].window_open){
_local18 = new room8window_mc();
_local18.x = 445;
_local18.y = 98;
Rooms[roomTag].imageE = _local18;
stage.addChild(Rooms[roomTag].imageE);
Rooms[roomTag].deleteArray.push(_local18);
};
if (stage.getChildByName("transition")){
stage.setChildIndex(stage.getChildByName("transition"), (stage.numChildren - 1));
};
stage.removeEventListener(Event.ENTER_FRAME, room8);
stage.addEventListener(Event.ENTER_FRAME, room8EVENTS, false, 0, true);
}
public function room3(_arg1:Event):void{
var _local2:Object;
var _local3:String;
var _local4:Class;
var _local5:MovieClip;
var _local6:muffled_wav;
var _local7:Object;
var _local8:Array;
var _local9:MovieClip;
var _local10:String;
var _local11:String;
var _local12:String;
if (Rooms[roomTag].first_time){
_local3 = (("house" + roomTag) + "_mc");
_local4 = (getDefinitionByName(_local3) as Class);
_local5 = new (_local4);
Rooms[roomTag].imageB = _local5;
_local6 = new muffled_wav();
_local6.play();
_local7 = Rooms[roomTag];
_local8 = new Array();
Rooms[2].cage_open = true;
Rooms[2].alarm = true;
_local9 = new text_frame_mc();
_local11 = (("<font color='#D2B9D3'>" + "PRISONER:") + "</font>");
_local12 = (("<font color='#ADDFFF'>" + "YOU:") + "</font>");
_local10 = ((((((((((((((((((((((((((("Inside the cage you discover a hideously mutilated man.<br>" + "<font size='12'>") + _local11) + "NO! LEAVE ME ALONE!<br>") + _local12) + "What?!..Calm down. I'm not- going to hurt you. Lord have mercy, what the hell happened to your...body?<br>") + _local11) + "THE...DOCTOR...HE IS CALLED...THE DOCTOR..<br>") + _local12) + "The Doctor? That's the name of the person who brought you here?<br>") + _local11) + "YES...LLLOOK WHAT THEY DID TO ME.. MY MOUTH, MY EYES...I CANNOT SEE.. HE IS..INSANE!!.SURGICALLY COMBINING HUMAN AND ANIMALLL..<br>") + _local12) + "What in hell iss this place..?<br>") + _local11) + "HELL indeed...Do not lingerr..YOU MUST...eescSSCAPe..get helP..pleeeasssee<br>") + _local12) + "How about..letting me get you out of that cage first. Then we'll formulate a plan!<br>") + _local11) + "Noo..they will come back...HUH??..WHAT IS THAT!!<br>") + "..<br>") + "I HEAR THEM!!..THEY COME NOW...QUICKLY..GO!!<br>") + _local12) + "But what about you!<br>") + _local11) + "HELP ME LATER...PUT THE COVER BACK ON AND..FIND SOMEWHERE TO HIDE!!") + "<font size='15'>") + " NOW!<br>");
Rooms[roomTag].first_time = false;
};
stage.addChild(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
stage.addChild(_local9);
Rooms[roomTag].deleteArray.push(_local9);
Start_ShoutBox(_local9, _local9.x, _local9.y, _local10);
Earthquake.go(Rooms[roomTag].imageB, 10, 0.5);
Rooms[roomTag].targetRoom = 2;
Rooms[roomTag].imageB.addEventListener(Event.ENTER_FRAME, Fizzle, false, 0, true);
_local2 = {link:Rooms[roomTag].imageB, Ename:"Fizzle"};
arrListeners.push(_local2);
stage.removeEventListener(Event.ENTER_FRAME, room3);
stage.addEventListener(Event.ENTER_FRAME, room3EVENTS, false, 0, true);
}
public function room7(_arg1:Event):void{
var _local2:Object;
var _local3:String;
var _local4:Class;
var _local5:MovieClip;
var _local6:MovieClip;
var _local7:MovieClip;
var _local8:MovieClip;
var _local9:MovieClip;
var _local10:Object;
var _local11:Array;
var _local12:Rectangle;
var _local13:Rectangle;
var _local14:Rectangle;
if (Rooms[roomTag].first_time){
_local3 = (("house" + roomTag) + "_mc");
_local4 = (getDefinitionByName(_local3) as Class);
_local5 = new (_local4);
Rooms[roomTag].imageB = _local5;
_local6 = new pyara_mc();
_local6.x = 401;
_local6.y = 150;
Rooms[roomTag].imageC = _local6;
_local7 = new tankB_mc();
Rooms[roomTag].imageD = _local7;
_local8 = new salt_stone_melt_mc();
_local8.gotoAndStop(1);
_local8.name = "COPPER KEY";
_local8.tag = "copperkeyICON_mc";
Rooms[roomTag].imageE = _local8;
_local9 = new BACK_mc();
_local9.x = 260;
_local9.y = 380;
Rooms[roomTag].back = _local9;
_local10 = Rooms[roomTag];
_local11 = new Array();
_local10.fish = true;
_local10.backOK = true;
_local10.ammonia_used = false;
_local10.stone_used = false;
_local10.stone_animation_done = false;
_local10.first_animation = true;
_local10.key_taken = false;
_local12 = new Rectangle(91, 73, 385, 196);
_local13 = new Rectangle(225, 240, 50, 90);
_local14 = new Rectangle(245, 360, 30, 30);
_local11.push(_local12);
_local11.push(_local13);
_local11.push(_local14);
_local10.MouseEvents = _local11;
Rooms[roomTag].first_time = false;
};
Rooms[roomTag].timer = 0;
stage.addChild(Rooms[roomTag].imageB);
stage.addChild(Rooms[roomTag].imageC);
if (((Rooms[roomTag].stone_used) && (!(Rooms[roomTag].key_taken)))){
Rooms[roomTag].stone_go = true;
Rooms[roomTag].imageE.gotoAndStop((Rooms[roomTag].imageE.totalFrames - 1));
};
stage.addChild(Rooms[roomTag].imageD);
stage.addChild(Rooms[roomTag].back);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageB);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageC);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageD);
Rooms[roomTag].deleteArray.push(Rooms[roomTag].back);
stage.addEventListener(Event.ENTER_FRAME, room7EVENTS, false, 0, true);
Rooms[roomTag].imageD.addEventListener(Event.ENTER_FRAME, Fizzle, false, 0, true);
_local2 = {link:Rooms[roomTag].imageB, Ename:"Fizzle"};
arrListeners.push(_local2);
if (Rooms[roomTag].fish){
stage.addEventListener(Event.ENTER_FRAME, FishTween, false, 0, true);
};
stage.removeEventListener(Event.ENTER_FRAME, room7);
}
public function GotoAndKill(_arg1:MovieClip):Boolean{
var _local2:*;
_local2 = _arg1.currentFrame;
if (_local2 >= _arg1.totalFrames){
removeMovie(_arg1);
};
_arg1.nextFrame();
return (true);
}
public function removeBitmap(_arg1:Bitmap){
if (_arg1.parent){
_arg1.parent.removeChild(_arg1);
};
_arg1 = null;
}
public function room20EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
var _local4:Sound;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
Quick(_local3);
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local3){
if (_local2 == 0){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "SINK & MIRROR";
};
};
if (_local2 == 1){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "DEAD BODY";
};
};
if (_local2 == 2){
if (mouse_clicked){
if ((((ITEM_IN_USE.name == "CLAW HAMMER")) && (!(Rooms[roomTag].panel_smashed)))){
_local4 = new hammer_plaster_wav();
_local4.play();
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Rooms[roomTag].panel_smashed = true;
Text("The plaster pulls apart easily using the hammer.");
Go_Back(20);
break;
} else {
mouse_clicked = false;
};
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "PANEL";
};
};
if (_local2 == 3){
break;
};
if (_local2 == 4){
break;
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 0)))){
Text("Standard bathroom sink. There's a mirror and I can see myself,bandaged up like a mummy. I don't have time now, -or maybe the courage- to check what they did to me.");
break;
};
if (((_local3) && ((_local2 == 1)))){
Text("Another 'failed experiment' perhaps? His skin is torn to shreds.");
break;
};
if (((_local3) && ((_local2 == 2)))){
if (((!(Rooms[roomTag].pig_taken)) && (Rooms[roomTag].pushed))){
continue;
};
if (Rooms[roomTag].panel_smashed){
if (Rooms[roomTag].pig_taken){
Text("It's empty now, I can see clearly through to the study");
break;
} else {
Text("There's a hollow tube protruding from the wall, I can see something glinting in there but I can't reach it with my bare hands.");
break;
};
} else {
Text("There's a part of the wall here that's plastered over for some reason.");
break;
};
};
if (((_local3) && ((_local2 == 3)))){
if (!Rooms[roomTag].pole_taken){
if (mouse_clicked){
Rooms[roomTag].pole_taken = true;
Rooms[roomTag].imageZ.addEventListener(Event.ENTER_FRAME, getItem, false, 0, true);
break;
} else {
Text("It looks like the pole-end of a broomstick. Maybe useful. Take?");
break;
};
};
};
if (((_local3) && ((_local2 == 4)))){
if (((!(Rooms[roomTag].pig_taken)) && (Rooms[roomTag].pushed))){
if (mouse_clicked){
Rooms[roomTag].pig_taken = true;
Rooms[roomTag].imageD.addEventListener(Event.ENTER_FRAME, getItem, false, 0, true);
break;
} else {
Text("Seems like this is what I pushed through from the other side, an evil-looking miniature or a man with a pig's head in place of his own.Take?");
break;
};
};
};
if (((_local3) && ((_local2 == 5)))){
if (mouse_clicked){
Go_Back(19);
break;
} else {
Text("BACK?");
break;
};
};
};
}
public function room7EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
if (!_local3){
Rooms[roomTag].mouseSet = false;
Rooms[roomTag].imageB.buttonMode = false;
Rooms[roomTag].imageB.useHandCursor = false;
if (stage.getChildByName("global_text")){
removeMovie(stage.getChildByName("global_text"));
};
};
if (((Rooms[roomTag].first_animation) && (Rooms[roomTag].ammonia_used))){
Rooms[roomTag].backOK = false;
stage.addEventListener(Event.ENTER_FRAME, FishDie, false, 0, true);
Rooms[roomTag].first_animation = false;
Bubbles();
Rooms[roomTag].imageD.percent = 0;
Rooms[roomTag].imageD.amount = 0.7;
Rooms[roomTag].imageD.newColor = 0xFF00;
Rooms[roomTag].imageD.addEventListener(Event.ENTER_FRAME, changeColor, false, 0, true);
Rooms[roomTag].imageC.percent = 0;
Rooms[roomTag].imageC.amount = 0.7;
Rooms[roomTag].imageC.newColor = 0xFF00;
Rooms[roomTag].imageC.addEventListener(Event.ENTER_FRAME, changeColor, false, 0, true);
Rooms[roomTag].imageB.percent = 0;
Rooms[roomTag].imageB.amount = 0.2;
Rooms[roomTag].imageB.newColor = 0xFF00;
Rooms[roomTag].imageB.addEventListener(Event.ENTER_FRAME, changeColor, false, 0, true);
};
if (Rooms[roomTag].stone_used){
if (Rooms[roomTag].imageE.currentFrame == Rooms[roomTag].imageE.totalFrames){
Rooms[roomTag].stone_animation_done = true;
} else {
Rooms[roomTag].stone_animation_done = false;
};
};
if (Rooms[roomTag].stone_go){
stage.addChild(Rooms[roomTag].imageE);
Rooms[roomTag].imageE.play();
Rooms[roomTag].deleteArray.push(Rooms[roomTag].imageE);
Rooms[roomTag].stone_go = false;
};
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local3){
if (_local2 == 0){
if (mouse_clicked){
if (ITEM_IN_USE.name == "SALT STONE"){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
if (Rooms[roomTag].ammonia_used){
removeICON("SALT STONE");
Rooms[roomTag].stone_used = true;
Rooms[roomTag].stone_go = true;
Text("The salt reacts with the water and dissolves- revealing a key!");
} else {
Text("IF NOT FOR THAT FISH SWIMMING ROUND IN THERE..");
};
break;
};
if (ITEM_IN_USE.name == "AMMONIA"){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
removeICON("AMMONIA");
Rooms[roomTag].ammonia_used = true;
Rooms[roomTag].ammonia_go = true;
Text("Good idea! Nothing kills fish quicker!");
break;
};
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "FISH TANK";
};
};
if (_local2 == 1){
break;
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 0)))){
if (((Rooms[roomTag].stone_used) && (!(Rooms[roomTag].key_taken)))){
Text("With the payara gone I can get at that key.");
break;
};
if (!Rooms[roomTag].fish){
Text("Looks like the ammonia drowned that nasty creature...");
break;
} else {
Text(("A roomy blue aquarium. Gliding around inside is a huge razor-toothed payara fish." + "With those teeth I bet it could take my hand off with one bite!"));
break;
};
};
if (((_local3) && ((_local2 == 1)))){
if (((((mouse_clicked) && (Rooms[roomTag].stone_animation_done))) && (!(Rooms[roomTag].key_taken)))){
Rooms[roomTag].key_taken = true;
Rooms[roomTag].imageE.addEventListener(Event.ENTER_FRAME, getItem, false, 0, true);
break;
} else {
if (((Rooms[roomTag].stone_animation_done) && (!(Rooms[roomTag].key_taken)))){
Text("It's a copper key. Take?");
break;
};
};
};
if (((_local3) && ((_local2 == 2)))){
if (mouse_clicked){
if (Rooms[roomTag].backOK){
if (stage.hasEventListener(Event.ENTER_FRAME)){
stage.removeEventListener(Event.ENTER_FRAME, FishTween);
};
Go_Back(6);
break;
};
} else {
display_txt.text = "BACK?";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
};
};
}
public function Initialise():void{
var _local1:*;
var _local2:Object;
var _local3:Array;
_local1 = 0;
while (_local1 < 100) {
_local2 = new Object();
_local2.first_time = true;
_local3 = new Array();
_local2.deleteArray = _local3;
Rooms.push(_local2);
_local1++;
};
}
public function FishTween(_arg1:Event):void{
if (Rooms[roomTag].imageC.x > 400){
Rooms[roomTag].imageC.s = true;
};
if (Rooms[roomTag].imageC.x < 120){
Rooms[roomTag].imageC.s = false;
};
if (Rooms[roomTag].imageC.s){
Rooms[roomTag].imageC.x = (Rooms[roomTag].imageC.x - 0.5);
Rooms[roomTag].imageC.scaleX = 1;
} else {
Rooms[roomTag].imageC.x = (Rooms[roomTag].imageC.x + 0.5);
Rooms[roomTag].imageC.scaleX = -1;
};
}
public function room17EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
var _local4:Sound;
var _local5:Sound;
var _local6:Sound;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
Quick(_local3);
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local3){
if (_local2 == 0){
if (mouse_clicked){
if ((((ITEM_IN_USE.name == "MALE MINIATURE")) && (!(Rooms[roomTag].pig_placed)))){
_local4 = new token_in_wav();
_local4.play();
_local5 = new wall_moving_wav();
_local5.play();
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Rooms[roomTag].pig_placed = true;
Rooms[15].secretDoor_open = true;
removeICON("MALE MINIATURE");
Text("It fits perfectly into one of the holes. Something happens in the room!");
Go_Back(17);
break;
} else {
if ((((ITEM_IN_USE.name == "FEMALE MINIATURE")) && (!(Rooms[roomTag].bird_placed)))){
_local6 = new token_in_wav();
_local6.play();
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Rooms[roomTag].bird_placed = true;
Rooms[roomTag].unlocked = true;
removeICON("FEMALE MINIATURE");
Text("It fits perfectly into one of the holes.");
Go_Back(17);
break;
} else {
mouse_clicked = false;
};
};
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "ROTUNDA";
};
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 0)))){
if (((((Rooms[roomTag].bird_placed) && (!(Rooms[roomTag].pig_placed)))) || (((!(Rooms[roomTag].bird_placed)) && (Rooms[roomTag].pig_placed))))){
Text("One peg-hole is occupied now. There's still one left.");
break;
};
if (((Rooms[roomTag].bird_placed) && (Rooms[roomTag].pig_placed))){
Text("Both effigies have been put in place. There's nothing left to do here now.");
break;
};
Text("The centerpiece rotates hypnotically. At it's base are two pegholes that clearly are there to mount something, perhaps toys?");
break;
};
if (((_local3) && ((_local2 == 1)))){
if (mouse_clicked){
Go_Back(15);
break;
} else {
Text("BACK?");
break;
};
};
};
}
public function FadeIn(_arg1:Event):void{
var _local2:MovieClip;
var _local3:Function;
var _local4:*;
_local2 = MovieClip(_arg1.target);
if ((_local2.alpha = (_local2.alpha + 0.03)) >= 1){
if (_local2.hasEventListener(Event.ENTER_FRAME)){
_local2.removeEventListener(Event.ENTER_FRAME, FadeIn);
};
_local3 = this[(("room" + roomTag) + "EVENTS")];
if (stage.hasEventListener(Event.ENTER_FRAME)){
stage.removeEventListener(Event.ENTER_FRAME, _local3);
};
for (_local4 in Rooms[roomTag].deleteArray) {
removeMovie(Rooms[roomTag].deleteArray[_local4]);
};
if (stage.getChildByName("global_text")){
removeMovie(stage.getChildByName("global_text"));
};
roomTag = Rooms[roomTag].newTag;
stage.addEventListener(Event.ENTER_FRAME, main);
_local2.addEventListener(Event.ENTER_FRAME, FadeOut, false, 0, true);
};
}
public function GotoAndEnd(_arg1:MovieClip, _arg2):Boolean{
var _local3:*;
_local3 = _arg1.currentFrame;
if (_local3 == _arg1.frameRange.end){
return (false);
};
if ((((_local3 < (_arg1.frameRange.start - 1))) || ((_local3 >= _arg1.frameRange.end)))){
_arg1.gotoAndStop(_arg2);
} else {
_arg1.nextFrame();
};
return (true);
}
public function FishDie(_arg1:Event):void{
if (Rooms[roomTag].imageC.y < 300){
Rooms[roomTag].imageC.y = (Rooms[roomTag].imageC.y + 1);
} else {
Rooms[roomTag].imageC.addEventListener(Event.ENTER_FRAME, fadeColor, false, 0, true);
stage.removeEventListener(Event.ENTER_FRAME, FishDie);
stage.removeEventListener(Event.ENTER_FRAME, FishTween);
Rooms[roomTag].backOK = true;
Rooms[roomTag].imageC.percent = 0;
Rooms[roomTag].imageC.amount = 1;
Rooms[roomTag].imageC.newColor = 0;
Rooms[roomTag].imageC.addEventListener(Event.ENTER_FRAME, changeColor);
Rooms[roomTag].fish = false;
};
}
public function FadeButton(_arg1:Event):void{
var _local2:SimpleButton;
_local2 = SimpleButton(_arg1.target);
_local2.alpha = (_local2.alpha - 0.01);
if ((((((_local2.alpha <= 0)) || ((Rooms[roomTag].tag <= 0)))) || ((Rooms[roomTag].currentTime <= 0)))){
_local2.removeEventListener(Event.ENTER_FRAME, FadeButton);
removeMovie(_local2);
};
}
public function room14EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
var _local4:Sound;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
Quick(_local3);
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local3){
if (_local2 == 0){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "GREAT DOOR";
};
};
if (_local2 == 1){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "SMALL DOOR";
};
};
if (_local2 == 2){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "SEALED WINDOW";
};
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 0)))){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
_local4 = new door_wav();
_local4.play();
Go_Back(15);
break;
} else {
Text("A placard on the door reads: 'MEPHISTOPHELES LIBRARY' Enter?");
break;
};
};
if (((_local3) && ((_local2 == 1)))){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
if (Rooms[roomTag].accerbusDoor_open){
Go_Back(25);
break;
} else {
Go_Back(27);
break;
};
} else {
Text("A placard on the door reads: 'ACCERBUS ROOM'. Enter?");
break;
};
};
if (((_local3) && ((_local2 == 2)))){
Text("A window sealed with iron bars. It eminates a strong light.");
break;
};
if (((_local3) && ((_local2 == 3)))){
if (mouse_clicked){
Go_Back(13);
break;
} else {
Text("BACK?");
break;
};
};
};
}
public function getCaptureMatrix():Matrix{
var _local1:int;
var _local2:int;
var _local3:DisplayObjectContainer;
var _local4:Matrix;
_local1 = x;
_local2 = y;
_local3 = parent;
while (_local3) {
_local1 = (_local1 + _local3.x);
_local2 = (_local2 + _local3.y);
_local3 = _local3.parent;
};
_local4 = new Matrix();
_local4.tx = -(_local1);
_local4.ty = -(_local2);
return (_local4);
}
public function doDrawRect(_arg1:Rectangle):void{
var _local2:Shape;
_local2 = new Shape();
_local2.graphics.beginFill(0x666666);
_local2.graphics.lineStyle(1, 0xFFCC00);
_local2.graphics.drawRect(_arg1.x, _arg1.y, _arg1.width, _arg1.height);
_local2.graphics.endFill();
_local2.alpha = 0.5;
stage.addChild(_local2);
stage.setChildIndex(_local2, (stage.numChildren - 1));
}
public function hitSuccess(_arg1:Event){
var _local2:SimpleButton;
var _local3:hammer2_wav;
var _local4:MovieClip;
_local2 = SimpleButton(_arg1.currentTarget);
_local3 = new hammer2_wav();
_local3.play();
_local4 = new ricochet_mc();
_local4.mouseEnabled = false;
_local4.mouseChildren = false;
_local4.x = _local2.x;
_local4.y = _local2.y;
_local4.rotation = randRange(0, 360);
stage.addChild(_local4);
_local4.addEventListener(Event.ENTER_FRAME, FadeOutMC, false, 0, true);
removeMovie(_local2);
FireWork();
Earthquake.go(Rooms[roomTag].imageC, 6, 0.5);
Rooms[roomTag].tag--;
Rooms[roomTag].imageG.timer_txt.text = Rooms[roomTag].tag;
_local2.removeEventListener(Event.ENTER_FRAME, FadeButton);
}
public function removeICON(_arg1:String){
var _local2:*;
Mouse.show();
for (_local2 in itemsInInventory) {
if (itemsInInventory[_local2].name == _arg1){
itemsInInventory[_local2].inUse = false;
ITEM = false;
ITEM_IN_USE = null;
removeMovie(inventorySprite.getChildByName(itemsInInventory[_local2].name));
itemsInInventory.splice(_local2, 1);
};
};
}
public function mouseUpScroll(_arg1:MouseEvent):void{
shout.text_image.text_field.scrollV--;
}
public function FadeOut(_arg1:Event):void{
var _local2:MovieClip;
_local2 = MovieClip(_arg1.target);
if ((_local2.alpha = (_local2.alpha - 0.03)) < 0){
_local2.removeEventListener(Event.ENTER_FRAME, FadeOut);
if (stage.getChildByName("transition")){
removeMovie(stage.getChildByName("transition"));
};
removeMovie(_local2);
};
}
public function room11EVENTS(_arg1:Event):void{
if (dead){
return;
};
}
public function Tint(_arg1:MovieClip, _arg2:Number, _arg3:Number):void{
var _local4:Color;
_local4 = new Color();
_local4.setTint(_arg2, _arg3);
_arg1.transform.colorTransform = _local4;
}
public function room19EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
var _local4:Sound;
var _local5:Sound;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
Quick(_local3);
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local3){
if (_local2 == 0){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "ASMODEUS DOOR";
};
};
if (_local2 == 1){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "ABADDON DOOR";
};
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 0)))){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
_local4 = new door_wav();
_local4.play();
Go_Back(20);
break;
} else {
Text("A placard on the door reads: 'ASMODEUS WASHROOM' Enter?");
break;
};
};
if (((_local3) && ((_local2 == 1)))){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
_local5 = new door_wav();
_local5.play();
Go_Back(21);
break;
} else {
Text("A placard on the door reads: 'ABADDON STUDY' Enter?");
break;
};
};
if (((_local3) && ((_local2 == 2)))){
if (mouse_clicked){
Go_Back(18);
break;
} else {
Text("BACK?");
break;
};
};
};
}
public function room4EVENTS(_arg1:Event):void{
if (dead){
return;
};
}
public function removeMovie(_arg1:DisplayObject){
if (_arg1.parent){
_arg1.parent.removeChild(_arg1);
};
_arg1 = null;
}
public function upKeys(_arg1:KeyboardEvent){
if (keys[_arg1.keyCode] != undefined){
keys[_arg1.keyCode].down = false;
};
}
public function room25EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
Quick(_local3);
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local3){
if (_local2 == 0){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "THE MACHINE";
};
};
if (_local2 == 1){
break;
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 0)))){
if (Rooms[roomTag].collected){
Text("Curse on that damned contraption..");
break;
};
if (((mouse_clicked) && (!(Rooms[roomTag].collected)))){
Go_Back(26);
break;
} else {
Text("I suppose this is 'The Machine'...It's a hideous steel device, yet I have no choice but to attempt this game if I want to get out. ");
break;
};
};
if (((_local3) && ((_local2 == 1)))){
if (((!(Rooms[roomTag].bird_taken)) && (Rooms[roomTag].collected))){
if (mouse_clicked){
Rooms[roomTag].bird_taken = true;
Rooms[roomTag].imageD.addEventListener(Event.ENTER_FRAME, getItem, false, 0, true);
break;
} else {
Text("My prize for beating 'The Machine'- a miniature token of a malformed bird-woman.Take?");
break;
};
};
};
if (((_local3) && ((_local2 == 2)))){
if (mouse_clicked){
Go_Back(14);
break;
} else {
Text("BACK?");
break;
};
};
};
}
public function Bleed(_arg1:int, _arg2:int, _arg3):void{
var _local4:Emitter2D;
var _local5:Number;
var _local6:BitmapRenderer;
var _local7:MovieClip;
_local4 = new Emitter2D();
_local4.counter = new Steady(50);
_local4.addInitializer(new SharedImage(new Dot(2)));
_local4.addInitializer(new ColorInit(4294721343, 4286972418));
if (sawOb.facing == 1){
_local5 = 4;
} else {
_local5 = -8;
};
_local4.addInitializer(new Velocity(new DiscSectorZone(new Point(0, 0), 350, 200, _local5, (_local5 + 0.9))));
_local4.addInitializer(new Lifetime(1));
_local4.addAction(new Age(Quadratic.easeIn));
_local4.addAction(new Move());
_local4.addAction(new Fade());
_local4.addAction(new Accelerate(0, 80));
_local6 = new BitmapRenderer(new Rectangle(0, 0, 550, 400));
_local6.name = "son";
_local6.addFilter(new BlurFilter(2, 2, 1));
_local6.addEmitter(_local4);
addChild(_local6);
_local7 = new MovieClip();
_local7.name = "sfx";
_local7.addChild(_local6);
stage.addChild(_local7);
_local7.emitter = _local4;
eArray.push(_local4);
renderArray.push(_local6);
_local4.addEventListener(EmitterEvent.EMITTER_EMPTY, kill_particles_Bitmap, false, 0, true);
_local7.addEventListener(Event.ENTER_FRAME, particleFade);
_local4.x = (_arg1 + (randRange(60, 80) * _arg3));
_local4.y = (_arg2 + randRange(-20, 40));
_local4.start();
}
public function punch(_arg1:TimerEvent):void{
var _local2:punch_wav;
var _local3:room1_wav;
var _local4:Tween;
_local2 = new punch_wav();
_local2.play();
Earthquake.go(Rooms[roomTag].key_item, 10, 0.5);
if (++Rooms[roomTag].lock_hit >= 5){
_local3 = new room1_wav();
_local3.play();
Rooms[roomTag].lock_open = true;
_local4 = new Tween(Rooms[roomTag].key_item, "y", Regular.easeOut, 0, 500, 2, true);
_local4.addEventListener(TweenEvent.MOTION_FINISH, tweenFinished);
antiGC[_local4] = _local4;
Explode(Rooms[roomTag].bmd2, 16718362, 40, 0, 0, 0);
stage.setChildIndex(Rooms[roomTag].key_item, (stage.numChildren - 1));
Rooms[roomTag].main_background.dispose();
removeBitmap(Rooms[roomTag].bm1);
};
}
public function kill_particles(_arg1:EmitterEvent):void{
var _local2:DisplayObjectRenderer;
_local2 = renderArray.shift();
_arg1.target.stop();
_local2.removeEmitter(Emitter2D(_arg1.target));
_arg1.target.removeEventListener(EmitterEvent.EMITTER_EMPTY, kill_particles);
_arg1 = null;
_local2 = null;
emitterCount++;
}
public function useItem(_arg1:Event){
var _local2:MovieClip;
var _local3:MovieClip;
if (BATTLE_MODE){
return;
};
if (ITEM_IN_USE){
return;
};
_local2 = MovieClip(_arg1.currentTarget);
_local2.inUse = true;
ITEM = true;
ITEM_IN_USE = _local2;
_local2.startDrag();
Mouse.hide();
_local3 = new d_click_mc();
_local3.name = "d_click";
stage.addChild(_local3);
}
public function checkInventory(_arg1:String){
var _local2:*;
for (_local2 in itemsInInventory) {
if (itemsInInventory[_local2].name == _arg1){
return (true);
};
};
return (false);
}
public function removeColor(_arg1:MovieClip):void{
var _local2:Color;
_local2 = new Color();
_local2.setTint(0, 0);
_arg1.transform.colorTransform = _local2;
_arg1.color_set = false;
}
public function Bubbles():void{
var _local1:Emitter2D;
var _local2:DisplayObjectRenderer;
var _local3:MovieClip;
_local1 = new Emitter2D();
_local1.counter = new Steady(30);
_local1.addInitializer(new ImageClass(RadialDot, 6));
_local1.addInitializer(new Position(new LineZone(new Point(-5, -5), new Point(605, -5))));
_local1.addInitializer(new Velocity(new PointZone(new Point(0, 65))));
_local1.addInitializer(new ScaleImageInit(0.75, 2));
_local1.addInitializer(new Lifetime(10));
_local1.addAction(new Age(null));
_local1.addAction(new Fade(1, 0));
_local1.addAction(new Move());
_local1.addAction(new DeathZone(new RectangleZone(-10, -10, 620, 420), true));
_local1.addAction(new RandomDrift(30, 30));
_local2 = new DisplayObjectRenderer();
_local2.name = "son";
_local2.addEmitter(_local1);
addChild(_local2);
_local3 = new MovieClip();
_local3.name = "sfx";
_local3.addChild(_local2);
stage.addChild(_local3);
_local3.emitter = _local1;
eArray.push(_local1);
renderArray.push(_local2);
_local1.addEventListener(EmitterEvent.EMITTER_EMPTY, kill_particles, false, 0, true);
_local3.addEventListener(Event.ENTER_FRAME, particleFade);
_local1.start();
_local1.runAhead(10);
}
public function room22EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
var _local4:Sound;
var _local5:Sound;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
Quick(_local3);
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local3){
if (_local2 == 0){
if (mouse_clicked){
if ((((ITEM_IN_USE.name == "CLAW HAMMER")) && (!(Rooms[roomTag].smashed)))){
_local4 = new picture_smash_wav();
_local4.play();
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Rooms[roomTag].smashed = true;
Text("I pull off some shards of glass using the claw head.");
Go_Back_Quick(22);
break;
};
if ((((ITEM_IN_USE.name == "POLE")) && (Rooms[roomTag].smashed))){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
if (!Rooms[20].panel_smashed){
Text("The broomstick handle pushes the item through the tube, but it wont go all the way, something is blocking it from the other side.");
break;
};
if (Rooms[20].panel_smashed){
_local5 = new pole_in_wav();
_local5.play();
Text("The broomstick handle pushes the item through the tube, I can feel it pushing the item to the other end.");
Rooms[20].pushed = true;
removeICON("POLE");
Go_Back(21);
break;
};
} else {
mouse_clicked = false;
};
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "SKETCH";
};
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 0)))){
if (Rooms[roomTag].smashed){
Text("After clearing some glass away I can see a steel tube protruding deep into the wall. It's hollow but something is trapped inside it far beyond arms length.");
break;
} else {
Text(("A nailed-down glass sketch of a hideous surgically deformed woman. There's something about her...I can see writing, it says" + " 'THANK YOU FOR MAKING ME LOOK LIKE THIS. I WILL LOVE YOU FOREVER'. There's a small crack in the glass- looks rather suspicious."));
break;
};
};
if (((_local3) && ((_local2 == 1)))){
if (mouse_clicked){
Go_Back(21);
break;
} else {
Text("BACK?");
break;
};
};
};
}
public function Text(_arg1:String):void{
display_txt.text = _arg1;
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
}
public function room1EVENTS(_arg1:Event):void{
var _local2:Boolean;
var _local3:MovieClip;
var _local4:MovieClip;
var _local5:MovieClip;
var _local6:Timer;
if (Rooms[roomTag].imageZ.currentFrame == Rooms[roomTag].imageZ.totalFrames){
removeMovie(Rooms[roomTag].imageZ);
Rooms[roomTag].ready = true;
};
if (!Rooms[roomTag].ready){
return;
};
_local2 = Rooms[roomTag].MouseEvents[0].contains(stage.mouseX, stage.mouseY);
if (Rooms[roomTag].lock_open){
Rooms[roomTag].imageB.buttonMode = true;
Rooms[roomTag].imageB.useHandCursor = true;
display_txt.text = "You broke through the cage. Time to look around?";
display_txt.setTextFormat(format);
if (mouse_clicked){
mouse_clicked = false;
_local3 = new transition_mc();
_local3.name = "transition";
stage.addChild(_local3);
_local3.alpha = 0;
_local3.addEventListener(Event.ENTER_FRAME, FadeIn, false, 0, true);
Rooms[roomTag].newTag = 2;
};
if (!stage.getChildByName("ARROWUP")){
_local4 = new arrowUP_mc();
_local4.x = 270;
_local4.y = 50;
_local4.name = "ARROWUP";
stage.addChild(_local4);
Rooms[roomTag].deleteArray.push(_local4);
};
return;
};
if (((_local2) && (!(Rooms[roomTag].lock_open)))){
Rooms[roomTag].key_item.buttonMode = true;
Rooms[roomTag].key_item.useHandCursor = true;
if (stage.getChildByName("global_text")){
removeMovie(stage.getChildByName("global_text"));
};
display_txt.text = "It's an old rusty lock. So old, I think I could hammer it off with my fists.";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
} else {
if (stage.getChildByName("global_text")){
removeMovie(stage.getChildByName("global_text"));
};
Rooms[roomTag].key_item_text = false;
Rooms[roomTag].key_item.buttonMode = false;
Rooms[roomTag].key_item.useHandCursor = false;
};
if (((((((_local2) && (mouse_clicked))) && (!(attacking)))) && (!(Rooms[roomTag].lock_open)))){
mouse_clicked = false;
attacking = true;
_local5 = new punch_mc();
stage.addChild(_local5);
_local5.addEventListener(Event.ENTER_FRAME, remove_at_finish, false, 0, true);
_local6 = new Timer(500, 1);
_local6.start();
_local6.addEventListener(TimerEvent.TIMER, punch);
};
}
public function GotoPlay(_arg1, _arg2):void{
var _local3:*;
_local3 = _arg1.currentFrame;
if ((((_local3 < _arg1.frameRange.start)) || ((_local3 >= _arg1.frameRange.end)))){
_arg1.gotoAndStop(_arg2);
} else {
_arg1.nextFrame();
};
}
public function room9EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
var _local4:MovieClip;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
if (!_local3){
Rooms[roomTag].mouseSet = false;
Rooms[roomTag].imageB.buttonMode = false;
Rooms[roomTag].imageB.useHandCursor = false;
if (stage.getChildByName("global_text")){
removeMovie(stage.getChildByName("global_text"));
};
};
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local3){
if (_local2 == 0){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "LEAVES AND GRASS";
};
};
if (_local2 == 1){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "RUBBISH SKIP";
};
};
if ((((_local2 == 2)) && (!(Rooms[roomTag].statue_defeated)))){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "STATUE";
};
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 2)))){
if (!Rooms[roomTag].statue_defeated){
display_txt.text = ("It doesn't move, is it dead?.. There's something alien and uncomforting about this strange mockery" + " of the Statue of Constantine..-how do I even know what it is?");
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
};
if (((_local3) && ((_local2 == 0)))){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
display_txt.text = "Grass and weeds growing 'inside' a building. Is this someone's twisted idea of a garden?";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
if (((_local3) && ((_local2 == 1)))){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
_local4 = new transition_mc();
_local4.name = "transition";
_local4.mouseEnabled = false;
_local4.mouseChildren = false;
stage.addChild(_local4);
_local4.alpha = 0;
_local4.addEventListener(Event.ENTER_FRAME, FadeIn, false, 0, true);
Rooms[roomTag].newTag = 10;
break;
} else {
display_txt.text = "It's a rubbish skip, completely stained in blood. Take a look inside?";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
};
if (((_local3) && ((_local2 == 3)))){
if (mouse_clicked){
Go_Back(5);
break;
} else {
display_txt.text = "BACK?";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
};
};
}
public function room16EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
if (dead){
return;
};
if (Rooms[roomTag].current_page < 3){
Rooms[roomTag].back2.visible = true;
} else {
Rooms[roomTag].back2.visible = false;
};
if (Rooms[roomTag].current_page > 1){
Rooms[roomTag].back3.visible = true;
} else {
Rooms[roomTag].back3.visible = false;
};
if (Rooms[roomTag].current_page == 2){
if (Rooms[24].introduced){
Rooms[roomTag].imageB.PASSCODE.text = PASSCODE;
Rooms[roomTag].imageB.PASSCODE.visible = true;
} else {
Rooms[roomTag].imageB.PASSCODE.visible = false;
};
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
Quick(_local3);
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local3){
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 0)))){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].current_page++;
Rooms[roomTag].imageB.nextFrame();
break;
} else {
if (Rooms[roomTag].current_page < 3){
Text("NEXT PAGE?");
break;
};
};
};
if (((_local3) && ((_local2 == 1)))){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].current_page--;
Rooms[roomTag].imageB.prevFrame();
break;
} else {
if (Rooms[roomTag].current_page > 1){
Text("PREVIOUS PAGE?");
break;
};
};
};
if (((_local3) && ((_local2 == 2)))){
if (mouse_clicked){
Go_Back(15);
break;
} else {
Text("BACK?");
break;
};
};
};
}
public function sawLEFT(_arg1:MouseEvent):void{
sawOb.movement = (sawOb.movement - 2.5);
}
public function mouseDrag(_arg1:MouseEvent):void{
if ((_arg1.target is SimpleButton)){
return;
};
if ((_arg1.target is TextField)){
return;
};
_arg1.target.startDrag();
_arg1.target.addEventListener(MouseEvent.MOUSE_UP, mouseStopDrag, false, 0, true);
}
public function inVent(_arg1:Event){
if (BATTLE_MODE){
stage.getChildByName("inventory").visible = false;
} else {
stage.getChildByName("inventory").visible = true;
};
stage.setChildIndex(stage.getChildByName("inventory"), (stage.numChildren - 1));
}
public function swapDepths(_arg1:DisplayObjectContainer, _arg2:DisplayObject, _arg3:DisplayObject){
var _local4:int;
var _local5:int;
_local4 = _arg1.getChildIndex(_arg2);
_local5 = _arg1.getChildIndex(_arg3);
if (_local4 == _local5){
throw (new Error("Illegal use of swapDepths, cant swap the same object with it self."));
};
_arg1.setChildIndex(_arg3, _local4);
_arg1.setChildIndex(_arg2, _local5);
}
public function getItem(_arg1:Event){
var _local2:MovieClip;
var _local3:String;
var _local4:Class;
var _local5:MovieClip;
_local2 = MovieClip(_arg1.currentTarget);
_local3 = _local2.tag;
_local4 = (getDefinitionByName(_local3) as Class);
_local5 = new (_local4);
itemsInInventory.push(_local5);
inventorySprite.addChild(_local5);
_local5.name = _local2.name;
_local5.x = ((itemsInInventory.length - 1) * 40);
_local5.y = 0;
_local5.inUse = false;
_local5.setX = ((itemsInInventory.length - 1) * 40);
_local5.setY = 0;
_local5.doubleClickEnabled = true;
_local5.addEventListener(MouseEvent.DOUBLE_CLICK, double_click_Item);
_local5.addEventListener(MouseEvent.CLICK, useItem);
_local5.buttonMode = true;
_local5.useHandCursor = true;
_local2.removeEventListener(Event.ENTER_FRAME, getItem);
removeMovie(_local2);
if (stage.getChildByName("inventory")){
stage.setChildIndex(stage.getChildByName("inventory"), (stage.numChildren - 1));
};
}
public function room27EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
Quick(_local3);
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local3){
if (_local2 == 0){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "COMBINATION LOCK";
};
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 0)))){
Text("Seems to be a combination lock. There's no other way through- the door is too heavy to break down.");
break;
};
if (((_local3) && ((_local2 == 1)))){
if (mouse_clicked){
Go_Back(14);
Rooms[roomTag].reel1.removeEventListener(MouseEvent.CLICK, reelRoll);
Rooms[roomTag].reel2.removeEventListener(MouseEvent.CLICK, reelRoll);
Rooms[roomTag].reel3.removeEventListener(MouseEvent.CLICK, reelRoll);
Rooms[roomTag].reel4.removeEventListener(MouseEvent.CLICK, reelRoll);
break;
} else {
Text("BACK?");
break;
};
};
};
}
public function onTick3(_arg1:TimerEvent):void{
Rooms[roomTag].currentTime = (Rooms[roomTag].targetTime - _arg1.target.currentCount);
Rooms[roomTag].imageC.timer_txt.text = Rooms[roomTag].currentTime;
if (Rooms[roomTag].currentTime <= 0){
Rooms[roomTag].timeUP = true;
if (stage.getChildByName("global_text")){
removeMovie(stage.getChildByName("global_text"));
};
};
}
public function changeColor(_arg1:Event){
var _local2:MovieClip;
_local2 = MovieClip(_arg1.target);
Tint(_local2, _local2.newColor, _local2.percent);
_local2.percent = (_local2.percent + 0.025);
if (_local2.percent >= _local2.amount){
_local2.removeEventListener(Event.ENTER_FRAME, changeColor);
};
}
public function room6EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
var _local4:door_knob_wav;
var _local5:MovieClip;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
if (!_local3){
Rooms[roomTag].mouseSet = false;
Rooms[roomTag].imageB.buttonMode = false;
Rooms[roomTag].imageB.useHandCursor = false;
if (stage.getChildByName("global_text")){
removeMovie(stage.getChildByName("global_text"));
};
};
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local3){
if (_local2 == 0){
if (mouse_clicked){
if (ITEM_IN_USE.name == "COPPER KEY"){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Rooms[roomTag].doorA_open = true;
removeICON("COPPER KEY");
Text("Success! The key turns and the door is unlocked!");
break;
} else {
mouse_clicked = false;
};
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "OAK DOOR";
};
};
if (_local2 == 1){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "FISH TANK";
};
};
if (_local2 == 2){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "X-RAY IMAGES";
};
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 0)))){
if (Rooms[roomTag].doorA_open){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Go_Back(13);
break;
} else {
Text("You opened it already. Enter?");
break;
};
};
if ((((Rooms[roomTag].doorA_open == false)) && (mouse_clicked))){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
_local4 = new door_knob_wav();
_local4.play();
display_txt.text = "The doors in this house are too heavy to open without keys";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
} else {
display_txt.text = "That creature said this was my only way through.";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
};
if (((_local3) && ((_local2 == 1)))){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
_local5 = new transition_mc();
_local5.name = "transition";
_local5.mouseEnabled = false;
_local5.mouseChildren = false;
stage.addChild(_local5);
_local5.alpha = 0;
_local5.addEventListener(Event.ENTER_FRAME, FadeIn, false, 0, true);
Rooms[roomTag].newTag = 7;
break;
} else {
display_txt.text = "It's a tropical fish tank. Investigate?";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
};
if (((_local3) && ((_local2 == 2)))){
display_txt.text = "X-rays from human and animal bone structure. These images are...disturbing..";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
if (((_local3) && ((_local2 == 3)))){
if (mouse_clicked){
if (stage.hasEventListener(Event.ENTER_FRAME)){
stage.removeEventListener(Event.ENTER_FRAME, FishTween);
};
Go_Back(5);
break;
} else {
display_txt.text = "BACK?";
display_txt.setTextFormat(format);
stage.addChildAt(display_txt, stage.numChildren);
break;
};
};
};
}
public function exitMenu(_arg1:Event):void{
removeMovie(Rooms[roomTag].menuT);
removeMovie(Rooms[roomTag].exitT);
Rooms[roomTag].ready = true;
_arg1.target.removeEventListener(MouseEvent.MOUSE_DOWN, exitShout);
}
public function Start_ShoutBox(_arg1:MovieClip, _arg2:Number, _arg3:Number, _arg4:String):void{
var _local5:SimpleButton;
var _local6:MovieClip;
SHOUT_BOX_BLUR = true;
_arg1.x = _arg2;
_arg1.y = _arg3;
_local5 = new exitdialogue_mc();
_local5.x = 495;
_local5.y = 370;
stage.addChild(_local5);
_local6 = new text_skip_mc();
stage.addChild(_local6);
shout.text_image = _arg1;
shout.text_image.visible = false;
shout.text_image.exitT = _local5;
shout.myText = _arg4;
shout.count = 0;
stage.addEventListener(Event.ENTER_FRAME, Conversation, false, 0, true);
shout.text_image.UPs.addEventListener(MouseEvent.MOUSE_DOWN, mouseUpScroll, false, 0, true);
shout.text_image.DOWNs.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownScroll, false, 0, true);
shout.text_image.addEventListener(MouseEvent.MOUSE_DOWN, mouseDrag, false, 0, true);
shout.text_image.back.mouseEnabled = false;
shout.text_image.visible = false;
shout.text_image.exitT.addEventListener(MouseEvent.MOUSE_DOWN, exitShout, false, 0, true);
shout.text_image.exitT.visible = false;
Rooms[roomTag].deleteArray.push(shout.text_image);
Rooms[roomTag].deleteArray.push(_local5);
Rooms[roomTag].deleteArray.push(_local6);
}
public function sawRIGHT(_arg1:MouseEvent):void{
sawOb.movement = (sawOb.movement + 2.5);
}
public function downKeys(_arg1:KeyboardEvent){
if (keys[_arg1.keyCode] != undefined){
keys[_arg1.keyCode].down = true;
};
}
public function reelRoll(_arg1:MouseEvent):void{
var _local2:Sound;
var _local3:String;
var _local4:Sound;
_local2 = new RM27a_wav();
_local2.play();
if (++_arg1.target.tag > 6){
_arg1.target.tag = 1;
};
_arg1.target.gotoAndStop(_arg1.target.tag);
Rooms[roomTag].tag1 = Rooms[roomTag].reel1.tag;
Rooms[roomTag].tag2 = Rooms[roomTag].reel2.tag;
Rooms[roomTag].tag3 = Rooms[roomTag].reel3.tag;
Rooms[roomTag].tag4 = Rooms[roomTag].reel4.tag;
_local3 = (((String(Rooms[roomTag].tag1) + String(Rooms[roomTag].tag2)) + String(Rooms[roomTag].tag3)) + String(Rooms[roomTag].tag4));
if (_local3 == PASSCODE){
_local4 = new door_opening_wav();
_local4.play();
Rooms[roomTag].reel1.removeEventListener(MouseEvent.CLICK, reelRoll);
Rooms[roomTag].reel2.removeEventListener(MouseEvent.CLICK, reelRoll);
Rooms[roomTag].reel3.removeEventListener(MouseEvent.CLICK, reelRoll);
Rooms[roomTag].reel4.removeEventListener(MouseEvent.CLICK, reelRoll);
Text("It unlocks!");
Go_Back(25);
Rooms[14].accerbusDoor_open = true;
};
}
public function main(_arg1:Event):void{
var _local2:Function;
SHOUT_BOX_TIMER = 0;
stage.focus = stage;
if (Earthquake.timer){
Earthquake.timer.stop();
};
removeAllListeners();
_local2 = this[("room" + roomTag)];
stage.addEventListener(Event.ENTER_FRAME, _local2, false, 0, true);
stage.removeEventListener(Event.ENTER_FRAME, main);
}
public function onTick2(_arg1:TimerEvent):void{
var _local2:die_wav;
var _local3:Timer;
Rooms[roomTag].currentTime = (Rooms[roomTag].targetTime - _arg1.target.currentCount);
Rooms[roomTag].imageF.timer_txt.text = Rooms[roomTag].currentTime;
if (Rooms[roomTag].currentTime <= 0){
Rooms[roomTag].timeUP = true;
removeMovie(Rooms[roomTag].imageF);
removeMovie(Rooms[roomTag].imageG);
Rooms[roomTag].countDown.stop();
Rooms[roomTag].countDown.removeEventListener(TimerEvent.TIMER, onTick2);
Rooms[roomTag].countDown2.stop();
Rooms[roomTag].countDown2.removeEventListener(TimerEvent.TIMER, clockHit);
if (stage.getChildByName("global_text")){
removeMovie(stage.getChildByName("global_text"));
};
dead = true;
Rooms[roomTag].countDown.removeEventListener(TimerEvent.TIMER, onTick2);
_local2 = new die_wav();
_local2.play();
Rooms[roomTag].ready = false;
Rooms[roomTag].first_time = true;
Rooms[roomTag].imageB.hex = 0;
Rooms[roomTag].imageB.alphaV = 0;
Rooms[roomTag].imageB.addEventListener(Event.ENTER_FRAME, fadeColor, false, 0, true);
Rooms[roomTag].newTag = 9;
_local3 = new Timer(5000, 1);
_local3.start();
_local3.addEventListener(TimerEvent.TIMER, retry);
};
}
public function localToLocal(_arg1:MovieClip, _arg2:MovieClip):Point{
return (_arg2.globalToLocal(_arg1.localToGlobal(new Point())));
}
public function blurIN(_arg1:Event):void{
var _local2:MovieClip;
_local2 = MovieClip(_arg1.target);
Bfilt.blurX--;
Bfilt.blurY--;
_local2.filters = [Bfilt];
if (Bfilt.blurX < 45){
_local2.visible = true;
};
if (Bfilt.blurX <= 2){
_local2.removeEventListener(Event.ENTER_FRAME, blurIN);
Bfilt.blurX = 50;
Bfilt.blurY = 50;
};
}
public function Quick(_arg1:Boolean){
if (!_arg1){
Rooms[roomTag].mouseSet = false;
Rooms[roomTag].imageB.buttonMode = false;
Rooms[roomTag].imageB.useHandCursor = false;
if (stage.getChildByName("global_text")){
removeMovie(stage.getChildByName("global_text"));
};
};
}
public function room13EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
Quick(_local3);
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local3){
if (_local2 == 0){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "STAIRCASE";
};
};
if (_local2 == 1){
break;
};
if (_local2 == 2){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "WRITING";
};
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 0)))){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Go_Back(18);
break;
} else {
Text("The staircase leads to a dark corridor.");
break;
};
};
if (((_local3) && ((_local2 == 1)))){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Go_Back(14);
break;
} else {
Text("This way leads to the EAST CORRIDOR");
break;
};
};
if (((_local3) && ((_local2 == 2)))){
Text("It's mainly scribbles written on the wall but you can make out the words 'YOU ARE YOUR OWN WORST NIGHTMARE' clearly enough.");
break;
};
if (((_local3) && ((_local2 == 3)))){
if (mouse_clicked){
Go_Back(6);
break;
} else {
Text("BACK?");
break;
};
};
};
}
public function room3EVENTS(_arg1:Event):void{
if (dead){
return;
};
}
public function room10EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
if (!_local3){
Rooms[roomTag].mouseSet = false;
Rooms[roomTag].imageB.buttonMode = false;
Rooms[roomTag].imageB.useHandCursor = false;
if (stage.getChildByName("global_text")){
removeMovie(stage.getChildByName("global_text"));
};
};
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local3){
if (_local2 == 0){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "DEAD CARCASSES";
};
};
if (_local2 == 1){
break;
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 0)))){
Text("UGHH..Just a brutish mass of human and animal carcasses..spare parts I guess..the stench is overpowering!");
break;
};
if (((((_local3) && ((_local2 == 1)))) && (!(Rooms[roomTag].ammonia_taken)))){
if (mouse_clicked){
Rooms[roomTag].ammonia_taken = true;
Rooms[9].ammonia = true;
mouse_clicked = false;
Rooms[roomTag].imageC.addEventListener(Event.ENTER_FRAME, getItem, false, 0, true);
break;
} else {
Text("Looks to be some kind of household cleaning product. Take?");
break;
};
};
if (((_local3) && ((_local2 == 2)))){
if (mouse_clicked){
Go_Back(9);
break;
} else {
Text("BACK?");
break;
};
};
};
}
public function CheckWithinScreen(_arg1:MovieClip):Boolean{
if ((((((((_arg1.x > 0)) && ((_arg1.x < STAGE_WIDTH)))) && ((_arg1.y < STAGE_HEIGHT)))) && ((_arg1.y > 0)))){
return (true);
};
return (false);
}
public function room18EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
Quick(_local3);
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local3){
if (_local2 == 0){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "DARKNESS";
};
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 0)))){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Go_Back(19);
break;
} else {
Text("This leads further into the corridor. Proceed?");
break;
};
};
if (((_local3) && ((_local2 == 1)))){
if (mouse_clicked){
Go_Back(13);
break;
} else {
Text("BACK?");
break;
};
};
};
}
public function Go_Back(_arg1:Number){
var _local2:MovieClip;
mouse_clicked = false;
Rooms[roomTag].timer = 100;
_local2 = new transition_mc();
_local2.name = "transition";
_local2.mouseEnabled = false;
_local2.mouseChildren = false;
stage.addChild(_local2);
_local2.alpha = 0;
_local2.addEventListener(Event.ENTER_FRAME, FadeIn, false, 0, true);
Rooms[roomTag].newTag = _arg1;
}
public function kill_particles_Bitmap(_arg1:EmitterEvent):void{
var _local2:BitmapRenderer;
_arg1.target.removeEventListener(EmitterEvent.EMITTER_EMPTY, kill_particles_Bitmap);
_local2 = renderArray.shift();
_arg1.target.stop();
_local2.removeEmitter(Emitter2D(_arg1.target));
_arg1 = null;
_local2 = null;
}
public function room24EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
Quick(_local3);
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local3){
if (_local2 == 0){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "DARKNESS";
};
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 0)))){
if (mouse_clicked){
Go_Back(25);
break;
} else {
Text("It's cold and damp here, this could be some type of basement. This way goes into more darkness...Proceed?");
break;
};
};
if (((_local3) && ((_local2 == 1)))){
if (mouse_clicked){
Go_Back(23);
break;
} else {
Text("BACK?");
break;
};
};
};
}
public function globalPosition(_arg1:DisplayObject):Point{
if (_arg1.stage){
return (_arg1.parent.localToGlobal(new Point(_arg1.x, _arg1.y)));
};
return (new Point(_arg1.x, _arg1.y));
}
public function room21EVENTS(_arg1:Event):void{
var _local2:*;
var _local3:Boolean;
var _local4:Sound;
if (dead){
return;
};
if (Rooms[roomTag].timer > 0){
Rooms[roomTag].timer--;
return;
};
for (_local2 in Rooms[roomTag].MouseEvents) {
_local3 = Rooms[roomTag].MouseEvents[_local2].contains(stage.mouseX, stage.mouseY);
Quick(_local3);
if (ITEM){
if (_local2 == (Rooms[roomTag].MouseEvents.length - 1)){
break;
};
if (_local3){
if (_local2 == 0){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "PORTRAIT";
};
};
if (_local2 == 1){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "IMP MANNEQUIN";
};
};
if (_local2 == 2){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "STAINED GLASS WINDOW";
};
};
if (_local2 == 2){
if (mouse_clicked){
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Text("DOES NOTHING");
break;
} else {
CURRENT_OBJECT = "OAK TABLETOP";
};
};
Text((((("USE " + ITEM_IN_USE.name) + " ON ") + CURRENT_OBJECT) + "?"));
break;
};
};
if (((_local3) && ((_local2 == 0)))){
if (mouse_clicked){
Go_Back(22);
break;
} else {
if (((!(Rooms[20].pushed)) && (Rooms[22].smashed))){
Text("I'm glad I destroyed that detestable image.");
break;
} else {
if (Rooms[20].pushed){
Text("The broomstick handle juts out from the hollowed pipe, where the picture once was.");
break;
} else {
Text("Looks like a portrait of a malformed woman. Take a closer look?");
break;
};
};
};
};
if (((_local3) && ((_local2 == 1)))){
Text("A mannequin of some kind of devilish imp creature.");
break;
};
if (((_local3) && ((_local2 == 2)))){
if (((mouse_clicked) && (!(Rooms[roomTag].window_open)))){
_local4 = new window_open_wav();
_local4.play();
Rooms[roomTag].window_open = true;
mouse_clicked = false;
Rooms[roomTag].timer = 20;
Rooms[roomTag].imageD.gotoAndStop(2);
Text("It opens with a little effort.");
break;
};
if (Rooms[roomTag].window_open){
if (Rooms[8].birdcage_open){
Text("Again, too high for me to climb out. I can see that crow from earlier perched on a ledge just outside of reach.");
} else {
Text("Again, too high for me to climb out.");
};
break;
} else {
Text("A stained glass window. It's unlocked. Open?");
break;
};
};
if (((_local3) && ((_local2 == 3)))){
Text("A tabletop in front of the window.");
break;
};
if (((_local3) && ((_local2 == 4)))){
if (mouse_clicked){
Go_Back(19);
break;
} else {
Text("BACK?");
break;
};
};
};
}
public function tweenFinished(_arg1:TweenEvent){
antiGC[_arg1.currentTarget] = null;
delete antiGC[_arg1.currentTarget];
}
}
}//package HOUSEOFHELL_fla
Section 8
//Action (org.flintparticles.common.actions.Action)
package org.flintparticles.common.actions {
import org.flintparticles.common.particles.*;
import org.flintparticles.common.emitters.*;
public interface Action {
function addedToEmitter(_arg1:Emitter):void;
function removedFromEmitter(_arg1:Emitter):void;
function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void;
function getDefaultPriority():Number;
}
}//package org.flintparticles.common.actions
Section 9
//ActionBase (org.flintparticles.common.actions.ActionBase)
package org.flintparticles.common.actions {
import org.flintparticles.common.particles.*;
import org.flintparticles.common.emitters.*;
public class ActionBase implements Action {
public function removedFromEmitter(_arg1:Emitter):void{
}
public function getDefaultPriority():Number{
return (0);
}
public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{
}
public function addedToEmitter(_arg1:Emitter):void{
}
}
}//package org.flintparticles.common.actions
Section 10
//Age (org.flintparticles.common.actions.Age)
package org.flintparticles.common.actions {
import org.flintparticles.common.particles.*;
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.energyEasing.*;
public class Age extends ActionBase {
private var _easing:Function;
public function Age(_arg1:Function=null){
if (_arg1 == null){
_easing = Linear.easeNone;
} else {
_easing = _arg1;
};
}
override public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{
_arg2.age = (_arg2.age + _arg3);
if (_arg2.age >= _arg2.lifetime){
_arg2.energy = 0;
_arg2.isDead = true;
} else {
_arg2.energy = _easing(_arg2.age, _arg2.lifetime);
};
}
public function get easing():Function{
return (_easing);
}
public function set easing(_arg1:Function):void{
_easing = _arg1;
}
}
}//package org.flintparticles.common.actions
Section 11
//Fade (org.flintparticles.common.actions.Fade)
package org.flintparticles.common.actions {
import org.flintparticles.common.particles.*;
import org.flintparticles.common.emitters.*;
public class Fade extends ActionBase {
private var _endAlpha:Number;
private var _diffAlpha:Number;
public function Fade(_arg1:Number=1, _arg2:Number=0){
_diffAlpha = (_arg1 - _arg2);
_endAlpha = _arg2;
}
public function get startAlpha():Number{
return ((_endAlpha + _diffAlpha));
}
public function set endAlpha(_arg1:Number):void{
_diffAlpha = ((_endAlpha + _diffAlpha) - _arg1);
_endAlpha = _arg1;
}
override public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{
var _local4:Number;
_local4 = (_endAlpha + (_diffAlpha * _arg2.energy));
_arg2.color = ((_arg2.color & 0xFFFFFF) | (Math.round((_local4 * 0xFF)) << 24));
}
public function get endAlpha():Number{
return (_endAlpha);
}
public function set startAlpha(_arg1:Number):void{
_diffAlpha = (_arg1 - _endAlpha);
}
override public function getDefaultPriority():Number{
return (-5);
}
}
}//package org.flintparticles.common.actions
Section 12
//Activity (org.flintparticles.common.activities.Activity)
package org.flintparticles.common.activities {
import org.flintparticles.common.emitters.*;
public interface Activity {
function initialize(_arg1:Emitter):void;
function addedToEmitter(_arg1:Emitter):void;
function removedFromEmitter(_arg1:Emitter):void;
function update(_arg1:Emitter, _arg2:Number):void;
function getDefaultPriority():Number;
}
}//package org.flintparticles.common.activities
Section 13
//Blast (org.flintparticles.common.counters.Blast)
package org.flintparticles.common.counters {
import org.flintparticles.common.emitters.*;
public class Blast implements Counter {
private var _startCount:uint;
public function Blast(_arg1:uint){
_startCount = _arg1;
}
public function stop():void{
}
public function updateEmitter(_arg1:Emitter, _arg2:Number):uint{
return (0);
}
public function resume():void{
}
public function set startCount(_arg1:Number):void{
_startCount = _arg1;
}
public function startEmitter(_arg1:Emitter):uint{
return (_startCount);
}
public function get startCount():Number{
return (_startCount);
}
}
}//package org.flintparticles.common.counters
Section 14
//Counter (org.flintparticles.common.counters.Counter)
package org.flintparticles.common.counters {
import org.flintparticles.common.emitters.*;
public interface Counter {
function stop():void;
function updateEmitter(_arg1:Emitter, _arg2:Number):uint;
function startEmitter(_arg1:Emitter):uint;
function resume():void;
}
}//package org.flintparticles.common.counters
Section 15
//Steady (org.flintparticles.common.counters.Steady)
package org.flintparticles.common.counters {
import org.flintparticles.common.emitters.*;
public class Steady implements Counter {
private var _stop:Boolean;
private var _rateInv:Number;
private var _timeToNext:Number;
private var _rate:Number;
public function Steady(_arg1:Number){
_stop = false;
_rate = _arg1;
_rateInv = (1 / _rate);
}
public function get rate():Number{
return (_rate);
}
public function updateEmitter(_arg1:Emitter, _arg2:Number):uint{
var _local3:uint;
if (_stop){
return (0);
};
_local3 = 0;
_timeToNext = (_timeToNext - _arg2);
while (_timeToNext <= 0) {
_local3++;
_timeToNext = (_timeToNext + _rateInv);
};
return (_local3);
}
public function stop():void{
_stop = true;
}
public function startEmitter(_arg1:Emitter):uint{
_timeToNext = _rateInv;
return (0);
}
public function resume():void{
_stop = false;
}
public function set rate(_arg1:Number):void{
_rate = _arg1;
_rateInv = (1 / _arg1);
}
}
}//package org.flintparticles.common.counters
Section 16
//ZeroCounter (org.flintparticles.common.counters.ZeroCounter)
package org.flintparticles.common.counters {
import org.flintparticles.common.emitters.*;
public class ZeroCounter implements Counter {
public function stop():void{
}
public function updateEmitter(_arg1:Emitter, _arg2:Number):uint{
return (0);
}
public function startEmitter(_arg1:Emitter):uint{
return (0);
}
public function resume():void{
}
}
}//package org.flintparticles.common.counters
Section 17
//Dot (org.flintparticles.common.displayObjects.Dot)
package org.flintparticles.common.displayObjects {
import flash.display.*;
public class Dot extends Shape {
public function Dot(_arg1:Number, _arg2:uint=0xFFFFFF, _arg3:String="normal"){
graphics.beginFill(_arg2);
graphics.drawCircle(0, 0, _arg1);
graphics.endFill();
blendMode = _arg3;
}
}
}//package org.flintparticles.common.displayObjects
Section 18
//RadialDot (org.flintparticles.common.displayObjects.RadialDot)
package org.flintparticles.common.displayObjects {
import flash.display.*;
import flash.geom.*;
public class RadialDot extends Shape {
public function RadialDot(_arg1:Number, _arg2:uint=0xFFFFFF, _arg3:String="normal"){
var _local4:Matrix;
super();
_local4 = new Matrix();
_local4.createGradientBox((_arg1 * 2), (_arg1 * 2), 0, -(_arg1), -(_arg1));
graphics.beginGradientFill(GradientType.RADIAL, [_arg2, _arg2], [1, 0], [0, 0xFF], _local4);
graphics.drawCircle(0, 0, _arg1);
graphics.endFill();
blendMode = _arg3;
}
}
}//package org.flintparticles.common.displayObjects
Section 19
//Emitter (org.flintparticles.common.emitters.Emitter)
package org.flintparticles.common.emitters {
import flash.events.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.common.initializers.*;
import org.flintparticles.common.actions.*;
import org.flintparticles.common.activities.*;
import org.flintparticles.common.counters.*;
import org.flintparticles.common.events.*;
import org.flintparticles.common.utils.*;
public class Emitter extends EventDispatcher {
protected var _running:Boolean;// = false
protected var _activities:PriorityArray;
protected var _particles:Array;
protected var _initializers:PriorityArray;
protected var _counter:Counter;
protected var _started:Boolean;// = false
protected var _actions:PriorityArray;
protected var _useInternalTick:Boolean;// = true
protected var _fixedFrameTime:Number;// = 0
protected var _particleFactory:ParticleFactory;
protected var _maximumFrameTime:Number;// = 0.1
public function Emitter(){
_useInternalTick = true;
_fixedFrameTime = 0;
_running = false;
_started = false;
_maximumFrameTime = 0.1;
super();
_particles = new Array();
_actions = new PriorityArray();
_initializers = new PriorityArray();
_activities = new PriorityArray();
_counter = new ZeroCounter();
}
public function stop():void{
if (_useInternalTick){
FrameUpdater.instance.removeEventListener(UpdateEvent.UPDATE, updateEventListener);
};
_started = false;
killAllParticles();
}
public function get counter():Counter{
return (_counter);
}
public function addInitializer(_arg1:Initializer, _arg2:Number=NaN):void{
if (isNaN(_arg2)){
_arg2 = _arg1.getDefaultPriority();
};
_initializers.add(_arg1, _arg2);
_arg1.addedToEmitter(this);
}
public function killAllParticles():void{
var _local1:int;
var _local2:int;
_local1 = _particles.length;
_local2 = 0;
while (_local2 < _local1) {
dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_DEAD, _particles[_local2]));
_particleFactory.disposeParticle(_particles[_local2]);
_local2++;
};
_particles.length = 0;
}
public function set fixedFrameTime(_arg1:Number):void{
_fixedFrameTime = _arg1;
}
public function get maximumFrameTime():Number{
return (_maximumFrameTime);
}
public function get useInternalTick():Boolean{
return (_useInternalTick);
}
public function get particleFactory():ParticleFactory{
return (_particleFactory);
}
private function updateEventListener(_arg1:UpdateEvent):void{
if (_fixedFrameTime){
update(_fixedFrameTime);
} else {
update(_arg1.time);
};
}
protected function createParticle():Particle{
var _local1:Particle;
var _local2:int;
var _local3:int;
_local1 = _particleFactory.createParticle();
_local2 = _initializers.length;
initParticle(_local1);
_local3 = 0;
while (_local3 < _local2) {
_initializers[_local3].initialize(this, _local1);
_local3++;
};
_particles.push(_local1);
dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_CREATED, _local1));
return (_local1);
}
public function get particles():Array{
return (_particles);
}
protected function sortParticles():void{
}
public function removeActivity(_arg1:Activity):void{
if (_activities.remove(_arg1)){
_arg1.removedFromEmitter(this);
};
}
public function set maximumFrameTime(_arg1:Number):void{
_maximumFrameTime = _arg1;
}
protected function initParticle(_arg1:Particle):void{
}
public function addAction(_arg1:Action, _arg2:Number=NaN):void{
if (isNaN(_arg2)){
_arg2 = _arg1.getDefaultPriority();
};
_actions.add(_arg1, _arg2);
_arg1.addedToEmitter(this);
}
public function hasInitializerOfType(_arg1:Class):Boolean{
var _local2:uint;
var _local3:uint;
_local2 = _initializers.length;
_local3 = 0;
while (_local3 < _local2) {
if ((_initializers[_local3] is _arg1)){
return (true);
};
_local3++;
};
return (false);
}
public function resume():void{
_running = true;
}
public function removeInitializer(_arg1:Initializer):void{
if (_initializers.remove(_arg1)){
_arg1.removedFromEmitter(this);
};
}
public function get running():Boolean{
return (_running);
}
public function hasActionOfType(_arg1:Class):Boolean{
var _local2:uint;
var _local3:uint;
_local2 = _actions.length;
_local3 = 0;
while (_local3 < _local2) {
if ((_actions[_local3] is _arg1)){
return (true);
};
_local3++;
};
return (false);
}
public function get fixedFrameTime():Number{
return (_fixedFrameTime);
}
public function set particleFactory(_arg1:ParticleFactory):void{
_particleFactory = _arg1;
}
public function hasActivity(_arg1:Activity):Boolean{
return (_activities.contains(_arg1));
}
public function addActivity(_arg1:Activity, _arg2:Number=NaN):void{
if (isNaN(_arg2)){
_arg2 = _arg1.getDefaultPriority();
};
_activities.add(_arg1, _arg2);
_arg1.addedToEmitter(this);
}
public function update(_arg1:Number):void{
var _local2:int;
var _local3:Particle;
var _local4:int;
var _local5:Action;
var _local6:int;
var _local7:int;
if (!_running){
return;
};
if (_arg1 > _maximumFrameTime){
_arg1 = _maximumFrameTime;
};
_local4 = _counter.updateEmitter(this, _arg1);
_local2 = 0;
while (_local2 < _local4) {
createParticle();
_local2++;
};
sortParticles();
_local4 = _activities.length;
_local2 = 0;
while (_local2 < _local4) {
_activities[_local2].update(this, _arg1);
_local2++;
};
if (_particles.length > 0){
_local4 = _actions.length;
_local6 = _particles.length;
_local7 = 0;
while (_local7 < _local4) {
_local5 = _actions[_local7];
_local2 = 0;
while (_local2 < _local6) {
_local3 = _particles[_local2];
_local5.update(this, _local3, _arg1);
_local2++;
};
_local7++;
};
_local2 = _local6;
while (_local2--) {
_local3 = _particles[_local2];
if (_local3.isDead){
dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_DEAD, _local3));
_particleFactory.disposeParticle(_local3);
_particles.splice(_local2, 1);
};
};
} else {
dispatchEvent(new EmitterEvent(EmitterEvent.EMITTER_EMPTY));
};
dispatchEvent(new EmitterEvent(EmitterEvent.EMITTER_UPDATED));
}
public function removeAction(_arg1:Action):void{
if (_actions.remove(_arg1)){
_arg1.removedFromEmitter(this);
};
}
public function hasActivityOfType(_arg1:Class):Boolean{
var _local2:uint;
var _local3:uint;
_local2 = _activities.length;
_local3 = 0;
while (_local3 < _local2) {
if ((_activities[_local3] is _arg1)){
return (true);
};
_local3++;
};
return (false);
}
public function addExistingParticles(_arg1:Array, _arg2:Boolean=false):void{
var _local3:int;
var _local4:int;
var _local5:int;
var _local6:int;
_local3 = _arg1.length;
if (_arg2){
_local5 = _initializers.length;
_local6 = 0;
while (_local6 < _local5) {
_local4 = 0;
while (_local4 < _local3) {
_initializers[_local6].initialize(this, _arg1[_local4]);
_local4++;
};
_local6++;
};
};
_local4 = 0;
while (_local4 < _local3) {
_particles.push(_arg1[_local4]);
dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_ADDED, _arg1[_local4]));
_local4++;
};
}
public function set useInternalTick(_arg1:Boolean):void{
if (_useInternalTick != _arg1){
_useInternalTick = _arg1;
if (_started){
if (_useInternalTick){
FrameUpdater.instance.addEventListener(UpdateEvent.UPDATE, updateEventListener, false, 0, true);
} else {
FrameUpdater.instance.removeEventListener(UpdateEvent.UPDATE, updateEventListener);
};
};
};
}
public function hasInitializer(_arg1:Initializer):Boolean{
return (_initializers.contains(_arg1));
}
public function start():void{
var _local1:int;
var _local2:int;
if (_useInternalTick){
FrameUpdater.instance.addEventListener(UpdateEvent.UPDATE, updateEventListener, false, 0, true);
};
_started = true;
_running = true;
_local1 = _activities.length;
_local2 = 0;
while (_local2 < _local1) {
_activities[_local2].initialize(this);
_local2++;
};
_local1 = _counter.startEmitter(this);
_local2 = 0;
while (_local2 < _local1) {
createParticle();
_local2++;
};
}
public function hasAction(_arg1:Action):Boolean{
return (_actions.contains(_arg1));
}
public function pause():void{
_running = false;
}
public function set counter(_arg1:Counter):void{
_counter = _arg1;
}
public function runAhead(_arg1:Number, _arg2:Number=10):void{
var _local3:Number;
var _local4:Number;
_local3 = _maximumFrameTime;
_local4 = (1 / _arg2);
_maximumFrameTime = _local4;
while (_arg1 > 0) {
_arg1 = (_arg1 - _local4);
update(_local4);
};
_maximumFrameTime = _local3;
}
}
}//package org.flintparticles.common.emitters
Section 20
//Linear (org.flintparticles.common.energyEasing.Linear)
package org.flintparticles.common.energyEasing {
public class Linear {
public static function easeOut(_arg1:Number, _arg2:Number):Number{
return ((1 - (_arg1 / _arg2)));
}
public static function easeIn(_arg1:Number, _arg2:Number):Number{
return ((1 - (_arg1 / _arg2)));
}
public static function easeInOut(_arg1:Number, _arg2:Number):Number{
return ((1 - (_arg1 / _arg2)));
}
public static function easeNone(_arg1:Number, _arg2:Number):Number{
return ((1 - (_arg1 / _arg2)));
}
}
}//package org.flintparticles.common.energyEasing
Section 21
//Quadratic (org.flintparticles.common.energyEasing.Quadratic)
package org.flintparticles.common.energyEasing {
public class Quadratic {
public static function easeOut(_arg1:Number, _arg2:Number):Number{
_arg1 = (1 - (_arg1 / _arg2));
return ((_arg1 * _arg1));
}
public static function easeIn(_arg1:Number, _arg2:Number):Number{
_arg1 = (_arg1 / _arg2);
return ((1 - (_arg1 * _arg1)));
}
public static function easeInOut(_arg1:Number, _arg2:Number):Number{
_arg1 = (_arg1 / (_arg2 * 0.5));
if (_arg1 < 1){
return ((1 - ((_arg1 * _arg1) * 0.5)));
};
_arg1 = (_arg1 - 2);
return (((_arg1 * _arg1) * 0.5));
}
}
}//package org.flintparticles.common.energyEasing
Section 22
//EmitterEvent (org.flintparticles.common.events.EmitterEvent)
package org.flintparticles.common.events {
import flash.events.*;
public class EmitterEvent extends Event {
public static var EMITTER_UPDATED:String = "emitterUpdated";
public static var EMITTER_EMPTY:String = "emitterEmpty";
public function EmitterEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false){
super(_arg1, _arg2, _arg3);
}
}
}//package org.flintparticles.common.events
Section 23
//ParticleEvent (org.flintparticles.common.events.ParticleEvent)
package org.flintparticles.common.events {
import flash.events.*;
import org.flintparticles.common.particles.*;
public class ParticleEvent extends Event {
public var particle:Particle;
public static var PARTICLE_ADDED:String = "particleAdded";
public static var PARTICLE_DEAD:String = "particleDead";
public static var PARTICLE_CREATED:String = "particleCreated";
public function ParticleEvent(_arg1:String, _arg2:Particle=null, _arg3:Boolean=false, _arg4:Boolean=false){
super(_arg1, _arg3, _arg4);
this.particle = _arg2;
}
}
}//package org.flintparticles.common.events
Section 24
//UpdateEvent (org.flintparticles.common.events.UpdateEvent)
package org.flintparticles.common.events {
import flash.events.*;
public class UpdateEvent extends Event {
public var time:Number;
public static var UPDATE:String = "update";
public function UpdateEvent(_arg1:String, _arg2:Number=NaN, _arg3:Boolean=false, _arg4:Boolean=false){
super(_arg1, _arg3, _arg4);
this.time = _arg2;
}
}
}//package org.flintparticles.common.events
Section 25
//ColorInit (org.flintparticles.common.initializers.ColorInit)
package org.flintparticles.common.initializers {
import org.flintparticles.common.particles.*;
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.utils.*;
public class ColorInit extends InitializerBase {
private var _max:uint;
private var _min:uint;
public function ColorInit(_arg1:uint, _arg2:uint){
_min = _arg1;
_max = _arg2;
}
public function get color():uint{
return (((_min == _max)) ? _min : interpolateColors(_max, _min, 0.5));
}
public function set color(_arg1:uint):void{
_max = (_min = _arg1);
}
public function set minColor(_arg1:uint):void{
_min = _arg1;
}
public function set maxColor(_arg1:uint):void{
_max = _arg1;
}
override public function initialize(_arg1:Emitter, _arg2:Particle):void{
if (_max == _min){
_arg2.color = _min;
} else {
_arg2.color = interpolateColors(_min, _max, Math.random());
};
}
public function get minColor():uint{
return (_min);
}
public function get maxColor():uint{
return (_max);
}
}
}//package org.flintparticles.common.initializers
Section 26
//ImageClass (org.flintparticles.common.initializers.ImageClass)
package org.flintparticles.common.initializers {
import org.flintparticles.common.particles.*;
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.utils.*;
public class ImageClass extends InitializerBase {
private var _parameters:Array;
private var _imageClass:Class;
public function ImageClass(_arg1:Class, ... _args){
_imageClass = _arg1;
_parameters = _args;
}
public function set imageClass(_arg1:Class):void{
_imageClass = _arg1;
}
public function get parameters():Array{
return (_parameters);
}
override public function initialize(_arg1:Emitter, _arg2:Particle):void{
_arg2.image = construct(_imageClass, _parameters);
}
public function set parameters(_arg1:Array):void{
_parameters = _arg1;
}
public function get imageClass():Class{
return (_imageClass);
}
}
}//package org.flintparticles.common.initializers
Section 27
//Initializer (org.flintparticles.common.initializers.Initializer)
package org.flintparticles.common.initializers {
import org.flintparticles.common.particles.*;
import org.flintparticles.common.emitters.*;
public interface Initializer {
function initialize(_arg1:Emitter, _arg2:Particle):void;
function addedToEmitter(_arg1:Emitter):void;
function removedFromEmitter(_arg1:Emitter):void;
function getDefaultPriority():Number;
}
}//package org.flintparticles.common.initializers
Section 28
//InitializerBase (org.flintparticles.common.initializers.InitializerBase)
package org.flintparticles.common.initializers {
import org.flintparticles.common.particles.*;
import org.flintparticles.common.emitters.*;
public class InitializerBase implements Initializer {
public function initialize(_arg1:Emitter, _arg2:Particle):void{
}
public function removedFromEmitter(_arg1:Emitter):void{
}
public function getDefaultPriority():Number{
return (0);
}
public function addedToEmitter(_arg1:Emitter):void{
}
}
}//package org.flintparticles.common.initializers
Section 29
//Lifetime (org.flintparticles.common.initializers.Lifetime)
package org.flintparticles.common.initializers {
import org.flintparticles.common.particles.*;
import org.flintparticles.common.emitters.*;
public class Lifetime extends InitializerBase {
private var _min:Number;
private var _max:Number;
public function Lifetime(_arg1:Number, _arg2:Number=NaN){
_max = _arg2;
_min = _arg1;
}
public function set maxLifetime(_arg1:Number):void{
_max = _arg1;
}
public function get maxLifetime():Number{
return (_max);
}
override public function initialize(_arg1:Emitter, _arg2:Particle):void{
if (isNaN(_max)){
_arg2.lifetime = _min;
} else {
_arg2.lifetime = (_min + (Math.random() * (_max - _min)));
};
}
public function set lifetime(_arg1:Number):void{
_max = (_min = _arg1);
}
public function get lifetime():Number{
return (((_min == _max)) ? _min : ((_max + _min) * 0.5));
}
public function get minLifetime():Number{
return (_min);
}
public function set minLifetime(_arg1:Number):void{
_min = _arg1;
}
}
}//package org.flintparticles.common.initializers
Section 30
//ScaleImageInit (org.flintparticles.common.initializers.ScaleImageInit)
package org.flintparticles.common.initializers {
import org.flintparticles.common.particles.*;
import org.flintparticles.common.emitters.*;
public class ScaleImageInit extends InitializerBase {
private var _max:Number;
private var _min:Number;
public function ScaleImageInit(_arg1:Number, _arg2:Number=NaN){
_min = _arg1;
if (isNaN(_arg2)){
_max = _min;
} else {
_max = _arg2;
};
}
public function set maxScale(_arg1:Number):void{
_max = _arg1;
}
public function get maxScale():Number{
return (_max);
}
override public function initialize(_arg1:Emitter, _arg2:Particle):void{
if (_max == _min){
_arg2.scale = _min;
} else {
_arg2.scale = (_min + (Math.random() * (_max - _min)));
};
}
public function get scale():Number{
return (((_min == _max)) ? _min : ((_max + _min) / 2));
}
public function set scale(_arg1:Number):void{
_max = (_min = _arg1);
}
public function get minScale():Number{
return (_min);
}
public function set minScale(_arg1:Number):void{
_min = _arg1;
}
}
}//package org.flintparticles.common.initializers
Section 31
//SharedImage (org.flintparticles.common.initializers.SharedImage)
package org.flintparticles.common.initializers {
import flash.display.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.common.emitters.*;
public class SharedImage extends InitializerBase {
private var _image:DisplayObject;
public function SharedImage(_arg1:DisplayObject){
_image = _arg1;
}
override public function initialize(_arg1:Emitter, _arg2:Particle):void{
_arg2.image = _image;
}
public function get image():DisplayObject{
return (_image);
}
public function set image(_arg1:DisplayObject):void{
_image = _arg1;
}
}
}//package org.flintparticles.common.initializers
Section 32
//Particle (org.flintparticles.common.particles.Particle)
package org.flintparticles.common.particles {
import flash.geom.*;
import flash.utils.*;
public class Particle {
public var lifetime:Number;// = 0
public var scale:Number;// = 1
public var energy:Number;// = 1
public var image;// = null
public var color:uint;// = 4294967295
public var collisionRadius:Number;// = 1
private var _colorTransform:ColorTransform;// = null
private var _previousColor:uint;
public var isDead:Boolean;// = false
public var mass:Number;// = 1
private var _dictionary:Dictionary;// = null
public var age:Number;// = 0
public function Particle(){
color = 4294967295;
_colorTransform = null;
scale = 1;
mass = 1;
collisionRadius = 1;
image = null;
lifetime = 0;
age = 0;
energy = 1;
isDead = false;
_dictionary = null;
super();
}
public function get dictionary():Dictionary{
if (_dictionary == null){
_dictionary = new Dictionary();
};
return (_dictionary);
}
public function get colorTransform():ColorTransform{
if (((!(_colorTransform)) || (!((_previousColor == color))))){
_colorTransform = new ColorTransform((((color >>> 16) & 0xFF) / 0xFF), (((color >>> 8) & 0xFF) / 0xFF), ((color & 0xFF) / 0xFF), (((color >>> 24) & 0xFF) / 0xFF), 0, 0, 0, 0);
_previousColor = color;
};
return (_colorTransform);
}
public function get alpha():Number{
return ((((color & 4278190080) >>> 24) / 0xFF));
}
public function initialize():void{
color = 4294967295;
scale = 1;
mass = 1;
collisionRadius = 1;
lifetime = 0;
age = 0;
energy = 1;
isDead = false;
image = null;
_dictionary = null;
_colorTransform = null;
}
}
}//package org.flintparticles.common.particles
Section 33
//ParticleFactory (org.flintparticles.common.particles.ParticleFactory)
package org.flintparticles.common.particles {
public interface ParticleFactory {
function createParticle():Particle;
function disposeParticle(_arg1:Particle):void;
}
}//package org.flintparticles.common.particles
Section 34
//Renderer (org.flintparticles.common.renderers.Renderer)
package org.flintparticles.common.renderers {
import org.flintparticles.common.emitters.*;
public interface Renderer {
function removeEmitter(_arg1:Emitter):void;
function addEmitter(_arg1:Emitter):void;
}
}//package org.flintparticles.common.renderers
Section 35
//SpriteRendererBase (org.flintparticles.common.renderers.SpriteRendererBase)
package org.flintparticles.common.renderers {
import flash.display.*;
import flash.events.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.events.*;
public class SpriteRendererBase extends Sprite implements Renderer {
protected var _emitters:Array;
public function SpriteRendererBase(){
_emitters = new Array();
mouseEnabled = false;
mouseChildren = false;
addEventListener(Event.ADDED_TO_STAGE, addedToStage, false, 0, true);
}
private function particleAdded(_arg1:ParticleEvent):void{
addParticle(_arg1.particle);
if (stage){
stage.invalidate();
};
}
private function addedToStage(_arg1:Event):void{
if (stage){
stage.invalidate();
};
}
protected function removeParticle(_arg1:Particle):void{
}
protected function addParticle(_arg1:Particle):void{
}
public function removeEmitter(_arg1:Emitter):void{
var _local2:int;
var _local3:Particle;
_local2 = 0;
while (_local2 < _emitters.length) {
if (_emitters[_local2] == _arg1){
_emitters.splice(_local2, 1);
_arg1.removeEventListener(EmitterEvent.EMITTER_UPDATED, emitterUpdated);
_arg1.removeEventListener(ParticleEvent.PARTICLE_CREATED, particleAdded);
_arg1.removeEventListener(ParticleEvent.PARTICLE_ADDED, particleAdded);
_arg1.removeEventListener(ParticleEvent.PARTICLE_DEAD, particleRemoved);
for each (_local3 in _arg1.particles) {
removeParticle(_local3);
};
if (_emitters.length == 0){
removeEventListener(Event.RENDER, updateParticles);
renderParticles([]);
} else {
stage.invalidate();
};
return;
};
_local2++;
};
}
private function emitterUpdated(_arg1:EmitterEvent):void{
if (stage){
stage.invalidate();
};
}
public function addEmitter(_arg1:Emitter):void{
var _local2:Particle;
_emitters.push(_arg1);
if (stage){
stage.invalidate();
};
_arg1.addEventListener(EmitterEvent.EMITTER_UPDATED, emitterUpdated, false, 0, true);
_arg1.addEventListener(ParticleEvent.PARTICLE_CREATED, particleAdded, false, 0, true);
_arg1.addEventListener(ParticleEvent.PARTICLE_ADDED, particleAdded, false, 0, true);
_arg1.addEventListener(ParticleEvent.PARTICLE_DEAD, particleRemoved, false, 0, true);
for each (_local2 in _arg1.particles) {
addParticle(_local2);
};
if (_emitters.length == 1){
addEventListener(Event.RENDER, updateParticles, false, 0, true);
};
}
protected function renderParticles(_arg1:Array):void{
}
public function get emitters():Array{
return (_emitters);
}
private function updateParticles(_arg1:Event):void{
var _local2:Array;
var _local3:int;
_local2 = new Array();
_local3 = 0;
while (_local3 < _emitters.length) {
_local2 = _local2.concat(_emitters[_local3].particles);
_local3++;
};
renderParticles(_local2);
}
private function particleRemoved(_arg1:ParticleEvent):void{
removeParticle(_arg1.particle);
if (stage){
stage.invalidate();
};
}
}
}//package org.flintparticles.common.renderers
Section 36
//construct (org.flintparticles.common.utils.construct)
package org.flintparticles.common.utils {
public function construct(_arg1:Class, _arg2:Array){
switch (_arg2.length){
case 0:
return (new (_arg1));
case 1:
return (new _arg1(_arg2[0]));
case 2:
return (new _arg1(_arg2[0], _arg2[1]));
case 3:
return (new _arg1(_arg2[0], _arg2[1], _arg2[2]));
case 4:
return (new _arg1(_arg2[0], _arg2[1], _arg2[2], _arg2[3]));
case 5:
return (new _arg1(_arg2[0], _arg2[1], _arg2[2], _arg2[3], _arg2[4]));
case 6:
return (new _arg1(_arg2[0], _arg2[1], _arg2[2], _arg2[3], _arg2[4], _arg2[5]));
case 7:
return (new _arg1(_arg2[0], _arg2[1], _arg2[2], _arg2[3], _arg2[4], _arg2[5], _arg2[6]));
case 8:
return (new _arg1(_arg2[0], _arg2[1], _arg2[2], _arg2[3], _arg2[4], _arg2[5], _arg2[6], _arg2[7]));
case 9:
return (new _arg1(_arg2[0], _arg2[1], _arg2[2], _arg2[3], _arg2[4], _arg2[5], _arg2[6], _arg2[7], _arg2[8]));
case 10:
return (new _arg1(_arg2[0], _arg2[1], _arg2[2], _arg2[3], _arg2[4], _arg2[5], _arg2[6], _arg2[7], _arg2[8], _arg2[9]));
default:
return (null);
};
}
}//package org.flintparticles.common.utils
Section 37
//DisplayObjectUtils (org.flintparticles.common.utils.DisplayObjectUtils)
package org.flintparticles.common.utils {
import flash.display.*;
public class DisplayObjectUtils {
public static function globalToLocalRotation(_arg1:DisplayObject, _arg2:Number):Number{
var _local3:Number;
var _local4:DisplayObject;
_local3 = (_arg2 - _arg1.rotation);
_local4 = _arg1.parent;
while (((_local4) && (!((_local4 == _arg1.stage))))) {
_local3 = (_local3 - _local4.rotation);
_local4 = _local4.parent;
};
return (_local3);
}
public static function localToGlobalRotation(_arg1:DisplayObject, _arg2:Number):Number{
var _local3:Number;
var _local4:DisplayObject;
_local3 = (_arg2 + _arg1.rotation);
_local4 = _arg1.parent;
while (((_local4) && (!((_local4 == _arg1.stage))))) {
_local3 = (_local3 + _local4.rotation);
_local4 = _local4.parent;
};
return (_local3);
}
}
}//package org.flintparticles.common.utils
Section 38
//FrameUpdater (org.flintparticles.common.utils.FrameUpdater)
package org.flintparticles.common.utils {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import org.flintparticles.common.events.*;
public class FrameUpdater extends EventDispatcher {
private var _shape:Shape;
private var _time:Number;
private static var _instance:FrameUpdater;
public function FrameUpdater(){
_shape = new Shape();
_shape.addEventListener(Event.ENTER_FRAME, frameUpdate, false, 0, true);
_time = getTimer();
}
private function frameUpdate(_arg1:Event):void{
var _local2:int;
var _local3:Number;
_local2 = _time;
_time = getTimer();
_local3 = ((_time - _local2) * 0.001);
dispatchEvent(new UpdateEvent(UpdateEvent.UPDATE, _local3));
}
public static function get instance():FrameUpdater{
if (_instance == null){
_instance = new (FrameUpdater);
};
return (_instance);
}
}
}//package org.flintparticles.common.utils
Section 39
//interpolateColors (org.flintparticles.common.utils.interpolateColors)
package org.flintparticles.common.utils {
public function interpolateColors(_arg1:uint, _arg2:uint, _arg3:Number):uint{
var _local4:Number;
var _local5:uint;
var _local6:uint;
var _local7:uint;
var _local8:uint;
_local4 = (1 - _arg3);
_local5 = Math.round(((((_arg1 >>> 16) & 0xFF) * _arg3) + (((_arg2 >>> 16) & 0xFF) * _local4)));
_local6 = Math.round(((((_arg1 >>> 8) & 0xFF) * _arg3) + (((_arg2 >>> 8) & 0xFF) * _local4)));
_local7 = Math.round((((_arg1 & 0xFF) * _arg3) + ((_arg2 & 0xFF) * _local4)));
_local8 = Math.round(((((_arg1 >>> 24) & 0xFF) * _arg3) + (((_arg2 >>> 24) & 0xFF) * _local4)));
return (((((_local8 << 24) | (_local5 << 16)) | (_local6 << 8)) | _local7));
}
}//package org.flintparticles.common.utils
Section 40
//Maths (org.flintparticles.common.utils.Maths)
package org.flintparticles.common.utils {
public class Maths {
private static const DEGTORAD:Number = 0.0174532925199433;
private static const RADTODEG:Number = 57.2957795130823;
public static function asRadians(_arg1:Number):Number{
return ((_arg1 * DEGTORAD));
}
public static function asDegrees(_arg1:Number):Number{
return ((_arg1 * RADTODEG));
}
}
}//package org.flintparticles.common.utils
Section 41
//PriorityArray (org.flintparticles.common.utils.PriorityArray)
package org.flintparticles.common.utils {
import flash.utils.*;
public class PriorityArray extends Proxy {
private var _values:Array;
public function PriorityArray(){
_values = new Array();
}
public function remove(_arg1):Boolean{
var _local2:uint;
_local2 = _values.length;
while (_local2--) {
if (_values[_local2].value == _arg1){
_values.splice(_local2, 1);
return (true);
};
};
return (false);
}
override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextName(_arg1:int):String{
return ((_arg1 - 1).toString());
}
public function removeAt(_arg1:uint){
var _local2:*;
_local2 = _values[_arg1].value;
_values.splice(_arg1, 1);
return (_local2);
}
override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function getProperty(_arg1){
var _local2:int;
_local2 = int(_arg1);
if ((((((_local2 == _arg1)) && ((_local2 < _values.length)))) && (_values[_local2]))){
return (_values[_local2].value);
};
return (undefined);
}
public function clear():void{
_values.length = 0;
}
public function add(_arg1, _arg2:Number):uint{
var _local3:uint;
var _local4:uint;
_local3 = _values.length;
_local4 = 0;
while (_local4 < _local3) {
if (_values[_local4].priority < _arg2){
break;
};
_local4++;
};
_values.splice(_local4, 0, new Pair(_arg2, _arg1));
return (_values.length);
}
override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextNameIndex(_arg1:int):int{
if (_arg1 < _values.length){
return ((_arg1 + 1));
};
return (0);
}
public function get length():uint{
return (_values.length);
}
override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function setProperty(_arg1, _arg2):void{
var _local3:uint;
_local3 = uint(_arg1);
if ((((_local3 == _arg1)) && ((_local3 < _values.length)))){
_values[_local3].value = _arg2;
};
}
override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextValue(_arg1:int){
return (_values[(_arg1 - 1)]);
}
public function contains(_arg1):Boolean{
var _local2:uint;
_local2 = _values.length;
while (_local2--) {
if (_values[_local2].value == _arg1){
return (true);
};
};
return (false);
}
}
}//package org.flintparticles.common.utils
class Pair {
private var value;
private var priority:Number;
private function Pair(_arg1:Number, _arg2){
this.priority = _arg1;
this.value = _arg2;
}
}
Section 42
//Accelerate (org.flintparticles.twoD.actions.Accelerate)
package org.flintparticles.twoD.actions {
import org.flintparticles.common.particles.*;
import org.flintparticles.twoD.particles.*;
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.actions.*;
public class Accelerate extends ActionBase {
private var _x:Number;
private var _y:Number;
public function Accelerate(_arg1:Number, _arg2:Number){
_x = _arg1;
_y = _arg2;
}
public function get y():Number{
return (_y);
}
override public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{
var _local4:Particle2D;
_local4 = Particle2D(_arg2);
Particle2D(_arg2).velX = (_local4.velX + (_x * _arg3));
_local4.velY = (_local4.velY + (_y * _arg3));
}
public function set y(_arg1:Number):void{
_y = _arg1;
}
public function set x(_arg1:Number):void{
_x = _arg1;
}
public function get x():Number{
return (_x);
}
}
}//package org.flintparticles.twoD.actions
Section 43
//DeathZone (org.flintparticles.twoD.actions.DeathZone)
package org.flintparticles.twoD.actions {
import org.flintparticles.common.particles.*;
import org.flintparticles.twoD.particles.*;
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.actions.*;
import org.flintparticles.twoD.zones.*;
public class DeathZone extends ActionBase {
private var inside:Boolean;
private var _invertZone:Boolean;
private var _zone:Zone2D;
private var p:Particle2D;
public function DeathZone(_arg1:Zone2D, _arg2:Boolean=false){
_zone = _arg1;
_invertZone = _arg2;
}
public function set zoneIsSafe(_arg1:Boolean):void{
_invertZone = _arg1;
}
override public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{
p = Particle2D(_arg2);
inside = _zone.contains(p.x, p.y);
if (_invertZone){
if (!inside){
p.isDead = true;
};
} else {
if (inside){
p.isDead = true;
};
};
}
public function get zoneIsSafe():Boolean{
return (_invertZone);
}
public function get zone():Zone2D{
return (_zone);
}
override public function getDefaultPriority():Number{
return (-20);
}
public function set zone(_arg1:Zone2D):void{
_zone = _arg1;
}
}
}//package org.flintparticles.twoD.actions
Section 44
//Move (org.flintparticles.twoD.actions.Move)
package org.flintparticles.twoD.actions {
import org.flintparticles.common.particles.*;
import org.flintparticles.twoD.particles.*;
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.actions.*;
public class Move extends ActionBase {
private var p:Particle2D;
override public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{
p = Particle2D(_arg2);
p.x = (p.x + (p.velX * _arg3));
p.y = (p.y + (p.velY * _arg3));
}
override public function getDefaultPriority():Number{
return (-10);
}
}
}//package org.flintparticles.twoD.actions
Section 45
//RandomDrift (org.flintparticles.twoD.actions.RandomDrift)
package org.flintparticles.twoD.actions {
import org.flintparticles.common.particles.*;
import org.flintparticles.twoD.particles.*;
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.actions.*;
public class RandomDrift extends ActionBase {
private var _sizeX:Number;
private var _sizeY:Number;
public function RandomDrift(_arg1:Number, _arg2:Number){
_sizeX = (_arg1 * 2);
_sizeY = (_arg2 * 2);
}
public function set driftY(_arg1:Number):void{
_sizeY = (_arg1 * 2);
}
public function set driftX(_arg1:Number):void{
_sizeX = (_arg1 * 2);
}
override public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{
var _local4:Particle2D;
_local4 = Particle2D(_arg2);
Particle2D(_arg2).velX = (_local4.velX + (((Math.random() - 0.5) * _sizeX) * _arg3));
_local4.velY = (_local4.velY + (((Math.random() - 0.5) * _sizeY) * _arg3));
}
public function get driftX():Number{
return ((_sizeX / 2));
}
public function get driftY():Number{
return ((_sizeY / 2));
}
}
}//package org.flintparticles.twoD.actions
Section 46
//Emitter2D (org.flintparticles.twoD.emitters.Emitter2D)
package org.flintparticles.twoD.emitters {
import org.flintparticles.common.particles.*;
import org.flintparticles.twoD.particles.*;
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.utils.*;
public class Emitter2D extends Emitter {
protected var _y:Number;// = 0
protected var _x:Number;// = 0
public var spaceSort:Boolean;// = false
public var spaceSortedX:Array;
protected var _rotation:Number;// = 0
protected static var _creator:ParticleCreator2D = new ParticleCreator2D();
public function Emitter2D(){
_x = 0;
_y = 0;
_rotation = 0;
spaceSort = false;
super();
_particleFactory = _creator;
}
public function set rotation(_arg1:Number):void{
_rotation = Maths.asRadians(_arg1);
}
public function get y():Number{
return (_y);
}
public function set y(_arg1:Number):void{
_y = _arg1;
}
override protected function sortParticles():void{
var _local1:int;
var _local2:int;
if (spaceSort){
spaceSortedX = _particles.sortOn("x", (Array.NUMERIC | Array.RETURNINDEXEDARRAY));
_local1 = _particles.length;
_local2 = 0;
while (_local2 < _local1) {
_particles[spaceSortedX[_local2]].sortID = _local2;
_local2++;
};
};
}
override protected function initParticle(_arg1:Particle):void{
var _local2:Particle2D;
_local2 = Particle2D(_arg1);
_local2.x = _x;
_local2.y = _y;
_local2.rotation = _rotation;
}
public function set rotRadians(_arg1:Number):void{
_rotation = _arg1;
}
public function get rotRadians():Number{
return (_rotation);
}
public function set x(_arg1:Number):void{
_x = _arg1;
}
public function get rotation():Number{
return (Maths.asDegrees(_rotation));
}
public function get x():Number{
return (_x);
}
public static function get defaultParticleFactory():ParticleFactory{
return (_creator);
}
}
}//package org.flintparticles.twoD.emitters
Section 47
//Position (org.flintparticles.twoD.initializers.Position)
package org.flintparticles.twoD.initializers {
import org.flintparticles.common.particles.*;
import org.flintparticles.twoD.particles.*;
import flash.geom.*;
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.initializers.*;
import org.flintparticles.twoD.zones.*;
public class Position extends InitializerBase {
private var _zone:Zone2D;
public function Position(_arg1:Zone2D){
_zone = _arg1;
}
public function get zone():Zone2D{
return (_zone);
}
override public function initialize(_arg1:Emitter, _arg2:Particle):void{
var _local3:Particle2D;
var _local4:Point;
var _local5:Number;
var _local6:Number;
_local3 = Particle2D(_arg2);
_local4 = _zone.getLocation();
if (_local3.rotation == 0){
_local3.x = (_local3.x + _local4.x);
_local3.y = (_local3.y + _local4.y);
} else {
_local5 = Math.sin(_local3.rotation);
_local6 = Math.cos(_local3.rotation);
_local3.x = (_local3.x + ((_local6 * _local4.x) - (_local5 * _local4.y)));
_local3.y = (_local3.y + ((_local6 * _local4.y) + (_local5 * _local4.x)));
};
}
public function set zone(_arg1:Zone2D):void{
_zone = _arg1;
}
}
}//package org.flintparticles.twoD.initializers
Section 48
//Velocity (org.flintparticles.twoD.initializers.Velocity)
package org.flintparticles.twoD.initializers {
import org.flintparticles.common.particles.*;
import org.flintparticles.twoD.particles.*;
import flash.geom.*;
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.initializers.*;
import org.flintparticles.twoD.zones.*;
public class Velocity extends InitializerBase {
private var _zone:Zone2D;
public function Velocity(_arg1:Zone2D){
_zone = _arg1;
}
public function get zone():Zone2D{
return (_zone);
}
override public function initialize(_arg1:Emitter, _arg2:Particle):void{
var _local3:Particle2D;
var _local4:Point;
var _local5:Number;
var _local6:Number;
_local3 = Particle2D(_arg2);
_local4 = _zone.getLocation();
if (_local3.rotation == 0){
_local3.velX = _local4.x;
_local3.velY = _local4.y;
} else {
_local5 = Math.sin(_local3.rotation);
_local6 = Math.cos(_local3.rotation);
_local3.velX = ((_local6 * _local4.x) - (_local5 * _local4.y));
_local3.velY = ((_local6 * _local4.y) + (_local5 * _local4.x));
};
}
public function set zone(_arg1:Zone2D):void{
_zone = _arg1;
}
}
}//package org.flintparticles.twoD.initializers
Section 49
//Particle2D (org.flintparticles.twoD.particles.Particle2D)
package org.flintparticles.twoD.particles {
import org.flintparticles.common.particles.*;
import flash.geom.*;
public class Particle2D extends Particle {
public var sortID:uint;// = 0
public var rotation:Number;// = 0
private var _previousRadius:Number;
public var velX:Number;// = 0
public var angVelocity:Number;// = 0
private var _previousMass:Number;
public var velY:Number;// = 0
public var x:Number;// = 0
public var y:Number;// = 0
private var _inertia:Number;
public function Particle2D(){
x = 0;
y = 0;
velX = 0;
velY = 0;
rotation = 0;
angVelocity = 0;
sortID = 0;
super();
}
public function get matrixTransform():Matrix{
var _local1:Number;
var _local2:Number;
_local1 = (scale * Math.cos(rotation));
_local2 = (scale * Math.sin(rotation));
return (new Matrix(_local1, _local2, -(_local2), _local1, x, y));
}
override public function initialize():void{
super.initialize();
x = 0;
y = 0;
velX = 0;
velY = 0;
rotation = 0;
angVelocity = 0;
sortID = 0;
}
public function get inertia():Number{
if (((!((mass == _previousMass))) || (!((collisionRadius == _previousRadius))))){
_inertia = (((mass * collisionRadius) * collisionRadius) * 0.5);
_previousMass = mass;
_previousRadius = collisionRadius;
};
return (_inertia);
}
}
}//package org.flintparticles.twoD.particles
Section 50
//Particle2DUtils (org.flintparticles.twoD.particles.Particle2DUtils)
package org.flintparticles.twoD.particles {
import flash.display.*;
import org.flintparticles.common.particles.*;
import flash.geom.*;
import org.flintparticles.common.utils.*;
public class Particle2DUtils {
public static function createParticle2DFromDisplayObject(_arg1:DisplayObject, _arg2:DisplayObject=null, _arg3:ParticleFactory=null):Particle2D{
var _local4:Particle2D;
var _local5:Point;
var _local6:Number;
if (_arg3){
_local4 = Particle2D(_arg3.createParticle());
} else {
_local4 = new Particle2D();
};
if (((_arg1.parent) && (_arg2))){
_local5 = _arg2.globalToLocal(_arg1.localToGlobal(new Point(0, 0)));
_local4.x = _local5.x;
_local4.y = _local5.y;
_local6 = DisplayObjectUtils.globalToLocalRotation(_arg2, DisplayObjectUtils.localToGlobalRotation(_arg1, 0));
_local4.rotation = Maths.asRadians(_local6);
_arg1.parent.removeChild(_arg1);
} else {
_local4.x = _arg1.x;
_local4.y = _arg1.y;
_local4.rotation = Maths.asRadians(_arg1.rotation);
};
_local4.image = _arg1;
return (_local4);
}
public static function createRectangleParticlesFromBitmapData(_arg1:BitmapData, _arg2:uint, _arg3:ParticleFactory=null, _arg4:Number=0, _arg5:Number=0):Array{
var _local6:Array;
var _local7:int;
var _local8:int;
var _local9:int;
var _local10:int;
var _local11:Number;
var _local12:Particle2D;
var _local13:BitmapData;
var _local14:Bitmap;
var _local15:Sprite;
var _local16:Point;
_local6 = new Array();
_local7 = _arg1.width;
_local8 = _arg1.height;
_local11 = (_arg2 * 0.5);
_arg4 = (_arg4 + _local11);
_arg5 = (_arg5 + _local11);
_local16 = new Point(0, 0);
if (_arg3){
_local9 = 0;
while (_local9 < _local8) {
_local10 = 0;
while (_local10 < _local7) {
_local12 = Particle2D(_arg3.createParticle());
_local12.x = (_local10 + _arg4);
_local12.y = (_local9 + _arg5);
_local13 = new BitmapData(_arg2, _arg2, true, 0);
if ((_local9 + _arg2) < _local7){
_local13.copyPixels(_arg1, new Rectangle(_local10, _local9, _arg2, _arg2), _local16);
};
_local14 = new Bitmap(_local13);
_local14.x = -(_local11);
_local14.y = -(_local11);
_local15 = new Sprite();
_local15.addChild(_local14);
_local12.image = _local14;
_local6.push(_local12);
_local10 = (_local10 + _arg2);
};
_local9 = (_local9 + _arg2);
};
} else {
_local9 = 0;
while (_local9 < _local8) {
_local10 = 0;
while (_local10 < _local7) {
_local12 = new Particle2D();
_local12.x = (_local10 + _arg4);
_local12.y = (_local9 + _arg5);
_local13 = new BitmapData(_arg2, _arg2, true, 0);
_local13.copyPixels(_arg1, new Rectangle(_local10, _local9, _arg2, _arg2), _local16);
_local14 = new Bitmap(_local13);
_local14.x = -(_local11);
_local14.y = -(_local11);
_local15 = new Sprite();
_local15.addChild(_local14);
_local12.image = _local14;
_local6.push(_local12);
_local10++;
};
_local9++;
};
};
return (_local6);
}
public static function createPixelParticlesFromBitmapData(_arg1:BitmapData, _arg2:ParticleFactory=null, _arg3:Number=0, _arg4:Number=0):Array{
var _local5:Array;
var _local6:int;
var _local7:int;
var _local8:int;
var _local9:int;
var _local10:Particle2D;
_local5 = new Array();
_local6 = _arg1.width;
_local7 = _arg1.height;
if (_arg2){
_local8 = 0;
while (_local8 < _local7) {
_local9 = 0;
while (_local9 < _local6) {
_local10 = Particle2D(_arg2.createParticle());
_local10.x = (_local9 + _arg3);
_local10.y = (_local8 + _arg4);
_local10.color = _arg1.getPixel32(_local9, _local8);
_local5.push(_local10);
_local9++;
};
_local8++;
};
} else {
_local8 = 0;
while (_local8 < _local7) {
_local9 = 0;
while (_local9 < _local6) {
_local10 = new Particle2D();
_local10.x = (_local9 + _arg3);
_local10.y = (_local8 + _arg4);
_local10.color = _arg1.getPixel32(_local9, _local8);
_local5.push(_local10);
_local9++;
};
_local8++;
};
};
return (_local5);
}
public static function createParticles2DFromDisplayObjects(_arg1:Array, _arg2:DisplayObject=null, _arg3:ParticleFactory=null):Array{
var _local4:Array;
var _local5:Number;
_local4 = new Array();
_local5 = 0;
while (_local5 < _arg1.length) {
_local4.push(createParticle2DFromDisplayObject(_arg1[_local5], _arg2, _arg3));
_local5++;
};
return (_local4);
}
}
}//package org.flintparticles.twoD.particles
Section 51
//ParticleCreator2D (org.flintparticles.twoD.particles.ParticleCreator2D)
package org.flintparticles.twoD.particles {
import org.flintparticles.common.particles.*;
public class ParticleCreator2D implements ParticleFactory {
private var _particles:Array;
public function ParticleCreator2D(){
_particles = new Array();
}
public function clearAllParticles():void{
_particles = new Array();
}
public function createParticle():Particle{
if (_particles.length){
return (_particles.pop());
};
return (new Particle2D());
}
public function disposeParticle(_arg1:Particle):void{
if ((_arg1 is Particle2D)){
_arg1.initialize();
_particles.push(_arg1);
};
}
}
}//package org.flintparticles.twoD.particles
Section 52
//BitmapRenderer (org.flintparticles.twoD.renderers.BitmapRenderer)
package org.flintparticles.twoD.renderers {
import flash.display.*;
import org.flintparticles.twoD.particles.*;
import flash.geom.*;
import flash.filters.*;
import org.flintparticles.common.renderers.*;
public class BitmapRenderer extends SpriteRendererBase {
protected var _smoothing:Boolean;
protected var _bitmapData:BitmapData;
protected var _colorMap:Array;
protected var _bitmap:Bitmap;
protected var _postFilters:Array;
protected var _preFilters:Array;
protected var _canvas:Rectangle;
protected static var ZERO_POINT:Point = new Point(0, 0);
public function BitmapRenderer(_arg1:Rectangle, _arg2:Boolean=false){
mouseEnabled = false;
mouseChildren = false;
_smoothing = _arg2;
_preFilters = new Array();
_postFilters = new Array();
_canvas = _arg1;
createBitmap();
}
public function setPaletteMap(_arg1:Array=null, _arg2:Array=null, _arg3:Array=null, _arg4:Array=null):void{
_colorMap = new Array(4);
_colorMap[0] = _arg4;
_colorMap[1] = _arg1;
_colorMap[2] = _arg2;
_colorMap[3] = _arg3;
}
public function clearPaletteMap():void{
_colorMap = null;
}
public function removeFilter(_arg1:BitmapFilter):void{
var _local2:int;
_local2 = 0;
while (_local2 < _preFilters.length) {
if (_preFilters[_local2] == _arg1){
_preFilters.splice(_local2, 1);
return;
};
_local2++;
};
_local2 = 0;
while (_local2 < _postFilters.length) {
if (_postFilters[_local2] == _arg1){
_postFilters.splice(_local2, 1);
return;
};
_local2++;
};
}
protected function createBitmap():void{
if (!_canvas){
return;
};
if (((_bitmap) && (_bitmapData))){
_bitmapData.dispose();
_bitmapData = null;
};
if (_bitmap){
removeChild(_bitmap);
};
_bitmap = new Bitmap(null, "auto", _smoothing);
_bitmapData = new BitmapData(_canvas.width, _canvas.height, true, 0);
_bitmap.bitmapData = _bitmapData;
addChild(_bitmap);
_bitmap.x = _canvas.x;
_bitmap.y = _canvas.y;
}
public function get canvas():Rectangle{
return (_canvas);
}
public function addFilter(_arg1:BitmapFilter, _arg2:Boolean=false):void{
if (_arg2){
_postFilters.push(_arg1);
} else {
_preFilters.push(_arg1);
};
}
override protected function renderParticles(_arg1:Array):void{
var _local2:int;
var _local3:int;
if (!_bitmap){
return;
};
_bitmapData.lock();
_local3 = _preFilters.length;
_local2 = 0;
while (_local2 < _local3) {
_bitmapData.applyFilter(_bitmapData, _bitmapData.rect, BitmapRenderer.ZERO_POINT, _preFilters[_local2]);
_local2++;
};
if ((((_local3 == 0)) && ((_postFilters.length == 0)))){
_bitmapData.fillRect(_bitmap.bitmapData.rect, 0);
};
_local3 = _arg1.length;
if (_local3){
_local2 = _local3;
while (_local2--) {
drawParticle(_arg1[_local2]);
};
};
_local3 = _postFilters.length;
_local2 = 0;
while (_local2 < _local3) {
_bitmapData.applyFilter(_bitmapData, _bitmapData.rect, BitmapRenderer.ZERO_POINT, _postFilters[_local2]);
_local2++;
};
if (_colorMap){
_bitmapData.paletteMap(_bitmapData, _bitmapData.rect, ZERO_POINT, _colorMap[1], _colorMap[2], _colorMap[3], _colorMap[0]);
};
_bitmapData.unlock();
}
public function set canvas(_arg1:Rectangle):void{
_canvas = _arg1;
createBitmap();
}
protected function drawParticle(_arg1:Particle2D):void{
var _local2:Matrix;
_local2 = _arg1.matrixTransform;
_local2.translate(-(_canvas.x), -(_canvas.y));
_bitmapData.draw(_arg1.image, _local2, _arg1.colorTransform, DisplayObject(_arg1.image).blendMode, null, _smoothing);
}
}
}//package org.flintparticles.twoD.renderers
Section 53
//DisplayObjectRenderer (org.flintparticles.twoD.renderers.DisplayObjectRenderer)
package org.flintparticles.twoD.renderers {
import flash.display.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.twoD.particles.*;
import org.flintparticles.common.renderers.*;
public class DisplayObjectRenderer extends SpriteRendererBase {
override protected function removeParticle(_arg1:Particle):void{
removeChild(_arg1.image);
}
override protected function addParticle(_arg1:Particle):void{
addChildAt(_arg1.image, 0);
}
override protected function renderParticles(_arg1:Array):void{
var _local2:Particle2D;
var _local3:DisplayObject;
var _local4:int;
var _local5:int;
_local4 = _arg1.length;
_local5 = 0;
while (_local5 < _local4) {
_local2 = _arg1[_local5];
_local3 = _local2.image;
_local3.transform.colorTransform = _local2.colorTransform;
_local3.transform.matrix = _local2.matrixTransform;
_local5++;
};
}
}
}//package org.flintparticles.twoD.renderers
Section 54
//DiscSectorZone (org.flintparticles.twoD.zones.DiscSectorZone)
package org.flintparticles.twoD.zones {
import flash.geom.*;
public class DiscSectorZone implements Zone2D {
private var _minAngle:Number;
private var _innerRadius:Number;
private var _minAllowed:Number;
private var _innerSq:Number;
private var _outerRadius:Number;
private var _center:Point;
private var _maxAngle:Number;
private var _outerSq:Number;
private static var TWOPI:Number = 6.28318530717959;
public function DiscSectorZone(_arg1:Point, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number){
if (_arg2 < _arg3){
throw (new Error((((("The outerRadius (" + _arg2) + ") can't be smaller than the innerRadius (") + _arg3) + ") in your DiscSectorZone. N.B. the outerRadius is the second argument in the constructor and the innerRadius is the third argument.")));
};
_center = _arg1;
_innerRadius = _arg3;
_outerRadius = _arg2;
_innerSq = (_innerRadius * _innerRadius);
_outerSq = (_outerRadius * _outerRadius);
_minAngle = _arg4;
_maxAngle = _arg5;
while (_maxAngle > TWOPI) {
_maxAngle = (_maxAngle - TWOPI);
};
while (_maxAngle < 0) {
_maxAngle = (_maxAngle + TWOPI);
};
_minAllowed = (_maxAngle - TWOPI);
if (_arg4 == _arg5){
_minAngle = _maxAngle;
} else {
_minAngle = clamp(_minAngle);
};
}
public function set minAngle(_arg1:Number):void{
_minAngle = clamp(_arg1);
}
public function get innerRadius():Number{
return (_innerRadius);
}
public function getArea():Number{
return (((Math.PI * _outerSq) - (Math.PI * _innerSq)));
}
public function set innerRadius(_arg1:Number):void{
_innerRadius = _arg1;
_innerSq = (_innerRadius * _innerRadius);
}
public function get maxAngle():Number{
return (_maxAngle);
}
public function set outerRadius(_arg1:Number):void{
_outerRadius = _arg1;
_outerSq = (_outerRadius * _outerRadius);
}
public function set maxAngle(_arg1:Number):void{
_maxAngle = _arg1;
while (_maxAngle > TWOPI) {
_maxAngle = (_maxAngle - TWOPI);
};
while (_maxAngle < 0) {
_maxAngle = (_maxAngle + TWOPI);
};
_minAllowed = (_maxAngle - TWOPI);
}
public function contains(_arg1:Number, _arg2:Number):Boolean{
var _local3:Number;
var _local4:Number;
_arg1 = (_arg1 - _center.x);
_arg2 = (_arg2 - _center.y);
_local3 = ((_arg1 * _arg1) + (_arg2 * _arg2));
if ((((_local3 > _outerSq)) || ((_local3 < _innerSq)))){
return (false);
};
_local4 = Math.atan2(_arg2, _arg1);
_local4 = clamp(_local4);
return ((_local4 >= _minAngle));
}
public function get minAngle():Number{
return (_minAngle);
}
public function get center():Point{
return (_center);
}
public function getLocation():Point{
var _local1:Number;
var _local2:Point;
_local1 = Math.random();
_local2 = Point.polar((_innerRadius + ((1 - (_local1 * _local1)) * (_outerRadius - _innerRadius))), (_minAngle + (Math.random() * (_maxAngle - _minAngle))));
_local2.x = (_local2.x + _center.x);
_local2.y = (_local2.y + _center.y);
return (_local2);
}
public function set center(_arg1:Point):void{
_center = _arg1;
}
private function clamp(_arg1:Number):Number{
while (_arg1 > _maxAngle) {
_arg1 = (_arg1 - TWOPI);
};
while (_arg1 < _minAllowed) {
_arg1 = (_arg1 + TWOPI);
};
return (_arg1);
}
public function get outerRadius():Number{
return (_outerRadius);
}
}
}//package org.flintparticles.twoD.zones
Section 55
//DiscZone (org.flintparticles.twoD.zones.DiscZone)
package org.flintparticles.twoD.zones {
import flash.geom.*;
public class DiscZone implements Zone2D {
private var _innerRadius:Number;
private var _innerSq:Number;
private var _outerRadius:Number;
private var _center:Point;
private var _outerSq:Number;
private static const TWOPI:Number = 6.28318530717959;
public function DiscZone(_arg1:Point, _arg2:Number, _arg3:Number=0){
if (_arg2 < _arg3){
throw (new Error((((("The outerRadius (" + _arg2) + ") can't be smaller than the innerRadius (") + _arg3) + ") in your DiscZone. N.B. the outerRadius is the second argument in the constructor and the innerRadius is the third argument.")));
};
_center = _arg1;
_innerRadius = _arg3;
_outerRadius = _arg2;
_innerSq = (_innerRadius * _innerRadius);
_outerSq = (_outerRadius * _outerRadius);
}
public function getArea():Number{
return ((Math.PI * (_outerSq - _innerSq)));
}
public function get innerRadius():Number{
return (_innerRadius);
}
public function set innerRadius(_arg1:Number):void{
_innerRadius = _arg1;
_innerSq = (_innerRadius * _innerRadius);
}
public function get center():Point{
return (_center);
}
public function set outerRadius(_arg1:Number):void{
_outerRadius = _arg1;
_outerSq = (_outerRadius * _outerRadius);
}
public function contains(_arg1:Number, _arg2:Number):Boolean{
var _local3:Number;
_arg1 = (_arg1 - _center.x);
_arg2 = (_arg2 - _center.y);
_local3 = ((_arg1 * _arg1) + (_arg2 * _arg2));
return ((((_local3 <= _outerSq)) && ((_local3 >= _innerSq))));
}
public function get outerRadius():Number{
return (_outerRadius);
}
public function set center(_arg1:Point):void{
_center = _arg1;
}
public function getLocation():Point{
var _local1:Number;
var _local2:Point;
_local1 = Math.random();
_local2 = Point.polar((_innerRadius + ((1 - (_local1 * _local1)) * (_outerRadius - _innerRadius))), (Math.random() * TWOPI));
_local2.x = (_local2.x + _center.x);
_local2.y = (_local2.y + _center.y);
return (_local2);
}
}
}//package org.flintparticles.twoD.zones
Section 56
//LineZone (org.flintparticles.twoD.zones.LineZone)
package org.flintparticles.twoD.zones {
import flash.geom.*;
public class LineZone implements Zone2D {
private var _point1:Point;
private var _length:Point;
private var _point2:Point;
public function LineZone(_arg1:Point, _arg2:Point){
_point1 = _arg1;
_point2 = _arg2;
_length = _arg2.subtract(_arg1);
}
public function getArea():Number{
return (_length.length);
}
public function set point2(_arg1:Point):void{
_point2 = _arg1;
_length = point2.subtract(point1);
}
public function set point1(_arg1:Point):void{
_point1 = _arg1;
_length = point2.subtract(point1);
}
public function getLocation():Point{
var _local1:Point;
var _local2:Number;
_local1 = _point1.clone();
_local2 = Math.random();
_local1.x = (_local1.x + (_length.x * _local2));
_local1.y = (_local1.y + (_length.y * _local2));
return (_local1);
}
public function get point1():Point{
return (_point1);
}
public function get point2():Point{
return (_point2);
}
public function contains(_arg1:Number, _arg2:Number):Boolean{
if ((((_arg1 - _point1.x) * _length.y) - ((_arg2 - _point1.y) * _length.x)) != 0){
return (false);
};
return (((((_arg1 - _point1.x) * (_arg1 - _point2.x)) + ((_arg2 - _point1.y) * (_arg2 - _point2.y))) <= 0));
}
}
}//package org.flintparticles.twoD.zones
Section 57
//PointZone (org.flintparticles.twoD.zones.PointZone)
package org.flintparticles.twoD.zones {
import flash.geom.*;
public class PointZone implements Zone2D {
private var _point:Point;
public function PointZone(_arg1:Point){
_point = _arg1;
}
public function set point(_arg1:Point):void{
_point = _arg1;
}
public function getArea():Number{
return (1);
}
public function get point():Point{
return (_point);
}
public function getLocation():Point{
return (_point.clone());
}
public function contains(_arg1:Number, _arg2:Number):Boolean{
return ((((_point.x == _arg1)) && ((_point.y == _arg2))));
}
}
}//package org.flintparticles.twoD.zones
Section 58
//RectangleZone (org.flintparticles.twoD.zones.RectangleZone)
package org.flintparticles.twoD.zones {
import flash.geom.*;
public class RectangleZone implements Zone2D {
private var _height:Number;
private var _bottom:Number;
private var _width:Number;
private var _right:Number;
private var _top:Number;
private var _left:Number;
public function RectangleZone(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number){
_left = _arg1;
_top = _arg2;
_right = _arg3;
_bottom = _arg4;
_width = (_arg3 - _arg1);
_height = (_arg4 - _arg2);
}
public function getArea():Number{
return ((_width * _height));
}
public function get top():Number{
return (_top);
}
public function set bottom(_arg1:Number):void{
_bottom = _arg1;
_height = (bottom - top);
}
public function get right():Number{
return (_right);
}
public function set left(_arg1:Number):void{
_left = _arg1;
_width = (right - left);
}
public function contains(_arg1:Number, _arg2:Number):Boolean{
return ((((((((_arg1 >= _left)) && ((_arg1 <= _right)))) && ((_arg2 >= _top)))) && ((_arg2 <= _bottom))));
}
public function get left():Number{
return (_left);
}
public function set top(_arg1:Number):void{
_top = _arg1;
_height = (bottom - top);
}
public function get bottom():Number{
return (_bottom);
}
public function getLocation():Point{
return (new Point((_left + (Math.random() * _width)), (_top + (Math.random() * _height))));
}
public function set right(_arg1:Number):void{
_right = _arg1;
_width = (right - left);
}
}
}//package org.flintparticles.twoD.zones
Section 59
//Zone2D (org.flintparticles.twoD.zones.Zone2D)
package org.flintparticles.twoD.zones {
import flash.geom.*;
public interface Zone2D {
function getArea():Number;
function getLocation():Point;
function contains(_arg1:Number, _arg2:Number):Boolean;
}
}//package org.flintparticles.twoD.zones
Section 60
//ammonia_mc (ammonia_mc)
package {
import flash.display.*;
public dynamic class ammonia_mc extends MovieClip {
}
}//package
Section 61
//ammoniaICON_mc (ammoniaICON_mc)
package {
import flash.display.*;
public dynamic class ammoniaICON_mc extends MovieClip {
}
}//package
Section 62
//arrowUP_mc (arrowUP_mc)
package {
import flash.display.*;
public dynamic class arrowUP_mc extends MovieClip {
}
}//package
Section 63
//attack_mc (attack_mc)
package {
import flash.display.*;
import flash.text.*;
public dynamic class attack_mc extends MovieClip {
public var timer_txt:TextField;
}
}//package
Section 64
//BACK_mc (BACK_mc)
package {
import flash.display.*;
public dynamic class BACK_mc extends MovieClip {
}
}//package
Section 65
//BATTLEMENU_mc (BATTLEMENU_mc)
package {
import flash.display.*;
public dynamic class BATTLEMENU_mc extends MovieClip {
public function BATTLEMENU_mc(){
addFrameScript(28, frame29);
}
function frame29(){
stop();
}
}
}//package
Section 66
//beginning_mc (beginning_mc)
package {
import flash.display.*;
public dynamic class beginning_mc extends MovieClip {
}
}//package
Section 67
//bird_mc (bird_mc)
package {
import flash.display.*;
public dynamic class bird_mc extends MovieClip {
}
}//package
Section 68
//bird1_mc (bird1_mc)
package {
import flash.display.*;
public dynamic class bird1_mc extends MovieClip {
}
}//package
Section 69
//bird2_mc (bird2_mc)
package {
import flash.display.*;
public dynamic class bird2_mc extends MovieClip {
}
}//package
Section 70
//bird3_mc (bird3_mc)
package {
import flash.display.*;
public dynamic class bird3_mc extends MovieClip {
}
}//package
Section 71
//birdICON_mc (birdICON_mc)
package {
import flash.display.*;
public dynamic class birdICON_mc extends MovieClip {
}
}//package
Section 72
//bubbly_mc (bubbly_mc)
package {
import flash.display.*;
public dynamic class bubbly_mc extends MovieClip {
}
}//package
Section 73
//centerpiece_mc (centerpiece_mc)
package {
import flash.display.*;
public dynamic class centerpiece_mc extends MovieClip {
}
}//package
Section 74
//click (click)
package {
import flash.media.*;
public dynamic class click extends Sound {
}
}//package
Section 75
//cloth_wav (cloth_wav)
package {
import flash.media.*;
public dynamic class cloth_wav extends Sound {
}
}//package
Section 76
//copperkeyICON_mc (copperkeyICON_mc)
package {
import flash.display.*;
public dynamic class copperkeyICON_mc extends MovieClip {
}
}//package
Section 77
//d_click_mc (d_click_mc)
package {
import flash.display.*;
public dynamic class d_click_mc extends MovieClip {
}
}//package
Section 78
//death1_mc (death1_mc)
package {
import flash.display.*;
public dynamic class death1_mc extends MovieClip {
}
}//package
Section 79
//die_wav (die_wav)
package {
import flash.media.*;
public dynamic class die_wav extends Sound {
}
}//package
Section 80
//door_knob_wav (door_knob_wav)
package {
import flash.media.*;
public dynamic class door_knob_wav extends Sound {
}
}//package
Section 81
//door_opening_wav (door_opening_wav)
package {
import flash.media.*;
public dynamic class door_opening_wav extends Sound {
}
}//package
Section 82
//door_wav (door_wav)
package {
import flash.media.*;
public dynamic class door_wav extends Sound {
}
}//package
Section 83
//Earthquake (Earthquake)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
public class Earthquake {
private static const FRAME_RATE:int = 25;
public static var timer:Timer;
private static var imageB:MovieClip;
private static var image:DisplayObject;
public static var _offsetX:int;
private static var originalX:int;
private static var originalY:int;
private static var buddies:Boolean = false;
public static var _offsetY:int;
private static var intensity:int;
private static var intensityOffset:int;
public static function temp():void{
}
private static function quake(_arg1:TimerEvent):void{
var _local2:int;
var _local3:int;
_local2 = ((originalX + (Math.random() * intensity)) - intensityOffset);
_local3 = ((originalY + (Math.random() * intensity)) - intensityOffset);
image.x = _local2;
image.y = _local3;
if (buddies){
imageB.x = ((_local2 - originalX) + imageB.originalX);
imageB.y = ((_local3 - originalY) + imageB.originalY);
};
}
public static function go(_arg1:MovieClip, _arg2:Number=10, _arg3:Number=1, ... _args):void{
var _local5:int;
var _local6:int;
if (timer){
timer.stop();
};
image = _arg1;
if (_args[0]){
imageB = _args[0];
buddies = true;
imageB.originalX = imageB.x;
imageB.originalY = imageB.y;
};
originalX = image.x;
originalY = image.y;
intensity = _arg2;
intensityOffset = (intensity / 2);
_local5 = int((1000 / FRAME_RATE));
_local6 = int(((_arg3 * 1000) / _local5));
timer = new Timer(_local5, _local6);
timer.addEventListener(TimerEvent.TIMER, quake);
timer.addEventListener(TimerEvent.TIMER_COMPLETE, resetImage);
timer.start();
}
private static function resetImage(_arg1:TimerEvent=null):void{
image.x = originalX;
image.y = originalY;
if (buddies){
imageB.x = imageB.originalX;
imageB.y = imageB.originalY;
};
cleanup();
}
private static function cleanup():void{
timer = null;
image = null;
}
}
}//package
Section 84
//Electric_mc (Electric_mc)
package {
import flash.media.*;
public dynamic class Electric_mc extends Sound {
}
}//package
Section 85
//enemy1_mc (enemy1_mc)
package {
import flash.display.*;
public dynamic class enemy1_mc extends BitmapData {
public function enemy1_mc(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 86
//exitdialogue_mc (exitdialogue_mc)
package {
import flash.display.*;
public dynamic class exitdialogue_mc extends SimpleButton {
}
}//package
Section 87
//fontin (fontin)
package {
import flash.text.*;
public dynamic class fontin extends Font {
}
}//package
Section 88
//hammer_mc (hammer_mc)
package {
import flash.display.*;
public dynamic class hammer_mc extends MovieClip {
}
}//package
Section 89
//hammer_plaster_wav (hammer_plaster_wav)
package {
import flash.media.*;
public dynamic class hammer_plaster_wav extends Sound {
}
}//package
Section 90
//hammer_wav (hammer_wav)
package {
import flash.media.*;
public dynamic class hammer_wav extends Sound {
}
}//package
Section 91
//hammer2_wav (hammer2_wav)
package {
import flash.media.*;
public dynamic class hammer2_wav extends Sound {
}
}//package
Section 92
//hammerICON_mc (hammerICON_mc)
package {
import flash.display.*;
public dynamic class hammerICON_mc extends MovieClip {
}
}//package
Section 93
//hide_mc (hide_mc)
package {
import flash.display.*;
import flash.text.*;
public dynamic class hide_mc extends MovieClip {
public var timer_txt:TextField;
}
}//package
Section 94
//HITBUTTON_mc (HITBUTTON_mc)
package {
import flash.display.*;
public dynamic class HITBUTTON_mc extends SimpleButton {
}
}//package
Section 95
//hitCOUNT_mc (hitCOUNT_mc)
package {
import flash.display.*;
import flash.text.*;
public dynamic class hitCOUNT_mc extends MovieClip {
public var timer_txt:TextField;
}
}//package
Section 96
//house1_mc (house1_mc)
package {
import flash.display.*;
public dynamic class house1_mc extends MovieClip {
}
}//package
Section 97
//house10_mc (house10_mc)
package {
import flash.display.*;
public dynamic class house10_mc extends MovieClip {
}
}//package
Section 98
//house13_mc (house13_mc)
package {
import flash.display.*;
public dynamic class house13_mc extends MovieClip {
}
}//package
Section 99
//house14_mc (house14_mc)
package {
import flash.display.*;
public dynamic class house14_mc extends MovieClip {
}
}//package
Section 100
//house15_mc (house15_mc)
package {
import flash.display.*;
public dynamic class house15_mc extends MovieClip {
}
}//package
Section 101
//house18_mc (house18_mc)
package {
import flash.display.*;
public dynamic class house18_mc extends MovieClip {
}
}//package
Section 102
//house19_mc (house19_mc)
package {
import flash.display.*;
public dynamic class house19_mc extends MovieClip {
}
}//package
Section 103
//house1lock_mc (house1lock_mc)
package {
import flash.display.*;
public dynamic class house1lock_mc extends MovieClip {
}
}//package
Section 104
//house2_mc (house2_mc)
package {
import flash.display.*;
public dynamic class house2_mc extends MovieClip {
}
}//package
Section 105
//house20_mc (house20_mc)
package {
import flash.display.*;
public dynamic class house20_mc extends MovieClip {
}
}//package
Section 106
//house21_mc (house21_mc)
package {
import flash.display.*;
public dynamic class house21_mc extends MovieClip {
}
}//package
Section 107
//house22_mc (house22_mc)
package {
import flash.display.*;
public dynamic class house22_mc extends MovieClip {
}
}//package
Section 108
//house23_mc (house23_mc)
package {
import flash.display.*;
public dynamic class house23_mc extends MovieClip {
}
}//package
Section 109
//house24_mc (house24_mc)
package {
import flash.display.*;
public dynamic class house24_mc extends MovieClip {
}
}//package
Section 110
//house25_mc (house25_mc)
package {
import flash.display.*;
public dynamic class house25_mc extends MovieClip {
}
}//package
Section 111
//house27_mc (house27_mc)
package {
import flash.display.*;
public dynamic class house27_mc extends MovieClip {
}
}//package
Section 112
//house2new_mc (house2new_mc)
package {
import flash.display.*;
public dynamic class house2new_mc extends MovieClip {
}
}//package
Section 113
//house3_mc (house3_mc)
package {
import flash.display.*;
public dynamic class house3_mc extends MovieClip {
}
}//package
Section 114
//house32_mc (house32_mc)
package {
import flash.display.*;
public dynamic class house32_mc extends MovieClip {
}
}//package
Section 115
//house33_mc (house33_mc)
package {
import flash.display.*;
public dynamic class house33_mc extends MovieClip {
}
}//package
Section 116
//house4_mc (house4_mc)
package {
import flash.display.*;
public dynamic class house4_mc extends MovieClip {
}
}//package
Section 117
//house5_mc (house5_mc)
package {
import flash.display.*;
public dynamic class house5_mc extends MovieClip {
}
}//package
Section 118
//house6_mc (house6_mc)
package {
import flash.display.*;
public dynamic class house6_mc extends MovieClip {
}
}//package
Section 119
//house7_mc (house7_mc)
package {
import flash.display.*;
public dynamic class house7_mc extends MovieClip {
}
}//package
Section 120
//house8_mc (house8_mc)
package {
import flash.display.*;
public dynamic class house8_mc extends MovieClip {
}
}//package
Section 121
//house9_mc (house9_mc)
package {
import flash.display.*;
public dynamic class house9_mc extends MovieClip {
}
}//package
Section 122
//journal_mc (journal_mc)
package {
import flash.display.*;
import flash.text.*;
public dynamic class journal_mc extends MovieClip {
public var PASSCODE:TextField;
public function journal_mc(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 123
//Key (Key)
package {
import flash.display.*;
import flash.events.*;
public class Key {
private static var keysUp:Object = new Object();
private static var initialized:Boolean = false;
private static var keysDown:Object = new Object();
private static function clearKeys(_arg1:Event):void{
keysDown = new Object();
}
private static function keyPressed(_arg1:KeyboardEvent):void{
keysDown[_arg1.keyCode] = true;
}
public static function isUp(_arg1:uint):Boolean{
if (!initialized){
throw (new Error("Key class has yet been initialized."));
};
return (Boolean((_arg1 in keysUp)));
}
public static function isDown(_arg1:uint):Boolean{
if (!initialized){
throw (new Error("Key class has yet been initialized."));
};
return (Boolean((_arg1 in keysDown)));
}
public static function initialize(_arg1:Stage){
if (!initialized){
_arg1.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed);
_arg1.addEventListener(KeyboardEvent.KEY_UP, keyReleased);
_arg1.addEventListener(Event.DEACTIVATE, clearKeys);
initialized = true;
};
}
private static function keyReleased(_arg1:KeyboardEvent):void{
keysUp[_arg1.keyCode] = true;
if ((_arg1.keyCode in keysDown)){
delete keysDown[_arg1.keyCode];
};
}
}
}//package
Section 124
//littlebirdie1_mc (littlebirdie1_mc)
package {
import flash.display.*;
public dynamic class littlebirdie1_mc extends MovieClip {
}
}//package
Section 125
//littlebirdie2_mc (littlebirdie2_mc)
package {
import flash.display.*;
public dynamic class littlebirdie2_mc extends MovieClip {
}
}//package
Section 126
//littlepig1_mc (littlepig1_mc)
package {
import flash.display.*;
public dynamic class littlepig1_mc extends MovieClip {
}
}//package
Section 127
//littlepig2_mc (littlepig2_mc)
package {
import flash.display.*;
public dynamic class littlepig2_mc extends MovieClip {
}
}//package
Section 128
//mkey_mc (mkey_mc)
package {
import flash.display.*;
public dynamic class mkey_mc extends MovieClip {
}
}//package
Section 129
//mkeyICON_mc (mkeyICON_mc)
package {
import flash.display.*;
public dynamic class mkeyICON_mc extends MovieClip {
}
}//package
Section 130
//monk_mc (monk_mc)
package {
import flash.display.*;
public dynamic class monk_mc extends MovieClip {
}
}//package
Section 131
//muffled_wav (muffled_wav)
package {
import flash.media.*;
public dynamic class muffled_wav extends Sound {
}
}//package
Section 132
//one_mc (one_mc)
package {
import flash.display.*;
public dynamic class one_mc extends MovieClip {
}
}//package
Section 133
//open_wav (open_wav)
package {
import flash.media.*;
public dynamic class open_wav extends Sound {
}
}//package
Section 134
//picture_smash_wav (picture_smash_wav)
package {
import flash.media.*;
public dynamic class picture_smash_wav extends Sound {
}
}//package
Section 135
//pig_mc (pig_mc)
package {
import flash.display.*;
public dynamic class pig_mc extends MovieClip {
}
}//package
Section 136
//pigICON_mc (pigICON_mc)
package {
import flash.display.*;
public dynamic class pigICON_mc extends MovieClip {
}
}//package
Section 137
//pole_in_wav (pole_in_wav)
package {
import flash.media.*;
public dynamic class pole_in_wav extends Sound {
}
}//package
Section 138
//poleICON_mc (poleICON_mc)
package {
import flash.display.*;
public dynamic class poleICON_mc extends MovieClip {
}
}//package
Section 139
//punch_mc (punch_mc)
package {
import flash.display.*;
public dynamic class punch_mc extends MovieClip {
}
}//package
Section 140
//punch_wav (punch_wav)
package {
import flash.media.*;
public dynamic class punch_wav extends Sound {
}
}//package
Section 141
//pyara_mc (pyara_mc)
package {
import flash.display.*;
public dynamic class pyara_mc extends MovieClip {
}
}//package
Section 142
//retry_mc (retry_mc)
package {
import flash.display.*;
public dynamic class retry_mc extends MovieClip {
}
}//package
Section 143
//ricochet_mc (ricochet_mc)
package {
import flash.display.*;
public dynamic class ricochet_mc extends MovieClip {
}
}//package
Section 144
//RM15door1_mc (RM15door1_mc)
package {
import flash.display.*;
public dynamic class RM15door1_mc extends MovieClip {
}
}//package
Section 145
//RM15door2_mc (RM15door2_mc)
package {
import flash.display.*;
public dynamic class RM15door2_mc extends MovieClip {
}
}//package
Section 146
//RM20pipe_mc (RM20pipe_mc)
package {
import flash.display.*;
public dynamic class RM20pipe_mc extends MovieClip {
}
}//package
Section 147
//RM20pole_mc (RM20pole_mc)
package {
import flash.display.*;
public dynamic class RM20pole_mc extends MovieClip {
}
}//package
Section 148
//RM21_pic_mc (RM21_pic_mc)
package {
import flash.display.*;
public dynamic class RM21_pic_mc extends MovieClip {
}
}//package
Section 149
//RM21polejut_mc (RM21polejut_mc)
package {
import flash.display.*;
public dynamic class RM21polejut_mc extends MovieClip {
}
}//package
Section 150
//RM24char_mc (RM24char_mc)
package {
import flash.display.*;
public dynamic class RM24char_mc extends MovieClip {
}
}//package
Section 151
//RM27a_wav (RM27a_wav)
package {
import flash.media.*;
public dynamic class RM27a_wav extends Sound {
}
}//package
Section 152
//room1_mc (room1_mc)
package {
import flash.display.*;
public dynamic class room1_mc extends BitmapData {
public function room1_mc(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 153
//room1_wav (room1_wav)
package {
import flash.media.*;
public dynamic class room1_wav extends Sound {
}
}//package
Section 154
//room20panel_mc (room20panel_mc)
package {
import flash.display.*;
public dynamic class room20panel_mc extends MovieClip {
}
}//package
Section 155
//room8window_mc (room8window_mc)
package {
import flash.display.*;
public dynamic class room8window_mc extends MovieClip {
}
}//package
Section 156
//room9statue_mc (room9statue_mc)
package {
import flash.display.*;
public dynamic class room9statue_mc extends MovieClip {
}
}//package
Section 157
//salt_stone_melt_mc (salt_stone_melt_mc)
package {
import flash.display.*;
public dynamic class salt_stone_melt_mc extends MovieClip {
public function salt_stone_melt_mc(){
addFrameScript(154, frame155);
}
function frame155(){
stop();
}
}
}//package
Section 158
//saltstone_mc (saltstone_mc)
package {
import flash.display.*;
public dynamic class saltstone_mc extends MovieClip {
}
}//package
Section 159
//SALTSTONEBIG_mc (SALTSTONEBIG_mc)
package {
import flash.display.*;
public dynamic class SALTSTONEBIG_mc extends MovieClip {
}
}//package
Section 160
//saltstoneICON_mc (saltstoneICON_mc)
package {
import flash.display.*;
public dynamic class saltstoneICON_mc extends MovieClip {
}
}//package
Section 161
//SAWbutton1_btn (SAWbutton1_btn)
package {
import flash.display.*;
public dynamic class SAWbutton1_btn extends SimpleButton {
}
}//package
Section 162
//SAWbutton2_btn (SAWbutton2_btn)
package {
import flash.display.*;
public dynamic class SAWbutton2_btn extends MovieClip {
}
}//package
Section 163
//SAWbutton3_btn (SAWbutton3_btn)
package {
import flash.display.*;
public dynamic class SAWbutton3_btn extends SimpleButton {
}
}//package
Section 164
//slide_latch_mc (slide_latch_mc)
package {
import flash.display.*;
public dynamic class slide_latch_mc extends MovieClip {
}
}//package
Section 165
//slide_latch2_mc (slide_latch2_mc)
package {
import flash.display.*;
public dynamic class slide_latch2_mc extends MovieClip {
public function slide_latch2_mc(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 166
//splatter_mc (splatter_mc)
package {
import flash.display.*;
public dynamic class splatter_mc extends MovieClip {
}
}//package
Section 167
//statueman_mc (statueman_mc)
package {
import flash.display.*;
public dynamic class statueman_mc extends MovieClip {
}
}//package
Section 168
//survive_mc (survive_mc)
package {
import flash.display.*;
import flash.text.*;
public dynamic class survive_mc extends MovieClip {
public var timer_txt:TextField;
}
}//package
Section 169
//swipe_wav (swipe_wav)
package {
import flash.media.*;
public dynamic class swipe_wav extends Sound {
}
}//package
Section 170
//tankB_mc (tankB_mc)
package {
import flash.display.*;
public dynamic class tankB_mc extends MovieClip {
}
}//package
Section 171
//temp (temp)
package {
import flash.display.*;
public dynamic class temp extends MovieClip {
}
}//package
Section 172
//text_exit_mc (text_exit_mc)
package {
import flash.display.*;
public dynamic class text_exit_mc extends MovieClip {
}
}//package
Section 173
//text_frame_mc (text_frame_mc)
package {
import flash.display.*;
import flash.text.*;
public dynamic class text_frame_mc extends MovieClip {
public var DOWNs:SimpleButton;
public var UPs:SimpleButton;
public var text_field:TextField;
public var back:MovieClip;
}
}//package
Section 174
//text_skip_mc (text_skip_mc)
package {
import flash.display.*;
public dynamic class text_skip_mc extends MovieClip {
}
}//package
Section 175
//the_machine_mc (the_machine_mc)
package {
import flash.display.*;
public dynamic class the_machine_mc extends MovieClip {
public var button1:SAWbutton1_btn;
public var button3:SAWbutton3_btn;
public var blind:MovieClip;
public var handONE:MovieClip;
public var bARM:MovieClip;
public var switch2:SAWbutton2_btn;
public var cuff:MovieClip;
public var saw:MovieClip;
}
}//package
Section 176
//token_in_wav (token_in_wav)
package {
import flash.media.*;
public dynamic class token_in_wav extends Sound {
}
}//package
Section 177
//transition_mc (transition_mc)
package {
import flash.display.*;
public dynamic class transition_mc extends MovieClip {
}
}//package
Section 178
//wall_moving_wav (wall_moving_wav)
package {
import flash.media.*;
public dynamic class wall_moving_wav extends Sound {
}
}//package
Section 179
//window_open_wav (window_open_wav)
package {
import flash.media.*;
public dynamic class window_open_wav extends Sound {
}
}//package