Section 1
//AuxFunctions (caurina.transitions.AuxFunctions)
package caurina.transitions {
public class AuxFunctions {
public static function concatObjects(... _args):Object{
var _local2:Object;
var _local3:Object;
var _local4:int;
var _local5:String;
_local2 = {};
_local4 = 0;
while (_local4 < _args.length) {
_local3 = _args[_local4];
for (_local5 in _local3) {
if (_local3[_local5] == null){
delete _local2[_local5];
} else {
_local2[_local5] = _local3[_local5];
};
};
_local4++;
};
return (_local2);
}
public static function numberToG(_arg1:Number):Number{
return (((_arg1 & 0xFF00) >> 8));
}
public static function numberToR(_arg1:Number):Number{
return (((_arg1 & 0xFF0000) >> 16));
}
public static function isInArray(_arg1:String, _arg2:Array):Boolean{
var _local3:uint;
var _local4:uint;
_local3 = _arg2.length;
_local4 = 0;
while (_local4 < _local3) {
if (_arg2[_local4] == _arg1){
return (true);
};
_local4++;
};
return (false);
}
public static function getObjectLength(_arg1:Object):uint{
var _local2:uint;
var _local3:String;
_local2 = 0;
for (_local3 in _arg1) {
_local2++;
};
return (_local2);
}
public static function numberToB(_arg1:Number):Number{
return ((_arg1 & 0xFF));
}
}
}//package caurina.transitions
Section 2
//Equations (caurina.transitions.Equations)
package caurina.transitions {
public class Equations {
public function Equations(){
trace("Equations is a static class and should not be instantiated.");
}
public static function easeOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
if (_arg1 < (1 / 2.75)){
return (((_arg3 * ((7.5625 * _arg1) * _arg1)) + _arg2));
};
if (_arg1 < (2 / 2.75)){
_arg1 = (_arg1 - (1.5 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.75)) + _arg2));
};
if (_arg1 < (2.5 / 2.75)){
_arg1 = (_arg1 - (2.25 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.9375)) + _arg2));
};
_arg1 = (_arg1 - (2.625 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.984375)) + _arg2));
}
public static function easeInOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
var _local7:Number;
var _local8:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 == 2){
return ((_arg2 + _arg3));
};
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * (0.3 * 1.5)) : _arg5.period;
_local8 = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude;
if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){
_local8 = _arg3;
_local7 = (_local6 / 4);
} else {
_local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8)));
};
if (_arg1 < 1){
--_arg1;
return (((-0.5 * ((_local8 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6)))) + _arg2));
};
--_arg1;
return ((((((_local8 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6))) * 0.5) + _arg3) + _arg2));
}
public static function easeInOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((_arg3 / 2) * _arg1) * _arg1) + _arg2));
};
--_arg1;
return ((((-(_arg3) / 2) * ((_arg1 * (_arg1 - 2)) - 1)) + _arg2));
}
public static function easeInOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (((easeInBounce((_arg1 * 2), 0, _arg3, _arg4) * 0.5) + _arg2));
};
return ((((easeOutBounce(((_arg1 * 2) - _arg4), 0, _arg3, _arg4) * 0.5) + (_arg3 * 0.5)) + _arg2));
}
public static function easeInOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot;
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
_local6 = (_local6 * 1.525);
return ((((_arg3 / 2) * ((_arg1 * _arg1) * (((_local6 + 1) * _arg1) - _local6))) + _arg2));
};
_arg1 = (_arg1 - 2);
_local6 = (_local6 * 1.525);
return ((((_arg3 / 2) * (((_arg1 * _arg1) * (((_local6 + 1) * _arg1) + _local6)) + 2)) + _arg2));
}
public static function easeOutInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutCubic((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInCubic(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeNone(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
public static function easeOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot;
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((_arg1 * _arg1) * (((_local6 + 1) * _arg1) + _local6)) + 1)) + _arg2));
}
public static function easeInOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return ((((-(_arg3) / 2) * (Math.cos(((Math.PI * _arg1) / _arg4)) - 1)) + _arg2));
}
public static function easeInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot;
_arg1 = (_arg1 / _arg4);
return (((((_arg3 * _arg1) * _arg1) * (((_local6 + 1) * _arg1) - _local6)) + _arg2));
}
public static function easeInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return ((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeOutInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutQuint((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInQuint(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutBounce((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInBounce(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function init():void{
Tweener.registerTransition("easenone", easeNone);
Tweener.registerTransition("linear", easeNone);
Tweener.registerTransition("easeinquad", easeInQuad);
Tweener.registerTransition("easeoutquad", easeOutQuad);
Tweener.registerTransition("easeinoutquad", easeInOutQuad);
Tweener.registerTransition("easeoutinquad", easeOutInQuad);
Tweener.registerTransition("easeincubic", easeInCubic);
Tweener.registerTransition("easeoutcubic", easeOutCubic);
Tweener.registerTransition("easeinoutcubic", easeInOutCubic);
Tweener.registerTransition("easeoutincubic", easeOutInCubic);
Tweener.registerTransition("easeinquart", easeInQuart);
Tweener.registerTransition("easeoutquart", easeOutQuart);
Tweener.registerTransition("easeinoutquart", easeInOutQuart);
Tweener.registerTransition("easeoutinquart", easeOutInQuart);
Tweener.registerTransition("easeinquint", easeInQuint);
Tweener.registerTransition("easeoutquint", easeOutQuint);
Tweener.registerTransition("easeinoutquint", easeInOutQuint);
Tweener.registerTransition("easeoutinquint", easeOutInQuint);
Tweener.registerTransition("easeinsine", easeInSine);
Tweener.registerTransition("easeoutsine", easeOutSine);
Tweener.registerTransition("easeinoutsine", easeInOutSine);
Tweener.registerTransition("easeoutinsine", easeOutInSine);
Tweener.registerTransition("easeincirc", easeInCirc);
Tweener.registerTransition("easeoutcirc", easeOutCirc);
Tweener.registerTransition("easeinoutcirc", easeInOutCirc);
Tweener.registerTransition("easeoutincirc", easeOutInCirc);
Tweener.registerTransition("easeinexpo", easeInExpo);
Tweener.registerTransition("easeoutexpo", easeOutExpo);
Tweener.registerTransition("easeinoutexpo", easeInOutExpo);
Tweener.registerTransition("easeoutinexpo", easeOutInExpo);
Tweener.registerTransition("easeinelastic", easeInElastic);
Tweener.registerTransition("easeoutelastic", easeOutElastic);
Tweener.registerTransition("easeinoutelastic", easeInOutElastic);
Tweener.registerTransition("easeoutinelastic", easeOutInElastic);
Tweener.registerTransition("easeinback", easeInBack);
Tweener.registerTransition("easeoutback", easeOutBack);
Tweener.registerTransition("easeinoutback", easeInOutBack);
Tweener.registerTransition("easeoutinback", easeOutInBack);
Tweener.registerTransition("easeinbounce", easeInBounce);
Tweener.registerTransition("easeoutbounce", easeOutBounce);
Tweener.registerTransition("easeinoutbounce", easeInOutBounce);
Tweener.registerTransition("easeoutinbounce", easeOutInBounce);
}
public static function easeOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg1)==_arg4) ? (_arg2 + _arg3) : (((_arg3 * 1.001) * (-(Math.pow(2, ((-10 * _arg1) / _arg4))) + 1)) + _arg2));
}
public static function easeOutInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutBack((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInBack(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg1)==0) ? _arg2 : (((_arg3 * Math.pow(2, (10 * ((_arg1 / _arg4) - 1)))) + _arg2) - (_arg3 * 0.001)));
}
public static function easeInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return (((((_arg3 * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return (((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeInOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((-(_arg3) / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) + 1)) + _arg2));
}
public static function easeInQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return ((((_arg3 * _arg1) * _arg1) + _arg2));
}
public static function easeInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg3 - easeOutBounce((_arg4 - _arg1), 0, _arg3, _arg4)) + _arg2));
}
public static function easeOutInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutExpo((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInExpo(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((-(_arg3) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 1)) + _arg2));
}
public static function easeInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return ((((-(_arg3) * Math.cos(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg3) + _arg2));
}
public static function easeInOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((-(_arg3) / 2) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 2)) + _arg2));
}
public static function easeOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2));
}
public static function easeOutInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutElastic((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInElastic(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
var _local7:Number;
var _local8:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / _arg4);
if (_arg1 == 1){
return ((_arg2 + _arg3));
};
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * 0.3) : _arg5.period;
_local8 = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude;
if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){
_local8 = _arg3;
_local7 = (_local6 / 4);
} else {
_local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8)));
};
--_arg1;
return ((-(((_local8 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6)))) + _arg2));
}
public static function easeOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((_arg1 * _arg1) * _arg1) + 1)) + _arg2));
}
public static function easeOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 1)) + _arg2));
}
public static function easeOutInQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutQuad((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInQuad(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg3 * Math.sin(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg2));
}
public static function easeInOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (((_arg1 * _arg1) * _arg1) + 2)) + _arg2));
}
public static function easeInOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 2)) + _arg2));
}
public static function easeInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return (((-(_arg3) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2));
}
public static function easeOutInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutSine((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInSine(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 == 0){
return (_arg2);
};
if (_arg1 == _arg4){
return ((_arg2 + _arg3));
};
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((_arg3 / 2) * Math.pow(2, (10 * (_arg1 - 1)))) + _arg2) - (_arg3 * 0.0005)));
};
--_arg1;
return (((((_arg3 / 2) * 1.0005) * (-(Math.pow(2, (-10 * _arg1))) + 2)) + _arg2));
}
public static function easeOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
var _local7:Number;
var _local8:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / _arg4);
if (_arg1 == 1){
return ((_arg2 + _arg3));
};
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * 0.3) : _arg5.period;
_local8 = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude;
if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){
_local8 = _arg3;
_local7 = (_local6 / 4);
} else {
_local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8)));
};
return (((((_local8 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6))) + _arg3) + _arg2));
}
public static function easeOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * Math.sqrt((1 - (_arg1 * _arg1)))) + _arg2));
}
public static function easeOutInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutQuart((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInQuart(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutCirc((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInCirc(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
}
}//package caurina.transitions
Section 3
//PropertyInfoObj (caurina.transitions.PropertyInfoObj)
package caurina.transitions {
public class PropertyInfoObj {
public var originalValueComplete:Object;
public var modifierParameters:Array;
public var isSpecialProperty:Boolean;
public var hasModifier:Boolean;
public var valueComplete:Number;
public var extra:Object;
public var valueStart:Number;
public var modifierFunction:Function;
public var arrayIndex:Number;
public function PropertyInfoObj(_arg1:Number, _arg2:Number, _arg3:Object, _arg4:Number, _arg5:Object, _arg6:Boolean, _arg7:Function, _arg8:Array){
valueStart = _arg1;
valueComplete = _arg2;
originalValueComplete = _arg3;
arrayIndex = _arg4;
extra = _arg5;
isSpecialProperty = _arg6;
hasModifier = Boolean(_arg7);
modifierFunction = _arg7;
modifierParameters = _arg8;
}
public function toString():String{
var _local1:String;
_local1 = "\n[PropertyInfoObj ";
_local1 = (_local1 + ("valueStart:" + String(valueStart)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("valueComplete:" + String(valueComplete)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("originalValueComplete:" + String(originalValueComplete)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("arrayIndex:" + String(arrayIndex)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("extra:" + String(extra)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("isSpecialProperty:" + String(isSpecialProperty)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("hasModifier:" + String(hasModifier)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("modifierFunction:" + String(modifierFunction)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("modifierParameters:" + String(modifierParameters)));
_local1 = (_local1 + "]\n");
return (_local1);
}
public function clone():PropertyInfoObj{
var _local1:PropertyInfoObj;
_local1 = new PropertyInfoObj(valueStart, valueComplete, originalValueComplete, arrayIndex, extra, isSpecialProperty, modifierFunction, modifierParameters);
return (_local1);
}
}
}//package caurina.transitions
Section 4
//SpecialProperty (caurina.transitions.SpecialProperty)
package caurina.transitions {
public class SpecialProperty {
public var parameters:Array;
public var preProcess:Function;
public var setValue:Function;
public var getValue:Function;
public function SpecialProperty(_arg1:Function, _arg2:Function, _arg3:Array=null, _arg4:Function=null){
getValue = _arg1;
setValue = _arg2;
parameters = _arg3;
preProcess = _arg4;
}
public function toString():String{
var _local1:String;
_local1 = "";
_local1 = (_local1 + "[SpecialProperty ");
_local1 = (_local1 + ("getValue:" + String(getValue)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("setValue:" + String(setValue)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("parameters:" + String(parameters)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("preProcess:" + String(preProcess)));
_local1 = (_local1 + "]");
return (_local1);
}
}
}//package caurina.transitions
Section 5
//SpecialPropertyModifier (caurina.transitions.SpecialPropertyModifier)
package caurina.transitions {
public class SpecialPropertyModifier {
public var getValue:Function;
public var modifyValues:Function;
public function SpecialPropertyModifier(_arg1:Function, _arg2:Function){
modifyValues = _arg1;
getValue = _arg2;
}
public function toString():String{
var _local1:String;
_local1 = "";
_local1 = (_local1 + "[SpecialPropertyModifier ");
_local1 = (_local1 + ("modifyValues:" + String(modifyValues)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("getValue:" + String(getValue)));
_local1 = (_local1 + "]");
return (_local1);
}
}
}//package caurina.transitions
Section 6
//SpecialPropertySplitter (caurina.transitions.SpecialPropertySplitter)
package caurina.transitions {
public class SpecialPropertySplitter {
public var parameters:Array;
public var splitValues:Function;
public function SpecialPropertySplitter(_arg1:Function, _arg2:Array){
splitValues = _arg1;
parameters = _arg2;
}
public function toString():String{
var _local1:String;
_local1 = "";
_local1 = (_local1 + "[SpecialPropertySplitter ");
_local1 = (_local1 + ("splitValues:" + String(splitValues)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("parameters:" + String(parameters)));
_local1 = (_local1 + "]");
return (_local1);
}
}
}//package caurina.transitions
Section 7
//Tweener (caurina.transitions.Tweener)
package caurina.transitions {
import flash.events.*;
import flash.display.*;
import flash.utils.*;
public class Tweener {
private static var _timeScale:Number = 1;
private static var _currentTimeFrame:Number;
private static var _specialPropertySplitterList:Object;
private static var _engineExists:Boolean = false;
private static var _specialPropertyModifierList:Object;
private static var _currentTime:Number;
private static var _tweenList:Array;
private static var _specialPropertyList:Object;
private static var _transitionList:Object;
private static var _inited:Boolean = false;
private static var __tweener_controller__:MovieClip;
public function Tweener(){
trace("Tweener is a static class and should not be instantiated.");
}
public static function registerSpecialPropertyModifier(_arg1:String, _arg2:Function, _arg3:Function):void{
var _local4:SpecialPropertyModifier;
if (!_inited){
init();
};
_local4 = new SpecialPropertyModifier(_arg2, _arg3);
_specialPropertyModifierList[_arg1] = _local4;
}
public static function registerSpecialProperty(_arg1:String, _arg2:Function, _arg3:Function, _arg4:Array=null, _arg5:Function=null):void{
var _local6:SpecialProperty;
if (!_inited){
init();
};
_local6 = new SpecialProperty(_arg2, _arg3, _arg4, _arg5);
_specialPropertyList[_arg1] = _local6;
}
public static function init(... _args):void{
_inited = true;
_transitionList = new Object();
Equations.init();
_specialPropertyList = new Object();
_specialPropertyModifierList = new Object();
_specialPropertySplitterList = new Object();
}
private static function updateTweens():Boolean{
var _local1:int;
if (_tweenList.length == 0){
return (false);
};
_local1 = 0;
while (_local1 < _tweenList.length) {
if ((((_tweenList[_local1] == undefined)) || (!(_tweenList[_local1].isPaused)))){
if (!updateTweenByIndex(_local1)){
removeTweenByIndex(_local1);
};
if (_tweenList[_local1] == null){
removeTweenByIndex(_local1, true);
_local1--;
};
};
_local1++;
};
return (true);
}
public static function addCaller(_arg1:Object=null, _arg2:Object=null):Boolean{
var _local3:Number;
var _local4:Array;
var _local5:Object;
var _local6:Number;
var _local7:Number;
var _local8:Function;
var _local9:TweenListObj;
var _local10:Number;
var _local11:String;
if (!Boolean(_arg1)){
return (false);
};
if ((_arg1 is Array)){
_local4 = _arg1.concat();
} else {
_local4 = [_arg1];
};
_local5 = _arg2;
if (!_inited){
init();
};
if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){
startEngine();
};
_local6 = (isNaN(_local5.time)) ? 0 : _local5.time;
_local7 = (isNaN(_local5.delay)) ? 0 : _local5.delay;
if (typeof(_local5.transition) == "string"){
_local11 = _local5.transition.toLowerCase();
_local8 = _transitionList[_local11];
} else {
_local8 = _local5.transition;
};
if (!Boolean(_local8)){
_local8 = _transitionList["easeoutexpo"];
};
_local3 = 0;
while (_local3 < _local4.length) {
if (_local5.useFrames == true){
_local9 = new TweenListObj(_local4[_local3], (_currentTimeFrame + (_local7 / _timeScale)), (_currentTimeFrame + ((_local7 + _local6) / _timeScale)), true, _local8, _local5.transitionParams);
} else {
_local9 = new TweenListObj(_local4[_local3], (_currentTime + ((_local7 * 1000) / _timeScale)), (_currentTime + (((_local7 * 1000) + (_local6 * 1000)) / _timeScale)), false, _local8, _local5.transitionParams);
};
_local9.properties = null;
_local9.onStart = _local5.onStart;
_local9.onUpdate = _local5.onUpdate;
_local9.onComplete = _local5.onComplete;
_local9.onOverwrite = _local5.onOverwrite;
_local9.onStartParams = _local5.onStartParams;
_local9.onUpdateParams = _local5.onUpdateParams;
_local9.onCompleteParams = _local5.onCompleteParams;
_local9.onOverwriteParams = _local5.onOverwriteParams;
_local9.onStartScope = _local5.onStartScope;
_local9.onUpdateScope = _local5.onUpdateScope;
_local9.onCompleteScope = _local5.onCompleteScope;
_local9.onOverwriteScope = _local5.onOverwriteScope;
_local9.onErrorScope = _local5.onErrorScope;
_local9.isCaller = true;
_local9.count = _local5.count;
_local9.waitFrames = _local5.waitFrames;
_tweenList.push(_local9);
if ((((_local6 == 0)) && ((_local7 == 0)))){
_local10 = (_tweenList.length - 1);
updateTweenByIndex(_local10);
removeTweenByIndex(_local10);
};
_local3++;
};
return (true);
}
public static function pauseAllTweens():Boolean{
var _local1:Boolean;
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
_local1 = false;
_local2 = 0;
while (_local2 < _tweenList.length) {
pauseTweenByIndex(_local2);
_local1 = true;
_local2++;
};
return (_local1);
}
public static function removeTweens(_arg1:Object, ... _args):Boolean{
var _local3:Array;
var _local4:uint;
_local3 = new Array();
_local4 = 0;
while (_local4 < _args.length) {
if ((((typeof(_args[_local4]) == "string")) && (!(AuxFunctions.isInArray(_args[_local4], _local3))))){
_local3.push(_args[_local4]);
};
_local4++;
};
return (affectTweens(removeTweenByIndex, _arg1, _local3));
}
public static function splitTweens(_arg1:Number, _arg2:Array):uint{
var _local3:TweenListObj;
var _local4:TweenListObj;
var _local5:uint;
var _local6:String;
var _local7:Boolean;
_local3 = _tweenList[_arg1];
_local4 = _local3.clone(false);
_local5 = 0;
while (_local5 < _arg2.length) {
_local6 = _arg2[_local5];
if (Boolean(_local3.properties[_local6])){
_local3.properties[_local6] = undefined;
delete _local3.properties[_local6];
};
_local5++;
};
for (_local6 in _local4.properties) {
_local7 = false;
_local5 = 0;
while (_local5 < _arg2.length) {
if (_arg2[_local5] == _local6){
_local7 = true;
break;
};
_local5++;
};
if (!_local7){
_local4.properties[_local6] = undefined;
delete _local4.properties[_local6];
};
};
_tweenList.push(_local4);
return ((_tweenList.length - 1));
}
public static function updateFrame():void{
_currentTimeFrame++;
}
public static function resumeTweenByIndex(_arg1:Number):Boolean{
var _local2:TweenListObj;
var _local3:Number;
_local2 = _tweenList[_arg1];
if ((((_local2 == null)) || (!(_local2.isPaused)))){
return (false);
};
_local3 = getCurrentTweeningTime(_local2);
_local2.timeStart = (_local2.timeStart + (_local3 - _local2.timePaused));
_local2.timeComplete = (_local2.timeComplete + (_local3 - _local2.timePaused));
_local2.timePaused = undefined;
_local2.isPaused = false;
return (true);
}
public static function getVersion():String{
return ("AS3 1.31.71");
}
public static function onEnterFrame(_arg1:Event):void{
var _local2:Boolean;
updateTime();
updateFrame();
_local2 = false;
_local2 = updateTweens();
if (!_local2){
stopEngine();
};
}
public static function updateTime():void{
_currentTime = getTimer();
}
private static function updateTweenByIndex(_arg1:Number):Boolean{
var tTweening:TweenListObj;
var isOver:Boolean;
var mustUpdate:Boolean;
var nv:Number;
var t:Number;
var b:Number;
var c:Number;
var d:Number;
var pName:String;
var eventScope:Object;
var tScope:Object;
var cTime:Number;
var tProperty:Object;
var pv:Number;
var i = _arg1;
tTweening = _tweenList[i];
if ((((tTweening == null)) || (!(Boolean(tTweening.scope))))){
return (false);
};
isOver = false;
cTime = getCurrentTweeningTime(tTweening);
if (cTime >= tTweening.timeStart){
tScope = tTweening.scope;
if (tTweening.isCaller){
do {
t = (((tTweening.timeComplete - tTweening.timeStart) / tTweening.count) * (tTweening.timesCalled + 1));
b = tTweening.timeStart;
c = (tTweening.timeComplete - tTweening.timeStart);
d = (tTweening.timeComplete - tTweening.timeStart);
nv = tTweening.transition(t, b, c, d);
} while (!(cTime >= nv));
} else {
mustUpdate = (((((tTweening.skipUpdates < 1)) || (!(tTweening.skipUpdates)))) || ((tTweening.updatesSkipped >= tTweening.skipUpdates)));
if (cTime >= tTweening.timeComplete){
isOver = true;
mustUpdate = true;
};
if (!tTweening.hasStarted){
if (Boolean(tTweening.onStart)){
eventScope = (Boolean(tTweening.onStartScope)) ? tTweening.onStartScope : tScope;
try {
tTweening.onStart.apply(eventScope, tTweening.onStartParams);
} catch(e:Error) {
handleError(tTweening, e, "onStart");
};
};
for (pName in tTweening.properties) {
if (tTweening.properties[pName].isSpecialProperty){
if (Boolean(_specialPropertyList[pName].preProcess)){
tTweening.properties[pName].valueComplete = _specialPropertyList[pName].preProcess(tScope, _specialPropertyList[pName].parameters, tTweening.properties[pName].originalValueComplete, tTweening.properties[pName].extra);
};
pv = _specialPropertyList[pName].getValue(tScope, _specialPropertyList[pName].parameters, tTweening.properties[pName].extra);
} else {
pv = tScope[pName];
};
tTweening.properties[pName].valueStart = (isNaN(pv)) ? tTweening.properties[pName].valueComplete : pv;
};
mustUpdate = true;
tTweening.hasStarted = true;
};
if (mustUpdate){
for (pName in tTweening.properties) {
tProperty = tTweening.properties[pName];
if (isOver){
nv = tProperty.valueComplete;
} else {
if (tProperty.hasModifier){
t = (cTime - tTweening.timeStart);
d = (tTweening.timeComplete - tTweening.timeStart);
nv = tTweening.transition(t, 0, 1, d, tTweening.transitionParams);
nv = tProperty.modifierFunction(tProperty.valueStart, tProperty.valueComplete, nv, tProperty.modifierParameters);
} else {
t = (cTime - tTweening.timeStart);
b = tProperty.valueStart;
c = (tProperty.valueComplete - tProperty.valueStart);
d = (tTweening.timeComplete - tTweening.timeStart);
nv = tTweening.transition(t, b, c, d, tTweening.transitionParams);
};
};
if (tTweening.rounded){
nv = Math.round(nv);
};
if (tProperty.isSpecialProperty){
_specialPropertyList[pName].setValue(tScope, nv, _specialPropertyList[pName].parameters, tTweening.properties[pName].extra);
} else {
tScope[pName] = nv;
};
};
tTweening.updatesSkipped = 0;
if (Boolean(tTweening.onUpdate)){
eventScope = (Boolean(tTweening.onUpdateScope)) ? tTweening.onUpdateScope : tScope;
try {
tTweening.onUpdate.apply(eventScope, tTweening.onUpdateParams);
} catch(e:Error) {
handleError(tTweening, e, "onUpdate");
};
};
} else {
tTweening.updatesSkipped++;
};
};
if (((isOver) && (Boolean(tTweening.onComplete)))){
eventScope = (Boolean(tTweening.onCompleteScope)) ? tTweening.onCompleteScope : tScope;
try {
tTweening.onComplete.apply(eventScope, tTweening.onCompleteParams);
} catch(e:Error) {
handleError(tTweening, e, "onComplete");
};
};
return (!(isOver));
};
return (true);
}
public static function setTimeScale(_arg1:Number):void{
var _local2:Number;
var _local3:Number;
if (isNaN(_arg1)){
_arg1 = 1;
};
if (_arg1 < 1E-5){
_arg1 = 1E-5;
};
if (_arg1 != _timeScale){
if (_tweenList != null){
_local2 = 0;
while (_local2 < _tweenList.length) {
_local3 = getCurrentTweeningTime(_tweenList[_local2]);
_tweenList[_local2].timeStart = (_local3 - (((_local3 - _tweenList[_local2].timeStart) * _timeScale) / _arg1));
_tweenList[_local2].timeComplete = (_local3 - (((_local3 - _tweenList[_local2].timeComplete) * _timeScale) / _arg1));
if (_tweenList[_local2].timePaused != undefined){
_tweenList[_local2].timePaused = (_local3 - (((_local3 - _tweenList[_local2].timePaused) * _timeScale) / _arg1));
};
_local2++;
};
};
_timeScale = _arg1;
};
}
public static function resumeAllTweens():Boolean{
var _local1:Boolean;
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
_local1 = false;
_local2 = 0;
while (_local2 < _tweenList.length) {
resumeTweenByIndex(_local2);
_local1 = true;
_local2++;
};
return (_local1);
}
private static function handleError(_arg1:TweenListObj, _arg2:Error, _arg3:String):void{
var eventScope:Object;
var pTweening = _arg1;
var pError = _arg2;
var pCallBackName = _arg3;
if (((Boolean(pTweening.onError)) && ((pTweening.onError is Function)))){
eventScope = (Boolean(pTweening.onErrorScope)) ? pTweening.onErrorScope : pTweening.scope;
try {
pTweening.onError.apply(eventScope, [pTweening.scope, pError]);
} catch(metaError:Error) {
printError(((((String(pTweening.scope) + " raised an error while executing the 'onError' handler. Original error:\n ") + pError.getStackTrace()) + "\nonError error: ") + metaError.getStackTrace()));
};
} else {
if (!Boolean(pTweening.onError)){
printError(((((String(pTweening.scope) + " raised an error while executing the '") + pCallBackName) + "'handler. \n") + pError.getStackTrace()));
};
};
}
private static function startEngine():void{
_engineExists = true;
_tweenList = new Array();
__tweener_controller__ = new MovieClip();
__tweener_controller__.addEventListener(Event.ENTER_FRAME, Tweener.onEnterFrame);
_currentTimeFrame = 0;
updateTime();
}
public static function removeAllTweens():Boolean{
var _local1:Boolean;
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
_local1 = false;
_local2 = 0;
while (_local2 < _tweenList.length) {
removeTweenByIndex(_local2);
_local1 = true;
_local2++;
};
return (_local1);
}
public static function addTween(_arg1:Object=null, _arg2:Object=null):Boolean{
var _local3:Number;
var _local4:Number;
var _local5:String;
var _local6:Array;
var _local7:Object;
var _local8:Number;
var _local9:Number;
var _local10:Array;
var _local11:Object;
var _local12:Object;
var _local13:Function;
var _local14:Object;
var _local15:TweenListObj;
var _local16:Number;
var _local17:Array;
var _local18:Array;
var _local19:Array;
var _local20:String;
if (!Boolean(_arg1)){
return (false);
};
if ((_arg1 is Array)){
_local6 = _arg1.concat();
} else {
_local6 = [_arg1];
};
_local7 = TweenListObj.makePropertiesChain(_arg2);
if (!_inited){
init();
};
if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){
startEngine();
};
_local8 = (isNaN(_local7.time)) ? 0 : _local7.time;
_local9 = (isNaN(_local7.delay)) ? 0 : _local7.delay;
_local10 = new Array();
_local11 = {time:true, delay:true, useFrames:true, skipUpdates:true, transition:true, transitionParams:true, onStart:true, onUpdate:true, onComplete:true, onOverwrite:true, onError:true, rounded:true, onStartParams:true, onUpdateParams:true, onCompleteParams:true, onOverwriteParams:true, onStartScope:true, onUpdateScope:true, onCompleteScope:true, onOverwriteScope:true, onErrorScope:true};
_local12 = new Object();
for (_local5 in _local7) {
if (!_local11[_local5]){
if (_specialPropertySplitterList[_local5]){
_local17 = _specialPropertySplitterList[_local5].splitValues(_local7[_local5], _specialPropertySplitterList[_local5].parameters);
_local3 = 0;
while (_local3 < _local17.length) {
if (_specialPropertySplitterList[_local17[_local3].name]){
_local18 = _specialPropertySplitterList[_local17[_local3].name].splitValues(_local17[_local3].value, _specialPropertySplitterList[_local17[_local3].name].parameters);
_local4 = 0;
while (_local4 < _local18.length) {
_local10[_local18[_local4].name] = {valueStart:undefined, valueComplete:_local18[_local4].value, arrayIndex:_local18[_local4].arrayIndex, isSpecialProperty:false};
_local4++;
};
} else {
_local10[_local17[_local3].name] = {valueStart:undefined, valueComplete:_local17[_local3].value, arrayIndex:_local17[_local3].arrayIndex, isSpecialProperty:false};
};
_local3++;
};
} else {
if (_specialPropertyModifierList[_local5] != undefined){
_local19 = _specialPropertyModifierList[_local5].modifyValues(_local7[_local5]);
_local3 = 0;
while (_local3 < _local19.length) {
_local12[_local19[_local3].name] = {modifierParameters:_local19[_local3].parameters, modifierFunction:_specialPropertyModifierList[_local5].getValue};
_local3++;
};
} else {
_local10[_local5] = {valueStart:undefined, valueComplete:_local7[_local5]};
};
};
};
};
for (_local5 in _local10) {
if (_specialPropertyList[_local5] != undefined){
_local10[_local5].isSpecialProperty = true;
} else {
if (_local6[0][_local5] == undefined){
printError((((("The property '" + _local5) + "' doesn't seem to be a normal object property of ") + String(_local6[0])) + " or a registered special property."));
};
};
};
for (_local5 in _local12) {
if (_local10[_local5] != undefined){
_local10[_local5].modifierParameters = _local12[_local5].modifierParameters;
_local10[_local5].modifierFunction = _local12[_local5].modifierFunction;
};
};
if (typeof(_local7.transition) == "string"){
_local20 = _local7.transition.toLowerCase();
_local13 = _transitionList[_local20];
} else {
_local13 = _local7.transition;
};
if (!Boolean(_local13)){
_local13 = _transitionList["easeoutexpo"];
};
_local3 = 0;
while (_local3 < _local6.length) {
_local14 = new Object();
for (_local5 in _local10) {
_local14[_local5] = new PropertyInfoObj(_local10[_local5].valueStart, _local10[_local5].valueComplete, _local10[_local5].valueComplete, _local10[_local5].arrayIndex, {}, _local10[_local5].isSpecialProperty, _local10[_local5].modifierFunction, _local10[_local5].modifierParameters);
};
if (_local7.useFrames == true){
_local15 = new TweenListObj(_local6[_local3], (_currentTimeFrame + (_local9 / _timeScale)), (_currentTimeFrame + ((_local9 + _local8) / _timeScale)), true, _local13, _local7.transitionParams);
} else {
_local15 = new TweenListObj(_local6[_local3], (_currentTime + ((_local9 * 1000) / _timeScale)), (_currentTime + (((_local9 * 1000) + (_local8 * 1000)) / _timeScale)), false, _local13, _local7.transitionParams);
};
_local15.properties = _local14;
_local15.onStart = _local7.onStart;
_local15.onUpdate = _local7.onUpdate;
_local15.onComplete = _local7.onComplete;
_local15.onOverwrite = _local7.onOverwrite;
_local15.onError = _local7.onError;
_local15.onStartParams = _local7.onStartParams;
_local15.onUpdateParams = _local7.onUpdateParams;
_local15.onCompleteParams = _local7.onCompleteParams;
_local15.onOverwriteParams = _local7.onOverwriteParams;
_local15.onStartScope = _local7.onStartScope;
_local15.onUpdateScope = _local7.onUpdateScope;
_local15.onCompleteScope = _local7.onCompleteScope;
_local15.onOverwriteScope = _local7.onOverwriteScope;
_local15.onErrorScope = _local7.onErrorScope;
_local15.rounded = _local7.rounded;
_local15.skipUpdates = _local7.skipUpdates;
removeTweensByTime(_local15.scope, _local15.properties, _local15.timeStart, _local15.timeComplete);
_tweenList.push(_local15);
if ((((_local8 == 0)) && ((_local9 == 0)))){
_local16 = (_tweenList.length - 1);
updateTweenByIndex(_local16);
removeTweenByIndex(_local16);
};
_local3++;
};
return (true);
}
public static function registerTransition(_arg1:String, _arg2:Function):void{
if (!_inited){
init();
};
_transitionList[_arg1] = _arg2;
}
public static function printError(_arg1:String):void{
trace(("## [Tweener] Error: " + _arg1));
}
private static function affectTweens(_arg1:Function, _arg2:Object, _arg3:Array):Boolean{
var _local4:Boolean;
var _local5:uint;
var _local6:Array;
var _local7:uint;
var _local8:uint;
var _local9:uint;
_local4 = false;
if (!Boolean(_tweenList)){
return (false);
};
_local5 = 0;
while (_local5 < _tweenList.length) {
if (((_tweenList[_local5]) && ((_tweenList[_local5].scope == _arg2)))){
if (_arg3.length == 0){
_arg1(_local5);
_local4 = true;
} else {
_local6 = new Array();
_local7 = 0;
while (_local7 < _arg3.length) {
if (Boolean(_tweenList[_local5].properties[_arg3[_local7]])){
_local6.push(_arg3[_local7]);
};
_local7++;
};
if (_local6.length > 0){
_local8 = AuxFunctions.getObjectLength(_tweenList[_local5].properties);
if (_local8 == _local6.length){
_arg1(_local5);
_local4 = true;
} else {
_local9 = splitTweens(_local5, _local6);
_arg1(_local9);
_local4 = true;
};
};
};
};
_local5++;
};
return (_local4);
}
public static function getTweens(_arg1:Object):Array{
var _local2:uint;
var _local3:String;
var _local4:Array;
if (!Boolean(_tweenList)){
return ([]);
};
_local4 = new Array();
_local2 = 0;
while (_local2 < _tweenList.length) {
if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){
for (_local3 in _tweenList[_local2].properties) {
_local4.push(_local3);
};
};
_local2++;
};
return (_local4);
}
public static function isTweening(_arg1:Object):Boolean{
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
_local2 = 0;
while (_local2 < _tweenList.length) {
if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){
return (true);
};
_local2++;
};
return (false);
}
public static function pauseTweenByIndex(_arg1:Number):Boolean{
var _local2:TweenListObj;
_local2 = _tweenList[_arg1];
if ((((_local2 == null)) || (_local2.isPaused))){
return (false);
};
_local2.timePaused = getCurrentTweeningTime(_local2);
_local2.isPaused = true;
return (true);
}
public static function getCurrentTweeningTime(_arg1:Object):Number{
return ((_arg1.useFrames) ? _currentTimeFrame : _currentTime);
}
public static function getTweenCount(_arg1:Object):Number{
var _local2:uint;
var _local3:Number;
if (!Boolean(_tweenList)){
return (0);
};
_local3 = 0;
_local2 = 0;
while (_local2 < _tweenList.length) {
if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){
_local3 = (_local3 + AuxFunctions.getObjectLength(_tweenList[_local2].properties));
};
_local2++;
};
return (_local3);
}
private static function stopEngine():void{
_engineExists = false;
_tweenList = null;
_currentTime = 0;
_currentTimeFrame = 0;
__tweener_controller__.removeEventListener(Event.ENTER_FRAME, Tweener.onEnterFrame);
__tweener_controller__ = null;
}
public static function removeTweensByTime(_arg1:Object, _arg2:Object, _arg3:Number, _arg4:Number):Boolean{
var removed:Boolean;
var removedLocally:Boolean;
var i:uint;
var tl:uint;
var pName:String;
var eventScope:Object;
var p_scope = _arg1;
var p_properties = _arg2;
var p_timeStart = _arg3;
var p_timeComplete = _arg4;
removed = false;
tl = _tweenList.length;
i = 0;
while (i < tl) {
if (((Boolean(_tweenList[i])) && ((p_scope == _tweenList[i].scope)))){
if ((((p_timeComplete > _tweenList[i].timeStart)) && ((p_timeStart < _tweenList[i].timeComplete)))){
removedLocally = false;
for (pName in _tweenList[i].properties) {
if (Boolean(p_properties[pName])){
if (Boolean(_tweenList[i].onOverwrite)){
eventScope = (Boolean(_tweenList[i].onOverwriteScope)) ? _tweenList[i].onOverwriteScope : _tweenList[i].scope;
try {
_tweenList[i].onOverwrite.apply(eventScope, _tweenList[i].onOverwriteParams);
} catch(e:Error) {
handleError(_tweenList[i], e, "onOverwrite");
};
};
_tweenList[i].properties[pName] = undefined;
delete _tweenList[i].properties[pName];
removedLocally = true;
removed = true;
};
};
if (removedLocally){
if (AuxFunctions.getObjectLength(_tweenList[i].properties) == 0){
removeTweenByIndex(i);
};
};
};
};
i = (i + 1);
};
return (removed);
}
public static function registerSpecialPropertySplitter(_arg1:String, _arg2:Function, _arg3:Array=null):void{
var _local4:SpecialPropertySplitter;
if (!_inited){
init();
};
_local4 = new SpecialPropertySplitter(_arg2, _arg3);
_specialPropertySplitterList[_arg1] = _local4;
}
public static function removeTweenByIndex(_arg1:Number, _arg2:Boolean=false):Boolean{
_tweenList[_arg1] = null;
if (_arg2){
_tweenList.splice(_arg1, 1);
};
return (true);
}
public static function resumeTweens(_arg1:Object, ... _args):Boolean{
var _local3:Array;
var _local4:uint;
_local3 = new Array();
_local4 = 0;
while (_local4 < _args.length) {
if ((((typeof(_args[_local4]) == "string")) && (!(AuxFunctions.isInArray(_args[_local4], _local3))))){
_local3.push(_args[_local4]);
};
_local4++;
};
return (affectTweens(resumeTweenByIndex, _arg1, _local3));
}
public static function pauseTweens(_arg1:Object, ... _args):Boolean{
var _local3:Array;
var _local4:uint;
_local3 = new Array();
_local4 = 0;
while (_local4 < _args.length) {
if ((((typeof(_args[_local4]) == "string")) && (!(AuxFunctions.isInArray(_args[_local4], _local3))))){
_local3.push(_args[_local4]);
};
_local4++;
};
return (affectTweens(pauseTweenByIndex, _arg1, _local3));
}
}
}//package caurina.transitions
Section 8
//TweenListObj (caurina.transitions.TweenListObj)
package caurina.transitions {
public class TweenListObj {
public var onUpdate:Function;
public var useFrames:Boolean;
public var hasStarted:Boolean;
public var onOverwriteParams:Array;
public var timeStart:Number;
public var count:Number;
public var timeComplete:Number;
public var onStartParams:Array;
public var onUpdateScope:Object;
public var rounded:Boolean;
public var onUpdateParams:Array;
public var properties:Object;
public var onComplete:Function;
public var transitionParams:Object;
public var updatesSkipped:Number;
public var onStart:Function;
public var onOverwriteScope:Object;
public var skipUpdates:Number;
public var onStartScope:Object;
public var scope:Object;
public var transition:Function;
public var timePaused:Number;
public var onCompleteParams:Array;
public var timesCalled:Number;
public var isCaller:Boolean;
public var onError:Function;
public var onErrorScope:Object;
public var onOverwrite:Function;
public var isPaused:Boolean;
public var waitFrames:Boolean;
public var onCompleteScope:Object;
public function TweenListObj(_arg1:Object, _arg2:Number, _arg3:Number, _arg4:Boolean, _arg5:Function, _arg6:Object){
scope = _arg1;
timeStart = _arg2;
timeComplete = _arg3;
useFrames = _arg4;
transition = _arg5;
transitionParams = _arg6;
properties = new Object();
isPaused = false;
timePaused = undefined;
isCaller = false;
updatesSkipped = 0;
timesCalled = 0;
skipUpdates = 0;
hasStarted = false;
}
public function clone(_arg1:Boolean):TweenListObj{
var _local2:TweenListObj;
var _local3:String;
_local2 = new TweenListObj(scope, timeStart, timeComplete, useFrames, transition, transitionParams);
_local2.properties = new Array();
for (_local3 in properties) {
_local2.properties[_local3] = properties[_local3].clone();
};
_local2.skipUpdates = skipUpdates;
_local2.updatesSkipped = updatesSkipped;
if (!_arg1){
_local2.onStart = onStart;
_local2.onUpdate = onUpdate;
_local2.onComplete = onComplete;
_local2.onOverwrite = onOverwrite;
_local2.onError = onError;
_local2.onStartParams = onStartParams;
_local2.onUpdateParams = onUpdateParams;
_local2.onCompleteParams = onCompleteParams;
_local2.onOverwriteParams = onOverwriteParams;
_local2.onStartScope = onStartScope;
_local2.onUpdateScope = onUpdateScope;
_local2.onCompleteScope = onCompleteScope;
_local2.onOverwriteScope = onOverwriteScope;
_local2.onErrorScope = onErrorScope;
};
_local2.rounded = rounded;
_local2.isPaused = isPaused;
_local2.timePaused = timePaused;
_local2.isCaller = isCaller;
_local2.count = count;
_local2.timesCalled = timesCalled;
_local2.waitFrames = waitFrames;
_local2.hasStarted = hasStarted;
return (_local2);
}
public function toString():String{
var _local1:String;
var _local2:Boolean;
var _local3:String;
_local1 = "\n[TweenListObj ";
_local1 = (_local1 + ("scope:" + String(scope)));
_local1 = (_local1 + ", properties:");
_local2 = true;
for (_local3 in properties) {
if (!_local2){
_local1 = (_local1 + ",");
};
_local1 = (_local1 + ("[name:" + properties[_local3].name));
_local1 = (_local1 + (",valueStart:" + properties[_local3].valueStart));
_local1 = (_local1 + (",valueComplete:" + properties[_local3].valueComplete));
_local1 = (_local1 + "]");
_local2 = false;
};
_local1 = (_local1 + (", timeStart:" + String(timeStart)));
_local1 = (_local1 + (", timeComplete:" + String(timeComplete)));
_local1 = (_local1 + (", useFrames:" + String(useFrames)));
_local1 = (_local1 + (", transition:" + String(transition)));
_local1 = (_local1 + (", transitionParams:" + String(transitionParams)));
if (skipUpdates){
_local1 = (_local1 + (", skipUpdates:" + String(skipUpdates)));
};
if (updatesSkipped){
_local1 = (_local1 + (", updatesSkipped:" + String(updatesSkipped)));
};
if (Boolean(onStart)){
_local1 = (_local1 + (", onStart:" + String(onStart)));
};
if (Boolean(onUpdate)){
_local1 = (_local1 + (", onUpdate:" + String(onUpdate)));
};
if (Boolean(onComplete)){
_local1 = (_local1 + (", onComplete:" + String(onComplete)));
};
if (Boolean(onOverwrite)){
_local1 = (_local1 + (", onOverwrite:" + String(onOverwrite)));
};
if (Boolean(onError)){
_local1 = (_local1 + (", onError:" + String(onError)));
};
if (onStartParams){
_local1 = (_local1 + (", onStartParams:" + String(onStartParams)));
};
if (onUpdateParams){
_local1 = (_local1 + (", onUpdateParams:" + String(onUpdateParams)));
};
if (onCompleteParams){
_local1 = (_local1 + (", onCompleteParams:" + String(onCompleteParams)));
};
if (onOverwriteParams){
_local1 = (_local1 + (", onOverwriteParams:" + String(onOverwriteParams)));
};
if (onStartScope){
_local1 = (_local1 + (", onStartScope:" + String(onStartScope)));
};
if (onUpdateScope){
_local1 = (_local1 + (", onUpdateScope:" + String(onUpdateScope)));
};
if (onCompleteScope){
_local1 = (_local1 + (", onCompleteScope:" + String(onCompleteScope)));
};
if (onOverwriteScope){
_local1 = (_local1 + (", onOverwriteScope:" + String(onOverwriteScope)));
};
if (onErrorScope){
_local1 = (_local1 + (", onErrorScope:" + String(onErrorScope)));
};
if (rounded){
_local1 = (_local1 + (", rounded:" + String(rounded)));
};
if (isPaused){
_local1 = (_local1 + (", isPaused:" + String(isPaused)));
};
if (timePaused){
_local1 = (_local1 + (", timePaused:" + String(timePaused)));
};
if (isCaller){
_local1 = (_local1 + (", isCaller:" + String(isCaller)));
};
if (count){
_local1 = (_local1 + (", count:" + String(count)));
};
if (timesCalled){
_local1 = (_local1 + (", timesCalled:" + String(timesCalled)));
};
if (waitFrames){
_local1 = (_local1 + (", waitFrames:" + String(waitFrames)));
};
if (hasStarted){
_local1 = (_local1 + (", hasStarted:" + String(hasStarted)));
};
_local1 = (_local1 + "]\n");
return (_local1);
}
public static function makePropertiesChain(_arg1:Object):Object{
var _local2:Object;
var _local3:Object;
var _local4:Object;
var _local5:Object;
var _local6:Number;
var _local7:Number;
var _local8:Number;
_local2 = _arg1.base;
if (_local2){
_local3 = {};
if ((_local2 is Array)){
_local4 = [];
_local8 = 0;
while (_local8 < _local2.length) {
_local4.push(_local2[_local8]);
_local8++;
};
} else {
_local4 = [_local2];
};
_local4.push(_arg1);
_local6 = _local4.length;
_local7 = 0;
while (_local7 < _local6) {
if (_local4[_local7]["base"]){
_local5 = AuxFunctions.concatObjects(makePropertiesChain(_local4[_local7]["base"]), _local4[_local7]);
} else {
_local5 = _local4[_local7];
};
_local3 = AuxFunctions.concatObjects(_local3, _local5);
_local7++;
};
if (_local3["base"]){
delete _local3["base"];
};
return (_local3);
//unresolved jump
};
return (_arg1);
}
}
}//package caurina.transitions
Section 9
//baby_wrapper_167 (designANursery_fla.baby_wrapper_167)
package designANursery_fla {
import flash.display.*;
public dynamic class baby_wrapper_167 extends MovieClip {
public var baby_mc:CaucasianToddler;
}
}//package designANursery_fla
Section 10
//BackButton_492 (designANursery_fla.BackButton_492)
package designANursery_fla {
import flash.display.*;
public dynamic class BackButton_492 extends MovieClip {
public var hint_mc:MovieClip;
public function BackButton_492(){
addFrameScript(0, frame1, 9, frame10, 16, frame17, 25, frame26, 36, frame37, 44, frame45);
}
function frame10(){
play();
}
function frame1(){
stop();
}
function frame26(){
stop();
}
function frame17(){
stop();
}
function frame37(){
play();
}
function frame45(){
gotoAndStop("off");
}
}
}//package designANursery_fla
Section 11
//bear_chair_wrapper_255 (designANursery_fla.bear_chair_wrapper_255)
package designANursery_fla {
import flash.display.*;
public dynamic class bear_chair_wrapper_255 extends MovieClip {
public var hint_mc:MovieClip;
public var baby_wrapper_mc:MovieClip;
public function bear_chair_wrapper_255(){
addFrameScript(0, frame1, 9, frame10, 19, frame20, 29, frame30, 73, frame74);
}
function frame74(){
gotoAndPlay("active");
}
function frame10(){
stop();
}
function frame1(){
stop();
}
function frame20(){
stop();
}
function frame30(){
play();
}
}
}//package designANursery_fla
Section 12
//changing_table_wrapper_272 (designANursery_fla.changing_table_wrapper_272)
package designANursery_fla {
import flash.display.*;
public dynamic class changing_table_wrapper_272 extends MovieClip {
public var hint_mc:MovieClip;
public var baby_wrapper_mc:MovieClip;
public function changing_table_wrapper_272(){
addFrameScript(0, frame1, 9, frame10, 19, frame20, 29, frame30, 38, frame39);
}
function frame10(){
stop();
}
function frame1(){
stop();
}
function frame20(){
stop();
}
function frame30(){
stop();
}
function frame39(){
stop();
}
}
}//package designANursery_fla
Section 13
//click_hint_161 (designANursery_fla.click_hint_161)
package designANursery_fla {
import flash.display.*;
public dynamic class click_hint_161 extends MovieClip {
public var starGlow:MovieClip;
public function click_hint_161(){
addFrameScript(0, frame1, 4, frame5, 27, frame28);
}
function frame1(){
stop();
}
function frame5(){
play();
}
function frame28(){
stop();
}
}
}//package designANursery_fla
Section 14
//crib_wrapper_258 (designANursery_fla.crib_wrapper_258)
package designANursery_fla {
import flash.display.*;
public dynamic class crib_wrapper_258 extends MovieClip {
public var hint_mc:MovieClip;
public var baby_wrapper_mc:MovieClip;
public function crib_wrapper_258(){
addFrameScript(0, frame1, 9, frame10, 19, frame20, 29, frame30, 88, frame89);
}
function frame89(){
gotoAndPlay("active");
}
function frame10(){
stop();
}
function frame1(){
stop();
}
function frame20(){
stop();
}
function frame30(){
play();
}
}
}//package designANursery_fla
Section 15
//high_chair_wrapper_251 (designANursery_fla.high_chair_wrapper_251)
package designANursery_fla {
import flash.display.*;
public dynamic class high_chair_wrapper_251 extends MovieClip {
public var hint_mc:MovieClip;
public var baby_wrapper_mc:MovieClip;
public function high_chair_wrapper_251(){
addFrameScript(0, frame1, 9, frame10, 19, frame20, 29, frame30, 38, frame39);
}
function frame10(){
stop();
}
function frame1(){
stop();
}
function frame20(){
stop();
}
function frame30(){
stop();
}
function frame39(){
stop();
}
}
}//package designANursery_fla
Section 16
//main_view_contents_2 (designANursery_fla.main_view_contents_2)
package designANursery_fla {
import flash.display.*;
public dynamic class main_view_contents_2 extends MovieClip {
public var highlight_mc:MovieClip;
public var backgrounds_mc:backgrounds_container;
public var furniture_mc:furniture_container;
public var floors_switch_mc:floors_switch;
public var accessories_mc:accessories_container;
public var switch_attractor_mc:MovieClip;
public var bottom_panel_mc:MovieClip;
public var baby_switch_mc:baby_switch;
public var accessories_switch_mc:accessories_switch;
public var mouse_mc:MovieClip;
public var print_mc:MovieClip;
public var top_bar_mc:MovieClip;
public var furniture_switch_mc:furniture_switch;
public var baby_mc:CaucasianToddler;
public var windows_switch_mc:windows_switch;
public var restart_mc:MovieClip;
public var backgrounds_switch_mc:bg_switch;
public var windows_mc:windows_container;
public var lights_switch_mc:lights_switch;
public var floors_mc:floors_container;
public var lights_mc:lights_container;
public function main_view_contents_2(){
addFrameScript(0, frame1);
}
function frame1(){
}
}
}//package designANursery_fla
Section 17
//mobile_152 (designANursery_fla.mobile_152)
package designANursery_fla {
import flash.display.*;
public dynamic class mobile_152 extends MovieClip {
public var character_02:MovieClip;
public var character_01:MovieClip;
public var character_03:MovieClip;
public var character_04:MovieClip;
public var character_05:MovieClip;
}
}//package designANursery_fla
Section 18
//mobile_hanger_153 (designANursery_fla.mobile_hanger_153)
package designANursery_fla {
import flash.display.*;
public dynamic class mobile_hanger_153 extends MovieClip {
public var content_mc:icon_mc;
}
}//package designANursery_fla
Section 19
//picture_frame_238 (designANursery_fla.picture_frame_238)
package designANursery_fla {
import flash.display.*;
public dynamic class picture_frame_238 extends MovieClip {
public var frame_content_mc:icon_mc;
}
}//package designANursery_fla
Section 20
//PrintButton_494 (designANursery_fla.PrintButton_494)
package designANursery_fla {
import flash.display.*;
public dynamic class PrintButton_494 extends MovieClip {
public function PrintButton_494(){
addFrameScript(0, frame1, 9, frame10, 16, frame17, 25, frame26, 36, frame37, 44, frame45);
}
function frame10(){
play();
}
function frame1(){
stop();
}
function frame26(){
stop();
}
function frame17(){
stop();
}
function frame37(){
play();
}
function frame45(){
gotoAndStop("off");
}
}
}//package designANursery_fla
Section 21
//rays_165 (designANursery_fla.rays_165)
package designANursery_fla {
import flash.display.*;
public dynamic class rays_165 extends MovieClip {
public function rays_165(){
addFrameScript(20, frame21);
}
function frame21(){
stop();
}
}
}//package designANursery_fla
Section 22
//rug_160 (designANursery_fla.rug_160)
package designANursery_fla {
import flash.display.*;
public dynamic class rug_160 extends MovieClip {
public var hint_mc:MovieClip;
public var character_01_tint:icon_mc;
public var character_01_shadow:icon_mc;
public var baby_wrapper_mc:MovieClip;
public var character_01:icon_mc;
public function rug_160(){
addFrameScript(0, frame1, 9, frame10, 19, frame20, 29, frame30);
}
function frame10(){
stop();
}
function frame1(){
stop();
}
function frame20(){
stop();
}
function frame30(){
stop();
}
}
}//package designANursery_fla
Section 23
//scooter_wrapper_269 (designANursery_fla.scooter_wrapper_269)
package designANursery_fla {
import flash.media.*;
import flash.events.*;
import flash.display.*;
import flash.geom.*;
import flash.utils.*;
import flash.printing.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.net.*;
import flash.system.*;
import flash.text.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class scooter_wrapper_269 extends MovieClip {
public var hint_mc:MovieClip;
public var baby_wrapper_mc:MovieClip;
public function scooter_wrapper_269(){
addFrameScript(0, frame1, 9, frame10, 19, frame20, 38, frame39, 54, frame55, 70, frame71, 82, frame83, 98, frame99, 114, frame115, 130, frame131, 142, frame143, 156, frame157);
}
function frame143(){
baby_wrapper_mc.baby_mc.stop();
}
function frame157(){
gotoAndPlay("active");
}
function frame71(){
baby_wrapper_mc.baby_mc.gotoAndPlay("furniture_3");
}
function frame10(){
stop();
}
function frame1(){
stop();
}
function frame83(){
baby_wrapper_mc.baby_mc.stop();
}
function frame20(){
stop();
}
function frame115(){
baby_wrapper_mc.baby_mc.gotoAndPlay("furniture_3");
}
function frame39(){
play();
baby_wrapper_mc.baby_mc.gotoAndPlay("furniture_3");
}
function frame99(){
baby_wrapper_mc.baby_mc.gotoAndPlay("furniture_3");
}
function frame131(){
baby_wrapper_mc.baby_mc.gotoAndPlay("furniture_3");
}
function frame55(){
baby_wrapper_mc.baby_mc.gotoAndPlay("furniture_3");
}
}
}//package designANursery_fla
Section 24
//sparkle_effect_163 (designANursery_fla.sparkle_effect_163)
package designANursery_fla {
import flash.display.*;
public dynamic class sparkle_effect_163 extends MovieClip {
public function sparkle_effect_163(){
addFrameScript(10, frame11);
}
function frame11(){
stop();
}
}
}//package designANursery_fla
Section 25
//starGlow_162 (designANursery_fla.starGlow_162)
package designANursery_fla {
import flash.display.*;
public dynamic class starGlow_162 extends MovieClip {
public var rays:MovieClip;
}
}//package designANursery_fla
Section 26
//playSound (utils.sound.playSound)
package utils.sound {
import flash.media.*;
import flash.utils.*;
public function playSound(_arg1:String, _arg2:Number=0, _arg3:int=0, _arg4:SoundTransform=null):SoundChannel{
var className = _arg1;
var startTime = _arg2;
var loops = _arg3;
var sndTransform = _arg4;
try {
return (new (getDefinitionByName(className)).play(startTime, loops, sndTransform));
} catch(error:Error) {
trace("-----------PLAY SOUND ERROR--------\n", error);
};
return (new SoundChannel());
}
}//package utils.sound
Section 27
//AbstractIntegratedActivity (AbstractIntegratedActivity)
package {
import flash.events.*;
import flash.display.*;
public class AbstractIntegratedActivity extends MovieClip {
public var ready_fn:Function;
private var _standaloneFramesWaited:uint;// = 0
public var standalone:Boolean;// = false
protected var _standaloneWaitFrames:uint;// = 24
private var _availability:Boolean;// = false
public var playmatePlay_fn:Function;
protected var _gameType:String;
protected var _loaderParameters:Object;
protected var onAnimationComplete_fn:Function;
public function AbstractIntegratedActivity(_arg1="default"){
standalone = false;
_availability = false;
_standaloneFramesWaited = 0;
_standaloneWaitFrames = 24;
super();
_gameType = _arg1;
announceAvailability();
checkLoadStatus();
}
protected function playmatePlay(_arg1:String, _arg2:Function=null):void{
var instruction = _arg1;
var animationCompleteCallBack = _arg2;
if (animationCompleteCallBack != null){
onAnimationComplete_fn = animationCompleteCallBack;
};
try {
playmatePlay_fn(instruction);
} catch(error:Error) {
handleAnimationComplete();
};
}
public function handleIrisOpeningEnd():void{
}
public function handleIrisOpeningBegin():void{
}
private function runStandalone():void{
announceAvailability();
loaderParameters = loaderInfo.parameters;
standalone = true;
handleIrisOpeningBegin();
handleIrisOpeningEnd();
}
public function get gameType():String{
return (_gameType);
}
public function get availability():Boolean{
return (_availability);
}
protected function onLoaderParameters():void{
}
private function announceAvailability():void{
_availability = true;
dispatchEvent(new Event(Event.COMPLETE));
}
public function handleAnimationComplete():void{
try {
onAnimationComplete_fn();
onAnimationComplete_fn = null;
} catch(error:Error) {
};
}
private function checkLoadStatus():void{
if ((((loaderInfo.bytesLoaded == loaderInfo.bytesTotal)) && ((loaderInfo.bytesLoaded > 10)))){
onLoadComplete();
} else {
loaderInfo.addEventListener(Event.COMPLETE, onLoadComplete, false, int.MAX_VALUE);
};
}
protected function onLoadComplete(_arg1:Event=null):void{
var event = _arg1;
announceAvailability();
loaderInfo.removeEventListener(Event.COMPLETE, onLoadComplete);
try {
ready_fn();
} catch(error:Error) {
addEventListener(Event.ENTER_FRAME, standaloneCheck);
};
}
public function set loaderParameters(_arg1:Object):void{
_loaderParameters = _arg1;
onLoaderParameters();
}
private function standaloneCheck(_arg1:Event):void{
var event = _arg1;
_standaloneFramesWaited++;
try {
ready_fn();
removeEventListener(Event.ENTER_FRAME, standaloneCheck);
return;
} catch(error:Error) {
if (_standaloneFramesWaited > _standaloneWaitFrames){
removeEventListener(Event.ENTER_FRAME, standaloneCheck);
runStandalone();
};
};
}
}
}//package
Section 28
//accessories_container (accessories_container)
package {
public dynamic class accessories_container extends AccessoriesClip {
}
}//package
Section 29
//accessories_switch (accessories_switch)
package {
public dynamic class accessories_switch extends SwitchClip {
}
}//package
Section 30
//AccessoriesClip (AccessoriesClip)
package {
import flash.events.*;
import flash.display.*;
public class AccessoriesClip extends SwitchableClip {
public var mobile_mc:MovieClip;
protected var _useTargetHinting:Boolean;// = false
public var rug:MovieClip;
public var picture_frame_mc:MovieClip;
public function AccessoriesClip(){
_useTargetHinting = false;
trace(("AccessoriesClip() - this.name == " + this.name));
super();
_switchableSubclips = [SwitchableClip(mobile_mc.character_01.content_mc), SwitchableClip(mobile_mc.character_02.content_mc), SwitchableClip(mobile_mc.character_03.content_mc), SwitchableClip(mobile_mc.character_04.content_mc), SwitchableClip(mobile_mc.character_05.content_mc), SwitchableClip(picture_frame_mc.frame_content_mc), SwitchableClip(rug.character_01_tint), SwitchableClip(rug.character_01), SwitchableClip(rug.character_01_shadow)];
}
protected function unhighlight_ef(_arg1:Event):void{
if (attemptUnhilight()){
removeEventListener(Event.ENTER_FRAME, unhighlight_ef, false);
};
}
public function playBaby():void{
trace("AccessoriesClip - playBaby()");
BabyClip(rug.baby_wrapper_mc.baby_mc).playRugAnimation();
rug.gotoAndPlay("active");
}
public function unhighlight(_arg1:Boolean=false):void{
_useTargetHinting = _arg1;
if (!attemptUnhilight()){
addEventListener(Event.ENTER_FRAME, unhighlight_ef, false, 0, true);
};
}
public function get rugView():MovieClip{
return (rug);
}
override public function set index(_arg1:uint):void{
super.index = _arg1;
}
protected function attemptUnhilight():Boolean{
if (rug){
if (_useTargetHinting){
rug.gotoAndStop("hint");
} else {
rug.gotoAndStop("default");
};
rug.hint_mc.mouseEnabled = false;
return (true);
//unresolved jump
};
return (false);
}
public function highlight(_arg1:Boolean=false):void{
rug.hint_mc.visible = _arg1;
if (_arg1){
rug.hint_mc.gotoAndPlay("animate");
};
rug.gotoAndStop("rollover");
}
public function set babyClothesIndex(_arg1:uint):void{
BabyClip(rug.baby_wrapper_mc.baby_mc).index = _arg1;
}
override protected function optimize():Boolean{
var _local1:Boolean;
_local1 = super.optimize();
unhighlight();
return (_local1);
}
}
}//package
Section 31
//baby_switch (baby_switch)
package {
public dynamic class baby_switch extends SwitchClip {
}
}//package
Section 32
//BabyClip (BabyClip)
package {
public class BabyClip extends SwitchableClip {
private const LAUGH_AND_CLAP:String = "laugh_and_clap";
private const RUG:String = "rug";
private const DEFAULT_POSE:String = "default pose LOOP";
public var side_body:SwitchableClip;
public var body:SwitchableClip;
public function playFurnitureAnimation(_arg1:uint):void{
gotoAndPlay(("furniture_" + _arg1.toString()));
}
public function laughAndClap():void{
gotoAndPlay(LAUGH_AND_CLAP);
}
public function defaultPose():void{
gotoAndPlay(DEFAULT_POSE);
}
override public function set index(_arg1:uint):void{
trace(("BabyClip - set index() - value == " + _arg1));
SwitchableClip(body).index = _arg1;
SwitchableClip(side_body).index = _arg1;
}
public function playRugAnimation():void{
gotoAndPlay(RUG);
}
}
}//package
Section 33
//backgrounds_container (backgrounds_container)
package {
public dynamic class backgrounds_container extends SwitchableClip {
public function backgrounds_container(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5);
}
function frame3(){
stop();
}
function frame1(){
stop();
}
function frame5(){
stop();
}
function frame2(){
stop();
}
function frame4(){
stop();
}
}
}//package
Section 34
//bg_switch (bg_switch)
package {
public dynamic class bg_switch extends SwitchClip {
}
}//package
Section 35
//CaucasianToddler (CaucasianToddler)
package {
public dynamic class CaucasianToddler extends BabyClip {
public function CaucasianToddler(){
addFrameScript(0, frame1, 39, frame40, 169, frame170, 170, frame171, 265, frame266, 266, frame267, 293, frame294, 294, frame295, 383, frame384, 384, frame385, 509, frame510, 510, frame511, 584, frame585, 585, frame586, 600, frame601);
}
function frame385(){
play();
}
function frame601(){
gotoAndPlay("furniture_3");
}
function frame171(){
play();
}
function frame295(){
play();
}
function frame170(){
gotoAndPlay("default pose LOOP");
}
function frame586(){
play();
}
function frame1(){
stop();
}
function frame294(){
gotoAndPlay("sleep loop");
}
function frame510(){
gotoAndPlay("rug");
}
function frame511(){
play();
}
function frame40(){
gotoAndPlay("default pose LOOP");
}
function frame585(){
gotoAndPlay("furniture_1");
}
function frame266(){
stop();
}
function frame267(){
play();
}
function frame384(){
stop();
}
}
}//package
Section 36
//CrySound (CrySound)
package {
import flash.media.*;
public dynamic class CrySound extends Sound {
}
}//package
Section 37
//DesignANursery (DesignANursery)
package {
import flash.events.*;
public class DesignANursery extends AbstractIntegratedActivity {
private var _mainView:MainView;
private var _gameController:GameController;
public function DesignANursery(){
super(GameType.CREATIVE);
}
override public function handleIrisOpeningBegin():void{
_mainView = new MainView();
addChildAt(_mainView, 0);
playmatePlay("gameStart");
_gameController = new GameController();
_gameController.addEventListener(GameController.GAME_FINISHED, gameComplete, false, 0, true);
_gameController.view = _mainView;
_gameController.playmatePlay_fn = playmatePlay;
_gameController.init();
_gameController.start();
}
private function gameComplete(_arg1:Event):void{
trace("DesignANursery - gameComplete()");
_gameController.start();
}
public function assignAnimationCompleteHandler(_arg1:Function):void{
onAnimationComplete_fn = _arg1;
}
}
}//package
Section 38
//dress_1 (dress_1)
package {
public dynamic class dress_1 extends SwitchableClip {
public function dress_1(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5);
}
function frame3(){
stop();
}
function frame1(){
stop();
}
function frame5(){
stop();
}
function frame2(){
stop();
}
function frame4(){
stop();
}
}
}//package
Section 39
//EatSound (EatSound)
package {
import flash.media.*;
public dynamic class EatSound extends Sound {
}
}//package
Section 40
//floors_container (floors_container)
package {
public dynamic class floors_container extends SwitchableClip {
public function floors_container(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5);
}
function frame3(){
stop();
}
function frame1(){
stop();
}
function frame5(){
stop();
}
function frame2(){
stop();
}
function frame4(){
stop();
}
}
}//package
Section 41
//floors_switch (floors_switch)
package {
public dynamic class floors_switch extends SwitchClip {
}
}//package
Section 42
//furniture_container (furniture_container)
package {
public dynamic class furniture_container extends FurnitureClip {
public function furniture_container(){
addFrameScript(0, frame1, 10, frame11, 20, frame21, 30, frame31, 40, frame41);
}
function frame1(){
stop();
}
function frame21(){
stop();
}
function frame31(){
stop();
}
function frame11(){
stop();
}
function frame41(){
stop();
}
}
}//package
Section 43
//furniture_switch (furniture_switch)
package {
public dynamic class furniture_switch extends SwitchClip {
}
}//package
Section 44
//FurnitureClip (FurnitureClip)
package {
import flash.events.*;
import flash.display.*;
public class FurnitureClip extends SwitchableClip {
public var target_mc:MovieClip;
protected var _useTargetHinting:Boolean;// = false
public var hitarea_mc:MovieClip;
public function FurnitureClip(){
_useTargetHinting = false;
super();
}
protected function unhighlight_ef(_arg1:Event):void{
if (attemptUnhilight()){
removeEventListener(Event.ENTER_FRAME, unhighlight_ef, false);
};
}
public function unhighlight(_arg1:Boolean=false):void{
_useTargetHinting = _arg1;
if (!attemptUnhilight()){
addEventListener(Event.ENTER_FRAME, unhighlight_ef, false, 0, true);
};
}
public function playBaby():void{
BabyClip(target_mc.baby_wrapper_mc.baby_mc).playFurnitureAnimation(_index);
target_mc.gotoAndPlay("active");
}
override public function set index(_arg1:uint):void{
super.index = _arg1;
}
protected function attemptUnhilight():Boolean{
if (target_mc){
if (_useTargetHinting){
target_mc.gotoAndStop("hint");
} else {
target_mc.gotoAndStop("default");
};
target_mc.hint_mc.mouseEnabled = false;
return (true);
//unresolved jump
};
return (false);
}
public function highlight(_arg1:Boolean=false):void{
target_mc.hint_mc.visible = _arg1;
if (_arg1){
target_mc.hint_mc.gotoAndPlay("animate");
};
target_mc.gotoAndStop("rollover");
}
public function set babyClothesIndex(_arg1:uint):void{
BabyClip(target_mc.baby_wrapper_mc.baby_mc).index = _arg1;
}
override protected function optimize():Boolean{
var _local1:Boolean;
_local1 = super.optimize();
unhighlight();
return (_local1);
}
}
}//package
Section 45
//GameController (GameController)
package {
import flash.events.*;
import flash.display.*;
import utils.sound.*;
import flash.utils.*;
import flash.ui.*;
public class GameController extends MovieClip {
private var _mouseBabyOnHold:Boolean;// = false
private var _rugUsed:Boolean;// = false
private var _highlightHintingInEffect:Boolean;
private var _soundPlayedAfterLastChoice:Boolean;// = false
private var _configurationSteps:Array;
private var _restartButtonSpotlighted:Boolean;// = false
private var _view:MainView;
private var _playmatePlay_fn:Function;
private var _mouseBaby:Boolean;
private var _currentConfigurationStep:int;
private var _furnitureUsed:Boolean;// = false
public static const GAME_FINISHED:String = "gameFinished";
public function GameController(){
_mouseBabyOnHold = false;
_soundPlayedAfterLastChoice = false;
_furnitureUsed = false;
_rugUsed = false;
_restartButtonSpotlighted = false;
super();
}
private function removeBabyFromTarget():void{
startBabyTransport();
_view.rugHighlighting = true;
_view.furnitureHighlighting = true;
}
private function playmateWin():void{
_playmatePlay_fn("gameCompletedWon");
}
private function startConfigMode():void{
_view.baby.defaultPose();
_view.furnitureHighlighting = false;
_view.rugHighlighting = false;
_view.mouseHintVisible = false;
_highlightHintingInEffect = true;
_view.switchAttractorVisible = true;
setupConfigStep(_currentConfigurationStep);
}
public function init():void{
_configurationSteps = [{switchView:_view.floorsSwitch, targetView:_view.floors, hideAtStart:true}, {switchView:_view.backgroundsSwitch, targetView:_view.backgrounds, hideAtStart:true}, {switchView:_view.windowsSwitch, targetView:_view.windows, hideAtStart:true}, {switchView:_view.lightsSwitch, targetView:_view.lights, hideAtStart:true}, {switchView:_view.furnitureSwitch, targetView:_view.furniture, hideAtStart:true}, {switchView:_view.accessoriesSwitch, targetView:_view.accessories, hideAtStart:true}, {switchView:_view.babySwitch, targetView:_view.baby, hideAtStart:false}];
}
private function restart():void{
var _local1:uint;
var _local2:Switch;
trace(("GameController - goBackToConfigMode() - _currentConfigurationStep == " + _currentConfigurationStep));
_mouseBabyOnHold = false;
mouseBaby = false;
_view.revertBabyLocation();
_view.baby.visible = true;
_view.playmodeButtonsVisible = false;
_local1 = 0;
while (_local1 < _configurationSteps.length) {
_local2 = Switch(_configurationSteps[_local1].optionSwitch);
_local2.init(_configurationSteps[_local1].hideAtStart);
_local1++;
};
_view.addEventListener(MainView.CONFIG_MODE, backToConfigModeComplete, false, 0, true);
_view.transitionToConfigMode();
}
private function initConfigMode():void{
var _local1:uint;
var _local2:Switch;
_local1 = 0;
while (_local1 < _configurationSteps.length) {
_local2 = new Switch();
_local2.switchClip = _configurationSteps[_local1].switchView;
_local2.target = _configurationSteps[_local1].targetView;
_local2.init(_configurationSteps[_local1].hideAtStart);
_local2.highlight_fn = highlightThumbnail;
_local2.unhighlight_fn = unhighlightThumbnail;
if (_configurationSteps[_local1].switchView == _view.babySwitch){
_local2.select_fn = babySwitchSelect;
} else {
_local2.select_fn = switchSelect;
};
_configurationSteps[_local1].optionSwitch = _local2;
_local1++;
};
_currentConfigurationStep = 0;
_view.playmodeButtonsVisible = false;
}
private function set mouseBaby(_arg1:Boolean):void{
trace(("GameController - set mouseBaby() value == " + _arg1));
if (!_arg1){
_view.dispatchEvent(new Event("enable_hand_cursor", true, true));
_view.removeEventListener(Event.ENTER_FRAME, mouseBaby_ef, false);
Mouse.show();
} else {
_view.dispatchEvent(new Event("disable_hand_cursor", true, true));
_view.addEventListener(Event.ENTER_FRAME, mouseBaby_ef, false, 0, true);
Mouse.hide();
};
_mouseBaby = _arg1;
}
private function playmodeTargetOver(_arg1:Event):void{
if (_highlightHintingInEffect){
_view.mouseHintVisible = true;
};
}
private function mouseBaby_ef(_arg1:Event):void{
_view.baby.x = (_view.baby.parent.mouseX - (_view.baby.width / 2));
_view.baby.y = (_view.baby.parent.mouseY - (_view.baby.height / 2));
}
private function switchSelect(_arg1:uint):void{
_currentConfigurationStep++;
setupConfigStep(_currentConfigurationStep);
if (_currentConfigurationStep == _configurationSteps.length){
gotoPlayMode();
};
_view.baby.laughAndClap();
_highlightHintingInEffect = false;
_view.mouseHintVisible = false;
playmateScoreSuccess();
}
private function playmodeButtonOver(_arg1:Event):void{
_mouseBabyOnHold = _mouseBaby;
_view.baby.visible = false;
mouseBaby = false;
}
private function gameComplete():void{
this.dispatchEvent(new Event(GameController.GAME_FINISHED));
}
private function spotlightRestartIfApplicable():void{
if (((((_furnitureUsed) && (_rugUsed))) && (!(_restartButtonSpotlighted)))){
_restartButtonSpotlighted = true;
_view.spotlightRestartButton();
};
}
public function start():void{
newGame();
}
private function rugClick(_arg1:Event):void{
trace("GameController - rugClick()");
_view.targetHinting = false;
if (_view.rugBaby){
removeBabyFromTarget();
} else {
_rugUsed = true;
spotlightRestartIfApplicable();
mouseBaby = false;
_view.baby.visible = false;
_view.rugHighlighting = false;
_view.furnitureHighlighting = true;
_view.playRugBaby();
playmateScoreSuccess();
playSound("InteractiveSound");
};
_highlightHintingInEffect = false;
}
public function deconstruct():void{
var _local1:uint;
_view.removeEventListener(MainView.RESTART, restartButtonClick, false);
_view.removeEventListener(Event.ENTER_FRAME, mouseBaby_ef, false);
_view.deconstruct();
_view = null;
_local1 = 0;
while (_local1 < _configurationSteps.length) {
_configurationSteps[_local1].switchView.deconstruct();
_configurationSteps[_local1].switchView = null;
_configurationSteps[_local1].targetView.deconstruct();
_configurationSteps[_local1].targetView = null;
_configurationSteps[_local1].optionSwitch.deconstruct();
_configurationSteps[_local1].optionSwitch = null;
_local1++;
};
_configurationSteps = null;
}
public function set view(_arg1:MainView):void{
_view = _arg1;
_view.addEventListener(MainView.RESTART, restartButtonClick, false, 0, true);
_view.addEventListener(MainView.PRINT, printButtonClick, false, 0, true);
_view.addEventListener(MainView.PLAYMODE_BUTTON_OVER, playmodeButtonOver, false, 0, true);
_view.addEventListener(MainView.PLAYMODE_BUTTON_OUT, playmodeButtonOut, false, 0, true);
}
public function set playmatePlay_fn(_arg1:Function):void{
_playmatePlay_fn = _arg1;
}
override public function set enabled(_arg1:Boolean):void{
super.enabled = _arg1;
}
private function highlightThumbnail(_arg1:uint):void{
_view.highlightSwitch(_arg1);
if (_highlightHintingInEffect){
_view.mouseHintVisible = true;
};
_view.switchAttractorVisible = false;
}
private function setupConfigStep(_arg1:int=-1):void{
var _local2:uint;
_local2 = 0;
while (_local2 < _configurationSteps.length) {
_configurationSteps[_local2].switchView.visible = (_local2 == _arg1);
_local2++;
};
}
private function printButtonClick(_arg1:Event):void{
trace("PRINT");
_view.print(new (getDefinitionByName("PrintOut")));
}
private function babySwitchSelect(_arg1:uint):void{
_view.accessories.babyClothesIndex = _arg1;
_view.furniture.babyClothesIndex = _arg1;
switchSelect(_arg1);
}
private function setupPlayMode():void{
_view.playmodeButtonsVisible = true;
_view.recordBabyLocation();
_view.furnitureHighlighting = true;
_view.rugHighlighting = true;
_view.targetHinting = true;
_view.beginPlayMode();
_view.addEventListener(MainView.FURNITURE_CLICK, furnitureClick, false, 0, true);
_view.addEventListener(MainView.RUG_CLICK, rugClick, false, 0, true);
_view.addEventListener(MainView.PLAYMODE_TARGET_OVER, playmodeTargetOver, false, 0, true);
_view.addEventListener(MainView.PLAYMODE_TARGET_OUT, playmodeTargetOut, false, 0, true);
startBabyTransport();
_highlightHintingInEffect = true;
_furnitureUsed = false;
_rugUsed = false;
_restartButtonSpotlighted = false;
}
private function startBabyTransport():void{
mouseBaby = true;
_view.baby.defaultPose();
_view.baby.visible = true;
}
private function gotoPlayMode():void{
_view.addEventListener(MainView.PLAY_MODE, gotoPlayModeComplete, false, 0, true);
_view.transitionToPlayMode();
}
private function newGame():void{
_view.targetHinting = false;
initConfigMode();
startConfigMode();
}
private function furnitureClick(_arg1:Event):void{
trace("GameController - furnitureClick()");
_view.targetHinting = false;
if (_view.furnitureBaby){
removeBabyFromTarget();
} else {
_furnitureUsed = true;
spotlightRestartIfApplicable();
mouseBaby = false;
_view.baby.visible = false;
_view.furnitureHighlighting = false;
_view.rugHighlighting = true;
_view.playFurnitureBaby();
playmateScoreSuccess();
playSound("InteractiveSound");
};
_highlightHintingInEffect = false;
}
private function playmateEncouragement():void{
trace((">>>>>>>>> GameController - playmateEncouragement() - _playmatePlay_fn==" + _playmatePlay_fn));
if (!_soundPlayedAfterLastChoice){
_soundPlayedAfterLastChoice = true;
_playmatePlay_fn("missFailure");
} else {
_soundPlayedAfterLastChoice = false;
};
}
private function playmodeButtonOut(_arg1:Event):void{
Mouse.show();
if (_mouseBabyOnHold){
mouseBaby = true;
_view.baby.visible = true;
};
}
private function gotoPlayModeComplete(_arg1:Event):void{
_view.removeEventListener(MainView.CONFIG_MODE, gotoPlayModeComplete, false);
setupPlayMode();
}
private function playmodeTargetOut(_arg1:Event):void{
_view.mouseHintVisible = false;
}
private function backToConfigModeComplete(_arg1:Event):void{
_view.removeEventListener(MainView.CONFIG_MODE, backToConfigModeComplete, false);
_currentConfigurationStep = 0;
startConfigMode();
}
private function restartButtonClick(_arg1:Event):void{
restart();
}
private function unhighlightThumbnail(_arg1:uint):void{
_view.unhighlightSwitch();
_view.mouseHintVisible = false;
if (_highlightHintingInEffect){
_view.switchAttractorVisible = true;
};
}
private function playmateScoreSuccess():void{
trace(">>>>>>>>> GameController - playmateScoreSuccess()");
if (!_soundPlayedAfterLastChoice){
_soundPlayedAfterLastChoice = true;
_playmatePlay_fn("creativeResponse");
} else {
_soundPlayedAfterLastChoice = false;
};
}
}
}//package
Section 46
//GameType (GameType)
package {
public class GameType {
public static const CREATIVE:String = "game_type_creative";
public static const SCORING:String = "game_type_scoring";
}
}//package
Section 47
//icon_mc (icon_mc)
package {
public dynamic class icon_mc extends SwitchableClip {
public function icon_mc(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5);
}
function frame3(){
stop();
}
function frame1(){
stop();
}
function frame5(){
stop();
}
function frame2(){
stop();
}
function frame4(){
stop();
}
}
}//package
Section 48
//InteractiveSound (InteractiveSound)
package {
import flash.media.*;
public dynamic class InteractiveSound extends Sound {
}
}//package
Section 49
//LaughASound (LaughASound)
package {
import flash.media.*;
public dynamic class LaughASound extends Sound {
}
}//package
Section 50
//LaughBSound (LaughBSound)
package {
import flash.media.*;
public dynamic class LaughBSound extends Sound {
}
}//package
Section 51
//LaughCSound (LaughCSound)
package {
import flash.media.*;
public dynamic class LaughCSound extends Sound {
}
}//package
Section 52
//LaughDSound (LaughDSound)
package {
import flash.media.*;
public dynamic class LaughDSound extends Sound {
}
}//package
Section 53
//LaughESound (LaughESound)
package {
import flash.media.*;
public dynamic class LaughESound extends Sound {
}
}//package
Section 54
//lights_container (lights_container)
package {
public dynamic class lights_container extends SwitchableClip {
public function lights_container(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5);
}
function frame3(){
stop();
}
function frame1(){
stop();
}
function frame5(){
stop();
}
function frame2(){
stop();
}
function frame4(){
stop();
}
}
}//package
Section 55
//lights_switch (lights_switch)
package {
public dynamic class lights_switch extends SwitchClip {
}
}//package
Section 56
//MainLoopSound (MainLoopSound)
package {
import flash.media.*;
public dynamic class MainLoopSound extends Sound {
}
}//package
Section 57
//MainView (MainView)
package {
import flash.media.*;
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import flash.geom.*;
import utils.sound.*;
import flash.utils.*;
import flash.printing.*;
public class MainView extends MovieClip {
private const PLAYMODE_BUTTON_OUT_FRAME:String = "out";
private const PLAYMODE_BUTTON_IN_FRAME:String = "in";
private const TO_CONFIG_MODE:String = "to_config_mode";
private const TO_PLAY_MODE:String = "to_play_mode";
private const PLAYMODE_BUTTON_OVER_FRAME:String = "over";
private const PLAYMODE_BUTTON_ON_FRAME:String = "on";
private const PLAYMODE_BUTTON_OFF_FRAME:String = "off";
private var _printYOffest:Number;// = -60
private var _bitmapWidth:int;// = 715
private var _soundOnTransform:SoundTransform;
private var _rugBaby:Boolean;// = false
public var switch_attractor_mc:MovieClip;
private var _rugHighlightDelayStartTime:int;
private var _victorySoundOnTransform:SoundTransform;
private var _mainSoundOutComplete:Boolean;// = false
private var _victorySoundOffTransform:SoundTransform;
private var _soundOffTransform:SoundTransform;
private var _highlightLeftX:Number;// = 184.5
private var _highlightXSpacing:Number;// = 116.75
private var _victorySoundOutComplete:Boolean;// = false
private var _bitmapHeight:int;// = 385
public var content_mc:MovieClip;
private var _targetHinting:Boolean;// = false
private var _victorySoundOnTransformVolume:Number;// = 0.5
private var _victorySoundChannel:SoundChannel;
private var _babyConfigModeLocation:Point;
public var mouse_mc:MovieClip;
private var _rugHighlightDelaySeconds:Number;// = 1
private var _soundOnTransformVolume:Number;// = 0.5
private var _mainSoundChannel:SoundChannel;
private var _furnitureBaby:Boolean;// = false
public static const CONFIG_MODE:String = "config_mode";
public static const PLAYMODE_TARGET_OUT:String = "playmode_target_out";
public static const PLAYMODE_TARGET_OVER:String = "playmode_target_over";
public static const PRINT:String = "print";
public static const PLAY_MODE:String = "play_mode";
public static const RESTART:String = "restart";
public static const RUG_CLICK:String = "rug_click";
public static const PLAYMODE_BUTTON_OUT:String = "playmode_button_out";
public static const PLAYMODE_BUTTON_OVER:String = "playmode_button_over";
public static const FURNITURE_CLICK:String = "furniture_click";
public static const BABY_CLICK:String = "baby_click";
public function MainView(){
_furnitureBaby = false;
_rugBaby = false;
_targetHinting = false;
_highlightLeftX = 184.5;
_highlightXSpacing = 116.75;
_bitmapWidth = 715;
_bitmapHeight = 385;
_printYOffest = -60;
_rugHighlightDelaySeconds = 1;
_mainSoundOutComplete = false;
_soundOnTransformVolume = 0.5;
_soundOnTransform = new SoundTransform(0.25, 0);
_soundOffTransform = new SoundTransform(0, 0);
_victorySoundOutComplete = false;
_victorySoundOnTransformVolume = 0.5;
_victorySoundOnTransform = new SoundTransform(0.25, 0);
_victorySoundOffTransform = new SoundTransform(0, 0);
addFrameScript(0, frame1, 9, frame10, 19, frame20, 20, frame21, 29, frame30);
super();
backgroundsSwitch.construct();
windowsSwitch.construct();
furnitureSwitch.construct();
babySwitch.construct();
accessoriesSwitch.construct();
lightsSwitch.construct();
floorsSwitch.construct();
content_mc.restart_mc.mouseChildren = false;
content_mc.restart_mc.addEventListener(MouseEvent.CLICK, restartButtonClick, false, 0, true);
content_mc.restart_mc.addEventListener(MouseEvent.MOUSE_OVER, playmodeButtonOver, false, 0, true);
content_mc.restart_mc.addEventListener(MouseEvent.MOUSE_OUT, playmodeButtonOut, false, 0, true);
content_mc.print_mc.mouseChildren = false;
content_mc.print_mc.addEventListener(MouseEvent.CLICK, printButtonClick, false, 0, true);
content_mc.print_mc.addEventListener(MouseEvent.MOUSE_OVER, playmodeButtonOver, false, 0, true);
content_mc.print_mc.addEventListener(MouseEvent.MOUSE_OUT, playmodeButtonOut, false, 0, true);
playmodeButtonsActive = false;
content_mc.highlight_mc.visible = false;
content_mc.highlight_mc.mouseEnabled = false;
baby.mouseEnabled = false;
baby.mouseChildren = false;
mouseHintVisible = false;
content_mc.mouse_mc.mouseEnabled = false;
content_mc.mouse_mc.mouseChildren = false;
switchAttractorVisible = false;
content_mc.switch_attractor_mc.mouseEnabled = false;
content_mc.switch_attractor_mc.mouseChildren = false;
_mainSoundChannel = playSound("MainLoopSound", 0, int.MAX_VALUE, _soundOnTransform);
addEventListener(Event.ENTER_FRAME, optimize_ef, false, 0, true);
}
public function get floorsSwitch():SwitchClip{
return (content_mc.floors_switch_mc);
}
public function set mouseHintVisible(_arg1:Boolean):void{
this.content_mc.mouse_mc.visible = _arg1;
}
private function transitionToPlayMode_ef(_arg1:Event):void{
trace(("MainView - transitionToPlayMode_ef() - currentLabel==" + currentLabel));
if (currentLabel == PLAY_MODE){
this.removeEventListener(Event.ENTER_FRAME, transitionToPlayMode_ef, false);
this.dispatchEvent(new Event(PLAY_MODE));
fadeMainSoundDown();
fadeVictorySoundUp();
_victorySoundChannel = playSound("VictorySound", 0, int.MAX_VALUE, _soundOffTransform);
};
}
public function get lights():SwitchableClip{
return (content_mc.lights_mc);
}
public function get floors():SwitchableClip{
return (content_mc.floors_mc);
}
function frame10(){
play();
}
private function transitionToConfigMode_ef(_arg1:Event):void{
if (currentLabel == CONFIG_MODE){
this.removeEventListener(Event.ENTER_FRAME, transitionToConfigMode_ef, false);
this.dispatchEvent(new Event(CONFIG_MODE));
};
}
public function set targetHinting(_arg1:Boolean):void{
_targetHinting = _arg1;
}
function frame1(){
stop();
}
private function playmodeButtons_ef(_arg1:Event):void{
if (content_mc.restart_mc.currentLabel == PLAYMODE_BUTTON_ON_FRAME){
this.removeEventListener(Event.ENTER_FRAME, playmodeButtons_ef, false);
playmodeButtonsActive = true;
};
}
function frame21(){
play();
}
public function get victorySoundOnTranformVolume():Number{
return (_victorySoundOnTransformVolume);
}
private function beginPlayMode_ef(_arg1:Event):void{
if (((getTimer() - _rugHighlightDelayStartTime) / 1000) > _rugHighlightDelaySeconds){
removeEventListener(Event.ENTER_FRAME, beginPlayMode_ef, false);
rugHighlight();
rugUnhighlight();
};
}
public function get windows():SwitchableClip{
return (content_mc.windows_mc);
}
public function get accessoriesSwitch():SwitchClip{
return (content_mc.accessories_switch_mc);
}
public function set backButtonVisible(_arg1:Boolean):void{
content_mc.back_mc.visible = _arg1;
}
private function rugHighlight(_arg1:Event=null):void{
accessories.highlight(_targetHinting);
dispatchEvent(new Event(MainView.PLAYMODE_TARGET_OVER));
}
function frame30(){
gotoAndStop("config_mode");
}
private function printButtonClick(_arg1:Event):void{
dispatchEvent(new Event(MainView.PRINT));
}
public function get backgroundsSwitch():SwitchClip{
return (content_mc.backgrounds_switch_mc);
}
public function deconstruct():void{
removeEventListener(Event.ENTER_FRAME, playmodeButtons_ef, false);
removeEventListener(Event.ENTER_FRAME, transitionToPlayMode_ef, false);
removeEventListener(Event.ENTER_FRAME, transitionToConfigMode_ef, false);
removeEventListener(Event.ENTER_FRAME, optimize_ef, false);
content_mc.restart_mc.removeEventListener(MouseEvent.CLICK, restartButtonClick, false);
content_mc.restart_mc.removeEventListener(MouseEvent.MOUSE_OVER, playmodeButtonOver, false);
content_mc.restart_mc.removeEventListener(MouseEvent.MOUSE_OUT, playmodeButtonOut, false);
content_mc.print_mc.removeEventListener(MouseEvent.CLICK, printButtonClick, false);
content_mc.print_mc.removeEventListener(MouseEvent.MOUSE_OVER, playmodeButtonOver, false);
content_mc.print_mc.removeEventListener(MouseEvent.MOUSE_OUT, playmodeButtonOut, false);
furniture.removeEventListener(MouseEvent.MOUSE_OVER, furnitureHighlight, false);
furniture.removeEventListener(MouseEvent.MOUSE_OUT, furnitureUnhighlight, false);
furniture.removeEventListener(MouseEvent.CLICK, furnitureClick, false);
accessories.rugView.removeEventListener(MouseEvent.MOUSE_OVER, rugHighlight, false);
accessories.rugView.removeEventListener(MouseEvent.MOUSE_OUT, rugUnhighlight, false);
accessories.rugView.removeEventListener(MouseEvent.CLICK, rugClick, false);
}
public function set rugHighlighting(_arg1:Boolean):void{
setRugBaby(false);
if (_arg1){
accessories.rugView.mouseEnabled = true;
accessories.rugView.addEventListener(MouseEvent.MOUSE_OVER, rugHighlight, false, 0, true);
accessories.rugView.addEventListener(MouseEvent.MOUSE_OUT, rugUnhighlight, false, 0, true);
accessories.rugView.addEventListener(MouseEvent.CLICK, rugClick, false, 0, true);
rugUnhighlight();
} else {
accessories.rugView.removeEventListener(MouseEvent.MOUSE_OVER, rugHighlight, false);
accessories.rugView.removeEventListener(MouseEvent.MOUSE_OUT, rugUnhighlight, false);
rugUnhighlight();
};
}
private function setFurnitureBaby(_arg1:Boolean):void{
_furnitureBaby = _arg1;
_rugBaby = false;
trace(((("----------> _furnitureBaby == " + _furnitureBaby) + " - _rugBaby == ") + _rugBaby));
}
private function set playmodeButtonsActive(_arg1:Boolean):void{
content_mc.restart_mc.mouseEnabled = _arg1;
content_mc.print_mc.mouseEnabled = _arg1;
}
public function print(_arg1:MovieClip):void{
var _local2:BitmapData;
var _local3:Bitmap;
var _local4:Number;
var _local5:Number;
var _local6:PrintJob;
var _local7:Boolean;
var _local8:Matrix;
var _local9:PrintJobOptions;
_local6 = new PrintJob();
if (_local6.start()){
_local7 = this.baby.visible;
this.baby.visible = false;
this.y = (this.y + _printYOffest);
playmodeButtonVisibility = false;
_local8 = new Matrix();
_local8.translate(0, _printYOffest);
this.content_mc.bottom_panel_mc.visible = false;
_local2 = new BitmapData(_bitmapWidth, _bitmapHeight, true, 0);
_local3 = new Bitmap(_local2);
_local2.draw(this, _local8);
this.baby.visible = _local7;
this.y = (this.y - _printYOffest);
playmodeButtonVisibility = true;
this.content_mc.bottom_panel_mc.visible = true;
_arg1.addChild(_local3);
if (_local6.orientation == PrintJobOrientation.LANDSCAPE){
_arg1.rotation = 90;
_local3.rotation = -90;
_local5 = Math.min((_arg1.drawArea.width / _local3.width), (_arg1.drawArea.height / _local3.height));
_local3.scaleX = _local5;
_local3.scaleY = _local5;
_local3.x = (_arg1.drawArea.getRect(_arg1).left + ((_arg1.drawArea.getRect(_arg1).width - _local3.width) >> 1));
_local3.y = _arg1.drawArea.getRect(_arg1).bottom;
_arg1.removeChild(_arg1.drawArea);
} else {
_local5 = Math.min((_arg1.drawArea.width / _local3.height), (_arg1.drawArea.height / _local3.width));
_local3.scaleX = _local5;
_local3.scaleY = _local5;
_local3.rotation = -90;
_local3.x = (_arg1.drawArea.getRect(_arg1).left + ((_arg1.drawArea.getRect(_arg1).width - _local3.width) >> 1));
_local3.y = _arg1.drawArea.getRect(_arg1).bottom;
_arg1.removeChild(_arg1.drawArea);
_local4 = Math.min((_local6.pageWidth / _arg1.width), (_local6.pageHeight / _arg1.height));
_arg1.scaleX = _local4;
_arg1.scaleY = _local4;
};
_local9 = new PrintJobOptions();
addChild(_arg1);
_local6.addPage(_arg1, null, _local9);
_local6.send();
removeChild(_arg1);
};
}
public function revertBabyLocation():void{
baby.x = _babyConfigModeLocation.x;
baby.y = _babyConfigModeLocation.y;
}
private function setRugBaby(_arg1:Boolean):void{
_rugBaby = _arg1;
_furnitureBaby = false;
}
private function furnitureClick(_arg1:Event):void{
this.dispatchEvent(new Event(FURNITURE_CLICK));
switch (_arg1.currentTarget.currentLabel){
case "option_0":
playSound("EatSound");
break;
case "option_1":
playSound("LaughASound");
break;
case "option_2":
playSound("SleepSound");
break;
case "option_3":
playSound("LaughESound");
break;
case "option_4":
playSound("CrySound");
break;
};
}
public function beginPlayMode():void{
furnitureHighlight();
furnitureUnhighlight();
_rugHighlightDelayStartTime = getTimer();
addEventListener(Event.ENTER_FRAME, beginPlayMode_ef, false, 0, true);
furniture.buttonMode = true;
furniture.useHandCursor = true;
accessories.rugView.buttonMode = true;
accessories.rugView.useHandCursor = true;
}
public function set victorySoundOnTranformVolume(_arg1:Number):void{
_victorySoundOnTransformVolume = _arg1;
_victorySoundOnTransform = new SoundTransform(_victorySoundOnTransformVolume, 0);
_victorySoundChannel.soundTransform = _victorySoundOnTransform;
}
public function transitionToConfigMode():void{
this.addEventListener(Event.ENTER_FRAME, transitionToConfigMode_ef, false, 0, true);
this.gotoAndPlay(TO_CONFIG_MODE);
}
public function get baby():BabyClip{
return (content_mc.baby_mc);
}
public function set playmodeButtonsVisible(_arg1:Boolean):void{
trace(("MainView - playmodeButtonsVisible() value == " + _arg1));
if (_arg1){
this.playmodeButtonVisibility = true;
content_mc.restart_mc.gotoAndPlay(PLAYMODE_BUTTON_IN_FRAME);
content_mc.print_mc.gotoAndPlay(PLAYMODE_BUTTON_IN_FRAME);
this.addEventListener(Event.ENTER_FRAME, playmodeButtons_ef, false, 0, true);
} else {
playmodeButtonsActive = false;
if (content_mc.restart_mc.currentLabel != PLAYMODE_BUTTON_OFF_FRAME){
content_mc.restart_mc.gotoAndPlay(PLAYMODE_BUTTON_OUT_FRAME);
};
if (content_mc.print_mc.currentLabel != PLAYMODE_BUTTON_OFF_FRAME){
content_mc.print_mc.gotoAndPlay(PLAYMODE_BUTTON_OUT_FRAME);
};
};
}
public function get soundOnTransfromVolume():Number{
return (_soundOnTransformVolume);
}
private function furnitureHighlight(_arg1:Event=null):void{
furniture.highlight(_targetHinting);
dispatchEvent(new Event(MainView.PLAYMODE_TARGET_OVER));
}
function frame20(){
stop();
}
private function fadeMainSoundDownComplete():void{
_mainSoundOutComplete = true;
Tweener.addTween(this, {soundOnTransfromVolume:0, time:3.5});
}
private function furnitureUnhighlight(_arg1:Event=null):void{
furniture.unhighlight(_targetHinting);
dispatchEvent(new Event(MainView.PLAYMODE_TARGET_OUT));
}
public function set switchAttractorVisible(_arg1:Boolean):void{
content_mc.switch_attractor_mc.visible = _arg1;
}
public function get backgrounds():SwitchableClip{
return (content_mc.backgrounds_mc);
}
public function highlightSwitch(_arg1:uint):void{
content_mc.highlight_mc.visible = true;
content_mc.highlight_mc.x = (_highlightLeftX + (_arg1 * _highlightXSpacing));
}
private function fadeVictorySoundDown(_arg1:Event=null):void{
if (_victorySoundOutComplete){
return;
};
Tweener.addTween(this, {victorySoundOnTranformVolume:0, time:1});
}
private function rugUnhighlight(_arg1:Event=null):void{
accessories.unhighlight(_targetHinting);
dispatchEvent(new Event(MainView.PLAYMODE_TARGET_OUT));
}
public function playFurnitureBaby():void{
furniture.playBaby();
setFurnitureBaby(true);
}
public function spotlightRestartButton():void{
content_mc.restart_mc.hint_mc.gotoAndPlay("animate");
}
public function get accessories():AccessoriesClip{
return (content_mc.accessories_mc);
}
private function fadeVictorySoundUp(_arg1:Event=null):void{
if (_victorySoundOutComplete){
return;
};
Tweener.addTween(this, {victorySoundOnTranformVolume:0.25, time:3});
}
public function optimize_ef(_arg1:Event):void{
content_mc.top_bar_mc.cacheAsBitmap = true;
content_mc.bottom_panel_mc.cacheAsBitmap = true;
content_mc.switch_attractor_mc.cacheAsBitmap = true;
content_mc.highlight_mc.cacheAsBitmap = true;
removeEventListener(Event.ENTER_FRAME, optimize_ef, false);
}
public function unhighlightSwitch():void{
content_mc.highlight_mc.visible = false;
}
private function playmodeButtonOver(_arg1:Event):void{
trace(("MainView - playmodeButtonOver() - event.target.name == " + _arg1.target.name));
_arg1.target.gotoAndStop(PLAYMODE_BUTTON_OVER_FRAME);
dispatchEvent(new Event(PLAYMODE_BUTTON_OVER));
}
private function rugClick(_arg1:Event):void{
this.dispatchEvent(new Event(RUG_CLICK));
playSound("LaughCSound");
}
public function get rugBaby():Boolean{
return (_rugBaby);
}
private function fadeMainSoundDown(_arg1:Event=null):void{
if (_mainSoundOutComplete){
return;
};
Tweener.addTween(this, {soundOnTransfromVolume:0, time:3});
}
public function set furnitureHighlighting(_arg1:Boolean):void{
setFurnitureBaby(false);
if (_arg1){
furniture.mouseEnabled = true;
furniture.addEventListener(MouseEvent.MOUSE_OVER, furnitureHighlight, false, 0, true);
furniture.addEventListener(MouseEvent.MOUSE_OUT, furnitureUnhighlight, false, 0, true);
furniture.addEventListener(MouseEvent.CLICK, furnitureClick, false, 0, true);
furnitureUnhighlight();
} else {
furniture.removeEventListener(MouseEvent.MOUSE_OVER, furnitureHighlight, false);
furniture.removeEventListener(MouseEvent.MOUSE_OUT, furnitureUnhighlight, false);
furnitureUnhighlight();
};
}
public function recordBabyLocation():void{
_babyConfigModeLocation = new Point(baby.x, baby.y);
}
public function get windowsSwitch():SwitchClip{
return (content_mc.windows_switch_mc);
}
public function playRugBaby():void{
accessories.playBaby();
setRugBaby(true);
}
public function get babySwitch():SwitchClip{
return (content_mc.baby_switch_mc);
}
public function get lightsSwitch():SwitchClip{
return (content_mc.lights_switch_mc);
}
private function playmodeButtonOut(_arg1:Event):void{
trace(("MainView - playmodeButtonOut() - event.target.name == " + _arg1.target.name));
if (_arg1.target.mouseEnabled){
_arg1.target.gotoAndStop(PLAYMODE_BUTTON_ON_FRAME);
dispatchEvent(new Event(PLAYMODE_BUTTON_OUT));
};
}
public function set playmodeButtonVisibility(_arg1:Boolean):void{
content_mc.restart_mc.visible = _arg1;
content_mc.print_mc.visible = _arg1;
}
public function set soundOnTransfromVolume(_arg1:Number):void{
_soundOnTransformVolume = _arg1;
_soundOnTransform = new SoundTransform(_soundOnTransformVolume, 0);
_mainSoundChannel.soundTransform = _soundOnTransform;
}
public function get furnitureSwitch():SwitchClip{
return (content_mc.furniture_switch_mc);
}
public function transitionToPlayMode():void{
this.addEventListener(Event.ENTER_FRAME, transitionToPlayMode_ef, false, 0, true);
this.gotoAndPlay(TO_PLAY_MODE);
}
public function get furnitureBaby():Boolean{
return (_furnitureBaby);
}
private function restartButtonClick(_arg1:Event):void{
dispatchEvent(new Event(MainView.RESTART));
fadeMainSoundUp();
fadeVictorySoundDown();
}
public function get furniture():FurnitureClip{
return (content_mc.furniture_mc);
}
private function fadeMainSoundUp(_arg1:Event=null):void{
if (_mainSoundOutComplete){
return;
};
Tweener.addTween(this, {soundOnTransfromVolume:0.25, time:1});
}
}
}//package
Section 58
//OverSound (OverSound)
package {
import flash.media.*;
public dynamic class OverSound extends Sound {
}
}//package
Section 59
//PrintOut (PrintOut)
package {
import flash.display.*;
public dynamic class PrintOut extends MovieClip {
public var background_mc:MovieClip;
public var drawArea:MovieClip;
}
}//package
Section 60
//SelectSound (SelectSound)
package {
import flash.media.*;
public dynamic class SelectSound extends Sound {
}
}//package
Section 61
//side_dress (side_dress)
package {
public dynamic class side_dress extends SwitchableClip {
public function side_dress(){
addFrameScript(0, frame1, 7, frame8, 14, frame15, 21, frame22, 28, frame29);
}
function frame15(){
stop();
}
function frame1(){
stop();
}
function frame22(){
stop();
}
function frame29(){
stop();
}
function frame8(){
stop();
}
}
}//package
Section 62
//SleepSound (SleepSound)
package {
import flash.media.*;
public dynamic class SleepSound extends Sound {
}
}//package
Section 63
//Switch (Switch)
package {
public class Switch {
private var _switchClip:SwitchClip;
public var select_fn:Function;
public var unhighlight_fn:Function;
private var _target:SwitchableClip;
private var _hideIfUnselected:Boolean;// = false
public var highlight_fn:Function;
private var _index:int;
public function Switch(){
_hideIfUnselected = false;
super();
}
public function set switchClip(_arg1:SwitchClip):void{
_switchClip = _arg1;
_switchClip.select_fn = setIndex;
_switchClip.rollOver_fn = highlight;
_switchClip.rollOut_fn = unhighlight;
_switchClip.construct();
}
public function set target(_arg1:SwitchableClip):void{
_target = _arg1;
}
public function highlight(_arg1:uint):void{
_target.visible = true;
_target.index = _arg1;
highlight_fn(_arg1);
}
public function init(_arg1:Boolean=false):void{
_hideIfUnselected = _arg1;
_target.visible = !(_arg1);
_index = -1;
}
public function unhighlight(_arg1:uint):void{
if (((_hideIfUnselected) && ((_index == -1)))){
_target.visible = false;
};
unhighlight_fn(_arg1);
}
public function deconstruct():void{
if (_switchClip){
_switchClip.deconstruct();
};
_switchClip = null;
if (_target){
_target.deconstruct();
};
_target = null;
highlight_fn = null;
unhighlight_fn = null;
select_fn = null;
}
public function setIndex(_arg1:uint):void{
_index = _arg1;
_target.visible = true;
_target.index = _index;
select_fn(_index);
}
}
}//package
Section 64
//SwitchableClip (SwitchableClip)
package {
import flash.events.*;
import flash.display.*;
public class SwitchableClip extends MovieClip {
protected var _switchableSubclips:Array;
protected var _index:uint;
public function SwitchableClip(){
_switchableSubclips = [this];
}
protected function optimize_ef(_arg1:Event):void{
if (optimize()){
removeEventListener(Event.ENTER_FRAME, optimize_ef, false);
};
}
public function deconstruct():void{
var _local1:SwitchableClip;
for each (_local1 in _switchableSubclips) {
_local1.deconstruct();
};
_switchableSubclips = null;
removeEventListener(Event.ENTER_FRAME, optimize_ef, false);
super.deconstruct();
}
public function set index(_arg1:uint):void{
var _local2:SwitchableClip;
_index = _arg1;
for each (_local2 in _switchableSubclips) {
if (_local2 == this){
gotoAndStop(("option_" + _arg1.toString()));
} else {
_local2.index = _arg1;
};
};
addEventListener(Event.ENTER_FRAME, optimize_ef, false, 0, true);
}
protected function optimize():Boolean{
var _local1:Boolean;
var _local2:uint;
_local1 = false;
if (getChildAt(0)){
_local2 = 0;
while (_local2 < numChildren) {
if (getChildAt(_local2)){
if (getChildAt(_local2).hasOwnProperty("cacheAsBitmap")){
getChildAt(_local2).cacheAsBitmap = true;
};
} else {
_local1 = true;
};
_local2++;
};
} else {
_local1 = true;
};
return (!(_local1));
}
}
}//package
Section 65
//SwitchClip (SwitchClip)
package {
import flash.events.*;
import flash.display.*;
import utils.sound.*;
public class SwitchClip extends MovieClip {
public var option_4_mc:MovieClip;
public var select_fn:Function;
public var rollOut_fn:Function;
private var _options:uint;
public var option_2_mc:MovieClip;
public var option_0_mc:MovieClip;
public var option_3_mc:MovieClip;
public var rollOver_fn:Function;
public var option_1_mc:MovieClip;
private function optionRollOut(_arg1:Event):void{
rollOut_fn(_arg1.target.switchIndex);
}
public function deconstruct():void{
var _local1:uint;
var _local2:MovieClip;
_local1 = 0;
while (_local1 < _options) {
_local2 = MovieClip(this[(("option_" + _local1.toString()) + "_mc")]);
if (_local2){
_local2.removeEventListener(MouseEvent.CLICK, optionSelect, false);
_local2.removeEventListener(MouseEvent.MOUSE_OVER, optionRollOver, false);
_local2.removeEventListener(MouseEvent.MOUSE_OUT, optionRollOut, false);
_local2.switchIndex = _local1;
};
_local1++;
};
rollOver_fn = null;
rollOut_fn = null;
select_fn = null;
}
private function optionRollOver(_arg1:Event):void{
rollOver_fn(_arg1.target.switchIndex);
playSound("OverSound");
}
private function optionSelect(_arg1:Event):void{
select_fn(_arg1.target.switchIndex);
playSound("SelectSound");
switch (Math.ceil((Math.random() * 5))){
case 1:
playSound("LaughASound");
break;
case 2:
playSound("LaughBSound");
break;
case 3:
playSound("LaughCSound");
break;
case 4:
playSound("LaughDSound");
break;
case 5:
playSound("LaughESound");
break;
default:
trace("SwitchClip.optionSelect() --- Laugh Sound Not Caught");
};
}
public function construct(_arg1:uint=5):void{
var _local2:uint;
var _local3:MovieClip;
_options = _arg1;
_local2 = 0;
while (_local2 < _options) {
_local3 = MovieClip(this[(("option_" + _local2.toString()) + "_mc")]);
if (_local3){
_local3.mouseEnabled = true;
_local3.mouseChildren = false;
_local3.addEventListener(MouseEvent.CLICK, optionSelect, false, 0, true);
_local3.addEventListener(MouseEvent.MOUSE_OVER, optionRollOver, false, 0, true);
_local3.addEventListener(MouseEvent.MOUSE_OUT, optionRollOut, false, 0, true);
_local3.switchIndex = _local2;
};
_local2++;
};
}
}
}//package
Section 66
//VictorySound (VictorySound)
package {
import flash.media.*;
public dynamic class VictorySound extends Sound {
}
}//package
Section 67
//windows_container (windows_container)
package {
public dynamic class windows_container extends SwitchableClip {
public function windows_container(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5);
}
function frame3(){
stop();
}
function frame1(){
stop();
}
function frame5(){
stop();
}
function frame2(){
stop();
}
function frame4(){
stop();
}
}
}//package
Section 68
//windows_switch (windows_switch)
package {
public dynamic class windows_switch extends SwitchClip {
}
}//package