Section 1
//png (brush_0_frame_0.png)
package brush_0_frame_0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_0_frame_0
Section 2
//png (brush_0_frame_1.png)
package brush_0_frame_1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_0_frame_1
Section 3
//png (brush_1_frame_0.png)
package brush_1_frame_0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_1_frame_0
Section 4
//png (brush_1_frame_1.png)
package brush_1_frame_1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_1_frame_1
Section 5
//png (brush_10_frame_0.png)
package brush_10_frame_0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_10_frame_0
Section 6
//png (brush_10_frame_1.png)
package brush_10_frame_1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_10_frame_1
Section 7
//png (brush_11_frame_0.png)
package brush_11_frame_0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_11_frame_0
Section 8
//png (brush_11_frame_1.png)
package brush_11_frame_1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_11_frame_1
Section 9
//png (brush_12_frame_0.png)
package brush_12_frame_0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_12_frame_0
Section 10
//png (brush_12_frame_1.png)
package brush_12_frame_1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_12_frame_1
Section 11
//png (brush_13_frame_0.png)
package brush_13_frame_0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_13_frame_0
Section 12
//png (brush_13_frame_1.png)
package brush_13_frame_1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_13_frame_1
Section 13
//png (brush_14_frame_0.png)
package brush_14_frame_0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_14_frame_0
Section 14
//png (brush_14_frame_1.png)
package brush_14_frame_1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_14_frame_1
Section 15
//png (brush_2_frame_0.png)
package brush_2_frame_0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_2_frame_0
Section 16
//png (brush_2_frame_1.png)
package brush_2_frame_1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_2_frame_1
Section 17
//png (brush_3_frame_0.png)
package brush_3_frame_0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_3_frame_0
Section 18
//png (brush_3_frame_1.png)
package brush_3_frame_1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_3_frame_1
Section 19
//png (brush_4_frame_0.png)
package brush_4_frame_0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_4_frame_0
Section 20
//png (brush_4_frame_1.png)
package brush_4_frame_1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_4_frame_1
Section 21
//png (brush_5_frame_0.png)
package brush_5_frame_0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_5_frame_0
Section 22
//png (brush_5_frame_1.png)
package brush_5_frame_1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_5_frame_1
Section 23
//png (brush_6_frame_0.png)
package brush_6_frame_0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_6_frame_0
Section 24
//png (brush_6_frame_1.png)
package brush_6_frame_1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_6_frame_1
Section 25
//png (brush_7_frame_0.png)
package brush_7_frame_0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_7_frame_0
Section 26
//png (brush_7_frame_1.png)
package brush_7_frame_1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_7_frame_1
Section 27
//png (brush_8_frame_0.png)
package brush_8_frame_0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_8_frame_0
Section 28
//png (brush_8_frame_1.png)
package brush_8_frame_1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_8_frame_1
Section 29
//png (brush_9_frame_0.png)
package brush_9_frame_0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_9_frame_0
Section 30
//png (brush_9_frame_1.png)
package brush_9_frame_1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package brush_9_frame_1
Section 31
//AuxFunctions (caurina.transitions.AuxFunctions)
package caurina.transitions {
public class AuxFunctions {
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 numberToG(_arg1:Number):Number{
return (((_arg1 & 0xFF00) >> 8));
}
public static function numberToB(_arg1:Number):Number{
return ((_arg1 & 0xFF));
}
public static function numberToR(_arg1:Number):Number{
return (((_arg1 & 0xFF0000) >> 16));
}
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);
}
}
}//package caurina.transitions
Section 32
//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 33
//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 34
//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 35
//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 36
//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 37
//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;
var _local5:SpecialPropertySplitter;
var _local6:Array;
var _local7:uint;
_local3 = new Array();
_local4 = 0;
while (_local4 < _args.length) {
if ((((typeof(_args[_local4]) == "string")) && ((_local3.indexOf(_args[_local4]) == -1)))){
if (_specialPropertySplitterList[_args[_local4]]){
_local5 = _specialPropertySplitterList[_args[_local4]];
_local6 = _local5.splitValues(_arg1, null);
_local7 = 0;
while (_local7 < _local6.length) {
_local3.push(_local6[_local7].name);
_local7++;
};
} else {
_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.74");
}
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(e2:Error) {
handleError(tTweening, e2, "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(e3:Error) {
handleError(tTweening, e3, "onUpdate");
};
};
} else {
tTweening.updatesSkipped++;
};
};
if (((isOver) && (Boolean(tTweening.onComplete)))){
eventScope = (Boolean(tTweening.onCompleteScope)) ? tTweening.onCompleteScope : tScope;
try {
tTweening.onComplete.apply(eventScope, tTweening.onCompleteParams);
} catch(e4:Error) {
handleError(tTweening, e4, "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")) && ((_local3.indexOf(_args[_local4]) == -1)))){
_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")) && ((_local3.indexOf(_args[_local4]) == -1)))){
_local3.push(_args[_local4]);
};
_local4++;
};
return (affectTweens(pauseTweenByIndex, _arg1, _local3));
}
}
}//package caurina.transitions
Section 38
//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 39
//FitTextToFieldCommand (com.deadline.utilities.FitTextToFieldCommand)
package com.deadline.utilities {
import flash.text.*;
import flash.events.*;
import flash.display.*;
public class FitTextToFieldCommand extends EventDispatcher {
public var debug:Boolean;// = false
public var tempTFmtReference:TextFormat;
public var tempTFReference:TextField;
public var tempDisplayObject:Sprite;
public static const RESIZE_COMPLETE:String = "ResizeComplete";
public static const RESIZE_START:String = "ResizeStarted";
public function FitTextToFieldCommand(_arg1:TextField, _arg2:TextFormat, _arg3:Boolean=false){
debug = false;
super();
tempTFReference = _arg1;
tempTFmtReference = _arg2;
tempDisplayObject = new Sprite();
this.debug = _arg3;
checkForMaxScroll();
}
protected function internalKill():void{
tempDisplayObject = null;
tempTFmtReference = null;
tempTFReference = null;
dispatchEvent(new Event(FitTextToFieldCommand.RESIZE_COMPLETE));
}
protected function resizeText(_arg1:Event):void{
var _local2:Number;
_local2 = Number(tempTFmtReference.size);
if (tempTFReference.maxScrollV == 1){
tempTFReference.setTextFormat(tempTFmtReference);
tempDisplayObject.removeEventListener(Event.ENTER_FRAME, resizeText);
internalKill();
return;
};
--_local2;
tempTFmtReference.size = _local2;
tempTFReference.setTextFormat(tempTFmtReference);
if (debug){
trace(((this + ": tempTFmtReference.size = ") + tempTFmtReference.size));
trace(((this + ": tempTFReference.maxScrollV = ") + tempTFReference.maxScrollV));
};
}
protected function checkForMaxScroll():void{
if (tempTFReference.maxScrollV > 1){
tempDisplayObject.addEventListener(Event.ENTER_FRAME, resizeText);
dispatchEvent(new Event(FitTextToFieldCommand.RESIZE_START));
} else {
internalKill();
};
if (debug){
trace(((this + ": tempTFmtReference.size = ") + tempTFmtReference.size));
trace(((this + ": tempTFReference.maxScrollV = ") + tempTFReference.maxScrollV));
};
}
}
}//package com.deadline.utilities
Section 40
//FitTextToFieldManager (com.deadline.utilities.FitTextToFieldManager)
package com.deadline.utilities {
import flash.text.*;
public class FitTextToFieldManager {
private static var formatters:Array = new Array();
public function FitTextToFieldManager():void{
}
public static function clear():void{
}
public static function format(_arg1:TextField, _arg2:Boolean=false):void{
var _local3:FitTextToFieldCommand;
_local3 = new FitTextToFieldCommand(_arg1, _arg1.getTextFormat(), _arg2);
FitTextToFieldManager.formatters.push(_local3);
}
}
}//package com.deadline.utilities
Section 41
//ExtendedTimer (com.fjakobs.utils.ExtendedTimer)
package com.fjakobs.utils {
import flash.events.*;
import flash.utils.*;
public class ExtendedTimer extends Timer {
private var _startTime:Number;
private var _paused:Boolean;// = false
private var _initialDelay:Number;
public function ExtendedTimer(_arg1:Number, _arg2:int=0){
_paused = false;
super(_arg1, _arg2);
_initialDelay = _arg1;
addEventListener(TimerEvent.TIMER, onTimer, false, 0, true);
}
public function get initialDelay():Number{
return (_initialDelay);
}
override public function start():void{
_startTime = new Date().time;
_paused = false;
super.start();
}
private function onTimer(_arg1:TimerEvent):void{
_startTime = new Date().time;
if (_initialDelay == 0){
delay = 1;
} else {
delay = _initialDelay;
};
}
public function get paused():Boolean{
return (_paused);
}
public function pause():void{
var _local1:Number;
if (running){
_paused = true;
stop();
_local1 = (delay - (new Date().time - _startTime));
if (_local1 <= 0){
_local1 = 1;
};
delay = _local1;
};
}
}
}//package com.fjakobs.utils
Section 42
//png (decal_icon0.png)
package decal_icon0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package decal_icon0
Section 43
//png (decal_icon1.png)
package decal_icon1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package decal_icon1
Section 44
//png (decal_icon2.png)
package decal_icon2 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package decal_icon2
Section 45
//png (decal_icon3.png)
package decal_icon3 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package decal_icon3
Section 46
//png (decal_icon4.png)
package decal_icon4 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package decal_icon4
Section 47
//png (decal_icon5.png)
package decal_icon5 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package decal_icon5
Section 48
//png (decal_icon6.png)
package decal_icon6 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package decal_icon6
Section 49
//png (decal_icon7.png)
package decal_icon7 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package decal_icon7
Section 50
//BitmapUtils (doogog.BitmapUtils)
package doogog {
import flash.display.*;
import flash.utils.*;
public class BitmapUtils {
public function BitmapUtils():void{
}
public static function getBitmapDataByName(_arg1:String):BitmapData{
var _local2:Class;
var _local3:*;
_local2 = (getDefinitionByName(_arg1) as Class);
_local3 = new _local2(0, 0);
return (_local3);
}
}
}//package doogog
Section 51
//Util (doogog.Util)
package doogog {
import flash.geom.*;
public class Util {
public function Util():void{
}
public static function getAngleTo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
var _local5:*;
var _local6:*;
var _local7:*;
var _local8:*;
var _local9:*;
var _local10:*;
var _local11:Number;
_local5 = _arg1;
_local6 = _arg2;
_local7 = (_arg3 - _local5);
_local8 = (_arg4 - _local6);
_local10 = Math.atan2(_local8, _local7);
return (_local10);
}
public static function random(_arg1:Number, _arg2:Number):Number{
return ((_arg1 + ((_arg2 - _arg1) * Math.random())));
}
public static function randomInteger(_arg1:Number, _arg2:Number):Number{
return (Math.floor(Util.random(_arg1, _arg2)));
}
public static function normalizeAngle(_arg1:Number):Number{
if (_arg1 < 0){
return ((180 - _arg1));
};
return (_arg1);
}
public static function isWithinRange(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):Boolean{
var _local6:Number;
_local6 = Point.distance(new Point(_arg1, _arg2), new Point(_arg3, _arg4));
return ((_local6 <= _arg5));
}
}
}//package doogog
Section 52
//png (droplet_color0.png)
package droplet_color0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package droplet_color0
Section 53
//png (droplet_color1.png)
package droplet_color1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package droplet_color1
Section 54
//png (droplet_color10.png)
package droplet_color10 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package droplet_color10
Section 55
//png (droplet_color11.png)
package droplet_color11 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package droplet_color11
Section 56
//png (droplet_color12.png)
package droplet_color12 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package droplet_color12
Section 57
//png (droplet_color13.png)
package droplet_color13 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package droplet_color13
Section 58
//png (droplet_color14.png)
package droplet_color14 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package droplet_color14
Section 59
//png (droplet_color2.png)
package droplet_color2 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package droplet_color2
Section 60
//png (droplet_color3.png)
package droplet_color3 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package droplet_color3
Section 61
//png (droplet_color4.png)
package droplet_color4 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package droplet_color4
Section 62
//png (droplet_color5.png)
package droplet_color5 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package droplet_color5
Section 63
//png (droplet_color6.png)
package droplet_color6 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package droplet_color6
Section 64
//png (droplet_color7.png)
package droplet_color7 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package droplet_color7
Section 65
//png (droplet_color8.png)
package droplet_color8 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package droplet_color8
Section 66
//png (droplet_color9.png)
package droplet_color9 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package droplet_color9
Section 67
//EffectsManager (effects.EffectsManager)
package effects {
import flash.events.*;
import flash.display.*;
import com.fjakobs.utils.*;
public class EffectsManager extends Sprite {
protected var updateTimer:ExtendedTimer;
protected var updateInterval:int;// = 200
public function EffectsManager():void{
updateInterval = 200;
super();
this.updateTimer = new ExtendedTimer(this.updateInterval, 0);
this.updateTimer.addEventListener(TimerEvent.TIMER, update);
this.updateTimer.start();
}
public function clear():void{
var _local1:int;
var _local2:int;
_local1 = this.numChildren;
_local2 = 0;
while (_local2 < _local1) {
this.removeChildAt(0);
_local2++;
};
}
public function addEffect(_arg1:MovieClip):void{
this.addChild(_arg1);
}
protected function update(_arg1:Event=null):void{
var _local2:int;
var _local3:int;
var _local4:DisplayObject;
var _local5:MovieClip;
_local2 = this.numChildren;
_local3 = 0;
while (_local3 < _local2) {
_local4 = this.getChildAt(_local3);
if ((_local4 is MovieClip)){
_local5 = MovieClip(_local4);
if (_local5.currentFrame == _local5.totalFrames){
_local5.visible = false;
_local5.stop();
};
};
_local3++;
};
}
}
}//package effects
Section 68
//Strong (fl.transitions.easing.Strong)
package fl.transitions.easing {
public class Strong {
public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 1)) + _arg2));
}
public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = (_arg1 / _arg4);
return (((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 2)) + _arg2));
}
}
}//package fl.transitions.easing
Section 69
//Tween (fl.transitions.Tween)
package fl.transitions {
import flash.events.*;
import flash.display.*;
import flash.utils.*;
public class Tween extends EventDispatcher {
private var _position:Number;// = NAN
public var prevTime:Number;// = NAN
public var prevPos:Number;// = NAN
public var isPlaying:Boolean;// = false
public var begin:Number;// = NAN
private var _fps:Number;// = NAN
private var _time:Number;// = NAN
public var change:Number;// = NAN
private var _finish:Number;// = NAN
public var looping:Boolean;// = false
private var _intervalID:uint;// = 0
public var func:Function;
private var _timer:Timer;// = null
private var _startTime:Number;// = NAN
public var prop:String;// = ""
private var _duration:Number;// = NAN
public var obj:Object;// = null
public var useSeconds:Boolean;// = false
protected static var _mc:MovieClip = new MovieClip();
public function Tween(_arg1:Object, _arg2:String, _arg3:Function, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Boolean=false){
isPlaying = false;
obj = null;
prop = "";
func = function (_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
};
begin = NaN;
change = NaN;
useSeconds = false;
prevTime = NaN;
prevPos = NaN;
looping = false;
_duration = NaN;
_time = NaN;
_fps = NaN;
_position = NaN;
_startTime = NaN;
_intervalID = 0;
_finish = NaN;
_timer = null;
super();
if (!arguments.length){
return;
};
this.obj = _arg1;
this.prop = _arg2;
this.begin = _arg4;
this.position = _arg4;
this.duration = _arg6;
this.useSeconds = _arg7;
if ((_arg3 is Function)){
this.func = _arg3;
};
this.finish = _arg5;
this._timer = new Timer(100);
this.start();
}
public function continueTo(_arg1:Number, _arg2:Number):void{
this.begin = this.position;
this.finish = _arg1;
if (!isNaN(_arg2)){
this.duration = _arg2;
};
this.start();
}
public function stop():void{
this.stopEnterFrame();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_STOP, this._time, this._position));
}
private function fixTime():void{
if (this.useSeconds){
this._startTime = (getTimer() - (this._time * 1000));
};
}
public function set FPS(_arg1:Number):void{
var _local2:Boolean;
_local2 = this.isPlaying;
this.stopEnterFrame();
this._fps = _arg1;
if (_local2){
this.startEnterFrame();
};
}
public function get finish():Number{
return ((this.begin + this.change));
}
public function get duration():Number{
return (this._duration);
}
protected function startEnterFrame():void{
var _local1:Number;
if (isNaN(this._fps)){
_mc.addEventListener(Event.ENTER_FRAME, this.onEnterFrame, false, 0, true);
} else {
_local1 = (1000 / this._fps);
this._timer.delay = _local1;
this._timer.addEventListener(TimerEvent.TIMER, this.timerHandler, false, 0, true);
this._timer.start();
};
this.isPlaying = true;
}
public function set time(_arg1:Number):void{
this.prevTime = this._time;
if (_arg1 > this.duration){
if (this.looping){
this.rewind((_arg1 - this._duration));
this.update();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_LOOP, this._time, this._position));
} else {
if (this.useSeconds){
this._time = this._duration;
this.update();
};
this.stop();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_FINISH, this._time, this._position));
};
} else {
if (_arg1 < 0){
this.rewind();
this.update();
} else {
this._time = _arg1;
this.update();
};
};
}
protected function stopEnterFrame():void{
if (isNaN(this._fps)){
_mc.removeEventListener(Event.ENTER_FRAME, this.onEnterFrame);
} else {
this._timer.stop();
};
this.isPlaying = false;
}
public function getPosition(_arg1:Number=NaN):Number{
if (isNaN(_arg1)){
_arg1 = this._time;
};
return (this.func(_arg1, this.begin, this.change, this._duration));
}
public function set finish(_arg1:Number):void{
this.change = (_arg1 - this.begin);
}
public function set duration(_arg1:Number):void{
this._duration = ((_arg1)<=0) ? Infinity : _arg1;
}
public function setPosition(_arg1:Number):void{
this.prevPos = this._position;
if (this.prop.length){
this.obj[this.prop] = (this._position = _arg1);
};
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_CHANGE, this._time, this._position));
}
public function resume():void{
this.fixTime();
this.startEnterFrame();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_RESUME, this._time, this._position));
}
public function fforward():void{
this.time = this._duration;
this.fixTime();
}
protected function onEnterFrame(_arg1:Event):void{
this.nextFrame();
}
public function get position():Number{
return (this.getPosition(this._time));
}
public function yoyo():void{
this.continueTo(this.begin, this.time);
}
public function nextFrame():void{
if (this.useSeconds){
this.time = ((getTimer() - this._startTime) / 1000);
} else {
this.time = (this._time + 1);
};
}
protected function timerHandler(_arg1:TimerEvent):void{
this.nextFrame();
_arg1.updateAfterEvent();
}
public function get FPS():Number{
return (this._fps);
}
public function rewind(_arg1:Number=0):void{
this._time = _arg1;
this.fixTime();
this.update();
}
public function set position(_arg1:Number):void{
this.setPosition(_arg1);
}
public function get time():Number{
return (this._time);
}
private function update():void{
this.setPosition(this.getPosition(this._time));
}
public function start():void{
this.rewind();
this.startEnterFrame();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_START, this._time, this._position));
}
public function prevFrame():void{
if (!this.useSeconds){
this.time = (this._time - 1);
};
}
}
}//package fl.transitions
Section 70
//TweenEvent (fl.transitions.TweenEvent)
package fl.transitions {
import flash.events.*;
public class TweenEvent extends Event {
public var time:Number;// = NAN
public var position:Number;// = NAN
public static const MOTION_START:String = "motionStart";
public static const MOTION_STOP:String = "motionStop";
public static const MOTION_LOOP:String = "motionLoop";
public static const MOTION_CHANGE:String = "motionChange";
public static const MOTION_FINISH:String = "motionFinish";
public static const MOTION_RESUME:String = "motionResume";
public function TweenEvent(_arg1:String, _arg2:Number, _arg3:Number, _arg4:Boolean=false, _arg5:Boolean=false){
time = NaN;
position = NaN;
super(_arg1, _arg4, _arg5);
this.time = _arg2;
this.position = _arg3;
}
override public function clone():Event{
return (new TweenEvent(this.type, this.time, this.position, this.bubbles, this.cancelable));
}
}
}//package fl.transitions
Section 71
//Background (gameobjects.Background)
package gameobjects {
import flash.display.*;
public dynamic class Background extends MovieClip {
}
}//package gameobjects
Section 72
//BaseNail (gameobjects.BaseNail)
package gameobjects {
import flash.display.*;
import flash.utils.*;
public class BaseNail extends GameObject {
public const DECAL_OFFSET_X:int = 2;
public const DECAL_OFFSET_Y:int = 9;
public const DECAL_SCALE:Number = 0.8;
public var nailPlacer:Sprite;
protected var patternIndex:int;
protected var decalIndex:int;
protected var colorIndex:int;
protected var highlights:Sprite;
protected var color:Bitmap;
protected var pattern:Bitmap;
protected var decal:Bitmap;
public function BaseNail():void{
this.nailPlacer.alpha = 0;
this.nailPlacer.mouseEnabled = false;
this.buttonMode = true;
this.color = new Bitmap();
this.addChild(this.color);
this.pattern = new Bitmap();
this.addChild(this.pattern);
this.addChild(this.pattern);
this.highlights = new NailHighLights();
this.addChild(this.highlights);
this.highlights.mouseEnabled = false;
this.highlights.mouseChildren = false;
this.decal = new Bitmap();
this.addChild(this.decal);
}
public function getDecal():int{
return (this.decalIndex);
}
public function applyTool(_arg1:ToolItem):void{
if (_arg1 != null){
switch (_arg1.getType()){
case ToolItem.TYPE_COLOR:
this.setColor(_arg1.getIndex());
SoundManager.playSound(NailSalonAudio.BLING);
break;
case ToolItem.TYPE_PATTERN:
this.setPattern(_arg1.getIndex());
SoundManager.playSound(NailSalonAudio.CLICK);
break;
case ToolItem.TYPE_DECAL:
this.setDecal(_arg1.getIndex());
SoundManager.playSound(NailSalonAudio.TWINKLE);
break;
default:
break;
};
};
}
protected function createImageFromName(_arg1:String):BitmapData{
var _local2:String;
var _local3:Class;
var _local4:*;
_local2 = _arg1;
_local3 = (getDefinitionByName(_local2) as Class);
_local4 = new _local3(0, 0);
return (_local4);
}
public function setColor(_arg1:int):void{
var _local2:BitmapData;
var _local3:Bitmap;
this.colorIndex = _arg1;
_local2 = this.createImageFromName((("nail_color_" + _arg1) + ".png"));
_local3 = new Bitmap(_local2);
this.addChild(_local3);
this.swapChildren(this.color, _local3);
this.removeChild(this.color);
this.color = _local3;
this.color.cacheAsBitmap = true;
}
public function setDecal(_arg1:int):void{
var _local2:BitmapData;
var _local3:Bitmap;
this.decalIndex = _arg1;
if (_arg1 == 0){
_local3 = new Bitmap();
} else {
_local2 = this.createImageFromName((("nail_decal_" + _arg1) + ".png"));
_local3 = new Bitmap(_local2);
};
this.addChild(_local3);
this.swapChildren(this.decal, _local3);
this.removeChild(this.decal);
this.decal = _local3;
this.decal.x = DECAL_OFFSET_X;
this.decal.y = DECAL_OFFSET_Y;
this.decal.scaleX = DECAL_SCALE;
this.decal.scaleY = DECAL_SCALE;
}
public function getPattern():int{
return (this.patternIndex);
}
public function getColor():int{
return (this.colorIndex);
}
public function setPattern(_arg1:int):void{
var _local2:BitmapData;
var _local3:Bitmap;
this.patternIndex = _arg1;
_local2 = this.createImageFromName((("nail_pattern_" + _arg1) + ".png"));
_local3 = new Bitmap(_local2);
_local3.cacheAsBitmap = true;
this.addChild(_local3);
this.swapChildren(this.pattern, _local3);
this.removeChild(this.pattern);
this.pattern = _local3;
}
}
}//package gameobjects
Section 73
//Check (gameobjects.Check)
package gameobjects {
import flash.display.*;
public dynamic class Check extends MovieClip {
}
}//package gameobjects
Section 74
//ColorSwirlTab (gameobjects.ColorSwirlTab)
package gameobjects {
public class ColorSwirlTab extends GridTab {
public static const NUMBER_OF_ITEMS:int = 8;
public function ColorSwirlTab():void{
var _local1:int;
super();
itemOffsetX = 15;
itemOffsetY = 10;
itemSeparationX = 13;
itemSeparationY = 3;
itemColumns = 4;
this.setButton(new ColorSwirlTabButton());
_local1 = 8;
while (_local1 < ((8 + NUMBER_OF_ITEMS) - 1)) {
this.addItem(new ColorTabItem(_local1));
_local1++;
};
this.addItem(new ColorTabItem(0));
}
}
}//package gameobjects
Section 75
//ColorSwirlTabButton (gameobjects.ColorSwirlTabButton)
package gameobjects {
public dynamic class ColorSwirlTabButton extends TabButton {
}
}//package gameobjects
Section 76
//ColorTab (gameobjects.ColorTab)
package gameobjects {
public class ColorTab extends GridTab {
public static const NUMBER_OF_ITEMS:int = 8;
public function ColorTab():void{
var _local1:int;
super();
itemOffsetX = 15;
itemOffsetY = 10;
itemSeparationX = 13;
itemSeparationY = 3;
itemColumns = 4;
this.setButton(new ColorTabButton());
_local1 = 1;
while (_local1 < NUMBER_OF_ITEMS) {
this.addItem(new ColorTabItem(_local1));
_local1++;
};
this.addItem(new ColorTabItem(0));
}
}
}//package gameobjects
Section 77
//ColorTabButton (gameobjects.ColorTabButton)
package gameobjects {
public dynamic class ColorTabButton extends TabButton {
}
}//package gameobjects
Section 78
//ColorTabItem (gameobjects.ColorTabItem)
package gameobjects {
public class ColorTabItem extends ToolItem {
public function ColorTabItem(_arg1:int=0):void{
imageName = "droplet_color";
imageType = "png";
imageWidth = 24;
imageHeight = 33;
shadowX = -4;
shadowY = 31;
type = ToolItem.TYPE_COLOR;
this.setImage(_arg1);
}
}
}//package gameobjects
Section 79
//Customer (gameobjects.Customer)
package gameobjects {
public class Customer extends GameObject {
protected var order:Order;
public var type:int;
protected var difficulty:int;
public static const NUMBER_OF_TYPES:int = 7;
public function Customer(_arg1:int=0):void{
this.difficulty = _arg1;
this.generateOrder(_arg1);
}
public function getOrder():Order{
return (this.order);
}
public function generateOrder(_arg1:int):void{
this.order = new Order(_arg1);
}
}
}//package gameobjects
Section 80
//Customer0 (gameobjects.Customer0)
package gameobjects {
public class Customer0 extends Customer {
public function Customer0(_arg1:int=0):void{
addFrameScript(0, frame1);
super(_arg1);
}
function frame1(){
stop();
}
}
}//package gameobjects
Section 81
//Customer1 (gameobjects.Customer1)
package gameobjects {
public class Customer1 extends Customer {
public function Customer1(_arg1:int=0):void{
addFrameScript(0, frame1);
super(_arg1);
}
function frame1(){
stop();
}
}
}//package gameobjects
Section 82
//Customer2 (gameobjects.Customer2)
package gameobjects {
public class Customer2 extends Customer {
public function Customer2(_arg1:int=0):void{
addFrameScript(0, frame1);
super(_arg1);
}
function frame1(){
stop();
}
}
}//package gameobjects
Section 83
//Customer3 (gameobjects.Customer3)
package gameobjects {
public class Customer3 extends Customer {
public function Customer3(_arg1:int=0):void{
addFrameScript(0, frame1);
super(_arg1);
}
function frame1(){
stop();
}
}
}//package gameobjects
Section 84
//Customer4 (gameobjects.Customer4)
package gameobjects {
public class Customer4 extends Customer {
public function Customer4(_arg1:int=0):void{
addFrameScript(0, frame1);
super(_arg1);
}
function frame1(){
stop();
}
}
}//package gameobjects
Section 85
//Customer5 (gameobjects.Customer5)
package gameobjects {
public class Customer5 extends Customer {
public function Customer5(_arg1:int=0):void{
addFrameScript(0, frame1);
super(_arg1);
}
function frame1(){
stop();
}
}
}//package gameobjects
Section 86
//Customer6 (gameobjects.Customer6)
package gameobjects {
public class Customer6 extends Customer {
public function Customer6(_arg1:int=0):void{
addFrameScript(0, frame1);
super(_arg1);
}
function frame1(){
stop();
}
}
}//package gameobjects
Section 87
//CustomerOrderBox (gameobjects.CustomerOrderBox)
package gameobjects {
import flash.display.*;
import doogog.*;
import flash.utils.*;
public class CustomerOrderBox extends TabsManager {
protected const CUSTOMER_WIDTH:int = 64;
protected const CUSTOMERS_SEPARATION_X:int = 4;
protected const CUSTOMERS_OFFSET_X:int = 8;
protected const CUSTOMERS_OFFSET_Y:int = 10;
protected var customers:Sprite;
protected var currentCustomerIndex:int;
public var hands:Hands;
public function CustomerOrderBox():void{
this.newCustomersQueue();
}
public function getCurrentCustomerType():int{
if (!this.isQueueComplete()){
trace(("current customer: " + this.getCustomer(this.currentCustomerIndex).type));
return (this.getCustomer(this.currentCustomerIndex).type);
};
return (-1);
}
protected function activateOrder(_arg1:int=0):void{
var _local2:Customer;
if (this.getQueueLength() != 0){
_local2 = Customer(this.customers.getChildAt(this.currentCustomerIndex));
_local2.gotoAndStop("active");
};
}
public function completeCurrentOrder():void{
var _local1:Customer;
var _local2:Sprite;
_local1 = Customer(this.customers.getChildAt(this.currentCustomerIndex));
_local1.gotoAndStop("inactive");
_local2 = new Check();
_local1.addChild(_local2);
this.currentCustomerIndex++;
if (this.isQueueComplete()){
} else {
this.activateOrder(this.currentCustomerIndex);
this.updateHands();
};
}
public function getQueueLength():int{
return (this.customers.numChildren);
}
public function getCustomer(_arg1:int=0):Customer{
return (Customer(this.customers.getChildAt(_arg1)));
}
public function isQueueComplete():Boolean{
return ((this.currentCustomerIndex >= this.customers.numChildren));
}
public function clear():void{
this.removeChild(this.customers);
this.customers = null;
this.newCustomersQueue();
}
protected function newCustomersQueue():void{
this.customers = new Sprite();
this.addChild(this.customers);
this.customers.x = CUSTOMERS_OFFSET_X;
this.customers.y = CUSTOMERS_OFFSET_Y;
this.currentCustomerIndex = 0;
}
public function addCustomer(_arg1:Customer):void{
}
public function getOrder(_arg1:int=0):Order{
return (this.getCustomer(_arg1).getOrder());
}
public function addCustomers(_arg1:int=1, _arg2:int=0):void{
var _local3:Array;
var _local4:int;
var _local5:Array;
var _local6:int;
var _local7:int;
var _local8:Class;
var _local9:*;
_local3 = new Array(Customer.NUMBER_OF_TYPES);
_local4 = 0;
_local5 = new Array(Customer.NUMBER_OF_TYPES);
_local4 = 0;
while (_local4 < _local3.length) {
_local3[_local4] = _local4;
_local4++;
};
_local4 = 0;
while (_local4 < _arg1) {
if (_local3.length > 0){
_local6 = Util.randomInteger(0, _local3.length);
_local5[_local4] = _local3[_local6];
_local3.splice(_local6, 1);
} else {
trace("ERROR: not enough customer types to fill requested queue!");
_local5[_local4] = 0;
};
_local4++;
};
_local4 = 0;
while (_local4 < _arg1) {
_local7 = _local5[_local4];
_local8 = (getDefinitionByName(("gameobjects.Customer" + _local7)) as Class);
_local9 = new _local8(_arg2);
_local9.x = ((this.customers.numChildren * CUSTOMER_WIDTH) + (this.customers.numChildren * CUSTOMERS_SEPARATION_X));
this.customers.addChild(_local9);
_local9.gotoAndStop("inactive");
_local9.type = _local7;
_local4++;
};
this.activateOrder(this.currentCustomerIndex);
this.updateHands();
}
protected function updateHands():void{
var _local1:Customer;
if (this.getQueueLength() != 0){
_local1 = this.getCustomer(this.currentCustomerIndex);
this.hands.displayOrder(_local1.getOrder());
};
}
public function getCurrentOrder():Order{
return (this.getCustomer(this.currentCustomerIndex).getOrder());
}
public function setNails(_arg1:Array, _arg2:Array, _arg3:Array):void{
}
}
}//package gameobjects
Section 88
//CustomerStander (gameobjects.CustomerStander)
package gameobjects {
import caurina.transitions.*;
public class CustomerStander extends GameObject {
protected const SLIDE_OUT_DISTANCE_X:int = -140;
protected const SLIDE_OUT_DISTANCE_Y:int = 0;
protected var currentCustomerType:int;// = 0
protected var originalX:Number;
protected var originalY:Number;
public function CustomerStander():void{
currentCustomerType = 0;
super();
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
public function hide():void{
this.visible = false;
}
public function showCustomer(_arg1:int):void{
trace(("showCustomer: " + (_arg1 + 1)));
this.gotoAndStop((_arg1 + 1));
}
public function slideIn():void{
}
public function setOriginalPosition(_arg1:Number, _arg2:Number):void{
this.originalX = _arg1;
this.originalY = _arg2;
}
public function switchToCustomer(_arg1:int):void{
trace(("switching to: " + _arg1));
this.currentCustomerType = _arg1;
this.x = this.originalX;
this.y = this.originalY;
Tweener.addTween(this, {x:(this.originalX + SLIDE_OUT_DISTANCE_X), y:(this.originalY + SLIDE_OUT_DISTANCE_Y), time:0.4, transition:"easeOutQuad", onComplete:newCustomer});
}
public function newCustomer(_arg1:int=-1):void{
this.x = (this.originalX + SLIDE_OUT_DISTANCE_X);
this.y = (this.originalY + SLIDE_OUT_DISTANCE_Y);
if (_arg1 == -1){
} else {
this.currentCustomerType = _arg1;
};
trace(("showing: " + this.currentCustomerType));
this.showCustomer(this.currentCustomerType);
Tweener.addTween(this, {x:this.originalX, y:this.originalY, time:0.4, transition:"easeOutQuad"});
}
public function slideOut():void{
this.x = this.originalX;
this.y = this.originalY;
Tweener.addTween(this, {x:(this.originalX + SLIDE_OUT_DISTANCE_X), y:(this.originalY + SLIDE_OUT_DISTANCE_Y), time:0.4, transition:"easeOutQuad"});
}
public function show():void{
this.visible = true;
}
}
}//package gameobjects
Section 89
//DecalTab (gameobjects.DecalTab)
package gameobjects {
public class DecalTab extends GridTab {
public static const NUMBER_OF_ITEMS:int = 8;
public function DecalTab():void{
var _local1:int;
super();
itemOffsetX = 14;
itemOffsetY = 10;
itemSeparationX = 13;
itemSeparationY = 3;
itemColumns = 4;
this.setButton(new DecalTabButton());
_local1 = 1;
while (_local1 < NUMBER_OF_ITEMS) {
this.addItem(new DecalTabItem(_local1));
_local1++;
};
this.addItem(new DecalTabItem(0));
}
}
}//package gameobjects
Section 90
//DecalTabButton (gameobjects.DecalTabButton)
package gameobjects {
public dynamic class DecalTabButton extends TabButton {
}
}//package gameobjects
Section 91
//DecalTabItem (gameobjects.DecalTabItem)
package gameobjects {
public class DecalTabItem extends ToolItem {
public function DecalTabItem(_arg1:int=0):void{
imageName = "decal_icon";
imageType = "png";
imageWidth = 25;
imageHeight = 33;
shadowX = -1;
shadowY = 31;
type = ToolItem.TYPE_DECAL;
this.setImage(_arg1);
}
}
}//package gameobjects
Section 92
//DropletShadow (gameobjects.DropletShadow)
package gameobjects {
import flash.display.*;
public dynamic class DropletShadow extends MovieClip {
}
}//package gameobjects
Section 93
//GameObject (gameobjects.GameObject)
package gameobjects {
import flash.display.*;
public class GameObject extends MovieClip {
public function GameObject():void{
}
}
}//package gameobjects
Section 94
//GridTab (gameobjects.GridTab)
package gameobjects {
import flash.display.*;
public class GridTab extends Tab {
protected var itemColumns:int;// = 0
protected var itemOffsetX:int;// = 0
protected var itemOffsetY:int;// = 0
protected var itemSeparationX:int;// = 0
protected var itemSeparationY:int;// = 0
public function GridTab():void{
itemOffsetX = 0;
itemOffsetY = 0;
itemSeparationX = 0;
itemSeparationY = 0;
itemColumns = 0;
super();
}
override public function addItem(_arg1:DisplayObject):void{
var _local2:int;
var _local3:int;
_local2 = (this.contents.numChildren % itemColumns);
_local3 = (this.contents.numChildren / itemColumns);
_arg1.x = ((itemOffsetX + (_arg1.width * _local2)) + (itemSeparationX * _local2));
_arg1.y = ((itemOffsetY + (_arg1.height * _local3)) + (itemSeparationY * _local3));
super.addItem(_arg1);
}
}
}//package gameobjects
Section 95
//Hands (gameobjects.Hands)
package gameobjects {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import flash.geom.*;
import net.aubby.utility.*;
public class Hands extends GameObject {
public var nail9:Sprite;
public var nail2:Sprite;
protected var nails:Array;
protected var prevMousePosition:Point;
protected var manager:Object;
protected var totalMouseDistance:Number;// = 0
public var nail0:Sprite;
public var nail1:Sprite;
public var nail3:Sprite;
public var nail4:Sprite;
public var nail6:Sprite;
public var nail7:Sprite;
public var nail5:Sprite;
public var nail8:Sprite;
public static const SLIDE_DISTANCE:int = 170;
public static const NUMBER_OF_FINGERS:int = 10;
public static const DISTANCE_TO_COLOR:Number = 19;
public function Hands(_arg1:Object=null):void{
var _local2:int;
var _local3:BaseNail;
totalMouseDistance = 0;
super();
this.manager = _arg1;
this.nails = new Array();
_local2 = 0;
while (_local2 < NUMBER_OF_FINGERS) {
_local3 = this[("nail" + _local2)];
this.nails.push(_local3);
if (_arg1 != null){
_local3.addEventListener(MouseEvent.MOUSE_UP, onNailUp);
_local3.addEventListener(MouseEvent.MOUSE_DOWN, onNailDown);
_local3.addEventListener(MouseEvent.MOUSE_OUT, onNailOut);
} else {
_local3.buttonMode = false;
};
_local2++;
};
}
protected function onNailMove(_arg1:MouseEvent=null):void{
var _local2:Point;
var _local3:BaseNail;
_local2 = new Point(stage.mouseX, stage.mouseY);
this.totalMouseDistance = (this.totalMouseDistance + Point.distance(_local2, prevMousePosition));
if (this.totalMouseDistance >= DISTANCE_TO_COLOR){
if ((_arg1.target is BaseNail)){
_local3 = BaseNail(_arg1.target);
this.applyCurrentTool(_local3);
this.endMouseTracking();
};
} else {
this.prevMousePosition = _local2;
};
}
public function activate():void{
this.mouseEnabled = true;
this.mouseChildren = true;
}
protected function onNailUp(_arg1:MouseEvent=null):void{
var _local2:BaseNail;
_local2 = BaseNail(_arg1.target);
if (((!((manager.getCurrentTool() is ColorTabItem))) || (manager.getCurrentTool().isEraser()))){
this.applyCurrentTool(_local2);
};
this.endMouseTracking();
}
protected function applyCurrentTool(_arg1:BaseNail):void{
_arg1.applyTool(manager.getCurrentTool());
this.manager.checkSolution(this);
}
protected function beginMouseTracking():void{
this.addEventListener(MouseEvent.MOUSE_MOVE, onNailMove);
this.totalMouseDistance = 0;
this.prevMousePosition = new Point(stage.mouseX, stage.mouseY);
}
public function displayNewOrder():void{
this.displayOrder(new Order(-1));
}
public function deactivate():void{
this.mouseEnabled = false;
this.mouseChildren = false;
}
protected function onNailOut(_arg1:MouseEvent=null):void{
this.endMouseTracking();
}
protected function endMouseTracking():void{
this.removeEventListener(MouseEvent.MOUSE_MOVE, onNailMove);
}
public function clear(_arg1:Boolean):void{
if (_arg1){
this.deactivate();
this.slideOut();
new WaitCommand(this, 600, slideIn);
new WaitCommand(this, 600, displayNewOrder);
new WaitCommand(this, 1000, activate);
} else {
this.displayNewOrder();
};
}
public function displayOrder(_arg1:Order):void{
var _local2:int;
var _local3:BaseNail;
_local2 = 0;
while (_local2 < NUMBER_OF_FINGERS) {
_local3 = this.nails[_local2];
if (_arg1.colors[_local2] != null){
_local3.setColor(_arg1.colors[_local2]);
};
if (_arg1.patterns[_local2] != null){
_local3.setPattern(_arg1.patterns[_local2]);
};
if (_arg1.decals[_local2] != null){
_local3.setDecal(_arg1.decals[_local2]);
};
_local2++;
};
}
protected function slideIn():void{
Tweener.addTween(this, {y:(this.y - SLIDE_DISTANCE), time:0.5, transition:"easeOutQuad"});
}
protected function onNailDown(_arg1:MouseEvent=null):void{
if ((manager.getCurrentTool() is ColorTabItem)){
this.beginMouseTracking();
};
}
public function getNailProperties():Order{
var _local1:Order;
var _local2:Array;
var _local3:Array;
var _local4:Array;
var _local5:int;
_local1 = new Order(-1);
_local2 = new Array();
_local3 = new Array();
_local4 = new Array();
_local5 = 0;
while (_local5 < NUMBER_OF_FINGERS) {
_local2.push(this.nails[_local5].getColor());
_local3.push(this.nails[_local5].getPattern());
_local4.push(this.nails[_local5].getDecal());
_local5++;
};
_local1.colors = _local2;
_local1.patterns = _local3;
_local1.decals = _local4;
return (_local1);
}
protected function slideOut():void{
Tweener.addTween(this, {y:(this.y + SLIDE_DISTANCE), time:0.5, transition:"easeInQuad"});
}
}
}//package gameobjects
Section 96
//HandsOrder (gameobjects.HandsOrder)
package gameobjects {
public dynamic class HandsOrder extends Hands {
}
}//package gameobjects
Section 97
//NailHighLights (gameobjects.NailHighLights)
package gameobjects {
import flash.display.*;
public dynamic class NailHighLights extends MovieClip {
}
}//package gameobjects
Section 98
//Order (gameobjects.Order)
package gameobjects {
import doogog.*;
public class Order {
public var patterns:Array;
public var decals:Array;
public var colors:Array;
protected var difficulty:int;
public static const ORDER_PART_DECALS:String = "decals";
public static const ORDER_PART_COLORS:String = "colors";
public static const ORDER_PART_PATTERNS:String = "patterns";
public function Order(_arg1:int):void{
var _local2:int;
var _local3:int;
var _local4:int;
var _local5:int;
var _local6:int;
var _local7:int;
var _local8:int;
var _local9:int;
var _local10:int;
var _local11:int;
var _local12:int;
var _local13:int;
var _local14:int;
super();
this.difficulty = _arg1;
this.colors = new Array(Hands.NUMBER_OF_FINGERS);
this.patterns = new Array(Hands.NUMBER_OF_FINGERS);
this.decals = new Array(Hands.NUMBER_OF_FINGERS);
_local2 = 0;
_local2 = 0;
while (_local2 < Hands.NUMBER_OF_FINGERS) {
this.colors[_local2] = 0;
this.patterns[_local2] = 0;
this.decals[_local2] = 0;
_local2++;
};
if (_arg1 == 1){
this.generateProperties(this.colors, 0, 2, "flats");
this.generateProperties(this.colors, 3, 6, "flats");
this.generateProperties(this.colors, 7, 9, "flats");
} else {
if (_arg1 == 2){
this.generateProperties(this.colors, 0, 2, "swirls");
this.generateProperties(this.colors, 3, 6, "swirls");
this.generateProperties(this.colors, 7, 9, "swirls");
} else {
if (_arg1 == 3){
if (Math.random() > 0.5){
this.generateProperties(this.colors, 0, 2, "swirls");
this.generateProperties(this.colors, 3, 6, "flats");
this.generateProperties(this.colors, 7, 9, "swirls");
} else {
this.generateProperties(this.colors, 0, 4, "swirls");
this.generateProperties(this.colors, 5, 9, "flats");
};
} else {
if (_arg1 == 4){
this.generateProperties(this.colors, 0, 9, "flats");
this.generateProperties(this.patterns, 0, 9, "patterns", "multiple");
} else {
if (_arg1 == 5){
this.generateProperties(this.colors, 0, 9, "swirls");
this.generateProperties(this.patterns, 0, 9, "patterns", "multiple");
} else {
if (_arg1 == 6){
this.generateProperties(this.colors, 0, 4, "flats");
this.generateProperties(this.patterns, 0, 4, "patterns", "multiple");
this.generateProperties(this.colors, 5, 9, "swirls");
this.generateProperties(this.patterns, 5, 9, "patterns", "multiple");
} else {
if (_arg1 == 7){
this.generateProperties(this.colors, 0, 4, "flats");
this.generateProperties(this.decals, 0, 4, "decals", "multiple");
this.generateProperties(this.colors, 5, 9, "swirls");
this.generateProperties(this.decals, 5, 9, "decals", "multiple");
} else {
if ((((_arg1 > 7)) && ((_arg1 <= 10)))){
this.generateProperties(this.colors, 0, 4, "flats");
this.generateProperties(this.patterns, 0, 4, "patterns", "multiple");
this.generateProperties(this.colors, 5, 9, "swirls");
this.generateProperties(this.patterns, 5, 9, "patterns", "multiple");
this.generateProperties(this.decals, 0, 0, "decals");
this.generateProperties(this.decals, 4, 4, "decals");
this.generateProperties(this.decals, 5, 5, "decals");
this.generateProperties(this.decals, 9, 9, "decals");
} else {
if ((((_arg1 > 10)) && ((_arg1 <= 13)))){
this.generateProperties(this.colors, 0, 4, "flats");
this.generateProperties(this.patterns, 0, 4, "patterns", "multiple");
this.generateProperties(this.colors, 5, 9, "swirls");
this.generateProperties(this.patterns, 5, 9, "patterns", "multiple");
this.generateProperties(this.decals, 0, 0, "decals");
this.generateProperties(this.decals, 2, 2, "decals");
this.generateProperties(this.decals, 4, 4, "decals");
this.generateProperties(this.decals, 6, 6, "decals");
this.generateProperties(this.decals, 8, 8, "decals");
} else {
if ((((_arg1 > 13)) && ((_arg1 <= 15)))){
this.generateProperties(this.colors, 0, 4, "swirls");
this.generateProperties(this.patterns, 0, 4, "patterns", "multiple");
this.generateProperties(this.colors, 5, 9, "flats");
this.generateProperties(this.patterns, 5, 9, "patterns", "multiple");
this.generateProperties(this.decals, 0, 9, "decals", "multiple");
};
};
};
};
};
};
};
};
};
};
}
protected function generateProperties(_arg1:Array, _arg2:int, _arg3:int, _arg4:String, _arg5:String="same"):void{
var _local6:int;
var _local7:int;
_local6 = 0;
if (_arg5 == "same"){
_local7 = this.randomProperty(_arg4);
_local6 = _arg2;
while (_local6 < (_arg3 + 1)) {
_arg1[_local6] = _local7;
_local6++;
};
} else {
if (_arg5 == "multiple"){
_local6 = _arg2;
while (_local6 < (_arg3 + 1)) {
_arg1[_local6] = this.randomProperty(_arg4);
_local6++;
};
};
};
}
public function comparePart(_arg1:Hands, _arg2:String):Boolean{
var _local3:Order;
var _local4:int;
_local3 = _arg1.getNailProperties();
_local4 = 0;
while (_local4 < Hands.NUMBER_OF_FINGERS) {
if (this[_arg2][_local4] != _local3[_arg2][_local4]){
return (false);
};
_local4++;
};
return (true);
}
public function compareAll(_arg1:Hands):Boolean{
var _local2:Order;
var _local3:int;
_local2 = _arg1.getNailProperties();
_local3 = 0;
while (_local3 < Hands.NUMBER_OF_FINGERS) {
if (this.colors[_local3] != _local2.colors[_local3]){
return (false);
};
if (this.patterns[_local3] != _local2.patterns[_local3]){
return (false);
};
if (this.decals[_local3] != _local2.decals[_local3]){
return (false);
};
_local3++;
};
return (true);
}
protected function randomProperty(_arg1:String):int{
var _local2:int;
_local2 = 0;
switch (_arg1){
case "colors":
_local2 = Util.randomInteger(1, ((ColorTab.NUMBER_OF_ITEMS + ColorSwirlTab.NUMBER_OF_ITEMS) - 1));
break;
case "flats":
_local2 = Util.randomInteger(1, (ColorTab.NUMBER_OF_ITEMS - 1));
break;
case "swirls":
_local2 = Util.randomInteger(8, ((ColorTab.NUMBER_OF_ITEMS + ColorSwirlTab.NUMBER_OF_ITEMS) - 1));
break;
case "patterns":
_local2 = Util.randomInteger(1, (PatternTab.NUMBER_OF_ITEMS - 1));
break;
case "decals":
_local2 = Util.randomInteger(1, (DecalTab.NUMBER_OF_ITEMS - 1));
break;
default:
break;
};
return (_local2);
}
}
}//package gameobjects
Section 99
//OrderInstructions (gameobjects.OrderInstructions)
package gameobjects {
import flash.text.*;
import flash.display.*;
public dynamic class OrderInstructions extends MovieClip {
public var message:TextField;
}
}//package gameobjects
Section 100
//PatternTab (gameobjects.PatternTab)
package gameobjects {
public class PatternTab extends GridTab {
public static const NUMBER_OF_ITEMS:int = 8;
public function PatternTab():void{
var _local1:int;
super();
itemOffsetX = 4;
itemOffsetY = -5;
itemSeparationX = -14;
itemSeparationY = -27;
itemColumns = 4;
this.setButton(new PatternTabButton());
_local1 = 1;
while (_local1 < NUMBER_OF_ITEMS) {
this.addItem(new PatternTabItem(_local1));
_local1++;
};
this.addItem(new PatternTabItem(0));
}
}
}//package gameobjects
Section 101
//PatternTabButton (gameobjects.PatternTabButton)
package gameobjects {
public dynamic class PatternTabButton extends TabButton {
}
}//package gameobjects
Section 102
//PatternTabItem (gameobjects.PatternTabItem)
package gameobjects {
public class PatternTabItem extends ToolItem {
public function PatternTabItem(_arg1:int=0):void{
imageName = "pattern_icon";
imageType = "png";
imageWidth = 20;
imageHeight = 33;
shadowX = -6;
shadowY = 33;
type = ToolItem.TYPE_PATTERN;
this.setImage(_arg1);
this.shadow.visible = false;
}
}
}//package gameobjects
Section 103
//Tab (gameobjects.Tab)
package gameobjects {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
public class Tab extends MovieClip {
protected var contents:Sprite;
protected var button:TabButton;
protected var manager:TabsManager;
public function Tab():void{
this.button = new TabButton();
this.addChild(this.button);
this.contents = new Sprite();
}
public function deselected():void{
this.button.setSelected(false);
}
public function addItemAtPoint(_arg1:DisplayObject, _arg2:Point):void{
this.addItem(_arg1);
_arg1.x = _arg2.x;
_arg1.y = _arg2.y;
}
public function setButton(_arg1:TabButton):void{
this.removeChild(this.button);
this.button = null;
this.button = _arg1;
this.addChild(_arg1);
this.button.addCallback(this.selectSelf);
}
public function addItem(_arg1:DisplayObject):void{
this.contents.addChild(_arg1);
_arg1.addEventListener(MouseEvent.MOUSE_UP, itemClicked);
}
public function selectSelf():void{
this.manager.selectTab(this);
}
public function getButton():TabButton{
return (this.button);
}
public function getContents():Sprite{
return (this.contents);
}
protected function itemClicked(_arg1:MouseEvent):void{
this.manager.itemClicked(DisplayObject(_arg1.target));
}
public function setTabsManager(_arg1:TabsManager):void{
this.manager = _arg1;
}
public function selected():void{
this.button.setSelected(true);
}
}
}//package gameobjects
Section 104
//TabButton (gameobjects.TabButton)
package gameobjects {
import flash.events.*;
import gui.*;
public class TabButton extends UIButton {
protected const UNSELECTED_FRAME:String = "unselected";
protected const SELECTED_FRAME:String = "selected";
protected const ACTIVE_OFFSET_Y:int = 7;
public function TabButton():void{
this.gotoAndStop(UNSELECTED_FRAME);
this.buttonMode = true;
}
override protected function mouseOver(_arg1:Event):void{
}
public function setSelected(_arg1:Boolean):void{
if (_arg1){
this.y = 0;
this.gotoAndStop(SELECTED_FRAME);
} else {
this.y = ACTIVE_OFFSET_Y;
this.gotoAndStop(UNSELECTED_FRAME);
};
}
override protected function mouseUp(_arg1:Event):void{
var _local2:int;
this.playClickSound();
_local2 = 0;
while (_local2 < this.callbacks.length) {
var _local3 = this.callbacks;
_local3[_local2]();
_local2++;
};
}
override protected function mouseOut(_arg1:Event):void{
}
override protected function playClickSound():void{
}
override protected function mouseDown(_arg1:Event):void{
}
}
}//package gameobjects
Section 105
//TabsManager (gameobjects.TabsManager)
package gameobjects {
import flash.display.*;
public class TabsManager extends Sprite {
protected var tabButtonSeparationX:int;// = 4
protected var currentTab:Tab;
protected var tabs:Sprite;
public function TabsManager():void{
tabButtonSeparationX = 4;
super();
this.tabs = new Sprite();
this.addChild(this.tabs);
this.setChildIndex(this.tabs, 0);
}
protected function addTab(_arg1:Tab):void{
var _local2:int;
this.tabs.addChild(_arg1);
_arg1.setTabsManager(this);
if (this.tabs.numChildren == 1){
this.selectTab(_arg1);
} else {
this.deselectTab(_arg1);
};
_local2 = (this.tabs.numChildren - 1);
_arg1.getButton().x = ((_arg1.getButton().width * _local2) + (this.tabButtonSeparationX * _local2));
}
public function selectTabIndex(_arg1:int):void{
var _local2:Tab;
trace(this.tabs.numChildren);
_local2 = Tab(this.tabs.getChildAt(_arg1));
this.selectTab(_local2);
}
public function deactivate():void{
this.mouseEnabled = false;
this.mouseChildren = false;
}
public function deselectTab(_arg1:Tab):void{
var _local2:DisplayObject;
if (currentTab != null){
_local2 = _arg1.getContents();
if (((this.contains(_local2)) && (!((_local2 == null))))){
this.removeChild(_arg1.getContents());
};
_arg1.deselected();
};
}
public function itemClicked(_arg1:DisplayObject):void{
}
public function selectTab(_arg1:Tab):void{
this.deselectTab(this.currentTab);
_arg1.selected();
this.addChild(_arg1.getContents());
this.currentTab = _arg1;
}
public function activate():void{
this.mouseEnabled = true;
this.mouseChildren = true;
}
}
}//package gameobjects
Section 106
//ToolBox (gameobjects.ToolBox)
package gameobjects {
import flash.events.*;
import flash.display.*;
public class ToolBox extends TabsManager {
protected const TABS_OFFSET_Y:int = -56;
protected var colorSwirlTab:Tab;
public var background:Sprite;
protected var colorTab:Tab;
protected var decalTab:Tab;
protected var manager:Object;
protected var currentTool:ToolItem;
protected var patternTab:Tab;
public function ToolBox():void{
this.tabButtonSeparationX = 2;
this.background.mouseChildren = false;
this.tabs.y = TABS_OFFSET_Y;
this.colorTab = new ColorTab();
this.addTab(this.colorTab);
this.colorSwirlTab = new ColorSwirlTab();
this.addTab(this.colorSwirlTab);
this.patternTab = new PatternTab();
this.addTab(this.patternTab);
this.decalTab = new DecalTab();
this.addTab(this.decalTab);
}
override protected function addTab(_arg1:Tab):void{
super.addTab(_arg1);
_arg1.getButton().addEventListener(MouseEvent.MOUSE_OVER, onTabButtonMouseOver);
}
public function getCurrentTool():ToolItem{
return (this.currentTool);
}
public function resetTool():void{
this.currentTool = null;
}
override public function itemClicked(_arg1:DisplayObject):void{
var _local2:ToolItem;
_local2 = ToolItem(_arg1);
this.currentTool = _local2;
this.manager.setToolCursor(_local2);
}
public function setManager(_arg1:Object):void{
this.manager = _arg1;
}
protected function onTabButtonMouseOver(_arg1:MouseEvent=null):void{
this.resetTool();
this.manager.resetCursor();
}
}
}//package gameobjects
Section 107
//ToolCursor (gameobjects.ToolCursor)
package gameobjects {
import flash.display.*;
import doogog.*;
public class ToolCursor extends GameObject {
protected var mouseUpImage:Bitmap;
protected var mouseDownImage:Bitmap;
public function ToolCursor():void{
this.mouseEnabled = false;
this.mouseChildren = false;
}
public function setImageData(_arg1:String, _arg2:int=0, _arg3:int=0, _arg4:Boolean=false):void{
var _local5:BitmapData;
var _local6:BitmapData;
if (mouseUpImage != null){
trace((_arg1 + "_frame_0.png"));
this.mouseUpImage.bitmapData = null;
this.removeChild(mouseUpImage);
this.mouseDownImage.bitmapData = null;
this.removeChild(mouseDownImage);
};
if (_arg4){
_local5 = BitmapUtils.getBitmapDataByName((_arg1 + "_frame_0.png"));
_local6 = BitmapUtils.getBitmapDataByName((_arg1 + "_frame_1.png"));
} else {
trace((("name: " + _arg1) + ".png"));
_local5 = BitmapUtils.getBitmapDataByName((_arg1 + ".png"));
_local6 = BitmapUtils.getBitmapDataByName((_arg1 + ".png"));
};
this.mouseUpImage = new Bitmap(_local5);
this.mouseDownImage = new Bitmap(_local6);
this.addChild(this.mouseUpImage);
this.addChild(this.mouseDownImage);
this.mouseUpImage.x = _arg2;
this.mouseUpImage.y = _arg3;
this.mouseDownImage.x = _arg2;
this.mouseDownImage.y = (_arg3 + 5);
this.setMouseUp();
}
public function setMouseUp():void{
if (this.mouseUpImage != null){
this.mouseUpImage.visible = true;
this.mouseDownImage.visible = false;
};
}
public function setMouseDown():void{
if (this.mouseUpImage != null){
this.mouseUpImage.visible = false;
this.mouseDownImage.visible = true;
};
}
}
}//package gameobjects
Section 108
//ToolItem (gameobjects.ToolItem)
package gameobjects {
import flash.display.*;
import flash.geom.*;
import flash.utils.*;
import gui.*;
public class ToolItem extends UIButton {
protected var imageWidth:int;// = 32
protected var imageType:String;// = "png"
protected var imageIndex:int;
protected var shadowX:int;// = 0
protected var shadowY:int;// = 0
protected var shadow:Sprite;
protected var imageBitmap:Bitmap;
protected var imageHeight:int;// = 32
protected var type:String;// = "defaultType"
protected var imageName:String;// = "defaultImageName"
public static const TYPE_ERASER:String = "eraser";
public static const TYPE_DECAL:String = "decal";
public static const TYPE_PATTERN:String = "pattern";
public static const TYPE_COLOR:String = "color";
public function ToolItem(_arg1:int=0):void{
imageName = "defaultImageName";
imageType = "png";
imageWidth = 32;
imageHeight = 32;
shadowX = 0;
shadowY = 0;
type = "defaultType";
super();
}
public function getIndex():int{
return (this.imageIndex);
}
public function setShadowLocation(_arg1:Point):void{
this.shadow.x = _arg1.x;
this.shadow.y = _arg1.y;
}
public function setImage(_arg1:int):void{
var _local2:String;
var _local3:Class;
var _local4:*;
this.shadow = new DropletShadow();
this.addChild(this.shadow);
this.shadow.x = shadowX;
this.shadow.y = shadowY;
this.shadow.mouseChildren = false;
this.shadow.mouseEnabled = false;
this.imageIndex = _arg1;
_local2 = (((this.imageName + this.imageIndex) + ".") + imageType);
_local3 = (getDefinitionByName(_local2) as Class);
_local4 = new _local3(imageWidth, imageHeight);
this.imageBitmap = new Bitmap(_local4);
this.addChild(this.imageBitmap);
}
public function isEraser():Boolean{
return ((this.getIndex() == 0));
}
public function getType():String{
return (this.type);
}
override protected function playClickSound():void{
}
public function getImageData():BitmapData{
return (this.imageBitmap.bitmapData);
}
}
}//package gameobjects
Section 109
//WhiteNailUnderlay (gameobjects.WhiteNailUnderlay)
package gameobjects {
import flash.display.*;
public dynamic class WhiteNailUnderlay extends MovieClip {
}
}//package gameobjects
Section 110
//GameCompleteScreen (gui.GameCompleteScreen)
package gui {
import flash.text.*;
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import com.deadline.utilities.*;
import fl.transitions.easing.*;
import flash.net.*;
public class GameCompleteScreen extends UIScreen {
public var replay_btn;
public var message2:TextField;
public var message1:TextField;
public var gamePointsAmount:TextField;
public var congratsText:TextField;
private var startGame:Function;
public var gamePointsLabel:TextField;
public var charmPointsAmount:TextField;
public var charmPointsLabel:TextField;
public var hostAnimation:MovieClip;
public var click_url_btn;
public function GameCompleteScreen(_arg1:Object=null):void{
super(_arg1);
this.fadeElements.push(this.congratsText);
this.fadeElements.push(this.hostAnimation);
this.fadeElements.push(this.message1);
this.fadeElements.push(this.message2);
this.fadeElements.push(this.gamePointsLabel);
this.fadeElements.push(this.gamePointsAmount);
}
public function localize(_arg1:Function, _arg2:String="", _arg3:String="", _arg4:String="", _arg5:String="", _arg6:String="", _arg7:String="", _arg8:String="", _arg9:String=""):void{
var _startGame = _arg1;
var congratsText = _arg2;
var message1 = _arg3;
var message2 = _arg4;
var gamePointsText = _arg5;
var charmPointsText = _arg6;
var replayText = _arg7;
var clickText = _arg8;
var clickUrl = _arg9;
startGame = _startGame;
this.congratsText.htmlText = congratsText;
this.message1.htmlText = message1;
this.message2.htmlText = message2;
this.gamePointsLabel.htmlText = gamePointsText;
this.replay_btn.buttonMode = true;
this.replay_btn.mouseChildren = false;
this.replay_btn.message.htmlText = replayText;
this.replay_btn.addEventListener(MouseEvent.MOUSE_DOWN, replayClick);
this.click_url_btn.message.htmlText = clickText;
this.click_url_btn.buttonMode = true;
this.click_url_btn.mouseChildren = false;
this.click_url_btn.addEventListener(MouseEvent.MOUSE_DOWN, function (){
var _local1:URLRequest;
_local1 = new URLRequest(clickUrl);
navigateToURL(_local1, "_blank");
});
FitTextToFieldManager.format(this.congratsText);
FitTextToFieldManager.format(this.message1);
FitTextToFieldManager.format(this.message2);
FitTextToFieldManager.format(this.gamePointsLabel);
}
override public function transitionIn():void{
this.gamePointsAmount.text = String(PlayerStats.pointsTotal);
super.transitionIn();
}
protected function replayClick(_arg1:MouseEvent):void{
this.transitionOut();
startGame();
}
protected function playHostAnimation():void{
this.hostAnimation.alpha = 1;
this.hostAnimation.gotoAndPlay(1);
Tweener.addTween(this.hostAnimation, {alpha:0, time:0.7, delay:3.7, transition:"easeOutQuad"});
}
override protected function transitionInDone(_arg1:Event):void{
super.transitionInDone(_arg1);
this.playHostAnimation();
}
}
}//package gui
Section 111
//Hud (gui.Hud)
package gui {
import flash.text.*;
import flash.events.*;
import flash.display.*;
import com.fjakobs.utils.*;
import com.deadline.utilities.*;
import fl.transitions.easing.*;
public class Hud extends Sprite {
protected const TIME_BLINK_INTERVAL:int = 350;
protected const TIME_COLOR_NORMAL:uint = 3355545;
protected const TIME_COLOR_WARN:uint = 0xFF0000;
public var puppiesLabel:TextField;
public var happinessText:TextField;
protected var mainController:Object;
public var title:MovieClip;
public var scoreLabel:TextField;
public var newGameButton:UIButton;
protected var timeColor:uint;
public var timeText:TextField;
public var pauseButton:UIButton;
public var levelLabel:TextField;
protected var levelText:String;
public var helpButton:UIButton;
public var scoreText:TextField;
protected var timeBlinkTimer:ExtendedTimer;
public function Hud(_arg1:Object=null):void{
this.mainController = _arg1;
this.newGameButton.addCallback(newGameClicked);
this.helpButton.addCallback(helpButtonClicked);
this.pauseButton.addCallback(pauseButtonClicked);
this.timeColor = this.TIME_COLOR_NORMAL;
this.timeBlinkTimer = new ExtendedTimer(TIME_BLINK_INTERVAL, 0);
this.timeBlinkTimer.addEventListener(TimerEvent.TIMER, blinkTimerCallback);
}
public function localize(_arg1:String="", _arg2:String="", _arg3:String="", _arg4:String="", _arg5:String="", _arg6:String="", _arg7:String=""):void{
this.scoreLabel.htmlText = _arg1;
this.newGameButton.label.htmlText = _arg2;
this.helpButton.label.htmlText = _arg3;
this.puppiesLabel.htmlText = _arg4;
this.pauseButton.label.htmlText = _arg6;
this.title.titleStroke1_mc.titleText_mc.htmlText = _arg7;
this.title.titleStroke2_mc.titleText_mc.htmlText = _arg7;
this.title.titleStroke3_mc.titleText_mc.htmlText = _arg7;
this.levelText = _arg5;
this.updateLevel(15);
FitTextToFieldManager.format(this.scoreLabel);
FitTextToFieldManager.format(this.newGameButton.label);
FitTextToFieldManager.format(this.helpButton.label);
FitTextToFieldManager.format(this.puppiesLabel);
FitTextToFieldManager.format(this.levelLabel);
FitTextToFieldManager.format(this.pauseButton.label);
FitTextToFieldManager.format(this.title.titleStroke1_mc.titleText_mc);
FitTextToFieldManager.format(this.title.titleStroke2_mc.titleText_mc);
FitTextToFieldManager.format(this.title.titleStroke3_mc.titleText_mc);
}
protected function newGameClicked(_arg1:Event=null):void{
mainController.retryLevel();
}
public function timeWarning(_arg1):void{
if (_arg1){
if (this.timeColor != TIME_COLOR_WARN){
this.timeColor = TIME_COLOR_WARN;
this.timeBlinkTimer.start();
};
} else {
this.timeText.visible = true;
this.timeBlinkTimer.stop();
this.timeColor = TIME_COLOR_NORMAL;
};
}
public function updateTime(_arg1:int):void{
var _local2:int;
var _local3:int;
var _local4:String;
this.timeText.text = String(_arg1);
_local2 = (_arg1 / 60);
_local3 = (_arg1 - (_local2 * 60));
if (_local3 < 10){
_local4 = ("0" + _local3);
} else {
_local4 = String(_local3);
};
this.timeText.text = ((_local2 + ":") + _local4);
this.timeText.textColor = this.timeColor;
}
protected function pauseButtonClicked(_arg1:Event=null):void{
mainController.pause();
}
protected function updateScore():void{
this.scoreText.text = String(PlayerStats.pointsTotal);
}
public function updateLevel(_arg1:int):void{
this.levelLabel.htmlText = ((((this.levelText + " ") + _arg1) + "/") + this.mainController.objMgr.LEVEL_MAX);
FitTextToFieldManager.format(this.levelLabel);
}
protected function blinkTimerCallback(_arg1:Event=null):void{
this.timeText.visible = !(this.timeText.visible);
}
public function update():void{
this.updateScore();
}
protected function helpButtonClicked(_arg1:Event=null):void{
mainController.pauseHelp();
}
}
}//package gui
Section 112
//InstructionsScreen (gui.InstructionsScreen)
package gui {
import flash.text.*;
import flash.events.*;
import flash.display.*;
import com.deadline.utilities.*;
import fl.transitions.easing.*;
public class InstructionsScreen extends UIScreen {
public var title:MovieClip;
public var instructionsLabel:TextField;
public var playButton:UIButton;
public var instructionsMessage:TextField;
public var powerupHelp:MovieClip;
public function InstructionsScreen(_arg1:Object=null):void{
super(_arg1);
this.playButton.addCallback(playButtonClicked);
}
public function localize(_arg1:String="", _arg2:String="", _arg3:String="", _arg4:String=""):void{
this.instructionsLabel.htmlText = _arg1;
this.instructionsMessage.htmlText = _arg2;
this.playButton.label.htmlText = _arg3;
this.title.titleStroke1_mc.titleText_mc.htmlText = _arg4;
this.title.titleStroke2_mc.titleText_mc.htmlText = _arg4;
this.title.titleStroke3_mc.titleText_mc.htmlText = _arg4;
FitTextToFieldManager.format(this.instructionsLabel);
FitTextToFieldManager.format(this.instructionsMessage);
FitTextToFieldManager.format(this.playButton.label);
FitTextToFieldManager.format(this.title.titleStroke1_mc.titleText_mc);
FitTextToFieldManager.format(this.title.titleStroke2_mc.titleText_mc);
FitTextToFieldManager.format(this.title.titleStroke3_mc.titleText_mc);
}
override public function transitionIn():void{
this.visible = true;
this.activate();
}
public function localizePowerupsHelp(_arg1:XMLList):void{
this.powerupHelp.title.htmlText = _arg1.screen.powerup_help_label;
this.powerupHelp.powerup1.htmlText = _arg1.screen.powerup_help_powerup1;
this.powerupHelp.powerup2.htmlText = _arg1.screen.powerup_help_powerup2;
this.powerupHelp.powerup3.htmlText = _arg1.screen.powerup_help_powerup3;
this.powerupHelp.powerup4.htmlText = _arg1.screen.powerup_help_powerup4;
FitTextToFieldManager.format(powerupHelp.title);
FitTextToFieldManager.format(powerupHelp.powerup1);
FitTextToFieldManager.format(powerupHelp.powerup2);
FitTextToFieldManager.format(powerupHelp.powerup3);
FitTextToFieldManager.format(powerupHelp.powerup4);
}
protected function playButtonClicked(_arg1:Event=null){
if (!mainController.isPlaying){
trace("started game");
this.transitionOut();
this.mainController.startGame();
} else {
trace("unpause game");
this.visible = false;
this.deactivate();
mainController.unpause();
};
}
}
}//package gui
Section 113
//IntroScreen (gui.IntroScreen)
package gui {
import flash.text.*;
import flash.events.*;
import flash.display.*;
import com.deadline.utilities.*;
import fl.transitions.easing.*;
import flash.net.*;
public class IntroScreen extends UIScreen {
public var loginButton:UIButton;
public var instructionsButton:UIButton;
public var welcomeMessage:TextField;
public var title:MovieClip;
public var loginMessage:TextField;
public var decor:MovieClip;
public var playButton:UIButton;
public var hostAnimation:MovieClip;
public var click_url_btn;
public function IntroScreen(_arg1:Object=null):void{
super(_arg1);
this.playButton.addCallback(playButtonClicked);
this.instructionsButton.addCallback(instructionsButtonClicked);
this.loginButton.addCallback(loginButtonClicked);
this.fadeElements.push(this.hostAnimation);
this.fadeElements.push(this.title);
this.fadeElements.push(this.welcomeMessage);
this.fadeElements.push(this.decor);
this.fadeElements.push(this.playButton);
this.fadeElements.push(this.instructionsButton);
this.loginMessage.visible = false;
this.loginButton.visible = false;
this.hostAnimation.mouseEnabled = false;
this.hostAnimation.visible = false;
}
public function localize(_arg1:String="", _arg2:String="", _arg3:String="", _arg4:String="", _arg5:String="", _arg6:String="", _arg7:String="", _arg8:String=""):void{
var welcomeMessageText = _arg1;
var playButtonText = _arg2;
var instructionsButtonText = _arg3;
var loginMessageText = _arg4;
var loginButtonText = _arg5;
var gameTitleText = _arg6;
var clickText = _arg7;
var clickUrl = _arg8;
this.welcomeMessage.htmlText = welcomeMessageText;
this.playButton.label.htmlText = playButtonText;
this.instructionsButton.label.htmlText = instructionsButtonText;
this.loginMessage.htmlText = loginMessageText;
this.loginButton.label.htmlText = loginButtonText;
this.title.titleStroke1_mc.titleText_mc.htmlText = gameTitleText;
this.title.titleStroke2_mc.titleText_mc.htmlText = gameTitleText;
this.title.titleStroke3_mc.titleText_mc.htmlText = gameTitleText;
this.click_url_btn.buttonMode = true;
this.click_url_btn.mouseChildren = false;
this.click_url_btn.message.htmlText = clickText;
this.click_url_btn.addEventListener(MouseEvent.MOUSE_DOWN, function (){
var _local1:URLRequest;
_local1 = new URLRequest(clickUrl);
navigateToURL(_local1, "_blank");
});
FitTextToFieldManager.format(this.welcomeMessage);
FitTextToFieldManager.format(this.playButton.label);
FitTextToFieldManager.format(this.instructionsButton.label);
FitTextToFieldManager.format(this.loginMessage);
FitTextToFieldManager.format(this.loginButton.label);
FitTextToFieldManager.format(this.title.titleStroke1_mc.titleText_mc);
FitTextToFieldManager.format(this.title.titleStroke2_mc.titleText_mc);
FitTextToFieldManager.format(this.title.titleStroke3_mc.titleText_mc);
}
protected function loginButtonClicked(_arg1:Event=null):void{
}
protected function playButtonClicked(_arg1:Event=null){
this.transitionOut();
mainController.startGame();
}
protected function playHostAnimation():void{
this.hostAnimation.visible = true;
SoundManager.playSound(NailSalonAudio.HOST_WELCOME);
this.hostAnimation.gotoAndPlay(1);
}
protected function instructionsButtonClicked(_arg1:Event=null):void{
this.transitionOut();
mainController.showInstructionsScreen();
}
override protected function transitionInDone(_arg1:Event):void{
super.transitionInDone(_arg1);
this.playHostAnimation();
}
}
}//package gui
Section 114
//LevelCompleteScreen (gui.LevelCompleteScreen)
package gui {
import flash.text.*;
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import com.deadline.utilities.*;
import fl.transitions.easing.*;
import flash.net.*;
public class LevelCompleteScreen extends UIScreen {
public var levelUpLabel:TextField;
public var nextButton:UIButton;
public var gamePointsAmount:TextField;
public var gamePointsLabel:TextField;
public var charmPointsAmount:TextField;
public var hostAnimation:MovieClip;
public var click_url_btn;
public function LevelCompleteScreen(_arg1:Object=null):void{
super(_arg1);
this.nextButton.addCallback(nextButtonClicked);
this.fadeElements.push(this.levelUpLabel);
this.fadeElements.push(this.gamePointsLabel);
this.fadeElements.push(this.gamePointsAmount);
this.fadeElements.push(this.nextButton);
this.addEventListener(KeyboardEvent.KEY_UP, keyReleased);
}
public function localize(_arg1:String="", _arg2:String="", _arg3:String="", _arg4:String="", _arg5:String="", _arg6:String="", _arg7:String="", _arg8:String=""):void{
var levelUpText = _arg1;
var gamePointsText = _arg2;
var timeBonusText = _arg3;
var charmPointsText = _arg4;
var nextButtonText = _arg5;
var loginAlertText = _arg6;
var clickText = _arg7;
var clickUrl = _arg8;
this.levelUpLabel.htmlText = levelUpText;
this.gamePointsLabel.htmlText = gamePointsText;
this.click_url_btn.buttonMode = true;
this.click_url_btn.mouseChildren = false;
this.click_url_btn.message.htmlText = clickText;
this.click_url_btn.addEventListener(MouseEvent.MOUSE_DOWN, function (){
var _local1:URLRequest;
_local1 = new URLRequest(clickUrl);
navigateToURL(_local1, "_blank");
});
FitTextToFieldManager.format(this.levelUpLabel);
FitTextToFieldManager.format(this.gamePointsLabel);
FitTextToFieldManager.format(this.nextButton.label);
}
override public function transitionIn():void{
this.gamePointsAmount.text = String(PlayerStats.pointsThisLevel);
super.transitionIn();
}
protected function nextButtonClicked(_arg1:Event=null){
this.transitionOut();
this.mainController.nextLevel();
}
protected function keyReleased(_arg1:KeyboardEvent):void{
if ((((_arg1.keyCode == 32)) || ((_arg1.keyCode == 13)))){
if (this.alpha == 1){
this.nextButtonClicked(null);
};
};
}
protected function playHostAnimation():void{
this.hostAnimation.alpha = 1;
this.hostAnimation.gotoAndPlay(1);
Tweener.addTween(this.hostAnimation, {alpha:0, time:0.7, delay:3.7, transition:"easeOutQuad"});
}
override protected function transitionInDone(_arg1:Event):void{
super.transitionInDone(_arg1);
}
}
}//package gui
Section 115
//LevelFailScreen (gui.LevelFailScreen)
package gui {
import flash.text.*;
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import com.deadline.utilities.*;
import fl.transitions.easing.*;
public class LevelFailScreen extends UIScreen {
public var retryButton:UIButton;
public var failMessage:TextField;
public var failLabel:TextField;
public var hostAnimation:MovieClip;
public function LevelFailScreen(_arg1:Object=null):void{
super(_arg1);
this.retryButton.addCallback(retryButtonClicked);
this.fadeElements.push(this.failLabel);
this.fadeElements.push(this.failMessage);
this.fadeElements.push(this.retryButton);
this.addEventListener(KeyboardEvent.KEY_UP, keyReleased);
}
public function localize(_arg1:String="", _arg2:String="", _arg3:String=""):void{
this.failLabel.htmlText = _arg1;
this.failMessage.htmlText = _arg2;
this.retryButton.label.htmlText = _arg3;
FitTextToFieldManager.format(this.failLabel);
FitTextToFieldManager.format(this.failMessage);
FitTextToFieldManager.format(this.retryButton.label);
}
protected function retryButtonClicked(_arg1:Event=null){
this.transitionOut();
this.mainController.retryLevelWithoutClear();
}
protected function keyReleased(_arg1:KeyboardEvent):void{
if ((((_arg1.keyCode == 32)) || ((_arg1.keyCode == 13)))){
if (this.alpha == 1){
this.retryButtonClicked(null);
};
};
}
protected function playHostAnimation():void{
this.hostAnimation.alpha = 1;
this.hostAnimation.gotoAndPlay(1);
Tweener.addTween(this.hostAnimation, {alpha:0, time:0.7, delay:1.7, transition:"easeOutQuad"});
}
override protected function transitionInDone(_arg1:Event):void{
super.transitionInDone(_arg1);
}
}
}//package gui
Section 116
//Overframe (gui.Overframe)
package gui {
import flash.events.*;
import flash.display.*;
public class Overframe extends Sprite {
public var soundEffectsButton:ToggleButton;
public var musicButton:ToggleButton;
public function Overframe():void{
this.soundEffectsButton.addCallback(soundEffectsButtonClicked);
this.musicButton.addCallback(musicButtonClicked);
}
protected function soundEffectsButtonClicked(_arg1:MouseEvent=null):void{
SoundManager.soundStatus = !(SoundManager.soundStatus);
this.soundEffectsButton.setStatus(SoundManager.soundStatus);
}
protected function musicButtonClicked(_arg1:MouseEvent=null):void{
SoundManager.musicStatus = !(SoundManager.musicStatus);
if (SoundManager.musicStatus){
SoundManager.resumeBackgroundMusic();
} else {
SoundManager.stopBackgroundMusic();
};
this.musicButton.setStatus(SoundManager.musicStatus);
}
}
}//package gui
Section 117
//PauseScreen (gui.PauseScreen)
package gui {
import flash.text.*;
import flash.events.*;
import com.deadline.utilities.*;
import fl.transitions.easing.*;
public class PauseScreen extends UIScreen {
public var retryButton:UIButton;
public var pausedTitle:TextField;
public var resumeButton:UIButton;
public function PauseScreen(_arg1:Object=null):void{
super(_arg1);
this.resumeButton.addCallback(resumeButtonClicked);
this.retryButton.addCallback(retryClicked);
}
public function localize(_arg1:String="", _arg2:String="", _arg3:String=""):void{
this.pausedTitle.htmlText = _arg1;
this.resumeButton.label.htmlText = _arg2;
this.retryButton.label.htmlText = _arg3;
FitTextToFieldManager.format(this.pausedTitle);
FitTextToFieldManager.format(this.resumeButton.label);
FitTextToFieldManager.format(this.retryButton.label);
}
protected function retryClicked(_arg1:Event=null):void{
this.transitionOut();
this.mainController.unpause();
this.mainController.retryLevel();
}
protected function resumeButtonClicked(_arg1:Event=null){
this.visible = false;
this.deactivate();
mainController.unpause();
}
}
}//package gui
Section 118
//PuppiesPercentageBar (gui.PuppiesPercentageBar)
package gui {
import flash.display.*;
public dynamic class PuppiesPercentageBar extends MovieClip {
public var barMask:MovieClip;
public var puppyIcon:MovieClip;
}
}//package gui
Section 119
//ToggleButton (gui.ToggleButton)
package gui {
public class ToggleButton extends UIButton {
protected var status:Boolean;
public function ToggleButton():void{
}
public function setStatus(_arg1:Boolean):void{
this.status = _arg1;
if (_arg1){
this.alpha = 1;
} else {
this.alpha = 0.5;
};
}
override protected function playClickSound():void{
}
}
}//package gui
Section 120
//UIButton (gui.UIButton)
package gui {
import flash.text.*;
import flash.events.*;
import flash.display.*;
import flash.filters.*;
public class UIButton extends MovieClip {
public var label:TextField;
protected var callbacks:Array;
public function UIButton():void{
this.addEventListener(MouseEvent.MOUSE_UP, mouseUp);
this.addEventListener(MouseEvent.MOUSE_OVER, mouseOver);
this.addEventListener(MouseEvent.MOUSE_OUT, mouseOut);
this.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown);
this.buttonMode = true;
if (this.label){
this.label.mouseEnabled = false;
};
this.callbacks = new Array();
}
public function addCallback(_arg1:Function){
this.callbacks.push(_arg1);
}
protected function mouseOver(_arg1:Event):void{
this.glow();
}
protected function mouseUp(_arg1:Event):void{
var _local2:int;
this.glow();
this.playClickSound();
_local2 = 0;
while (_local2 < this.callbacks.length) {
var _local3 = this.callbacks;
_local3[_local2]();
_local2++;
};
}
protected function mouseOut(_arg1:Event):void{
this.filters = [];
}
protected function glow():void{
var _local1:Array;
var _local2:ColorMatrixFilter;
_local1 = [1, 0, 0, 0, 50, 0, 1, 0, 0, 50, 0, 0, 1, 0, 50, 0, 0, 0, 1, 0];
_local2 = new ColorMatrixFilter(_local1);
this.filters = [_local2];
}
protected function playClickSound():void{
SoundManager.playSound(NailSalonAudio.CLICK);
}
protected function mouseDown(_arg1:Event):void{
var _local2:Array;
var _local3:ColorMatrixFilter;
_local2 = [1, 0, 0, 0, -30, 0, 1, 0, 0, -30, 0, 0, 1, 0, -30, 0, 0, 0, 1, 0];
_local3 = new ColorMatrixFilter(_local2);
this.filters = [_local3];
}
}
}//package gui
Section 121
//UIScreen (gui.UIScreen)
package gui {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import fl.transitions.easing.*;
import fl.transitions.*;
public class UIScreen extends Sprite {
protected var transitionInTween:Tween;
protected var transitionOutTween:Tween;
protected var mainController:Object;
protected var fadeElements:Array;
public function UIScreen(_arg1:Object=null):void{
this.fadeElements = new Array();
this.mainController = _arg1;
}
protected function transitionInDone(_arg1:Event):void{
this.activate();
}
public function transitionIn():void{
var _local1:int;
var _local2:DisplayObject;
var _local3:Number;
this.visible = true;
this.transitionOutTween = new Tween(this, "alpha", Strong.easeOut, 0, 1, 0.7, true);
this.transitionOutTween.addEventListener(TweenEvent.MOTION_FINISH, this.transitionInDone);
_local1 = 0;
while (_local1 < this.fadeElements.length) {
_local2 = this.fadeElements[_local1];
_local3 = (0.2 + (0.15 * _local1));
_local2.alpha = 0;
Tweener.addTween(_local2, {alpha:1, delay:_local3, time:0.4, transition:"easeInQuad"});
_local1++;
};
}
public function deactivate():void{
this.mouseEnabled = false;
this.mouseChildren = false;
}
public function transitionOut():void{
this.deactivate();
this.transitionOutTween = new Tween(this, "alpha", Strong.easeOut, 1, 0, 0.7, true);
this.transitionOutTween.addEventListener(TweenEvent.MOTION_FINISH, this.transitionOutDone);
}
protected function transitionOutDone(_arg1:Event):void{
this.transitionOutTween.removeEventListener(TweenEvent.MOTION_FINISH, transitionOutDone);
this.visible = false;
this.alpha = 1;
}
public function activate():void{
this.mouseEnabled = true;
this.mouseChildren = true;
}
}
}//package gui
Section 122
//png (nail_color_0.png)
package nail_color_0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_color_0
Section 123
//png (nail_color_1.png)
package nail_color_1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_color_1
Section 124
//png (nail_color_10.png)
package nail_color_10 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_color_10
Section 125
//png (nail_color_11.png)
package nail_color_11 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_color_11
Section 126
//png (nail_color_12.png)
package nail_color_12 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_color_12
Section 127
//png (nail_color_13.png)
package nail_color_13 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_color_13
Section 128
//png (nail_color_14.png)
package nail_color_14 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_color_14
Section 129
//png (nail_color_2.png)
package nail_color_2 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_color_2
Section 130
//png (nail_color_3.png)
package nail_color_3 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_color_3
Section 131
//png (nail_color_4.png)
package nail_color_4 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_color_4
Section 132
//png (nail_color_5.png)
package nail_color_5 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_color_5
Section 133
//png (nail_color_6.png)
package nail_color_6 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_color_6
Section 134
//png (nail_color_7.png)
package nail_color_7 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_color_7
Section 135
//png (nail_color_8.png)
package nail_color_8 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_color_8
Section 136
//png (nail_color_9.png)
package nail_color_9 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_color_9
Section 137
//png (nail_decal_1.png)
package nail_decal_1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_decal_1
Section 138
//png (nail_decal_2.png)
package nail_decal_2 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_decal_2
Section 139
//png (nail_decal_3.png)
package nail_decal_3 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_decal_3
Section 140
//png (nail_decal_4.png)
package nail_decal_4 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_decal_4
Section 141
//png (nail_decal_5.png)
package nail_decal_5 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_decal_5
Section 142
//png (nail_decal_6.png)
package nail_decal_6 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_decal_6
Section 143
//png (nail_decal_7.png)
package nail_decal_7 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_decal_7
Section 144
//png (nail_pattern_0.png)
package nail_pattern_0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_pattern_0
Section 145
//png (nail_pattern_1.png)
package nail_pattern_1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_pattern_1
Section 146
//png (nail_pattern_2.png)
package nail_pattern_2 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_pattern_2
Section 147
//png (nail_pattern_3.png)
package nail_pattern_3 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_pattern_3
Section 148
//png (nail_pattern_4.png)
package nail_pattern_4 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_pattern_4
Section 149
//png (nail_pattern_5.png)
package nail_pattern_5 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_pattern_5
Section 150
//png (nail_pattern_6.png)
package nail_pattern_6 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_pattern_6
Section 151
//png (nail_pattern_7.png)
package nail_pattern_7 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_pattern_7
Section 152
//png (nail_white_underlay.png)
package nail_white_underlay {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package nail_white_underlay
Section 153
//_PreloadAssets_4 (nailsalon_fla._PreloadAssets_4)
package nailsalon_fla {
import flash.display.*;
public dynamic class _PreloadAssets_4 extends MovieClip {
public function _PreloadAssets_4(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package nailsalon_fla
Section 154
//_PreloadAudio_71 (nailsalon_fla._PreloadAudio_71)
package nailsalon_fla {
import flash.display.*;
public dynamic class _PreloadAudio_71 extends MovieClip {
public function _PreloadAudio_71(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package nailsalon_fla
Section 155
//30_secs_minus_mc_85 (nailsalon_fla.30_secs_minus_mc_85)
package nailsalon_fla {
import flash.text.*;
import flash.display.*;
public dynamic class 30_secs_minus_mc_85 extends MovieClip {
public var time:TextField;
}
}//package nailsalon_fla
Section 156
//click_url_47 (nailsalon_fla.click_url_47)
package nailsalon_fla {
import flash.text.*;
import flash.display.*;
public dynamic class click_url_47 extends MovieClip {
public var message:TextField;
}
}//package nailsalon_fla
Section 157
//countdowntimelabel_73 (nailsalon_fla.countdowntimelabel_73)
package nailsalon_fla {
import flash.text.*;
import flash.display.*;
public dynamic class countdowntimelabel_73 extends MovieClip {
public var value:TextField;
}
}//package nailsalon_fla
Section 158
//HostSara1Bad_69 (nailsalon_fla.HostSara1Bad_69)
package nailsalon_fla {
import flash.display.*;
public dynamic class HostSara1Bad_69 extends MovieClip {
public function HostSara1Bad_69(){
addFrameScript(6, frame7, 111, frame112);
}
function frame7(){
}
function frame112(){
stop();
}
}
}//package nailsalon_fla
Section 159
//HostSara1Good_70 (nailsalon_fla.HostSara1Good_70)
package nailsalon_fla {
import flash.display.*;
public dynamic class HostSara1Good_70 extends MovieClip {
public function HostSara1Good_70(){
addFrameScript(2, frame3, 111, frame112);
}
function frame3(){
}
function frame112(){
stop();
}
}
}//package nailsalon_fla
Section 160
//HostSara1Welcome_Large_63 (nailsalon_fla.HostSara1Welcome_Large_63)
package nailsalon_fla {
import flash.display.*;
public dynamic class HostSara1Welcome_Large_63 extends MovieClip {
public function HostSara1Welcome_Large_63(){
addFrameScript(47, frame48);
}
function frame48(){
stop();
}
}
}//package nailsalon_fla
Section 161
//loadBar_2 (nailsalon_fla.loadBar_2)
package nailsalon_fla {
import flash.display.*;
public dynamic class loadBar_2 extends MovieClip {
public var loaderMask:MovieClip;
}
}//package nailsalon_fla
Section 162
//points_amount_dynamic_mc_76 (nailsalon_fla.points_amount_dynamic_mc_76)
package nailsalon_fla {
import flash.text.*;
import flash.display.*;
public dynamic class points_amount_dynamic_mc_76 extends MovieClip {
public var amount:TextField;
}
}//package nailsalon_fla
Section 163
//PowerupHelp_60 (nailsalon_fla.PowerupHelp_60)
package nailsalon_fla {
import flash.text.*;
import flash.display.*;
public dynamic class PowerupHelp_60 extends MovieClip {
public var title:TextField;
public var powerup1:TextField;
public var powerup2:TextField;
public var powerup3:TextField;
public var powerup4:TextField;
}
}//package nailsalon_fla
Section 164
//replay_btn_mc_49 (nailsalon_fla.replay_btn_mc_49)
package nailsalon_fla {
import flash.text.*;
import flash.display.*;
public dynamic class replay_btn_mc_49 extends MovieClip {
public var message:TextField;
}
}//package nailsalon_fla
Section 165
//titleLarge_59 (nailsalon_fla.titleLarge_59)
package nailsalon_fla {
import flash.display.*;
public dynamic class titleLarge_59 extends MovieClip {
public var titleStroke1_mc:MovieClip;
public var titleStroke2_mc:MovieClip;
public var titleGradient_mc:MovieClip;
public var titleStroke3_mc:MovieClip;
}
}//package nailsalon_fla
Section 166
//titleName_56 (nailsalon_fla.titleName_56)
package nailsalon_fla {
import flash.text.*;
import flash.display.*;
public dynamic class titleName_56 extends MovieClip {
public var titleText_mc:TextField;
}
}//package nailsalon_fla
Section 167
//titleSmall_55 (nailsalon_fla.titleSmall_55)
package nailsalon_fla {
import flash.display.*;
public dynamic class titleSmall_55 extends MovieClip {
public var titleStroke1_mc:MovieClip;
public var titleStroke2_mc:MovieClip;
public var titleGradient_mc:MovieClip;
public var titleStroke3_mc:MovieClip;
}
}//package nailsalon_fla
Section 168
//WaitCommand (net.aubby.utility.WaitCommand)
package net.aubby.utility {
import flash.events.*;
import flash.display.*;
import flash.utils.*;
public class WaitCommand extends EventDispatcher {
protected var duration:Number;
protected var timer:Timer;
protected var onComplete:Function;
public function WaitCommand(_arg1:DisplayObject, _arg2:Number, _arg3:Function, _arg4:Boolean=false){
var _local5:Number;
var _local6:Number;
super();
onComplete = _arg3;
if (_arg4){
_local5 = _arg1.stage.frameRate;
_local6 = ((1000 / _local5) * _arg2);
duration = _local6;
} else {
duration = _arg2;
};
timer = new Timer(duration, 1);
timer.addEventListener(TimerEvent.TIMER_COMPLETE, timerComplete);
timer.start();
}
protected function timerComplete(_arg1:TimerEvent):void{
timer.removeEventListener(TimerEvent.TIMER_COMPLETE, timerComplete);
timer = null;
onComplete();
onComplete = null;
}
}
}//package net.aubby.utility
Section 169
//png (pattern_icon0.png)
package pattern_icon0 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package pattern_icon0
Section 170
//png (pattern_icon1.png)
package pattern_icon1 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package pattern_icon1
Section 171
//png (pattern_icon2.png)
package pattern_icon2 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package pattern_icon2
Section 172
//png (pattern_icon3.png)
package pattern_icon3 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package pattern_icon3
Section 173
//png (pattern_icon4.png)
package pattern_icon4 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package pattern_icon4
Section 174
//png (pattern_icon5.png)
package pattern_icon5 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package pattern_icon5
Section 175
//png (pattern_icon6.png)
package pattern_icon6 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package pattern_icon6
Section 176
//png (pattern_icon7.png)
package pattern_icon7 {
import flash.display.*;
public dynamic class png extends BitmapData {
public function png(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package pattern_icon7
Section 177
//AngryEffect (AngryEffect)
package {
import flash.display.*;
public dynamic class AngryEffect extends MovieClip {
public function AngryEffect(){
addFrameScript(47, frame48);
}
function frame48(){
stop();
}
}
}//package
Section 178
//CharmsUnlock (CharmsUnlock)
package {
import flash.text.*;
import flash.display.*;
public dynamic class CharmsUnlock extends MovieClip {
public var unlockMessage:TextField;
}
}//package
Section 179
//CountdownEffect (CountdownEffect)
package {
import flash.display.*;
public dynamic class CountdownEffect extends MovieClip {
public var label:MovieClip;
public function CountdownEffect(){
addFrameScript(30, frame31);
}
function frame31(){
stop();
}
}
}//package
Section 180
//FailEffect (FailEffect)
package {
import flash.display.*;
public dynamic class FailEffect extends MovieClip {
public function FailEffect(){
addFrameScript(47, frame48);
}
function frame48(){
stop();
}
}
}//package
Section 181
//HelpButton (HelpButton)
package {
import gui.*;
public dynamic class HelpButton extends UIButton {
}
}//package
Section 182
//HorizontalLoader (HorizontalLoader)
package {
import flash.display.*;
public dynamic class HorizontalLoader extends MovieClip {
public var loadBar:MovieClip;
}
}//package
Section 183
//HostAnimation (HostAnimation)
package {
import flash.display.*;
public dynamic class HostAnimation extends MovieClip {
}
}//package
Section 184
//InstructionsButton (InstructionsButton)
package {
import gui.*;
public dynamic class InstructionsButton extends UIButton {
}
}//package
Section 185
//LoginButton (LoginButton)
package {
import gui.*;
public dynamic class LoginButton extends UIButton {
}
}//package
Section 186
//Music_WestWing (Music_WestWing)
package {
import flash.media.*;
public dynamic class Music_WestWing extends Sound {
}
}//package
Section 187
//MusicButton (MusicButton)
package {
import gui.*;
public dynamic class MusicButton extends ToggleButton {
}
}//package
Section 188
//NailSalon (NailSalon)
package {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import gui.*;
import flash.system.*;
public class NailSalon extends MovieClip {
public var pauseScreen:PauseScreen;
public var overframeButtons:Sprite;
public var instructionsScreen:InstructionsScreen;
protected var maxLevel:int;// = 5
public var screenHeight:Number;// = 443
public var screenWidth:Number;// = 725
protected var localizationXML:NailSalonXML;
public var preloadAssets:MovieClip;
public var hud:Hud;
public var isPaused:Boolean;// = false
public var overframe:Sprite;
protected var curLevel:int;// = 0
public var endScreen:Sprite;
public var gui:Sprite;
public var preloadAudio:MovieClip;
public var horizontalLoader:MovieClip;
public var gameCompleteScreen:GameCompleteScreen;
public var objMgr:ObjectManager;
public var isPlaying:Boolean;// = false
public var levelCompleteScreen:LevelCompleteScreen;
public var levelFailScreen:LevelFailScreen;
public var introScreen:IntroScreen;
public static const FRAME_RATE:int = 31;
public static const YAHOO_SCALE_X:Number = 0.88;
public static const FRAME_OFFSET_X:int = 5;
public static const YAHOO_SCALE_Y:Number = 0.88;
public static const LOGIN_URL:String = "http://www-full.alpha.charmgirlsclub.com/login.action";
public static const DEFAULT_XML_PATH:String = "nailsalon.xml";
public static const FRAME_OFFSET_Y:int = 5;
public static var frameRate:Number;
public static var world:NailSalon;
public function NailSalon():void{
screenWidth = 725;
screenHeight = 443;
isPlaying = false;
isPaused = false;
curLevel = 0;
maxLevel = 5;
super();
addFrameScript(1, frame2);
NailSalon.world = this;
NailSalon.frameRate = FRAME_RATE;
Security.allowDomain("*");
Security.allowInsecureDomain("*");
this.addEventListener(Event.ENTER_FRAME, mainLoop);
this.preload();
}
public function pause():void{
this.objMgr.pause();
this.showPauseScreen();
this.objMgr.resetCursor();
this.isPaused = true;
}
public function timeWarning(_arg1:Boolean):void{
this.hud.timeWarning(_arg1);
}
protected function localize():void{
this.localizationXML = new NailSalonXML();
localizationXMLLoaded();
}
protected function preload():void{
Tweener.addTween(this.horizontalLoader, {alpha:1, time:0.5});
this.loaderInfo.addEventListener(ProgressEvent.PROGRESS, onPreloadProgress);
this.stop();
}
public function retryLevelWithoutClear():void{
this.startLevel(this.curLevel);
}
protected function startLevel(_arg1:int):void{
this.curLevel = _arg1;
this.hud.updateLevel(_arg1);
this.objMgr.startLevel(_arg1);
}
public function nextLevel():void{
this.startLevel((this.curLevel + 1));
}
protected function scaleForYahoo(_arg1:DisplayObject):void{
_arg1.scaleX = YAHOO_SCALE_X;
_arg1.scaleY = YAHOO_SCALE_Y;
}
protected function preloadComplete(_arg1:Event=null):void{
this.removeChild(horizontalLoader);
this.gotoAndStop(2);
this.initStage();
}
protected function localizationXMLLoaded():void{
trace("XML Loaded");
this.setupGui();
this.objMgr.setGameVars(this.localizationXML.data.flash.chrome);
this.objMgr.setGameXML(this.localizationXML.data);
}
public function stopPlay():void{
this.isPlaying = false;
}
public function showInstructionsScreen():void{
this.instructionsScreen.visible = true;
this.instructionsScreen.activate();
}
public function pauseHelp():void{
this.objMgr.pause();
this.showInstructionsScreen();
this.isPaused = true;
this.objMgr.resetCursor();
}
function frame2(){
preloadAudio.visible = false;
preloadAssets.visible = false;
}
protected function nextLevelTransition():void{
if (this.curLevel == this.maxLevel){
};
}
protected function onMouseOverHud(_arg1:MouseEvent=null):void{
this.objMgr.resetCursor();
}
public function getGameVars():XMLList{
return (this.localizationXML.data.flash.chrome);
}
public function showPauseScreen():void{
this.pauseScreen.visible = true;
this.pauseScreen.activate();
}
public function showMainMenu():void{
this.introScreen.transitionIn();
}
public function unpause():void{
this.objMgr.unpause();
this.isPaused = false;
}
public function resumePlay():void{
this.isPlaying = true;
}
public function showLevelFailScreen():void{
this.levelFailScreen.transitionIn();
stage.focus = this.levelFailScreen;
}
public function checkForUnlock(_arg1:int):void{
}
public function showLevelCompleteScreen():void{
this.levelCompleteScreen.transitionIn();
stage.focus = this.levelCompleteScreen;
}
protected function onPreloadProgress(_arg1:ProgressEvent):void{
var _local2:Number;
_local2 = (_arg1.bytesLoaded / _arg1.bytesTotal);
this.horizontalLoader.loadBar.loaderMask.x = (this.horizontalLoader.loadBar.loaderMask.width * _local2);
if (_local2 == 1){
Tweener.addTween(this.horizontalLoader, {alpha:0, delay:0.5, time:1, onComplete:preloadComplete});
};
}
public function startGame():void{
this.objMgr.visible = true;
this.resumePlay();
this.startLevel(1);
this.scaleForYahoo(this.objMgr);
}
protected function setupGui():void{
this.gui = new Sprite();
this.addChild(this.gui);
this.gui.mouseEnabled = false;
this.scaleForYahoo(this.gui);
this.gui.x = (this.gui.x + FRAME_OFFSET_X);
this.gui.y = (this.gui.y + FRAME_OFFSET_Y);
this.gui.visible = false;
this.hud = new Hud(this);
this.gui.addChild(this.hud);
this.hud.x = (this.hud.x - this.gui.x);
this.hud.y = (this.hud.y - this.gui.y);
this.hud.addEventListener(MouseEvent.MOUSE_OVER, onMouseOverHud);
this.introScreen = new IntroScreen(this);
this.gui.addChild(this.introScreen);
this.instructionsScreen = new InstructionsScreen(this);
this.gui.addChild(this.instructionsScreen);
this.instructionsScreen.deactivate();
this.instructionsScreen.visible = false;
this.levelCompleteScreen = new LevelCompleteScreen(this);
this.gui.addChild(this.levelCompleteScreen);
this.levelCompleteScreen.deactivate();
this.levelCompleteScreen.visible = false;
this.gameCompleteScreen = new GameCompleteScreen(this);
this.gui.addChild(this.gameCompleteScreen);
this.gameCompleteScreen.deactivate();
this.gameCompleteScreen.visible = false;
this.levelFailScreen = new LevelFailScreen(this);
this.gui.addChild(this.levelFailScreen);
this.levelFailScreen.deactivate();
this.levelFailScreen.visible = false;
this.pauseScreen = new PauseScreen(this);
this.gui.addChild(this.pauseScreen);
this.pauseScreen.deactivate();
this.pauseScreen.visible = false;
this.overframe = new Overframe();
this.gui.addChild(this.overframe);
this.overframe.x = (this.overframe.x - this.gui.x);
this.overframe.y = (this.overframe.y - this.gui.y);
this.overframe.mouseEnabled = false;
this.introScreen.localize(this.localizationXML.data.flash.screen.welcome_text1, this.localizationXML.data.flash.screen.welcome_play_button, this.localizationXML.data.flash.screen.welcome_instructions_button, this.localizationXML.data.flash.screen.welcome_login_message, this.localizationXML.data.flash.screen.welcome_login_button, this.localizationXML.data.flash.screen.game_title, this.localizationXML.data.flash.overlay.click_txt, this.localizationXML.data.flash.overlay.click_url);
this.instructionsScreen.localize(this.localizationXML.data.flash.screen.instructions_label, this.localizationXML.data.flash.screen.instructions_text1, this.localizationXML.data.flash.screen.instructions_play, this.localizationXML.data.flash.screen.game_title);
this.instructionsScreen.localizePowerupsHelp(this.localizationXML.data.flash);
this.hud.localize(this.localizationXML.data.flash.chrome.score, this.localizationXML.data.flash.chrome.retry, this.localizationXML.data.flash.chrome.help, this.localizationXML.data.flash.chrome.puppies, this.localizationXML.data.flash.chrome.level, this.localizationXML.data.flash.chrome.pause, this.localizationXML.data.flash.screen.game_title);
this.levelCompleteScreen.localize(this.localizationXML.data.flash.overlay.levelReport_title, this.localizationXML.data.flash.overlay.levelReport_points, this.localizationXML.data.flash.overlay.levelReport_time, this.localizationXML.data.flash.overlay.levelReport_charms, this.localizationXML.data.flash.overlay.levelReport_next, this.localizationXML.data.flash.overlay.levelReport_login, this.localizationXML.data.flash.overlay.click_txt, this.localizationXML.data.flash.overlay.click_url);
this.levelFailScreen.localize(this.localizationXML.data.flash.overlay.gameover_title, this.localizationXML.data.flash.overlay.gameover_text, this.localizationXML.data.flash.overlay.gameover_retry);
this.pauseScreen.localize(this.localizationXML.data.flash.overlay.paused_text, this.localizationXML.data.flash.overlay.resume_text, this.localizationXML.data.flash.overlay.gameover_retry);
this.gameCompleteScreen.localize(newGame, this.localizationXML.data.flash.overlay.game_complete_title, this.localizationXML.data.flash.overlay.game_complete_message1, this.localizationXML.data.flash.overlay.game_complete_message2, this.localizationXML.data.flash.overlay.game_complete_points, this.localizationXML.data.flash.overlay.game_complete_charms, this.localizationXML.data.flash.overlay.replay, this.localizationXML.data.flash.overlay.click_txt, this.localizationXML.data.flash.overlay.click_url);
this.gui.visible = true;
this.showMainMenu();
}
public function showGameCompleteScreen():void{
this.gameCompleteScreen.transitionIn();
}
public function newGame():void{
this.stopPlay();
this.objMgr.clearLevel();
this.showMainMenu();
}
public function retryLevel():void{
this.objMgr.clearLevel();
this.startLevel(this.curLevel);
}
protected function initStage(_arg1:Event=null):void{
stage.stageFocusRect = false;
objMgr = new ObjectManager(this);
objMgr.visible = false;
this.addChild(objMgr);
this.localize();
SoundManager.loadBackgroundMusic(NailSalonAudio.BGM0);
SoundManager.startBackgroundMusic();
}
protected function mainLoop(_arg1:Event):void{
if (((!(this.isPaused)) && (this.isPlaying))){
};
}
}
}//package
Section 189
//NailSalonAudio (NailSalonAudio)
package {
public class NailSalonAudio {
public static const CLICK:String = "Sound_Click";
public static const OOPS:String = "Sound_Oops";
public static const TIME_WARN:String = "Sound_TimeWarn";
public static const BGM0:String = "Music_WestWing";
public static const HOST_WELCOME:String = "Sound_HostWelcome";
public static const HOST_BAD:String = "Sound_HostBad";
public static const DOG_SAD:String = "Sound_DogSad";
public static const LEVEL_COMPLETE:String = "Sound_LevelComplete";
public static const BLING:String = "Sound_Runway";
public static const LEVEL_FAIL:String = "Sound_MagicAccent";
public static const HOST_GOOD:String = "Sound_HostGood";
public static const TWINKLE:String = "Sound_Twinkle";
public function NailSalonAudio():void{
}
}
}//package
Section 190
//NailSalonXML (NailSalonXML)
package {
public class NailSalonXML {
protected var _data:XML;
public function NailSalonXML(){
_data = <root>
<omniture>
<languageCode>en_US</languageCode>
<country>US</country>
<region>NA</region>
<reportSuites>eaeacom,aeacomna</reportSuites>
</omniture>
<flash>
<rootPath>test/</rootPath>
<domain>http://www.dead-line.com/users/</domain>
<esrbLogo>images/global/esrb.png</esrbLogo>
<chrome>
<score>SCORE</score>
<retry>RETRY</retry>
<help>?</help>
<level>LEVEL</level>
<pause>PAUSE</pause>
<charmPointsAtLevel>5,5,5,5,5,10,10,10,10,10,15,15,15,15,15</charmPointsAtLevel>
<CharmAwardSKU></CharmAwardSKU>
<CharmAward_Level3></CharmAward_Level3>
<CharmAward_Level6></CharmAward_Level6>
<CharmAward_Level9></CharmAward_Level9>
<CharmAward_Level12></CharmAward_Level12>
<CharmAward_Level15></CharmAward_Level15>
<login_url>login.action</login_url>
<colors_instructions>Pick the correct colors and paint them! Swipe on the nails to paint.</colors_instructions>
<patterns_instructions>Pick the correct patterns and click on the nails to apply.</patterns_instructions>
<decals_instructions>Pick the correct decals and click on the nails to place.</decals_instructions>
</chrome>
<overlay>
<gameover_title>TRY AGAIN!</gameover_title>
<gameover_text>Replay to get more charm points!</gameover_text>
<gameover_retry>RETRY</gameover_retry>
<levelReport_title>LEVEL UP!!</levelReport_title>
<levelReport_points>Game Points:</levelReport_points>
<levelReport_charms>Charm Points:</levelReport_charms>
<levelReport_time>Time Bonus:</levelReport_time>
<levelReport_next>NEXT</levelReport_next>
<levelReport_login>Please login to receive charm points!</levelReport_login>
<superCharms_title>SUPER CHARMS</superCharms_title>
<superCharms_text>Congratulations!</superCharms_text>
<superCharms_next>NEXT</superCharms_next>
<paused_text>PAUSED</paused_text>
<resume_text>RESUME</resume_text>
<game_complete_title>CONGRATS!</game_complete_title>
<game_complete_message1>You have completed the game!</game_complete_message1>
<game_complete_message2>Select another game to win more charms and charm points!</game_complete_message2>
<game_complete_points>Total Game Points:</game_complete_points>
<game_complete_charms>Total Charm Points:</game_complete_charms>
<charms_unlock>Congratulations! You've unlocked a new charm!</charms_unlock>
<replay>REPLAY</replay>
<click_url>http://www.charmgirlsclub.com/home.action</click_url>
<click_txt>CLICK HERE for FREE games, fashion and more!</click_txt>
</overlay>
<screen>
<game_title>NAIL SALON</game_title>
<game_next>NEXT</game_next>
<game_now>MATCH</game_now>
<instructions_label>How To Play</instructions_label>
<instructions_text1>
<![CDATA[Design each customer's nails to match the nails at the top of the screen.<br><br>Select a color by clicking on it, then paint each nail with the polish brush.<br><br>Add patterns and nail designs by clicking on the correct tab, then clicking on the nail to apply it.<br><br>Use the cotton ball to remove polish or a decal if you make a mistake.]]>
</instructions_text1>
<instructions_play>PLAY</instructions_play>
<welcome_text1>Does your sense of style extend all the way to your fingertips? See if you have what it takes to run a nail salon!</welcome_text1>
<welcome_play_button>PLAY!</welcome_play_button>
<welcome_instructions_button>INSTRUCTIONS</welcome_instructions_button>
<welcome_login_button>LOGIN</welcome_login_button>
<welcome_login_message>You must log in to earn charms and charm points!</welcome_login_message>
<powerup_help_label>Powerups</powerup_help_label>
<!--
<powerup_help_powerup1>Adds 15 seconds to timer.</powerup_help_powerup1>
<powerup_help_powerup2>Become invincible to Queen B's for 10 seconds.</powerup_help_powerup2>
<powerup_help_powerup3>Become twice as fast for 10 seconds.</powerup_help_powerup3>
<powerup_help_powerup4>Freeze all puppies and Queen B's for 10 seconds.</powerup_help_powerup4>
-->
</screen>
</flash>
</root>
;
}
public function get data():XML{
return (_data);
}
}
}//package
Section 191
//NegativeTime (NegativeTime)
package {
import flash.display.*;
public dynamic class NegativeTime extends MovieClip {
public var timeLabel:MovieClip;
public function NegativeTime(){
addFrameScript(47, frame48);
}
function frame48(){
stop();
}
}
}//package
Section 192
//NewGameButton (NewGameButton)
package {
import gui.*;
public dynamic class NewGameButton extends UIButton {
}
}//package
Section 193
//NextButton (NextButton)
package {
import gui.*;
public dynamic class NextButton extends UIButton {
}
}//package
Section 194
//ObjectManager (ObjectManager)
package {
import gameobjects.*;
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import com.fjakobs.utils.*;
import net.aubby.utility.*;
import effects.*;
import flash.ui.*;
public class ObjectManager extends Sprite {
protected const STANDER_Y:int = 47;
public const LEVEL_DURATION:Array;
protected const CURSOR_DECAL_OFFSET_X:int;
protected const CURSOR_DECAL_OFFSET_Y:int;
protected const HANDS_X:int = 178;
protected const HANDS_Y:int = 268;
protected const POINTS_PER_CUSTOMER:int = 1000;
public const NUMBER_OF_CUSTOMERS:Array;
protected const TIME_BONUS_MULTIPLIER:int = 5;
protected const CURSOR_BRUSH_OFFSET_Y:int;
protected const CURSOR_BRUSH_OFFSET_X:int;
protected const TOOL_BOX_X:int = 153;
protected const CURSOR_PATTERN_OFFSET_X:int;
protected const TOOL_BOX_Y:int = 145;
protected const ORDER_INSTRUCTIONS_X:int = 163;
protected const ORDER_INSTRUCTIONS_Y:int = 53;
protected const CURSOR_PATTERN_OFFSET_Y:int;
protected const HOST_X:int = -60;
protected const HOST_Y:int = 44;
protected const CUSTOMER_ORDER_BOX_X:int = 350;
protected const CUSTOMER_ORDER_BOX_Y:int = 80;
public const LEVEL_MAX:int = 5;
protected const STANDER_X:int = 2;
public var charmPointsAtLevel:Array;
protected var levelTimer:ExtendedTimer;
protected var mainController:Object;
protected var xml:XML;
protected var effectsManager:EffectsManager;
protected var timeLeft:int;
protected var pausedTimers:Array;
protected var currentOrderStage:String;
protected var hostAnimation:HostAnimation;
protected var toolCursor:ToolCursor;
protected var toolBox:ToolBox;
protected var background:Sprite;
protected var customerStander:CustomerStander;
protected var level:int;
protected var customerOrderBox:CustomerOrderBox;
protected var currentOrderInstructions:OrderInstructions;
protected var hands:Hands;
public function ObjectManager(_arg1:Object):void{
LEVEL_DURATION = [0, 120, 120, 120, 120, 150, 170, 200, 240, 280, 300, 360, 360, 360, 420, 420];
NUMBER_OF_CUSTOMERS = [0, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4];
CURSOR_BRUSH_OFFSET_X = ((-20 * 1) / NailSalon.YAHOO_SCALE_X);
CURSOR_BRUSH_OFFSET_Y = ((-126 * 1) / NailSalon.YAHOO_SCALE_Y);
CURSOR_PATTERN_OFFSET_X = ((-25 * 1) / NailSalon.YAHOO_SCALE_X);
CURSOR_PATTERN_OFFSET_Y = ((-25 * 1) / NailSalon.YAHOO_SCALE_Y);
CURSOR_DECAL_OFFSET_X = ((-15 * 1) / NailSalon.YAHOO_SCALE_X);
CURSOR_DECAL_OFFSET_Y = ((-15 * 1) / NailSalon.YAHOO_SCALE_Y);
super();
this.mainController = _arg1;
this.x = (this.x + NailSalon.FRAME_OFFSET_X);
this.y = (this.y + NailSalon.FRAME_OFFSET_Y);
this.pausedTimers = new Array();
this.effectsManager = new EffectsManager();
this.addGameObject(this.effectsManager);
this.addEventListener(MouseEvent.MOUSE_UP, mouseUpCallback);
this.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveCallback);
this.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownCallback);
this.background = new Background();
this.background.cacheAsBitmap = true;
this.addGameObject(this.background);
this.hostAnimation = new HostAnimation();
this.addGameObject(this.hostAnimation, HOST_X, HOST_Y);
this.playHostIdle();
this.hostAnimation.mouseEnabled = false;
this.hostAnimation.mouseChildren = false;
this.hostAnimation.scaleX = 0.93;
this.hostAnimation.scaleY = 0.93;
this.hostAnimation.alpha = 0;
this.customerStander = new CustomerStander();
this.addGameObject(this.customerStander, STANDER_X, STANDER_Y);
this.customerStander.setOriginalPosition(STANDER_X, STANDER_Y);
this.customerStander.hide();
this.customerStander.mouseEnabled = false;
this.customerStander.mouseChildren = false;
this.toolBox = new ToolBox();
this.toolBox.setManager(this);
this.addGameObject(this.toolBox, TOOL_BOX_X, TOOL_BOX_Y);
this.customerOrderBox = new CustomerOrderBox();
this.addGameObject(this.customerOrderBox, CUSTOMER_ORDER_BOX_X, CUSTOMER_ORDER_BOX_Y);
this.hands = new Hands(this);
this.addGameObject(this.hands, HANDS_X, HANDS_Y);
this.levelTimer = new ExtendedTimer(1000, 0);
this.levelTimer.addEventListener(TimerEvent.TIMER, levelTimerCallback);
this.currentOrderInstructions = new OrderInstructions();
this.toolCursor = new ToolCursor();
this.addGameObject(this.toolCursor, (TOOL_BOX_X + 20), TOOL_BOX_Y);
}
public function setGameXML(_arg1:XML):void{
this.xml = _arg1;
}
protected function gotoOrderStage(_arg1:String):void{
switch (_arg1){
case Order.ORDER_PART_COLORS:
this.toolBox.selectTabIndex(0);
break;
case Order.ORDER_PART_PATTERNS:
this.toolBox.selectTabIndex(1);
break;
case Order.ORDER_PART_DECALS:
this.toolBox.selectTabIndex(2);
break;
default:
break;
};
}
protected function mouseDownCallback(_arg1:MouseEvent):void{
this.toolCursor.setMouseDown();
}
public function start():void{
this.levelTimer.reset();
this.levelTimer.start();
}
public function setCurrentOrderStage(_arg1:String):void{
this.currentOrderStage = _arg1;
this.gotoOrderStage(this.currentOrderStage);
this.updateCurrentOrderInstructions();
this.setToolCursor(null);
}
public function startLevel(_arg1:int):void{
trace(("startLevel: " + _arg1));
this.clearHands();
this.customerOrderBox.addCustomers(this.getNumberOfCustomers(_arg1), _arg1);
this.setCurrentOrderStage(Order.ORDER_PART_COLORS);
this.timeLeft = this.getLevelDuration(_arg1);
this.playHostIdle();
this.hostFadeOut();
this.hands.activate();
this.toolBox.activate();
this.customerStander.show();
this.customerStander.newCustomer(this.customerOrderBox.getCurrentCustomerType());
PlayerStats.resetLevelPoints();
this.level = _arg1;
this.start();
}
protected function hostFadeOut():void{
this.hostAnimation.alpha = 1;
Tweener.addTween(this.hostAnimation, {alpha:0, time:0.4, transition:"easeOutQuad"});
}
protected function getNumberOfCustomers(_arg1:int):int{
return (NUMBER_OF_CUSTOMERS[_arg1]);
}
protected function mouseMoveCallback(_arg1:MouseEvent):void{
this.updateToolCursor(_arg1);
}
protected function mouseUpCallback(_arg1:MouseEvent):void{
this.toolCursor.setMouseUp();
}
protected function hostFadeIn():void{
this.hostAnimation.alpha = 0;
Tweener.addTween(this.hostAnimation, {alpha:1, time:0.5, transition:"easeInQuad"});
}
protected function getNextOrderStage(_arg1:String):String{
var _local2:String;
_local2 = "NONE";
switch (_arg1){
case Order.ORDER_PART_COLORS:
_local2 = Order.ORDER_PART_PATTERNS;
break;
case Order.ORDER_PART_PATTERNS:
_local2 = Order.ORDER_PART_DECALS;
break;
default:
break;
};
return (_local2);
}
public function checkSolution(_arg1:Hands):void{
var _local2:Boolean;
_local2 = this.customerOrderBox.getCurrentOrder().compareAll(_arg1);
if (_local2){
this.customerOrderBox.completeCurrentOrder();
this.customerStander.switchToCustomer(this.customerOrderBox.getCurrentCustomerType());
this.addPoints(POINTS_PER_CUSTOMER);
if (this.customerOrderBox.isQueueComplete()){
this.levelComplete();
} else {
this.clearHands(true);
};
};
}
protected function levelTimerUp():void{
this.levelFail();
}
protected function updateToolCursor(_arg1:MouseEvent):void{
this.toolCursor.x = ((_arg1.stageX * 1) / NailSalon.YAHOO_SCALE_X);
this.toolCursor.y = ((_arg1.stageY * 1) / NailSalon.YAHOO_SCALE_Y);
}
protected function levelFail():void{
this.clearLevel();
mainController.stopPlay();
this.playHostBad();
this.hands.deactivate();
this.toolBox.deactivate();
this.customerStander.slideOut();
this.hostFadeIn();
new WaitCommand(this, 1500, mainController.showLevelFailScreen);
this.resetCursor();
}
public function update():void{
}
protected function levelComplete():void{
trace("level complete!");
this.clearLevel();
mainController.stopPlay();
this.resetCursor();
this.playHostGood();
this.hands.deactivate();
this.toolBox.deactivate();
SoundManager.playSound(NailSalonAudio.LEVEL_COMPLETE);
this.customerStander.slideOut();
this.hostFadeIn();
if (this.level < LEVEL_MAX){
new WaitCommand(this, 1500, mainController.showLevelCompleteScreen);
} else {
trace("GAME DONE");
new WaitCommand(this, 1500, mainController.showGameCompleteScreen);
};
PlayerStats.setTimeBonusThisLevel((this.timeLeft * TIME_BONUS_MULTIPLIER));
this.mainController.checkForUnlock(this.level);
}
protected function addPoints(_arg1:int):void{
PlayerStats.addPoints(_arg1);
mainController.hud.update();
}
public function pauseTimer(_arg1:ExtendedTimer):void{
if (_arg1.running){
_arg1.pause();
this.pausedTimers.push(_arg1);
};
}
protected function playHostIdle():void{
this.hostAnimation.gotoAndStop("idle");
}
public function unpause():void{
var _local1:int;
var _local2:int;
_local1 = this.pausedTimers.length;
_local2 = 0;
while (_local2 < _local1) {
this.resumeTimer(this.pausedTimers[0]);
this.pausedTimers.shift();
_local2++;
};
}
public function setToolCursor(_arg1:ToolItem):void{
if (_arg1 != null){
if ((_arg1 is ColorTabItem)){
this.toolCursor.setImageData(("brush_" + _arg1.getIndex()), CURSOR_BRUSH_OFFSET_X, CURSOR_BRUSH_OFFSET_Y, true);
} else {
if ((_arg1 is PatternTabItem)){
this.toolCursor.setImageData(("pattern_icon" + _arg1.getIndex()), CURSOR_PATTERN_OFFSET_X, CURSOR_PATTERN_OFFSET_Y, false);
} else {
if ((_arg1 is DecalTabItem)){
this.toolCursor.setImageData(("decal_icon" + _arg1.getIndex()), CURSOR_DECAL_OFFSET_X, CURSOR_DECAL_OFFSET_Y, false);
};
};
};
this.toolCursor.visible = true;
Mouse.hide();
} else {
this.resetCursor();
};
}
protected function addTime(_arg1:int):void{
this.timeLeft = (this.timeLeft + _arg1);
if (this.timeLeft <= 0){
this.levelTimerUp();
};
}
public function resumeTimer(_arg1:ExtendedTimer):void{
_arg1.start();
}
public function clearLevel():void{
trace("clear level");
this.customerOrderBox.clear();
this.levelTimer.reset();
}
public function addGameObject(_arg1:DisplayObject, _arg2:Number=0, _arg3:Number=0):void{
_arg1.x = _arg2;
_arg1.y = _arg3;
this.addChild(_arg1);
}
protected function playHostBad():void{
this.hostAnimation.gotoAndStop("bad");
SoundManager.playSound(NailSalonAudio.HOST_BAD);
}
public function getCurrentTool():ToolItem{
return (this.toolBox.getCurrentTool());
}
protected function updateCurrentOrderInstructions():void{
switch (this.currentOrderStage){
case Order.ORDER_PART_COLORS:
this.currentOrderInstructions.message.htmlText = this.xml.flash.chrome.colors_instructions;
break;
case Order.ORDER_PART_PATTERNS:
this.currentOrderInstructions.message.htmlText = this.xml.flash.chrome.patterns_instructions;
break;
case Order.ORDER_PART_DECALS:
this.currentOrderInstructions.message.htmlText = this.xml.flash.chrome.decals_instructions;
break;
default:
break;
};
this.currentOrderInstructions.alpha = 0;
Tweener.addTween(this.currentOrderInstructions, {alpha:1, time:0.5, transition:"easeInQuad"});
}
public function resetCursor():void{
this.toolCursor.visible = false;
Mouse.show();
}
protected function getLevelDuration(_arg1:int):int{
return (LEVEL_DURATION[_arg1]);
}
protected function levelTimerCallback(_arg1:TimerEvent):void{
this.addTime(-1);
mainController.hud.updateTime(this.timeLeft);
}
protected function clearHands(_arg1:Boolean=false):void{
this.hands.clear(_arg1);
}
public function setGameVars(_arg1:XMLList):void{
this.charmPointsAtLevel = String(_arg1.charmPointsAtLevel).split(",");
PlayerStats.charmPointsAtLevel = this.charmPointsAtLevel;
}
public function getLevel():int{
return (this.level);
}
protected function mouseOutCallback(_arg1:MouseEvent):void{
Mouse.show();
}
protected function playHostGood():void{
this.hostAnimation.gotoAndStop("good");
SoundManager.playSound(NailSalonAudio.HOST_GOOD);
}
public function pause():void{
this.pauseTimer(this.levelTimer);
}
}
}//package
Section 195
//PauseButton (PauseButton)
package {
import gui.*;
public dynamic class PauseButton extends UIButton {
}
}//package
Section 196
//PlayButton (PlayButton)
package {
import gui.*;
public dynamic class PlayButton extends UIButton {
}
}//package
Section 197
//PlayerStats (PlayerStats)
package {
public class PlayerStats {
public static var pointsTotal:int = 0;
public static var pointsThisLevel:int = 0;
public static var timeBonusThisLevel:int = 0;
public static var charmPointsAtLevel:Array = new Array();
public function PlayerStats():void{
}
public static function addPoints(_arg1:int):void{
var _local2:int;
var _local3:int;
_local2 = (PlayerStats.pointsTotal + _arg1);
PlayerStats.setPointsTotal(_local2);
_local3 = (PlayerStats.pointsThisLevel + _arg1);
PlayerStats.pointsThisLevel = _local3;
}
public static function removePoints(_arg1:int):void{
var _local2:int;
_local2 = (PlayerStats.pointsTotal - _arg1);
PlayerStats.setPointsTotal(_local2);
}
public static function reset():void{
PlayerStats.setPointsTotal(0);
PlayerStats.pointsThisLevel = 0;
}
public static function init():void{
}
public static function getCharmPointsThisLevel(_arg1:int):int{
var _local2:int;
_local2 = 0;
_local2 = int(PlayerStats.charmPointsAtLevel[(_arg1 - 1)]);
return (_local2);
}
public static function resetLevel():void{
PlayerStats.removePoints(PlayerStats.pointsThisLevel);
PlayerStats.pointsThisLevel = 0;
}
public static function setTimeBonusThisLevel(_arg1:int):void{
PlayerStats.timeBonusThisLevel = _arg1;
PlayerStats.addPoints(_arg1);
}
public static function resetLevelPoints():void{
PlayerStats.pointsThisLevel = 0;
}
public static function setPointsTotal(_arg1:int):void{
PlayerStats.pointsTotal = _arg1;
}
}
}//package
Section 198
//ResumeButton (ResumeButton)
package {
import gui.*;
public dynamic class ResumeButton extends UIButton {
}
}//package
Section 199
//Sound_Click (Sound_Click)
package {
import flash.media.*;
public dynamic class Sound_Click extends Sound {
}
}//package
Section 200
//Sound_HostBad (Sound_HostBad)
package {
import flash.media.*;
public dynamic class Sound_HostBad extends Sound {
}
}//package
Section 201
//Sound_HostGood (Sound_HostGood)
package {
import flash.media.*;
public dynamic class Sound_HostGood extends Sound {
}
}//package
Section 202
//Sound_HostWelcome (Sound_HostWelcome)
package {
import flash.media.*;
public dynamic class Sound_HostWelcome extends Sound {
}
}//package
Section 203
//Sound_LevelComplete (Sound_LevelComplete)
package {
import flash.media.*;
public dynamic class Sound_LevelComplete extends Sound {
}
}//package
Section 204
//Sound_MagicAccent (Sound_MagicAccent)
package {
import flash.media.*;
public dynamic class Sound_MagicAccent extends Sound {
}
}//package
Section 205
//Sound_Oops (Sound_Oops)
package {
import flash.media.*;
public dynamic class Sound_Oops extends Sound {
}
}//package
Section 206
//Sound_Runway (Sound_Runway)
package {
import flash.media.*;
public dynamic class Sound_Runway extends Sound {
}
}//package
Section 207
//Sound_TimeWarn (Sound_TimeWarn)
package {
import flash.media.*;
public dynamic class Sound_TimeWarn extends Sound {
}
}//package
Section 208
//Sound_Twinkle (Sound_Twinkle)
package {
import flash.media.*;
public dynamic class Sound_Twinkle extends Sound {
}
}//package
Section 209
//SoundEffectsButton (SoundEffectsButton)
package {
import gui.*;
public dynamic class SoundEffectsButton extends ToggleButton {
}
}//package
Section 210
//SoundManager (SoundManager)
package {
import flash.events.*;
import flash.utils.*;
import flash.media.*;
public class SoundManager {
static var bgMusic:Sound;
public static var soundStatus:Boolean = true;
static var bgMusicChannel:SoundChannel;
static var bgMusicPosition:int = 0;
public static var musicStatus:Boolean = true;
public function SoundManager():void{
}
public static function playBackgroundMusic(_arg1:uint):void{
var _local2:SoundTransform;
SoundManager.bgMusicChannel = SoundManager.bgMusic.play(_arg1);
if (SoundManager.bgMusicChannel != null){
_local2 = SoundManager.bgMusicChannel.soundTransform;
_local2.volume = 0.4;
SoundManager.bgMusicChannel.soundTransform = _local2;
};
}
public static function loadBackgroundMusic(_arg1:String):void{
var _local2:Class;
var _local3:*;
_local2 = (getDefinitionByName(_arg1) as Class);
_local3 = new (_local2);
SoundManager.bgMusic = _local3;
}
public static function loopBackgroundMusic(_arg1:Event):void{
if (SoundManager.bgMusicChannel != null){
SoundManager.bgMusicChannel.removeEventListener(Event.SOUND_COMPLETE, loopBackgroundMusic);
SoundManager.startBackgroundMusic();
};
}
public static function startBackgroundMusic():void{
if (SoundManager.musicStatus){
SoundManager.bgMusicPosition = 0;
SoundManager.playBackgroundMusic(0);
if (SoundManager.bgMusicChannel != null){
SoundManager.bgMusicChannel.addEventListener(Event.SOUND_COMPLETE, loopBackgroundMusic);
};
};
}
public static function resumeBackgroundMusic():void{
if (SoundManager.musicStatus){
SoundManager.playBackgroundMusic(SoundManager.bgMusicPosition);
if (SoundManager.bgMusicChannel != null){
SoundManager.bgMusicChannel.addEventListener(Event.SOUND_COMPLETE, loopBackgroundMusic);
};
};
}
public static function playSound(_arg1:String):void{
var _local2:Class;
var _local3:*;
var _local4:SoundChannel;
if (SoundManager.soundStatus){
_local2 = (getDefinitionByName(_arg1) as Class);
_local3 = new (_local2);
_local4 = _local3.play();
};
}
public static function stopBackgroundMusic():void{
if (SoundManager.bgMusicChannel != null){
SoundManager.bgMusicPosition = SoundManager.bgMusicChannel.position;
SoundManager.bgMusicChannel.stop();
SoundManager.bgMusicChannel.removeEventListener(Event.SOUND_COMPLETE, loopBackgroundMusic);
};
}
}
}//package
Section 211
//SuccessEffect (SuccessEffect)
package {
import flash.display.*;
public dynamic class SuccessEffect extends MovieClip {
public var points:MovieClip;
public function SuccessEffect(){
addFrameScript(44, frame45);
}
function frame45(){
stop();
}
}
}//package
Section 212
//TestMask (TestMask)
package {
import flash.display.*;
public dynamic class TestMask extends MovieClip {
}
}//package
Section 213
//TimeWarningEffect (TimeWarningEffect)
package {
import flash.display.*;
public dynamic class TimeWarningEffect extends MovieClip {
public function TimeWarningEffect(){
addFrameScript(71, frame72);
}
function frame72(){
stop();
}
}
}//package