[Tools][Expand/Collapse All]Note that automatic extraction of ActionScript 3 is still pretty much unsupported by swfchan. AS1/AS2 works okay most of the time.Section 1 (298 B)
//spriteButtons_2 (AdlibToolbar_fla.spriteButtons_2)
package AdlibToolbar_fla {
import flash.display.*;
public dynamic class spriteButtons_2 extends MovieClip {
public var btn_All:MovieClip;
public var btn_FX:MovieClip;
public var mc_IconHolder:MovieClip;
}
}//package AdlibToolbar_fla
Section 2 (211 B)
//Symbol1_5 (AdlibToolbar_fla.Symbol1_5)
package AdlibToolbar_fla {
import flash.display.*;
public dynamic class Symbol1_5 extends MovieClip {
public var mc_Icon:MovieClip;
}
}//package AdlibToolbar_fla
Section 3 (284 B)
//GFH_127 (auntsAttack_SA_fla.GFH_127)
package auntsAttack_SA_fla {
import flash.display.*;
public dynamic class GFH_127 extends MovieClip {
public function GFH_127(){
addFrameScript(110, frame111);
}
function frame111(){
stop();
}
}
}//package auntsAttack_SA_fla
Section 4 (221 B)
//lifeBar_34 (auntsAttack_SA_fla.lifeBar_34)
package auntsAttack_SA_fla {
import flash.display.*;
public dynamic class lifeBar_34 extends MovieClip {
public var lifeMask:MovieClip;
}
}//package auntsAttack_SA_fla
Section 5 (12.81 KiB) ● ●
//ColorShortcuts (caurina.transitions.properties.ColorShortcuts)
package caurina.transitions.properties {
import caurina.transitions.*;
import flash.geom.*;
import flash.filters.*;
public class ColorShortcuts {
private static var LUMINANCE_B:Number = 0.072169;
private static var LUMINANCE_G:Number = 0.71516;
private static var LUMINANCE_R:Number = 0.212671;
public function ColorShortcuts(){
trace("This is an static class and should not be instantiated.");
}
public static function _color_splitter(_arg1, _arg2:Array):Array{
var _local3:Array;
_local3 = new Array();
if (_arg1 == null){
_local3.push({name:"_color_redMultiplier", value:1});
_local3.push({name:"_color_redOffset", value:0});
_local3.push({name:"_color_greenMultiplier", value:1});
_local3.push({name:"_color_greenOffset", value:0});
_local3.push({name:"_color_blueMultiplier", value:1});
_local3.push({name:"_color_blueOffset", value:0});
} else {
_local3.push({name:"_color_redMultiplier", value:0});
_local3.push({name:"_color_redOffset", value:AuxFunctions.numberToR(_arg1)});
_local3.push({name:"_color_greenMultiplier", value:0});
_local3.push({name:"_color_greenOffset", value:AuxFunctions.numberToG(_arg1)});
_local3.push({name:"_color_blueMultiplier", value:0});
_local3.push({name:"_color_blueOffset", value:AuxFunctions.numberToB(_arg1)});
};
return (_local3);
}
public static function _contrast_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
var _local5:Number;
var _local6:Number;
var _local7:ColorTransform;
_local5 = (_arg2 + 1);
_local6 = Math.round((_arg2 * -128));
_local7 = new ColorTransform(_local5, _local5, _local5, 1, _local6, _local6, _local6, 0);
_arg1.transform.colorTransform = _local7;
}
public static function _brightness_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
var _local4:Boolean;
var _local5:ColorTransform;
var _local6:Number;
var _local7:Number;
_local4 = _arg2[0];
_local5 = _arg1.transform.colorTransform;
_local6 = (1 - (((_local5.redMultiplier + _local5.greenMultiplier) + _local5.blueMultiplier) / 3));
_local7 = (((_local5.redOffset + _local5.greenOffset) + _local5.blueOffset) / 3);
if (_local4){
return (((_local7 > 0)) ? (_local7 / 0xFF) : -(_local6));
//unresolved jump
};
return ((_local7 / 100));
}
public static function _saturation_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
var _local4:Array;
var _local5:Boolean;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
_local4 = getObjectMatrix(_arg1);
_local5 = _arg2[0];
_local6 = (_local5) ? (1 / 3) : LUMINANCE_R;
_local7 = (_local5) ? (1 / 3) : LUMINANCE_G;
_local8 = (_local5) ? (1 / 3) : LUMINANCE_B;
_local9 = (((((_local4[0] - _local6) / (1 - _local6)) + ((_local4[6] - _local7) / (1 - _local7))) + ((_local4[12] - _local8) / (1 - _local8))) / 3);
_local10 = (1 - (((((((_local4[1] / _local7) + (_local4[2] / _local8)) + (_local4[5] / _local6)) + (_local4[7] / _local8)) + (_local4[10] / _local6)) + (_local4[11] / _local7)) / 6));
return (((_local9 + _local10) / 2));
}
public static function _oldColor_property_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
return ((_arg1.transform.colorTransform[_arg2[0]] * 100));
}
public static function _brightness_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
var _local5:Boolean;
var _local6:Number;
var _local7:Number;
var _local8:ColorTransform;
_local5 = _arg3[0];
if (_local5){
_local6 = (1 - Math.abs(_arg2));
_local7 = ((_arg2 > 0)) ? Math.round((_arg2 * 0xFF)) : 0;
} else {
_local6 = 1;
_local7 = Math.round((_arg2 * 100));
};
_local8 = new ColorTransform(_local6, _local6, _local6, 1, _local7, _local7, _local7, 0);
_arg1.transform.colorTransform = _local8;
}
public static function _saturation_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
var _local5:Boolean;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
var _local14:Array;
_local5 = _arg3[0];
_local6 = (_local5) ? (1 / 3) : LUMINANCE_R;
_local7 = (_local5) ? (1 / 3) : LUMINANCE_G;
_local8 = (_local5) ? (1 / 3) : LUMINANCE_B;
_local9 = _arg2;
_local10 = (1 - _local9);
_local11 = (_local6 * _local10);
_local12 = (_local7 * _local10);
_local13 = (_local8 * _local10);
_local14 = [(_local11 + _local9), _local12, _local13, 0, 0, _local11, (_local12 + _local9), _local13, 0, 0, _local11, _local12, (_local13 + _local9), 0, 0, 0, 0, 0, 1, 0];
setObjectMatrix(_arg1, _local14);
}
private static function getObjectMatrix(_arg1:Object):Array{
var _local2:Number;
_local2 = 0;
while (_local2 < _arg1.filters.length) {
if ((_arg1.filters[_local2] is ColorMatrixFilter)){
return (_arg1.filters[_local2].matrix.concat());
};
_local2++;
};
return ([1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]);
}
public static function getHueDistance(_arg1:Array, _arg2:Array):Number{
return (((Math.abs((_arg1[0] - _arg2[0])) + Math.abs((_arg1[1] - _arg2[1]))) + Math.abs((_arg1[2] - _arg2[2]))));
}
public static function _hue_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
setObjectMatrix(_arg1, getHueMatrix(_arg2));
}
public static function _hue_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
var _local4:Array;
var _local5:Array;
var _local6:Number;
var _local7:Number;
var _local8:Number;
_local4 = getObjectMatrix(_arg1);
_local5 = [];
_local5[0] = {angle:-179.9, matrix:getHueMatrix(-179.9)};
_local5[1] = {angle:180, matrix:getHueMatrix(180)};
_local6 = 0;
while (_local6 < _local5.length) {
_local5[_local6].distance = getHueDistance(_local4, _local5[_local6].matrix);
_local6++;
};
_local7 = 15;
_local6 = 0;
while (_local6 < _local7) {
if (_local5[0].distance < _local5[1].distance){
_local8 = 1;
} else {
_local8 = 0;
};
_local5[_local8].angle = ((_local5[0].angle + _local5[1].angle) / 2);
_local5[_local8].matrix = getHueMatrix(_local5[_local8].angle);
_local5[_local8].distance = getHueDistance(_local4, _local5[_local8].matrix);
_local6++;
};
return (_local5[_local8].angle);
}
public static function getHueMatrix(_arg1:Number):Array{
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Array;
_local2 = ((_arg1 * Math.PI) / 180);
_local3 = LUMINANCE_R;
_local4 = LUMINANCE_G;
_local5 = LUMINANCE_B;
_local6 = Math.cos(_local2);
_local7 = Math.sin(_local2);
_local8 = [((_local3 + (_local6 * (1 - _local3))) + (_local7 * -(_local3))), ((_local4 + (_local6 * -(_local4))) + (_local7 * -(_local4))), ((_local5 + (_local6 * -(_local5))) + (_local7 * (1 - _local5))), 0, 0, ((_local3 + (_local6 * -(_local3))) + (_local7 * 0.143)), ((_local4 + (_local6 * (1 - _local4))) + (_local7 * 0.14)), ((_local5 + (_local6 * -(_local5))) + (_local7 * -0.283)), 0, 0, ((_local3 + (_local6 * -(_local3))) + (_local7 * -((1 - _local3)))), ((_local4 + (_local6 * -(_local4))) + (_local7 * _local4)), ((_local5 + (_local6 * (1 - _local5))) + (_local7 * _local5)), 0, 0, 0, 0, 0, 1, 0];
return (_local8);
}
public static function _color_property_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
return (_arg1.transform.colorTransform[_arg2[0]]);
}
public static function init():void{
Tweener.registerSpecialProperty("_color_ra", _oldColor_property_get, _oldColor_property_set, ["redMultiplier"]);
Tweener.registerSpecialProperty("_color_rb", _color_property_get, _color_property_set, ["redOffset"]);
Tweener.registerSpecialProperty("_color_ga", _oldColor_property_get, _oldColor_property_set, ["greenMultiplier"]);
Tweener.registerSpecialProperty("_color_gb", _color_property_get, _color_property_set, ["greenOffset"]);
Tweener.registerSpecialProperty("_color_ba", _oldColor_property_get, _oldColor_property_set, ["blueMultiplier"]);
Tweener.registerSpecialProperty("_color_bb", _color_property_get, _color_property_set, ["blueOffset"]);
Tweener.registerSpecialProperty("_color_aa", _oldColor_property_get, _oldColor_property_set, ["alphaMultiplier"]);
Tweener.registerSpecialProperty("_color_ab", _color_property_get, _color_property_set, ["alphaOffset"]);
Tweener.registerSpecialProperty("_color_redMultiplier", _color_property_get, _color_property_set, ["redMultiplier"]);
Tweener.registerSpecialProperty("_color_redOffset", _color_property_get, _color_property_set, ["redOffset"]);
Tweener.registerSpecialProperty("_color_greenMultiplier", _color_property_get, _color_property_set, ["greenMultiplier"]);
Tweener.registerSpecialProperty("_color_greenOffset", _color_property_get, _color_property_set, ["greenOffset"]);
Tweener.registerSpecialProperty("_color_blueMultiplier", _color_property_get, _color_property_set, ["blueMultiplier"]);
Tweener.registerSpecialProperty("_color_blueOffset", _color_property_get, _color_property_set, ["blueOffset"]);
Tweener.registerSpecialProperty("_color_alphaMultiplier", _color_property_get, _color_property_set, ["alphaMultiplier"]);
Tweener.registerSpecialProperty("_color_alphaOffset", _color_property_get, _color_property_set, ["alphaOffset"]);
Tweener.registerSpecialPropertySplitter("_color", _color_splitter);
Tweener.registerSpecialPropertySplitter("_colorTransform", _colorTransform_splitter);
Tweener.registerSpecialProperty("_brightness", _brightness_get, _brightness_set, [false]);
Tweener.registerSpecialProperty("_tintBrightness", _brightness_get, _brightness_set, [true]);
Tweener.registerSpecialProperty("_contrast", _contrast_get, _contrast_set);
Tweener.registerSpecialProperty("_hue", _hue_get, _hue_set);
Tweener.registerSpecialProperty("_saturation", _saturation_get, _saturation_set, [false]);
Tweener.registerSpecialProperty("_dumbSaturation", _saturation_get, _saturation_set, [true]);
}
private static function setObjectMatrix(_arg1:Object, _arg2:Array):void{
var _local3:Array;
var _local4:Boolean;
var _local5:Number;
var _local6:ColorMatrixFilter;
_local3 = _arg1.filters.concat();
_local4 = false;
_local5 = 0;
while (_local5 < _local3.length) {
if ((_local3[_local5] is ColorMatrixFilter)){
_local3[_local5].matrix = _arg2.concat();
_local4 = true;
};
_local5++;
};
if (!_local4){
_local6 = new ColorMatrixFilter(_arg2);
_local3[_local3.length] = _local6;
};
_arg1.filters = _local3;
}
public static function _color_property_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
var _local5:ColorTransform;
_local5 = _arg1.transform.colorTransform;
_local5[_arg3[0]] = _arg2;
_arg1.transform.colorTransform = _local5;
}
public static function _oldColor_property_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
var _local5:ColorTransform;
_local5 = _arg1.transform.colorTransform;
_local5[_arg3[0]] = (_arg2 / 100);
_arg1.transform.colorTransform = _local5;
}
public static function _contrast_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
var _local4:ColorTransform;
var _local5:Number;
var _local6:Number;
_local4 = _arg1.transform.colorTransform;
_local5 = ((((_local4.redMultiplier + _local4.greenMultiplier) + _local4.blueMultiplier) / 3) - 1);
_local6 = ((((_local4.redOffset + _local4.greenOffset) + _local4.blueOffset) / 3) / -128);
return (((_local5 + _local6) / 2));
}
public static function _colorTransform_splitter(_arg1:Object, _arg2:Array):Array{
var _local3:Array;
_local3 = new Array();
if (_arg1 == null){
_local3.push({name:"_color_redMultiplier", value:1});
_local3.push({name:"_color_redOffset", value:0});
_local3.push({name:"_color_greenMultiplier", value:1});
_local3.push({name:"_color_greenOffset", value:0});
_local3.push({name:"_color_blueMultiplier", value:1});
_local3.push({name:"_color_blueOffset", value:0});
} else {
_local3.push({name:"_color_redMultiplier", value:_arg1.redMultiplier});
_local3.push({name:"_color_redOffset", value:_arg1.redOffset});
_local3.push({name:"_color_blueMultiplier", value:_arg1.blueMultiplier});
_local3.push({name:"_color_blueOffset", value:_arg1.blueOffset});
_local3.push({name:"_color_greenMultiplier", value:_arg1.greenMultiplier});
_local3.push({name:"_color_greenOffset", value:_arg1.greenOffset});
_local3.push({name:"_color_alphaMultiplier", value:_arg1.alphaMultiplier});
_local3.push({name:"_color_alphaOffset", value:_arg1.alphaOffset});
};
return (_local3);
}
}
}//package caurina.transitions.properties
Section 6 (3.44 KiB) ●
//DisplayShortcuts (caurina.transitions.properties.DisplayShortcuts)
package caurina.transitions.properties {
import caurina.transitions.*;
import flash.geom.*;
public class DisplayShortcuts {
public function DisplayShortcuts(){
trace("This is an static class and should not be instantiated.");
}
public static function init():void{
Tweener.registerSpecialProperty("_frame", _frame_get, _frame_set);
Tweener.registerSpecialProperty("_autoAlpha", _autoAlpha_get, _autoAlpha_set);
Tweener.registerSpecialPropertySplitter("_scale", _scale_splitter);
Tweener.registerSpecialPropertySplitter("_scrollRect", _scrollRect_splitter);
Tweener.registerSpecialProperty("_scrollRect_x", _scrollRect_property_get, _scrollRect_property_set, ["x"]);
Tweener.registerSpecialProperty("_scrollRect_y", _scrollRect_property_get, _scrollRect_property_set, ["y"]);
Tweener.registerSpecialProperty("_scrollRect_left", _scrollRect_property_get, _scrollRect_property_set, ["left"]);
Tweener.registerSpecialProperty("_scrollRect_right", _scrollRect_property_get, _scrollRect_property_set, ["right"]);
Tweener.registerSpecialProperty("_scrollRect_top", _scrollRect_property_get, _scrollRect_property_set, ["top"]);
Tweener.registerSpecialProperty("_scrollRect_bottom", _scrollRect_property_get, _scrollRect_property_set, ["bottom"]);
Tweener.registerSpecialProperty("_scrollRect_width", _scrollRect_property_get, _scrollRect_property_set, ["width"]);
Tweener.registerSpecialProperty("_scrollRect_height", _scrollRect_property_get, _scrollRect_property_set, ["height"]);
}
public static function _frame_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
_arg1.gotoAndStop(Math.round(_arg2));
}
public static function _autoAlpha_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
_arg1.alpha = _arg2;
_arg1.visible = (_arg2 > 0);
}
public static function _frame_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
return (_arg1.currentFrame);
}
public static function _scrollRect_splitter(_arg1:Rectangle, _arg2:Array, _arg3:Object=null):Array{
var _local4:Array;
_local4 = new Array();
if (_arg1 == null){
_local4.push({name:"_scrollRect_x", value:0});
_local4.push({name:"_scrollRect_y", value:0});
_local4.push({name:"_scrollRect_width", value:100});
_local4.push({name:"_scrollRect_height", value:100});
} else {
_local4.push({name:"_scrollRect_x", value:_arg1.x});
_local4.push({name:"_scrollRect_y", value:_arg1.y});
_local4.push({name:"_scrollRect_width", value:_arg1.width});
_local4.push({name:"_scrollRect_height", value:_arg1.height});
};
return (_local4);
}
public static function _autoAlpha_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
return (_arg1.alpha);
}
public static function _scrollRect_property_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
return (_arg1.scrollRect[_arg2[0]]);
}
public static function _scale_splitter(_arg1:Number, _arg2:Array):Array{
var _local3:Array;
_local3 = new Array();
_local3.push({name:"scaleX", value:_arg1});
_local3.push({name:"scaleY", value:_arg1});
return (_local3);
}
public static function _scrollRect_property_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
var _local5:Rectangle;
_local5 = _arg1.scrollRect;
_local5[_arg3[0]] = Math.round(_arg2);
_arg1.scrollRect = _local5;
}
}
}//package caurina.transitions.properties
Section 7 (28.83 KiB) ● ● ●
//FilterShortcuts (caurina.transitions.properties.FilterShortcuts)
package caurina.transitions.properties {
import caurina.transitions.*;
import flash.geom.*;
import flash.filters.*;
import flash.display.*;
public class FilterShortcuts {
public function FilterShortcuts(){
trace("This is an static class and should not be instantiated.");
}
public static function init():void{
Tweener.registerSpecialPropertySplitter("_filter", _filter_splitter);
Tweener.registerSpecialProperty("_Bevel_angle", _filter_property_get, _filter_property_set, [BevelFilter, "angle"]);
Tweener.registerSpecialProperty("_Bevel_blurX", _filter_property_get, _filter_property_set, [BevelFilter, "blurX"]);
Tweener.registerSpecialProperty("_Bevel_blurY", _filter_property_get, _filter_property_set, [BevelFilter, "blurY"]);
Tweener.registerSpecialProperty("_Bevel_distance", _filter_property_get, _filter_property_set, [BevelFilter, "distance"]);
Tweener.registerSpecialProperty("_Bevel_highlightAlpha", _filter_property_get, _filter_property_set, [BevelFilter, "highlightAlpha"]);
Tweener.registerSpecialPropertySplitter("_Bevel_highlightColor", _generic_color_splitter, ["_Bevel_highlightColor_r", "_Bevel_highlightColor_g", "_Bevel_highlightColor_b"]);
Tweener.registerSpecialProperty("_Bevel_highlightColor_r", _filter_property_get, _filter_property_set, [BevelFilter, "highlightColor", "color", "r"]);
Tweener.registerSpecialProperty("_Bevel_highlightColor_g", _filter_property_get, _filter_property_set, [BevelFilter, "highlightColor", "color", "g"]);
Tweener.registerSpecialProperty("_Bevel_highlightColor_b", _filter_property_get, _filter_property_set, [BevelFilter, "highlightColor", "color", "b"]);
Tweener.registerSpecialProperty("_Bevel_knockout", _filter_property_get, _filter_property_set, [BevelFilter, "knockout"]);
Tweener.registerSpecialProperty("_Bevel_quality", _filter_property_get, _filter_property_set, [BevelFilter, "quality"]);
Tweener.registerSpecialProperty("_Bevel_shadowAlpha", _filter_property_get, _filter_property_set, [BevelFilter, "shadowAlpha"]);
Tweener.registerSpecialPropertySplitter("_Bevel_shadowColor", _generic_color_splitter, ["_Bevel_shadowColor_r", "_Bevel_shadowColor_g", "_Bevel_shadowColor_b"]);
Tweener.registerSpecialProperty("_Bevel_shadowColor_r", _filter_property_get, _filter_property_set, [BevelFilter, "shadowColor", "color", "r"]);
Tweener.registerSpecialProperty("_Bevel_shadowColor_g", _filter_property_get, _filter_property_set, [BevelFilter, "shadowColor", "color", "g"]);
Tweener.registerSpecialProperty("_Bevel_shadowColor_b", _filter_property_get, _filter_property_set, [BevelFilter, "shadowColor", "color", "b"]);
Tweener.registerSpecialProperty("_Bevel_strength", _filter_property_get, _filter_property_set, [BevelFilter, "strength"]);
Tweener.registerSpecialProperty("_Bevel_type", _filter_property_get, _filter_property_set, [BevelFilter, "type"]);
Tweener.registerSpecialProperty("_Blur_blurX", _filter_property_get, _filter_property_set, [BlurFilter, "blurX"]);
Tweener.registerSpecialProperty("_Blur_blurY", _filter_property_get, _filter_property_set, [BlurFilter, "blurY"]);
Tweener.registerSpecialProperty("_Blur_quality", _filter_property_get, _filter_property_set, [BlurFilter, "quality"]);
Tweener.registerSpecialPropertySplitter("_ColorMatrix_matrix", _generic_matrix_splitter, [[1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0], ["_ColorMatrix_matrix_rr", "_ColorMatrix_matrix_rg", "_ColorMatrix_matrix_rb", "_ColorMatrix_matrix_ra", "_ColorMatrix_matrix_ro", "_ColorMatrix_matrix_gr", "_ColorMatrix_matrix_gg", "_ColorMatrix_matrix_gb", "_ColorMatrix_matrix_ga", "_ColorMatrix_matrix_go", "_ColorMatrix_matrix_br", "_ColorMatrix_matrix_bg", "_ColorMatrix_matrix_bb", "_ColorMatrix_matrix_ba", "_ColorMatrix_matrix_bo", "_ColorMatrix_matrix_ar", "_ColorMatrix_matrix_ag", "_ColorMatrix_matrix_ab", "_ColorMatrix_matrix_aa", "_ColorMatrix_matrix_ao"]]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_rr", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 0]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_rg", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 1]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_rb", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 2]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_ra", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 3]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_ro", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 4]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_gr", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 5]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_gg", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 6]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_gb", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 7]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_ga", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 8]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_go", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 9]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_br", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 10]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_bg", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 11]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_bb", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 12]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_ba", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 13]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_bo", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 14]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_ar", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 15]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_ag", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 16]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_ab", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 17]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_aa", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 18]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_ao", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 19]);
Tweener.registerSpecialProperty("_Convolution_alpha", _filter_property_get, _filter_property_set, [ConvolutionFilter, "alpha"]);
Tweener.registerSpecialProperty("_Convolution_bias", _filter_property_get, _filter_property_set, [ConvolutionFilter, "bias"]);
Tweener.registerSpecialProperty("_Convolution_clamp", _filter_property_get, _filter_property_set, [ConvolutionFilter, "clamp"]);
Tweener.registerSpecialPropertySplitter("_Convolution_color", _generic_color_splitter, ["_Convolution_color_r", "_Convolution_color_g", "_Convolution_color_b"]);
Tweener.registerSpecialProperty("_Convolution_color_r", _filter_property_get, _filter_property_set, [ConvolutionFilter, "color", "color", "r"]);
Tweener.registerSpecialProperty("_Convolution_color_g", _filter_property_get, _filter_property_set, [ConvolutionFilter, "color", "color", "g"]);
Tweener.registerSpecialProperty("_Convolution_color_b", _filter_property_get, _filter_property_set, [ConvolutionFilter, "color", "color", "b"]);
Tweener.registerSpecialProperty("_Convolution_divisor", _filter_property_get, _filter_property_set, [ConvolutionFilter, "divisor"]);
Tweener.registerSpecialProperty("_Convolution_matrixX", _filter_property_get, _filter_property_set, [ConvolutionFilter, "matrixX"]);
Tweener.registerSpecialProperty("_Convolution_matrixY", _filter_property_get, _filter_property_set, [ConvolutionFilter, "matrixY"]);
Tweener.registerSpecialProperty("_Convolution_preserveAlpha", _filter_property_get, _filter_property_set, [ConvolutionFilter, "preserveAlpha"]);
Tweener.registerSpecialProperty("_DisplacementMap_alpha", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "alpha"]);
Tweener.registerSpecialPropertySplitter("_DisplacementMap_color", _generic_color_splitter, ["_DisplacementMap_color_r", "_DisplacementMap_color_r", "_DisplacementMap_color_r"]);
Tweener.registerSpecialProperty("_DisplacementMap_color_r", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "color", "color", "r"]);
Tweener.registerSpecialProperty("_DisplacementMap_color_g", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "color", "color", "g"]);
Tweener.registerSpecialProperty("_DisplacementMap_color_b", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "color", "color", "b"]);
Tweener.registerSpecialProperty("_DisplacementMap_componentX", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "componentX"]);
Tweener.registerSpecialProperty("_DisplacementMap_componentY", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "componentY"]);
Tweener.registerSpecialProperty("_DisplacementMap_mapBitmap", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "mapBitmap"]);
Tweener.registerSpecialPropertySplitter("_DisplacementMap_mapPoint", _generic_point_splitter, ["_DisplacementMap_mapPoint_x", "_DisplacementMap_mapPoint_y"]);
Tweener.registerSpecialProperty("_DisplacementMap_mapPoint_x", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "mapPoint", "point", "x"]);
Tweener.registerSpecialProperty("_DisplacementMap_mapPoint_y", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "mapPoint", "point", "y"]);
Tweener.registerSpecialProperty("_DisplacementMap_mode", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "mode"]);
Tweener.registerSpecialProperty("_DisplacementMap_scaleX", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "scaleX"]);
Tweener.registerSpecialProperty("_DisplacementMap_scaleY", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "scaleY"]);
Tweener.registerSpecialProperty("_DropShadow_alpha", _filter_property_get, _filter_property_set, [DropShadowFilter, "alpha"]);
Tweener.registerSpecialProperty("_DropShadow_angle", _filter_property_get, _filter_property_set, [DropShadowFilter, "angle"]);
Tweener.registerSpecialProperty("_DropShadow_blurX", _filter_property_get, _filter_property_set, [DropShadowFilter, "blurX"]);
Tweener.registerSpecialProperty("_DropShadow_blurY", _filter_property_get, _filter_property_set, [DropShadowFilter, "blurY"]);
Tweener.registerSpecialPropertySplitter("_DropShadow_color", _generic_color_splitter, ["_DropShadow_color_r", "_DropShadow_color_g", "_DropShadow_color_b"]);
Tweener.registerSpecialProperty("_DropShadow_color_r", _filter_property_get, _filter_property_set, [DropShadowFilter, "color", "color", "r"]);
Tweener.registerSpecialProperty("_DropShadow_color_g", _filter_property_get, _filter_property_set, [DropShadowFilter, "color", "color", "g"]);
Tweener.registerSpecialProperty("_DropShadow_color_b", _filter_property_get, _filter_property_set, [DropShadowFilter, "color", "color", "b"]);
Tweener.registerSpecialProperty("_DropShadow_distance", _filter_property_get, _filter_property_set, [DropShadowFilter, "distance"]);
Tweener.registerSpecialProperty("_DropShadow_hideObject", _filter_property_get, _filter_property_set, [DropShadowFilter, "hideObject"]);
Tweener.registerSpecialProperty("_DropShadow_inner", _filter_property_get, _filter_property_set, [DropShadowFilter, "inner"]);
Tweener.registerSpecialProperty("_DropShadow_knockout", _filter_property_get, _filter_property_set, [DropShadowFilter, "knockout"]);
Tweener.registerSpecialProperty("_DropShadow_quality", _filter_property_get, _filter_property_set, [DropShadowFilter, "quality"]);
Tweener.registerSpecialProperty("_DropShadow_strength", _filter_property_get, _filter_property_set, [DropShadowFilter, "strength"]);
Tweener.registerSpecialProperty("_Glow_alpha", _filter_property_get, _filter_property_set, [GlowFilter, "alpha"]);
Tweener.registerSpecialProperty("_Glow_blurX", _filter_property_get, _filter_property_set, [GlowFilter, "blurX"]);
Tweener.registerSpecialProperty("_Glow_blurY", _filter_property_get, _filter_property_set, [GlowFilter, "blurY"]);
Tweener.registerSpecialPropertySplitter("_Glow_color", _generic_color_splitter, ["_Glow_color_r", "_Glow_color_g", "_Glow_color_b"]);
Tweener.registerSpecialProperty("_Glow_color_r", _filter_property_get, _filter_property_set, [GlowFilter, "color", "color", "r"]);
Tweener.registerSpecialProperty("_Glow_color_g", _filter_property_get, _filter_property_set, [GlowFilter, "color", "color", "g"]);
Tweener.registerSpecialProperty("_Glow_color_b", _filter_property_get, _filter_property_set, [GlowFilter, "color", "color", "b"]);
Tweener.registerSpecialProperty("_Glow_inner", _filter_property_get, _filter_property_set, [GlowFilter, "inner"]);
Tweener.registerSpecialProperty("_Glow_knockout", _filter_property_get, _filter_property_set, [GlowFilter, "knockout"]);
Tweener.registerSpecialProperty("_Glow_quality", _filter_property_get, _filter_property_set, [GlowFilter, "quality"]);
Tweener.registerSpecialProperty("_Glow_strength", _filter_property_get, _filter_property_set, [GlowFilter, "strength"]);
Tweener.registerSpecialProperty("_GradientBevel_angle", _filter_property_get, _filter_property_set, [GradientBevelFilter, "angle"]);
Tweener.registerSpecialProperty("_GradientBevel_blurX", _filter_property_get, _filter_property_set, [GradientBevelFilter, "blurX"]);
Tweener.registerSpecialProperty("_GradientBevel_blurY", _filter_property_get, _filter_property_set, [GradientBevelFilter, "blurY"]);
Tweener.registerSpecialProperty("_GradientBevel_distance", _filter_property_get, _filter_property_set, [GradientBevelFilter, "distance"]);
Tweener.registerSpecialProperty("_GradientBevel_quality", _filter_property_get, _filter_property_set, [GradientBevelFilter, "quality"]);
Tweener.registerSpecialProperty("_GradientBevel_strength", _filter_property_get, _filter_property_set, [GradientBevelFilter, "strength"]);
Tweener.registerSpecialProperty("_GradientBevel_type", _filter_property_get, _filter_property_set, [GradientBevelFilter, "type"]);
Tweener.registerSpecialProperty("_GradientGlow_angle", _filter_property_get, _filter_property_set, [GradientGlowFilter, "angle"]);
Tweener.registerSpecialProperty("_GradientGlow_blurX", _filter_property_get, _filter_property_set, [GradientGlowFilter, "blurX"]);
Tweener.registerSpecialProperty("_GradientGlow_blurY", _filter_property_get, _filter_property_set, [GradientGlowFilter, "blurY"]);
Tweener.registerSpecialProperty("_GradientGlow_distance", _filter_property_get, _filter_property_set, [GradientGlowFilter, "distance"]);
Tweener.registerSpecialProperty("_GradientGlow_knockout", _filter_property_get, _filter_property_set, [GradientGlowFilter, "knockout"]);
Tweener.registerSpecialProperty("_GradientGlow_quality", _filter_property_get, _filter_property_set, [GradientGlowFilter, "quality"]);
Tweener.registerSpecialProperty("_GradientGlow_strength", _filter_property_get, _filter_property_set, [GradientGlowFilter, "strength"]);
Tweener.registerSpecialProperty("_GradientGlow_type", _filter_property_get, _filter_property_set, [GradientGlowFilter, "type"]);
}
public static function _filter_property_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
var _local4:Array;
var _local5:Number;
var _local6:Object;
var _local7:String;
var _local8:String;
var _local9:Object;
var _local10:String;
_local4 = _arg1.filters;
_local6 = _arg2[0];
_local7 = _arg2[1];
_local8 = _arg2[2];
_local5 = 0;
while (_local5 < _local4.length) {
if ((_local4[_local5] is Class(_local6))){
if (_local8 == "color"){
_local10 = _arg2[3];
if (_local10 == "r"){
return (AuxFunctions.numberToR(_local4[_local5][_local7]));
};
if (_local10 == "g"){
return (AuxFunctions.numberToG(_local4[_local5][_local7]));
};
if (_local10 == "b"){
return (AuxFunctions.numberToB(_local4[_local5][_local7]));
};
} else {
if (_local8 == "matrix"){
return (_local4[_local5][_local7][_arg2[3]]);
};
if (_local8 == "point"){
return (_local4[_local5][_local7][_arg2[3]]);
};
return (_local4[_local5][_local7]);
};
};
_local5++;
};
switch (_local6){
case BevelFilter:
_local9 = {angle:NaN, blurX:0, blurY:0, distance:0, highlightAlpha:1, highlightColor:NaN, knockout:null, quality:NaN, shadowAlpha:1, shadowColor:NaN, strength:2, type:null};
break;
case BlurFilter:
_local9 = {blurX:0, blurY:0, quality:NaN};
break;
case ColorMatrixFilter:
_local9 = {matrix:[1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]};
break;
case ConvolutionFilter:
_local9 = {alpha:0, bias:0, clamp:null, color:NaN, divisor:1, matrix:[1], matrixX:1, matrixY:1, preserveAlpha:null};
break;
case DisplacementMapFilter:
_local9 = {alpha:0, color:NaN, componentX:null, componentY:null, mapBitmap:null, mapPoint:null, mode:null, scaleX:0, scaleY:0};
break;
case DropShadowFilter:
_local9 = {distance:0, angle:NaN, color:NaN, alpha:1, blurX:0, blurY:0, strength:1, quality:NaN, inner:null, knockout:null, hideObject:null};
break;
case GlowFilter:
_local9 = {alpha:1, blurX:0, blurY:0, color:NaN, inner:null, knockout:null, quality:NaN, strength:2};
break;
case GradientBevelFilter:
_local9 = {alphas:null, angle:NaN, blurX:0, blurY:0, colors:null, distance:0, knockout:null, quality:NaN, ratios:NaN, strength:1, type:null};
break;
case GradientGlowFilter:
_local9 = {alphas:null, angle:NaN, blurX:0, blurY:0, colors:null, distance:0, knockout:null, quality:NaN, ratios:NaN, strength:1, type:null};
break;
};
if (_local8 == "color"){
return (NaN);
};
if (_local8 == "matrix"){
return (_local9[_local7][_arg2[3]]);
};
if (_local8 == "point"){
return (_local9[_local7][_arg2[3]]);
};
return (_local9[_local7]);
}
public static function _filter_property_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
var _local5:Array;
var _local6:Number;
var _local7:Object;
var _local8:String;
var _local9:String;
var _local10:BitmapFilter;
var _local11:String;
var _local12:Array;
var _local13:Point;
_local5 = _arg1.filters;
_local7 = _arg3[0];
_local8 = _arg3[1];
_local9 = _arg3[2];
_local6 = 0;
while (_local6 < _local5.length) {
if ((_local5[_local6] is Class(_local7))){
if (_local9 == "color"){
_local11 = _arg3[3];
if (_local11 == "r"){
_local5[_local6][_local8] = ((_local5[_local6][_local8] & 0xFFFF) | (_arg2 << 16));
};
if (_local11 == "g"){
_local5[_local6][_local8] = ((_local5[_local6][_local8] & 0xFF00FF) | (_arg2 << 8));
};
if (_local11 == "b"){
_local5[_local6][_local8] = ((_local5[_local6][_local8] & 0xFFFF00) | _arg2);
};
} else {
if (_local9 == "matrix"){
_local12 = _local5[_local6][_local8];
_local12[_arg3[3]] = _arg2;
_local5[_local6][_local8] = _local12;
} else {
if (_local9 == "point"){
_local13 = Point(_local5[_local6][_local8]);
_local13[_arg3[3]] = _arg2;
_local5[_local6][_local8] = _local13;
} else {
_local5[_local6][_local8] = _arg2;
};
};
};
_arg1.filters = _local5;
return;
};
_local6++;
};
if (_local5 == null){
_local5 = new Array();
};
switch (_local7){
case BevelFilter:
_local10 = new BevelFilter(0, 45, 0xFFFFFF, 1, 0, 1, 0, 0);
break;
case BlurFilter:
_local10 = new BlurFilter(0, 0);
break;
case ColorMatrixFilter:
_local10 = new ColorMatrixFilter([1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]);
break;
case ConvolutionFilter:
_local10 = new ConvolutionFilter(1, 1, [1], 1, 0, true, true, 0, 0);
break;
case DisplacementMapFilter:
_local10 = new DisplacementMapFilter(new BitmapData(10, 10), new Point(0, 0), 0, 1, 0, 0);
break;
case DropShadowFilter:
_local10 = new DropShadowFilter(0, 45, 0, 1, 0, 0);
break;
case GlowFilter:
_local10 = new GlowFilter(0xFF0000, 1, 0, 0);
break;
case GradientBevelFilter:
_local10 = new GradientBevelFilter(0, 45, [0xFFFFFF, 0], [1, 1], [32, 223], 0, 0);
break;
case GradientGlowFilter:
_local10 = new GradientGlowFilter(0, 45, [0xFFFFFF, 0], [1, 1], [32, 223], 0, 0);
break;
};
_local5.push(_local10);
_arg1.filters = _local5;
_filter_property_set(_arg1, _arg2, _arg3);
}
public static function _generic_color_splitter(_arg1:Number, _arg2:Array):Array{
var _local3:Array;
_local3 = new Array();
_local3.push({name:_arg2[0], value:AuxFunctions.numberToR(_arg1)});
_local3.push({name:_arg2[1], value:AuxFunctions.numberToG(_arg1)});
_local3.push({name:_arg2[2], value:AuxFunctions.numberToB(_arg1)});
return (_local3);
}
public static function _generic_point_splitter(_arg1:Point, _arg2:Array):Array{
var _local3:Array;
_local3 = new Array();
_local3.push({name:_arg2[0], value:_arg1.x});
_local3.push({name:_arg2[1], value:_arg1.y});
return (_local3);
}
public static function _generic_matrix_splitter(_arg1:Array, _arg2:Array):Array{
var _local3:Array;
var _local4:Number;
if (_arg1 == null){
_arg1 = _arg2[0].concat();
};
_local3 = new Array();
_local4 = 0;
while (_local4 < _arg1.length) {
_local3.push({name:_arg2[1][_local4], value:_arg1[_local4]});
_local4++;
};
return (_local3);
}
public static function _filter_splitter(_arg1:BitmapFilter, _arg2:Array, _arg3:Object=null):Array{
var _local4:Array;
_local4 = new Array();
if ((_arg1 is BevelFilter)){
_local4.push({name:"_Bevel_angle", value:BevelFilter(_arg1).angle});
_local4.push({name:"_Bevel_blurX", value:BevelFilter(_arg1).blurX});
_local4.push({name:"_Bevel_blurY", value:BevelFilter(_arg1).blurY});
_local4.push({name:"_Bevel_distance", value:BevelFilter(_arg1).distance});
_local4.push({name:"_Bevel_highlightAlpha", value:BevelFilter(_arg1).highlightAlpha});
_local4.push({name:"_Bevel_highlightColor", value:BevelFilter(_arg1).highlightColor});
_local4.push({name:"_Bevel_knockout", value:BevelFilter(_arg1).knockout});
_local4.push({name:"_Bevel_quality", value:BevelFilter(_arg1).quality});
_local4.push({name:"_Bevel_shadowAlpha", value:BevelFilter(_arg1).shadowAlpha});
_local4.push({name:"_Bevel_shadowColor", value:BevelFilter(_arg1).shadowColor});
_local4.push({name:"_Bevel_strength", value:BevelFilter(_arg1).strength});
_local4.push({name:"_Bevel_type", value:BevelFilter(_arg1).type});
} else {
if ((_arg1 is BlurFilter)){
_local4.push({name:"_Blur_blurX", value:BlurFilter(_arg1).blurX});
_local4.push({name:"_Blur_blurY", value:BlurFilter(_arg1).blurY});
_local4.push({name:"_Blur_quality", value:BlurFilter(_arg1).quality});
} else {
if ((_arg1 is ColorMatrixFilter)){
_local4.push({name:"_ColorMatrix_matrix", value:ColorMatrixFilter(_arg1).matrix});
} else {
if ((_arg1 is ConvolutionFilter)){
_local4.push({name:"_Convolution_alpha", value:ConvolutionFilter(_arg1).alpha});
_local4.push({name:"_Convolution_bias", value:ConvolutionFilter(_arg1).bias});
_local4.push({name:"_Convolution_clamp", value:ConvolutionFilter(_arg1).clamp});
_local4.push({name:"_Convolution_color", value:ConvolutionFilter(_arg1).color});
_local4.push({name:"_Convolution_divisor", value:ConvolutionFilter(_arg1).divisor});
_local4.push({name:"_Convolution_matrixX", value:ConvolutionFilter(_arg1).matrixX});
_local4.push({name:"_Convolution_matrixY", value:ConvolutionFilter(_arg1).matrixY});
_local4.push({name:"_Convolution_preserveAlpha", value:ConvolutionFilter(_arg1).preserveAlpha});
} else {
if ((_arg1 is DisplacementMapFilter)){
_local4.push({name:"_DisplacementMap_alpha", value:DisplacementMapFilter(_arg1).alpha});
_local4.push({name:"_DisplacementMap_color", value:DisplacementMapFilter(_arg1).color});
_local4.push({name:"_DisplacementMap_componentX", value:DisplacementMapFilter(_arg1).componentX});
_local4.push({name:"_DisplacementMap_componentY", value:DisplacementMapFilter(_arg1).componentY});
_local4.push({name:"_DisplacementMap_mapBitmap", value:DisplacementMapFilter(_arg1).mapBitmap});
_local4.push({name:"_DisplacementMap_mapPoint", value:DisplacementMapFilter(_arg1).mapPoint});
_local4.push({name:"_DisplacementMap_mode", value:DisplacementMapFilter(_arg1).mode});
_local4.push({name:"_DisplacementMap_scaleX", value:DisplacementMapFilter(_arg1).scaleX});
_local4.push({name:"_DisplacementMap_scaleY", value:DisplacementMapFilter(_arg1).scaleY});
} else {
if ((_arg1 is DropShadowFilter)){
_local4.push({name:"_DropShadow_alpha", value:DropShadowFilter(_arg1).alpha});
_local4.push({name:"_DropShadow_angle", value:DropShadowFilter(_arg1).angle});
_local4.push({name:"_DropShadow_blurX", value:DropShadowFilter(_arg1).blurX});
_local4.push({name:"_DropShadow_blurY", value:DropShadowFilter(_arg1).blurY});
_local4.push({name:"_DropShadow_color", value:DropShadowFilter(_arg1).color});
_local4.push({name:"_DropShadow_distance", value:DropShadowFilter(_arg1).distance});
_local4.push({name:"_DropShadow_hideObject", value:DropShadowFilter(_arg1).hideObject});
_local4.push({name:"_DropShadow_inner", value:DropShadowFilter(_arg1).inner});
_local4.push({name:"_DropShadow_knockout", value:DropShadowFilter(_arg1).knockout});
_local4.push({name:"_DropShadow_quality", value:DropShadowFilter(_arg1).quality});
_local4.push({name:"_DropShadow_strength", value:DropShadowFilter(_arg1).strength});
} else {
if ((_arg1 is GlowFilter)){
_local4.push({name:"_Glow_alpha", value:GlowFilter(_arg1).alpha});
_local4.push({name:"_Glow_blurX", value:GlowFilter(_arg1).blurX});
_local4.push({name:"_Glow_blurY", value:GlowFilter(_arg1).blurY});
_local4.push({name:"_Glow_color", value:GlowFilter(_arg1).color});
_local4.push({name:"_Glow_inner", value:GlowFilter(_arg1).inner});
_local4.push({name:"_Glow_knockout", value:GlowFilter(_arg1).knockout});
_local4.push({name:"_Glow_quality", value:GlowFilter(_arg1).quality});
_local4.push({name:"_Glow_strength", value:GlowFilter(_arg1).strength});
} else {
if ((_arg1 is GradientBevelFilter)){
_local4.push({name:"_GradientBevel_angle", value:GradientBevelFilter(_arg1).strength});
_local4.push({name:"_GradientBevel_blurX", value:GradientBevelFilter(_arg1).blurX});
_local4.push({name:"_GradientBevel_blurY", value:GradientBevelFilter(_arg1).blurY});
_local4.push({name:"_GradientBevel_distance", value:GradientBevelFilter(_arg1).distance});
_local4.push({name:"_GradientBevel_quality", value:GradientBevelFilter(_arg1).quality});
_local4.push({name:"_GradientBevel_strength", value:GradientBevelFilter(_arg1).strength});
_local4.push({name:"_GradientBevel_type", value:GradientBevelFilter(_arg1).type});
} else {
if ((_arg1 is GradientGlowFilter)){
_local4.push({name:"_GradientGlow_angle", value:GradientGlowFilter(_arg1).strength});
_local4.push({name:"_GradientGlow_blurX", value:GradientGlowFilter(_arg1).blurX});
_local4.push({name:"_GradientGlow_blurY", value:GradientGlowFilter(_arg1).blurY});
_local4.push({name:"_GradientGlow_distance", value:GradientGlowFilter(_arg1).distance});
_local4.push({name:"_GradientGlow_knockout", value:GradientGlowFilter(_arg1).knockout});
_local4.push({name:"_GradientGlow_quality", value:GradientGlowFilter(_arg1).quality});
_local4.push({name:"_GradientGlow_strength", value:GradientGlowFilter(_arg1).strength});
_local4.push({name:"_GradientGlow_type", value:GradientGlowFilter(_arg1).type});
} else {
trace("Tweener FilterShortcuts Error :: Unknown filter class used");
};
};
};
};
};
};
};
};
};
return (_local4);
}
}
}//package caurina.transitions.properties
Section 8 (1.38 KiB) ●
//AuxFunctions (caurina.transitions.AuxFunctions)
package caurina.transitions {
public class AuxFunctions {
public static function concatObjects(... _args):Object{
var _local2:Object;
var _local3:Object;
var _local4:int;
var _local5:String;
_local2 = {};
_local4 = 0;
while (_local4 < _args.length) {
_local3 = _args[_local4];
for (_local5 in _local3) {
if (_local3[_local5] == null){
delete _local2[_local5];
} else {
_local2[_local5] = _local3[_local5];
};
};
_local4++;
};
return (_local2);
}
public static function numberToG(_arg1:Number):Number{
return (((_arg1 & 0xFF00) >> 8));
}
public static function numberToR(_arg1:Number):Number{
return (((_arg1 & 0xFF0000) >> 16));
}
public static function isInArray(_arg1:String, _arg2:Array):Boolean{
var _local3:uint;
var _local4:uint;
_local3 = _arg2.length;
_local4 = 0;
while (_local4 < _local3) {
if (_arg2[_local4] == _arg1){
return (true);
};
_local4++;
};
return (false);
}
public static function getObjectLength(_arg1:Object):uint{
var _local2:uint;
var _local3:String;
_local2 = 0;
for (_local3 in _arg1) {
_local2++;
};
return (_local2);
}
public static function numberToB(_arg1:Number):Number{
return ((_arg1 & 0xFF));
}
}
}//package caurina.transitions
Section 9 (16.98 KiB) ● ● ●
//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 10 (2.12 KiB) ●
//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 11 (998 B)
//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 12 (716 B)
//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 13 (714 B)
//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 14 (26.17 KiB) ● ● ●
//Tweener (caurina.transitions.Tweener)
package caurina.transitions {
import flash.events.*;
import flash.display.*;
import flash.utils.*;
public class Tweener {
private static var _timeScale:Number = 1;
private static var _currentTimeFrame:Number;
private static var _specialPropertySplitterList:Object;
private static var _engineExists:Boolean = false;
private static var _specialPropertyModifierList:Object;
private static var _currentTime:Number;
private static var _tweenList:Array;
private static var _specialPropertyList:Object;
private static var _transitionList:Object;
private static var _inited:Boolean = false;
private static var __tweener_controller__:MovieClip;
public function Tweener(){
trace("Tweener is a static class and should not be instantiated.");
}
public static function registerSpecialPropertyModifier(_arg1:String, _arg2:Function, _arg3:Function):void{
var _local4:SpecialPropertyModifier;
if (!_inited){
init();
};
_local4 = new SpecialPropertyModifier(_arg2, _arg3);
_specialPropertyModifierList[_arg1] = _local4;
}
public static function registerSpecialProperty(_arg1:String, _arg2:Function, _arg3:Function, _arg4:Array=null, _arg5:Function=null):void{
var _local6:SpecialProperty;
if (!_inited){
init();
};
_local6 = new SpecialProperty(_arg2, _arg3, _arg4, _arg5);
_specialPropertyList[_arg1] = _local6;
}
public static function init(... _args):void{
_inited = true;
_transitionList = new Object();
Equations.init();
_specialPropertyList = new Object();
_specialPropertyModifierList = new Object();
_specialPropertySplitterList = new Object();
}
private static function updateTweens():Boolean{
var _local1:int;
if (_tweenList.length == 0){
return (false);
};
_local1 = 0;
while (_local1 < _tweenList.length) {
if ((((_tweenList[_local1] == undefined)) || (!(_tweenList[_local1].isPaused)))){
if (!updateTweenByIndex(_local1)){
removeTweenByIndex(_local1);
};
if (_tweenList[_local1] == null){
removeTweenByIndex(_local1, true);
_local1--;
};
};
_local1++;
};
return (true);
}
public static function addCaller(_arg1:Object=null, _arg2:Object=null):Boolean{
var _local3:Number;
var _local4:Array;
var _local5:Object;
var _local6:Number;
var _local7:Number;
var _local8:Function;
var _local9:TweenListObj;
var _local10:Number;
var _local11:String;
if (!Boolean(_arg1)){
return (false);
};
if ((_arg1 is Array)){
_local4 = _arg1.concat();
} else {
_local4 = [_arg1];
};
_local5 = _arg2;
if (!_inited){
init();
};
if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){
startEngine();
};
_local6 = (isNaN(_local5.time)) ? 0 : _local5.time;
_local7 = (isNaN(_local5.delay)) ? 0 : _local5.delay;
if (typeof(_local5.transition) == "string"){
_local11 = _local5.transition.toLowerCase();
_local8 = _transitionList[_local11];
} else {
_local8 = _local5.transition;
};
if (!Boolean(_local8)){
_local8 = _transitionList["easeoutexpo"];
};
_local3 = 0;
while (_local3 < _local4.length) {
if (_local5.useFrames == true){
_local9 = new TweenListObj(_local4[_local3], (_currentTimeFrame + (_local7 / _timeScale)), (_currentTimeFrame + ((_local7 + _local6) / _timeScale)), true, _local8, _local5.transitionParams);
} else {
_local9 = new TweenListObj(_local4[_local3], (_currentTime + ((_local7 * 1000) / _timeScale)), (_currentTime + (((_local7 * 1000) + (_local6 * 1000)) / _timeScale)), false, _local8, _local5.transitionParams);
};
_local9.properties = null;
_local9.onStart = _local5.onStart;
_local9.onUpdate = _local5.onUpdate;
_local9.onComplete = _local5.onComplete;
_local9.onOverwrite = _local5.onOverwrite;
_local9.onStartParams = _local5.onStartParams;
_local9.onUpdateParams = _local5.onUpdateParams;
_local9.onCompleteParams = _local5.onCompleteParams;
_local9.onOverwriteParams = _local5.onOverwriteParams;
_local9.onStartScope = _local5.onStartScope;
_local9.onUpdateScope = _local5.onUpdateScope;
_local9.onCompleteScope = _local5.onCompleteScope;
_local9.onOverwriteScope = _local5.onOverwriteScope;
_local9.onErrorScope = _local5.onErrorScope;
_local9.isCaller = true;
_local9.count = _local5.count;
_local9.waitFrames = _local5.waitFrames;
_tweenList.push(_local9);
if ((((_local6 == 0)) && ((_local7 == 0)))){
_local10 = (_tweenList.length - 1);
updateTweenByIndex(_local10);
removeTweenByIndex(_local10);
};
_local3++;
};
return (true);
}
public static function pauseAllTweens():Boolean{
var _local1:Boolean;
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
_local1 = false;
_local2 = 0;
while (_local2 < _tweenList.length) {
pauseTweenByIndex(_local2);
_local1 = true;
_local2++;
};
return (_local1);
}
public static function removeTweens(_arg1:Object, ... _args):Boolean{
var _local3:Array;
var _local4:uint;
_local3 = new Array();
_local4 = 0;
while (_local4 < _args.length) {
if ((((typeof(_args[_local4]) == "string")) && (!(AuxFunctions.isInArray(_args[_local4], _local3))))){
_local3.push(_args[_local4]);
};
_local4++;
};
return (affectTweens(removeTweenByIndex, _arg1, _local3));
}
public static function splitTweens(_arg1:Number, _arg2:Array):uint{
var _local3:TweenListObj;
var _local4:TweenListObj;
var _local5:uint;
var _local6:String;
var _local7:Boolean;
_local3 = _tweenList[_arg1];
_local4 = _local3.clone(false);
_local5 = 0;
while (_local5 < _arg2.length) {
_local6 = _arg2[_local5];
if (Boolean(_local3.properties[_local6])){
_local3.properties[_local6] = undefined;
delete _local3.properties[_local6];
};
_local5++;
};
for (_local6 in _local4.properties) {
_local7 = false;
_local5 = 0;
while (_local5 < _arg2.length) {
if (_arg2[_local5] == _local6){
_local7 = true;
break;
};
_local5++;
};
if (!_local7){
_local4.properties[_local6] = undefined;
delete _local4.properties[_local6];
};
};
_tweenList.push(_local4);
return ((_tweenList.length - 1));
}
public static function updateFrame():void{
_currentTimeFrame++;
}
public static function resumeTweenByIndex(_arg1:Number):Boolean{
var _local2:TweenListObj;
var _local3:Number;
_local2 = _tweenList[_arg1];
if ((((_local2 == null)) || (!(_local2.isPaused)))){
return (false);
};
_local3 = getCurrentTweeningTime(_local2);
_local2.timeStart = (_local2.timeStart + (_local3 - _local2.timePaused));
_local2.timeComplete = (_local2.timeComplete + (_local3 - _local2.timePaused));
_local2.timePaused = undefined;
_local2.isPaused = false;
return (true);
}
public static function getVersion():String{
return ("AS3 1.31.71");
}
public static function onEnterFrame(_arg1:Event):void{
var _local2:Boolean;
updateTime();
updateFrame();
_local2 = false;
_local2 = updateTweens();
if (!_local2){
stopEngine();
};
}
public static function updateTime():void{
_currentTime = getTimer();
}
private static function updateTweenByIndex(_arg1:Number):Boolean{
var tTweening:TweenListObj;
var isOver:Boolean;
var mustUpdate:Boolean;
var nv:Number;
var t:Number;
var b:Number;
var c:Number;
var d:Number;
var pName:String;
var eventScope:Object;
var tScope:Object;
var cTime:Number;
var tProperty:Object;
var pv:Number;
var i = _arg1;
tTweening = _tweenList[i];
if ((((tTweening == null)) || (!(Boolean(tTweening.scope))))){
return (false);
};
isOver = false;
cTime = getCurrentTweeningTime(tTweening);
if (cTime >= tTweening.timeStart){
tScope = tTweening.scope;
if (tTweening.isCaller){
do {
t = (((tTweening.timeComplete - tTweening.timeStart) / tTweening.count) * (tTweening.timesCalled + 1));
b = tTweening.timeStart;
c = (tTweening.timeComplete - tTweening.timeStart);
d = (tTweening.timeComplete - tTweening.timeStart);
nv = tTweening.transition(t, b, c, d);
} while (!(cTime >= nv));
} else {
mustUpdate = (((((tTweening.skipUpdates < 1)) || (!(tTweening.skipUpdates)))) || ((tTweening.updatesSkipped >= tTweening.skipUpdates)));
if (cTime >= tTweening.timeComplete){
isOver = true;
mustUpdate = true;
};
if (!tTweening.hasStarted){
if (Boolean(tTweening.onStart)){
eventScope = (Boolean(tTweening.onStartScope)) ? tTweening.onStartScope : tScope;
try {
tTweening.onStart.apply(eventScope, tTweening.onStartParams);
} catch(e:Error) {
handleError(tTweening, e, "onStart");
};
};
for (pName in tTweening.properties) {
if (tTweening.properties[pName].isSpecialProperty){
if (Boolean(_specialPropertyList[pName].preProcess)){
tTweening.properties[pName].valueComplete = _specialPropertyList[pName].preProcess(tScope, _specialPropertyList[pName].parameters, tTweening.properties[pName].originalValueComplete, tTweening.properties[pName].extra);
};
pv = _specialPropertyList[pName].getValue(tScope, _specialPropertyList[pName].parameters, tTweening.properties[pName].extra);
} else {
pv = tScope[pName];
};
tTweening.properties[pName].valueStart = (isNaN(pv)) ? tTweening.properties[pName].valueComplete : pv;
};
mustUpdate = true;
tTweening.hasStarted = true;
};
if (mustUpdate){
for (pName in tTweening.properties) {
tProperty = tTweening.properties[pName];
if (isOver){
nv = tProperty.valueComplete;
} else {
if (tProperty.hasModifier){
t = (cTime - tTweening.timeStart);
d = (tTweening.timeComplete - tTweening.timeStart);
nv = tTweening.transition(t, 0, 1, d, tTweening.transitionParams);
nv = tProperty.modifierFunction(tProperty.valueStart, tProperty.valueComplete, nv, tProperty.modifierParameters);
} else {
t = (cTime - tTweening.timeStart);
b = tProperty.valueStart;
c = (tProperty.valueComplete - tProperty.valueStart);
d = (tTweening.timeComplete - tTweening.timeStart);
nv = tTweening.transition(t, b, c, d, tTweening.transitionParams);
};
};
if (tTweening.rounded){
nv = Math.round(nv);
};
if (tProperty.isSpecialProperty){
_specialPropertyList[pName].setValue(tScope, nv, _specialPropertyList[pName].parameters, tTweening.properties[pName].extra);
} else {
tScope[pName] = nv;
};
};
tTweening.updatesSkipped = 0;
if (Boolean(tTweening.onUpdate)){
eventScope = (Boolean(tTweening.onUpdateScope)) ? tTweening.onUpdateScope : tScope;
try {
tTweening.onUpdate.apply(eventScope, tTweening.onUpdateParams);
} catch(e:Error) {
handleError(tTweening, e, "onUpdate");
};
};
} else {
tTweening.updatesSkipped++;
};
};
if (((isOver) && (Boolean(tTweening.onComplete)))){
eventScope = (Boolean(tTweening.onCompleteScope)) ? tTweening.onCompleteScope : tScope;
try {
tTweening.onComplete.apply(eventScope, tTweening.onCompleteParams);
} catch(e:Error) {
handleError(tTweening, e, "onComplete");
};
};
return (!(isOver));
};
return (true);
}
public static function setTimeScale(_arg1:Number):void{
var _local2:Number;
var _local3:Number;
if (isNaN(_arg1)){
_arg1 = 1;
};
if (_arg1 < 1E-5){
_arg1 = 1E-5;
};
if (_arg1 != _timeScale){
if (_tweenList != null){
_local2 = 0;
while (_local2 < _tweenList.length) {
_local3 = getCurrentTweeningTime(_tweenList[_local2]);
_tweenList[_local2].timeStart = (_local3 - (((_local3 - _tweenList[_local2].timeStart) * _timeScale) / _arg1));
_tweenList[_local2].timeComplete = (_local3 - (((_local3 - _tweenList[_local2].timeComplete) * _timeScale) / _arg1));
if (_tweenList[_local2].timePaused != undefined){
_tweenList[_local2].timePaused = (_local3 - (((_local3 - _tweenList[_local2].timePaused) * _timeScale) / _arg1));
};
_local2++;
};
};
_timeScale = _arg1;
};
}
public static function resumeAllTweens():Boolean{
var _local1:Boolean;
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
_local1 = false;
_local2 = 0;
while (_local2 < _tweenList.length) {
resumeTweenByIndex(_local2);
_local1 = true;
_local2++;
};
return (_local1);
}
private static function handleError(_arg1:TweenListObj, _arg2:Error, _arg3:String):void{
var eventScope:Object;
var pTweening = _arg1;
var pError = _arg2;
var pCallBackName = _arg3;
if (((Boolean(pTweening.onError)) && ((pTweening.onError is Function)))){
eventScope = (Boolean(pTweening.onErrorScope)) ? pTweening.onErrorScope : pTweening.scope;
try {
pTweening.onError.apply(eventScope, [pTweening.scope, pError]);
} catch(metaError:Error) {
printError(((((String(pTweening.scope) + " raised an error while executing the 'onError' handler. Original error:\n ") + pError.getStackTrace()) + "\nonError error: ") + metaError.getStackTrace()));
};
} else {
if (!Boolean(pTweening.onError)){
printError(((((String(pTweening.scope) + " raised an error while executing the '") + pCallBackName) + "'handler. \n") + pError.getStackTrace()));
};
};
}
private static function startEngine():void{
_engineExists = true;
_tweenList = new Array();
__tweener_controller__ = new MovieClip();
__tweener_controller__.addEventListener(Event.ENTER_FRAME, Tweener.onEnterFrame);
_currentTimeFrame = 0;
updateTime();
}
public static function removeAllTweens():Boolean{
var _local1:Boolean;
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
_local1 = false;
_local2 = 0;
while (_local2 < _tweenList.length) {
removeTweenByIndex(_local2);
_local1 = true;
_local2++;
};
return (_local1);
}
public static function addTween(_arg1:Object=null, _arg2:Object=null):Boolean{
var _local3:Number;
var _local4:Number;
var _local5:String;
var _local6:Array;
var _local7:Object;
var _local8:Number;
var _local9:Number;
var _local10:Array;
var _local11:Object;
var _local12:Object;
var _local13:Function;
var _local14:Object;
var _local15:TweenListObj;
var _local16:Number;
var _local17:Array;
var _local18:Array;
var _local19:Array;
var _local20:String;
if (!Boolean(_arg1)){
return (false);
};
if ((_arg1 is Array)){
_local6 = _arg1.concat();
} else {
_local6 = [_arg1];
};
_local7 = TweenListObj.makePropertiesChain(_arg2);
if (!_inited){
init();
};
if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){
startEngine();
};
_local8 = (isNaN(_local7.time)) ? 0 : _local7.time;
_local9 = (isNaN(_local7.delay)) ? 0 : _local7.delay;
_local10 = new Array();
_local11 = {time:true, delay:true, useFrames:true, skipUpdates:true, transition:true, transitionParams:true, onStart:true, onUpdate:true, onComplete:true, onOverwrite:true, onError:true, rounded:true, onStartParams:true, onUpdateParams:true, onCompleteParams:true, onOverwriteParams:true, onStartScope:true, onUpdateScope:true, onCompleteScope:true, onOverwriteScope:true, onErrorScope:true};
_local12 = new Object();
for (_local5 in _local7) {
if (!_local11[_local5]){
if (_specialPropertySplitterList[_local5]){
_local17 = _specialPropertySplitterList[_local5].splitValues(_local7[_local5], _specialPropertySplitterList[_local5].parameters);
_local3 = 0;
while (_local3 < _local17.length) {
if (_specialPropertySplitterList[_local17[_local3].name]){
_local18 = _specialPropertySplitterList[_local17[_local3].name].splitValues(_local17[_local3].value, _specialPropertySplitterList[_local17[_local3].name].parameters);
_local4 = 0;
while (_local4 < _local18.length) {
_local10[_local18[_local4].name] = {valueStart:undefined, valueComplete:_local18[_local4].value, arrayIndex:_local18[_local4].arrayIndex, isSpecialProperty:false};
_local4++;
};
} else {
_local10[_local17[_local3].name] = {valueStart:undefined, valueComplete:_local17[_local3].value, arrayIndex:_local17[_local3].arrayIndex, isSpecialProperty:false};
};
_local3++;
};
} else {
if (_specialPropertyModifierList[_local5] != undefined){
_local19 = _specialPropertyModifierList[_local5].modifyValues(_local7[_local5]);
_local3 = 0;
while (_local3 < _local19.length) {
_local12[_local19[_local3].name] = {modifierParameters:_local19[_local3].parameters, modifierFunction:_specialPropertyModifierList[_local5].getValue};
_local3++;
};
} else {
_local10[_local5] = {valueStart:undefined, valueComplete:_local7[_local5]};
};
};
};
};
for (_local5 in _local10) {
if (_specialPropertyList[_local5] != undefined){
_local10[_local5].isSpecialProperty = true;
} else {
if (_local6[0][_local5] == undefined){
printError((((("The property '" + _local5) + "' doesn't seem to be a normal object property of ") + String(_local6[0])) + " or a registered special property."));
};
};
};
for (_local5 in _local12) {
if (_local10[_local5] != undefined){
_local10[_local5].modifierParameters = _local12[_local5].modifierParameters;
_local10[_local5].modifierFunction = _local12[_local5].modifierFunction;
};
};
if (typeof(_local7.transition) == "string"){
_local20 = _local7.transition.toLowerCase();
_local13 = _transitionList[_local20];
} else {
_local13 = _local7.transition;
};
if (!Boolean(_local13)){
_local13 = _transitionList["easeoutexpo"];
};
_local3 = 0;
while (_local3 < _local6.length) {
_local14 = new Object();
for (_local5 in _local10) {
_local14[_local5] = new PropertyInfoObj(_local10[_local5].valueStart, _local10[_local5].valueComplete, _local10[_local5].valueComplete, _local10[_local5].arrayIndex, {}, _local10[_local5].isSpecialProperty, _local10[_local5].modifierFunction, _local10[_local5].modifierParameters);
};
if (_local7.useFrames == true){
_local15 = new TweenListObj(_local6[_local3], (_currentTimeFrame + (_local9 / _timeScale)), (_currentTimeFrame + ((_local9 + _local8) / _timeScale)), true, _local13, _local7.transitionParams);
} else {
_local15 = new TweenListObj(_local6[_local3], (_currentTime + ((_local9 * 1000) / _timeScale)), (_currentTime + (((_local9 * 1000) + (_local8 * 1000)) / _timeScale)), false, _local13, _local7.transitionParams);
};
_local15.properties = _local14;
_local15.onStart = _local7.onStart;
_local15.onUpdate = _local7.onUpdate;
_local15.onComplete = _local7.onComplete;
_local15.onOverwrite = _local7.onOverwrite;
_local15.onError = _local7.onError;
_local15.onStartParams = _local7.onStartParams;
_local15.onUpdateParams = _local7.onUpdateParams;
_local15.onCompleteParams = _local7.onCompleteParams;
_local15.onOverwriteParams = _local7.onOverwriteParams;
_local15.onStartScope = _local7.onStartScope;
_local15.onUpdateScope = _local7.onUpdateScope;
_local15.onCompleteScope = _local7.onCompleteScope;
_local15.onOverwriteScope = _local7.onOverwriteScope;
_local15.onErrorScope = _local7.onErrorScope;
_local15.rounded = _local7.rounded;
_local15.skipUpdates = _local7.skipUpdates;
removeTweensByTime(_local15.scope, _local15.properties, _local15.timeStart, _local15.timeComplete);
_tweenList.push(_local15);
if ((((_local8 == 0)) && ((_local9 == 0)))){
_local16 = (_tweenList.length - 1);
updateTweenByIndex(_local16);
removeTweenByIndex(_local16);
};
_local3++;
};
return (true);
}
public static function registerTransition(_arg1:String, _arg2:Function):void{
if (!_inited){
init();
};
_transitionList[_arg1] = _arg2;
}
public static function printError(_arg1:String):void{
trace(("## [Tweener] Error: " + _arg1));
}
private static function affectTweens(_arg1:Function, _arg2:Object, _arg3:Array):Boolean{
var _local4:Boolean;
var _local5:uint;
var _local6:Array;
var _local7:uint;
var _local8:uint;
var _local9:uint;
_local4 = false;
if (!Boolean(_tweenList)){
return (false);
};
_local5 = 0;
while (_local5 < _tweenList.length) {
if (((_tweenList[_local5]) && ((_tweenList[_local5].scope == _arg2)))){
if (_arg3.length == 0){
_arg1(_local5);
_local4 = true;
} else {
_local6 = new Array();
_local7 = 0;
while (_local7 < _arg3.length) {
if (Boolean(_tweenList[_local5].properties[_arg3[_local7]])){
_local6.push(_arg3[_local7]);
};
_local7++;
};
if (_local6.length > 0){
_local8 = AuxFunctions.getObjectLength(_tweenList[_local5].properties);
if (_local8 == _local6.length){
_arg1(_local5);
_local4 = true;
} else {
_local9 = splitTweens(_local5, _local6);
_arg1(_local9);
_local4 = true;
};
};
};
};
_local5++;
};
return (_local4);
}
public static function getTweens(_arg1:Object):Array{
var _local2:uint;
var _local3:String;
var _local4:Array;
if (!Boolean(_tweenList)){
return ([]);
};
_local4 = new Array();
_local2 = 0;
while (_local2 < _tweenList.length) {
if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){
for (_local3 in _tweenList[_local2].properties) {
_local4.push(_local3);
};
};
_local2++;
};
return (_local4);
}
public static function isTweening(_arg1:Object):Boolean{
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
_local2 = 0;
while (_local2 < _tweenList.length) {
if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){
return (true);
};
_local2++;
};
return (false);
}
public static function pauseTweenByIndex(_arg1:Number):Boolean{
var _local2:TweenListObj;
_local2 = _tweenList[_arg1];
if ((((_local2 == null)) || (_local2.isPaused))){
return (false);
};
_local2.timePaused = getCurrentTweeningTime(_local2);
_local2.isPaused = true;
return (true);
}
public static function getCurrentTweeningTime(_arg1:Object):Number{
return ((_arg1.useFrames) ? _currentTimeFrame : _currentTime);
}
public static function getTweenCount(_arg1:Object):Number{
var _local2:uint;
var _local3:Number;
if (!Boolean(_tweenList)){
return (0);
};
_local3 = 0;
_local2 = 0;
while (_local2 < _tweenList.length) {
if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){
_local3 = (_local3 + AuxFunctions.getObjectLength(_tweenList[_local2].properties));
};
_local2++;
};
return (_local3);
}
private static function stopEngine():void{
_engineExists = false;
_tweenList = null;
_currentTime = 0;
_currentTimeFrame = 0;
__tweener_controller__.removeEventListener(Event.ENTER_FRAME, Tweener.onEnterFrame);
__tweener_controller__ = null;
}
public static function removeTweensByTime(_arg1:Object, _arg2:Object, _arg3:Number, _arg4:Number):Boolean{
var removed:Boolean;
var removedLocally:Boolean;
var i:uint;
var tl:uint;
var pName:String;
var eventScope:Object;
var p_scope = _arg1;
var p_properties = _arg2;
var p_timeStart = _arg3;
var p_timeComplete = _arg4;
removed = false;
tl = _tweenList.length;
i = 0;
while (i < tl) {
if (((Boolean(_tweenList[i])) && ((p_scope == _tweenList[i].scope)))){
if ((((p_timeComplete > _tweenList[i].timeStart)) && ((p_timeStart < _tweenList[i].timeComplete)))){
removedLocally = false;
for (pName in _tweenList[i].properties) {
if (Boolean(p_properties[pName])){
if (Boolean(_tweenList[i].onOverwrite)){
eventScope = (Boolean(_tweenList[i].onOverwriteScope)) ? _tweenList[i].onOverwriteScope : _tweenList[i].scope;
try {
_tweenList[i].onOverwrite.apply(eventScope, _tweenList[i].onOverwriteParams);
} catch(e:Error) {
handleError(_tweenList[i], e, "onOverwrite");
};
};
_tweenList[i].properties[pName] = undefined;
delete _tweenList[i].properties[pName];
removedLocally = true;
removed = true;
};
};
if (removedLocally){
if (AuxFunctions.getObjectLength(_tweenList[i].properties) == 0){
removeTweenByIndex(i);
};
};
};
};
i = (i + 1);
};
return (removed);
}
public static function registerSpecialPropertySplitter(_arg1:String, _arg2:Function, _arg3:Array=null):void{
var _local4:SpecialPropertySplitter;
if (!_inited){
init();
};
_local4 = new SpecialPropertySplitter(_arg2, _arg3);
_specialPropertySplitterList[_arg1] = _local4;
}
public static function removeTweenByIndex(_arg1:Number, _arg2:Boolean=false):Boolean{
_tweenList[_arg1] = null;
if (_arg2){
_tweenList.splice(_arg1, 1);
};
return (true);
}
public static function resumeTweens(_arg1:Object, ... _args):Boolean{
var _local3:Array;
var _local4:uint;
_local3 = new Array();
_local4 = 0;
while (_local4 < _args.length) {
if ((((typeof(_args[_local4]) == "string")) && (!(AuxFunctions.isInArray(_args[_local4], _local3))))){
_local3.push(_args[_local4]);
};
_local4++;
};
return (affectTweens(resumeTweenByIndex, _arg1, _local3));
}
public static function pauseTweens(_arg1:Object, ... _args):Boolean{
var _local3:Array;
var _local4:uint;
_local3 = new Array();
_local4 = 0;
while (_local4 < _args.length) {
if ((((typeof(_args[_local4]) == "string")) && (!(AuxFunctions.isInArray(_args[_local4], _local3))))){
_local3.push(_args[_local4]);
};
_local4++;
};
return (affectTweens(pauseTweenByIndex, _arg1, _local3));
}
}
}//package caurina.transitions
Section 15 (7.16 KiB) ● ●
//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 16 (9.9 KiB) ● ●
//Adlib (com.tweegee.games.Adlib)
package com.tweegee.games {
import flash.events.*;
import flash.media.*;
import flash.utils.*;
import flash.errors.*;
public class Adlib {
public static const ALL_SOUNDS:String = "all";
public static const BG_ONLY:String = "bg";
public static const FX_ONLY:String = "fx";
public static var sounds:Object = new Object();
public static var channels:Dictionary = new Dictionary(true);
public static var fxVolume:Number = 1;
public static var globalVolume:Number = 1;
public static var oldVolume:Object = {fxVolume:1, bgVolume:1};
public static var sequenceSounds:Object = new Object();
public static var sequenceCounter:uint = 0;
public static var counter:uint = 0;
public static var bgVolume:Number = 1;
public function Adlib():void{
throw (new IllegalOperationError("Adlib is an abstract class and cannot be instantiated"));
}
public static function getParams(_arg1:String):Object{
if (sounds[_arg1] == null){
trace(("Adlib Error: Could not find the sound " + _arg1));
return (null);
};
return (sounds[_arg1]);
}
private static function _removeSequenceSound(_arg1:Object):void{
delete sequenceSounds[_arg1.name];
}
public static function setParams(_arg1:String, _arg2:Object):void{
if (sounds[_arg1] == null){
trace(("Adlib Error: Could not find the sound " + _arg1));
} else {
if (_arg2.volume != null){
sounds[_arg1].volume = _arg2.volume;
};
if (_arg2.pan != null){
sounds[_arg1].pan = _arg2.pan;
};
if (_arg2.loop != null){
sounds[_arg1].loop = _arg2.loop;
};
if (_arg2.once != null){
sounds[_arg1].once = _arg2.once;
};
if (_arg2.delay != null){
sounds[_arg1].delay = _arg2.delay;
};
if (_arg2.isBG != null){
sounds[_arg1].isBG = _arg2.isBG;
};
if (_arg2.onComplete != null){
sounds[_arg1].onComplete = _arg2.onComplete;
};
if (_arg2.onCompleteParams != null){
sounds[_arg1].onCompleteParams = _arg2.onCompleteParams;
};
};
}
public static function addSequence(... _args):void{
var _local2:Object;
var _local3:Object;
var _local4:Object;
var _local5:Object;
for each (_local5 in _args) {
if ((_local5 is Sound)){
_local2 = new Object();
_local2.volume = 1;
_local2.pan = 0;
_local2.loop = 0;
_local2.start = 0;
_local2.sound = _local5;
} else {
if ((_local5 is String)){
if (((!((sounds[_local5] == null))) && ((sounds[_local5].dispose == false)))){
_local2 = new Object();
_local2.sound = sounds[_local5].sound;
_local2.volume = sounds[_local5].volume;
_local2.pan = sounds[_local5].pan;
_local2.loop = sounds[_local5].loop;
_local2.start = sounds[_local5].start;
_local2.onComplete = sounds[_local5].onComplete;
_local2.onCompleteParams = sounds[_local5].onCompleteParams;
};
} else {
_local2 = _local5;
if (_local2.volume == null){
_local2.volume = 1;
};
if (_local2.pan == null){
_local2.pan = 0;
};
if (_local2.loop == null){
_local2.loop = 0;
};
if (_local2.start == null){
_local2.start = 0;
};
};
};
_local2.name = sequenceCounter;
var _local8 = sequenceCounter++;
sequenceSounds[_local8] = _local2;
if (_local3 != null){
_local3.nextSound = _local2;
};
_local3 = _local2;
if (_local4 == null){
_local4 = _local2;
};
};
_playSequenceSound(_local4);
}
public static function unMute(_arg1:String="fx"):void{
switch (_arg1){
case FX_ONLY:
fxVolume = oldVolume.fxVolume;
break;
case BG_ONLY:
bgVolume = oldVolume.bgVolume;
break;
case ALL_SOUNDS:
fxVolume = oldVolume.fxVolume;
bgVolume = oldVolume.bgVolume;
break;
};
_setVolume();
}
private static function _playSound(_arg1:Object):void{
_arg1.channel = _arg1.sound.play(_arg1.start, _arg1.loop, new SoundTransform((_arg1.volume * int((_arg1.isBG) ? bgVolume : fxVolume)), _arg1.pan));
if (_arg1.channel != null){
_arg1.channel.addEventListener(Event.SOUND_COMPLETE, handleSoundComplete);
channels[_arg1.channel] = _arg1.name;
};
}
private static function _setVolume():void{
var _local1:Object;
for each (_local1 in sounds) {
if (_local1.channel != null){
_local1.channel.soundTransform = new SoundTransform(((_local1.volume * _local1.isBG)) ? bgVolume : fxVolume, _local1.pan);
};
};
}
public static function getVolume(_arg1:String):Number{
switch (_arg1){
case FX_ONLY:
return (fxVolume);
case BG_ONLY:
return (bgVolume);
default:
return (NaN);
};
}
public static function mute(_arg1:String="fx"):void{
switch (_arg1){
case FX_ONLY:
fxVolume = 0;
break;
case BG_ONLY:
bgVolume = 0;
break;
case ALL_SOUNDS:
fxVolume = 0;
bgVolume = 0;
break;
};
_setVolume();
}
private static function checkAndPlay(_arg1:Object):Boolean{
if ((((_arg1.once == true)) && (isPlaying(_arg1.className)))){
return (false);
};
_playSound(_arg1);
return (true);
}
public static function setVolume(_arg1:Number, _arg2:String):void{
fxVolume = (oldVolume.fxVolume = _arg1);
bgVolume = (oldVolume.bgVolume = _arg1);
_setVolume();
}
private static function handleSequenceSoundComplete(_arg1:Event):void{
var _local2:String;
var _local3:Object;
_local2 = channels[_arg1.currentTarget];
_arg1.currentTarget.removeEventListener(Event.SOUND_COMPLETE, handleSequenceSoundComplete);
_local3 = sequenceSounds[_local2];
if (_local3.onComplete != null){
_local3.onComplete.apply(NaN, _local3.onCompleteParams);
};
delete _local3["channel"];
delete channels[_arg1.currentTarget];
if (_local3.nextSound != null){
_playSequenceSound(_local3.nextSound);
};
_removeSequenceSound(_local3);
}
public static function isMute(_arg1:String):Boolean{
switch (_arg1){
case FX_ONLY:
return ((fxVolume == 0));
case BG_ONLY:
return ((bgVolume == 0));
case ALL_SOUNDS:
return ((((fxVolume == 0)) && ((bgVolume == 0))));
};
return (false);
}
private static function isPlaying(_arg1:String):Boolean{
var _local2:Object;
for each (_local2 in sounds) {
if ((((_arg1 == _local2.className)) && (!((_local2.channel == null))))){
return (true);
};
};
return (false);
}
private static function handleSoundComplete(_arg1:Event):void{
var _local2:String;
var _local3:Object;
_local2 = channels[_arg1.currentTarget];
_arg1.currentTarget.removeEventListener(Event.SOUND_COMPLETE, handleSoundComplete);
_local3 = sounds[_local2];
if (_local3.onComplete != null){
_local3.onComplete.apply(NaN, _local3.onCompleteParams);
};
delete _local3["channel"];
delete channels[_arg1.currentTarget];
if (_local3.loop == int.MAX_VALUE){
checkAndPlay(_local3);
} else {
if (_local3.dispose){
_removeSound(_local3);
};
};
}
public static function playSound(_arg1:String):void{
var _local2:Object;
if (sounds[_arg1] == null){
trace(("Adlib Error: Could not find the sound " + _arg1));
} else {
_local2 = sounds[_arg1];
if (_local2.delay > 0){
sounds[_arg1].timeoutId = setTimeout(checkAndPlay, _local2.delay, _local2);
} else {
checkAndPlay(_local2);
};
};
}
public static function removeSound(_arg1:String, _arg2:Boolean=true):void{
if (sounds[_arg1] == null){
trace(("Adlib Error: Could not find the sound " + _arg1));
} else {
if (_arg2){
_stopSound(sounds[_arg1]);
};
_removeSound(sounds[_arg1]);
};
}
private static function _removeSound(_arg1:Object):void{
if (_arg1.timeoutId != null){
clearTimeout(_arg1.timeoutId);
};
delete sounds[_arg1.name];
}
public static function stopSound(_arg1:String):void{
if (sounds[_arg1] == null){
trace(("Adlib Error: Could not find the sound " + _arg1));
} else {
if (sounds[_arg1].channel != null){
_stopSound(sounds[_arg1]);
};
};
}
public static function addSound(_arg1:Sound, _arg2:Object=null):void{
if (_arg2 == null){
_arg2 = new Object();
};
_arg2.dispose = false;
if (_arg2.name == null){
if (_arg2.dontPlay == true){
return;
};
_arg2.name = generateName();
_arg2.dispose = true;
} else {
if (sounds[_arg2.name] != null){
_stopSound(sounds[_arg2.name]);
};
};
_arg2.sound = _arg1;
_arg2.className = getQualifiedClassName(_arg1);
if (_arg2.volume == null){
_arg2.volume = 1;
};
if (_arg2.pan == null){
_arg2.pan = 0;
};
if (_arg2.loop == null){
_arg2.loop = 0;
};
if (_arg2.once == null){
_arg2.once = false;
};
if (_arg2.delay == null){
_arg2.delay = 0;
};
if (_arg2.start == null){
_arg2.start = 0;
};
if (_arg2.isBG == null){
_arg2.isBG = false;
};
sounds[_arg2.name] = _arg2;
if (_arg2.dontPlay != true){
if (_arg2.delay > 0){
sounds[_arg2.name].timeoutId = setTimeout(checkAndPlay, _arg2.delay, _arg2);
} else {
checkAndPlay(_arg2);
};
};
}
private static function generateName():String{
return (String(counter++));
}
private static function _playSequenceSound(_arg1:Object):void{
_arg1.channel = _arg1.sound.play(_arg1.start, _arg1.loop, new SoundTransform(((_arg1.volume * _arg1.isBG)) ? bgVolume : fxVolume, _arg1.pan));
if (_arg1.channel != null){
_arg1.channel.addEventListener(Event.SOUND_COMPLETE, handleSequenceSoundComplete);
channels[_arg1.channel] = _arg1.name;
};
}
private static function _stopSound(_arg1:Object):void{
if (_arg1.channel != null){
delete channels[_arg1.channel];
_arg1.channel.removeEventListener(Event.SOUND_COMPLETE, handleSoundComplete);
_arg1.channel.stop();
_arg1.channel = null;
if (_arg1.dispose){
_removeSound(_arg1);
};
};
}
}
}//package com.tweegee.games
Section 17 (5.81 KiB) ● ●
//AdlibToolbar (AdlibToolbar)
package {
import flash.events.*;
import flash.filters.*;
import flash.display.*;
import flash.utils.*;
public class AdlibToolbar extends MovieClip {
private const OFF:Object;
private const ON:Object;
private var shown:Boolean;
private var _icon:String;
private var _height:Number;// = 0
private var buttons:Dictionary;
private var _position:String;
private var _animate:Boolean;
public var mc_Toolbar:MovieClip;
private var _width:Number;// = 0
private var spriteIcon:MovieClip;
public function AdlibToolbar():void{
ON = new ColorMatrixFilter([1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]);
OFF = new ColorMatrixFilter([1, 0, 0, 0, -100, 0, 1, 0, 0, -100, 0, 0, 1, 0, -100, 0, 0, 0, 1, 0, 0, 0, 0, 0]);
_width = 0;
_height = 0;
super();
addFrameScript(0, frame1, 14, frame15, 29, frame30);
buttons = new Dictionary();
initGUI();
draw();
initButton(mc_Toolbar.btn_FX);
initButton(mc_Toolbar.btn_All);
mc_Toolbar.mc_IconHolder.addEventListener(MouseEvent.ROLL_OVER, hanldeIconButtonEvent);
mc_Toolbar.mc_IconHolder.addEventListener(MouseEvent.ROLL_OUT, hanldeIconButtonEvent);
mc_Toolbar.mc_IconHolder.addEventListener(MouseEvent.CLICK, hanldeIconButtonEvent);
animate = true;
position = "top";
icon = "SpriteSoundIcon";
}
private function hanldeIconButtonEvent(_arg1:MouseEvent):void{
switch (_arg1.type){
case MouseEvent.ROLL_OVER:
if (spriteIcon != null){
spriteIcon.filters = new Array(new DropShadowFilter(0, 0, 0xFFFFFF, 1, 5, 5, 10));
};
break;
case MouseEvent.ROLL_OUT:
if (spriteIcon != null){
spriteIcon.filters = new Array(new DropShadowFilter(1, 45, 0, 1, 3, 3, 1, 3));
};
break;
case MouseEvent.CLICK:
if (shown){
hide();
} else {
show();
};
break;
};
}
private function initGUI():void{
_width = width;
_height = height;
scaleX = 1;
scaleY = 1;
}
public function get position():String{
return (_position);
}
protected function draw():void{
}
private function initButton(_arg1:MovieClip):void{
_arg1.buttonMode = true;
_arg1.addEventListener(MouseEvent.ROLL_OVER, handleButtonEvent);
_arg1.addEventListener(MouseEvent.ROLL_OUT, handleButtonEvent);
_arg1.addEventListener(MouseEvent.MOUSE_UP, handleButtonEvent);
_arg1.addEventListener(MouseEvent.MOUSE_DOWN, handleButtonEvent);
_arg1.addEventListener(MouseEvent.CLICK, handleButtonEvent);
buttons[_arg1] = true;
}
public function set position(_arg1:String):void{
_position = _arg1;
if (_position == "top"){
gotoAndStop(1);
mc_Toolbar.mc_IconHolder.y = 95;
} else {
if (_position == "bottom"){
mc_Toolbar.mc_IconHolder.y = -46;
gotoAndStop(15);
};
};
}
private function handleButtonEvent(_arg1:MouseEvent):void{
var button:MovieClip;
var Adlib:Class;
var evt = _arg1;
button = MovieClip(evt.currentTarget);
switch (evt.type){
case MouseEvent.ROLL_OVER:
buttons[button];
button.filters = new Array((buttons[button]) ? ON : OFF, new DropShadowFilter(0, 0, 0xFFFFFF, 1, 3, 3, 1, 3));
break;
case MouseEvent.ROLL_OUT:
case MouseEvent.MOUSE_UP:
button.filters = new Array((buttons[button]) ? ON : OFF, new DropShadowFilter(1, 45, 0, 1, 3, 3, 1, 3));
break;
case MouseEvent.MOUSE_DOWN:
button.filters = [(buttons[button]) ? ON : OFF, new DropShadowFilter(1, 45, 0, 1, 3, 3, 1, 3, true), new DropShadowFilter(0, 0, 0xFFFFFF, 1, 5, 5, 1.5, 3)];
break;
case MouseEvent.CLICK:
hide();
buttons[button] = !(buttons[button]);
button.filters = new Array((buttons[button]) ? ON : OFF, new DropShadowFilter(1, 45, 0, 1, 3, 3, 1, 3));
try {
Adlib = (getDefinitionByName("com.tweegee.games.Adlib") as Class);
if (button == mc_Toolbar.btn_FX){
if (Adlib["isMute"].call(NaN, Adlib.FX_ONLY)){
Adlib["unMute"].call(NaN, Adlib.FX_ONLY);
} else {
Adlib["mute"].call(NaN, Adlib.FX_ONLY);
};
} else {
if (button == mc_Toolbar.btn_All){
if (Adlib["isMute"].call(NaN, Adlib.BG_ONLY)){
Adlib["unMute"].call(NaN, Adlib.BG_ONLY);
} else {
Adlib["mute"].call(NaN, Adlib.BG_ONLY);
};
};
};
} catch(err:Error) {
};
break;
};
}
private function hide():void{
if (shown){
if (position == "top"){
gotoAndPlay(16);
} else {
if (position == "bottom"){
gotoAndPlay(2);
};
};
shown = false;
};
}
function frame1(){
stop();
}
public function setSize(_arg1:Number, _arg2:Number):void{
_width = _arg1;
_height = _arg2;
draw();
}
function frame15(){
stop();
}
public function get icon():String{
return (_icon);
}
function frame30(){
stop();
}
public function set animate(_arg1:Boolean):void{
_animate = _arg1;
if (_animate){
mc_Toolbar.mc_IconHolder.play();
} else {
mc_Toolbar.mc_IconHolder.gotoAndStop(15);
};
}
public function get animate():Boolean{
return (_animate);
}
public function set icon(_arg1:String):void{
var iconClass:Class;
var value = _arg1;
_icon = value;
try {
iconClass = (getDefinitionByName(icon) as Class);
if (iconClass != null){
spriteIcon = (new (iconClass) as MovieClip);
spriteIcon.buttonMode = true;
mc_Toolbar.mc_IconHolder.mc_Icon.addChild(spriteIcon);
spriteIcon.filters = new Array(new DropShadowFilter(1, 45, 0, 1, 3, 3, 1, 3));
mc_Toolbar.mc_IconHolder.mc_Icon.getChildAt(0).alpha = 0;
};
} catch(err:Error) {
};
animate = animate;
}
private function show():void{
if (!shown){
if (position == "top"){
gotoAndPlay(2);
} else {
if (position == "bottom"){
gotoAndPlay(16);
};
};
shown = true;
};
}
}
}//package
Section 18 (295 B)
//auntDisappear (auntDisappear)
package {
import flash.display.*;
public dynamic class auntDisappear extends MovieClip {
public function auntDisappear(){
addFrameScript(0, frame1, 11, frame12);
}
function frame12(){
stop();
}
function frame1(){
stop();
}
}
}//package
Section 19 (938 B)
//Aunties (Aunties)
package {
public class Aunties {
private var _points:int;
private var _speed:Number;
private var _reduceValue:int;
private var _auntyObj:String;
private var _type:int;
public function Aunties():void{
}
public function get points():int{
return (_points);
}
public function get auntyObj():String{
return (_auntyObj);
}
public function set points(_arg1:int):void{
_points = _arg1;
}
public function get speed():Number{
return (_speed);
}
public function get reduceValue():int{
return (_reduceValue);
}
public function set type(_arg1:int):void{
_type = _arg1;
}
public function set speed(_arg1:Number):void{
_speed = _arg1;
}
public function set reduceValue(_arg1:int):void{
_reduceValue = _arg1;
}
public function get type():int{
return (_type);
}
public function set auntyObj(_arg1:String):void{
_auntyObj = _arg1;
}
}
}//package
Section 20 (3.83 KiB) ●
//Aunty (Aunty)
package {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import com.tweegee.games.*;
import caurina.transitions.properties.*;
import flash.utils.*;
public class Aunty extends MovieClip {
private var _auntyHug:MovieClip;
private var _endWidth:Number;
public var isCardMode:Boolean;
private var _type:int;
private var _speed:Number;
private var _endHeight:Number;
private var _auntyWalk:MovieClip;
private var _endX:Number;
private var _angle:Number;
public static const CHECK_HIT:String = "check hit";
public static const REMOVE_AUNTY:String = "remove aunty";
public static const END_HUG:String = "end hug";
public function Aunty(_arg1:String, _arg2:Number, _arg3:int):void{
var _local4:String;
var _local5:Class;
var _local6:String;
var _local7:Class;
super();
DisplayShortcuts.init();
Adlib.addSound(new twingle(), {name:"pinch", volume:0.7, dontPlay:true});
_speed = _arg2;
_type = _arg3;
_local4 = (_arg1 + "Walk");
_local5 = (getDefinitionByName(_local4) as Class);
_auntyWalk = new (_local5);
_local6 = (_arg1 + "Hug");
_local7 = (getDefinitionByName(_local6) as Class);
_auntyHug = new (_local7);
}
public function get getWidth():Number{
return (_endWidth);
}
public function beginMove(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:String):void{
var startX = _arg1;
var startY = _arg2;
var endX = _arg3;
var endY = _arg4;
var moveTime = _arg5;
var startScale = _arg6;
var trans = _arg7;
this.alpha = 0;
this.addChild(_auntyWalk);
_angle = ((endY - startY) / (endX - startX));
_endWidth = this.width;
_endX = endX;
Tweener.addTween(this, {scaleX:startScale, scaleY:startScale, x:startX, y:startY});
Tweener.addTween(this, {alpha:1, time:0.3});
Tweener.addTween(this, {scaleX:1, scaleY:1, x:endX, y:endY, time:moveTime, delay:0.3, transition:trans, onComplete:function (){
dispatchEvent(new Event("check hit"));
}});
}
public function handleCard():void{
var puff:MovieClip;
isCardMode = true;
Tweener.removeTweens(this.getChildAt(0), "x", "y", "scaleX", "scaleY");
puff = new auntDisappear();
puff.x = this.getChildAt(0).x;
puff.y = this.getChildAt(0).y;
addChild(puff);
Tweener.addTween(puff, {_frame:puff.totalFrames, time:0.8, transition:"EaseInSine", onComplete:function (){
removeChild(puff);
puff = null;
}});
Tweener.addTween(this.getChildAt(0), {alpha:0, time:0.8, onComplete:function (){
dispatchEvent(new Event("remove aunty"));
}});
}
public function fadeOut():void{
var newX:Number;
newX = (-(((this.y - (this.y + 20)) / _angle)) + this.x);
Tweener.addTween(this, {width:(this.width * 1.1), height:(this.height * 1.1), alpha:0, x:newX, y:(this.y + 20), time:0.6, transition:"linear", onComplete:function (){
dispatchEvent(new Event("remove aunty"));
}});
}
private function doHug():void{
removeChildAt(0);
addChild(_auntyHug);
Adlib.playSound("pinch");
Tweener.addTween(this.getChildAt(0), {_frame:1});
Tweener.addTween(this.getChildAt(0), {delay:0.6, onComplete:function (){
dispatchEvent(new Event("end hug"));
}});
Tweener.addTween(this.getChildAt(0), {_frame:MovieClip(this.getChildAt(0)).totalFrames, time:1, transition:"linear"});
Tweener.addTween(this.getChildAt(0), {alpha:0, time:0.3, delay:0.9, transition:"linear", onComplete:function (){
dispatchEvent(new Event("remove aunty"));
}});
}
public function erase():void{
this.removeChildAt(0);
_auntyWalk = null;
_auntyHug = null;
}
public function get type():int{
return (_type);
}
public function handleHug(_arg1:Number):void{
Tweener.addTween(this, {x:(_arg1 - 20), time:0.5, onComplete:doHug()});
}
public function get endX():Number{
return (_endX);
}
}
}//package
Section 21 (291 B)
//auntyFat1Hug (auntyFat1Hug)
package {
import flash.display.*;
public dynamic class auntyFat1Hug extends MovieClip {
public function auntyFat1Hug(){
addFrameScript(0, frame1, 43, frame44);
}
function frame1(){
stop();
}
function frame44(){
stop();
}
}
}//package
Section 22 (168 B)
//auntyFat1Walk (auntyFat1Walk)
package {
import flash.display.*;
public dynamic class auntyFat1Walk extends MovieClip {
public var hit:MovieClip;
}
}//package
Section 23 (291 B)
//auntyFat2Hug (auntyFat2Hug)
package {
import flash.display.*;
public dynamic class auntyFat2Hug extends MovieClip {
public function auntyFat2Hug(){
addFrameScript(0, frame1, 33, frame34);
}
function frame1(){
stop();
}
function frame34(){
stop();
}
}
}//package
Section 24 (168 B)
//auntyFat2Walk (auntyFat2Walk)
package {
import flash.display.*;
public dynamic class auntyFat2Walk extends MovieClip {
public var hit:MovieClip;
}
}//package
Section 25 (291 B)
//auntyFat3Hug (auntyFat3Hug)
package {
import flash.display.*;
public dynamic class auntyFat3Hug extends MovieClip {
public function auntyFat3Hug(){
addFrameScript(0, frame1, 35, frame36);
}
function frame1(){
stop();
}
function frame36(){
stop();
}
}
}//package
Section 26 (168 B)
//auntyFat3Walk (auntyFat3Walk)
package {
import flash.display.*;
public dynamic class auntyFat3Walk extends MovieClip {
public var hit:MovieClip;
}
}//package
Section 27 (312 B)
//barsPanel (barsPanel)
package {
import flash.display.*;
import flash.text.*;
public dynamic class barsPanel extends MovieClip {
public var card:MovieClip;
public var level_txt:TextField;
public var score_txt:TextField;
public var lifeBar:MovieClip;
public var card_txt:TextField;
}
}//package
Section 28 (2.62 KiB) ●
//BonusObj (BonusObj)
package {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import caurina.transitions.properties.*;
import flash.utils.*;
public class BonusObj extends MovieClip {
private var _type:int;
private var _speed:Number;
private var _angle:Number;
public static const REMOVE_OBJ:String = "remove obj";
public static const CHECK_HIT:String = "check hit";
public function BonusObj(_arg1, _arg2, _arg3):void{
var _local4:String;
var _local5:Class;
var _local6:MovieClip;
super();
DisplayShortcuts.init();
FilterShortcuts.init();
_speed = _arg2;
_type = _arg3;
this.alpha = 0;
_local4 = (_arg1 + _arg3);
_local5 = (getDefinitionByName(_local4) as Class);
_local6 = new (_local5);
addChild(_local6);
}
public function beginMove(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:String, _arg8:Number, _arg9:Number):void{
var startX = _arg1;
var startY = _arg2;
var endX = _arg3;
var endY = _arg4;
var moveTime = _arg5;
var startScale = _arg6;
var trans = _arg7;
var finalX = _arg8;
var speedMult = _arg9;
_angle = ((endY - startY) / (endX - startX));
Tweener.addTween(this, {scaleX:startScale, scaleY:startScale, x:startX, y:startY});
Tweener.addTween(this, {alpha:1, time:0.3});
Tweener.addTween(this, {scaleX:1, scaleY:1, x:endX, y:endY, time:moveTime, delay:0.3, transition:trans, onComplete:function (){
fadeOut(finalX, speedMult);
}});
}
public function fadeOut(_arg1:Number, _arg2:Number):void{
var endY:Number;
var moveTime:Number;
var endX = _arg1;
var speedMult = _arg2;
endY = (this.y + (this.height * 1.5));
moveTime = (((((this.y / endY) * (1 - _speed)) + _speed) * speedMult) / 2);
Tweener.addTween(this, {scaleX:1.3, scaleY:1.3, transition:"linear", x:endX, y:endY, time:moveTime, onUpdate:function (){
dispatchEvent(new Event("check hit"));
}, onComplete:function (){
dispatchEvent(new Event("remove obj"));
}});
}
public function handleHit():void{
Tweener.removeTweens(this);
Tweener.addTween(this, {width:(this.width / 1.1), _Glow_color:0xFFFF00, _Glow_strength:2, _Glow_alpha:0.7, _Glow_blurX:15, _Glow_blurY:15, time:0.3, transition:"easeInSine"});
Tweener.addTween(this, {alpha:0, time:0.2, delay:0.3, transition:"linear", onComplete:function (){
dispatchEvent(new Event("remove obj"));
}});
}
public function get type():int{
return (_type);
}
public function erase():void{
var _local1:MovieClip;
_local1 = MovieClip(this.getChildAt(0));
removeChild(_local1);
_local1 = null;
}
}
}//package
Section 29 (593 B)
//Candies (Candies)
package {
public class Candies {
private var _addPoints:int;
private var _speed:Number;
private var _type:int;
public function Candies():void{
}
public function get addPoints():int{
return (_addPoints);
}
public function set speed(_arg1:Number):void{
_speed = _arg1;
}
public function set addPoints(_arg1:int):void{
_addPoints = _arg1;
}
public function set type(_arg1:int):void{
_type = _arg1;
}
public function get type():int{
return (_type);
}
public function get speed():Number{
return (_speed);
}
}
}//package
Section 30 (118 B)
//candy1 (candy1)
package {
import flash.display.*;
public dynamic class candy1 extends MovieClip {
}
}//package
Section 31 (118 B)
//candy2 (candy2)
package {
import flash.display.*;
public dynamic class candy2 extends MovieClip {
}
}//package
Section 32 (118 B)
//candy3 (candy3)
package {
import flash.display.*;
public dynamic class candy3 extends MovieClip {
}
}//package
Section 33 (118 B)
//candy4 (candy4)
package {
import flash.display.*;
public dynamic class candy4 extends MovieClip {
}
}//package
Section 34 (118 B)
//candy5 (candy5)
package {
import flash.display.*;
public dynamic class candy5 extends MovieClip {
}
}//package
Section 35 (109 B)
//cat (cat)
package {
import flash.display.*;
public dynamic class cat extends MovieClip {
}
}//package
Section 36 (112 B)
//catHis (catHis)
package {
import flash.media.*;
public dynamic class catHis extends Sound {
}
}//package
Section 37 (124 B)
//ceiling1 (ceiling1)
package {
import flash.display.*;
public dynamic class ceiling1 extends MovieClip {
}
}//package
Section 38 (124 B)
//ceiling2 (ceiling2)
package {
import flash.display.*;
public dynamic class ceiling2 extends MovieClip {
}
}//package
Section 39 (124 B)
//ceiling3 (ceiling3)
package {
import flash.display.*;
public dynamic class ceiling3 extends MovieClip {
}
}//package
Section 40 (124 B)
//ceiling4 (ceiling4)
package {
import flash.display.*;
public dynamic class ceiling4 extends MovieClip {
}
}//package
Section 41 (124 B)
//ceiling5 (ceiling5)
package {
import flash.display.*;
public dynamic class ceiling5 extends MovieClip {
}
}//package
Section 42 (124 B)
//ceiling6 (ceiling6)
package {
import flash.display.*;
public dynamic class ceiling6 extends MovieClip {
}
}//package
Section 43 (124 B)
//ceiling7 (ceiling7)
package {
import flash.display.*;
public dynamic class ceiling7 extends MovieClip {
}
}//package
Section 44 (124 B)
//ceiling8 (ceiling8)
package {
import flash.display.*;
public dynamic class ceiling8 extends MovieClip {
}
}//package
Section 45 (118 B)
//clickBtn (clickBtn)
package {
import flash.media.*;
public dynamic class clickBtn extends Sound {
}
}//package
Section 46 (124 B)
//coverSqr (coverSqr)
package {
import flash.display.*;
public dynamic class coverSqr extends MovieClip {
}
}//package
Section 47 (118 B)
//doorbell (doorbell)
package {
import flash.media.*;
public dynamic class doorbell extends Sound {
}
}//package
Section 48 (121 B)
//doorClose (doorClose)
package {
import flash.media.*;
public dynamic class doorClose extends Sound {
}
}//package
Section 49 (127 B)
//doorLeft1 (doorLeft1)
package {
import flash.display.*;
public dynamic class doorLeft1 extends MovieClip {
}
}//package
Section 50 (127 B)
//doorLeft2 (doorLeft2)
package {
import flash.display.*;
public dynamic class doorLeft2 extends MovieClip {
}
}//package
Section 51 (306 B)
//DoorOpen (DoorOpen)
package {
import flash.display.*;
public class DoorOpen extends MovieClip {
public function DoorOpen():void{
}
public function erase():void{
var _local1:MovieClip;
_local1 = MovieClip(this.getChildAt(0));
removeChild(_local1);
_local1 = null;
}
}
}//package
Section 52 (323 B)
//doorOpenLeft1 (doorOpenLeft1)
package {
import flash.display.*;
public dynamic class doorOpenLeft1 extends MovieClip {
public var hit:MovieClip;
public function doorOpenLeft1(){
addFrameScript(0, frame1, 9, frame10);
}
function frame10(){
stop();
}
function frame1(){
stop();
}
}
}//package
Section 53 (323 B)
//doorOpenLeft2 (doorOpenLeft2)
package {
import flash.display.*;
public dynamic class doorOpenLeft2 extends MovieClip {
public var hit:MovieClip;
public function doorOpenLeft2(){
addFrameScript(0, frame1, 9, frame10);
}
function frame10(){
stop();
}
function frame1(){
stop();
}
}
}//package
Section 54 (327 B)
//doorOpenRight1 (doorOpenRight1)
package {
import flash.display.*;
public dynamic class doorOpenRight1 extends MovieClip {
public var hit:MovieClip;
public function doorOpenRight1(){
addFrameScript(0, frame1, 9, frame10);
}
function frame10(){
stop();
}
function frame1(){
stop();
}
}
}//package
Section 55 (327 B)
//doorOpenRight2 (doorOpenRight2)
package {
import flash.display.*;
public dynamic class doorOpenRight2 extends MovieClip {
public var hit:MovieClip;
public function doorOpenRight2(){
addFrameScript(0, frame1, 9, frame10);
}
function frame10(){
stop();
}
function frame1(){
stop();
}
}
}//package
Section 56 (130 B)
//doorRight1 (doorRight1)
package {
import flash.display.*;
public dynamic class doorRight1 extends MovieClip {
}
}//package
Section 57 (130 B)
//doorRight2 (doorRight2)
package {
import flash.display.*;
public dynamic class doorRight2 extends MovieClip {
}
}//package
Section 58 (118 B)
//doors1 (doors1)
package {
import flash.display.*;
public dynamic class doors1 extends MovieClip {
}
}//package
Section 59 (118 B)
//doors2 (doors2)
package {
import flash.display.*;
public dynamic class doors2 extends MovieClip {
}
}//package
Section 60 (118 B)
//doors3 (doors3)
package {
import flash.display.*;
public dynamic class doors3 extends MovieClip {
}
}//package
Section 61 (222 B)
//endScreen (endScreen)
package {
import flash.display.*;
import flash.text.*;
public dynamic class endScreen extends MovieClip {
public var playAgain_btn:MovieClip;
public var score_txt:TextField;
}
}//package
Section 62 (46.3 KiB) ● ● ● ●
//GameEngine (GameEngine)
package {
import flash.events.*;
import caurina.transitions.*;
import flash.geom.*;
import flash.display.*;
import com.tweegee.games.*;
import caurina.transitions.properties.*;
import flash.utils.*;
import flash.text.*;
public class GameEngine extends MovieClip {
private const minScale:Number = 0.06;
private const minWallScale:Number = 0.1;
private var transitionType:String;
private var _gifts:Array;
private var _aunties:Array;
private var _activeAuntyArr:Array;
private var _roomObjTimer:Timer;
private var _giftTimer:Timer;
private var _wallsTimer:Timer;
private var _activeObjsArr:Array;
private var _candies:Array;
private var _cardsNum:int;
private var _levels:Array;
private var msgColorArr:Array;
private var doorOpenDelayCount:Number;
private var _HERO_LIFE:int;// = 100
private var _isFirstEvent:Boolean;
private var _cover:Sprite;
private var _levelNum:int;
private var _keys:Array;
private var _hero:Sprite;
private var _doorReduceValue:int;
private var _currLevel:Sprite;
private var _objsCont:Sprite;
private var _sortYTimer:Timer;
private var startDoor:MovieClip;
private var startTransitionType:String;
private var _roomObjs:Array;
private var staticMode:Boolean;
private var _leftBord:Number;
private var _startX:Number;
private var _startY:Number;
private var _currWallInd:int;
private var _auntyTimer:Timer;
private var _currCandyInd:Number;
private var _heroLife:int;
private var _wallCont:Sprite;
private var _wallsSpeed:Number;
private var _candyTimer:Timer;
private var _score:Number;
private var _barsPanel:Sprite;
private var _endY:Number;
private var _endDoor:MovieClip;
private var _rightBord:Number;
private var _stage:Stage;
public static const LEVEL_END:String = "level end";
public static const GAME_END:String = "game end";
public static const GAME_CLEARED:String = "game cleared";
public function GameEngine(_arg1):void{
_HERO_LIFE = 100;
_heroLife = _HERO_LIFE;
super();
_stage = _arg1;
DisplayShortcuts.init();
ColorShortcuts.init();
FilterShortcuts.init();
this.setGameSettings();
}
private function handleAuntyTimer(_arg1:TimerEvent):void{
if (_levels[(_levelNum - 1)].auntyArr.length > 0){
this.addAunty(_startY);
} else {
_auntyTimer.stop();
};
}
private function handleKeyUp(_arg1:KeyboardEvent):void{
var _local2:int;
_local2 = 0;
while (_local2 < _keys.length) {
if (_keys[_local2].code == _arg1.keyCode){
_keys[_local2].isPressed = false;
Object(_hero).setKeyArr(_local2, false);
_isFirstEvent = true;
if (_keys[_local2].endFuncToCall != ""){
var _local3 = Object(_hero);
_local3[_keys[_local2].endFuncToCall]();
};
};
_local2++;
};
}
private function handleCandyTimer(_arg1:TimerEvent):void{
var _local2:Number;
var _local3:Number;
if (_levels[(_levelNum - 1)].candyArr.length > 0){
this.addCandy(_startY);
_local2 = _levels[(_levelNum - 1)].addCandyDelay;
_local3 = Math.floor(((Math.random() * _local2) + (_local2 / 2)));
_candyTimer.delay = _local3;
} else {
_candyTimer.stop();
};
}
private function addRoomObj(_arg1:Number):void{
var _local2:int;
var _local3:int;
var _local4:String;
var _local5:Number;
var _local6:MovieClip;
var _local7:Number;
var _local8:Number;
var _local9:String;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
var _local14:Number;
var _local15:Number;
_local2 = (Math.random() * _levels[(_levelNum - 1)].roomObjArr.length);
_local3 = _levels[(_levelNum - 1)].roomObjArr[_local2];
_local4 = _roomObjs[(_local3 - 1)].name;
_local5 = _roomObjs[(_local3 - 1)].speed;
_local6 = new RoomObj(_local4, _local3, _local5);
_levels[(_levelNum - 1)].roomObjArr.splice(0, 1);
_local6.name = "RoomObj";
_local6.addEventListener("check hit", checkIfHitObj);
_local6.addEventListener("remove obj", callRemoveObj);
_activeObjsArr.push(_local6);
_objsCont.addChildAt(_local6, 0);
_local7 = _startX;
_local8 = ((((_arg1 - _startY) / (_endY - _startY)) * (1 - 0.02)) + 0.02);
if (_local4 == "cat"){
_local10 = (_leftBord + _local6.width);
} else {
_local14 = (_leftBord + (_local6.width / 2));
_local15 = (_rightBord - (_local6.width / 2));
_local10 = ((Math.random() * (_local15 - _local14)) + _local14);
};
if (_arg1 == _startY){
_local7 = _startX;
_local9 = transitionType;
} else {
_local7 = this.calcX(_startX, _startY, _local10, _endY, _arg1);
_local9 = startTransitionType;
};
_local11 = (((((_arg1 - _startY) / (_endY - _startY)) * (1 - _local5)) + _local5) * _levels[(_levelNum - 1)].speedMult);
_local12 = (_endY + (_local6.height * 1.5));
_local13 = calcX(_startX, _startY, _local10, _endY, _local12);
Object(_local6).beginMove(_local7, _arg1, _local10, _endY, _local11, _local8, _local9, _local13, _levels[(_levelNum - 1)].speedMult);
}
public function setLevel(_arg1):void{
var levelName:String;
var levelRef:Class;
var i:int;
var j:int;
var k:int;
var l:int;
var p:int;
var levelNum = _arg1;
_levelNum = levelNum;
levelName = ("level" + _levelNum);
levelRef = (getDefinitionByName(levelName) as Class);
_currLevel = new (levelRef);
_isFirstEvent = true;
staticMode = false;
_currCandyInd = 0;
_cardsNum = (_cardsNum + _levels[(_levelNum - 1)].addCards);
_barsPanel["card"].alpha = 1;
_activeObjsArr = new Array();
_activeAuntyArr = new Array();
_objsCont = new Sprite();
_currWallInd = 0;
doorOpenDelayCount = 0;
_wallCont = new Sprite();
_wallCont.x = 390;
_wallCont.y = 199;
_auntyTimer.delay = _levels[(_levelNum - 1)].addAuntyDelay;
_giftTimer.delay = _levels[(_levelNum - 1)].addGiftDelay;
_candyTimer.delay = _levels[(_levelNum - 1)].addCandyDelay;
_roomObjTimer.delay = _levels[(_levelNum - 1)].addRoomObjDelay;
_wallsTimer.delay = _levels[(_levelNum - 1)].wallsDelay;
i = 0;
while (i < _keys.length) {
Object(_hero).setKeyArr(i, false);
i = (i + 1);
};
j = 0;
while (j < _levels[(_levelNum - 1)].startObjsYPos[0].length) {
this.addAunty(_levels[(_levelNum - 1)].startObjsYPos[0][j]);
j = (j + 1);
};
k = 0;
while (k < _levels[(_levelNum - 1)].startObjsYPos[1].length) {
this.addGift(_levels[(_levelNum - 1)].startObjsYPos[1][k]);
k = (k + 1);
};
l = 0;
while (l < _levels[(_levelNum - 1)].startObjsYPos[2].length) {
this.addCandy(_levels[(_levelNum - 1)].startObjsYPos[2][l]);
l = (l + 1);
};
p = 0;
while (p < _levels[(_levelNum - 1)].startObjsYPos[3].length) {
this.addRoomObj(_levels[(_levelNum - 1)].startObjsYPos[3][p]);
p = (p + 1);
};
_auntyTimer.start();
_giftTimer.start();
_candyTimer.start();
_roomObjTimer.start();
_sortYTimer.start();
_wallsTimer.start();
_barsPanel["level_txt"].text = String(_levelNum);
_barsPanel["score_txt"].text = String(_score);
_barsPanel["card_txt"].text = String(_cardsNum);
_currLevel.addChild(_wallCont);
_currLevel.addChild(_objsCont);
_currLevel.addChild(_barsPanel);
addChildAt(_currLevel, 0);
this.arrangeObjsByY();
this.handleStartWalls();
Adlib.playSound("squick");
Tweener.addTween(startDoor, {_frame:MovieClip(startDoor).totalFrames, delay:0.3, time:0.6, transition:"linear", onUpdate:function (){
startDoor["level_txt"].text = ((Messages.LEVEL + " ") + String(_levelNum));
}, onComplete:function (){
Object(_hero).handleEndDoor();
}});
}
private function checkIfHitAunty(_arg1:Event):void{
var _local2:int;
if (((((!(Object(_hero).hugMode)) && (checkHit(MovieClip(_arg1.currentTarget.getChildAt(0)))))) && (!(Object(_arg1.currentTarget).isCardMode)))){
trace("hit aunty!");
_local2 = _aunties[(_arg1.currentTarget.type - 1)].reduceValue;
this.adjustHeroLifeBar(-(_local2));
staticMode = true;
Object(_hero).handleHug();
Object(_arg1.currentTarget).handleHug(_hero.x);
handleMessage(2, String((("- " + _local2) + " ")), String(Messages.LIFE), _arg1.currentTarget.x, (_arg1.currentTarget.y - _arg1.currentTarget.height));
} else {
Object(_arg1.currentTarget).fadeOut();
};
}
private function handleKeyDown(_arg1:KeyboardEvent):void{
var _local2:int;
if (!staticMode){
_local2 = 0;
while (_local2 < _keys.length) {
if (_keys[_local2].code == _arg1.keyCode){
if (_isFirstEvent){
_isFirstEvent = false;
_keys[_local2].isPressed = true;
Object(_hero).setKeyArr(_local2, true);
var _local3 = Object(_hero);
_local3[_keys[_local2].funcToCall](_local2);
};
};
_local2++;
};
};
}
private function subtractCard():void{
_cardsNum--;
_barsPanel["card_txt"].text = String(_cardsNum);
if (_cardsNum == 0){
_barsPanel["card"].alpha = 0.4;
};
}
private function handleEndHug(_arg1:Event):void{
staticMode = false;
Object(_hero).handleEndHug();
this.checkIfPressedWaiting();
}
private function addCandy(_arg1:Number):void{
var _local2:int;
var _local3:Number;
var _local4:MovieClip;
var _local5:Number;
var _local6:Number;
var _local7:String;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
_local2 = _levels[(_levelNum - 1)].candyArr[_currCandyInd];
_currCandyInd++;
if (_currCandyInd == _levels[(_levelNum - 1)].candyArr.length){
_currCandyInd = 0;
};
_local3 = _candies[(_local2 - 1)].speed;
_local4 = new BonusObj("candy", _local3, _local2);
_local4.name = "Candy";
_local4.addEventListener("check hit", checkIfHitObj);
_local4.addEventListener("remove obj", callRemoveObj);
_activeObjsArr.push(_local4);
_objsCont.addChildAt(_local4, 0);
_local6 = ((((_arg1 - _startY) / (_endY - _startY)) * (1 - minScale)) + minScale);
_local8 = (_leftBord + (_local4.width / 2));
_local9 = (_rightBord - (_local4.width / 2));
_local10 = ((Math.random() * (_local9 - _local8)) + _local8);
if (_arg1 == _startY){
_local5 = _startX;
_local7 = transitionType;
} else {
_local5 = this.calcX(_startX, _startY, _local10, _endY, _arg1);
_local7 = startTransitionType;
};
_local11 = (((((_arg1 - _startY) / (_endY - _startY)) * (1 - _local3)) + _local3) * _levels[(_levelNum - 1)].speedMult);
_local12 = (_endY + (_local4.height * 1.5));
_local13 = calcX(_startX, _startY, _local10, _endY, _local12);
Object(_local4).beginMove(_local5, _arg1, _local10, _endY, _local11, _local6, _local7, _local13, _levels[(_levelNum - 1)].speedMult);
}
private function handleCloseDoor(_arg1:Event):void{
var e = _arg1;
setChildIndex(_hero, getChildIndex(startDoor));
Tweener.addTween(startDoor, {_frame:1, time:0.6, transition:"linear", onUpdate:function (){
startDoor["level_txt"].text = ((Messages.LEVEL + " ") + String(_levelNum));
}, onComplete:function (){
_objsCont.addChild(_hero);
_activeObjsArr.push(_hero);
Object(_hero).startLevel();
}});
addChild(_cover);
Tweener.addTween(_cover, {alpha:0});
Tweener.addTween(_cover, {alpha:1, time:0.6, delay:1, transition:"linear", onComplete:function (){
removeChild(startDoor);
addKeyListeners();
}});
Tweener.addTween(_cover, {alpha:0, time:0.4, delay:2, transition:"linear", onComplete:function (){
removeChild(_cover);
arrangeObjsByY();
}});
}
private function moveWalls(_arg1:TimerEvent):void{
var wallName:String;
var wallRef:Class;
var currWall:MovieClip;
var currCeil:MovieClip;
var moveTime:Number;
var delayNum:Number;
var doorCont:MovieClip;
var pnt:Point;
var e = _arg1;
wallName = _levels[(_levelNum - 1)].walls[_currWallInd];
wallRef = (getDefinitionByName(wallName) as Class);
currWall = new (wallRef);
currWall.name = wallName;
_currWallInd++;
if (_currWallInd == _levels[(_levelNum - 1)].walls.length){
_currWallInd = 0;
};
wallName = ("ceiling" + _levelNum);
wallRef = (getDefinitionByName(wallName) as Class);
currCeil = new (wallRef);
_wallCont.addChildAt(currCeil, 0);
Tweener.addTween(currCeil, {scaleX:0.01, scaleY:0.01, alpha:0});
Tweener.addTween(currCeil, {alpha:1, time:0.5, transition:"linear"});
moveTime = (_wallsSpeed * _levels[(_levelNum - 1)].speedMult);
Tweener.addTween(currCeil, {scaleX:1.8, scaleY:1.8, time:moveTime, delay:0.5, transition:transitionType, onComplete:function (){
_wallCont.removeChild(currCeil);
currCeil = null;
}});
Tweener.addTween(currWall, {scaleX:0.01, scaleY:0.01, alpha:0});
Tweener.addTween(currWall, {alpha:1, time:0.5, transition:"linear"});
moveTime = (_wallsSpeed * _levels[(_levelNum - 1)].speedMult);
if (currWall.name.indexOf("doorOpen") != -1){
delayNum = _levels[(_levelNum - 1)].openDoorDelay[doorOpenDelayCount];
doorOpenDelayCount++;
if (doorOpenDelayCount == _levels[(_levelNum - 1)].openDoorDelay.length){
doorOpenDelayCount = 0;
};
currWall.isHit = false;
doorCont = new DoorOpen();
doorCont.addChild(currWall);
_activeObjsArr.push(doorCont);
_objsCont.addChild(doorCont);
arrangeObjsByY();
pnt = new Point(0, 0);
pnt = _wallCont.localToGlobal(pnt);
pnt = _objsCont.globalToLocal(pnt);
doorCont.x = pnt.x;
doorCont.y = pnt.y;
Tweener.addTween(currWall, {delay:delayNum, onComplete:handleDoorOpen, onCompleteParams:[currWall, (moveTime - delayNum)]});
Tweener.addTween(currWall, {scaleX:2.5, scaleY:2.5, time:moveTime, transition:transitionType, onComplete:function (){
_objsCont.removeChild(this.parent);
delete _activeAuntyArr[_activeObjsArr.indexOf(this.parent)];
_activeObjsArr.splice(_activeObjsArr.indexOf(this.parent), 1);
currWall = null;
}});
} else {
_wallCont.addChild(currWall);
Tweener.addTween(currWall, {scaleX:2.5, scaleY:2.5, time:moveTime, delay:0.5, transition:transitionType, onComplete:function (){
_wallCont.removeChild(currWall);
currWall = null;
}});
};
}
public function get score():int{
return (_score);
}
private function removeAunty(_arg1:Event):void{
var _local2:MovieClip;
var _local3:int;
var _local4:int;
_local2 = MovieClip(_arg1.currentTarget);
_objsCont.removeChild(_local2);
_local2.removeEventListener("check hit", checkIfHitAunty);
_local2.removeEventListener("end hug", handleEndHug);
_local2.removeEventListener("remove aunty", removeAunty);
_local3 = _activeObjsArr.indexOf(_local2);
delete _activeObjsArr[_local3];
_activeObjsArr.splice(_local3, 1);
_local4 = _activeAuntyArr.indexOf(_local2);
delete _activeAuntyArr[_local4];
_activeAuntyArr.splice(_local4, 1);
Object(_local2).erase();
if ((((_levels[(_levelNum - 1)].auntyArr.length == 0)) && ((_activeAuntyArr.length == 0)))){
this.handleEndLevel();
};
if (_heroLife <= 0){
this.handleLoseGame();
};
}
private function calcX(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):Number{
var _local6:Number;
var _local7:Number;
_local6 = ((_arg2 - _arg4) / (_arg1 - _arg3));
_local7 = (-(((_arg2 - _arg5) / _local6)) + _arg1);
return (_local7);
}
private function addAunty(_arg1:Number):void{
var _local2:int;
var _local3:int;
var _local4:String;
var _local5:Number;
var _local6:MovieClip;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:String;
var _local13:Number;
_local2 = (Math.random() * _levels[(_levelNum - 1)].auntyArr.length);
_local3 = _levels[(_levelNum - 1)].auntyArr[_local2];
_local4 = _aunties[(_local3 - 1)].auntyObj;
_local5 = _aunties[(_local3 - 1)].speed;
_levels[(_levelNum - 1)].auntyArr.splice(_local2, 1);
_local6 = new Aunty(_local4, _local5, _local3);
_local6.addEventListener("check hit", checkIfHitAunty);
_local6.addEventListener("end hug", handleEndHug);
_local6.addEventListener("remove aunty", removeAunty);
_activeObjsArr.push(_local6);
_activeAuntyArr.push(_local6);
_objsCont.addChildAt(_local6, 0);
_local7 = (_leftBord + (_local6.width / 2));
_local8 = (_rightBord - (_local6.width / 2));
_local9 = ((Math.random() * (_local8 - _local7)) + _local7);
_local11 = ((((_arg1 - _startY) / (_endY - _startY)) * (1 - minScale)) + minScale);
if (_arg1 == _startY){
_local10 = _startX;
_local12 = transitionType;
} else {
_local10 = this.calcX(_startX, _startY, _local9, _endY, _arg1);
_local12 = startTransitionType;
};
_local13 = (((((_arg1 - _startY) / (_endY - _startY)) * (1 - _local5)) + _local5) * _levels[(_levelNum - 1)].speedMult);
Object(_local6).beginMove(_local10, _arg1, _local9, (_endY + 40), _local13, _local11, _local12);
}
private function getCardsNum(_arg1:Event):void{
Object(_hero).cards = _cardsNum;
}
private function handleGiftTimer(_arg1:TimerEvent):void{
var _local2:Number;
var _local3:Number;
if (_levels[(_levelNum - 1)].giftArr.length > 0){
this.addGift(_startY);
_local2 = _levels[(_levelNum - 1)].addGiftDelay;
_local3 = Math.floor(((Math.random() * _local2) + (_local2 / 2)));
_giftTimer.delay = _local3;
} else {
_giftTimer.stop();
};
}
private function handleMessage(_arg1:int, _arg2:String, _arg3:String, _arg4:Number, _arg5:Number):void{
var message:MovieClip;
var form:TextFormat;
var msgRange:Number;
var msgX:Number;
var msgY:Number;
var ind = _arg1;
var msgVal = _arg2;
var msgTxt = _arg3;
var xPnt = _arg4;
var yPnt = _arg5;
message = new msgTxtMov();
message["val"].text = msgVal;
message["txt"].text = msgTxt;
form = new TextFormat(null, null, msgColorArr[ind]);
TextField(message["val"]).setTextFormat(form);
TextField(message["txt"]).setTextFormat(form);
msgRange = 80;
msgX = ((Math.random() * (msgRange * 2)) + (xPnt - msgRange));
if (msgX < 10){
msgX = 30;
};
if (msgX > 765){
msgX = 750;
};
msgY = ((Math.random() * 50) + 220);
Tweener.addTween(message, {x:xPnt, y:yPnt, alpha:0, scaleX:0.5, scaleY:0.5});
_currLevel.addChild(message);
Tweener.addTween(message, {alpha:1, scaleX:1, scaleY:1, x:msgX, y:msgY, transition:"easeInQuart", time:0.3});
Tweener.addTween(message, {alpha:0, scaleX:0.5, scaleY:0.5, transition:"easeInQuart", time:0.3, delay:0.6, onComplete:function (){
_currLevel.removeChild(message);
message = null;
}});
}
private function handleRoomObjTimer(_arg1:TimerEvent):void{
var _local2:Number;
var _local3:Number;
if (_levels[(_levelNum - 1)].roomObjArr.length > 0){
this.addRoomObj(_startY);
_local2 = _levels[(_levelNum - 1)].addRoomObjDelay;
_local3 = Math.floor(((Math.random() * _local2) + (_local2 / 2)));
_roomObjTimer.delay = _local3;
} else {
_roomObjTimer.stop();
};
}
private function handleStartWalls():void{
var wallName:String;
var wallRef:Class;
var currWall:MovieClip;
var startY:Number;
var srartScale:Number;
var moveTime:Number;
var i:int;
var delayNum:Number;
var doorCont:MovieClip;
var pnt:Point;
i = 0;
while (i < _levels[(_levelNum - 1)].startWalls.length) {
wallName = _levels[(_levelNum - 1)].startWalls[i][0];
wallRef = (getDefinitionByName(wallName) as Class);
currWall = new (wallRef);
startY = _levels[(_levelNum - 1)].startWalls[i][1];
srartScale = ((((startY - _startY) / (_endY - _startY)) * (1 - minWallScale)) + minWallScale);
moveTime = (((((startY - _startY) / (_endY - _startY)) * (1 - _wallsSpeed)) + _wallsSpeed) * _levels[(_levelNum - 1)].speedMult);
Tweener.addTween(currWall, {scaleX:srartScale, scaleY:srartScale});
if (wallName.indexOf("doorOpen") != -1){
delayNum = _levels[(_levelNum - 1)].openDoorDelay[doorOpenDelayCount];
doorOpenDelayCount++;
if (doorOpenDelayCount == _levels[(_levelNum - 1)].openDoorDelay.length){
doorOpenDelayCount = 0;
};
currWall.isHit = false;
doorCont = new DoorOpen();
doorCont.addChild(currWall);
_activeObjsArr.push(doorCont);
_objsCont.addChild(doorCont);
arrangeObjsByY();
pnt = new Point(0, 0);
pnt = _wallCont.localToGlobal(pnt);
pnt = _objsCont.globalToLocal(pnt);
doorCont.x = pnt.x;
doorCont.y = pnt.y;
Tweener.addTween(currWall, {delay:delayNum, onComplete:handleDoorOpen, onCompleteParams:[currWall, (moveTime - delayNum)]});
Tweener.addTween(currWall, {scaleX:2.5, scaleY:2.5, time:moveTime, transition:startTransitionType, onComplete:function (){
_objsCont.removeChild(this.parent);
delete _activeAuntyArr[_activeObjsArr.indexOf(this.parent)];
_activeObjsArr.splice(_activeObjsArr.indexOf(this.parent), 1);
currWall = null;
}});
} else {
if (wallName.indexOf("ceiling") != -1){
_wallCont.addChild(currWall);
Tweener.addTween(currWall, {scaleX:1.8, scaleY:1.8, time:moveTime, transition:startTransitionType, onComplete:function (){
_wallCont.removeChild(this);
currWall = null;
}});
} else {
_wallCont.addChild(currWall);
Tweener.addTween(currWall, {scaleX:2.5, scaleY:2.5, time:moveTime, transition:startTransitionType, onComplete:function (){
_wallCont.removeChild(this);
currWall = null;
}});
};
};
i = (i + 1);
};
}
private function checkIfHitObj(_arg1:Event):void{
var _local2:Number;
var _local3:int;
var _local4:Number;
if (MovieClip(_arg1.currentTarget.getChildAt(0)).hitTestObject(_hero.getChildAt(0)["hit"])){
switch (_arg1.currentTarget.name){
case "Gift":
trace("hit gift");
_local2 = _gifts[(_arg1.currentTarget.type - 1)].addValue;
handleMessage(0, String((("+ " + _local2) + " ")), String((Messages.LIFE + "!")), _arg1.currentTarget.x, (_arg1.currentTarget.y - _arg1.currentTarget.height));
Adlib.playSound("hitGift");
this.adjustHeroLifeBar(_local2);
break;
case "Candy":
trace("hit candy");
_local3 = _candies[(_arg1.currentTarget.type - 1)].addPoints;
_score = (_score + _local3);
_barsPanel["score_txt"].text = String(_score);
Adlib.playSound("hitBonus");
handleMessage(1, String((("+ " + _local3) + " ")), String((Messages.POINTS + "!")), _arg1.currentTarget.x, (_arg1.currentTarget.y - _arg1.currentTarget.height));
break;
case "RoomObj":
trace("hit room obj");
if (_arg1.currentTarget.type == 1){
Adlib.playSound("catHiss");
} else {
Adlib.playSound("hitObj");
};
_local4 = _roomObjs[(_arg1.currentTarget.type - 1)].reduceValue;
handleMessage(2, String((("- " + _local4) + " ")), String(Messages.LIFE), _arg1.currentTarget.x, (_arg1.currentTarget.y - _arg1.currentTarget.height));
Object(_hero).heroHitObj();
this.adjustHeroLifeBar(-(_local4));
break;
};
Object(_arg1.currentTarget).handleHit();
};
}
private function adjustHeroLifeBar(_arg1:Number):void{
var _local2:Number;
var _local3:Number;
_heroLife = (_heroLife + _arg1);
if (_heroLife > _HERO_LIFE){
_heroLife = _HERO_LIFE;
};
if (_heroLife < 0){
_heroLife = 0;
};
_local2 = Math.abs((_arg1 * 0.05));
_local3 = (_heroLife / _HERO_LIFE);
trace(_local3);
Tweener.addTween(_barsPanel["lifeBar"]["lifeMask"], {scaleX:_local3, time:_local2});
}
private function callRemoveObj(_arg1:Event):void{
var _local2:MovieClip;
_local2 = MovieClip(_arg1.currentTarget);
this.removeObj(_local2);
}
private function sortOnBounds(_arg1:MovieClip, _arg2:MovieClip):Number{
var _local3:Object;
var _local4:Object;
_local3 = _arg1.getBounds(_objsCont);
_local4 = _arg2.getBounds(_objsCont);
if (_local3.bottom > _local4.bottom){
return (1);
};
if (_local3.bottom < _local4.bottom){
return (-1);
};
return (0);
}
private function handleLoseGame():void{
var loseMess:Sprite;
this.handleStopLevel();
loseMess = new gameOverMess();
loseMess.x = 390;
loseMess.y = 185;
loseMess.alpha = 0;
_currLevel.addChild(loseMess);
Adlib.playSound("gameOver");
Tweener.addTween(loseMess, {alpha:1, _Blur_blurX:14, _Blur_blurY:7, time:0.5, transition:"linear"});
Tweener.addTween(loseMess, {time:0.5, delay:0.6, _Blur_blurX:0, _Blur_blurY:0, transition:"linear"});
_cover.alpha = 0;
_currLevel.addChild(_cover);
Tweener.addTween(_cover, {alpha:1, time:1, delay:1.8, transition:"linear", onComplete:function (){
clearLevel();
dispatchEvent(new Event("game end"));
}});
}
private function clearLevel():void{
var _local1:int;
var _local2:int;
var _local3:Sprite;
var _local4:DisplayObject;
_currLevel.removeChild(_barsPanel);
_auntyTimer.reset();
_giftTimer.reset();
_candyTimer.reset();
_roomObjTimer.reset();
_sortYTimer.reset();
_wallsTimer.reset();
_local1 = _currLevel.numChildren;
while (_local1--) {
_local3 = Sprite(_currLevel.getChildAt(_local1));
if (_local3.numChildren > 0){
_local2 = _local3.numChildren;
while (_local2--) {
_local4 = _local3.getChildAt(_local2);
_local3.removeChild(_local4);
_local4 = null;
};
};
_currLevel.removeChild(_local3);
_local3 = null;
};
_currLevel = null;
}
private function removeKeyListeners():void{
_stage.removeEventListener(KeyboardEvent.KEY_DOWN, handleKeyDown);
_stage.removeEventListener(KeyboardEvent.KEY_UP, handleKeyUp);
}
private function handleStopLevel():void{
this.removeKeyListeners();
Tweener.removeAllTweens();
_auntyTimer.reset();
_giftTimer.reset();
_candyTimer.reset();
_sortYTimer.reset();
_wallsTimer.reset();
}
private function handleDoorOpen(_arg1:MovieClip, _arg2:Number):void{
var door = _arg1;
var remainTime = _arg2;
Adlib.playSound("squick");
Tweener.addTween(door, {_frame:MovieClip(door).totalFrames, time:0.5});
Tweener.addTween(door, {time:remainTime, onUpdate:function (){
if (door["hit"].hitTestObject(_currLevel["heroYhit"])){
checkIfHitDoor(door);
};
}});
}
private function addGift(_arg1:Number):void{
var _local2:int;
var _local3:int;
var _local4:Number;
var _local5:MovieClip;
var _local6:Number;
var _local7:Number;
var _local8:String;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
var _local14:Number;
_local2 = (Math.random() * _levels[(_levelNum - 1)].giftArr.length);
_local3 = _levels[(_levelNum - 1)].giftArr[_local2];
_local4 = _gifts[(_local3 - 1)].speed;
_levels[(_levelNum - 1)].giftArr.splice(_local2, 1);
_local5 = new BonusObj("gift", _local4, _local3);
_local5.name = "Gift";
_local5.addEventListener("check hit", checkIfHitObj);
_local5.addEventListener("remove obj", callRemoveObj);
_activeObjsArr.push(_local5);
_objsCont.addChildAt(_local5, 0);
_local7 = ((((_arg1 - _startY) / (_endY - _startY)) * (1 - minScale)) + minScale);
_local9 = (_leftBord + (_local5.width / 2));
_local10 = (_rightBord - (_local5.width / 2));
_local11 = ((Math.random() * (_local10 - _local9)) + _local9);
if (_arg1 == _startY){
_local6 = _startX;
_local8 = transitionType;
} else {
_local6 = this.calcX(_startX, _startY, _local11, _endY, _arg1);
_local8 = startTransitionType;
};
_local12 = (((((_arg1 - _startY) / (_endY - _startY)) * (1 - _local4)) + _local4) * _levels[(_levelNum - 1)].speedMult);
_local13 = (_endY + (_local5.height * 1.5));
_local14 = calcX(_startX, _startY, _local11, _endY, _local13);
Object(_local5).beginMove(_local6, _arg1, _local11, _endY, _local12, _local7, _local8, _local14, _levels[(_levelNum - 1)].speedMult);
}
private function checkHit(_arg1:MovieClip):Boolean{
var _local2:int;
if (_hero.getChildAt(0)["hit"].hitTestObject(_arg1)){
_local2 = 0;
while (_local2 < _arg1.numChildren) {
if (_arg1.getChildAt(_local2).name == "hit"){
if (_arg1.getChildAt(_local2).hitTestObject(_hero.getChildAt(0)["hit"])){
return (true);
};
};
_local2++;
};
};
return (false);
}
private function checkIfPressedWaiting():void{
var _local1:int;
_local1 = 0;
while (_local1 < _keys.length) {
if (_keys[_local1].isPressed){
var _local2 = Object(_hero);
_local2[_keys[_local1].funcToCall](_local1);
};
_local1++;
};
}
private function callArrangeObjsByY(_arg1:Event):void{
this.arrangeObjsByY();
}
private function arrangeObjsByY():void{
var _local1:int;
_activeObjsArr.sort(sortOnBounds);
_local1 = _objsCont.numChildren;
while (_local1--) {
if (_activeObjsArr[_local1] != _objsCont.getChildAt(_local1)){
_objsCont.setChildIndex(_activeObjsArr[_local1], _local1);
};
};
}
private function handleEndLevel():void{
var _local1:Sprite;
trace("level over");
this.handleStopLevel();
Object(_hero).handleEndLevel();
_local1 = _currLevel["corridor"];
Tweener.addTween(_local1, {scaleX:30, scaleY:30, y:(_local1.y - 120), time:0.8, transition:"easeInExpo", onComplete:handleEndDoor});
Tweener.addTween(_objsCont, {alpha:0, time:0.1, transition:"linear"});
Tweener.addTween(_hero, {x:_startX, time:0.5, transition:"linear"});
Tweener.addTween(_wallCont, {alpha:0, time:0.5, transition:"linear"});
Tweener.addTween(_wallCont, {scaleX:30, scaleY:30, y:(_wallCont.y + 120), time:0.8, transition:"easeInExpo"});
}
private function setGameSettings():void{
var _local1:String;
var _local2:Class;
_levels = new Array();
_levels[0] = new Level();
_levels[0].startObjsYPos = [[200, 240, 270, 310], [230], [210, 250, 300, 350], [210]];
_levels[0].auntyArr = [4, 4, 4, 5, 5, 5, 6, 6, 7, 7];
_levels[0].giftArr = [1, 1];
_levels[0].candyArr = [1, 2, 4, 1, 2, 3];
_levels[0].roomObjArr = [2, 2, 2, 3, 3];
_levels[0].addAuntyDelay = 3000;
_levels[0].addGiftDelay = 30000;
_levels[0].addCandyDelay = 2500;
_levels[0].addRoomObjDelay = 7000;
_levels[0].speedMult = 0.8;
_levels[0].addCards = 1;
_levels[0].startWalls = [["ceiling1", 200], ["ceiling1", 260], ["ceiling1", 340], ["doorOpenLeft1", 210], ["pics1", 250], ["doorRight2", 360], ["doorLeft1", 330]];
_levels[0].walls = ["doors2", "pics2", "doorOpenRight2", "doorLeft2", "doorRight2", "doors1"];
_levels[0].openDoorDelay = [12, 10];
_levels[0].wallsDelay = 4000;
_levels[1] = new Level();
_levels[1].startObjsYPos = [[200, 220, 280, 320], [350], [210, 240, 330, 360], [320]];
_levels[1].auntyArr = [4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8];
_levels[1].giftArr = [1, 1, 2];
_levels[1].candyArr = [2, 1, 1, 2, 4, 3, 1, 5, 3];
_levels[1].roomObjArr = [1, 2, 2, 3, 3, 4];
_levels[1].addAuntyDelay = 2500;
_levels[1].addGiftDelay = 27000;
_levels[1].addCandyDelay = 2250;
_levels[1].addRoomObjDelay = 6500;
_levels[1].speedMult = 0.75;
_levels[1].addCards = 1;
_levels[1].startWalls = [["ceiling2", 200], ["ceiling2", 260], ["ceiling2", 340], ["doors2", 200], ["doorRight1", 230], ["pic1", 240], ["doorRight2", 280], ["shelf1", 310], ["doors1", 360]];
_levels[1].walls = ["doorLeft1", "pics1", "doorRight1", "shelf1", "doorOpenLeft2", "doors1", "doorLeft2", "doorOpenRight1", "shelf2"];
_levels[1].openDoorDelay = [10, 14];
_levels[1].wallsDelay = 3750;
_levels[2] = new Level();
_levels[2].startObjsYPos = [[200, 230, 280, 320], [280], [220, 250, 330, 360], [340]];
_levels[2].auntyArr = [4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 8, 8];
_levels[2].giftArr = [1, 2, 2, 3];
_levels[2].candyArr = [1, 3, 2, 5, 1, 2, 4, 1, 2, 3];
_levels[2].roomObjArr = [1, 1, 2, 2, 3, 3, 4];
_levels[2].addAuntyDelay = 2250;
_levels[2].addGiftDelay = 25000;
_levels[2].addCandyDelay = 2000;
_levels[2].addRoomObjDelay = 6000;
_levels[2].speedMult = 0.7;
_levels[2].addCards = 1;
_levels[2].startWalls = [["ceiling3", 200], ["ceiling3", 260], ["ceiling3", 340], ["doors2", 210], ["doorOpenLeft1", 250], ["shelf2", 280], ["shelf1", 330], ["pic4", 330], ["doorRight1", 380]];
_levels[2].walls = ["doorRight1", "doors1", "doorOpenRight2", "doorLeft1", "pics3", "doors1", "doorOpenRight1", "shelf2", "pics2", "doorOpenLeft2"];
_levels[2].openDoorDelay = [11, 10, 12];
_levels[2].wallsDelay = 3500;
_levels[3] = new Level();
_levels[3].startObjsYPos = [[200, 230, 270, 310], [260], [220, 250, 330, 350], [300]];
_levels[3].auntyArr = [4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8];
_levels[3].giftArr = [1, 2, 2, 2, 3, 3];
_levels[3].candyArr = [1, 3, 3, 2, 1, 1, 2, 5, 5, 4, 3, 2];
_levels[3].roomObjArr = [1, 1, 2, 2, 2, 3, 3, 4];
_levels[3].addAuntyDelay = 2000;
_levels[3].addGiftDelay = 22000;
_levels[3].addCandyDelay = 1700;
_levels[3].addRoomObjDelay = 5500;
_levels[3].speedMult = 0.65;
_levels[3].addCards = 2;
_levels[3].startWalls = [["ceiling4", 200], ["ceiling4", 260], ["ceiling4", 340], ["doorLeft2", 210], ["doorRight1", 220], ["pics1", 260], ["doorOpenLeft1", 330], ["pic2", 350], ["shelf1", 380]];
_levels[3].walls = ["pic1", "doors1", "shelf2", "doors2", "doorOpenRight2", "doorLeft1", "pics1", "doors1", "doorOpenRight1", "shelf1", "pics3", "doorOpenRight2"];
_levels[3].openDoorDelay = [12, 6, 12, 8];
_levels[3].wallsDelay = 3250;
_levels[4] = new Level();
_levels[4].startObjsYPos = [[200, 240, 280, 310], [200, 260], [210, 260, 310, 360], [280]];
_levels[4].auntyArr = [4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8];
_levels[4].giftArr = [1, 2, 2, 2, 2, 3, 3, 3];
_levels[4].candyArr = [1, 3, 3, 2, 1, 4, 2, 5, 5, 4, 3, 2];
_levels[4].roomObjArr = [1, 1, 2, 2, 3, 3, 4, 4, 4];
_levels[4].addAuntyDelay = 2000;
_levels[4].addGiftDelay = 20000;
_levels[4].addCandyDelay = 1500;
_levels[4].addRoomObjDelay = 5250;
_levels[4].speedMult = 0.6;
_levels[4].addCards = 2;
_levels[4].startWalls = [["ceiling5", 200], ["ceiling5", 260], ["ceiling5", 340], ["doors3", 200], ["pics3", 260], ["shelf1", 340], ["shelf2", 340]];
_levels[4].walls = ["pics3", "shelf2", "doors1", "doorOpenLeft1", "shelf2", "doors2", "doorLeft1", "doorRight1", "pics1", "doors1", "doorOpenRight1", "shelf1", "shelf2", "pics1"];
_levels[4].openDoorDelay = [10, 8, 12, 10];
_levels[4].wallsDelay = 3000;
_levels[5] = new Level();
_levels[5].startObjsYPos = [[210, 240, 270, 300], [240, 320], [220, 280, 310, 360], [310]];
_levels[5].auntyArr = [4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8];
_levels[5].giftArr = [1, 2, 2, 2, 2, 3, 3, 3, 3];
_levels[5].candyArr = [2, 4, 3, 1, 4, 3, 2, 5, 5, 2, 5, 4];
_levels[5].roomObjArr = [1, 1, 1, 2, 2, 2, 3, 3, 4, 4];
_levels[5].addAuntyDelay = 1750;
_levels[5].addGiftDelay = 18000;
_levels[5].addCandyDelay = 1500;
_levels[5].addRoomObjDelay = 5000;
_levels[5].speedMult = 0.55;
_levels[5].addCards = 3;
_levels[5].startWalls = [["ceiling6", 200], ["ceiling6", 260], ["ceiling6", 340], ["doors1", 200], ["shelf1", 260], ["shelf2", 260], ["doorOpenLeft1", 300]];
_levels[5].walls = ["doors3", "pic1", "pic4", "doors1", "doorOpenRight2", "pics3", "doorLeft1", "doorOpenRight1", "pics1", "doors2", "shelf1", "pics1", "shelf2"];
_levels[5].openDoorDelay = [2, 11, 8, 10];
_levels[5].wallsDelay = 2750;
_levels[6] = new Level();
_levels[6].startObjsYPos = [[210, 240, 270, 300], [200, 300], [210, 240, 310, 340], [280, 200]];
_levels[6].auntyArr = [4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8];
_levels[6].giftArr = [1, 2, 2, 2, 3, 3, 3, 3, 3];
_levels[6].candyArr = [5, 4, 3, 2, 4, 5, 4, 5, 3, 2, 1, 5];
_levels[6].roomObjArr = [1, 1, 1, 2, 2, 2, 3, 3, 4, 4, 4];
_levels[6].addAuntyDelay = 1750;
_levels[6].addGiftDelay = 15000;
_levels[6].addCandyDelay = 1200;
_levels[6].addRoomObjDelay = 4750;
_levels[6].speedMult = 0.5;
_levels[6].addCards = 3;
_levels[6].startWalls = [["ceiling6", 200], ["ceiling6", 260], ["ceiling6", 340], ["pics2", 200], ["doorOpenLeft1", 260], ["doorRight1", 260], ["pic3", 310]];
_levels[6].walls = ["doors1", "shelf2", "doorOpenRight2", "pics2", "doorOpenLeft2", "pics3", "doors2", "pics2", "pics1", "doors2", "doorOpenRight1", "shelf1"];
_levels[6].openDoorDelay = [6, 10, 8, 9];
_levels[6].wallsDelay = 2500;
_levels[7] = new Level();
_levels[7].startObjsYPos = [[200, 240, 270, 310], [200, 300], [210, 240, 310, 340], [280, 200]];
_levels[7].auntyArr = [4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8];
_levels[7].giftArr = [1, 2, 2, 2, 3, 3, 3, 3, 3, 3];
_levels[7].candyArr = [5, 4, 5, 3, 4, 5, 2, 5, 3, 2, 4, 5, 4];
_levels[7].roomObjArr = [1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4];
_levels[7].addAuntyDelay = 1500;
_levels[7].addGiftDelay = 12000;
_levels[7].addCandyDelay = 1000;
_levels[7].addRoomObjDelay = 4500;
_levels[7].speedMult = 0.45;
_levels[7].addCards = 3;
_levels[7].startWalls = [["ceiling7", 200], ["ceiling7", 260], ["ceiling7", 340], ["doors1", 200], ["doorOpenLeft2", 260], ["shelf2", 260], ["pic3", 310]];
_levels[7].walls = ["doors2", "pic1", "doorOpenRight1", "doors1", "doorOpenLeft2", "pics2", "doors2", "doorOpenLeft2", "pics2", "doors1", "doorOpenRight1", "shelf1", "shelf2", "pics3"];
_levels[7].openDoorDelay = [6, 10, 8, 9];
_levels[7].wallsDelay = 2250;
_aunties = new Array();
_aunties[3] = new Aunties();
_aunties[3].type = 4;
_aunties[3].auntyObj = "auntyFat1";
_aunties[3].speed = 18;
_aunties[3].reduceValue = 20;
_aunties[3].points = 5;
_aunties[4] = new Aunties();
_aunties[4].type = 5;
_aunties[4].auntyObj = "auntyFat2";
_aunties[4].speed = 16;
_aunties[4].reduceValue = 18;
_aunties[4].points = 5;
_aunties[5] = new Aunties();
_aunties[5].type = 6;
_aunties[5].auntyObj = "auntyFat3";
_aunties[5].speed = 19;
_aunties[5].reduceValue = 22;
_aunties[5].points = 5;
_aunties[6] = new Aunties();
_aunties[6].type = 7;
_aunties[6].auntyObj = "uncle1";
_aunties[6].speed = 15;
_aunties[6].reduceValue = 16;
_aunties[6].points = 5;
_aunties[7] = new Aunties();
_aunties[7].type = 8;
_aunties[7].auntyObj = "uncle2";
_aunties[7].speed = 18;
_aunties[7].reduceValue = 20;
_aunties[7].points = 5;
_gifts = new Array();
_gifts[0] = new Gifts();
_gifts[0].type = 1;
_gifts[0].speed = 18;
_gifts[0].addValue = 5;
_gifts[1] = new Gifts();
_gifts[1].type = 2;
_gifts[1].speed = 18;
_gifts[1].addValue = 10;
_gifts[2] = new Gifts();
_gifts[2].type = 3;
_gifts[2].speed = 18;
_gifts[2].addValue = 15;
_candies = new Array();
_candies[0] = new Candies();
_candies[0].type = 1;
_candies[0].speed = 18;
_candies[0].addPoints = 5;
_candies[1] = new Candies();
_candies[1].type = 2;
_candies[1].speed = 18;
_candies[1].addPoints = 7;
_candies[2] = new Candies();
_candies[2].type = 3;
_candies[2].speed = 18;
_candies[2].addPoints = 10;
_candies[3] = new Candies();
_candies[3].type = 4;
_candies[3].speed = 18;
_candies[3].addPoints = 12;
_candies[4] = new Candies();
_candies[4].type = 5;
_candies[4].speed = 18;
_candies[4].addPoints = 14;
_roomObjs = new Array();
_roomObjs[0] = new RoomObjs();
_roomObjs[0].type = 1;
_roomObjs[0].name = "cat";
_roomObjs[0].speed = 40;
_roomObjs[0].reduceValue = 10;
_roomObjs[1] = new RoomObjs();
_roomObjs[1].type = 2;
_roomObjs[1].name = "plant";
_roomObjs[1].speed = 18;
_roomObjs[1].reduceValue = 5;
_roomObjs[2] = new RoomObjs();
_roomObjs[2].type = 3;
_roomObjs[2].name = "wool";
_roomObjs[2].speed = 18;
_roomObjs[2].reduceValue = 5;
_roomObjs[3] = new RoomObjs();
_roomObjs[3].type = 4;
_roomObjs[3].name = "stool";
_roomObjs[3].speed = 18;
_roomObjs[3].reduceValue = 7;
_keys = new Array();
_keys[0] = new Keys();
_keys[0].code = 38;
_keys[0].isPressed = false;
_keys[0].funcToCall = "heroJump";
_keys[0].endFuncToCall = "";
_keys[1] = new Keys();
_keys[1].code = 39;
_keys[1].isPressed = false;
_keys[1].funcToCall = "heroMoveLeft";
_keys[1].endFuncToCall = "";
_keys[2] = new Keys();
_keys[2].code = 37;
_keys[2].isPressed = false;
_keys[2].funcToCall = "heroMoveRight";
_keys[2].endFuncToCall = "";
_keys[3] = new Keys();
_keys[3].code = 40;
_keys[3].isPressed = false;
_keys[3].funcToCall = "heroBendDown";
_keys[3].endFuncToCall = "heroBendUp";
_keys[4] = new Keys();
_keys[4].code = 32;
_keys[4].isPressed = false;
_keys[4].funcToCall = "heroShowCard";
_keys[4].endFuncToCall = "";
Adlib.addSound(new squick(), {name:"squick", volume:0.4, dontPlay:true});
Adlib.addSound(new doorClose(), {name:"doorSlam", volume:0.7, dontPlay:true});
Adlib.addSound(new hit(), {name:"hitObj", volume:2, dontPlay:true});
Adlib.addSound(new catHis(), {name:"catHiss", volume:1, dontPlay:true});
Adlib.addSound(new tzing(), {name:"hitBonus", volume:3, dontPlay:true});
Adlib.addSound(new tata(), {name:"hitGift", volume:0.8, dontPlay:true});
Adlib.addSound(new gameover(), {name:"gameOver", volume:2, dontPlay:true});
_leftBord = 150;
_rightBord = 630;
_score = 0;
_cardsNum = 0;
_startX = 390;
_startY = 200;
_endY = 420;
_hero = new Hero(_leftBord, _rightBord);
_hero.x = 390;
_hero.y = 420;
_hero.addEventListener("get card num", getCardsNum);
_hero.addEventListener("use card", handleUseCard);
_hero.addEventListener("close door", handleCloseDoor);
_auntyTimer = new Timer(_levels[0].addAuntyDelay);
_auntyTimer.addEventListener(TimerEvent.TIMER, handleAuntyTimer);
_giftTimer = new Timer(_levels[0].addGiftDelay);
_giftTimer.addEventListener(TimerEvent.TIMER, handleGiftTimer);
_candyTimer = new Timer(_levels[0].addCandyDelay);
_candyTimer.addEventListener(TimerEvent.TIMER, handleCandyTimer);
_roomObjTimer = new Timer(_levels[0].addRoomObjDelay);
_roomObjTimer.addEventListener(TimerEvent.TIMER, handleRoomObjTimer);
_wallsTimer = new Timer(_levels[0].wallsDelay);
_wallsTimer.addEventListener(TimerEvent.TIMER, moveWalls);
_sortYTimer = new Timer(1000);
_sortYTimer.addEventListener(TimerEvent.TIMER, callArrangeObjsByY);
_barsPanel = new barsPanel();
_barsPanel.x = 200;
_barsPanel.y = 25;
Tweener.addTween(_barsPanel["lifeBar"]["lifeMask"], {scaleX:1});
_wallsSpeed = 25;
_cover = new coverSqr();
msgColorArr = [0xFF6600, 39423, 0xFF0000];
_doorReduceValue = 7;
transitionType = "easeInQuint";
startTransitionType = "easeInQuint";
_local1 = "level1StartDoor";
_local2 = (getDefinitionByName(_local1) as Class);
startDoor = new (_local2);
startDoor.x = _startX;
startDoor.y = _endY;
startDoor["level_txt"].text = (Messages.LEVEL + " 1");
addChild(startDoor);
Object(_hero).walkOut();
addChild(_hero);
}
private function removeObj(_arg1:MovieClip):void{
var _local2:int;
_arg1.removeEventListener("check hit", checkIfHitObj);
_arg1.removeEventListener("remove obj", callRemoveObj);
_local2 = _activeObjsArr.indexOf(_arg1);
_objsCont.removeChild(_arg1);
delete _activeObjsArr[_local2];
_activeObjsArr.splice(_local2, 1);
Object(_arg1).erase();
if (_heroLife <= 0){
this.handleLoseGame();
};
}
private function addKeyListeners():void{
_stage.addEventListener(KeyboardEvent.KEY_DOWN, handleKeyDown);
_stage.addEventListener(KeyboardEvent.KEY_UP, handleKeyUp);
_stage.focus = _stage;
}
private function checkIfHitDoor(_arg1:MovieClip):void{
if (_hero.getChildAt(0)["hit"].hitTestObject(_arg1["hit"])){
if (!_arg1.isHit){
_arg1.isHit = true;
trace("hit door!!");
Adlib.playSound("doorSlam");
Tweener.addTween(_arg1, {_frame:1, time:0.5});
Object(_hero).heroHitObj();
this.adjustHeroLifeBar(-(_doorReduceValue));
handleMessage(2, String((("- " + _doorReduceValue) + " ")), String(Messages.LIFE), _hero.x, (_hero.y - _arg1.height));
};
};
}
private function handleEndDoor():void{
var _local1:int;
var _local2:int;
var _local3:DisplayObject;
var _local4:String;
var _local5:Class;
_currLevel.addChild(_hero);
_local1 = _objsCont.numChildren;
while (_local1--) {
this.removeObj(MovieClip(_objsCont.getChildAt(_local1)));
};
_objsCont = null;
_local2 = _wallCont.numChildren;
while (_local2--) {
_local3 = DisplayObject(_wallCont.getChildAt(_local2));
_wallCont.removeChild(_local3);
_local3 = null;
};
_wallCont = null;
_levelNum++;
_local4 = (("level" + _levelNum) + "StartDoor");
_local5 = (getDefinitionByName(_local4) as Class);
startDoor = new (_local5);
startDoor.x = _startX;
startDoor.y = _endY;
startDoor["level_txt"].text = ((Messages.LEVEL + " ") + String(_levelNum));
addChild(startDoor);
Object(_hero).walkOut();
addChild(_hero);
clearLevel();
dispatchEvent(new Event("level end"));
}
public function clearGame():void{
_cover = null;
_hero.removeEventListener("get card num", getCardsNum);
_hero.removeEventListener("use card", handleUseCard);
_hero.removeEventListener("close door", handleCloseDoor);
_hero = null;
_auntyTimer.removeEventListener(TimerEvent.TIMER, handleAuntyTimer);
_giftTimer.removeEventListener(TimerEvent.TIMER, handleGiftTimer);
_candyTimer.removeEventListener(TimerEvent.TIMER, handleCandyTimer);
_roomObjTimer.removeEventListener(TimerEvent.TIMER, handleRoomObjTimer);
_sortYTimer.removeEventListener(TimerEvent.TIMER, callArrangeObjsByY);
_wallsTimer.removeEventListener(TimerEvent.TIMER, moveWalls);
_auntyTimer = null;
_giftTimer = null;
_candyTimer = null;
_roomObjTimer = null;
_sortYTimer = null;
_wallsTimer = null;
_objsCont = null;
_wallCont = null;
dispatchEvent(new Event("game cleared"));
}
private function handleUseCard(_arg1:Event):void{
var _local2:MovieClip;
var _local3:MovieClip;
var _local4:Object;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:int;
this.subtractCard();
_activeAuntyArr.sort(sortOnBounds);
_local4 = _hero.getBounds(_currLevel);
_local9 = _activeAuntyArr.length;
while (_local9--) {
_local3 = _activeAuntyArr[_local9];
_local5 = _local3.getWidth;
_local6 = _local3.endX;
_local7 = (_local6 - (_local5 / 2));
_local8 = (_local6 + (_local5 / 2));
if ((((_local8 >= _local4.left)) && ((_local7 <= _local4.right)))){
Object(_local3).handleCard();
break;
};
};
}
}
}//package
Section 63 (118 B)
//gameover (gameover)
package {
import flash.media.*;
public dynamic class gameover extends Sound {
}
}//package
Section 64 (136 B)
//gameOverMess (gameOverMess)
package {
import flash.display.*;
public dynamic class gameOverMess extends MovieClip {
}
}//package
Section 65 (115 B)
//gift1 (gift1)
package {
import flash.display.*;
public dynamic class gift1 extends MovieClip {
}
}//package
Section 66 (115 B)
//gift2 (gift2)
package {
import flash.display.*;
public dynamic class gift2 extends MovieClip {
}
}//package
Section 67 (115 B)
//gift3 (gift3)
package {
import flash.display.*;
public dynamic class gift3 extends MovieClip {
}
}//package
Section 68 (580 B)
//Gifts (Gifts)
package {
public class Gifts {
private var _speed:Number;
private var _addValue:int;
private var _type:int;
public function Gifts():void{
}
public function set addValue(_arg1:int):void{
_addValue = _arg1;
}
public function set speed(_arg1:Number):void{
_speed = _arg1;
}
public function set type(_arg1:int):void{
_type = _arg1;
}
public function get addValue():int{
return (_addValue);
}
public function get type():int{
return (_type);
}
public function get speed():Number{
return (_speed);
}
}
}//package
Section 69 (5.86 KiB) ● ●
//Hero (Hero)
package {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import caurina.transitions.properties.*;
public class Hero extends MovieClip {
private var _rightBord:Number;
private var _leftBord:Number;
private var _heroPinch:MovieClip;
private var _cardsNum:int;
private var _heroWalkOutStatic:MovieClip;
private var _heroShowCard:MovieClip;
private var _heroStatic:MovieClip;
private var _heroWalkOut:MovieClip;
private var _heroHitObj:MovieClip;
private var _pressedArr:Array;
private var _heroBend:MovieClip;
private var _isHugMode:Boolean;
private var _heroJump:MovieClip;
public static const CLOSE_DOOR:String = "close door";
public static const USE_CARD:String = "use card";
public static const GET_CARD:String = "get card num";
public function Hero(_arg1:Number, _arg2:Number):void{
_pressedArr = new Array();
super();
DisplayShortcuts.init();
_leftBord = _arg1;
_rightBord = _arg2;
_heroStatic = new heroStatic();
_heroPinch = new heroPinch();
_heroJump = new heroJumpUp();
_heroBend = new heroBend();
_heroHitObj = new heroHitObjMov();
_heroShowCard = new heroShowCardMov();
_heroWalkOutStatic = new heroWalkOutStatic();
_heroWalkOut = new heroWalkOut();
addChildAt(_heroStatic, 0);
}
public function heroHitObj():void{
removeChildAt(0);
addChildAt(_heroHitObj, 0);
Tweener.addTween(this.getChildAt(0), {_frame:1});
Tweener.addTween(this.getChildAt(0), {_frame:MovieClip(this.getChildAt(0)).totalFrames, time:0.4, transition:"linear", onComplete:function (){
removeChildAt(0);
addChildAt(_heroStatic, 0);
}});
}
public function heroJump(_arg1:int):void{
if (((_pressedArr[_arg1]) && (!(_isHugMode)))){
Tweener.removeTweens(this, "x");
removeChildAt(0);
addChildAt(_heroJump, 0);
Tweener.addTween(this.getChildAt(0), {_frame:1});
Tweener.addTween(this.getChildAt(0), {_frame:13, time:0.4, transition:"linear"});
Tweener.addTween(this.getChildAt(0), {_frame:MovieClip(this.getChildAt(0)).totalFrames, time:0.4, delay:0.5, transition:"linear", onComplete:heroJump, onCompleteParams:[_arg1]});
} else {
removeChildAt(0);
addChildAt(_heroStatic, 0);
};
}
public function handleEndHug():void{
_isHugMode = false;
}
public function setKeyArr(_arg1:int, _arg2:Boolean):void{
_pressedArr[_arg1] = _arg2;
}
public function heroBendUp():void{
Tweener.addTween(this.getChildAt(0), {_frame:1, time:0.1, transition:"linear", onComplete:function (){
removeChildAt(0);
addChildAt(_heroStatic, 0);
}});
}
public function heroBendDown(_arg1:int):void{
if (((_pressedArr[_arg1]) && (!(_isHugMode)))){
removeChildAt(0);
addChildAt(_heroBend, 0);
Tweener.addTween(this.getChildAt(0), {_frame:1});
Tweener.addTween(this.getChildAt(0), {_frame:MovieClip(this.getChildAt(0)).totalFrames, time:0.1, transition:"linear"});
};
}
public function heroMoveLeft(_arg1:int):void{
var _local2:Number;
if (((_pressedArr[_arg1]) && (!(_isHugMode)))){
_local2 = (this.x + 70);
if (_local2 > _rightBord){
_local2 = _rightBord;
};
Tweener.addTween(this, {x:_local2, time:0.2, transition:"linear", onComplete:heroMoveLeft, onCompleteParams:[_arg1]});
};
}
private function completeEndDoor():void{
removeChildAt(0);
addChildAt(_heroWalkOutStatic, 0);
Tweener.addTween(this.getChildAt(0), {y:-70, scaleX:0.7, scaleY:0.7});
dispatchEvent(new Event("close door"));
}
public function handleEndLevel():void{
removeChildAt(0);
addChildAt(_heroStatic, 0);
Tweener.removeTweens(this, "x", "y");
}
public function get hugMode():Boolean{
return (_isHugMode);
}
public function erase():void{
removeChildAt(0);
_heroStatic = null;
_heroPinch = null;
_heroHitObj = null;
_heroJump = null;
_heroBend = null;
_heroShowCard = null;
_heroWalkOut = null;
_heroWalkOutStatic = null;
}
public function handleHug():void{
_isHugMode = true;
removeChildAt(0);
addChildAt(_heroPinch, 0);
Tweener.removeTweens(this, "x", "y");
Tweener.addTween(this.getChildAt(0), {_frame:1});
Tweener.addTween(this.getChildAt(0), {_frame:MovieClip(this.getChildAt(0)).totalFrames, delay:0.1, time:0.8, transition:"linear", onComplete:function (){
removeChildAt(0);
addChildAt(_heroStatic, 0);
}});
}
public function startLevel():void{
removeChildAt(0);
addChildAt(_heroStatic, 0);
}
public function walkOut():void{
removeChildAt(0);
addChildAt(_heroWalkOutStatic, 0);
Tweener.addTween(this.getChildAt(0), {y:52, scaleX:1, scaleY:1});
}
public function set cards(_arg1:int):void{
_cardsNum = _arg1;
}
public function heroShowCard(_arg1:int):void{
var keyInd = _arg1;
dispatchEvent(new Event("get card num"));
if ((((_cardsNum > 0)) && (!(_isHugMode)))){
removeChildAt(0);
addChildAt(_heroShowCard, 0);
Tweener.addTween(this.getChildAt(0), {_frame:1});
Tweener.addTween(this.getChildAt(0), {_frame:MovieClip(this.getChildAt(0)).totalFrames, time:0.6, transition:"linear", onComplete:function (){
removeChildAt(0);
addChildAt(_heroStatic, 0);
dispatchEvent(new Event("use card"));
}});
};
}
public function handleEndDoor():void{
removeChildAt(0);
addChildAt(_heroWalkOut, 0);
Tweener.addTween(this.getChildAt(0), {y:52, scaleX:1, scaleY:1});
Tweener.addTween(this.getChildAt(0), {y:-70, scaleX:0.7, scaleY:0.7, transition:"linear", time:1, onComplete:completeEndDoor});
}
public function heroMoveRight(_arg1:int):void{
var _local2:Number;
if (((_pressedArr[_arg1]) && (!(_isHugMode)))){
_local2 = (this.x - 70);
if (_local2 < _leftBord){
_local2 = _leftBord;
};
Tweener.addTween(this, {x:_local2, time:0.2, transition:"linear", onComplete:heroMoveRight, onCompleteParams:[_arg1]});
};
}
}
}//package
Section 70 (301 B)
//heroBend (heroBend)
package {
import flash.display.*;
public dynamic class heroBend extends MovieClip {
public var hit:MovieClip;
public function heroBend(){
addFrameScript(0, frame1, 6, frame7);
}
function frame7(){
stop();
}
function frame1(){
stop();
}
}
}//package
Section 71 (324 B)
//heroHitObjMov (heroHitObjMov)
package {
import flash.display.*;
public dynamic class heroHitObjMov extends MovieClip {
public var hit:MovieClip;
public function heroHitObjMov(){
addFrameScript(0, frame1, 12, frame13);
}
function frame1(){
stop();
}
function frame13(){
stop();
}
}
}//package
Section 72 (312 B)
//heroJumpUp (heroJumpUp)
package {
import flash.display.*;
public dynamic class heroJumpUp extends MovieClip {
public var hit:MovieClip;
public function heroJumpUp(){
addFrameScript(0, frame1, 21, frame22);
}
function frame1(){
stop();
}
function frame22(){
stop();
}
}
}//package
Section 73 (308 B)
//heroPinch (heroPinch)
package {
import flash.display.*;
public dynamic class heroPinch extends MovieClip {
public var hit:MovieClip;
public function heroPinch(){
addFrameScript(0, frame1, 30, frame31);
}
function frame1(){
stop();
}
function frame31(){
stop();
}
}
}//package
Section 74 (332 B)
//heroShowCardMov (heroShowCardMov)
package {
import flash.display.*;
public dynamic class heroShowCardMov extends MovieClip {
public var hit:MovieClip;
public function heroShowCardMov(){
addFrameScript(0, frame1, 24, frame25);
}
function frame1(){
stop();
}
function frame25(){
stop();
}
}
}//package
Section 75 (159 B)
//heroStatic (heroStatic)
package {
import flash.display.*;
public dynamic class heroStatic extends MovieClip {
public var hit:MovieClip;
}
}//package
Section 76 (237 B)
//heroWalkOut (heroWalkOut)
package {
import flash.display.*;
public dynamic class heroWalkOut extends MovieClip {
public function heroWalkOut(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 77 (261 B)
//heroWalkOutStatic (heroWalkOutStatic)
package {
import flash.display.*;
public dynamic class heroWalkOutStatic extends MovieClip {
public function heroWalkOutStatic(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 78 (103 B)
//hit (hit)
package {
import flash.media.*;
public dynamic class hit extends Sound {
}
}//package
Section 79 (820 B)
//Keys (Keys)
package {
public class Keys {
private var _endFuncToCall:String;
private var _code:int;
private var _isPressed:Boolean;
private var _funcToCall:String;
public function Keys():void{
}
public function get isPressed():Boolean{
return (_isPressed);
}
public function set funcToCall(_arg1:String):void{
_funcToCall = _arg1;
}
public function get code():int{
return (_code);
}
public function set isPressed(_arg1:Boolean):void{
_isPressed = _arg1;
}
public function get endFuncToCall():String{
return (_endFuncToCall);
}
public function set endFuncToCall(_arg1:String):void{
_endFuncToCall = _arg1;
}
public function set code(_arg1:int):void{
_code = _arg1;
}
public function get funcToCall():String{
return (_funcToCall);
}
}
}//package
Section 80 (3.17 KiB) ●
//Level (Level)
package {
public class Level {
private var _auntyArr:Array;
private var _addAuntyDelay:Number;
private var _speedMult:Number;
private var _startObjsYPos:Array;
private var _candyArr:Array;
private var _addCandyDelay:Number;
private var _addCards:int;
private var _wallsDelay:Number;
private var _roomObjArr:Array;
private var _startWalls:Array;
private var _addRoomObjDelay:Number;
private var _openDoorDelay:Array;
private var _giftArr:Array;
private var _roomObj:Array;
private var _walls:Array;
private var _addGiftDelay:Number;
private var _wallsSpeed:Number;
public function Level():void{
}
public function set addCards(_arg1:int):void{
_addCards = _arg1;
}
public function get addAuntyDelay():Number{
return (_addAuntyDelay);
}
public function set addAuntyDelay(_arg1:Number):void{
_addAuntyDelay = _arg1;
}
public function set addRoomObjDelay(_arg1:Number):void{
_addRoomObjDelay = _arg1;
}
public function get giftArr():Array{
return (_giftArr);
}
public function set openDoorDelay(_arg1:Array):void{
_openDoorDelay = _arg1;
}
public function get startObjsYPos():Array{
return (_startObjsYPos);
}
public function get roomObj():Array{
return (_roomObj);
}
public function get speedMult():Number{
return (_speedMult);
}
public function set giftArr(_arg1:Array):void{
_giftArr = _arg1;
}
public function get roomObjArr():Array{
return (_roomObjArr);
}
public function get addCandyDelay():Number{
return (_addCandyDelay);
}
public function get startWalls():Array{
return (_startWalls);
}
public function get auntyArr():Array{
return (_auntyArr);
}
public function get addGiftDelay():Number{
return (_addGiftDelay);
}
public function set addGiftDelay(_arg1:Number):void{
_addGiftDelay = _arg1;
}
public function set speedMult(_arg1:Number):void{
_speedMult = _arg1;
}
public function set startObjsYPos(_arg1:Array):void{
_startObjsYPos = _arg1;
}
public function get addRoomObjDelay():Number{
return (_addRoomObjDelay);
}
public function set roomObj(_arg1:Array):void{
_roomObj = _arg1;
}
public function set wallsDelay(_arg1:Number):void{
_wallsDelay = _arg1;
}
public function set wallsSpeed(_arg1:Number):void{
_wallsSpeed = _arg1;
}
public function set addCandyDelay(_arg1:Number):void{
_addCandyDelay = _arg1;
}
public function get candyArr():Array{
return (_candyArr);
}
public function get wallsDelay():Number{
return (_wallsDelay);
}
public function set roomObjArr(_arg1:Array):void{
_roomObjArr = _arg1;
}
public function set auntyArr(_arg1:Array):void{
_auntyArr = _arg1;
}
public function set startWalls(_arg1:Array):void{
_startWalls = _arg1;
}
public function get addCards():int{
return (_addCards);
}
public function set walls(_arg1:Array):void{
_walls = _arg1;
}
public function get openDoorDelay():Array{
return (_openDoorDelay);
}
public function get wallsSpeed():Number{
return (_wallsSpeed);
}
public function get walls():Array{
return (_walls);
}
public function set candyArr(_arg1:Array):void{
_candyArr = _arg1;
}
}
}//package
Section 81 (185 B)
//level1 (level1)
package {
import flash.display.*;
public dynamic class level1 extends MovieClip {
public var heroYhit:MovieClip;
public var corridor:MovieClip;
}
}//package
Section 82 (360 B)
//level1StartDoor (level1StartDoor)
package {
import flash.display.*;
import flash.text.*;
public dynamic class level1StartDoor extends MovieClip {
public var level_txt:TextField;
public function level1StartDoor(){
addFrameScript(0, frame1, 11, frame12);
}
function frame12(){
stop();
}
function frame1(){
stop();
}
}
}//package
Section 83 (185 B)
//level2 (level2)
package {
import flash.display.*;
public dynamic class level2 extends MovieClip {
public var heroYhit:MovieClip;
public var corridor:MovieClip;
}
}//package
Section 84 (360 B)
//level2StartDoor (level2StartDoor)
package {
import flash.display.*;
import flash.text.*;
public dynamic class level2StartDoor extends MovieClip {
public var level_txt:TextField;
public function level2StartDoor(){
addFrameScript(0, frame1, 11, frame12);
}
function frame12(){
stop();
}
function frame1(){
stop();
}
}
}//package
Section 85 (185 B)
//level3 (level3)
package {
import flash.display.*;
public dynamic class level3 extends MovieClip {
public var heroYhit:MovieClip;
public var corridor:MovieClip;
}
}//package
Section 86 (360 B)
//level3StartDoor (level3StartDoor)
package {
import flash.display.*;
import flash.text.*;
public dynamic class level3StartDoor extends MovieClip {
public var level_txt:TextField;
public function level3StartDoor(){
addFrameScript(0, frame1, 11, frame12);
}
function frame12(){
stop();
}
function frame1(){
stop();
}
}
}//package
Section 87 (185 B)
//level4 (level4)
package {
import flash.display.*;
public dynamic class level4 extends MovieClip {
public var heroYhit:MovieClip;
public var corridor:MovieClip;
}
}//package
Section 88 (360 B)
//level4StartDoor (level4StartDoor)
package {
import flash.display.*;
import flash.text.*;
public dynamic class level4StartDoor extends MovieClip {
public var level_txt:TextField;
public function level4StartDoor(){
addFrameScript(0, frame1, 11, frame12);
}
function frame12(){
stop();
}
function frame1(){
stop();
}
}
}//package
Section 89 (185 B)
//level5 (level5)
package {
import flash.display.*;
public dynamic class level5 extends MovieClip {
public var heroYhit:MovieClip;
public var corridor:MovieClip;
}
}//package
Section 90 (360 B)
//level5StartDoor (level5StartDoor)
package {
import flash.display.*;
import flash.text.*;
public dynamic class level5StartDoor extends MovieClip {
public var level_txt:TextField;
public function level5StartDoor(){
addFrameScript(0, frame1, 11, frame12);
}
function frame12(){
stop();
}
function frame1(){
stop();
}
}
}//package
Section 91 (185 B)
//level6 (level6)
package {
import flash.display.*;
public dynamic class level6 extends MovieClip {
public var heroYhit:MovieClip;
public var corridor:MovieClip;
}
}//package
Section 92 (360 B)
//level6StartDoor (level6StartDoor)
package {
import flash.display.*;
import flash.text.*;
public dynamic class level6StartDoor extends MovieClip {
public var level_txt:TextField;
public function level6StartDoor(){
addFrameScript(0, frame1, 11, frame12);
}
function frame12(){
stop();
}
function frame1(){
stop();
}
}
}//package
Section 93 (185 B)
//level7 (level7)
package {
import flash.display.*;
public dynamic class level7 extends MovieClip {
public var heroYhit:MovieClip;
public var corridor:MovieClip;
}
}//package
Section 94 (360 B)
//level7StartDoor (level7StartDoor)
package {
import flash.display.*;
import flash.text.*;
public dynamic class level7StartDoor extends MovieClip {
public var level_txt:TextField;
public function level7StartDoor(){
addFrameScript(0, frame1, 11, frame12);
}
function frame12(){
stop();
}
function frame1(){
stop();
}
}
}//package
Section 95 (185 B)
//level8 (level8)
package {
import flash.display.*;
public dynamic class level8 extends MovieClip {
public var heroYhit:MovieClip;
public var corridor:MovieClip;
}
}//package
Section 96 (360 B)
//level8StartDoor (level8StartDoor)
package {
import flash.display.*;
import flash.text.*;
public dynamic class level8StartDoor extends MovieClip {
public var level_txt:TextField;
public function level8StartDoor(){
addFrameScript(0, frame1, 11, frame12);
}
function frame12(){
stop();
}
function frame1(){
stop();
}
}
}//package
Section 97 (109 B)
//loop4 (loop4)
package {
import flash.media.*;
public dynamic class loop4 extends Sound {
}
}//package
Section 98 (6.79 KiB) ● ●
//Main (Main)
package {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import com.tweegee.games.*;
import caurina.transitions.properties.*;
import flash.net.*;
public dynamic class Main extends MovieClip {
private var _coverSqr:Sprite;
private var _isLogin:String;
private var _NUM_OF_LEVELS:int;// = 8
private var _finalScore:int;
public var __id0_:AdlibToolbar;
private var _gameEngine:Sprite;
private var _saveScore:Function;
private var logoMc:MovieClip;
private var _endScreen:Sprite;
private var _startScreen:Sprite;
private var _gameCont:Sprite;
private var _levelNum:int;
private var _winScreen:Sprite;
private var _saveScoreBtn:MovieClip;
private var _stage:Stage;
public function Main():void{
_NUM_OF_LEVELS = 8;
super();
DisplayShortcuts.init();
FilterShortcuts.init();
initGame(stage, savescorefunc, "logout");
__setProp___id0__Scene1_Layer1_1();
}
private function clearGameEngine():void{
_finalScore = Object(_gameEngine).score;
Object(_gameEngine).clearGame();
}
public function initGame(_arg1:Stage, _arg2:Function, _arg3:String):void{
_stage = _arg1;
_saveScore = _arg2;
_isLogin = _arg3;
Adlib.addSound(new doorbell(), {name:"doorBell", volume:0.8, dontPlay:true});
Adlib.addSound(new clickBtn(), {name:"click", volume:8, dontPlay:true});
Adlib.addSound(new loop4(), {isBG:true, volume:0.8, loop:int.MAX_VALUE});
logoMc = new tweegeeLogo();
logoMc.x = (_arg1.stageWidth - logoMc.width);
logoMc.y = (_arg1.stageHeight - logoMc.height);
logoMc.addEventListener(MouseEvent.CLICK, handleLogoClick);
logoMc.buttonMode = true;
addChild(logoMc);
this.setGame();
}
function __setProp___id0__Scene1_Layer1_1(){
try {
__id0_["componentInspectorSetting"] = true;
} catch(e:Error) {
};
__id0_.animate = true;
__id0_.icon = "soundObj";
__id0_.position = "top";
try {
__id0_["componentInspectorSetting"] = false;
} catch(e:Error) {
};
}
private function handleStartGame(_arg1:MouseEvent):void{
var e = _arg1;
Adlib.playSound("doorBell");
_startScreen["start_btn"].removeEventListener(MouseEvent.CLICK, handleStartGame);
Tweener.addTween(_coverSqr, {alpha:1});
_gameCont.addChild(_coverSqr);
_gameEngine = new GameEngine(_stage);
_gameEngine.addEventListener(GameEngine.LEVEL_END, handleEndLevel);
_gameEngine.addEventListener(GameEngine.GAME_END, handleLoseGame);
_gameEngine.addEventListener(GameEngine.GAME_CLEARED, handleShowEndScreen);
_gameCont.addChildAt(_gameEngine, 0);
_gameCont.removeChild(_startScreen);
_startScreen = null;
Tweener.addTween(_coverSqr, {alpha:0, _Blur_blurX:5, _Blur_blurY:7, time:1, onComplete:function (){
_gameCont.removeChild(_coverSqr);
startLevel();
}});
}
private function handleShowEndScreen(_arg1:Event):void{
var e = _arg1;
_gameCont.removeChild(_gameEngine);
_gameEngine = null;
_endScreen = new endScreen();
_endScreen["score_txt"].text = String(_finalScore);
_endScreen["playAgain_btn"].addEventListener(MouseEvent.CLICK, disableBtns);
if ((((_isLogin == "login")) && ((_finalScore > 0)))){
_saveScoreBtn = new saveScore();
_saveScoreBtn.addEventListener(MouseEvent.CLICK, disableBtns);
_saveScoreBtn.x = 646;
_saveScoreBtn.y = 376;
_endScreen.addChild(_saveScoreBtn);
};
_coverSqr.alpha = 1;
_gameCont.addChild(_coverSqr);
_gameCont.addChildAt(_endScreen, 0);
Tweener.addTween(_coverSqr, {alpha:0, time:0.5, transition:"linear", onComplete:function (){
_gameCont.removeChild(_coverSqr);
}});
}
private function handleLogoClick(_arg1:MouseEvent):void{
var url:String;
var request:URLRequest;
var e = _arg1;
url = "http://www.tweegee.com/ch/main/Affiliation.aspx?AffCamId=c4f7cf71-c980-4d46-b2ab-786622846368";
request = new URLRequest(url);
try {
navigateToURL(request, "_blank");
} catch(e:Error) {
};
}
public function startGame():void{
}
private function disableBtns(_arg1:MouseEvent):void{
Adlib.playSound("click");
_endScreen["playAgain_btn"].removeEventListener(MouseEvent.CLICK, disableBtns);
_endScreen["playAgain_btn"].buttonMode = false;
if (_saveScoreBtn != null){
_saveScoreBtn.removeEventListener(MouseEvent.CLICK, disableBtns);
_saveScoreBtn.buttonMode = false;
};
_coverSqr.alpha = 0;
_gameCont.addChild(_coverSqr);
Tweener.addTween(_coverSqr, {alpha:1, time:0.5, transition:"linear", onComplete:callFunc, onCompleteParams:[_arg1.currentTarget]});
}
private function savescorefunc():void{
}
private function callFunc(_arg1:MovieClip):void{
if (_arg1.name == "playAgain_btn"){
this.restartGame();
} else {
_saveScore.call(this, _finalScore);
};
}
private function goStraightToLevel():void{
_levelNum = 0;
_coverSqr = new coverSqr();
_gameCont = new Sprite();
addChildAt(_gameCont, 0);
_gameEngine = new GameEngine(_stage);
_gameEngine.addEventListener(GameEngine.LEVEL_END, handleEndLevel);
_gameEngine.addEventListener(GameEngine.GAME_END, handleLoseGame);
_gameEngine.addEventListener(GameEngine.GAME_CLEARED, handleShowEndScreen);
_gameCont.addChildAt(_gameEngine, 0);
this.startLevel();
}
public function restartGame():void{
_gameCont.removeChild(_endScreen);
_endScreen = null;
removeChild(_gameCont);
_gameCont = null;
this.setGame();
}
private function handleEndLevel(_arg1:Event):void{
if (_levelNum < _NUM_OF_LEVELS){
this.startLevel();
} else {
this.handleWinGame();
};
}
private function startLevel():void{
_levelNum++;
Object(_gameEngine).setLevel(_levelNum);
}
private function setGame():void{
_finalScore = 0;
_levelNum = 0;
_gameCont = new Sprite();
_coverSqr = new coverSqr();
_startScreen = new startScreen();
_gameCont.addChild(_startScreen);
addChildAt(_gameCont, 0);
Adlib.addSound(new woosh(), {name:"woosh", volume:0.8, delay:200});
Adlib.addSound(new woosh(), {name:"woosh", volume:0.8, delay:700});
Adlib.addSound(new woosh(), {name:"woosh", volume:0.8, delay:1500});
_startScreen["start_btn"].addEventListener(MouseEvent.CLICK, handleStartGame);
}
private function handleWinGame():void{
_gameEngine.alpha = 0;
_winScreen = new winGameScreen();
_coverSqr.alpha = 1;
_gameCont.addChild(_coverSqr);
_gameCont.addChildAt(_winScreen, 0);
Adlib.addSound(new tada(), {volume:1});
Adlib.addSound(new yeah(), {volume:1.5});
Tweener.addTween(_coverSqr, {alpha:0, time:1, transition:"linear", onComplete:function (){
_gameCont.removeChild(_coverSqr);
}});
Tweener.addTween(this, {delay:6, onComplete:function (){
_gameCont.removeChild(_winScreen);
_winScreen = null;
clearGameEngine();
}});
}
private function handleLoseGame(_arg1:Event):void{
this.clearGameEngine();
}
}
}//package
Section 99 (249 B)
//Messages (Messages)
package {
public class Messages {
public static const POINTS:String = "pnts";
public static const LEVEL:String = "Level";
public static const LIFE:String = "life";
public function Messages():void{
}
}
}//package
Section 100 (206 B)
//msgTxtMov (msgTxtMov)
package {
import flash.display.*;
import flash.text.*;
public dynamic class msgTxtMov extends MovieClip {
public var val:TextField;
public var txt:TextField;
}
}//package
Section 101 (112 B)
//pic1 (pic1)
package {
import flash.display.*;
public dynamic class pic1 extends MovieClip {
}
}//package
Section 102 (112 B)
//pic2 (pic2)
package {
import flash.display.*;
public dynamic class pic2 extends MovieClip {
}
}//package
Section 103 (112 B)
//pic3 (pic3)
package {
import flash.display.*;
public dynamic class pic3 extends MovieClip {
}
}//package
Section 104 (112 B)
//pic4 (pic4)
package {
import flash.display.*;
public dynamic class pic4 extends MovieClip {
}
}//package
Section 105 (115 B)
//pics1 (pics1)
package {
import flash.display.*;
public dynamic class pics1 extends MovieClip {
}
}//package
Section 106 (115 B)
//pics2 (pics2)
package {
import flash.display.*;
public dynamic class pics2 extends MovieClip {
}
}//package
Section 107 (115 B)
//pics3 (pics3)
package {
import flash.display.*;
public dynamic class pics3 extends MovieClip {
}
}//package
Section 108 (144 B)
//plant (plant)
package {
import flash.display.*;
public dynamic class plant extends MovieClip {
public var hit:MovieClip;
}
}//package
Section 109 (2.68 KiB) ●
//RoomObj (RoomObj)
package {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import caurina.transitions.properties.*;
import flash.utils.*;
public class RoomObj extends MovieClip {
private var _type:int;
private var _speed:Number;
private var _angle:Number;
public static const REMOVE_OBJ:String = "remove obj";
public static const CHECK_HIT:String = "check hit";
public function RoomObj(_arg1:String, _arg2:int, _arg3:Number):void{
var _local4:Class;
var _local5:MovieClip;
var _local6:MovieClip;
super();
DisplayShortcuts.init();
FilterShortcuts.init();
_speed = _arg3;
_type = _arg2;
_local4 = (getDefinitionByName(_arg1) as Class);
_local5 = new (_local4);
if (_local5["hit"] != null){
_local6 = _local5["hit"];
addChild(_local6);
};
addChild(_local5);
}
public function beginMove(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:String, _arg8:Number, _arg9:Number):void{
var startX = _arg1;
var startY = _arg2;
var endX = _arg3;
var endY = _arg4;
var moveTime = _arg5;
var startScale = _arg6;
var trans = _arg7;
var finalX = _arg8;
var speedMult = _arg9;
_angle = ((endY - startY) / (endX - startX));
Tweener.addTween(this, {scaleX:startScale, scaleY:startScale, x:startX, y:startY});
Tweener.addTween(this, {scaleX:1, scaleY:1, x:endX, y:endY, time:moveTime, transition:trans, onComplete:function (){
dispatchEvent(new Event("check hit"));
fadeOut(finalX, speedMult);
}});
}
public function fadeOut(_arg1:Number, _arg2:Number):void{
var endY:Number;
var moveTime:Number;
var endX = _arg1;
var speedMult = _arg2;
endY = (this.y + (this.height * 1.5));
moveTime = (((((this.y / endY) * (1 - _speed)) + _speed) * speedMult) / 2);
Tweener.addTween(this, {scaleX:1.3, scaleY:1.3, transition:"linear", x:endX, y:endY, time:moveTime, onComplete:function (){
dispatchEvent(new Event("remove obj"));
}});
}
public function handleHit():void{
Tweener.removeTweens(this);
Tweener.addTween(this, {width:(this.width / 1.1), _Glow_color:0xFF0000, _Glow_strength:2, _Glow_alpha:0.7, _Glow_blurX:15, _Glow_blurY:15, time:0.3, transition:"easeInSine"});
Tweener.addTween(this, {alpha:0, time:0.2, delay:0.3, transition:"linear", onComplete:function (){
dispatchEvent(new Event("remove obj"));
}});
}
public function get type():int{
return (_type);
}
public function erase():void{
var _local1:int;
var _local2:MovieClip;
_local1 = MovieClip(this).numChildren;
while (_local1--) {
_local2 = MovieClip(this.getChildAt(0));
removeChild(_local2);
_local2 = null;
};
}
}
}//package
Section 110 (773 B)
//RoomObjs (RoomObjs)
package {
public class RoomObjs {
private var _speed:Number;
private var _name:String;
private var _reduceValue:Number;
private var _type:int;
public function RoomObjs():void{
}
public function get reduceValue():Number{
return (_reduceValue);
}
public function get name():String{
return (_name);
}
public function set speed(_arg1:Number):void{
_speed = _arg1;
}
public function set name(_arg1:String):void{
_name = _arg1;
}
public function get type():int{
return (_type);
}
public function set type(_arg1:int):void{
_type = _arg1;
}
public function set reduceValue(_arg1:Number):void{
_reduceValue = _arg1;
}
public function get speed():Number{
return (_speed);
}
}
}//package
Section 111 (127 B)
//saveScore (saveScore)
package {
import flash.display.*;
public dynamic class saveScore extends MovieClip {
}
}//package
Section 112 (118 B)
//shelf1 (shelf1)
package {
import flash.display.*;
public dynamic class shelf1 extends MovieClip {
}
}//package
Section 113 (118 B)
//shelf2 (shelf2)
package {
import flash.display.*;
public dynamic class shelf2 extends MovieClip {
}
}//package
Section 114 (124 B)
//soundObj (soundObj)
package {
import flash.display.*;
public dynamic class soundObj extends MovieClip {
}
}//package
Section 115 (112 B)
//squick (squick)
package {
import flash.media.*;
public dynamic class squick extends Sound {
}
}//package
Section 116 (278 B)
//startScreen (startScreen)
package {
import flash.display.*;
public dynamic class startScreen extends MovieClip {
public var start_btn:MovieClip;
public function startScreen(){
addFrameScript(175, frame176);
}
function frame176(){
stop();
}
}
}//package
Section 117 (144 B)
//stool (stool)
package {
import flash.display.*;
public dynamic class stool extends MovieClip {
public var hit:MovieClip;
}
}//package
Section 118 (106 B)
//tada (tada)
package {
import flash.media.*;
public dynamic class tada extends Sound {
}
}//package
Section 119 (106 B)
//tata (tata)
package {
import flash.media.*;
public dynamic class tata extends Sound {
}
}//package
Section 120 (133 B)
//tweegeeLogo (tweegeeLogo)
package {
import flash.display.*;
public dynamic class tweegeeLogo extends MovieClip {
}
}//package
Section 121 (115 B)
//twingle (twingle)
package {
import flash.media.*;
public dynamic class twingle extends Sound {
}
}//package
Section 122 (109 B)
//tzing (tzing)
package {
import flash.media.*;
public dynamic class tzing extends Sound {
}
}//package
Section 123 (279 B)
//uncle1Hug (uncle1Hug)
package {
import flash.display.*;
public dynamic class uncle1Hug extends MovieClip {
public function uncle1Hug(){
addFrameScript(0, frame1, 37, frame38);
}
function frame1(){
stop();
}
function frame38(){
stop();
}
}
}//package
Section 124 (159 B)
//uncle1Walk (uncle1Walk)
package {
import flash.display.*;
public dynamic class uncle1Walk extends MovieClip {
public var hit:MovieClip;
}
}//package
Section 125 (279 B)
//uncle2Hug (uncle2Hug)
package {
import flash.display.*;
public dynamic class uncle2Hug extends MovieClip {
public function uncle2Hug(){
addFrameScript(0, frame1, 46, frame47);
}
function frame1(){
stop();
}
function frame47(){
stop();
}
}
}//package
Section 126 (159 B)
//uncle2Walk (uncle2Walk)
package {
import flash.display.*;
public dynamic class uncle2Walk extends MovieClip {
public var hit:MovieClip;
}
}//package
Section 127 (139 B)
//winGameScreen (winGameScreen)
package {
import flash.display.*;
public dynamic class winGameScreen extends MovieClip {
}
}//package
Section 128 (141 B)
//wool (wool)
package {
import flash.display.*;
public dynamic class wool extends MovieClip {
public var hit:MovieClip;
}
}//package
Section 129 (109 B)
//woosh (woosh)
package {
import flash.media.*;
public dynamic class woosh extends Sound {
}
}//package
Section 130 (105 B)
//yeah (yeah)
package {
import flash.media.*;
public dynamic class yeah extends Sound {
}
}//package