Section 1
//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 2
//Equations (caurina.transitions.Equations)
package caurina.transitions {
public class Equations {
public function Equations(){
trace("Equations is a static class and should not be instantiated.");
}
public static function easeOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
if (_arg1 < (1 / 2.75)){
return (((_arg3 * ((7.5625 * _arg1) * _arg1)) + _arg2));
};
if (_arg1 < (2 / 2.75)){
_arg1 = (_arg1 - (1.5 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.75)) + _arg2));
};
if (_arg1 < (2.5 / 2.75)){
_arg1 = (_arg1 - (2.25 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.9375)) + _arg2));
};
_arg1 = (_arg1 - (2.625 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.984375)) + _arg2));
}
public static function easeInOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
var _local7:Number;
var _local8:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 == 2){
return ((_arg2 + _arg3));
};
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * (0.3 * 1.5)) : _arg5.period;
_local8 = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude;
if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){
_local8 = _arg3;
_local7 = (_local6 / 4);
} else {
_local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8)));
};
if (_arg1 < 1){
--_arg1;
return (((-0.5 * ((_local8 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6)))) + _arg2));
};
--_arg1;
return ((((((_local8 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6))) * 0.5) + _arg3) + _arg2));
}
public static function easeInOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((_arg3 / 2) * _arg1) * _arg1) + _arg2));
};
--_arg1;
return ((((-(_arg3) / 2) * ((_arg1 * (_arg1 - 2)) - 1)) + _arg2));
}
public static function easeInOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (((easeInBounce((_arg1 * 2), 0, _arg3, _arg4) * 0.5) + _arg2));
};
return ((((easeOutBounce(((_arg1 * 2) - _arg4), 0, _arg3, _arg4) * 0.5) + (_arg3 * 0.5)) + _arg2));
}
public static function easeInOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot;
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
_local6 = (_local6 * 1.525);
return ((((_arg3 / 2) * ((_arg1 * _arg1) * (((_local6 + 1) * _arg1) - _local6))) + _arg2));
};
_arg1 = (_arg1 - 2);
_local6 = (_local6 * 1.525);
return ((((_arg3 / 2) * (((_arg1 * _arg1) * (((_local6 + 1) * _arg1) + _local6)) + 2)) + _arg2));
}
public static function easeOutInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutCubic((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInCubic(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeNone(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
public static function easeOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot;
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((_arg1 * _arg1) * (((_local6 + 1) * _arg1) + _local6)) + 1)) + _arg2));
}
public static function easeInOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return ((((-(_arg3) / 2) * (Math.cos(((Math.PI * _arg1) / _arg4)) - 1)) + _arg2));
}
public static function easeInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot;
_arg1 = (_arg1 / _arg4);
return (((((_arg3 * _arg1) * _arg1) * (((_local6 + 1) * _arg1) - _local6)) + _arg2));
}
public static function easeInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return ((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeOutInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutQuint((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInQuint(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutBounce((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInBounce(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function init():void{
Tweener.registerTransition("easenone", easeNone);
Tweener.registerTransition("linear", easeNone);
Tweener.registerTransition("easeinquad", easeInQuad);
Tweener.registerTransition("easeoutquad", easeOutQuad);
Tweener.registerTransition("easeinoutquad", easeInOutQuad);
Tweener.registerTransition("easeoutinquad", easeOutInQuad);
Tweener.registerTransition("easeincubic", easeInCubic);
Tweener.registerTransition("easeoutcubic", easeOutCubic);
Tweener.registerTransition("easeinoutcubic", easeInOutCubic);
Tweener.registerTransition("easeoutincubic", easeOutInCubic);
Tweener.registerTransition("easeinquart", easeInQuart);
Tweener.registerTransition("easeoutquart", easeOutQuart);
Tweener.registerTransition("easeinoutquart", easeInOutQuart);
Tweener.registerTransition("easeoutinquart", easeOutInQuart);
Tweener.registerTransition("easeinquint", easeInQuint);
Tweener.registerTransition("easeoutquint", easeOutQuint);
Tweener.registerTransition("easeinoutquint", easeInOutQuint);
Tweener.registerTransition("easeoutinquint", easeOutInQuint);
Tweener.registerTransition("easeinsine", easeInSine);
Tweener.registerTransition("easeoutsine", easeOutSine);
Tweener.registerTransition("easeinoutsine", easeInOutSine);
Tweener.registerTransition("easeoutinsine", easeOutInSine);
Tweener.registerTransition("easeincirc", easeInCirc);
Tweener.registerTransition("easeoutcirc", easeOutCirc);
Tweener.registerTransition("easeinoutcirc", easeInOutCirc);
Tweener.registerTransition("easeoutincirc", easeOutInCirc);
Tweener.registerTransition("easeinexpo", easeInExpo);
Tweener.registerTransition("easeoutexpo", easeOutExpo);
Tweener.registerTransition("easeinoutexpo", easeInOutExpo);
Tweener.registerTransition("easeoutinexpo", easeOutInExpo);
Tweener.registerTransition("easeinelastic", easeInElastic);
Tweener.registerTransition("easeoutelastic", easeOutElastic);
Tweener.registerTransition("easeinoutelastic", easeInOutElastic);
Tweener.registerTransition("easeoutinelastic", easeOutInElastic);
Tweener.registerTransition("easeinback", easeInBack);
Tweener.registerTransition("easeoutback", easeOutBack);
Tweener.registerTransition("easeinoutback", easeInOutBack);
Tweener.registerTransition("easeoutinback", easeOutInBack);
Tweener.registerTransition("easeinbounce", easeInBounce);
Tweener.registerTransition("easeoutbounce", easeOutBounce);
Tweener.registerTransition("easeinoutbounce", easeInOutBounce);
Tweener.registerTransition("easeoutinbounce", easeOutInBounce);
}
public static function easeOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg1)==_arg4) ? (_arg2 + _arg3) : (((_arg3 * 1.001) * (-(Math.pow(2, ((-10 * _arg1) / _arg4))) + 1)) + _arg2));
}
public static function easeOutInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutBack((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInBack(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg1)==0) ? _arg2 : (((_arg3 * Math.pow(2, (10 * ((_arg1 / _arg4) - 1)))) + _arg2) - (_arg3 * 0.001)));
}
public static function easeInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return (((((_arg3 * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return (((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeInOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((-(_arg3) / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) + 1)) + _arg2));
}
public static function easeInQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return ((((_arg3 * _arg1) * _arg1) + _arg2));
}
public static function easeInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg3 - easeOutBounce((_arg4 - _arg1), 0, _arg3, _arg4)) + _arg2));
}
public static function easeOutInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutExpo((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInExpo(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((-(_arg3) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 1)) + _arg2));
}
public static function easeInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return ((((-(_arg3) * Math.cos(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg3) + _arg2));
}
public static function easeInOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((-(_arg3) / 2) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 2)) + _arg2));
}
public static function easeOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2));
}
public static function easeOutInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutElastic((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInElastic(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
var _local7:Number;
var _local8:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / _arg4);
if (_arg1 == 1){
return ((_arg2 + _arg3));
};
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * 0.3) : _arg5.period;
_local8 = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude;
if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){
_local8 = _arg3;
_local7 = (_local6 / 4);
} else {
_local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8)));
};
--_arg1;
return ((-(((_local8 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6)))) + _arg2));
}
public static function easeOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((_arg1 * _arg1) * _arg1) + 1)) + _arg2));
}
public static function easeOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 1)) + _arg2));
}
public static function easeOutInQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutQuad((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInQuad(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg3 * Math.sin(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg2));
}
public static function easeInOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (((_arg1 * _arg1) * _arg1) + 2)) + _arg2));
}
public static function easeInOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 2)) + _arg2));
}
public static function easeInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return (((-(_arg3) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2));
}
public static function easeOutInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutSine((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInSine(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 == 0){
return (_arg2);
};
if (_arg1 == _arg4){
return ((_arg2 + _arg3));
};
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((_arg3 / 2) * Math.pow(2, (10 * (_arg1 - 1)))) + _arg2) - (_arg3 * 0.0005)));
};
--_arg1;
return (((((_arg3 / 2) * 1.0005) * (-(Math.pow(2, (-10 * _arg1))) + 2)) + _arg2));
}
public static function easeOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
var _local7:Number;
var _local8:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / _arg4);
if (_arg1 == 1){
return ((_arg2 + _arg3));
};
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * 0.3) : _arg5.period;
_local8 = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude;
if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){
_local8 = _arg3;
_local7 = (_local6 / 4);
} else {
_local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8)));
};
return (((((_local8 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6))) + _arg3) + _arg2));
}
public static function easeOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * Math.sqrt((1 - (_arg1 * _arg1)))) + _arg2));
}
public static function easeOutInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutQuart((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInQuart(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutCirc((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInCirc(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
}
}//package caurina.transitions
Section 3
//PropertyInfoObj (caurina.transitions.PropertyInfoObj)
package caurina.transitions {
public class PropertyInfoObj {
public var originalValueComplete:Object;
public var modifierParameters:Array;
public var isSpecialProperty:Boolean;
public var hasModifier:Boolean;
public var valueComplete:Number;
public var extra:Object;
public var valueStart:Number;
public var modifierFunction:Function;
public var arrayIndex:Number;
public function PropertyInfoObj(_arg1:Number, _arg2:Number, _arg3:Object, _arg4:Number, _arg5:Object, _arg6:Boolean, _arg7:Function, _arg8:Array){
valueStart = _arg1;
valueComplete = _arg2;
originalValueComplete = _arg3;
arrayIndex = _arg4;
extra = _arg5;
isSpecialProperty = _arg6;
hasModifier = Boolean(_arg7);
modifierFunction = _arg7;
modifierParameters = _arg8;
}
public function toString():String{
var _local1:String;
_local1 = "\n[PropertyInfoObj ";
_local1 = (_local1 + ("valueStart:" + String(valueStart)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("valueComplete:" + String(valueComplete)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("originalValueComplete:" + String(originalValueComplete)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("arrayIndex:" + String(arrayIndex)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("extra:" + String(extra)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("isSpecialProperty:" + String(isSpecialProperty)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("hasModifier:" + String(hasModifier)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("modifierFunction:" + String(modifierFunction)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("modifierParameters:" + String(modifierParameters)));
_local1 = (_local1 + "]\n");
return (_local1);
}
public function clone():PropertyInfoObj{
var _local1:PropertyInfoObj;
_local1 = new PropertyInfoObj(valueStart, valueComplete, originalValueComplete, arrayIndex, extra, isSpecialProperty, modifierFunction, modifierParameters);
return (_local1);
}
}
}//package caurina.transitions
Section 4
//SpecialProperty (caurina.transitions.SpecialProperty)
package caurina.transitions {
public class SpecialProperty {
public var parameters:Array;
public var preProcess:Function;
public var setValue:Function;
public var getValue:Function;
public function SpecialProperty(_arg1:Function, _arg2:Function, _arg3:Array=null, _arg4:Function=null){
getValue = _arg1;
setValue = _arg2;
parameters = _arg3;
preProcess = _arg4;
}
public function toString():String{
var _local1:String;
_local1 = "";
_local1 = (_local1 + "[SpecialProperty ");
_local1 = (_local1 + ("getValue:" + String(getValue)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("setValue:" + String(setValue)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("parameters:" + String(parameters)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("preProcess:" + String(preProcess)));
_local1 = (_local1 + "]");
return (_local1);
}
}
}//package caurina.transitions
Section 5
//SpecialPropertyModifier (caurina.transitions.SpecialPropertyModifier)
package caurina.transitions {
public class SpecialPropertyModifier {
public var getValue:Function;
public var modifyValues:Function;
public function SpecialPropertyModifier(_arg1:Function, _arg2:Function){
modifyValues = _arg1;
getValue = _arg2;
}
public function toString():String{
var _local1:String;
_local1 = "";
_local1 = (_local1 + "[SpecialPropertyModifier ");
_local1 = (_local1 + ("modifyValues:" + String(modifyValues)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("getValue:" + String(getValue)));
_local1 = (_local1 + "]");
return (_local1);
}
}
}//package caurina.transitions
Section 6
//SpecialPropertySplitter (caurina.transitions.SpecialPropertySplitter)
package caurina.transitions {
public class SpecialPropertySplitter {
public var parameters:Array;
public var splitValues:Function;
public function SpecialPropertySplitter(_arg1:Function, _arg2:Array){
splitValues = _arg1;
parameters = _arg2;
}
public function toString():String{
var _local1:String;
_local1 = "";
_local1 = (_local1 + "[SpecialPropertySplitter ");
_local1 = (_local1 + ("splitValues:" + String(splitValues)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("parameters:" + String(parameters)));
_local1 = (_local1 + "]");
return (_local1);
}
}
}//package caurina.transitions
Section 7
//Tweener (caurina.transitions.Tweener)
package caurina.transitions {
import flash.events.*;
import flash.utils.*;
import flash.display.*;
public class Tweener {
private static var _timeScale:Number = 1;
private static var _currentTimeFrame:Number;
private static var _specialPropertySplitterList:Object;
public static var autoOverwrite:Boolean = true;
private static var _engineExists:Boolean = false;
private static var _currentTime:Number;
private static var _tweenList:Array;
private static var _specialPropertyModifierList:Object;
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 updateFrame():void{
_currentTimeFrame++;
}
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 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.33.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 = {overwrite:true, 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;
if (((_local7.overwrite == undefined)) ? autoOverwrite : _local7.overwrite){
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 8
//TweenListObj (caurina.transitions.TweenListObj)
package caurina.transitions {
public class TweenListObj {
public var onUpdate:Function;
public var useFrames:Boolean;
public var hasStarted:Boolean;
public var onOverwriteParams:Array;
public var timeStart:Number;
public var count:Number;
public var timeComplete:Number;
public var onStartParams:Array;
public var onUpdateScope:Object;
public var rounded:Boolean;
public var onUpdateParams:Array;
public var properties:Object;
public var onComplete:Function;
public var transitionParams:Object;
public var updatesSkipped:Number;
public var onStart:Function;
public var onOverwriteScope:Object;
public var skipUpdates:Number;
public var onStartScope:Object;
public var scope:Object;
public var transition:Function;
public var timePaused:Number;
public var onCompleteParams:Array;
public var timesCalled:Number;
public var isCaller:Boolean;
public var onError:Function;
public var onErrorScope:Object;
public var onOverwrite:Function;
public var isPaused:Boolean;
public var waitFrames:Boolean;
public var onCompleteScope:Object;
public function TweenListObj(_arg1:Object, _arg2:Number, _arg3:Number, _arg4:Boolean, _arg5:Function, _arg6:Object){
scope = _arg1;
timeStart = _arg2;
timeComplete = _arg3;
useFrames = _arg4;
transition = _arg5;
transitionParams = _arg6;
properties = new Object();
isPaused = false;
timePaused = undefined;
isCaller = false;
updatesSkipped = 0;
timesCalled = 0;
skipUpdates = 0;
hasStarted = false;
}
public function clone(_arg1:Boolean):TweenListObj{
var _local2:TweenListObj;
var _local3:String;
_local2 = new TweenListObj(scope, timeStart, timeComplete, useFrames, transition, transitionParams);
_local2.properties = new Array();
for (_local3 in properties) {
_local2.properties[_local3] = properties[_local3].clone();
};
_local2.skipUpdates = skipUpdates;
_local2.updatesSkipped = updatesSkipped;
if (!_arg1){
_local2.onStart = onStart;
_local2.onUpdate = onUpdate;
_local2.onComplete = onComplete;
_local2.onOverwrite = onOverwrite;
_local2.onError = onError;
_local2.onStartParams = onStartParams;
_local2.onUpdateParams = onUpdateParams;
_local2.onCompleteParams = onCompleteParams;
_local2.onOverwriteParams = onOverwriteParams;
_local2.onStartScope = onStartScope;
_local2.onUpdateScope = onUpdateScope;
_local2.onCompleteScope = onCompleteScope;
_local2.onOverwriteScope = onOverwriteScope;
_local2.onErrorScope = onErrorScope;
};
_local2.rounded = rounded;
_local2.isPaused = isPaused;
_local2.timePaused = timePaused;
_local2.isCaller = isCaller;
_local2.count = count;
_local2.timesCalled = timesCalled;
_local2.waitFrames = waitFrames;
_local2.hasStarted = hasStarted;
return (_local2);
}
public function toString():String{
var _local1:String;
var _local2:Boolean;
var _local3:String;
_local1 = "\n[TweenListObj ";
_local1 = (_local1 + ("scope:" + String(scope)));
_local1 = (_local1 + ", properties:");
_local2 = true;
for (_local3 in properties) {
if (!_local2){
_local1 = (_local1 + ",");
};
_local1 = (_local1 + ("[name:" + properties[_local3].name));
_local1 = (_local1 + (",valueStart:" + properties[_local3].valueStart));
_local1 = (_local1 + (",valueComplete:" + properties[_local3].valueComplete));
_local1 = (_local1 + "]");
_local2 = false;
};
_local1 = (_local1 + (", timeStart:" + String(timeStart)));
_local1 = (_local1 + (", timeComplete:" + String(timeComplete)));
_local1 = (_local1 + (", useFrames:" + String(useFrames)));
_local1 = (_local1 + (", transition:" + String(transition)));
_local1 = (_local1 + (", transitionParams:" + String(transitionParams)));
if (skipUpdates){
_local1 = (_local1 + (", skipUpdates:" + String(skipUpdates)));
};
if (updatesSkipped){
_local1 = (_local1 + (", updatesSkipped:" + String(updatesSkipped)));
};
if (Boolean(onStart)){
_local1 = (_local1 + (", onStart:" + String(onStart)));
};
if (Boolean(onUpdate)){
_local1 = (_local1 + (", onUpdate:" + String(onUpdate)));
};
if (Boolean(onComplete)){
_local1 = (_local1 + (", onComplete:" + String(onComplete)));
};
if (Boolean(onOverwrite)){
_local1 = (_local1 + (", onOverwrite:" + String(onOverwrite)));
};
if (Boolean(onError)){
_local1 = (_local1 + (", onError:" + String(onError)));
};
if (onStartParams){
_local1 = (_local1 + (", onStartParams:" + String(onStartParams)));
};
if (onUpdateParams){
_local1 = (_local1 + (", onUpdateParams:" + String(onUpdateParams)));
};
if (onCompleteParams){
_local1 = (_local1 + (", onCompleteParams:" + String(onCompleteParams)));
};
if (onOverwriteParams){
_local1 = (_local1 + (", onOverwriteParams:" + String(onOverwriteParams)));
};
if (onStartScope){
_local1 = (_local1 + (", onStartScope:" + String(onStartScope)));
};
if (onUpdateScope){
_local1 = (_local1 + (", onUpdateScope:" + String(onUpdateScope)));
};
if (onCompleteScope){
_local1 = (_local1 + (", onCompleteScope:" + String(onCompleteScope)));
};
if (onOverwriteScope){
_local1 = (_local1 + (", onOverwriteScope:" + String(onOverwriteScope)));
};
if (onErrorScope){
_local1 = (_local1 + (", onErrorScope:" + String(onErrorScope)));
};
if (rounded){
_local1 = (_local1 + (", rounded:" + String(rounded)));
};
if (isPaused){
_local1 = (_local1 + (", isPaused:" + String(isPaused)));
};
if (timePaused){
_local1 = (_local1 + (", timePaused:" + String(timePaused)));
};
if (isCaller){
_local1 = (_local1 + (", isCaller:" + String(isCaller)));
};
if (count){
_local1 = (_local1 + (", count:" + String(count)));
};
if (timesCalled){
_local1 = (_local1 + (", timesCalled:" + String(timesCalled)));
};
if (waitFrames){
_local1 = (_local1 + (", waitFrames:" + String(waitFrames)));
};
if (hasStarted){
_local1 = (_local1 + (", hasStarted:" + String(hasStarted)));
};
_local1 = (_local1 + "]\n");
return (_local1);
}
public static function makePropertiesChain(_arg1:Object):Object{
var _local2:Object;
var _local3:Object;
var _local4:Object;
var _local5:Object;
var _local6:Number;
var _local7:Number;
var _local8:Number;
_local2 = _arg1.base;
if (_local2){
_local3 = {};
if ((_local2 is Array)){
_local4 = [];
_local8 = 0;
while (_local8 < _local2.length) {
_local4.push(_local2[_local8]);
_local8++;
};
} else {
_local4 = [_local2];
};
_local4.push(_arg1);
_local6 = _local4.length;
_local7 = 0;
while (_local7 < _local6) {
if (_local4[_local7]["base"]){
_local5 = AuxFunctions.concatObjects(makePropertiesChain(_local4[_local7]["base"]), _local4[_local7]);
} else {
_local5 = _local4[_local7];
};
_local3 = AuxFunctions.concatObjects(_local3, _local5);
_local7++;
};
if (_local3["base"]){
delete _local3["base"];
};
return (_local3);
//unresolved jump
};
return (_arg1);
}
}
}//package caurina.transitions
Section 9
//SoundManager (fangxu.manager.SoundManager)
package fangxu.manager {
import flash.events.*;
import flash.media.*;
public class SoundManager {
public var effectsOn:Boolean;
public var musicOn:Boolean;
private var _isSound:Boolean;// = true
private var _channel:SoundChannel;
private var _sound:Sound;
private static var instance:SoundManager;
private static var key:Boolean = false;
public function SoundManager(){
_isSound = true;
super();
if (!key){
throw (new Error("单例,请用 getInstance() 取实例!"));
};
key = false;
musicOn = true;
effectsOn = true;
}
public function start():void{
if (_sound != null){
_channel = _sound.play();
_channel.addEventListener(Event.SOUND_COMPLETE, this.onSoundEnd);
};
}
public function startSound(_arg1:Class){
if (_channel != null){
this.clear();
};
_sound = new (_arg1);
this.start();
}
public function stop():void{
if (_channel != null){
_channel.stop();
_channel.removeEventListener(Event.SOUND_COMPLETE, this.onSoundEnd);
};
}
private function onSoundEnd(_arg1:Event):void{
_channel.removeEventListener(Event.SOUND_COMPLETE, this.onSoundEnd);
this.start();
if (_isSound){
_channel.soundTransform = new SoundTransform(1);
} else {
_channel.soundTransform = new SoundTransform(0);
};
}
public function clear():void{
this.stop();
_sound = null;
_channel = null;
_isSound = true;
}
public function stopSound():void{
_channel.stop();
_isSound = false;
}
public static function getInstance():SoundManager{
if (SoundManager.instance == null){
key = true;
SoundManager.instance = new (SoundManager);
};
return (SoundManager.instance);
}
}
}//package fangxu.manager
Section 10
//TimeManager (fangxu.manager.TimeManager)
package fangxu.manager {
import flash.events.*;
import flash.utils.*;
public class TimeManager {
private var _completeFn:Function;
private var _timer:Timer;
private var _timerFn:Function;
private var _isTimeOn:Boolean;// = false
private static var instance:TimeManager;
private static var key:Boolean = false;
public function TimeManager(){
_isTimeOn = false;
super();
if (!key){
throw (new Error("单例,请用 getInstance() 取实例!"));
};
key = false;
_isTimeOn = false;
}
public function stop():void{
if (_timer != null){
_isTimeOn = false;
_timer.stop();
};
}
public function start():void{
if (_timer != null){
_isTimeOn = true;
_timer.start();
};
}
public function clear():void{
if (_timer != null){
_isTimeOn = false;
_timer.removeEventListener(TimerEvent.TIMER, _timerFn);
_timer.removeEventListener(TimerEvent.TIMER_COMPLETE, _completeFn);
_timer.stop();
_timer = null;
};
}
public function reStart(_arg1:uint):void{
if (_timer != null){
this.clear();
};
_isTimeOn = true;
_timer = new Timer(1000, _arg1);
_timer.addEventListener(TimerEvent.TIMER, _timerFn);
_timer.addEventListener(TimerEvent.TIMER_COMPLETE, _completeFn);
_timer.start();
}
public function adStart(_arg1:uint, _arg2:Function, _arg3:Function):void{
this._timerFn = _arg2;
this._completeFn = _arg3;
if (_timer == null){
_isTimeOn = true;
_timer = new Timer(1000, _arg1);
_timer.addEventListener(TimerEvent.TIMER, _timerFn);
_timer.addEventListener(TimerEvent.TIMER_COMPLETE, _completeFn);
_timer.start();
} else {
this.clear();
};
}
public static function getInstance():TimeManager{
if (TimeManager.instance == null){
key = true;
TimeManager.instance = new (TimeManager);
};
return (TimeManager.instance);
}
}
}//package fangxu.manager
Section 11
//IntUtil (fangxu.util.IntUtil)
package fangxu.util {
public class IntUtil {
private static var hexChars:String = "0123456789abcdef";
public static function toHex(_arg1:int, _arg2:Boolean=false):String{
var _local3:String;
var _local4:int;
var _local5:int;
_local3 = "";
if (_arg2){
_local4 = 0;
while (_local4 < 4) {
_local3 = (_local3 + (hexChars.charAt(((_arg1 >> (((3 - _local4) * 8) + 4)) & 15)) + hexChars.charAt(((_arg1 >> ((3 - _local4) * 8)) & 15))));
_local4++;
};
} else {
_local5 = 0;
while (_local5 < 4) {
_local3 = (_local3 + (hexChars.charAt(((_arg1 >> ((_local5 * 8) + 4)) & 15)) + hexChars.charAt(((_arg1 >> (_local5 * 8)) & 15))));
_local5++;
};
};
return (_local3);
}
public static function ror(_arg1:int, _arg2:int):uint{
var _local3:int;
_local3 = (32 - _arg2);
return (((_arg1 << _local3) | (_arg1 >>> (32 - _local3))));
}
public static function rol(_arg1:int, _arg2:int):int{
return (((_arg1 << _arg2) | (_arg1 >>> (32 - _arg2))));
}
}
}//package fangxu.util
Section 12
//MD5 (fangxu.util.MD5)
package fangxu.util {
import flash.utils.*;
public class MD5 {
public static var digest:ByteArray;
private static function ff(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(f, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
private static function f(_arg1:int, _arg2:int, _arg3:int):int{
return (((_arg1 & _arg2) | (~(_arg1) & _arg3)));
}
private static function g(_arg1:int, _arg2:int, _arg3:int):int{
return (((_arg1 & _arg3) | (_arg2 & ~(_arg3))));
}
private static function h(_arg1:int, _arg2:int, _arg3:int):int{
return (((_arg1 ^ _arg2) ^ _arg3));
}
private static function i(_arg1:int, _arg2:int, _arg3:int):int{
return ((_arg2 ^ (_arg1 | ~(_arg3))));
}
private static function transform(_arg1:Function, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int, _arg8:int):int{
var _local9:int;
_local9 = (((_arg2 + int(_arg1(_arg3, _arg4, _arg5))) + _arg6) + _arg8);
return ((IntUtil.rol(_local9, _arg7) + _arg3));
}
private static function hh(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(h, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
public static function hash(_arg1:String):String{
var _local2:ByteArray;
_local2 = new ByteArray();
_local2.writeUTFBytes(_arg1);
return (hashBinary(_local2));
}
private static function createBlocks(_arg1:ByteArray):Array{
var _local2:Array;
var _local3:int;
var _local4:int;
var _local5:int;
_local2 = new Array();
_local3 = (_arg1.length * 8);
_local4 = 0xFF;
_local5 = 0;
while (_local5 < _local3) {
_local2[int((_local5 >> 5))] = (_local2[int((_local5 >> 5))] | ((_arg1[(_local5 / 8)] & _local4) << (_local5 % 32)));
_local5 = (_local5 + 8);
};
_local2[int((_local3 >> 5))] = (_local2[int((_local3 >> 5))] | (128 << (_local3 % 32)));
_local2[int(((((_local3 + 64) >>> 9) << 4) + 14))] = _local3;
return (_local2);
}
public static function hashBinary(_arg1:ByteArray):String{
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:Array;
var _local11:int;
var _local12:int;
_local2 = 1732584193;
_local3 = -271733879;
_local4 = -1732584194;
_local5 = 271733878;
_local10 = createBlocks(_arg1);
_local11 = _local10.length;
_local12 = 0;
while (_local12 < _local11) {
_local6 = _local2;
_local7 = _local3;
_local8 = _local4;
_local9 = _local5;
_local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 0))], 7, -680876936);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 1))], 12, -389564586);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 2))], 17, 606105819);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 3))], 22, -1044525330);
_local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 4))], 7, -176418897);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 5))], 12, 1200080426);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 6))], 17, -1473231341);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 7))], 22, -45705983);
_local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 8))], 7, 1770035416);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 9))], 12, -1958414417);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 10))], 17, -42063);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 11))], 22, -1990404162);
_local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 12))], 7, 1804603682);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 13))], 12, -40341101);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 14))], 17, -1502002290);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 15))], 22, 1236535329);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 1))], 5, -165796510);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 6))], 9, -1069501632);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 11))], 14, 643717713);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 0))], 20, -373897302);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 5))], 5, -701558691);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 10))], 9, 38016083);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 15))], 14, -660478335);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 4))], 20, -405537848);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 9))], 5, 568446438);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 14))], 9, -1019803690);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 3))], 14, -187363961);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 8))], 20, 1163531501);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 13))], 5, -1444681467);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 2))], 9, -51403784);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 7))], 14, 1735328473);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 12))], 20, -1926607734);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 5))], 4, -378558);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 8))], 11, -2022574463);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 11))], 16, 1839030562);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 14))], 23, -35309556);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 1))], 4, -1530992060);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 4))], 11, 1272893353);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 7))], 16, -155497632);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 10))], 23, -1094730640);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 13))], 4, 681279174);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 0))], 11, -358537222);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 3))], 16, -722521979);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 6))], 23, 76029189);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 9))], 4, -640364487);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 12))], 11, -421815835);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 15))], 16, 530742520);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 2))], 23, -995338651);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 0))], 6, -198630844);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 7))], 10, 1126891415);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 14))], 15, -1416354905);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 5))], 21, -57434055);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 12))], 6, 1700485571);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 3))], 10, -1894986606);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 10))], 15, -1051523);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 1))], 21, -2054922799);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 8))], 6, 1873313359);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 15))], 10, -30611744);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 6))], 15, -1560198380);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 13))], 21, 1309151649);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 4))], 6, -145523070);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 11))], 10, -1120210379);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 2))], 15, 718787259);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 9))], 21, -343485551);
_local2 = (_local2 + _local6);
_local3 = (_local3 + _local7);
_local4 = (_local4 + _local8);
_local5 = (_local5 + _local9);
_local12 = (_local12 + 16);
};
digest = new ByteArray();
digest.writeInt(_local2);
digest.writeInt(_local3);
digest.writeInt(_local4);
digest.writeInt(_local5);
digest.position = 0;
return ((((IntUtil.toHex(_local2) + IntUtil.toHex(_local3)) + IntUtil.toHex(_local4)) + IntUtil.toHex(_local5)));
}
private static function gg(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(g, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
private static function ii(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(i, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
public static function hashBytes(_arg1:ByteArray):String{
return (hashBinary(_arg1));
}
}
}//package fangxu.util
Section 13
//NumberUtil (fangxu.util.NumberUtil)
package fangxu.util {
public class NumberUtil {
public static function random(_arg1:Number, _arg2:Number):Number{
return (((Math.random() * ((_arg2 - _arg1) + 1)) + _arg1));
}
public static function ranFloor(_arg1:int, _arg2:int):int{
return ((Math.floor((Math.random() * ((_arg2 - _arg1) + 1))) + _arg1));
}
}
}//package fangxu.util
Section 14
//TimeUtil (fangxu.util.TimeUtil)
package fangxu.util {
public class TimeUtil {
public static function convertTime(_arg1:Number):String{
var _local2:*;
var _local3:*;
_local2 = Math.ceil(_arg1);
_local3 = Math.floor((_local2 / 60));
return (((_local3 + ":") + strPad((_local2 % 60))));
}
public static function strPad(_arg1):String{
var _local2:String;
_local2 = new String(_arg1);
if (_local2.length <= 1){
_local2 = ("0" + _local2);
};
return (_local2);
}
}
}//package fangxu.util
Section 15
//MainBase (fangxu.MainBase)
package fangxu {
import flash.display.*;
public class MainBase extends Sprite {
private var _mouseSprite:Sprite;
public var mStage:Stage;
public var mRoot;
public function initBase(_arg1:Stage, _arg2=null){
this.mRoot = _arg2;
this.mStage = _arg1;
}
public function rmMouseSprite():Boolean{
try {
_mouseSprite.parent.removeChild(_mouseSprite);
} catch(e) {
return (false);
};
return (true);
}
public function adMouseSprite(_arg1=null, _arg2:Number=0, _arg3:uint=0x9900):Sprite{
var _local4:Number;
var _local5:Number;
var _local6:Sprite;
if (_arg1 == null){
_arg1 = this.mStage;
_local4 = _arg1.stageWidth;
_local5 = _arg1.stageHeight;
} else {
_local4 = _arg1.width;
_local5 = _arg1.height;
};
_local6 = new Sprite();
_local6.graphics.beginFill(_arg3);
_local6.graphics.drawRect(0, 0, _local4, _local5);
_local6.graphics.endFill();
_local6.alpha = _arg2;
_arg1.addChild(_local6);
mouseSprite = _local6;
return (_local6);
}
public function set mouseSprite(_arg1:Sprite):void{
_mouseSprite = _arg1;
}
public function get mouseSprite():Sprite{
return (_mouseSprite);
}
}
}//package fangxu
Section 16
//Config (game.Config)
package game {
public class Config {
public static const MAX_LEVEL:int = 12;
public static function getTime(_arg1:int=1):int{
var _local2:int;
_local2 = 60;
switch (_arg1){
case 1:
_local2 = 30;
break;
case 2:
_local2 = 50;
break;
case 3:
_local2 = 55;
break;
case 4:
_local2 = 110;
break;
case 5:
_local2 = 110;
break;
case 6:
_local2 = 180;
break;
case 7:
_local2 = 170;
break;
case 8:
_local2 = 280;
break;
case 9:
_local2 = 180;
break;
case 10:
_local2 = 300;
case 11:
_local2 = 350;
break;
};
return (_local2);
}
public static function getTileNumber(_arg1:int=1):int{
var _local2:int;
_local2 = 5;
return ((((_local2 + _arg1) > 15)) ? 15 : (_local2 + _arg1));
}
public static function getSpeTileNum(_arg1:int=1):int{
var _local2:int;
_local2 = 0;
switch (_arg1){
case 1:
_local2 = 0;
break;
case 2:
_local2 = 1;
break;
case 3:
_local2 = 1;
break;
case 4:
_local2 = 2;
break;
case 5:
_local2 = 2;
break;
case 6:
_local2 = 2;
break;
case 7:
_local2 = 3;
break;
case 8:
_local2 = 3;
break;
case 9:
_local2 = 3;
break;
case 10:
_local2 = 4;
break;
case 11:
_local2 = 4;
break;
};
return (_local2);
}
public static function getTotalNum(_arg1:int=1):int{
var _local2:int;
var _local3:Array;
var _local4:uint;
var _local5:uint;
var _local6:uint;
_local2 = 0;
_local3 = getStructure(_arg1);
_local4 = 0;
while (_local4 < _local3.length) {
_local5 = 0;
while (_local5 < _local3[_local4].length) {
_local6 = 0;
while (_local6 < _local3[_local4][_local5].length) {
if (_local3[_local4][_local5][_local6] == 1){
_local2++;
};
_local6++;
};
_local5++;
};
_local4++;
};
return (_local2);
}
public static function getBGSound(_arg1:int=1):Class{
var _local2:Class;
_local2 = BG1Sound;
switch (_arg1){
case 1:
_local2 = BG1Sound;
break;
case 2:
_local2 = BG2Sound;
break;
case 3:
_local2 = BG3Sound;
break;
case 4:
_local2 = BG4Sound;
break;
case 5:
_local2 = BG5Sound;
break;
case 6:
_local2 = BG6Sound;
break;
case 7:
_local2 = BG7Sound;
break;
case 8:
_local2 = BG8Sound;
break;
case 9:
_local2 = BG9Sound;
break;
case 10:
_local2 = BG10Sound;
break;
};
return (_local2);
}
public static function getBGMessage(_arg1:int=1):String{
var _local2:String;
_local2 = ("level " + _arg1);
switch (_arg1){
case 1:
_local2 = LanguageConfig.WORD.BgMes1;
break;
case 2:
_local2 = LanguageConfig.WORD.BgMes2;
break;
case 3:
_local2 = LanguageConfig.WORD.BgMes3;
break;
case 4:
_local2 = LanguageConfig.WORD.BgMes4;
break;
case 5:
_local2 = LanguageConfig.WORD.BgMes5;
break;
case 6:
_local2 = LanguageConfig.WORD.BgMes6;
break;
case 7:
_local2 = LanguageConfig.WORD.BgMes7;
break;
case 8:
_local2 = LanguageConfig.WORD.BgMes8;
break;
case 9:
_local2 = LanguageConfig.WORD.BgMes9;
break;
case 10:
_local2 = LanguageConfig.WORD.BgMes10;
break;
case 11:
_local2 = LanguageConfig.WORD.BgMes11;
break;
case 12:
_local2 = LanguageConfig.WORD.BgMes12;
break;
};
return (_local2);
}
public static function getStructure(_arg1:int=1):Array{
data = new Array();
switch (_arg1){
case 1:
data.push([[1, 0, 0], [1, 1, 1], [0, 1, 1]]);
data.push([[1, 1, 1], [1, 1, 0], [1, 1, 1]]);
data.push([[0, 0, 1], [1, 1, 1], [1, 1, 0]]);
break;
case 2:
data.push([[1, 1, 1], [1, 0, 1], [1, 1, 1]]);
data.push([[1, 1, 1], [1, 1, 1], [1, 1, 1]]);
data.push([[1, 1, 1], [1, 1, 1], [1, 1, 1]]);
data.push([[1, 1, 1], [1, 0, 1], [1, 1, 1]]);
break;
case 3:
data.push([[1, 0, 0, 1], [1, 0, 0, 1], [1, 0, 0, 1], [1, 0, 0, 1]]);
data.push([[1, 1, 1, 1], [0, 0, 0, 0], [0, 0, 0, 0], [1, 1, 1, 1]]);
data.push([[1, 0, 0, 1], [1, 0, 0, 1], [1, 0, 0, 1], [1, 0, 0, 1]]);
data.push([[1, 1, 1, 1], [0, 0, 0, 0], [0, 0, 0, 0], [1, 1, 1, 1]]);
break;
case 4:
data.push([[1, 1, 1, 1], [1, 1, 1, 1], [0, 0, 0, 0], [0, 0, 0, 0]]);
data.push([[1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1]]);
data.push([[1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1]]);
data.push([[1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1]]);
data.push([[0, 0, 0, 0], [0, 0, 0, 0], [1, 1, 1, 1], [1, 1, 1, 1]]);
break;
case 5:
data.push([[0, 0, 1, 0, 0], [0, 0, 1, 0, 0], [1, 1, 0, 1, 1], [0, 0, 1, 0, 0], [0, 0, 1, 0, 0]]);
data.push([[0, 0, 1, 0, 0], [0, 0, 1, 0, 0], [1, 1, 0, 1, 1], [0, 0, 1, 0, 0], [0, 0, 1, 0, 0]]);
data.push([[1, 1, 1, 1, 1], [1, 1, 1, 1, 1], [1, 1, 0, 1, 1], [1, 1, 1, 1, 1], [1, 1, 1, 1, 1]]);
data.push([[0, 0, 1, 0, 0], [0, 0, 1, 0, 0], [1, 1, 0, 1, 1], [0, 0, 1, 0, 0], [0, 0, 1, 0, 0]]);
data.push([[0, 0, 1, 0, 0], [0, 0, 1, 0, 0], [1, 1, 0, 1, 1], [0, 0, 1, 0, 0], [0, 0, 1, 0, 0]]);
break;
case 6:
data.push([[0, 0, 1, 0, 0], [1, 1, 1, 1, 1], [0, 0, 1, 0, 0], [1, 1, 1, 1, 1], [0, 0, 1, 0, 0]]);
data.push([[1, 1, 1, 1, 1], [0, 1, 1, 1, 0], [0, 1, 1, 1, 0], [0, 1, 1, 1, 0], [1, 1, 1, 1, 1]]);
data.push([[1, 1, 1, 1, 1], [1, 1, 1, 1, 1], [1, 1, 0, 1, 1], [1, 1, 1, 1, 1], [1, 1, 1, 1, 1]]);
data.push([[1, 1, 1, 1, 1], [0, 1, 1, 1, 0], [0, 1, 1, 1, 0], [0, 1, 1, 1, 0], [1, 1, 1, 1, 1]]);
data.push([[0, 0, 1, 0, 0], [1, 1, 1, 1, 1], [0, 0, 1, 0, 0], [1, 1, 1, 1, 1], [0, 0, 1, 0, 0]]);
break;
case 7:
data.push([[1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1], [0, 1, 0, 0, 1, 0], [0, 1, 0, 0, 1, 0], [1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1]]);
data.push([[0, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 0], [1, 1, 0, 0, 1, 1], [1, 1, 0, 0, 1, 1], [0, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 0]]);
data.push([[1, 0, 0, 0, 0, 1], [1, 0, 0, 0, 1, 1], [0, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 0], [1, 1, 0, 0, 0, 1], [1, 0, 0, 0, 0, 1]]);
data.push([[0, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 0], [1, 1, 0, 0, 1, 1], [1, 1, 0, 0, 1, 1], [0, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 0]]);
data.push([[1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1], [0, 1, 0, 0, 1, 0], [0, 1, 0, 0, 1, 0], [1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1]]);
break;
case 8:
data.push([[1, 1, 1, 1, 1, 1], [1, 0, 0, 0, 0, 1], [1, 0, 1, 1, 0, 1], [1, 0, 1, 1, 0, 1], [1, 0, 0, 0, 0, 1], [1, 1, 1, 1, 1, 1]]);
data.push([[0, 0, 0, 0, 0, 0], [0, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 0], [0, 0, 0, 0, 0, 0]]);
data.push([[1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1]]);
data.push([[0, 0, 0, 0, 0, 0], [0, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 0], [0, 0, 0, 0, 0, 0]]);
data.push([[1, 1, 1, 1, 1, 1], [1, 0, 0, 0, 0, 1], [1, 0, 1, 1, 0, 1], [1, 0, 1, 1, 0, 1], [1, 0, 0, 0, 0, 1], [1, 1, 1, 1, 1, 1]]);
break;
case 9:
data.push([[0, 0, 0, 1, 0, 0, 0], [0, 0, 1, 1, 1, 0, 0], [0, 1, 1, 1, 1, 1, 0], [1, 1, 1, 1, 1, 1, 1], [0, 1, 1, 1, 1, 1, 0], [0, 0, 1, 1, 1, 0, 0], [0, 0, 0, 1, 0, 0, 0]]);
data.push([[1, 1, 1, 1, 1, 1, 1], [0, 1, 1, 1, 1, 1, 0], [0, 0, 1, 1, 1, 0, 0], [0, 0, 0, 1, 0, 0, 0], [0, 0, 1, 1, 1, 0, 0], [0, 1, 1, 1, 1, 1, 0], [1, 1, 1, 1, 1, 1, 1]]);
data.push([[0, 0, 0, 0, 0, 0, 0], [0, 1, 1, 0, 1, 1, 0], [0, 1, 1, 0, 1, 1, 0], [0, 0, 0, 0, 0, 0, 0], [0, 1, 1, 0, 1, 1, 0], [0, 1, 1, 0, 1, 1, 0], [0, 0, 0, 0, 0, 0, 0]]);
data.push([[1, 1, 1, 1, 1, 1, 1], [0, 1, 1, 1, 1, 1, 0], [0, 0, 1, 1, 1, 0, 0], [0, 0, 0, 1, 0, 0, 0], [0, 0, 1, 1, 1, 0, 0], [0, 1, 1, 1, 1, 1, 0], [1, 1, 1, 1, 1, 1, 1]]);
data.push([[0, 0, 0, 1, 0, 0, 0], [0, 0, 1, 1, 1, 0, 0], [0, 1, 1, 1, 1, 1, 0], [1, 1, 1, 1, 1, 1, 1], [0, 1, 1, 1, 1, 1, 0], [0, 0, 1, 1, 1, 0, 0], [0, 0, 0, 1, 0, 0, 0]]);
break;
case 10:
data.push([[1, 1, 1, 1, 1, 1, 1], [1, 0, 0, 0, 0, 0, 1], [1, 0, 1, 1, 1, 0, 1], [1, 0, 1, 1, 1, 0, 1], [1, 0, 1, 1, 1, 0, 1], [1, 0, 0, 0, 0, 0, 1], [1, 1, 1, 1, 1, 1, 1]]);
data.push([[0, 0, 0, 0, 0, 0, 0], [0, 1, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 1, 0], [0, 0, 0, 0, 0, 0, 0]]);
data.push([[1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1]]);
data.push([[0, 0, 0, 0, 0, 0, 0], [0, 1, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 1, 0], [0, 0, 0, 0, 0, 0, 0]]);
data.push([[0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0], [0, 0, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 0, 0], [0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0]]);
data.push([[0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 1, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0]]);
break;
case 11:
data.push([[1, 1, 1, 1, 1, 1, 1], [1, 0, 0, 0, 0, 0, 1], [1, 0, 1, 1, 1, 0, 1], [1, 0, 1, 0, 1, 0, 1], [1, 0, 1, 1, 1, 0, 1], [1, 0, 0, 0, 0, 0, 1], [1, 1, 1, 1, 1, 1, 1]]);
data.push([[0, 0, 0, 0, 0, 0, 0], [0, 1, 1, 1, 1, 1, 0], [0, 1, 0, 0, 0, 1, 0], [0, 1, 0, 1, 0, 1, 0], [0, 1, 0, 0, 0, 1, 0], [0, 1, 1, 1, 1, 1, 0], [0, 0, 0, 0, 0, 0, 0]]);
data.push([[1, 0, 0, 0, 0, 0, 1], [0, 1, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 1, 0], [1, 0, 0, 0, 0, 0, 1]]);
data.push([[1, 0, 0, 0, 0, 0, 1], [0, 1, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 1, 0], [0, 1, 1, 1, 1, 1, 0], [1, 0, 0, 0, 0, 0, 1]]);
data.push([[0, 0, 0, 0, 0, 0, 0], [0, 1, 1, 1, 1, 1, 0], [0, 1, 0, 0, 0, 1, 0], [0, 1, 0, 1, 0, 1, 0], [0, 1, 0, 0, 0, 1, 0], [0, 1, 1, 1, 1, 1, 0], [0, 0, 0, 0, 0, 0, 0]]);
data.push([[1, 1, 1, 1, 1, 1, 1], [1, 0, 0, 0, 0, 0, 1], [1, 0, 1, 1, 1, 0, 1], [1, 0, 1, 0, 1, 0, 1], [1, 0, 1, 1, 1, 0, 1], [1, 0, 0, 0, 0, 0, 1], [1, 1, 1, 1, 1, 1, 1]]);
break;
};
return (data);
}
}
}//package game
Section 17
//CTile (game.CTile)
package game {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
public class CTile extends MovieClip {
var _bBurstExist;// = false
var _nIDInTileArray;
var _twColorTransform;
var __get__white;
var _nBonusCountDownStep;// = 0
var _bTime;
public var mcClear:MovieClip;
var _oColumn;
var _bReplace;// = false
var _nStepInterval;
var _sbtShape;
var _smcBitmapData;
var _bSelect;// = false
var _mcBitmap;
var _nBonusValue;// = 0
public function CTile(){
_bSelect = false;
_bBurstExist = false;
_bReplace = false;
_nBonusCountDownStep = 0;
_nBonusValue = 0;
addFrameScript(0, frame1);
super();
init();
}
private function init():void{
this.useHandCursor = true;
this.buttonMode = true;
}
function frame1(){
stop();
}
public function set oColumn(_arg1:Object):void{
this._oColumn = _arg1;
}
public function get oColumn():Object{
return (_oColumn);
}
public function selectTile(_arg1:MouseEvent=null){
_bSelect = !(_bSelect);
if (_bSelect){
this.transform.colorTransform = new ColorTransform(1.5, 1.5, 1.5, 1);
} else {
this.transform.colorTransform = new ColorTransform(1, 1, 1, 1);
};
}
}
}//package game
Section 18
//LanguageConfig (game.LanguageConfig)
package game {
public class LanguageConfig {
public static const LANGUAGE:int = 0;
public static var WORD:Word = getWord();
public static function getWord():Word{
var _local1:Word;
_local1 = new Word();
switch (LANGUAGE){
case 0:
break;
case 1:
_local1.Logo = 17;
_local1.Url = "http://www.gamesgames.com";
_local1.Back = "Back";
_local1.Continue = "Continue";
_local1.Credits = "Credits";
_local1.GameAuthor = "Game produced by\nGamesonly.net";
_local1.GameOver = "Game Over";
_local1.GameScore = "Your Score";
_local1.GamePaused = "Game Paused";
_local1.Help = "How to Play";
_local1.HelpMes1 = "To rotate your view of the blocks, either click the\n or or use the and keys. Select two with the same pattern ( ) to remove them from the game. Complete all the levels to rescue Princess Mahjong.";
_local1.HelpMes2 = "Double the score is awarded.";
_local1.HelpMes3 = "An extra pair of blocks is removed.";
_local1.HelpMes4 = "Extra time is awarded.";
_local1.LevelCompleted = "Level Completed";
_local1.Play = "Play";
_local1.Pause = "Pause";
_local1.PlayAgain = "Play Again";
_local1.PlayNextLevel = "Play Next Level";
_local1.Menu = "Menu";
_local1.MoreGames = "More Games";
_local1.QuestMap = "Quest Map";
_local1.Reshuffle = "Shuffle";
_local1.ReshuffleMes = "The blocks are being shuffled.";
_local1.Score = "Score:";
_local1.Skip = "Skip";
_local1.Story = "Story";
_local1.Time = "Time:";
_local1.TimeBonus = "Time Bonus";
_local1.Title = "Mahjong: \nA Knight's Quest";
_local1.MapMes1 = "1\nSir Matchalot's Quest Begins";
_local1.MapMes2 = "2\nBlackheart Forest";
_local1.MapMes3 = "3\nThe Cold, Cold Night";
_local1.MapMes4 = "4\nThe Spirit Wolf";
_local1.MapMes5 = "5\nThe Fire Dragon";
_local1.MapMes6 = "6\nThe Giant Castle Guards";
_local1.MapMes7 = "7\nKing Malcontent";
_local1.MapMes8 = "8\nSir Matchalot Enters Blackheart Castle";
_local1.MapMes9 = "9\nThe Defeat of the Last Guard";
_local1.MapMes10 = "10\nThe Defeat of King Malcontent";
_local1.BgMes1 = "The kingdom's greatest treasure, Princess Mahjong, has been kidnapped by the demonic King Malcontent! Sir Matchalot, a young but valiant knight, is on a quest to rescue her. He will encounter many of Malcontent's henchmen on his way to Blackheart Forest, where the princess is being held captive. But he will stop at nothing to save her.";
_local1.BgMes2 = "Sir Matchalot's Quest Begins";
_local1.BgMes3 = "Blackheart Forest";
_local1.BgMes4 = "The Cold, Cold Night";
_local1.BgMes5 = "The Spirit Wolf";
_local1.BgMes6 = "The Fire Dragon";
_local1.BgMes7 = "The Giant Castle Guards";
_local1.BgMes8 = "King Malcontent";
_local1.BgMes9 = "Sir Matchalot Enters Blackheart Castle";
_local1.BgMes10 = "The Defeat of the Last Guard";
_local1.BgMes11 = "The Defeat of King Malcontent";
_local1.BgMes12 = "Princess Mahjong Is Saved!";
break;
case 2:
_local1.Logo = 2;
_local1.Url = "http://www.games.com.cn";
_local1.Back = "Terug";
_local1.Continue = "Doorgaan";
_local1.Credits = "Credits";
_local1.GameAuthor = "Game produced by\nGamesonly.net";
_local1.GameOver = "Game Over";
_local1.GameScore = "Je score";
_local1.GamePaused = "Spel gepauzeerd";
_local1.Help = "Instructies";
_local1.HelpMes1 = "Om het scherm met stenen te draaien, klik je op [rotate left image] of [rotate right image], of gebruik je de toetsen [left arrow image] en [right arrow image]. Selecteer twee [tile image] met hetzelfde patroon ([pattern image]) om ze uit het spel te verwijderen. Doorloop alle levels om prinses Mahjong te redden.";
_local1.HelpMes2 = "Dubbele score";
_local1.HelpMes3 = "Verwijdert willekeurig paar";
_local1.HelpMes4 = "Extra tijd bonus";
_local1.LevelCompleted = "Einde level";
_local1.Play = "Spelen";
_local1.Pause = "Pauze";
_local1.PlayAgain = "Opnieuw spelen";
_local1.PlayNextLevel = "Volgende level spelen";
_local1.Menu = "Menu";
_local1.MoreGames = "Meer spellen";
_local1.QuestMap = "Kaart";
_local1.Reshuffle = "Schudden";
_local1.ReshuffleMes = "De stenen worden geschud.";
_local1.Score = "Score:";
_local1.Skip = "Overslaan";
_local1.Story = "Verhaal";
_local1.Time = "Tijd:";
_local1.TimeBonus = "Tijdbonus";
_local1.Title = "Mahjong: \nDe zoektocht van een ridder";
_local1.MapMes1 = "1\nHeer Combimeester begint zijn zoektocht";
_local1.MapMes2 = "2\nDonkere Woud";
_local1.MapMes3 = "3\nDe koude, koude nacht";
_local1.MapMes4 = "4\nDe wolvengeest";
_local1.MapMes5 = "5\nDe vuurdraak";
_local1.MapMes6 = "6\nDe enorme kasteelwachters";
_local1.MapMes7 = "7\nKoning Misdadig";
_local1.MapMes8 = "8\nHeer Combimeester betreedt het donkere kasteel";
_local1.MapMes9 = "9\nDe nederlaag van de laatste wachter";
_local1.MapMes10 = "10\nDe nederlaag van Koning Misdadig";
_local1.BgMes1 = "De schat van het koninkrijk, prinses Mahjong, is ontvoerd door de demonische koning Misdadig. Heer Combimeester, een jonge maar moedige ridder, zet een tocht op om haar te redden. Onderweg naar Donkere Woud, waar de prinses wordt vastgehouden, komt hij veel handlangers van Misdadig tegen. Maar niets kan hem van zijn missie weerhouden...";
_local1.BgMes2 = "Heer Combimeester begint zijn zoektocht";
_local1.BgMes3 = "Donkere Woud";
_local1.BgMes4 = "De koude, koude nacht";
_local1.BgMes5 = "De wolvengeest";
_local1.BgMes6 = "De vuurdraak";
_local1.BgMes7 = "De enorme kasteelwachters";
_local1.BgMes8 = "Koning Misdadig";
_local1.BgMes9 = "Heer Combimeester betreedt het donkere kasteel";
_local1.BgMes10 = "De nederlaag van de laatste wachter";
_local1.BgMes11 = "De nederlaag van Koning Misdadig";
_local1.BgMes12 = "Prinses Mahjong is gered!";
break;
case 3:
_local1.Logo = 2;
_local1.Url = "http://www.games.com.cn";
_local1.Back = "Retour";
_local1.Continue = "Continuer";
_local1.Credits = "Credits";
_local1.GameAuthor = "Game produced by\nGamesonly.net";
_local1.GameOver = "Game over";
_local1.GameScore = "Ton score";
_local1.GamePaused = "Jeu en pause";
_local1.Help = "Instructions";
_local1.HelpMes1 = "Pour faire pivoter ta vue sur les blocs, clique soit sur [rotate left image] soit sur [rotate right image] ou bien utilise les touches [left arrow image] et [right arrow image]. Sélectionne deux [tile image] avec le même motif ([pattern image]) si tu veux les enlever du jeu. Réussis tous les niveaux afin de sauver la princesse Mah-jong.";
_local1.HelpMes2 = "Le score double est accordé.";
_local1.HelpMes3 = "Une paire supplémentaire de blocs est éliminée.";
_local1.HelpMes4 = "Un temps supplémentaire est accordé.";
_local1.LevelCompleted = "Niveau réussi";
_local1.Play = "Jouer";
_local1.Pause = "Pause";
_local1.PlayAgain = "Rejouer";
_local1.PlayNextLevel = "Jouer au prochain niveau";
_local1.Menu = "Menu";
_local1.MoreGames = "Plus de jeux";
_local1.QuestMap = "Carte de la quête";
_local1.Reshuffle = "Mélanger";
_local1.ReshuffleMes = "Les blocs sont mélangés.";
_local1.Score = "Score:";
_local1.Skip = "Passer";
_local1.Story = "Histoire";
_local1.Time = "Temps:";
_local1.TimeBonus = "Bonus temps";
_local1.Title = "Mah-jong : \nla quête du chevalier";
_local1.MapMes1 = "1\nLa quête du chevalier Ledoué commence";
_local1.MapMes2 = "2\nLa forêt Ténébreuse";
_local1.MapMes3 = "3\nLa nuit froide, si froide";
_local1.MapMes4 = "4\nLe loup esprit";
_local1.MapMes5 = "5\nLe dragon de feu";
_local1.MapMes6 = "6\nLes géants qui gardent le château";
_local1.MapMes7 = "7\nLe roi Malcontent";
_local1.MapMes8 = "8\nLe chevalier Ledoué entre dans le château Ténébreux";
_local1.MapMes9 = "9\nLa défaite du dernier garde";
_local1.MapMes10 = "10\nLa défaite du roi Malcontent";
_local1.BgMes1 = "Le plus grand trésor du royaume, la princesse Mah-jong, a été enlevée par le diabolique roi Malcontent ! Le chevalier Ledoué, jeune mais déjà valeureux, part à sa recherche pour la sauver. Sur son chemin vers la Forêt Ténébreuse, où la princesse est tenue captive, il rencontrera nombre de gredins au service de Malcontent. Mais il ne reculera devant rien pour sauver la princesse. ";
_local1.BgMes2 = "La quête du chevalier Ledoué commence";
_local1.BgMes3 = "La forêt Ténébreuse";
_local1.BgMes4 = "La nuit froide, si froide";
_local1.BgMes5 = "Le loup esprit";
_local1.BgMes6 = "Le dragon de feu";
_local1.BgMes7 = "Les géants qui gardent le château";
_local1.BgMes8 = "Le roi Malcontent";
_local1.BgMes9 = "Le chevalier Ledoué entre dans le château Ténébreux";
_local1.BgMes10 = "La défaite du dernier garde";
_local1.BgMes11 = "La défaite du roi Malcontent";
_local1.BgMes12 = "La princesse Mah-jong est sauvée !";
break;
case 4:
_local1.Logo = 2;
_local1.Url = "http://www.games.com.cn";
_local1.Back = "Zurück";
_local1.Continue = "Weiter";
_local1.Credits = "Credits";
_local1.GameAuthor = "Game produced by\nGamesonly.net";
_local1.GameOver = "Game over";
_local1.GameScore = "Deine Punkte";
_local1.GamePaused = "Spiel angehalten";
_local1.Help = "Anleitung";
_local1.HelpMes1 = "Um die Blöcke zu drehen, klicke entweder [rotate left image] oder [rotate right image] oder benutze die [left arrow image]- und [right arrow image]-Tasten. Wähle zwei [tile image] mit derselben Abbildung ([pattern image]) aus, um sie aus dem Spiel zu entfernen. Schließe alle Level an, um Prinzessin Mahjong zu befreien.";
_local1.HelpMes2 = "Du erhältst doppelte Punkte.";
_local1.HelpMes3 = "Ein zusätzliches Blockpaar wird entfernt. ";
_local1.HelpMes4 = "Du erhältst Extrazeit gutgeschrieben.";
_local1.LevelCompleted = "Level beendet";
_local1.Play = "Spielen";
_local1.Pause = "Pause";
_local1.PlayAgain = "Nochmal spielen";
_local1.PlayNextLevel = "Nächsten Level spielen";
_local1.Menu = "Menü";
_local1.MoreGames = "Mehr Spiele";
_local1.QuestMap = "Questkarte";
_local1.Reshuffle = "Mischen";
_local1.ReshuffleMes = "Die Blöcke werden gemischt.";
_local1.Score = "Punkte:";
_local1.Skip = "Überspringen";
_local1.Story = "Story";
_local1.Time = "Zeit:";
_local1.TimeBonus = "Zeitbonus";
_local1.Title = "Mahjong: \nEine Rittersquest";
_local1.MapMes1 = "1\nSir Paarklickan macht sich auf die Reise";
_local1.MapMes2 = "2\nDer Dunkelwald";
_local1.MapMes3 = "3\nDie kalte, finstere Nacht";
_local1.MapMes4 = "4\nDer Geisterwolf";
_local1.MapMes5 = "5\nDer feuerspeiende Drache";
_local1.MapMes6 = "6\nDie riesigen Wachen des Schlosses";
_local1.MapMes7 = "7\nKönig Unzufriedenheit";
_local1.MapMes8 = "8\nSir Paarklickan erreicht das Dunkelschloss";
_local1.MapMes9 = "9\nDer Sieg gegen die letzte Wache";
_local1.MapMes10 = "10\nDer Sieg gegen König Unzufriedenheit";
_local1.BgMes1 = "Der größte Schatz des Königreichs, Prinzessin Mahjong, ist vom teuflischen König Unzufriedenheit entführt worden! Sir Paarklickan, ein junger, wackerer Ritter, macht sich auf die Reise, um sie zu retten. Auf seinem Weg in den Dunkelwald, wo die Prinzessin gefangen gehalten wird, wird er vielen Schergen von König Unzufriedenheit begegnen. Aber nichts wird ihn davon abhalten können, sie zu retten.";
_local1.BgMes2 = "Sir Paarklickan macht sich auf die Reise";
_local1.BgMes3 = "Der Dunkelwald";
_local1.BgMes4 = "Die kalte, finstere Nacht";
_local1.BgMes5 = "Der Geisterwolf";
_local1.BgMes6 = "Der feuerspeiende Drache";
_local1.BgMes7 = "Die riesigen Wachen des Schlosses";
_local1.BgMes8 = "König Unzufriedenheit";
_local1.BgMes9 = "Sir Paarklickan erreicht das Dunkelschloss";
_local1.BgMes10 = "Der Sieg gegen die letzte Wache";
_local1.BgMes11 = "Der Sieg gegen König Unzufriedenheit";
_local1.BgMes12 = "Prinzessin Mahjong ist gerettet!";
break;
case 5:
_local1.Logo = 2;
_local1.Url = "http://www.games.com.cn";
_local1.Back = "Atrás";
_local1.Continue = "Continuar";
_local1.Credits = "Credits";
_local1.GameAuthor = "Game produced by\nGamesonly.net";
_local1.GameOver = "Fin de partida";
_local1.GameScore = "Tu puntuación";
_local1.GamePaused = "Juego en pausa";
_local1.Help = "Cómo jugar";
_local1.HelpMes1 = "Para rotar la imagen de los bloques, haz clic en [rotate left image] o en [rotate right image] o usa las teclas [left arrow image] y [right arrow image]. Selecciona dos [tile image] con el mismo dibujo ([pattern image]) para eliminarlos del juego. Completa todos los niveles para rescatar a la Princesa Mahjong.";
_local1.HelpMes2 = "Te concede el doble de tu puntuación.";
_local1.HelpMes3 = "Elimina una pareja de bloques extra.";
_local1.HelpMes4 = "Te concede tiempo extra.";
_local1.LevelCompleted = "Nivel completado";
_local1.Play = "Jugar";
_local1.Pause = "Pausar";
_local1.PlayAgain = "Volver a jugar";
_local1.PlayNextLevel = "Jugar siguiente nivel";
_local1.Menu = "Menú";
_local1.MoreGames = "Más juegos";
_local1.QuestMap = "Mapa de la misión";
_local1.Reshuffle = "Mezclar bloques";
_local1.ReshuffleMes = "Los bloques se están mezclando.";
_local1.Score = "Puntuación:";
_local1.Skip = "Saltar";
_local1.Story = "Historia";
_local1.Time = "Tiempo:";
_local1.TimeBonus = "Bonificación tiempo";
_local1.Title = "Mahjong: \nLa misión de un caballero";
_local1.MapMes1 = "1\nLa misión de Sir Combinamucho comienza";
_local1.MapMes2 = "2\nBosque Corazón Negro";
_local1.MapMes3 = "3\nLa fría, fría noche";
_local1.MapMes4 = "4\nEl lobo fantasma";
_local1.MapMes5 = "5\nEl dragón de fuego";
_local1.MapMes6 = "6\nLos guardias gigantes del castillo";
_local1.MapMes7 = "7\nRey Descontento";
_local1.MapMes8 = "8\nSir Combinamucho entra al Castillo Corazón Negro";
_local1.MapMes9 = "9\nLa derrota del último guardia";
_local1.MapMes10 = "10\nLa derrota del Rey Descontento";
_local1.BgMes1 = "¡El mayor tesoro del reino, la Princesa Mahjong, ha sido secuestrada por el demoníaco Rey Descontento! Sir Combinamucho, un joven pero valiente caballero, tiene la misión de rescatarla. Se enfrentará a muchos de los esbirros de Descontento de camino al Bosque Corazón Negro, donde la princesa está cautiva, pero nada le impedirá salvarla.";
_local1.BgMes2 = "La misión de Sir Combinamucho comienza";
_local1.BgMes3 = "Bosque Corazón Negro";
_local1.BgMes4 = "La fría, fría noche";
_local1.BgMes5 = "El lobo fantasma";
_local1.BgMes6 = "El dragón de fuego";
_local1.BgMes7 = "Los guardias gigantes del castillo";
_local1.BgMes8 = "Rey Descontento";
_local1.BgMes9 = "Sir Combinamucho entra al Castillo Corazón Negro";
_local1.BgMes10 = "La derrota del último guardia";
_local1.BgMes11 = "La derrota del Rey Descontento";
_local1.BgMes12 = "¡La princesa Mahjong ha sido rescatada!";
break;
case 6:
_local1.Logo = 2;
_local1.Url = "http://www.games.com.cn";
_local1.Back = "Anterior";
_local1.Continue = "Continuar";
_local1.Credits = "Credits";
_local1.GameAuthor = "Game produced by\nGamesonly.net";
_local1.GameOver = "Acabou";
_local1.GameScore = "Seu placar";
_local1.GamePaused = "Jogo pausado";
_local1.Help = "Como jogar";
_local1.HelpMes1 = "Para girar a visualização dos blocos, clique em [rotate left image] ou [rotate right image] ou use as teclas [left arrow image] e [right arrow image]. Selecione dois [tile image] com o mesmo desenho ([pattern image]) para removê-los do jogo. Termine todos os níveis para resgatar a Princesa Mahjong.";
_local1.HelpMes2 = "É concedido o dobro da pontuação.";
_local1.HelpMes3 = "Um par extra de blocos é removido.";
_local1.HelpMes4 = "É concedido tempo extra.";
_local1.LevelCompleted = "Nível concluído";
_local1.Play = "Jogar";
_local1.Pause = "Pausa";
_local1.PlayAgain = "Jogar de novo";
_local1.PlayNextLevel = "Jogar o próximo nível";
_local1.Menu = "Menu";
_local1.MoreGames = "Mais jogos";
_local1.QuestMap = "Mapa da aventura";
_local1.Reshuffle = "Embaralhar";
_local1.ReshuffleMes = "Os blocos estão sendo embaralhados.";
_local1.Score = "Pontuação:";
_local1.Skip = "Pular";
_local1.Story = "História";
_local1.Time = "Tempo:";
_local1.TimeBonus = "Bônus de tempo";
_local1.Title = "Mahjong: \nAventura de Cavaleiro";
_local1.MapMes1 = "1\nA aventura de Sir Combinote começa";
_local1.MapMes2 = "2\nFloresta Coração Negro";
_local1.MapMes3 = "3\nA noite fria";
_local1.MapMes4 = "4\nO espírito lobo";
_local1.MapMes5 = "5\nO dragão de fogo";
_local1.MapMes6 = "6\nOs guardas gigantes do castelo";
_local1.MapMes7 = "7\nO Rei Maldomal";
_local1.MapMes8 = "8\nSir Combinote adentra o Castelo Coração Negro";
_local1.MapMes9 = "9\nA derrota do último guarda";
_local1.MapMes10 = "10\nA derrota do Rei Maldomal";
_local1.BgMes1 = "O bem mais precioso do reino, a Princesa Mahjong, foi seqüestrada pelo terrível Rei Maldomal! Sir Combinote, um cavaleiro jovem, mas muito valente, está empenhado na missão de resgatá-la. Ele encontrará muitos dos capangas de Maldomal a caminho da Floresta Coração Negro, onde a princesa é mantida prisioneira. Mas ele não parará por nada antes de salvá-la.";
_local1.BgMes2 = "A aventura de Sir Combinote começa";
_local1.BgMes3 = "Floresta Coração Negro";
_local1.BgMes4 = "A noite fria";
_local1.BgMes5 = "O espírito lobo";
_local1.BgMes6 = "O dragão de fogo";
_local1.BgMes7 = "Os guardas gigantes do castelo";
_local1.BgMes8 = "O Rei Maldomal";
_local1.BgMes9 = "Sir Combinote adentra o Castelo Coração Negro";
_local1.BgMes10 = "A derrota do último guarda";
_local1.BgMes11 = "A derrota do Rei Maldomal";
_local1.BgMes12 = "A Princesa Mahjong foi salva!";
break;
case 7:
_local1.Logo = 2;
_local1.Url = "http://www.games.com.cn";
_local1.Back = "Voltar";
_local1.Continue = "Continuar";
_local1.Credits = "Credits";
_local1.GameAuthor = "Game produced by\nGamesonly.net";
_local1.GameOver = "Fim do Jogo";
_local1.GameScore = "A tua pontuação";
_local1.GamePaused = "Jogo em pausa";
_local1.Help = "Como Jogar";
_local1.HelpMes1 = "Para rodares a tua vista dos blocos, clica em [rotate left image] ou [rotate right image] ou usa as teclas [left arrow image] e [right arrow image]. Selecciona dois [tile image] com o mesmo padrão ([pattern image]) para os removeres do jogo. Acaba todos os níveis para salvares a Princesa Mahjong.";
_local1.HelpMes2 = "Ganhas o dobro da pontuação.";
_local1.HelpMes3 = "É removido mais um par de blocos.";
_local1.HelpMes4 = "Ganhas mais tempo.";
_local1.LevelCompleted = "Nível completo";
_local1.Play = "Jogar";
_local1.Pause = "Pausa";
_local1.PlayAgain = "Jogar novamente";
_local1.PlayNextLevel = "Jogar o Nível Seguinte";
_local1.Menu = "Menu";
_local1.MoreGames = "Mais Jogos";
_local1.QuestMap = "Mapa da Demanda";
_local1.Reshuffle = "Baralhar";
_local1.ReshuffleMes = "Os blocos estão a ser baralhados.";
_local1.Score = "Pontuação:";
_local1.Skip = "Ignorar";
_local1.Story = "História";
_local1.Time = "Tempo:";
_local1.TimeBonus = "Bónus de tempo";
_local1.Title = "Mahjong: \nA Demanda do Cavaleiro";
_local1.MapMes1 = "1\nComeça a Demanda de Sir Juntatudo";
_local1.MapMes2 = "2\nFloresta do Coração Negro";
_local1.MapMes3 = "3\nA Noite Tão Fria";
_local1.MapMes4 = "4\nO Espírito do Lobo";
_local1.MapMes5 = "5\nO Dragão de Fogo";
_local1.MapMes6 = "6\nOs Guardas Gigantes do Castelo";
_local1.MapMes7 = "7\nO Rei Descontente";
_local1.MapMes8 = "8\nSir Juntatudo entra no Castelo do Coração Negro";
_local1.MapMes9 = "9\nA Derrota do Último Guarda";
_local1.MapMes10 = "10\nA Derrota do Rei Descontente";
_local1.BgMes1 = "O maior tesouro do reino, a Princesa Mahjong, foi raptada pelo demoníaco Rei Descontente! Sir Juntatudo, um jovem mas corajoso cavaleiro, parte numa demanda para a salvar. Ele encontrará muitos ajudantes do Descontente a caminho da Floresta do Coração Negro, onde a princesa está presa. Mas nada o impedirá de a salvar.";
_local1.BgMes2 = "Começa a Demanda de Sir Juntatudo";
_local1.BgMes3 = "Floresta do Coração Negro";
_local1.BgMes4 = "A Noite Tão Fria";
_local1.BgMes5 = "O Espírito do Lobo";
_local1.BgMes6 = "O Dragão de Fogo";
_local1.BgMes7 = "Os Guardas Gigantes do Castelo";
_local1.BgMes8 = "O Rei Descontente";
_local1.BgMes9 = "Sir Juntatudo entra no Castelo do Coração Negro";
_local1.BgMes10 = "A Derrota do Último Guarda";
_local1.BgMes11 = "A Derrota do Rei Descontente";
_local1.BgMes12 = "A Princesa Mahjong é Salva!";
break;
case 8:
_local1.Logo = 2;
_local1.Url = "http://www.games.com.cn";
_local1.Back = "Indietro";
_local1.Continue = "Continua";
_local1.Credits = "Credits";
_local1.GameAuthor = "Game produced by\nGamesonly.net";
_local1.GameOver = "Gioco finito ";
_local1.GameScore = "Il tuo punteggio";
_local1.GamePaused = "Gioco in pausa";
_local1.Help = "Come giocare";
_local1.HelpMes1 = "Per far ruotare la tua vista dei cubi clicca su [rotate left image] o [rotate right image] o usa i tasti [left arrow image] e [right arrow image]. Scegli due [tile image] con gli stessi simboli ([pattern image]) per eliminarli dal gioco. Completa tutti i livelli per salvare la Principessa Mahjong.";
_local1.HelpMes2 = "Viene assegnato il doppio del punteggio.";
_local1.HelpMes3 = "Viene eliminata una coppia di cubi a caso.";
_local1.HelpMes4 = "Viene assegnato tempo extra.";
_local1.LevelCompleted = "Livello completato";
_local1.Play = "Gioca";
_local1.Pause = "Pausa";
_local1.PlayAgain = "Rigioca";
_local1.PlayNextLevel = "Gioca al livello successivo";
_local1.Menu = "Menu";
_local1.MoreGames = "Altri giochi";
_local1.QuestMap = "Mappa della ricerca";
_local1.Reshuffle = "Mischia";
_local1.ReshuffleMes = "I cubi vengono mischiati.";
_local1.Score = "Punteggio:";
_local1.Skip = "Salta";
_local1.Story = "Storia";
_local1.Time = "Tempo:";
_local1.TimeBonus = "Bonus di tempo";
_local1.Title = "Mahjong: \nun cavaliere alla ricerca";
_local1.MapMes1 = "1\nLa ricerca di Sir Bergamotto comincia";
_local1.MapMes2 = "2\nForesta di Cuorenero";
_local1.MapMes3 = "3\nLa fredda, fredda notte";
_local1.MapMes4 = "4\nLo Spirito Lupo";
_local1.MapMes5 = "5\nIl Drago di fuoco";
_local1.MapMes6 = "6\nLe guardie del Castello Gigante";
_local1.MapMes7 = "7\nRe Malcontento";
_local1.MapMes8 = "8\nSir Bergamotto entra nel Castello di Cuorenero";
_local1.MapMes9 = "9\nLa sconfitta dell'ultima guardia";
_local1.MapMes10 = "10\nLa sconfitta del Re Malcontento";
_local1.BgMes1 = "Il tesoro più grande del regno, la Principessa Mahjong, è stata rapita dal diabolico Re Malcontento! Sir Bergamotto, un giovane ma valoroso cavaliere, è andato alla sua ricerca per salvarla. Mentre si incammina verso la Foresta di Cuorenero dove viene tenuta la principessa incontrerà molti degli scagnozzi di Malcontento... Ma non si fermerà di fronte a nulla pur di salvarla.";
_local1.BgMes2 = "La ricerca di Sir Bergamotto comincia";
_local1.BgMes3 = "Foresta di Cuorenero";
_local1.BgMes4 = "La fredda, fredda notte";
_local1.BgMes5 = "Lo Spirito Lupo";
_local1.BgMes6 = "Il Drago di fuoco";
_local1.BgMes7 = "Le guardie del Castello Gigante";
_local1.BgMes8 = "Re Malcontento";
_local1.BgMes9 = "Sir Bergamotto entra nel Castello di Cuorenero";
_local1.BgMes10 = "La sconfitta dell'ultima guardia";
_local1.BgMes11 = "La sconfitta del Re Malcontento";
_local1.BgMes12 = "La Principessa Mahjong è salva!";
break;
case 9:
_local1.Logo = 2;
_local1.Url = "http://www.games.com.cn";
_local1.Credits = "Credits";
_local1.GameAuthor = "Game produced by\nGamesonly.net";
_local1.Title = "Mahjong: \nRiddarens uppdrag";
_local1.Play = "Spela";
_local1.Help = "Spelregler";
_local1.MoreGames = "Fler spel";
_local1.Back = "Bakåt";
_local1.Skip = "Skippa";
_local1.HelpMes1 = "För att rotera din vy av blocken, klicka antingen på [rotate left image] eller [rotate right image] eller använd tangenterna [left arrow image] och [right arrow image]. Välj två [tile image] med samma mönster ([pattern image]) för att ta bort dem från spelet. Klara alla nivåer för att rädda prinsessan.";
_local1.HelpMes2 = "Dubbla poäng delas ut.";
_local1.HelpMes3 = "Ett extra par block tas bort.";
_local1.HelpMes4 = "Extra tid delas ut.";
_local1.MapMes1 = "1\nSir Matchares uppdrag börjar";
_local1.MapMes2 = "2\nSvarta skogen";
_local1.MapMes3 = "3\nDen kalla, kalla natten";
_local1.MapMes4 = "4\nAndevargen";
_local1.MapMes5 = "5\nElddraken";
_local1.MapMes6 = "6\nDe stora slottsvakterna";
_local1.MapMes7 = "7\nKung Missnöjd";
_local1.MapMes8 = "8\nSir Matchare går in i Svarta slottet";
_local1.MapMes9 = "9\nDen sista vaktens nederlag";
_local1.MapMes10 = "10\nKung Missnöjds nederlag";
_local1.BgMes1 = "Kungarikets största skatt, prinsessan Mahjong, har kidnappats av den elake kung Missnöjd! Sir Matchare, en ung och modig riddare, får i uppdrag att rädda henne. Han kommer att möta många av Missnöjds knektar på sin väg till Svarta skogen, där prinsessan hålls fången. Men han tänker göra allt för att rädda henne.";
_local1.BgMes2 = "Sir Matchares uppdrag börjar";
_local1.BgMes3 = "Svarta skogen";
_local1.BgMes4 = "Den kalla, kalla natten";
_local1.BgMes5 = "Andevargen";
_local1.BgMes6 = "Elddraken";
_local1.BgMes7 = "De stora slottsvakterna";
_local1.BgMes8 = "Kung Missnöjd";
_local1.BgMes9 = "Sir Matchare går in i Svarta slottet";
_local1.BgMes10 = "Den sista vaktens nederlag";
_local1.BgMes11 = "Kung Missnöjds nederlag";
_local1.BgMes12 = "Prinsessan Mahjong är räddad!";
_local1.QuestMap = "Nivåkarta";
_local1.Pause = "Pausa";
_local1.GamePaused = "Spel pausat";
_local1.Continue = "Fortsätt";
_local1.Score = "Poäng:";
_local1.Time = "Tid:";
_local1.Menu = "Meny";
_local1.Reshuffle = "Blanda";
_local1.Story = "Berättelse";
_local1.TimeBonus = "Tidsbonus";
_local1.LevelCompleted = "Nivå klarad";
_local1.PlayNextLevel = "Spela nästa nivå";
_local1.ReshuffleMes = "Blocken blandas.";
_local1.GameOver = "Game over";
_local1.GameScore = "Din poäng";
_local1.PlayAgain = "Spela om";
break;
case 10:
_local1.Logo = 2;
_local1.Url = "http://www.games.com.cn";
_local1.Credits = "Credits";
_local1.GameAuthor = "Game produced by\nGamesonly.net";
_local1.Title = "Mahjong: \nMisja Rycerza";
_local1.Play = "Graj";
_local1.Help = "Jak grać";
_local1.MoreGames = "Więcej gier";
_local1.Back = "Powrót";
_local1.Skip = "Pomiń";
_local1.HelpMes1 = "Aby obracać widok, kliknij na [rotate left image] lub [rotate right image] albo użyj klawiszy [left arrow image] i [right arrow image]. Wybierz dwie [tile image] z tym samym wzorem ([pattern image]), aby usunąć je z gry. Ukończ wszystkie poziomy, aby uratować księżniczkę Mahjong.";
_local1.HelpMes2 = "Przyznanie podwojenia wyniku.";
_local1.HelpMes3 = "Usunięcie dodatkowej pary płytek";
_local1.HelpMes4 = "Przyznanie dodatkowego czasu";
_local1.MapMes1 = "1\nPoczątek misji Sir Mahjonglota";
_local1.MapMes2 = "2\nLas Czarnego Serca";
_local1.MapMes3 = "3\nBardzo zimna noc";
_local1.MapMes4 = "4\nDuch wilka";
_local1.MapMes5 = "5\nOgnisty smok";
_local1.MapMes6 = "6\nStrażnicy zamczyska";
_local1.MapMes7 = "7\nKról Malkontent";
_local1.MapMes8 = "8\nSir Mahjonglot i Zamczysko Czarnego Serca";
_local1.MapMes9 = "9\nPokonanie ostatniego strażnika";
_local1.MapMes10 = "10\nPokonanie Króla Malkontenta";
_local1.BgMes1 = "Największy skarb królestwa, księżniczka Mahjong, została porwana przez demonicznego króla Malkontenta! Sir Mahjonglot, młody lecz waleczny rycerz, wyprawił się, by ją ocalić. Po drodze do Lasu Czarnego Serca, gdzie trzymana jest księżniczka, napotka wielu zauszników Malkontenta. Ale nic go nie powstrzyma przed uratowaniem księżniczki.";
_local1.BgMes2 = "Początek misji Sir Mahjonglota";
_local1.BgMes3 = "Las Czarnego Serca";
_local1.BgMes4 = "Bardzo zimna noc";
_local1.BgMes5 = "Duch wilka";
_local1.BgMes6 = "Ognisty smok";
_local1.BgMes7 = "Strażnicy zamczyska";
_local1.BgMes8 = "Król Malkontent";
_local1.BgMes9 = "Sir Mahjonglot i Zamczysko Czarnego Serca";
_local1.BgMes10 = "Pokonanie ostatniego strażnika";
_local1.BgMes11 = "Pokonanie Króla Malkontenta";
_local1.BgMes12 = "Księżniczka Mahjong ocalona!";
_local1.QuestMap = "Mapa misji";
_local1.Pause = "Pauza";
_local1.GamePaused = "Pauza";
_local1.Continue = "Kontynuuj";
_local1.Score = "Wynik:";
_local1.Time = "Czas:";
_local1.Menu = "Menu";
_local1.Reshuffle = "Przetasuj";
_local1.Story = "Historia";
_local1.TimeBonus = "Bonus za czas";
_local1.LevelCompleted = "Poziom ukończony";
_local1.PlayNextLevel = "Rozpocznij następny poziom";
_local1.ReshuffleMes = "Płytki są przetasowywane";
_local1.GameOver = "Koniec gry";
_local1.GameScore = "Twój wynik";
_local1.PlayAgain = "Zagraj ponownie";
break;
case 11:
_local1.Logo = 2;
_local1.Url = "http://www.games.com.cn";
_local1.Credits = "Credits";
_local1.GameAuthor = "Game produced by\nGamesonly.net";
_local1.Title = "Маджонг: \nприключения рыцаря";
_local1.Play = "Играть";
_local1.Help = "Как играть";
_local1.MoreGames = "Другие игры";
_local1.Back = "Обратно";
_local1.Skip = "Пропустить";
_local1.HelpMes1 = "Чтобы посмотреть на кубики с другой стороны, щелкай по [rotate left image] или [rotate right image] или нажимай клавиши [left arrow image] и [right arrow image]. Выбери два [tile image] с одинаковой картинкой ([pattern image]), чтобы удалить их с экрана. Пройди все уровни, чтобы спасти принцессу!";
_local1.HelpMes2 = "Удвоенное число очков";
_local1.HelpMes3 = "Удаление еще одной пары кубиков";
_local1.HelpMes4 = "Дополнительное время";
_local1.MapMes1 = "1\nРыцарь покидает свой замок";
_local1.MapMes2 = "2\nЧерный лес";
_local1.MapMes3 = "3\nХолодная ночь";
_local1.MapMes4 = "4\nВолк-призрак";
_local1.MapMes5 = "5\nОгнедышащий дракон";
_local1.MapMes6 = "6\nСтражи-великаны";
_local1.MapMes7 = "7\nЗлобный демон";
_local1.MapMes8 = "8\nРыцарь вступает в Замок Смерти";
_local1.MapMes9 = "9\nПоследний страж повержен!";
_local1.MapMes10 = "10\nПобеда над королем демонов";
_local1.BgMes1 = "Принцесса Маджонг, жемчужина королевства, похищена королем демонов! Юный доблестный рыцарь отправляется в путь, чтобы спасти девушку! На пути в Черный лес, где в темнице томится пленница, ему предстоит сразиться с приспешниками злого короля, но он ни перед чем не остановится, чтобы спасти принцессу!";
_local1.BgMes2 = "Рыцарь покидает свой замок";
_local1.BgMes3 = "Черный лес";
_local1.BgMes4 = "Холодная ночь";
_local1.BgMes5 = "Волк-призрак";
_local1.BgMes6 = "Огнедышащий дракон";
_local1.BgMes7 = "Стражи-великаны";
_local1.BgMes8 = "Злобный демон";
_local1.BgMes9 = "Рыцарь вступает в Замок Смерти";
_local1.BgMes10 = "Последний страж повержен!";
_local1.BgMes11 = "Победа над королем демонов";
_local1.BgMes12 = "Принцесса спасена!";
_local1.QuestMap = "Карта";
_local1.Pause = "Пауза";
_local1.GamePaused = "Пауза";
_local1.Continue = "Продолжать";
_local1.Score = "Счет:";
_local1.Time = "Время:";
_local1.Menu = "Меню";
_local1.Reshuffle = "Перестановка";
_local1.Story = "Сюжет";
_local1.TimeBonus = "Бонус за время";
_local1.LevelCompleted = "Уровень завершен";
_local1.PlayNextLevel = "Следующий уровень";
_local1.ReshuffleMes = "Перестановка кубиков завершена.";
_local1.GameOver = "Конец игры";
_local1.GameScore = "Ваш результат";
_local1.PlayAgain = "Сыграть еще раз";
break;
case 12:
_local1.Logo = 2;
_local1.Url = "http://www.games.com.cn";
_local1.Credits = "Credits";
_local1.GameAuthor = "Game produced by\nGamesonly.net";
_local1.Title = "Mahjong: \nPencarian Sang Pendekar.";
_local1.Play = "Main";
_local1.Help = "Cara bermain";
_local1.MoreGames = "Permainan lainnya";
_local1.Back = "Kembali";
_local1.Skip = "Lewati";
_local1.HelpMes1 = "Untuk memutar tampilan balok anda, anda bisa klik [rotate left image] atau [rotate right image] atau pergunakan [left arrow image] dan [right arrow image] .Pilih dua [tile image] dengan pola yang sama ([pattern image]) untuk menghapusnya dari permainan. Selesaikan semua level untuk menyelamatkan Putri Mahjong.";
_local1.HelpMes2 = "Bonus pelipatan nilai skor.";
_local1.HelpMes3 = "Pasangan balok tambahan terhapus.";
_local1.HelpMes4 = "Bonus waktu tambahan.";
_local1.MapMes1 = "1\nPencarian Pak Makaroni dimulai";
_local1.MapMes2 = "2\nHutan Hati Hitam";
_local1.MapMes3 = "3\nMalam yang Dingin";
_local1.MapMes4 = "4\nJiwa Serigala";
_local1.MapMes5 = "5\nNaga Api";
_local1.MapMes6 = "6\nPengawal Istana Raksasa";
_local1.MapMes7 = "7\nRaja Tak Kenal Puas";
_local1.MapMes8 = "8\nPak Makaroni Memasuki Istana Hati Hitam";
_local1.MapMes9 = "9\nPembunuhan Pengawal Terakhir";
_local1.MapMes10 = "10\nPembunuhan Raja Tak Kenal Puas";
_local1.BgMes1 = "Harta karun kerajaan yang terhebat. Putri Mahjong telah diculik oleh Raja Kejam yang Tak Kenal Puas! Pak Makaroni, seorang pendekar muda tapi gagah berani, sedang dalam pencarian untuk menyelamatkan dia. Dia akan mengalami banyak rintangan dalam jalannya menuju ke Hutan Hati Hitam, tempat dimana putri diculik. Tapi dia tidak akan pernah menyerah untuk menyelamatkan putri.";
_local1.BgMes2 = "Pencarian Pak Makaroni dimulai";
_local1.BgMes3 = "Hutan Hati Hitam";
_local1.BgMes4 = "Malam yang Dingin";
_local1.BgMes5 = "Jiwa Serigala";
_local1.BgMes6 = "Naga Api";
_local1.BgMes7 = "Pengawal Istana Raksasa";
_local1.BgMes8 = "Raja Tak Kenal Puas";
_local1.BgMes9 = "Pak Makaroni Memasuki Istana Hati Hitam";
_local1.BgMes10 = "Pembunuhan Pengawal Terakhir";
_local1.BgMes11 = "Pembunuhan Raja Tak Kenal Puas";
_local1.BgMes12 = "Putri Mahjong Diselamatkan!";
_local1.QuestMap = "Peta Pencarian";
_local1.Pause = "Berhenti sebentar";
_local1.GamePaused = "Permainan diberhentikan sebentar";
_local1.Continue = "Melanjutkan";
_local1.Score = "Skor:";
_local1.Time = "Waktu:";
_local1.Menu = "Menu";
_local1.Reshuffle = "Diacak";
_local1.Story = "Cerita";
_local1.TimeBonus = "Waktu bonus";
_local1.LevelCompleted = "Level selesai";
_local1.PlayNextLevel = "Memainkan Level Berikutnya";
_local1.ReshuffleMes = "Balok-balok sedang diacak";
_local1.GameOver = "Berakhir";
_local1.GameScore = "Skor anda";
_local1.PlayAgain = "Main lagi";
break;
};
return (_local1);
}
}
}//package game
Section 19
//Word (game.Word)
package game {
public class Word {
public var GameOver:String;// = "Game Over"
public var Back:String;// = "Back"
public var MapMes1:String;// = "1
Sir Matchalot's Quest Begins"
public var MapMes2:String;// = "2
Blackheart Forest"
public var MapMes3:String;// = "3
The Cold, Cold Night"
public var MapMes5:String;// = "5
The Fire Dragon"
public var MapMes6:String;// = "6
The Giant Castle Guards"
public var MapMes7:String;// = "7
King Malcontent"
public var MapMes8:String;// = "8
Sir Matchalot Enters Blackheart Castle"
public var MapMes9:String;// = "9
The Defeat of the Last Guard"
public var MapMes4:String;// = "4
The Spirit Wolf"
public var TimeBonus:String;// = "Time Bonus"
public var Title:String;// = "Mahjong:
A Knight's Quest"
public var QuestMap:String;// = "Quest Map"
public var GameAuthor:String;// = "Game produced by Gamesonly.net"
public var Reshuffle:String;// = "Shuffle"
public var LevelCompleted:String;// = "Level Completed"
public var MoreGames:String;// = "More Games"
public var Url:String;
public var Play:String;// = "Play"
public var PlayNextLevel:String;// = "Play Next Level"
public var MapMes10:String;// = "10
The Defeat of King Malcontent"
public var Help:String;// = "How To Play"
public var PlayAgain:String;// = "Play Again"
public var Score:String;// = "Score"
public var Menu:String;// = "Menu"
public var Credits:String;// = "Credits"
public var Skip:String;// = "Skip"
public var GameScore:String;// = "Your Score"
public var ReshuffleMes:String;// = "The blocks are
being shuffled."
public var HelpMes1:String;// = "To rotate your view of the blocks, either click the or
or use the and keys. Select two with the same
pattern ( ) to remove them from the game. Complete all
the levels to rescue Princess Mahjong."
public var HelpMes2:String;// = "Double score bonus"
public var HelpMes3:String;// = "Removes a random pair of blocks"
public var BgMes1:String;// = "The kingdom's greatest treasure, Princess Mahjong, has been kidnapped by the demonic King Malcontent! Sir Matchalot, a young but valiant knight, is on a quest to rescue her. He will encounter many of Malcontent's henchmen on his way to Blackheart Forest, where the princess is being kept. But he will stop at nothing to save her."
public var BgMes3:String;// = "Blackheart Forest"
public var BgMes4:String;// = "The Cold, Cold Night"
public var BgMes5:String;// = "The Spirit Wolf"
public var BgMes6:String;// = "The Fire Dragon"
public var HelpMes4:String;// = "Extra time bonus"
public var BgMes2:String;// = "Sir Matchalot's Quest Begins"
public var Continue:String;// = "Continue"
public var BgMes7:String;// = "The Giant Castle Guards"
public var BgMes8:String;// = "King Malcontent"
public var BgMes9:String;// = "Sir Matchalot Enters Blackheart Castle"
public var Logo:int;// = 17
public var Story:String;// = "Story"
public var Pause:String;// = "Pause"
public var BgMes12:String;// = "The Defeat of King Malcontent"
public var BgMes10:String;// = "Kill the last guard"
public var BgMes11:String;// = "The Defeat of the Last Guard"
public var GamePaused:String;// = "Game Paused"
public var Time:String;// = "Time"
public static var gamename = "mahjong_knights_quest_gamesgames_com.swf";
public function Word(){
Logo = 17;
Url = ("http://www.gamesgames.com/moregames/?utm_medium=brandedgames_as3&utm_campaign=" + gamename);
Title = "Mahjong:\n A Knight's Quest";
Play = "Play";
Help = "How To Play";
Credits = "Credits";
MoreGames = "More Games";
HelpMes1 = "To rotate your view of the blocks, either click the or \nor use the and keys. Select two with the same \npattern ( ) to remove them from the game. Complete all \nthe levels to rescue Princess Mahjong.";
HelpMes2 = "Double score bonus";
HelpMes3 = "Removes a random pair of blocks";
HelpMes4 = "Extra time bonus";
GameOver = "Game Over";
PlayAgain = "Play Again";
GameScore = "Your Score";
GameAuthor = "Game produced by Gamesonly.net";
Back = "Back";
Score = "Score";
Time = "Time";
Pause = "Pause";
Menu = "Menu";
Reshuffle = "Shuffle";
ReshuffleMes = "The blocks are \nbeing shuffled.";
Story = "Story";
PlayNextLevel = "Play Next Level";
QuestMap = "Quest Map";
Skip = "Skip";
LevelCompleted = "Level Completed";
TimeBonus = "Time Bonus";
GamePaused = "Game Paused";
Continue = "Continue";
MapMes1 = "1 \n Sir Matchalot's Quest Begins";
MapMes2 = "2 \n Blackheart Forest";
MapMes3 = "3 \n The Cold, Cold Night";
MapMes4 = "4 \n The Spirit Wolf";
MapMes5 = "5 \n The Fire Dragon";
MapMes6 = "6 \n The Giant Castle Guards";
MapMes7 = "7 \n King Malcontent";
MapMes8 = "8 \n Sir Matchalot Enters Blackheart Castle";
MapMes9 = "9 \n The Defeat of the Last Guard";
MapMes10 = "10 \n The Defeat of King Malcontent";
BgMes1 = "The kingdom's greatest treasure, Princess Mahjong, has been kidnapped by the demonic King Malcontent! Sir Matchalot, a young but valiant knight, is on a quest to rescue her. He will encounter many of Malcontent's henchmen on his way to Blackheart Forest, where the princess is being kept. But he will stop at nothing to save her.";
BgMes2 = "Sir Matchalot's Quest Begins";
BgMes3 = "Blackheart Forest";
BgMes4 = "The Cold, Cold Night";
BgMes5 = "The Spirit Wolf";
BgMes6 = "The Fire Dragon";
BgMes7 = "The Giant Castle Guards";
BgMes8 = "King Malcontent";
BgMes9 = "Sir Matchalot Enters Blackheart Castle";
BgMes10 = "Kill the last guard";
BgMes11 = "The Defeat of the Last Guard";
BgMes12 = "The Defeat of King Malcontent";
super();
}
}
}//package game
Section 20
//border_131 (mahjong_knights_quest_gamesgames_com_fla.border_131)
package mahjong_knights_quest_gamesgames_com_fla {
import flash.display.*;
public dynamic class border_131 extends MovieClip {
public var mcTime:MovieClip;
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 21
//CVXCV_177 (mahjong_knights_quest_gamesgames_com_fla.CVXCV_177)
package mahjong_knights_quest_gamesgames_com_fla {
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class CVXCV_177 extends MovieClip {
public function CVXCV_177(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 22
//Help_85 (mahjong_knights_quest_gamesgames_com_fla.Help_85)
package mahjong_knights_quest_gamesgames_com_fla {
import flash.display.*;
import flash.text.*;
public dynamic class Help_85 extends MovieClip {
public var HelpMes1:TextField;
public var HelpMes3:TextField;
public var HelpMes4:TextField;
public var HelpMes2:TextField;
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 23
//MainTimeline (mahjong_knights_quest_gamesgames_com_fla.MainTimeline)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import fangxu.manager.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import fangxu.util.*;
import flash.text.*;
import spill.localisation.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class MainTimeline extends MovieClip {
public var txtScore:TextField;
public var lbar:MovieClip;
public var mcMusic:MovieClip;
public var GameAuthor:TextField;
public var bg:MCBg;
public var btMoreGames:SimpleButton;
public var btPlay1:SimpleButton;
public var title:MovieClip;
public var btBack:SimpleButton;
public var ScoreTime:MovieClip;
public var btPlayAgain:SimpleButton;
public var mcLeftButton:MovieClip;
public var mcNextScore:MCNextScore;
public var btReshuff:SimpleButton;
public var score;
public var btPlay:SimpleButton;
public var btHelp:SimpleButton;
public var btPause:SimpleButton;
public var btMenu:SimpleButton;
public var mcRightButton:MovieClip;
public var hash;
public var mcSound:MovieClip;
public var btMoreMahjongGames:SimpleButton;
public var furl;
public var mc1:CTile;
public var txtTime:TextField;
public var lpc:TextField;
public var mcNextLevel:MovieClip;
public var mc2:CTile;
public var Help:TextField;
public var gamename;
public var GameAuthor2:TextField;
public var mcTimeBorder:MovieClip;
public var GameScore:TextField;
public var btSubmitScore:SimpleButton;
public var mcGameOver:MovieClip;
public var totalScore;
public var btStory:SimpleButton;
public var Logo:BrandingLogo;
public var mcParent:MovieClip;
public var btCredits:SimpleButton;
public var mcHelp:MovieClip;
public function MainTimeline(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6);
}
public function enterFrameHandler(_arg1:Event):void{
lpc.text = (Math.floor((lbar.currentFrame / 2)) + "%");
if (lbar.currentFrame == 200){
lbar.removeEventListener(Event.ENTER_FRAME, enterFrameHandler);
stage.removeEventListener(MouseEvent.CLICK, fnLogoUrl);
nextFrame();
};
}
function frame3(){
stop();
Help.text = LanguageConfig.WORD.Help;
mcHelp.HelpMes1.text = LanguageConfig.WORD.HelpMes1;
mcHelp.HelpMes2.text = LanguageConfig.WORD.HelpMes2;
mcHelp.HelpMes3.text = LanguageConfig.WORD.HelpMes3;
mcHelp.HelpMes4.text = LanguageConfig.WORD.HelpMes4;
btPlay.addEventListener(MouseEvent.CLICK, function (){
gotoAndPlay("Main");
});
}
function frame5(){
stop();
txtScore.text = root.totalScore;
mcGameOver.GameOver.text = LanguageConfig.WORD.GameOver;
GameScore.text = LanguageConfig.WORD.GameScore;
btSubmitScore.addEventListener(MouseEvent.CLICK, function ():void{
score = totalScore;
gamename = "mahjongdiscovery";
furl = "www.gamesonly.net";
hash = MD5.hash((((furl + gamename) + score) + "zygomaticgames"));
navigateToURL(new URLRequest((((((("http://www.gamesonly.net/highscore.php?game=" + gamename) + "&score=") + score) + "&otherparam=") + hash) + "")), "_blank");
trace((((((("http://www.gamesonly.net/highscore.php?game=" + gamename) + "&score=") + score) + "&otherparam=") + hash) + ""));
});
btPlayAgain.addEventListener(MouseEvent.CLICK, function (){
prevFrame();
});
SoundManager.getInstance().startSound(MainSound);
Logo.gotoAndStop(LanguageConfig.WORD.Logo);
Logo.buttonMode = true;
Logo.addEventListener(MouseEvent.CLICK, function (){
navigateToURL(new URLRequest((LanguageConfig.WORD.Url + "&utm_content=button_gameover_moregames")), "_blank");
});
btMoreGames.addEventListener(MouseEvent.CLICK, function ():void{
navigateToURL(new URLRequest((LanguageConfig.WORD.Url + "&utm_content=button_gameover_moregames")), "_blank");
});
}
function frame1(){
trace(LanguageConfig.WORD.Logo);
Logo.gotoAndStop(LanguageConfig.WORD.Logo);
stop();
Logo.addEventListener(MouseEvent.CLICK, function (){
navigateToURL(new URLRequest((("http://www.gamesgames.com/moregames/?utm_medium=brandedgames_as3" + "&utm_campaign=mahjong_knights_quest_gamesgames_com.swf") + "&utm_content=logo_intro")), "_blank");
});
stage.addEventListener(MouseEvent.CLICK, fnLogoUrl);
lbar.addEventListener(Event.ENTER_FRAME, enterFrameHandler);
}
function frame4(){
stop();
totalScore = 0;
btMenu.addEventListener(MouseEvent.CLICK, function (){
Main.getInstance(stage, root).destroy();
prevFrame();
prevFrame();
});
Main.getInstance(stage, root).init();
}
function frame6(){
stop();
GameAuthor.text = LanguageConfig.WORD.GameAuthor;
GameAuthor2.text = LanguageConfig.WORD.GameAuthor;
btBack.addEventListener(MouseEvent.CLICK, function (){
prevFrame();
prevFrame();
prevFrame();
prevFrame();
});
}
function frame2(){
stop();
title.txtTitle.text = LanguageConfig.WORD.Title;
Logo.gotoAndStop(LanguageConfig.WORD.Logo);
Logo.buttonMode = true;
SoundMixer.stopAll();
totalScore = 0;
btHelp.addEventListener(MouseEvent.CLICK, function (){
nextFrame();
});
btPlay1.addEventListener(MouseEvent.CLICK, function (){
nextFrame();
nextFrame();
});
btCredits.addEventListener(MouseEvent.CLICK, function (){
nextFrame();
nextFrame();
nextFrame();
nextFrame();
});
Logo.addEventListener(MouseEvent.CLICK, function (){
navigateToURL(new URLRequest((LanguageConfig.WORD.Url + "&utm_content=button_mainscreen_moregames")), "_blank");
});
btMoreGames.addEventListener(MouseEvent.CLICK, function ():void{
navigateToURL(new URLRequest((LanguageConfig.WORD.Url + "&utm_content=button_mainscreen_moregames")), "_blank");
});
SoundManager.getInstance().startSound(MainSound);
}
public function fnLogoUrl(_arg1:MouseEvent){
trace(LanguageConfig.WORD.Url);
navigateToURL(new URLRequest((("http://www.gamesgames.com/moregames/?utm_medium=brandedgames_as3" + "&utm_campaign=mahjong_knights_quest_gamesgames_com.swf") + "&utm_content=logo_intro")), "_blank");
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 24
//mcMusic_167 (mahjong_knights_quest_gamesgames_com_fla.mcMusic_167)
package mahjong_knights_quest_gamesgames_com_fla {
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class mcMusic_167 extends MovieClip {
public function mcMusic_167(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 25
//mcNextLevel_170 (mahjong_knights_quest_gamesgames_com_fla.mcNextLevel_170)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class mcNextLevel_170 extends MovieClip {
public var mcPeter:MovieClip;
public var mcLevel10:MovieClip;
public var btNextLevel:SimpleButton;
public var mcLevel1:MovieClip;
public var mcLevel4:MovieClip;
public var mcLevel8:MovieClip;
public var mcLevel9:MovieClip;
public var mcLevel3:MovieClip;
public var mcLevel2:MovieClip;
public var mcLevel6:MovieClip;
public var mcLevelText10:MovieClip;
public var mcLevels:MovieClip;
public var QuestMap:TextField;
public var mcLevel7:MovieClip;
public var mcLevelText2:MovieClip;
public var mcLevelText4:MovieClip;
public var mcLevelText5:MovieClip;
public var mcLevelText6:MovieClip;
public var mcLevelText8:MovieClip;
public var mcLevelText9:MovieClip;
public var mcLevelText7:MovieClip;
public var mcLevelText1:MovieClip;
public var mcLevel5:MovieClip;
public var btMenu:SimpleButton;
public var mcLevelText3:MovieClip;
public function mcNextLevel_170(){
addFrameScript(0, frame1);
}
function frame1(){
QuestMap.text = LanguageConfig.WORD.QuestMap;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 26
//mcSound_158 (mahjong_knights_quest_gamesgames_com_fla.mcSound_158)
package mahjong_knights_quest_gamesgames_com_fla {
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class mcSound_158 extends MovieClip {
public function mcSound_158(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 27
//MenuTitle_78 (mahjong_knights_quest_gamesgames_com_fla.MenuTitle_78)
package mahjong_knights_quest_gamesgames_com_fla {
import flash.display.*;
import flash.text.*;
public dynamic class MenuTitle_78 extends MovieClip {
public var txtTitle:TextField;
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 28
//n_157 (mahjong_knights_quest_gamesgames_com_fla.n_157)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class n_157 extends MovieClip {
public var Menu:TextField;
public function n_157(){
addFrameScript(0, frame1);
}
function frame1(){
Menu.text = LanguageConfig.WORD.Menu;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 29
//Step1_178 (mahjong_knights_quest_gamesgames_com_fla.Step1_178)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class Step1_178 extends MovieClip {
public var MapMes1:TextField;
public function Step1_178(){
addFrameScript(1, frame2);
}
function frame2(){
MapMes1.text = LanguageConfig.WORD.MapMes1;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 30
//step10_186 (mahjong_knights_quest_gamesgames_com_fla.step10_186)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class step10_186 extends MovieClip {
public var MapMes10:TextField;
public function step10_186(){
addFrameScript(1, frame2);
}
function frame2(){
MapMes10.text = LanguageConfig.WORD.MapMes10;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 31
//step2_179 (mahjong_knights_quest_gamesgames_com_fla.step2_179)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class step2_179 extends MovieClip {
public var MapMes2:TextField;
public function step2_179(){
addFrameScript(1, frame2);
}
function frame2(){
MapMes2.text = LanguageConfig.WORD.MapMes2;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 32
//step3_180 (mahjong_knights_quest_gamesgames_com_fla.step3_180)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class step3_180 extends MovieClip {
public var MapMes3:TextField;
public function step3_180(){
addFrameScript(1, frame2);
}
function frame2(){
MapMes3.text = LanguageConfig.WORD.MapMes3;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 33
//step4_181 (mahjong_knights_quest_gamesgames_com_fla.step4_181)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class step4_181 extends MovieClip {
public var MapMes4:TextField;
public function step4_181(){
addFrameScript(1, frame2);
}
function frame2(){
MapMes4.text = LanguageConfig.WORD.MapMes4;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 34
//step5_182 (mahjong_knights_quest_gamesgames_com_fla.step5_182)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class step5_182 extends MovieClip {
public var MapMes5:TextField;
public function step5_182(){
addFrameScript(1, frame2);
}
function frame2(){
MapMes5.text = LanguageConfig.WORD.MapMes5;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 35
//step6_183 (mahjong_knights_quest_gamesgames_com_fla.step6_183)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class step6_183 extends MovieClip {
public var MapMes6:TextField;
public function step6_183(){
addFrameScript(1, frame2);
}
function frame2(){
MapMes6.text = LanguageConfig.WORD.MapMes6;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 36
//step7_184 (mahjong_knights_quest_gamesgames_com_fla.step7_184)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class step7_184 extends MovieClip {
public var MapMes7:TextField;
public function step7_184(){
addFrameScript(1, frame2);
}
function frame2(){
MapMes7.text = LanguageConfig.WORD.MapMes7;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 37
//step8_185 (mahjong_knights_quest_gamesgames_com_fla.step8_185)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class step8_185 extends MovieClip {
public var MapMes7:TextField;
public function step8_185(){
addFrameScript(1, frame2);
}
function frame2(){
MapMes8.text = LanguageConfig.WORD.MapMes8;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 38
//step9_188 (mahjong_knights_quest_gamesgames_com_fla.step9_188)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class step9_188 extends MovieClip {
public var MapMes9:TextField;
public function step9_188(){
addFrameScript(1, frame2);
}
function frame2(){
MapMes9.text = LanguageConfig.WORD.MapMes9;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 39
//Timeline_102 (mahjong_knights_quest_gamesgames_com_fla.Timeline_102)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class Timeline_102 extends MovieClip {
public var Back:TextField;
public function Timeline_102(){
addFrameScript(0, frame1);
}
function frame1(){
Back.text = LanguageConfig.WORD.Back;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 40
//Timeline_104 (mahjong_knights_quest_gamesgames_com_fla.Timeline_104)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class Timeline_104 extends MovieClip {
public var Skip:TextField;
public function Timeline_104(){
addFrameScript(0, frame1);
}
function frame1(){
Skip.text = LanguageConfig.WORD.Skip;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 41
//Timeline_130 (mahjong_knights_quest_gamesgames_com_fla.Timeline_130)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class Timeline_130 extends MovieClip {
public var Score:TextField;
public var Time:TextField;
public function Timeline_130(){
addFrameScript(0, frame1);
}
function frame1(){
Time.text = LanguageConfig.WORD.Time;
Score.text = LanguageConfig.WORD.Score;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 42
//Timeline_162 (mahjong_knights_quest_gamesgames_com_fla.Timeline_162)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class Timeline_162 extends MovieClip {
public var Pause:TextField;
public function Timeline_162(){
addFrameScript(0, frame1);
}
function frame1(){
Pause.text = LanguageConfig.WORD.Pause;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 43
//Timeline_164 (mahjong_knights_quest_gamesgames_com_fla.Timeline_164)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class Timeline_164 extends MovieClip {
public var Reshuffle:TextField;
public function Timeline_164(){
addFrameScript(0, frame1);
}
function frame1(){
Reshuffle.text = LanguageConfig.WORD.Reshuffle;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 44
//Timeline_166 (mahjong_knights_quest_gamesgames_com_fla.Timeline_166)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class Timeline_166 extends MovieClip {
public var Story:TextField;
public function Timeline_166(){
addFrameScript(0, frame1);
}
function frame1(){
Story.text = LanguageConfig.WORD.Story;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 45
//Timeline_173 (mahjong_knights_quest_gamesgames_com_fla.Timeline_173)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class Timeline_173 extends MovieClip {
public var Menu:TextField;
public function Timeline_173(){
addFrameScript(0, frame1);
}
function frame1(){
Menu.text = LanguageConfig.WORD.Menu;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 46
//Timeline_176 (mahjong_knights_quest_gamesgames_com_fla.Timeline_176)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class Timeline_176 extends MovieClip {
public var PlayNextLevel:TextField;
public function Timeline_176(){
addFrameScript(0, frame1);
}
function frame1(){
PlayNextLevel.text = LanguageConfig.WORD.PlayNextLevel;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 47
//Timeline_192 (mahjong_knights_quest_gamesgames_com_fla.Timeline_192)
package mahjong_knights_quest_gamesgames_com_fla {
import flash.display.*;
import flash.text.*;
public dynamic class Timeline_192 extends MovieClip {
public var GameOver:TextField;
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 48
//Timeline_194 (mahjong_knights_quest_gamesgames_com_fla.Timeline_194)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class Timeline_194 extends MovieClip {
public var PlayAgain:TextField;
public function Timeline_194(){
addFrameScript(0, frame1);
}
function frame1(){
PlayAgain.text = LanguageConfig.WORD.PlayAgain;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 49
//Timeline_199 (mahjong_knights_quest_gamesgames_com_fla.Timeline_199)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class Timeline_199 extends MovieClip {
public var GamePaused:TextField;
public function Timeline_199(){
addFrameScript(0, frame1);
}
function frame1(){
GamePaused.text = LanguageConfig.WORD.GamePaused;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 50
//Timeline_201 (mahjong_knights_quest_gamesgames_com_fla.Timeline_201)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class Timeline_201 extends MovieClip {
public var Continue:TextField;
public function Timeline_201(){
addFrameScript(0, frame1);
}
function frame1(){
Continue.text = LanguageConfig.WORD.Continue;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 51
//Timeline_62 (mahjong_knights_quest_gamesgames_com_fla.Timeline_62)
package mahjong_knights_quest_gamesgames_com_fla {
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class Timeline_62 extends MovieClip {
public function Timeline_62(){
addFrameScript(199, frame200);
}
function frame200(){
stop();
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 52
//Timeline_70 (mahjong_knights_quest_gamesgames_com_fla.Timeline_70)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class Timeline_70 extends MovieClip {
public var HowToPlay:TextField;
public function Timeline_70(){
addFrameScript(0, frame1);
}
function frame1(){
HowToPlay.text = LanguageConfig.WORD.Help;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 53
//Timeline_72 (mahjong_knights_quest_gamesgames_com_fla.Timeline_72)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class Timeline_72 extends MovieClip {
public var Credits:TextField;
public function Timeline_72(){
addFrameScript(0, frame1);
}
function frame1(){
Credits.text = LanguageConfig.WORD.Credits;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 54
//Timeline_74 (mahjong_knights_quest_gamesgames_com_fla.Timeline_74)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class Timeline_74 extends MovieClip {
public var MoreGames:TextField;
public function Timeline_74(){
addFrameScript(0, frame1);
}
function frame1(){
MoreGames.text = LanguageConfig.WORD.MoreGames;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 55
//Timeline_81 (mahjong_knights_quest_gamesgames_com_fla.Timeline_81)
package mahjong_knights_quest_gamesgames_com_fla {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class Timeline_81 extends MovieClip {
public var txtPlay:TextField;
public function Timeline_81(){
addFrameScript(0, frame1);
}
function frame1(){
txtPlay.text = LanguageConfig.WORD.Play;
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 56
//Timeline_91 (mahjong_knights_quest_gamesgames_com_fla.Timeline_91)
package mahjong_knights_quest_gamesgames_com_fla {
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class Timeline_91 extends MovieClip {
public function Timeline_91(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package mahjong_knights_quest_gamesgames_com_fla
Section 57
//BrandingLogo (spill.localisation.BrandingLogo)
package spill.localisation {
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class BrandingLogo extends MovieClip {
public function BrandingLogo(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package spill.localisation
Section 58
//Award1Sound (Award1Sound)
package {
import flash.media.*;
public dynamic class Award1Sound extends Sound {
}
}//package
Section 59
//Award2Sound (Award2Sound)
package {
import flash.media.*;
public dynamic class Award2Sound extends Sound {
}
}//package
Section 60
//Award3Sound (Award3Sound)
package {
import flash.media.*;
public dynamic class Award3Sound extends Sound {
}
}//package
Section 61
//BG10Sound (BG10Sound)
package {
import flash.media.*;
public dynamic class BG10Sound extends Sound {
}
}//package
Section 62
//BG1Sound (BG1Sound)
package {
import flash.media.*;
public dynamic class BG1Sound extends Sound {
}
}//package
Section 63
//BG2Sound (BG2Sound)
package {
import flash.media.*;
public dynamic class BG2Sound extends Sound {
}
}//package
Section 64
//BG3Sound (BG3Sound)
package {
import flash.media.*;
public dynamic class BG3Sound extends Sound {
}
}//package
Section 65
//BG4Sound (BG4Sound)
package {
import flash.media.*;
public dynamic class BG4Sound extends Sound {
}
}//package
Section 66
//BG5Sound (BG5Sound)
package {
import flash.media.*;
public dynamic class BG5Sound extends Sound {
}
}//package
Section 67
//BG6Sound (BG6Sound)
package {
import flash.media.*;
public dynamic class BG6Sound extends Sound {
}
}//package
Section 68
//BG7Sound (BG7Sound)
package {
import flash.media.*;
public dynamic class BG7Sound extends Sound {
}
}//package
Section 69
//BG8Sound (BG8Sound)
package {
import flash.media.*;
public dynamic class BG8Sound extends Sound {
}
}//package
Section 70
//BG9Sound (BG9Sound)
package {
import flash.media.*;
public dynamic class BG9Sound extends Sound {
}
}//package
Section 71
//ClickSound (ClickSound)
package {
import flash.media.*;
public dynamic class ClickSound extends Sound {
}
}//package
Section 72
//ClockSound (ClockSound)
package {
import flash.media.*;
public dynamic class ClockSound extends Sound {
}
}//package
Section 73
//GameOverSound (GameOverSound)
package {
import flash.media.*;
public dynamic class GameOverSound extends Sound {
}
}//package
Section 74
//GameSound (GameSound)
package {
import flash.media.*;
public dynamic class GameSound extends Sound {
}
}//package
Section 75
//LevelsSound (LevelsSound)
package {
import flash.media.*;
public dynamic class LevelsSound extends Sound {
}
}//package
Section 76
//LevelUpSound (LevelUpSound)
package {
import flash.media.*;
public dynamic class LevelUpSound extends Sound {
}
}//package
Section 77
//Main (Main)
package {
import game.*;
import fangxu.manager.*;
import flash.events.*;
import flash.utils.*;
import caurina.transitions.*;
import flash.display.*;
import fangxu.util.*;
import fangxu.*;
import flash.geom.*;
public class Main extends MainBase {
var mcPause:MCPause;
var nMaxStep:uint;
var isSound:Boolean;
var arrMCLevels:Array;
var isClickMC2:Boolean;
var _bIsRotate:Boolean;
var timeOutId:int;
var nStartX:Number;
var nStartY:Number;
var sDirection:String;
var mcClear:MCClear;
var nTileSize:Number;
private var isNextLevel;
var nStep:uint;
var mcReshuffle:MCReshuffle;
var mcColumn:MovieClip;
var nTileHalf:Number;
var _nScale:Number;
var arrMCLevelTexts:Array;
private var isPause;
var pLevel:uint;
var aColumn:Array;
var isMusic:Boolean;// = true
private var moreClick:int;// = 0
var isBtStory:Boolean;// = false
var _mcParent:Stage;
private var isEnd;
var nColumnX;
var nColumnY;
var nColumnZ;
var level:uint;
var aTiles:Array;
var nColumnAngle:Number;
private var scoreTimer:Timer;
var currentTime:int;
var preTile:CTile;
private static var instance:Main;
public function Main(){
aColumn = [];
moreClick = 0;
isMusic = true;
arrMCLevelTexts = [];
isBtStory = false;
super();
}
private function fnPause(_arg1:Boolean=true):void{
var bPause = _arg1;
isPause = bPause;
if (bPause){
if (mcPause == null){
mcPause = new MCPause();
mcPause.x = ((mStage.stageWidth / 2) - (mcPause.width / 2));
mcPause.y = ((mStage.stageHeight / 2) - (mcPause.height / 2));
mStage.addChild(mcPause);
mcPause.btContinue.addEventListener(MouseEvent.CLICK, function (){
fnPause(false);
});
};
mcPause.visible = true;
TimeManager.getInstance().stop();
if (isMusic){
SoundManager.getInstance().stop();
};
adMouseSprite(mStage);
mStage.swapChildren(mcPause, mouseSprite);
} else {
TimeManager.getInstance().start();
if (isMusic){
SoundManager.getInstance().start();
};
rmMouseSprite();
mcPause.visible = false;
};
}
function shuffleTiles(_arg1:Boolean=false){
var _local2:CTile;
var _local3:CTile;
var _local4:Array;
var _local5:*;
var _local6:uint;
var _local7:*;
fnReshuffle(true, _arg1);
_local4 = [];
for (_local5 in aColumn) {
if (aColumn[_local5] != null){
_local4.push(aColumn[_local5]);
};
};
_local6 = 0;
while (_local6 < (_local4.length - 1)) {
_local7 = NumberUtil.ranFloor((_local6 + 1), (_local4.length - 1));
_local2 = _local4[_local6];
_local3 = _local4[_local7];
changeTiles(_local2, _local3);
_local6++;
};
}
private function fnClearTiles(_arg1:CTile, _arg2:Boolean=false):void{
var _local3:*;
if (!_arg2){
mcClear = new MCClear();
mcClear.x = (((_arg1.x + (_arg1.width / 2)) - (mcClear.width / 2)) + 25);
mcClear.y = (((_arg1.y + (_arg1.height / 2)) - (mcClear.height / 2)) + 25);
mcClear.addEventListener(Event.ENTER_FRAME, fnMCClear);
mStage.addChild(mcClear);
mcClear = new MCClear();
mcClear.x = (((preTile.x + (preTile.width / 2)) - (mcClear.width / 2)) + 25);
mcClear.y = (((preTile.y + (preTile.height / 2)) - (mcClear.height / 2)) + 25);
mcClear.addEventListener(Event.ENTER_FRAME, fnMCClear);
mStage.addChild(mcClear);
};
_local3 = 0;
while (_local3 < aTiles.length) {
if ((((aTiles[_local3] == _arg1)) || ((aTiles[_local3] == preTile)))){
aTiles.splice(_local3, 1);
};
_local3++;
};
aColumn[((((preTile.oColumn.x + ":") + preTile.oColumn.y) + ":") + preTile.oColumn.z)] = null;
aColumn[((((_arg1.oColumn.x + ":") + _arg1.oColumn.y) + ":") + _arg1.oColumn.z)] = null;
_mcParent.removeChild(preTile);
_mcParent.removeChild(_arg1);
_arg1 = null;
preTile = null;
mRoot.mc1.visible = false;
mRoot.mc2.visible = false;
isClickMC2 = false;
if (scoreTimer == null){
scoreTimer = new Timer(2000);
scoreTimer.addEventListener(TimerEvent.TIMER, updateScore);
scoreTimer.start();
fnScore(100);
moreClick++;
} else {
if (moreClick > 0){
scoreTimer.removeEventListener(TimerEvent.TIMER, updateScore);
fnScore((100 + (25 * moreClick)));
} else {
fnScore(100);
};
scoreTimer.addEventListener(TimerEvent.TIMER, updateScore);
scoreTimer.start();
moreClick++;
};
if (isSuccess()){
if (level == Config.MAX_LEVEL){
} else {
isNextLevel = true;
TimeManager.getInstance().stop();
fnNextLevel(level, true);
};
} else {
autoReshuffle();
};
}
public function start():void{
var _local1:Array;
var _local2:uint;
var _local3:int;
var _local4:uint;
var _local5:uint;
var _local6:Array;
var _local7:uint;
var _local8:CTile;
var _local9:uint;
var _local10:uint;
var _local11:uint;
if (level == 1){
SoundManager.getInstance().startSound(Config.getBGSound(level));
};
_local1 = Config.getStructure(level);
currentTime = Config.getTime(level);
_local2 = 1;
_local3 = 0;
_local4 = (Config.getTotalNum(level) / 2);
_local5 = 1;
_local6 = [];
_local7 = 0;
while (_local7 < _local4) {
if (_local3 < Config.getSpeTileNum(level)){
_local2 = NumberUtil.ranFloor(1, 18);
if (_local2 > 15){
_local3++;
};
} else {
_local2 = NumberUtil.ranFloor(1, 15);
};
_local6.push(_local2);
++_local5;
if (_local5 > Config.getTileNumber(level)){
_local5 = 1;
};
_local7++;
};
aTiles = new Array();
aColumn = new Array();
nColumnX = _local1[0][0].length;
nColumnY = _local1[0].length;
nColumnZ = _local1.length;
initColumn();
_local5 = 0;
_local9 = 0;
while (_local9 < _local1.length) {
_local10 = 0;
while (_local10 < _local1[_local9].length) {
_local11 = 0;
while (_local11 < _local1[_local9][_local10].length) {
if (_local1[_local9][_local10][_local11] != "0"){
_local8 = new CTile();
_local8.gotoAndStop(_local6[_local5]);
++_local5;
if (_local5 >= _local6.length){
_local5 = 0;
};
_local8.oColumn = {x:_local11, y:_local10, z:_local9};
_mcParent.addChild(_local8);
aColumn[((((_local11 + ":") + _local10) + ":") + _local9)] = _local8;
aTiles.push(_local8);
_local8.addEventListener(MouseEvent.ROLL_OVER, tileOver);
_local8.addEventListener(MouseEvent.ROLL_OUT, tileOut);
_local8.addEventListener(MouseEvent.CLICK, tileClick);
};
_local11++;
};
_local10++;
};
_local9++;
};
shuffleTiles();
showAllTiles();
autoReshuffle();
mRoot.bg.mcSBG.visible = false;
TimeManager.getInstance().adStart(currentTime, updateTimer, end);
mRoot.mcTimeBorder.mcTime.gotoAndStop(1);
}
private function fnSkip():void{
fnClearTimeout();
mRoot.bg.txtStory2.text = "";
mRoot.bg.txtStory.text = "";
mRoot.bg.btSkip.visible = false;
mRoot.bg.btBack.visible = false;
mRoot.swapChildren(mRoot.bg, mouseSprite);
rmMouseSprite();
if (isBtStory){
TimeManager.getInstance().start();
fnVisibleTiles(true);
} else {
start();
};
}
private function fnNextLevel(_arg1:uint, _arg2:Boolean=false):void{
var i:uint;
var pLevel = _arg1;
var isNextScore = _arg2;
if (isNextScore){
this.pLevel = pLevel;
if (mRoot.mcNextScore.y == 502){
adMouseSprite(mRoot);
mRoot.swapChildren(mRoot.mcNextScore, mouseSprite);
mRoot.mcNextScore.txtScore.text = (currentTime * 80);
Tweener.addTween(mRoot.mcNextScore, {y:108, time:0.5, transition:"linear", onComplete:function (){
setTimeout(function (){
fnNextLevel(pLevel, isNextScore);
fnScore((currentTime * 80));
}, 3000);
}});
return;
};
mRoot.swapChildren(mRoot.mcNextScore, mouseSprite);
rmMouseSprite();
mRoot.mcNextScore.y = 502;
};
if (level == (Config.MAX_LEVEL - 1)){
level++;
fnShowBG();
return;
};
i = 0;
while (i < pLevel) {
arrMCLevels[i].gotoAndStop(3);
arrMCLevelTexts[i].gotoAndStop(2);
i = (i + 1);
};
if (pLevel != 0){
arrMCLevels[(pLevel - 1)].gotoAndStop(2);
arrMCLevelTexts[(pLevel - 1)].gotoAndStop(1);
Tweener.addTween(mRoot.mcNextLevel, {y:-20, time:0.5, transition:"linear", onComplete:function (){
if ((((pLevel == 1)) || ((pLevel > 6)))){
mRoot.mcNextLevel.mcPeter.gotoAndStop(1);
} else {
mRoot.mcNextLevel.mcPeter.gotoAndStop(2);
};
Tweener.addTween(mRoot.mcNextLevel.mcPeter, {x:arrMCLevels[(pLevel - 1)].x, y:arrMCLevels[(pLevel - 1)].y, time:0.8, transition:"linear"});
}});
};
if (isSound){
new LevelUpSound().play();
};
if (isSound){
SoundManager.getInstance().clear();
};
if (level == 0){
trace("level");
isNextLevel = false;
level++;
fnShowBG();
} else {
trace("level2");
setTimeout(function (){
arrMCLevels[(level - 1)].buttonMode = true;
arrMCLevels[(level - 1)].addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){
var e = _arg1;
Tweener.addTween(mRoot.mcNextLevel, {y:-570, time:0.5, transition:"linear", onComplete:function (){
destroy();
isNextLevel = false;
level++;
fnShowBG();
}});
});
}, 1000);
};
}
private function autoReshuffle():void{
if (isReffle()){
shuffleTiles();
};
}
function initColumn(){
var _local1:*;
var _local2:*;
if (mcColumn != null){
mcColumn.parent.removeChild(mcColumn);
};
mcColumn = new MovieClip();
_mcParent.addChild(mcColumn);
mcColumn.visible = false;
_local1 = ((nColumnX * nTileSize) * _nScale);
_local2 = ((nColumnY * nTileSize) * _nScale);
mcColumn.graphics.beginFill(0);
mcColumn.graphics.moveTo((-(_local1) * 0.5), (-(_local2) * 0.5));
mcColumn.graphics.lineTo((_local1 * 0.5), (-(_local2) * 0.5));
mcColumn.graphics.lineTo((_local1 * 0.5), (_local2 * 0.5));
mcColumn.graphics.lineTo((-(_local1) * 0.5), (_local2 * 0.5));
mcColumn.graphics.lineTo((-(_local1) * 0.5), (-(_local2) * 0.5));
mcColumn.graphics.endFill();
transformColumn(nColumnAngle);
nStartX = (((-(nColumnX) * nTileSize) * _nScale) * 0.5);
nStartY = (((-(nColumnY) * nTileSize) * _nScale) * 0.5);
nTileHalf = ((nTileSize * 0.5) * _nScale);
}
function showAllTiles(){
var _local1:*;
for (_local1 in aColumn) {
if (aColumn[_local1] != null){
showTile(aColumn[_local1]);
};
};
}
function sorts(_arg1:Array):Array{
var temp:CTile;
var kZ:Number;
var tZ:Number;
var n:*;
var k:*;
var arr = _arg1;
if ((((arr == null)) || ((arr.length == 0)))){
return ([]);
};
n = 0;
while (n < arr.length) {
k = 0;
while (k < ((arr.length - n) - 1)) {
if (((!((arr[k] is CTile))) || (!((arr[(k + 1)] is CTile))))){
} else {
try {
kZ = ((arr[k].oColumn.z * 1000) + (Math.floor(arr[k].y) * 10));
tZ = ((arr[(k + 1)].oColumn.z * 1000) + (Math.floor(arr[(k + 1)].y) * 10));
if (kZ > tZ){
_mcParent.swapChildren(arr[k], arr[(k + 1)]);
temp = arr[k];
arr[k] = arr[(k + 1)];
arr[(k + 1)] = temp;
};
} catch(e) {
trace(e);
trace(("arr[k+1] = " + arr[(k + 1)]), arr[k].name, arr[(k + 1)].parent);
trace("arr[k] = ", arr[k], arr[k].name, arr[k].parent);
trace(((("arr.length = " + arr.length) + ", k = ") + k));
};
};
k = (k + 1);
};
n = (n + 1);
};
return (arr);
}
public function initMC():void{
var i:uint;
mRoot.mcLeftButton.useHandCursor = true;
mRoot.mcLeftButton.buttonMode = true;
mRoot.mcLeftButton.addEventListener(MouseEvent.CLICK, function (){
sDirection = "right";
if (isSound){
new RotateSound().play();
};
mcColumn.addEventListener(Event.ENTER_FRAME, rotateColumn);
});
mRoot.mcRightButton.useHandCursor = true;
mRoot.mcRightButton.buttonMode = true;
mRoot.mcRightButton.addEventListener(MouseEvent.CLICK, function (){
sDirection = "left";
if (isSound){
new RotateSound().play();
};
mcColumn.addEventListener(Event.ENTER_FRAME, rotateColumn);
});
mRoot.mcSound.buttonMode = true;
mRoot.mcSound.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){
if (mRoot.mcSound.currentFrame == 1){
isSound = false;
mRoot.mcSound.nextFrame();
} else {
isSound = true;
mRoot.mcSound.prevFrame();
};
});
mRoot.mcMusic.buttonMode = true;
mRoot.mcMusic.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){
if (mRoot.mcMusic.currentFrame == 1){
isMusic = false;
mRoot.mcMusic.nextFrame();
SoundManager.getInstance().clear();
} else {
isMusic = true;
mRoot.mcMusic.prevFrame();
SoundManager.getInstance().startSound(Config.getBGSound(level));
};
});
mRoot.mcNextLevel.btMenu.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){
Main.getInstance(stage, root).destroy();
mRoot.prevFrame();
mRoot.prevFrame();
});
mRoot.mcNextLevel.btNextLevel.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){
var e = _arg1;
Tweener.addTween(mRoot.mcNextLevel, {y:-570, time:0.5, transition:"linear", onComplete:function (){
destroy();
isNextLevel = false;
level++;
fnShowBG();
}});
});
mRoot.btReshuff.addEventListener(MouseEvent.CLICK, function (){
shuffleTiles(true);
});
mRoot.btPause.addEventListener(MouseEvent.CLICK, function (){
fnPause(true);
});
mRoot.btStory.addEventListener(MouseEvent.CLICK, function (){
fnShowBG(true);
});
mRoot.bg.btBack.visible = false;
mRoot.bg.btSkip.visible = false;
mRoot.bg.btSkip.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){
if (!_arg1.currentTarget.visible){
return;
};
fnClearTimeout();
if (level != Config.MAX_LEVEL){
fnSkip();
} else {
end();
};
});
mRoot.bg.btBack.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){
var e = _arg1;
if (!e.currentTarget.visible){
return;
};
fnClearTimeout();
try {
mRoot.bg.mcSBG.visible = false;
} catch(e) {
trace(e, mRoot.bg.mcSBG);
};
fnSkip();
});
mRoot.mcNextLevel.mcPeter.gotoAndStop(1);
arrMCLevels.push(mRoot.mcNextLevel.mcLevel1);
arrMCLevels.push(mRoot.mcNextLevel.mcLevel2);
arrMCLevels.push(mRoot.mcNextLevel.mcLevel3);
arrMCLevels.push(mRoot.mcNextLevel.mcLevel4);
arrMCLevels.push(mRoot.mcNextLevel.mcLevel5);
arrMCLevels.push(mRoot.mcNextLevel.mcLevel6);
arrMCLevels.push(mRoot.mcNextLevel.mcLevel7);
arrMCLevels.push(mRoot.mcNextLevel.mcLevel8);
arrMCLevels.push(mRoot.mcNextLevel.mcLevel9);
arrMCLevels.push(mRoot.mcNextLevel.mcLevel10);
i = 0;
while (i < arrMCLevels.length) {
arrMCLevels[i].gotoAndStop(1);
i = (i + 1);
};
arrMCLevelTexts.push(mRoot.mcNextLevel.mcLevelText1);
arrMCLevelTexts.push(mRoot.mcNextLevel.mcLevelText2);
arrMCLevelTexts.push(mRoot.mcNextLevel.mcLevelText3);
arrMCLevelTexts.push(mRoot.mcNextLevel.mcLevelText4);
arrMCLevelTexts.push(mRoot.mcNextLevel.mcLevelText5);
arrMCLevelTexts.push(mRoot.mcNextLevel.mcLevelText6);
arrMCLevelTexts.push(mRoot.mcNextLevel.mcLevelText7);
arrMCLevelTexts.push(mRoot.mcNextLevel.mcLevelText8);
arrMCLevelTexts.push(mRoot.mcNextLevel.mcLevelText9);
arrMCLevelTexts.push(mRoot.mcNextLevel.mcLevelText10);
i = 0;
while (i < arrMCLevelTexts.length) {
arrMCLevelTexts[i].gotoAndStop(1);
i = (i + 1);
};
}
private function fnMCClear(_arg1:Event):void{
var _local2:MovieClip;
_local2 = (_arg1.currentTarget as MovieClip);
if (_local2.currentFrame == _local2.totalFrames){
_local2.removeEventListener(Event.ENTER_FRAME, fnMCClear);
mStage.addChild(_local2);
};
}
private function tileOver(_arg1:MouseEvent):void{
var _local2:CTile;
if (((((isEnd) || (isPause))) || (isNextLevel))){
return;
};
_local2 = (_arg1.currentTarget as CTile);
if (isClickMC2){
mRoot.mc1.visible = true;
mRoot.mc1.gotoAndStop(_local2.currentFrame);
} else {
mRoot.mc2.visible = true;
mRoot.mc2.gotoAndStop(_local2.currentFrame);
};
}
function rotateColumn(_arg1:Event){
var _local2:*;
_local2 = (90 / nMaxStep);
if (sDirection == "left"){
nColumnAngle = (nColumnAngle - _local2);
transformColumn(nColumnAngle);
} else {
if (sDirection == "right"){
nColumnAngle = (nColumnAngle + _local2);
transformColumn(nColumnAngle);
};
};
showAllTiles();
nStep++;
if (nStep >= (nMaxStep / 2)){
sorts(aTiles);
};
if (nStep == nMaxStep){
nStep = 0;
mcColumn.removeEventListener(Event.ENTER_FRAME, rotateColumn);
_bIsRotate = true;
sorts(aTiles);
};
}
private function fnScore(_arg1:Number):void{
mRoot.totalScore = (mRoot.totalScore + _arg1);
mRoot.txtScore.text = mRoot.totalScore;
}
private function isReffle():Boolean{
var _local1:Array;
var _local2:uint;
var _local3:*;
var _local4:uint;
var _local5:uint;
var _local6:uint;
var _local7:uint;
_local1 = new Array();
_local2 = 0;
while (_local2 < nColumnZ) {
_local5 = 0;
while (_local5 < nColumnY) {
_local6 = 0;
while (_local6 < nColumnX) {
if (((!((aColumn[((((_local6 + ":") + _local5) + ":") + _local2)] == null))) && (isCanClear(_local6, _local5, _local2)))){
_local1.push(aColumn[((((_local6 + ":") + _local5) + ":") + _local2)]);
};
_local6++;
};
_local5++;
};
_local2++;
};
_local3 = _local1.length;
_local4 = 0;
while (_local4 < _local3) {
_local7 = (_local4 + 1);
while (_local7 < _local3) {
if (_local1[_local4].currentFrame == _local1[_local7].currentFrame){
return (false);
};
_local7++;
};
_local4++;
};
return (true);
}
private function end(_arg1:TimerEvent=null):void{
trace(isEnd);
if (!isEnd){
mRoot.mcTimeBorder.mcTime.gotoAndStop(25);
if (isSound){
new GameOverSound().play();
};
destroy();
isEnd = true;
mRoot.bg.visible = false;
mRoot.gotoAndStop(5);
};
}
private function fnShowBG(_arg1:Boolean=false):void{
var p = _arg1;
isBtStory = p;
if (isBtStory){
fnVisibleTiles(false);
TimeManager.getInstance().stop();
} else {
if (((isSound) && (!((level == Config.MAX_LEVEL))))){
if (isMusic){
SoundManager.getInstance().startSound(Config.getBGSound(level));
};
};
};
trace("fnShowBG");
adMouseSprite(mRoot);
mRoot.swapChildren(mRoot.bg, mouseSprite);
mRoot.bg.gotoAndStop(level);
try {
mRoot.bg.mcSBG.visible = true;
} catch(e) {
trace(e, mRoot.bg.mcSBG);
};
if (isBtStory){
mRoot.bg.btBack.visible = true;
} else {
mRoot.bg.btSkip.visible = true;
};
trace("fnShowBG2");
fnClearTimeout();
if (level == 1){
mRoot.bg.txtStory2.text = Config.getBGMessage(level);
timeOutId = setTimeout(fnSkip, 8000);
} else {
mRoot.bg.txtStory2.text = "";
mRoot.bg.txtStory.text = Config.getBGMessage(level);
if (level == Config.MAX_LEVEL){
timeOutId = setTimeout(function (){
fnClearTimeout();
mRoot.swapChildren(mRoot.bg, mouseSprite);
rmMouseSprite();
end();
}, 4000);
} else {
timeOutId = setTimeout(fnSkip, 7000);
};
};
}
public function init():void{
_mcParent = mStage;
aTiles = [];
aColumn = [];
nColumnX = 1;
nColumnY = 1;
nColumnZ = 1;
nTileSize = 54;
_nScale = 1;
nColumnAngle = 52;
nStartX = 0;
nStartY = 0;
nTileHalf = 0;
nMaxStep = 10;
nStep = 0;
_bIsRotate = false;
sDirection = "right";
mcColumn = null;
scoreTimer = null;
moreClick = 0;
level = 0;
currentTime = 0;
timeOutId = -1;
preTile = null;
isSound = true;
mRoot.mc1.visible = false;
mRoot.mc2.visible = false;
isMusic = true;
isClickMC2 = false;
isEnd = false;
isPause = false;
isNextLevel = false;
arrMCLevels = [];
arrMCLevelTexts = [];
initMC();
trace("init");
fnNextLevel(level);
mStage.addEventListener(KeyboardEvent.KEY_DOWN, fnKeyClick);
}
private function fnVisibleTiles(_arg1:Boolean):void{
var _local2:*;
for (_local2 in aColumn) {
if (aColumn[_local2] != null){
aColumn[_local2].visible = _arg1;
};
};
}
private function fnClearTimeout():void{
if (timeOutId > -1){
clearTimeout(timeOutId);
timeOutId = -1;
};
}
private function updateScore(_arg1:TimerEvent){
scoreTimer.removeEventListener(TimerEvent.TIMER, updateScore);
scoreTimer.stop();
moreClick = 0;
}
private function fnKeyClick(_arg1:KeyboardEvent):void{
if (((((isEnd) || (isPause))) || (isNextLevel))){
return;
};
switch (_arg1.keyCode){
case 37:
sDirection = "right";
if (isSound){
new RotateSound().play();
};
mcColumn.addEventListener(Event.ENTER_FRAME, rotateColumn);
break;
case 39:
sDirection = "left";
if (isSound){
new RotateSound().play();
};
mcColumn.addEventListener(Event.ENTER_FRAME, rotateColumn);
break;
};
}
private function fnMoreClick():void{
var _local1:uint;
var _local2:CTile;
var _local3:*;
_local1 = 0;
for (_local3 in aColumn) {
if (aColumn[_local3] != null){
if (_local1 == 0){
_local2 = aColumn[_local3];
_local1 = _local2.currentFrame;
} else {
if (_local1 == (aColumn[_local3] as CTile).currentFrame){
preTile = _local2;
fnClearTiles((aColumn[_local3] as CTile));
return;
};
};
};
};
}
function showTile(_arg1){
var _local2:*;
var _local3:*;
var _local4:*;
var _local5:Point;
_local2 = ((nStartX + ((_arg1.oColumn.x * nTileSize) * _nScale)) + nTileHalf);
_local3 = ((nStartY + ((_arg1.oColumn.y * nTileSize) * _nScale)) + nTileHalf);
_local4 = ((_arg1.oColumn.z * nTileSize) * _nScale);
_local5 = new Point(_local2, _local3);
_local5 = mcColumn.localToGlobal(_local5);
_arg1.x = (_local5.x - (40 * _nScale));
_arg1.y = ((_local5.y - _local4) - (62 * _nScale));
}
private function isSuccess():Boolean{
var _local1:*;
for (_local1 in aColumn) {
if (aColumn[_local1] != null){
return (false);
};
};
return (true);
}
private function tileClick(_arg1:MouseEvent):void{
var _local2:CTile;
var _local3:Boolean;
_local2 = (_arg1.currentTarget as CTile);
if (((!((_local2 == null))) && (isCanClear(_local2.oColumn.x, _local2.oColumn.y, _local2.oColumn.z)))){
if (preTile != _local2){
isClickMC2 = true;
_local2.selectTile();
if (((!((preTile == null))) && ((preTile.currentFrame == _local2.currentFrame)))){
_local3 = false;
if (isSound){
if (_local2.currentFrame == 16){
_local3 = true;
new Award1Sound().play();
} else {
if (_local2.currentFrame == 17){
new Award2Sound().play();
fnScore(100);
} else {
if (_local2.currentFrame == 18){
currentTime = (currentTime + 5);
new Award3Sound().play();
} else {
new RightClickSound().play();
};
};
};
};
fnClearTiles(_local2);
if (_local3){
fnMoreClick();
};
} else {
if (preTile != null){
if (isSound){
new WrongClickSound().play();
};
preTile.selectTile();
} else {
if (isSound){
new ClickSound().play();
};
};
preTile = _local2;
mRoot.mc1.gotoAndStop(_local2.currentFrame);
mRoot.mc2.gotoAndStop(_local2.currentFrame);
};
};
};
}
private function fnReshuffle(_arg1:Boolean, _arg2:Boolean=false):void{
var bReshuffle = _arg1;
var isReduceScore = _arg2;
if (bReshuffle){
if (mcReshuffle == null){
mcReshuffle = new MCReshuffle();
mcReshuffle.x = ((mStage.stageWidth / 2) - (mcReshuffle.width / 2));
mcReshuffle.y = ((mStage.stageHeight / 2) - (mcReshuffle.height / 2));
mStage.addChild(mcReshuffle);
};
if (isReduceScore){
mcReshuffle.txtScore.visible = true;
} else {
mcReshuffle.txtScore.visible = false;
};
mcReshuffle.visible = true;
TimeManager.getInstance().stop();
adMouseSprite(mStage);
mStage.swapChildren(mcReshuffle, mouseSprite);
setTimeout(function (){
fnReshuffle(false, isReduceScore);
}, 1000);
} else {
TimeManager.getInstance().start();
rmMouseSprite();
mcReshuffle.visible = false;
if (isReduceScore){
fnScore(-500);
};
};
}
private function changeTiles(_arg1, _arg2):void{
var _local3:uint;
_local3 = _arg1.currentFrame;
_arg1.gotoAndStop(_arg2.currentFrame);
_arg2.gotoAndStop(_local3);
}
private function isCanClear(_arg1:int, _arg2:int, _arg3:int):Boolean{
var _local4:Boolean;
var _local5:Boolean;
var _local6:Boolean;
var _local7:Boolean;
var _local8:Boolean;
var _local9:Boolean;
var _local10:Boolean;
_local4 = false;
_local5 = false;
_local6 = false;
_local7 = false;
_local8 = false;
_local9 = false;
_local10 = false;
if (aColumn[((((_arg1 + ":") + _arg2) + ":") + _arg3)] == null){
return (false);
};
if (_arg1 > 0){
if (aColumn[(((((_arg1 - 1) + ":") + _arg2) + ":") + _arg3)] != null){
_local9 = true;
};
};
if (_arg1 < (nColumnX - 1)){
if (aColumn[(((((_arg1 + 1) + ":") + _arg2) + ":") + _arg3)] != null){
_local10 = true;
};
};
if (_arg2 > 0){
if (aColumn[((((_arg1 + ":") + (_arg2 - 1)) + ":") + _arg3)] != null){
_local6 = true;
};
};
if (_arg2 < (nColumnY - 1)){
if (aColumn[((((_arg1 + ":") + (_arg2 + 1)) + ":") + _arg3)] != null){
_local5 = true;
};
};
if (_arg3 > 0){
if (aColumn[((((_arg1 + ":") + _arg2) + ":") + (_arg3 - 1))] != null){
_local7 = true;
};
};
if (_arg3 < (nColumnZ - 1)){
if (aColumn[((((_arg1 + ":") + _arg2) + ":") + (_arg3 + 1))] != null){
_local8 = true;
};
};
if (((((((_local5) && (_local6))) || (((_local7) && (_local8))))) || (((_local9) && (_local10))))){
_local4 = false;
} else {
_local4 = true;
};
return (_local4);
}
private function tileOut(_arg1:MouseEvent):void{
if (((((isEnd) || (isPause))) || (isNextLevel))){
return;
};
if (mRoot.mc1.visible){
mRoot.mc1.visible = false;
} else {
if (!isClickMC2){
mRoot.mc2.visible = false;
};
};
}
function transformColumn(_arg1){
var _local2:Object;
var _local3:Matrix;
var _local4:*;
_local2 = {x:370, y:420};
_local3 = new Matrix();
_local4 = ((_arg1 / 180) * Math.PI);
_local3.rotate(_local4);
_local3.scale(1, 0.28);
_local3.translate(_local2.x, _local2.y);
mcColumn.transform.matrix = _local3;
}
public function destroy():void{
var _local1:*;
TimeManager.getInstance().clear();
if (scoreTimer != null){
scoreTimer.removeEventListener(TimerEvent.TIMER, updateScore);
scoreTimer.stop();
scoreTimer = null;
};
for (_local1 in aColumn) {
if (aColumn[_local1] != null){
_mcParent.removeChild(aColumn[_local1]);
aColumn[_local1] = null;
};
};
aColumn = [];
aTiles = [];
if (mcColumn != null){
_mcParent.removeChild(mcColumn);
mcColumn = null;
};
nColumnAngle = 52;
nMaxStep = 10;
nStep = 0;
_bIsRotate = false;
sDirection = "right";
mcColumn = null;
moreClick = 0;
currentTime = 0;
preTile = null;
mRoot.mc1.visible = false;
mRoot.mc2.visible = false;
isClickMC2 = false;
isEnd = false;
isPause = false;
isNextLevel = false;
}
private function updateTimer(_arg1:TimerEvent){
currentTime--;
if (currentTime > 0){
mRoot.mcTimeBorder.mcTime.gotoAndStop((25 - Math.floor(((currentTime / Config.getTime(level)) * 25))));
mRoot.txtTime.text = TimeUtil.convertTime(currentTime);
if (currentTime <= 10){
if (isSound){
new ClockSound().play();
};
};
} else {
end();
};
}
public static function getInstance(_arg1:Stage, _arg2=null):Main{
if (Main.instance == null){
Main.instance = new (Main);
Main.instance.initBase(_arg1, _arg2);
};
return (Main.instance);
}
}
}//package
Section 78
//MainSound (MainSound)
package {
import flash.media.*;
public dynamic class MainSound extends Sound {
}
}//package
Section 79
//MCBg (MCBg)
package {
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class MCBg extends MovieClip {
public var txtStory2:TextField;
public var btBack:SimpleButton;
public var txtStory:TextField;
public var mcSBG:MovieClip;
public var btSkip:SimpleButton;
public function MCBg(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 80
//MCClear (MCClear)
package {
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class MCClear extends MovieClip {
public function MCClear(){
addFrameScript(4, frame5);
}
function frame5(){
stop();
}
}
}//package
Section 81
//MCNextScore (MCNextScore)
package {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class MCNextScore extends MovieClip {
public var txtScore:TextField;
public var TimeBonus:TextField;
public var LevelCompleted:TextField;
public function MCNextScore(){
addFrameScript(0, frame1);
}
function frame1(){
LevelCompleted.text = LanguageConfig.WORD.LevelCompleted;
TimeBonus.text = LanguageConfig.WORD.TimeBonus;
}
}
}//package
Section 82
//MCPause (MCPause)
package {
import flash.display.*;
public dynamic class MCPause extends MovieClip {
public var btContinue:SimpleButton;
public var gamePaused:MovieClip;
}
}//package
Section 83
//MCReshuffle (MCReshuffle)
package {
import game.*;
import flash.events.*;
import flash.utils.*;
import flash.display.*;
import flash.media.*;
import flash.text.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import flash.ui.*;
public dynamic class MCReshuffle extends MovieClip {
public var txtScore:TextField;
public var ReshuffleMes:TextField;
public function MCReshuffle(){
addFrameScript(0, frame1);
}
function frame1(){
ReshuffleMes.text = LanguageConfig.WORD.ReshuffleMes;
}
}
}//package
Section 84
//RightClickSound (RightClickSound)
package {
import flash.media.*;
public dynamic class RightClickSound extends Sound {
}
}//package
Section 85
//RotateSound (RotateSound)
package {
import flash.media.*;
public dynamic class RotateSound extends Sound {
}
}//package
Section 86
//WrongClickSound (WrongClickSound)
package {
import flash.media.*;
public dynamic class WrongClickSound extends Sound {
}
}//package