Section 1
//Game (aisle.Game)
package aisle {
import flash.display.*;
import flash.events.*;
import com.greensock.*;
import flash.geom.*;
import flash.filters.*;
import tamba.events.*;
import tamba.utils.*;
import com.greensock.easing.*;
import tamba.media.*;
public class Game extends MovieClip {
private var baseTileWidth:int;// = 66
private var diminishRate:Number;// = 0.88
private var gameStarted:Boolean;// = false
private var die:MovieClip;
private var turn:int;// = 0
private var playerMoving:Boolean;// = false
private var ladders:Array;
private var score:int;// = 0
private var colSpacing:Number;// = 8
private var bonusGame;
private var orderDecided:Boolean;// = false
private var board:MovieClip;
private var playerNames:Array;
private var lastHelp:MovieClip;
private var rowSpacing:Number;// = 8
private var bonusUnderlay:MovieClip;
private var snakes:Array;
private var help:MovieClip;
private var _boardY:int;// = 480
private var snakeIndex:int;// = 0
private var tiles:Array;
private var tileColours:Object;
private var horizon:int;// = 480
private var lastDieRoll:int;// = 1
private var boardData:Object;
private var gameSuccess:Boolean;// = false
private var players:Array;
private var baseRowHeight:Number;// = 0
private var rowY:Number;// = 0
private var hudScore:MovieClip;
private var ladderIndex:int;// = 0
private var boardRows:Array;
private var playerHolder:MovieClip;
private var messageClip:MovieClip;
private var exitMessageClip:MovieClip;
private var baseRowWidth:Number;// = 0
private var enterMessageClip:MovieClip;
public function Game():void{
colSpacing = 8;
rowSpacing = 8;
rowY = 0;
lastDieRoll = 1;
baseTileWidth = 66;
baseRowWidth = 0;
baseRowHeight = 0;
diminishRate = 0.88;
horizon = 480;
_boardY = 480;
players = [];
playerMoving = false;
turn = 0;
score = 0;
orderDecided = false;
gameStarted = false;
playerNames = ["The Bride", "The Ex"];
gameSuccess = false;
ladders = ["The band you really wanted is available for the wedding reception", "Your tough fitness regime has meant you are a perfect fit for your dress on the big day", "The reception venue of your dreams has had a cancellation and you have managed to book it for your wedding day", "Your fiancé has managed to get your hotel and flights upgraded for your honeymoon", "Your best friend has arranged an amazing hen do with all your favourite things", "Your parents have had a cash windfall and agreed to pay for the whole wedding and all the trimmings"];
snakes = ["Your fiancé has got cold feet ahead of the wedding", "Your bridesmaids hate the dresses you have chosen", "You discover that you are pregnant and will have a \"bump\" by the Big Day", "Your fiancé's dad has slept with one of your bridesmaids", "Your fiancé slept with a stripper on his stag night", "Your fiancé slept with a stripper on his stag night", "You caught your fiancé trying on your clothes", "The best man pronounces his undying love for you"];
ladderIndex = 0;
snakeIndex = 0;
tiles = [];
tileColours = {normal:12918295, snake:0, ladder:0xFFCF00, bonus:39629};
boardData = {layout:[[37, 38, 39, 40, 41, 42, 43, 44], [36, 0, 0, 0, 0, 0, 0, 0], [35, 34, 33, 32, 31, 30, 29, 28], [0, 0, 0, 0, 0, 0, 0, 27], [19, 20, 21, 22, 23, 24, 25, 26], [18, 0, 0, 0, 0, 0, 0, 0], [17, 16, 15, 14, 13, 12, 11, 10], [0, 0, 0, 0, 0, 0, 0, 9], [1, 2, 3, 4, 5, 6, 7, 8]], warps:[[6, 11], [13, 4], [20, 15], [23, 33], [32, 40], [41, 25], [5, 99], [18, 99], [28, 99], [37, 99], [33, 99], [14, 99], [21, 99], [10, 99]]};
super();
initBoard();
initPlayers();
initDie();
initHUD();
TweenLite.delayedCall(1, showIntro);
ladders = shuffleArray(ladders);
snakes = shuffleArray(snakes);
}
private function walkRoute(_arg1:MovieClip):void{
var _local2:int;
gameStarted = true;
if (_arg1.routeIndex >= _arg1.route.length){
Audio.playEffect("boing");
playerMoving = false;
if (_arg1.tile >= (tiles.length - 1)){
endGame(_arg1);
} else {
_local2 = tiles[_arg1.tile].warp;
if (tiles[_arg1.tile].type == "bonus"){
playBonusGame(_arg1.id);
return;
};
if (_local2 > 0){
_arg1.warpDistance = _local2;
if (_arg1.id == 2){
TweenLite.delayedCall(0.5, warpPlayer, [_arg1]);
} else {
if (_local2 > _arg1.tile){
showBonusMessage(_arg1, "ladder");
} else {
showBonusMessage(_arg1, "snake");
};
};
return;
};
if (_arg1.lastRoll == 6){
turn--;
};
TweenLite.delayedCall(1, nextTurn);
};
return;
};
moveToNextSquare(_arg1);
}
private function nextTurn():void{
var _local1:MovieClip;
turn++;
_local1 = players[(turn % 2)];
if (orderDecided){
TweenLite.to(this, 0.5, {boardY:(Math.abs((_local1.y + _local1.initY)) + 480)});
};
if (_local1.id == 2){
TweenLite.delayedCall(1, rollDie);
removeDieListeners();
} else {
addDieListeners();
};
if (orderDecided){
if (!gameStarted){
if (_local1.id == 1){
showHelp((_local1.name + " rolled the highest and goes first..."));
} else {
showHelp((_local1.name + " rolled the highest. They go first..."));
};
} else {
if ((_local1.tile + 6) >= tiles.length){
showHelp((_local1.name + "'s turn - an exact roll is needed!"));
} else {
if (_local1.lastRoll == 6){
showHelp((_local1.name + " gets an extra turn for rolling a 6."));
} else {
if (_local1.id == 1){
showHelp((_local1.name + "'s turn. Click the die to roll it."));
} else {
showHelp((_local1.name + "'s turn. Please wait..."));
};
};
};
};
};
}
private function initPlayer(_arg1:MovieClip):void{
var _local2:Point;
_arg1.tile = 0;
_local2 = getTilePosition(_arg1.tile, _arg1.id);
_arg1.x = _local2.x;
_arg1.y = (_arg1.initY = _local2.y);
_arg1.scaleX = (_arg1.scaleY = getTileScale(_arg1.tile));
_arg1.route = [];
_arg1.routeIndex = 0;
_arg1.startRoll = 0;
_arg1.lastRoll = 0;
_arg1.jumpY = (_arg1.mc_inner.y - 20);
_arg1.name = playerNames[players.length];
players.push(_arg1);
_arg1.id = players.length;
playerHolder.addChild(_arg1);
}
private function movePlayerBy(_arg1:MovieClip, _arg2:int):void{
var _local3:int;
var _local4:int;
var _local5:Point;
_local3 = (_arg1.tile + 1);
_arg1.tile = (_arg1.tile + _arg2);
_arg1.route = [];
_arg1.routeIndex = 0;
if (_arg1.tile < 0){
_arg1.tile = 0;
} else {
if (_arg1.tile >= tiles.length){
_arg1.tile = (_local3 - 1);
};
};
if (_arg2 < 0){
_local3 = (_local3 - 2);
trace(_local3, _arg1.tile);
_local4 = _local3;
while (_local4 >= _arg1.tile) {
trace("tp:", _local4);
_local5 = getTilePosition(_local4, _arg1.id);
_arg1.route.push({x:_local5.x, y:_local5.y, scale:getTileScale(_local4), warp:false});
_local4--;
};
} else {
_local4 = _local3;
while (_local4 <= _arg1.tile) {
_local5 = getTilePosition(_local4, _arg1.id);
_arg1.route.push({x:_local5.x, y:_local5.y, scale:getTileScale(_local4), warp:false});
_local4++;
};
};
walkRoute(_arg1);
}
private function exitGame():void{
TweenLite.to(this, 1, {boardY:0});
TweenLite.to(exitMessageClip, 1, {x:-500});
TweenLite.to(die, 1, {x:700});
TweenLite.to(hudScore, 1, {x:700});
dispatchEvent(new EventWithParams("onComplete", {score:score, success:gameSuccess}));
}
private function onStartGameClicked(_arg1:MouseEvent):void{
startGame();
}
private function removeDieListeners():void{
TweenMax.to(die, 0.25, {scaleX:1, scaleY:1});
die.removeEventListener(MouseEvent.CLICK, onDieClicked);
die.buttonMode = false;
}
public function get boardY():int{
return (_boardY);
}
public function set boardY(_arg1:int):void{
_boardY = _arg1;
board.y = _boardY;
board.scaleX = (board.scaleY = (_boardY / horizon));
}
private function getTilePosition(_arg1:int, _arg2:int=0):Point{
var _local3:MovieClip;
var _local4:Point;
var _local5:Number;
_local3 = tiles[_arg1];
_local4 = _local3.centerPoint;
_local5 = getTileScale(_arg1);
return (new Point(((_local3.x + _local4.x) * _local5), ((((_local3.y + _local4.y) * _local5) + _local3.parent.y) + _arg2)));
}
private function getTileScale(_arg1:int):Number{
var _local2:MovieClip;
_local2 = tiles[_arg1];
return (_local2.parent.scaleX);
}
private function showBonusMessage(_arg1:MovieClip, _arg2:String="snake"):void{
var _local3:String;
messageClip = new game_message();
messageClip.player = _arg1;
if (_arg2 == "snake"){
_local3 = snakes[snakeIndex];
snakeIndex++;
if (snakeIndex >= snakes.length){
snakeIndex = 0;
};
messageClip.text_message.textColor = 0xFFFFFF;
messageClip.text_progress.textColor = 0xFFFFFF;
messageClip.text_progress.text = "Slide down the hearts...";
} else {
_local3 = ladders[ladderIndex];
ladderIndex++;
if (ladderIndex >= ladders.length){
ladderIndex = 0;
};
messageClip.text_progress.text = "Climb up the rings...";
};
messageClip.gotoAndStop(_arg2);
messageClip.text_message.text = _local3;
messageClip.x = 700;
messageClip.y = 300;
addChild(messageClip);
Utils.addButtonListener(messageClip.btn_ok, onOkClicked);
TweenLite.to(messageClip, 0.5, {ease:Back.easeOut, x:300});
}
private function initPlayers():void{
initPlayer(new player_1());
initPlayer(new player_2());
}
private function onDieAscentComplete():void{
var _local1:int;
lastDieRoll = Utils.randomInteger(1, 6);
_local1 = (turn % 2);
if (orderDecided){
} else {
if (_local1 == 0){
};
};
die.mc_die.gotoAndStop(lastDieRoll);
Audio.playEffect("dice_bounce");
TweenLite.to(die.mc_die, 1, {ease:Bounce.easeOut, y:0, onComplete:onDieDescentComplete, onUpdate:onRollDieUpdate});
}
private function rollDie():void{
if (!playerMoving){
removeDieListeners();
Audio.playEffect("dice_flick");
TweenLite.to(die.mc_die, 0.5, {y:-600, onComplete:onDieAscentComplete, onUpdate:onRollDieUpdate});
};
}
private function onDieClicked(_arg1:MouseEvent):void{
rollDie();
}
private function addDieListeners():void{
TweenMax.to(die, 0.25, {delay:0.5, scaleX:1.05, scaleY:1.05, yoyo:true, repeat:-1});
die.addEventListener(MouseEvent.CLICK, onDieClicked, false, 0, true);
die.buttonMode = true;
}
private function updateScoreHUD():void{
hudScore.text_score.text = ("Score: " + score);
}
private function shuffleArray(_arg1:Array):Array{
var _local2:Array;
_local2 = [];
while (_arg1.length > 0) {
_local2.push(_arg1.splice(Math.round((Math.random() * (_arg1.length - 1))), 1)[0]);
};
return (_local2);
}
private function onBonusGameComplete(_arg1:EventWithParams):void{
var _local2:int;
var _local3:int;
_local2 = _arg1.params.player;
_local3 = _arg1.params.move;
TweenLite.to(bonusUnderlay, 0.5, {delay:0.5, alpha:0});
TweenLite.to(bonusGame, 0.5, {delay:0.5, x:-200, onComplete:onBonusGameExit, onCompleteParams:[_local2, _local3]});
}
private function makeRow(_arg1:int):void{
var _local2:Number;
var _local3:Number;
var _local4:MovieClip;
var _local5:int;
var _local6:Tile;
var _local7:int;
_local2 = (baseTileWidth + colSpacing);
_local3 = (-(_local2) * 3.5);
_local4 = new MovieClip();
_local5 = 0;
while (_local5 < 8) {
_local6 = new Tile(baseTileWidth, tileColours["normal"]);
_local7 = boardData.layout[_arg1][_local5];
_local6.x = _local3;
_local6.row = _arg1;
if (_local7 > 0){
_local6.num = _local7;
_local6.warp = -1;
tiles.push(_local6);
} else {
_local6.visible = false;
};
_local4.addChild(_local6);
_local3 = (_local3 + _local2);
_local5++;
};
if (baseRowWidth == 0){
baseRowWidth = _local4.width;
baseRowHeight = _local4.height;
} else {
baseRowWidth = (baseRowWidth * diminishRate);
baseRowHeight = (baseRowHeight * diminishRate);
};
_local4.height = baseRowHeight;
_local4.width = baseRowWidth;
_local4.y = rowY;
rowY = (rowY - (_local4.height + rowSpacing));
rowSpacing = (rowSpacing * diminishRate);
board.addChildAt(_local4, 0);
}
private function sortPlayerDepths():void{
var _local1:Array;
var _local2:int;
_local1 = players.concat();
_local1.sortOn("y", Array.NUMERIC);
_local2 = _local1.length;
while (_local2--) {
_local1[_local2].parent.setChildIndex(_local1[_local2], _local2);
};
}
private function moveToNextSquare(_arg1:MovieClip):void{
var _local2:Object;
var _local3:Function;
var _local4:Number;
_local2 = _arg1.route[_arg1.routeIndex];
if (_arg1.routeIndex > 0){
Audio.playEffect("boing");
};
_arg1.routeIndex++;
if (_local2.x < _arg1.x){
_arg1.mc_inner.scaleX = -1;
} else {
_arg1.mc_inner.scaleX = 1;
};
_local3 = walkRoute;
_local4 = 0.5;
TweenMax.to(_arg1.mc_inner, (_local4 * 0.5), {y:_arg1.jumpY, yoyo:true, repeat:1});
TweenLite.to(_arg1, _local4, {ease:Linear.easeInOut, x:_local2.x, y:_local2.y, scaleX:_local2.scale, scaleY:_local2.scale, onComplete:_local3, onCompleteParams:[_arg1], onUpdate:sortPlayerDepths});
TweenLite.to(this, _local4, {boardY:(Math.abs((_local2.y + _arg1.initY)) + 480)});
}
private function initDie():void{
die = new game_die();
die.x = 410;
die.y = 560;
addChild(die);
die.alpha = 0;
die.visible = false;
}
private function endGame(_arg1:MovieClip):void{
var _local2:int;
var _local3:int;
exitMessageClip = new gameover_message();
exitMessageClip.x = 700;
exitMessageClip.y = 300;
if (_arg1.id == 1){
exitMessageClip.mc_result.gotoAndStop(1);
_local2 = Math.abs((players[0].tile - players[1].tile));
_local3 = (_local2 * 50);
score = (score + _local3);
updateScoreHUD();
trace("Bonus:", _local3);
exitMessageClip.text_bonus.text = (((("including " + _local3) + " bonus points for finishing ") + _local2) + " tiles ahead");
gameSuccess = true;
} else {
exitMessageClip.mc_result.gotoAndStop(2);
};
exitMessageClip.mc_bride.gotoAndStop(_arg1.id);
showHelp((_arg1.name + " is the winner!"), false);
exitMessageClip.text_score.text = ("Your score: " + score);
Utils.addButtonListener(exitMessageClip.btn_next, onExitGameClicked);
addChild(exitMessageClip);
TweenLite.to(exitMessageClip, 0.5, {x:300, ease:Back.easeOut});
}
private function showIntro():void{
enterMessageClip = new gamestart_message();
enterMessageClip.x = 700;
enterMessageClip.y = 300;
enterMessageClip.mc_bride.gotoAndStop(1);
Utils.addButtonListener(enterMessageClip.btn_start, onStartGameClicked);
addChild(enterMessageClip);
TweenLite.to(enterMessageClip, 0.5, {x:300, ease:Back.easeOut});
}
private function hideBonusMessage():void{
TweenLite.to(messageClip, 0.5, {ease:Back.easeIn, y:700, onComplete:function (){
warpPlayer(messageClip.player);
messageClip.parent.removeChild(messageClip);
}});
}
private function startGame():void{
die.visible = true;
showHelp("Roll the die - highest roll goes first");
TweenLite.to(die, 1, {alpha:1});
TweenLite.to(enterMessageClip, 1, {x:-500, onComplete:function (){
enterMessageClip.parent.removeChild(enterMessageClip);
}});
}
private function warpPlayer(_arg1:MovieClip):void{
var _local2:int;
var _local3:Point;
_local2 = _arg1.warpDistance;
_arg1.route = [];
_arg1.routeIndex = 0;
_local3 = getTilePosition(_local2, _arg1.id);
_arg1.route.push({x:_local3.x, y:_local3.y, scale:getTileScale(_local2), warp:false});
_arg1.tile = _local2;
walkRoute(_arg1);
}
private function onOkClicked(_arg1:MouseEvent):void{
hideBonusMessage();
}
private function onDieDescentComplete():void{
TweenLite.delayedCall(0.5, actOnDiceRoll);
}
private function initBoard():void{
var _local1:int;
var _local2:int;
var _local3:Array;
var _local4:String;
var _local5:int;
var _local6:int;
var _local7:MovieClip;
var _local8:Point;
board = new MovieClip();
playerHolder = new MovieClip();
board.x = 300;
board.y = boardY;
boardData.layout.reverse();
_local1 = boardData.layout.length;
_local2 = 0;
while (_local2 < _local1) {
makeRow(_local2);
_local2++;
};
tiles = tiles.sortOn("num", Array.NUMERIC);
_local3 = boardData.warps;
_local1 = _local3.length;
_local2 = 0;
while (_local2 < _local1) {
_local5 = (_local3[_local2][0] - 1);
_local6 = (_local3[_local2][1] - 1);
if (_local6 > 90){
_local4 = "bonus";
} else {
if (_local5 < _local6){
_local4 = "ladder";
} else {
_local4 = "snake";
};
};
tiles[_local5].type = _local4;
tiles[_local5].tileColour = tileColours[_local4];
_local7 = new snake_ladder();
_local8 = getTilePosition(_local5, 0);
_local7.gotoAndStop(((_local4 + "_") + (_local5 + 1)));
_local7.x = _local8.x;
_local7.y = _local8.y;
board.addChild(_local7);
tiles[_local5].warp = _local6;
tiles[_local5].warpDistance = Math.abs((_local5 - _local6));
_local2++;
};
board.addChild(playerHolder);
boardY = 1900;
addChild(board);
board.filters = [new DropShadowFilter(7, 45, 0, 0.75, 7, 7, 0.7)];
TweenLite.to(this, 1, {boardY:horizon, ease:Back.easeOut, onComplete:addDieListeners});
}
private function onRollDieUpdate():void{
var _local1:Number;
_local1 = (1 - (Math.abs(die.mc_die.y) / 700));
die.mc_shadow.scaleX = (die.mc_shadow.scaleY = _local1);
}
private function initHUD():void{
hudScore = new hud_score();
hudScore.x = 500;
hudScore.y = 510;
updateScoreHUD();
addChild(hudScore);
}
private function playBonusGame(_arg1:int):void{
var _local2:Number;
_local2 = (Math.random() * 500);
if (_local2 > 250){
bonusGame = new GameSlots(_arg1);
} else {
bonusGame = new GameSpinner(_arg1);
};
bonusGame.addEventListener("onBonusComplete", onBonusGameComplete, false, 0, true);
bonusGame.y = 300;
bonusGame.x = 800;
bonusUnderlay = new bonus_underlay();
bonusUnderlay.alpha = 0;
addChild(bonusUnderlay);
addChild(bonusGame);
TweenLite.to(bonusGame, 0.5, {x:300, ease:Back.easeOut});
TweenLite.to(bonusUnderlay, 0.5, {alpha:0.5});
}
private function showHelp(_arg1:String, _arg2:Boolean=true):void{
var message = _arg1;
var showNext = _arg2;
if (help != null){
lastHelp = help;
TweenLite.to(lastHelp, 0.5, {y:610});
};
if (!showNext){
return;
};
help = new game_help();
help.x = 10;
help.y = 610;
help.text_help.text = message;
addChild(help);
TweenLite.to(help, 0.5, {y:510, onComplete:function (){
if (lastHelp != null){
lastHelp.parent.removeChild(lastHelp);
lastHelp = null;
};
}});
}
private function onBonusGameExit(_arg1:int, _arg2:int):void{
var _local3:MovieClip;
var _local4:int;
var _local5:int;
bonusGame.parent.removeChild(bonusGame);
bonusUnderlay.parent.removeChild(bonusUnderlay);
bonusGame = null;
_local4 = players.length;
_local5 = 0;
while (_local5 < _local4) {
if (players[_local5].id == _arg1){
_local3 = players[_local5];
trace("Moving player", _local5);
};
_local5++;
};
_local3.lastRoll = -1;
if (_arg2 > 0){
showHelp(((_local3.name + " moves forward ") + _arg2));
} else {
showHelp(((_local3.name + " goes back ") + Math.abs(_arg2)));
};
movePlayerBy(_local3, _arg2);
}
private function onExitGameClicked(_arg1:MouseEvent):void{
exitGame();
}
private function actOnDiceRoll():void{
var _local1:int;
_local1 = (turn % 2);
if (orderDecided){
playerMoving = true;
players[_local1].lastRoll = lastDieRoll;
movePlayerBy(players[_local1], lastDieRoll);
if (players[_local1].id == 1){
score = (score + (lastDieRoll * 10));
updateScoreHUD();
};
showHelp(((players[_local1].name + " rolled a ") + lastDieRoll));
} else {
players[_local1].startRoll = lastDieRoll;
if (turn == 1){
if (players[0].startRoll == players[1].startRoll){
showHelp((("You both rolled " + players[0].startRoll) + ". Roll again."));
} else {
players = players.sortOn("startRoll", (Array.NUMERIC | Array.DESCENDING));
showHelp((players[0].name + " goes first"));
orderDecided = true;
};
turn = -1;
} else {
showHelp((((((players[_local1].name + " rolled a ") + lastDieRoll) + ", can ") + players[1].name) + " roll higher?"));
};
nextTurn();
};
}
}
}//package aisle
Section 2
//GameSlotReel (aisle.GameSlotReel)
package aisle {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.geom.*;
import flash.filters.*;
public class GameSlotReel extends MovieClip {
public var id:int;// = 0
private var _distance:Number;// = 0
private var sliceHeight:int;// = 0
private var reelWidth:int;// = 102
private var reelHeight:int;// = 200
public function GameSlotReel(_arg1:String):void{
var _local2:MovieClip;
var _local3:BitmapData;
var _local4:uint;
var _local5:Bitmap;
id = 0;
_distance = 0;
reelWidth = 102;
reelHeight = 200;
sliceHeight = 0;
super();
_local2 = new (getDefinitionByName(_arg1));
_local3 = new BitmapData(_local2.width, _local2.height, true, 0xFF0000);
_local3.draw(_local2);
_local5 = new Bitmap(_local3, "auto", false);
_local4 = 0;
while (_local4 < 2) {
_local5 = new Bitmap(_local3, "never", false);
_local5.y = (_local4 * -(_local2.height));
addChild(_local5);
_local4++;
};
sliceHeight = _local2.height;
this.distance = 0;
this.addEventListener(Event.REMOVED_FROM_STAGE, onRemovedFromStage, false, 0, true);
}
public function get distance():Number{
return (_distance);
}
private function onRemovedFromStage(_arg1:Event):void{
trace("Removing slot");
}
public function set distance(_arg1:Number):void{
var _local2:int;
var _local3:*;
_local2 = ((_distance - _arg1) * 0.5);
this.filters = [new BlurFilter(0, _local2)];
_distance = _arg1;
_local3 = _distance;
if (_local3 < reelHeight){
_local3 = (_local3 % sliceHeight);
};
this.scrollRect = new Rectangle(0, _local3, reelWidth, reelHeight);
}
}
}//package aisle
Section 3
//GameSlots (aisle.GameSlots)
package aisle {
import flash.display.*;
import flash.events.*;
import com.greensock.*;
import tamba.events.*;
import tamba.utils.*;
import com.greensock.easing.*;
import tamba.media.*;
public class GameSlots extends MovieClip {
private var result:Array;
private var reelsStopped:int;// = 0
private var reels:Array;
private var spinClicked:Boolean;// = false
private var base:MovieClip;
private var player:int;// = 1
private var results:Array;
public function GameSlots(_arg1:int):void{
spinClicked = false;
reelsStopped = 0;
player = 1;
results = [[1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2], ["+", "-", "+", "-", "+", "-", "+", "-", "+", "-", "+", "-"], [6, 5, 4, 3, 2, 1, 6, 5, 4, 3, 2, 1]];
result = ["", "", 0];
super();
player = _arg1;
base = new game_slots();
if (player == 1){
base.btn_spin.addEventListener(MouseEvent.CLICK, onSpinClicked, false, 0, true);
base.btn_spin.buttonMode = true;
} else {
base.mc_help.visible = false;
base.btn_spin.visible = false;
TweenLite.delayedCall(1, onSpinClicked);
};
initReels();
addChild(base);
}
private function onHoldClicked(_arg1:MouseEvent):void{
var _local2:*;
var _local3:*;
_local2 = _arg1.currentTarget;
_local3 = _local2.name.replace("btn_hold_", "");
stopReel(_local3);
_local2.removeEventListener(MouseEvent.CLICK, onHoldClicked);
_local2.buttonMode = false;
TweenLite.to(_local2, 0.5, {alpha:0});
}
private function onSpinClicked(_arg1:MouseEvent=null):void{
if (!spinClicked){
spinAllReels();
spinClicked = true;
base.btn_spin.removeEventListener(MouseEvent.CLICK, onSpinClicked);
base.btn_spin.buttonMode = false;
TweenLite.to(base.btn_spin, 0.5, {alpha:0});
};
}
private function stopReel(_arg1:int):void{
var _local2:GameSlotReel;
var _local3:int;
var _local4:Number;
trace("Stopping reel", _arg1);
_local2 = base[("mc_reel_" + _arg1)].getChildAt(0);
TweenMax.killTweensOf(_local2);
_local3 = _local2.distance;
_local4 = (_local3 - ((_local3 % 129) + 32));
_local4 = (_local4 - 129);
Audio.playEffect("fruitclick");
TweenMax.to(_local2, 0.5, {distance:_local4, ease:Back.easeOut, onComplete:getReelResult, onCompleteParams:[_local2]});
}
private function initReels():void{
var _local1:GameSlotReel;
var _local2:int;
var _local3:MovieClip;
reels = [];
_local2 = 0;
while (_local2 < 3) {
_local3 = base[("mc_reel_" + _local2)];
_local1 = new GameSlotReel(("game_slots_spinner_" + _local2));
_local1.distance = -(Utils.randomInteger(100, 700));
_local1.filters = [];
_local1.id = _local2;
_local3.addChild(_local1);
reels.push(_local1);
_local2++;
};
}
private function spinReel(_arg1:GameSlotReel, _arg2:int):void{
var _local3:int;
var _local4:Number;
_local3 = (_arg1.distance - 774);
_local4 = 0.5;
TweenMax.to(_arg1, _local4, {distance:_local3, repeat:-1, ease:Linear.easeInOut});
}
private function getReelResult(_arg1:GameSlotReel):void{
var _local2:int;
var _local3:Number;
var _local4:int;
var _local5:int;
_local2 = Math.abs(_arg1.distance);
_local3 = (Math.floor((12 * (_local2 / 1548))) - 1);
if (_local3 < 0){
_local3 = 5;
};
reelsStopped++;
result[_arg1.id] = results[_arg1.id][_local3];
if (reelsStopped == 3){
Audio.stopEffects();
Audio.playEffect("fruitstop");
_local4 = result[0];
_local5 = (result[1] + result[2]);
dispatchEvent(new EventWithParams("onBonusComplete", {player:_local4, move:_local5}));
};
}
private function spinAllReels():void{
var _local1:GameSlotReel;
var _local2:int;
var _local3:MovieClip;
var _local4:Number;
_local2 = 0;
while (_local2 < 3) {
_local3 = base[("btn_hold_" + _local2)];
Audio.playEffect("fruit", 9999);
if (player == 1){
_local3.addEventListener(MouseEvent.CLICK, onHoldClicked, false, 0, true);
_local3.buttonMode = true;
} else {
_local4 = ((Math.random() * 1.5) + _local2);
TweenLite.delayedCall(_local4, stopReel, [_local2]);
};
_local1 = reels[_local2];
spinReel(_local1, (3 - _local2));
_local2++;
};
}
}
}//package aisle
Section 4
//GameSpinner (aisle.GameSpinner)
package aisle {
import flash.display.*;
import flash.events.*;
import com.greensock.*;
import tamba.events.*;
import tamba.utils.*;
import com.greensock.easing.*;
import tamba.media.*;
public class GameSpinner extends MovieClip {
private var segments:Array;
private var base:MovieClip;
private var player:int;// = 1
public function GameSpinner(_arg1:int):void{
segments = [6, -4, 2, -6, 4, -2];
player = 1;
super();
player = _arg1;
base = new game_spinner();
if (player == 1){
base.btn_spin.addEventListener(MouseEvent.CLICK, onSpinClicked, false, 0, true);
base.btn_spin.buttonMode = true;
} else {
base.mc_help.visible = false;
base.btn_spin.visible = false;
TweenLite.delayedCall(1, spinWheel);
};
addChild(base);
}
private function getResult():void{
var _local1:*;
var _local2:Number;
_local1 = base.mc_wheel.rotation;
if (_local1 < 0){
_local1 = (360 + _local1);
};
_local2 = Math.round((_local1 / (360 / 6)));
if (_local2 >= segments.length){
_local2 = 0;
};
dispatchEvent(new EventWithParams("onBonusComplete", {player:player, move:segments[_local2]}));
}
private function onSpinClicked(_arg1:MouseEvent=null):void{
base.btn_spin.removeEventListener(MouseEvent.CLICK, onSpinClicked);
base.btn_spin.buttonMode = false;
TweenLite.to(base.btn_spin, 0.5, {alpha:0});
spinWheel();
}
private function spinWheel():void{
var _local1:int;
var _local2:int;
var _local3:int;
_local1 = 5;
_local2 = Utils.randomInteger(2, 358);
_local3 = ((360 + _local2) * _local1);
Audio.playEffect("wheel");
TweenLite.to(base.mc_wheel, 5.2, {rotation:_local3, ease:Strong.easeOut, onComplete:getResult, onUpdate:onSpinUpdate});
base.btn_spin.removeEventListener(MouseEvent.CLICK, onSpinClicked);
}
private function onSpinUpdate():void{
var _local1:int;
_local1 = base.mc_wheel.rotation;
if ((_local1 % 60) == 0){
};
}
}
}//package aisle
Section 5
//HighScores (aisle.HighScores)
package aisle {
import flash.display.*;
import tamba.game.*;
public class HighScores extends Leaderboard {
public function HighScores(_arg1:String, _arg2:String, _arg3:uint, _arg4:String, _arg5:String, _arg6:String){
super(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6);
}
override protected function onLineAdded(_arg1:MovieClip, _arg2:Object):void{
_arg1.score.text = _arg2.points;
}
}
}//package aisle
Section 6
//Main (aisle.Main)
package aisle {
import flash.display.*;
import flash.events.*;
import tamba.events.*;
import tamba.utils.*;
import com.memecounter.*;
import tamba.display.*;
import flash.system.*;
public class Main extends MovieClip {
private var preloaderMovie:MovieClip;
private var preloader:Preloader;
private var params:Object;
private var contentHolder:MovieClip;
private var screenManager:ScreenManager;
public function Main():void{
var rootURL:String;
params = stage.root.loaderInfo.parameters;
super();
addFrameScript(0, frame1);
Security.allowDomain("*");
Security.allowInsecureDomain("*");
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
stage.showDefaultContextMenu = false;
try {
Tracker.init(1037, root);
} catch(e:Error) {
};
rootURL = "http://www.tamba-games.co.uk/uktv/aisle/";
GlobalObject.set("rootURL", rootURL);
GlobalObject.set("remotingURL", (rootURL + "amfphp/gateway.php"));
GlobalObject.set("bookmarkURL", "http://www.tamba-games.co.uk/bookmarks.php");
GlobalObject.set("clientURL", "http://www.isitreally.co.uk");
GlobalObject.set("atv", "Up The Aisle season runs every weeknight in February on Really with new series of Bridezillas and Tool Academy.");
addChild(new bg_main());
contentHolder = new MovieClip();
contentHolder.mask = new StageMask(600, 600);
addChild(contentHolder);
startPreloader();
}
private function startPreloader():void{
preloaderMovie = new screen_preloader();
contentHolder.addChild(preloaderMovie);
preloader = new Preloader(this);
preloader.addEventListener("onPreloaderProgress", onPreloaderProgress);
preloader.addEventListener("onPreloaderComplete", onPreloaderComplete);
preloader.start();
}
function frame1(){
stop();
}
private function onAssetsFrameEntered(_arg1:Event=null):void{
GlobalObject.set("standalone", true);
if (params["fb_network"] == 1){
GlobalObject.set("standalone", false);
};
stage.removeEventListener(Event.ENTER_FRAME, onAssetsFrameEntered);
if (preloaderMovie != null){
contentHolder.removeChild(preloaderMovie);
};
screenManager = new ScreenManager();
contentHolder.addChild(screenManager);
}
private function onPreloaderComplete(_arg1:EventWithParams=null):void{
preloader.removeEventListener("onPreloaderProgress", onPreloaderProgress);
preloader.removeEventListener("onPreloaderComplete", onPreloaderComplete);
preloader = null;
stage.addEventListener(Event.ENTER_FRAME, onAssetsFrameEntered);
gotoAndStop(3);
}
private function onPreloaderProgress(_arg1:EventWithParams):void{
preloaderMovie.text_pct.text = (Math.floor((100 * _arg1.params.progress)) + "%");
}
}
}//package aisle
Section 7
//ScreenManager (aisle.ScreenManager)
package aisle {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import com.greensock.*;
import tamba.events.*;
import tamba.utils.*;
import com.greensock.easing.*;
import tamba.game.*;
import tamba.net.*;
import flash.net.*;
import tamba.ui.*;
import tamba.media.*;
import flash.text.*;
public class ScreenManager extends MovieClip {
private var clientID:String;// = "uktvaisle"
private var standalone:Boolean;// = false
private var sendFriend:SendToFriend;
public var objExtIF:LocalConnection;
private var highScores:HighScores;
private var screen:MovieClip;
private var scoreSubmitted:Boolean;// = false
private var score:int;// = 0
private var maxSendFriend:int;// = 3
private var screenName:String;// = "screen_title"
private var screenInfo:Object;
private var submitScore:SubmitScore;
public var strExtIFName:String;
private var remoting:Remoting;
private var footer:MovieClip;
private var gameSuccess:Boolean;// = false
private var checkBox:CheckBox;
private var gameOver:Boolean;// = false
private var game:Game;
public function ScreenManager():void{
clientID = "uktvaisle";
standalone = false;
screenName = "screen_title";
score = 0;
scoreSubmitted = false;
maxSendFriend = 3;
screenInfo = {screen_instructions:{init:initInstructions}, screen_sendfriend:{init:initSendFriend}, screen_leaderboard:{init:initLeaderboard}, screen_submitscore:{init:initSubmitScore}, screen_title:{init:initTitleScreen}, screen_game:{init:initGame}, screen_gameover:{init:initGameOver}, screen_atv:{init:initATV}};
gameSuccess = false;
gameOver = false;
super();
standalone = GlobalObject.get("standalone");
initFooter();
switchScreen("screen_title");
this.addEventListener(Event.ADDED_TO_STAGE, onAddedToStage);
remoting = new Remoting(GlobalObject.get("remotingURL"), "gamefunctions");
remoting.addEventListener("onRemotingSuccess", onRemotingSuccess, false, 0, true);
remoting.addEventListener("onRemotingError", onRemotingError, false, 0, true);
remoting.call("getATV", null);
}
private function onHighScoresSuccess(_arg1:EventWithParams):void{
var _local2:MovieClip;
_local2 = _arg1.params.data;
_local2.x = 20;
_local2.y = 18;
screen.mc_board.addChild(_local2);
highScores.removeEventListener("onSuccess", onHighScoresSuccess);
}
private function removeScreen():void{
animateScreenOut();
TweenLite.delayedCall(0.8, onScreenAnimatedOut);
}
private function onLeaderboardClicked(_arg1:MouseEvent):void{
switchScreen("screen_leaderboard");
}
private function initSubmitScore():void{
var _local1:MovieClip;
checkBox = new CheckBox("checkbox", "tick", false);
if (standalone){
screen.mc_input.mc_facebook.visible = false;
};
_local1 = screen.mc_input.mc_facebook.mc_checkbox;
checkBox.x = _local1.x;
checkBox.y = _local1.y;
screen.mc_input.mc_facebook.addChild(checkBox);
screen.mc_input.mc_facebook.removeChild(_local1);
screen.mc_input.text_score.text = ("Your score: " + score);
Utils.addButtonListener(screen.btn_submit, onScoreSubmitted);
Utils.addButtonListener(screen.btn_back, onMainMenuClicked);
}
private function onBookmarkClicked(_arg1:MouseEvent):void{
var _local2:String;
_local2 = ((((GlobalObject.get("bookmarkURL") + "?client=") + clientID) + "&bookmark=") + _arg1.currentTarget.name.replace("btn_", ""));
GetURL.goto(_local2, "_blank");
}
private function onTermsClicked(_arg1:MouseEvent):void{
GetURL.goto("http://www.comcero.com/info/terms.jsp#games", "_blank");
}
private function onClientClicked(_arg1:MouseEvent):void{
GetURL.goto(GlobalObject.get("clientURL"), "_blank");
}
private function onScoreSubmitted(_arg1:Event):void{
screen.text_error.text = "Please wait...";
screen.btn_submit.visible = false;
submitScore = new SubmitScore(GlobalObject.get("remotingURL"), "GameFunctions", "1uktvaisle2201", screen.mc_input.input_yourname.text, screen.mc_input.input_youremail.text, score, 0);
submitScore.addEventListener("onSuccess", onSubmitScoreSuccess, false, 0, true);
submitScore.addEventListener("onError", onSubmitScoreError, false, 0, true);
submitScore.submit();
}
private function initLeaderboard():void{
highScores = new HighScores(GlobalObject.get("remotingURL"), "GameFunctions", 200, "leaderboard_line", "scroll_track", "scroll_face");
highScores.addEventListener("onSuccess", onHighScoresSuccess, false, 0, true);
highScores.makeLeaderboard();
Utils.addButtonListener(screen.btn_back, onMainMenuClicked);
}
private function onInstructionsClicked(_arg1:MouseEvent):void{
switchScreen("screen_instructions");
}
private function addScreen():void{
screen = new (getDefinitionByName(screenName));
animateScreenIn();
Utils.addButtonListener(screen.mc_client, onClientClicked);
screenInfo[screenName].init();
addChildAt(screen, 0);
}
private function onMainMenuClicked(_arg1:MouseEvent):void{
if (!gameOver){
switchScreen("screen_title");
} else {
switchScreen("screen_gameover");
};
}
public function callFBJS(_arg1:String, _arg2:Array):void{
if (strExtIFName){
objExtIF.send(strExtIFName, "callFBJS", _arg1, _arg2);
};
}
private function onScreenAnimatedOut():void{
screen.parent.removeChild(screen);
screen = null;
addScreen();
}
private function removeGame():void{
if (game != null){
game.parent.removeChild(game);
game = null;
};
}
private function resetSubmitScore():void{
submitScore.removeEventListener("onSuccess", onSubmitScoreSuccess);
submitScore.removeEventListener("onError", onSubmitScoreError);
}
private function onRemotingError(_arg1:EventWithParams):void{
trace("Error: Remoting");
}
private function animateScreenIn():void{
var _local1:int;
var _local2:*;
_local1 = screen.numChildren;
while (_local1--) {
_local2 = screen.getChildAt(_local1);
if ((_local2 is MovieClip)){
_local2.targetX = _local2.x;
if (_local2.x <= 300){
_local2.x = -(_local2.width);
} else {
_local2.x = 600;
};
TweenLite.to(_local2, 0.4, {x:_local2.targetX, delay:(_local1 * 0.05), ease:Back.easeOut});
};
};
}
private function onSendFriendSuccess(_arg1:EventWithParams):void{
screen.text_error.htmlText = "Send successful! Would you like to send more?";
resetSendFriend();
screen.btn_submit.visible = true;
}
private function switchScreen(_arg1:String):void{
screenName = _arg1;
Utils.clearButtonListeners();
if (screen != null){
removeScreen();
} else {
addScreen();
};
}
private function initFooter():void{
footer = new screen_footer();
footer.btn_sound.text_label.htmlText = "Turn sound off";
Utils.addButtonListener(footer.btn_tamba, onTambaClicked, null, null, true);
Utils.addButtonListener(footer.btn_sound, onSoundClicked, null, null, true);
addChild(footer);
initBookmarks(footer.mc_bookmarks);
}
private function onSubmitScoreError(_arg1:EventWithParams):void{
screen.text_error.text = _arg1.params.message;
screen.btn_submit.visible = true;
resetSubmitScore();
}
private function onTambaClicked(_arg1:MouseEvent):void{
GetURL.goto("http://www.tamba.co.uk", "_blank");
}
private function onGameComplete(_arg1:EventWithParams):void{
score = _arg1.params.score;
gameSuccess = _arg1.params.success;
gameOver = true;
TweenLite.delayedCall(1, removeGame);
switchScreen("screen_atv");
}
private function initBookmarks(_arg1:MovieClip):void{
var _local2:uint;
_local2 = _arg1.numChildren;
while (_local2--) {
if (_arg1.getChildAt(_local2).name.indexOf("btn_") === 0){
Utils.addButtonListener(_arg1.getChildAt(_local2), onBookmarkClicked, null, null, true);
};
};
}
private function initInstructions():void{
var _local1:MovieClip;
var _local2:ScrollBar;
_local1 = screen.mc_content.mc_scroll;
_local2 = new ScrollBar(_local1, (_local1.width + 15), 230, "scroll_track_2", "scroll_face");
screen.mc_content.addChild(_local2);
Utils.addButtonListener(screen.btn_back, onMainMenuClicked);
}
private function onSendFriendClicked(_arg1:MouseEvent):void{
if (!standalone){
callFBJS("showFriendSelector", []);
} else {
switchScreen("screen_sendfriend");
};
}
private function resetSendFriend():void{
var _local1:*;
_local1 = 1;
while (_local1 <= maxSendFriend) {
screen.mc_input[("input_friendname_" + _local1)].htmlText = "";
screen.mc_input[("input_friendemail_" + _local1)].htmlText = "";
_local1++;
};
screen.btn_submit.visible = true;
}
private function onSendFriendSubmitted(_arg1:MouseEvent):void{
var _local2:Array;
var _local3:*;
screen.btn_submit.visible = false;
screen.text_error.htmlText = "Please wait...";
_local2 = [];
_local3 = 1;
while (_local3 <= maxSendFriend) {
if (((!((screen.mc_input[("input_friendname_" + _local3)].text == ""))) || (!((screen.mc_input[("input_friendemail_" + _local3)].text == ""))))){
_local2.push([screen.mc_input[("input_friendname_" + _local3)].text, screen.mc_input[("input_friendemail_" + _local3)].text]);
};
_local3++;
};
sendFriend = new SendToFriend(GlobalObject.get("remotingURL"), "GameFunctions", screen.mc_input.input_yourname.text, screen.mc_input.input_youremail.text, _local2);
sendFriend.addEventListener("onSuccess", onSendFriendSuccess, false, 0, true);
sendFriend.addEventListener("onError", onSendFriendError, false, 0, true);
sendFriend.send();
}
private function onPlayClicked(_arg1:MouseEvent):void{
switchScreen("screen_game");
}
private function initGame():void{
game = new Game();
game.addEventListener("onComplete", onGameComplete, false, 0, true);
screen.addChild(game);
TweenLite.to(footer.mc_bookmarks, 0.5, {y:600});
}
private function initGameOver():void{
if (gameSuccess){
screen.mc_bride.gotoAndStop(1);
} else {
screen.mc_bride.gotoAndStop(2);
};
screen.mc_bride.mouseChildren = false;
screen.mc_bride.mouseEnabled = false;
Utils.addButtonListener(screen.btn_play, onPlayClicked);
Utils.addButtonListener(screen.btn_submitscore, onSubmitScoreClicked);
Utils.addButtonListener(screen.btn_leaderboard, onLeaderboardClicked);
Utils.addButtonListener(screen.btn_sendfriend, onSendFriendClicked);
}
private function onRemotingSuccess(_arg1:EventWithParams):void{
GlobalObject.set("atv", _arg1.params.data);
}
private function animateScreenOut():void{
var _local1:int;
var _local2:*;
_local1 = screen.numChildren;
while (_local1--) {
_local2 = screen.getChildAt(_local1);
if ((((_local2 is MovieClip)) && (!((_local2 == game))))){
if (_local2.x <= 300){
_local2.targetX = -(_local2.width);
} else {
_local2.targetX = 600;
};
TweenLite.to(_local2, 0.4, {x:_local2.targetX, delay:(_local1 * 0.05), ease:Back.easeIn});
};
};
}
private function initATV():void{
var _local1:*;
_local1 = screen.mc_bubble.mc_text.text_atv;
_local1.htmlText = GlobalObject.get("atv");
_local1.autoSize = TextFieldAutoSize.CENTER;
_local1.y = ((_local1.parent.height - _local1.height) * 0.5);
Utils.addButtonListener(screen.btn_next, onGameOverClicked);
}
private function initSendFriend():void{
var _local1:int;
var _local2:int;
screen.mc_input.input_yourname.tabIndex = 0;
screen.mc_input.input_youremail.tabIndex = 1;
_local1 = 2;
_local2 = 1;
while (_local2 <= maxSendFriend) {
screen.mc_input[("input_friendname_" + _local2)].tabIndex = _local1;
_local1++;
screen.mc_input[("input_friendemail_" + _local2)].tabIndex = _local1;
_local1++;
_local2++;
};
Utils.addButtonListener(screen.btn_submit, onSendFriendSubmitted);
Utils.addButtonListener(screen.btn_back, onMainMenuClicked);
}
private function onGameOverClicked(_arg1:MouseEvent):void{
switchScreen("screen_gameover");
}
private function onSendFriendError(_arg1:EventWithParams):void{
trace("error", _arg1.params.message);
screen.text_error.htmlText = _arg1.params.message;
screen.btn_submit.visible = true;
}
private function onSubmitScoreSuccess(_arg1:EventWithParams):void{
screen.text_error.text = "";
scoreSubmitted = true;
switchScreen("screen_leaderboard");
if (checkBox.checked){
callFBJS("setPermissions", [score]);
};
}
private function onSoundClicked(_arg1:MouseEvent):void{
if (Audio.musicVolume > 0){
Audio.effectsVolume = 0;
Audio.musicVolume = 0;
_arg1.currentTarget.text_label.htmlText = "Turn sound on";
} else {
Audio.effectsVolume = 1;
Audio.musicVolume = 1;
_arg1.currentTarget.text_label.htmlText = "Turn sound off";
};
}
private function onAddedToStage(_arg1:Event):void{
objExtIF = new LocalConnection();
strExtIFName = LoaderInfo(stage.root.loaderInfo).parameters.fb_local_connection;
}
private function onSubmitScoreClicked(_arg1:MouseEvent):void{
if (!scoreSubmitted){
switchScreen("screen_submitscore");
} else {
switchScreen("screen_leaderboard");
};
}
private function initTitleScreen():void{
Utils.addButtonListener(screen.btn_play, onPlayClicked);
Utils.addButtonListener(screen.btn_instructions, onInstructionsClicked);
Utils.addButtonListener(screen.btn_leaderboard, onLeaderboardClicked);
Utils.addButtonListener(screen.btn_sendfriend, onSendFriendClicked);
}
}
}//package aisle
Section 8
//Tile (aisle.Tile)
package aisle {
import flash.display.*;
import flash.events.*;
import fl.motion.*;
import flash.geom.*;
public class Tile extends MovieClip {
private var _type:String;// = ""
public var num:int;// = 0
public var warp:int;// = 0
private var symbol:MovieClip;
private var offset:Number;// = 99
public var warpDistance:int;// = 0
private var _tileColour:int;// = 0
private var blDots:MovieClip;
private var tileWidth:int;// = 0
private var base:MovieClip;
public var row:int;// = 0
private var trDots:MovieClip;
public function Tile(_arg1:int, _arg2:Number):void{
num = 0;
warp = 0;
warpDistance = 0;
row = 0;
_type = "";
tileWidth = 0;
offset = 99;
_tileColour = 0;
super();
base = new MovieClip();
tileWidth = _arg1;
_tileColour = _arg2;
updateTile();
addChild(base);
this.addEventListener(Event.ADDED_TO_STAGE, onAddedToStage);
}
public function updateTile():void{
var _local1:Number;
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Color;
base.graphics.clear();
offset = (-(this.x) * 0.1);
_local1 = tileWidth;
_local2 = (_local1 * 0.5);
_local3 = (_local1 * 0.712);
base.graphics.beginFill(_tileColour);
_local4 = (_local1 * 0.9);
_local5 = (_local4 * 0.5);
base.graphics.lineStyle(0.5, 0, 1);
base.graphics.moveTo(-(_local2), 0);
base.graphics.lineTo(_local2, 0);
base.graphics.lineTo((_local5 + offset), -(_local3));
base.graphics.lineTo((-(_local5) + offset), -(_local3));
base.graphics.lineTo(-(_local2), 0);
base.graphics.endFill();
if (trDots != null){
trDots.parent.removeChild(trDots);
};
if (blDots != null){
blDots.parent.removeChild(blDots);
};
if (symbol != null){
symbol.parent.removeChild(symbol);
};
trDots = new tile_dots_tr();
trDots.x = (_local5 + offset);
trDots.y = -(_local3);
base.addChild(trDots);
blDots = new tile_dots_bl();
blDots.x = -(_local2);
blDots.y = 0;
base.addChild(blDots);
symbol = new tile_symbol();
symbol.gotoAndStop(type);
symbol.x = (offset * 0.5);
symbol.y = (-(_local3) * 0.5);
symbol.rotation = (offset * 0.25);
base.addChild(symbol);
if (_tileColour < 1){
_local6 = new Color();
_local6.setTint(0xFFFFFF, 1);
blDots.transform.colorTransform = _local6;
trDots.transform.colorTransform = _local6;
};
}
public function set tileColour(_arg1:Number):void{
_tileColour = _arg1;
updateTile();
}
public function get centerPoint():Point{
return (new Point((0 + offset), (-(height) * 0.5)));
}
public function set type(_arg1:String):void{
_type = _arg1;
updateTile();
}
private function onAddedToStage(_arg1:Event):void{
updateTile();
}
public function get type():String{
return (_type);
}
}
}//package aisle
Section 9
//MD5 (com.adobe.crypto.MD5)
package com.adobe.crypto {
import flash.utils.*;
import com.adobe.utils.*;
public class MD5 {
public static var digest:ByteArray;
private static function ff(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(f, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
private static function f(_arg1:int, _arg2:int, _arg3:int):int{
return (((_arg1 & _arg2) | (~(_arg1) & _arg3)));
}
private static function g(_arg1:int, _arg2:int, _arg3:int):int{
return (((_arg1 & _arg3) | (_arg2 & ~(_arg3))));
}
private static function h(_arg1:int, _arg2:int, _arg3:int):int{
return (((_arg1 ^ _arg2) ^ _arg3));
}
private static function i(_arg1:int, _arg2:int, _arg3:int):int{
return ((_arg2 ^ (_arg1 | ~(_arg3))));
}
private static function transform(_arg1:Function, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int, _arg8:int):int{
var _local9:int;
_local9 = (((_arg2 + int(_arg1(_arg3, _arg4, _arg5))) + _arg6) + _arg8);
return ((IntUtil.rol(_local9, _arg7) + _arg3));
}
private static function hh(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(h, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
public static function hash(_arg1:String):String{
var _local2:ByteArray;
_local2 = new ByteArray();
_local2.writeUTFBytes(_arg1);
return (hashBinary(_local2));
}
private static function createBlocks(_arg1:ByteArray):Array{
var _local2:Array;
var _local3:int;
var _local4:int;
var _local5:int;
_local2 = new Array();
_local3 = (_arg1.length * 8);
_local4 = 0xFF;
_local5 = 0;
while (_local5 < _local3) {
_local2[int((_local5 >> 5))] = (_local2[int((_local5 >> 5))] | ((_arg1[(_local5 / 8)] & _local4) << (_local5 % 32)));
_local5 = (_local5 + 8);
};
_local2[int((_local3 >> 5))] = (_local2[int((_local3 >> 5))] | (128 << (_local3 % 32)));
_local2[int(((((_local3 + 64) >>> 9) << 4) + 14))] = _local3;
return (_local2);
}
public static function hashBinary(_arg1:ByteArray):String{
var _local2:int;
var _local3:int;
var _local4:int;
var _local5:int;
var _local6:int;
var _local7:int;
var _local8:int;
var _local9:int;
var _local10:Array;
var _local11:int;
var _local12:int;
_local2 = 1732584193;
_local3 = -271733879;
_local4 = -1732584194;
_local5 = 271733878;
_local10 = createBlocks(_arg1);
_local11 = _local10.length;
_local12 = 0;
while (_local12 < _local11) {
_local6 = _local2;
_local7 = _local3;
_local8 = _local4;
_local9 = _local5;
_local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 0))], 7, -680876936);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 1))], 12, -389564586);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 2))], 17, 606105819);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 3))], 22, -1044525330);
_local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 4))], 7, -176418897);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 5))], 12, 1200080426);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 6))], 17, -1473231341);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 7))], 22, -45705983);
_local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 8))], 7, 1770035416);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 9))], 12, -1958414417);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 10))], 17, -42063);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 11))], 22, -1990404162);
_local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 12))], 7, 1804603682);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 13))], 12, -40341101);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 14))], 17, -1502002290);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 15))], 22, 1236535329);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 1))], 5, -165796510);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 6))], 9, -1069501632);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 11))], 14, 643717713);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 0))], 20, -373897302);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 5))], 5, -701558691);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 10))], 9, 38016083);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 15))], 14, -660478335);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 4))], 20, -405537848);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 9))], 5, 568446438);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 14))], 9, -1019803690);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 3))], 14, -187363961);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 8))], 20, 1163531501);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 13))], 5, -1444681467);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 2))], 9, -51403784);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 7))], 14, 1735328473);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 12))], 20, -1926607734);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 5))], 4, -378558);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 8))], 11, -2022574463);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 11))], 16, 1839030562);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 14))], 23, -35309556);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 1))], 4, -1530992060);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 4))], 11, 1272893353);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 7))], 16, -155497632);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 10))], 23, -1094730640);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 13))], 4, 681279174);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 0))], 11, -358537222);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 3))], 16, -722521979);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 6))], 23, 76029189);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 9))], 4, -640364487);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 12))], 11, -421815835);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 15))], 16, 530742520);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 2))], 23, -995338651);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 0))], 6, -198630844);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 7))], 10, 1126891415);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 14))], 15, -1416354905);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 5))], 21, -57434055);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 12))], 6, 1700485571);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 3))], 10, -1894986606);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 10))], 15, -1051523);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 1))], 21, -2054922799);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 8))], 6, 1873313359);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 15))], 10, -30611744);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 6))], 15, -1560198380);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 13))], 21, 1309151649);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 4))], 6, -145523070);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 11))], 10, -1120210379);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 2))], 15, 718787259);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 9))], 21, -343485551);
_local2 = (_local2 + _local6);
_local3 = (_local3 + _local7);
_local4 = (_local4 + _local8);
_local5 = (_local5 + _local9);
_local12 = (_local12 + 16);
};
digest = new ByteArray();
digest.writeInt(_local2);
digest.writeInt(_local3);
digest.writeInt(_local4);
digest.writeInt(_local5);
digest.position = 0;
return ((((IntUtil.toHex(_local2) + IntUtil.toHex(_local3)) + IntUtil.toHex(_local4)) + IntUtil.toHex(_local5)));
}
private static function gg(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(g, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
private static function ii(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(i, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
public static function hashBytes(_arg1:ByteArray):String{
return (hashBinary(_arg1));
}
}
}//package com.adobe.crypto
Section 10
//IntUtil (com.adobe.utils.IntUtil)
package com.adobe.utils {
public class IntUtil {
private static var hexChars:String = "0123456789abcdef";
public static function toHex(_arg1:int, _arg2:Boolean=false):String{
var _local3:String;
var _local4:int;
var _local5:int;
_local3 = "";
if (_arg2){
_local4 = 0;
while (_local4 < 4) {
_local3 = (_local3 + (hexChars.charAt(((_arg1 >> (((3 - _local4) * 8) + 4)) & 15)) + hexChars.charAt(((_arg1 >> ((3 - _local4) * 8)) & 15))));
_local4++;
};
} else {
_local5 = 0;
while (_local5 < 4) {
_local3 = (_local3 + (hexChars.charAt(((_arg1 >> ((_local5 * 8) + 4)) & 15)) + hexChars.charAt(((_arg1 >> (_local5 * 8)) & 15))));
_local5++;
};
};
return (_local3);
}
public static function ror(_arg1:int, _arg2:int):uint{
var _local3:int;
_local3 = (32 - _arg2);
return (((_arg1 << _local3) | (_arg1 >>> (32 - _local3))));
}
public static function rol(_arg1:int, _arg2:int):int{
return (((_arg1 << _arg2) | (_arg1 >>> (32 - _arg2))));
}
}
}//package com.adobe.utils
Section 11
//PropTween (com.greensock.core.PropTween)
package com.greensock.core {
public class PropTween {
public var start:Number;
public var name:String;
public var prevNode:PropTween;
public var change:Number;
public var target:Object;
public var priority:int;
public var property:String;
public var nextNode:PropTween;
public var isPlugin:Boolean;
public function PropTween(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Number, _arg5:String, _arg6:Boolean, _arg7:PropTween=null, _arg8:int=0){
this.target = _arg1;
this.property = _arg2;
this.start = _arg3;
this.change = _arg4;
this.name = _arg5;
this.isPlugin = _arg6;
if (_arg7){
_arg7.prevNode = this;
this.nextNode = _arg7;
};
this.priority = _arg8;
}
}
}//package com.greensock.core
Section 12
//SimpleTimeline (com.greensock.core.SimpleTimeline)
package com.greensock.core {
public class SimpleTimeline extends TweenCore {
public var autoRemoveChildren:Boolean;
protected var _lastChild:TweenCore;
protected var _firstChild:TweenCore;
public function SimpleTimeline(_arg1:Object=null){
super(0, _arg1);
}
override public function renderTime(_arg1:Number, _arg2:Boolean=false, _arg3:Boolean=false):void{
var _local4:TweenCore;
var _local5:Number;
var _local6:TweenCore;
_local4 = _firstChild;
this.cachedTotalTime = _arg1;
this.cachedTime = _arg1;
while (_local4) {
_local6 = _local4.nextNode;
if (((_local4.active) || ((((((_arg1 >= _local4.cachedStartTime)) && (!(_local4.cachedPaused)))) && (!(_local4.gc)))))){
if (!_local4.cachedReversed){
_local4.renderTime(((_arg1 - _local4.cachedStartTime) * _local4.cachedTimeScale), _arg2, false);
} else {
_local5 = (_local4.cacheIsDirty) ? _local4.totalDuration : _local4.cachedTotalDuration;
_local4.renderTime((_local5 - ((_arg1 - _local4.cachedStartTime) * _local4.cachedTimeScale)), _arg2, false);
};
};
_local4 = _local6;
};
}
public function addChild(_arg1:TweenCore):void{
if (((!(_arg1.gc)) && (_arg1.timeline))){
_arg1.timeline.remove(_arg1, true);
};
_arg1.timeline = this;
if (_arg1.gc){
_arg1.setEnabled(true, true);
};
if (_firstChild){
_firstChild.prevNode = _arg1;
};
_arg1.nextNode = _firstChild;
_firstChild = _arg1;
_arg1.prevNode = null;
}
public function get rawTime():Number{
return (this.cachedTotalTime);
}
public function remove(_arg1:TweenCore, _arg2:Boolean=false):void{
if (((!(_arg1.gc)) && (!(_arg2)))){
_arg1.setEnabled(false, true);
};
if (_arg1.nextNode){
_arg1.nextNode.prevNode = _arg1.prevNode;
} else {
if (_lastChild == _arg1){
_lastChild = _arg1.prevNode;
};
};
if (_arg1.prevNode){
_arg1.prevNode.nextNode = _arg1.nextNode;
} else {
if (_firstChild == _arg1){
_firstChild = _arg1.nextNode;
};
};
}
}
}//package com.greensock.core
Section 13
//TweenCore (com.greensock.core.TweenCore)
package com.greensock.core {
import com.greensock.*;
public class TweenCore {
public var initted:Boolean;
protected var _hasUpdate:Boolean;
public var active:Boolean;
protected var _delay:Number;
public var cachedReversed:Boolean;
public var nextNode:TweenCore;
public var cachedTime:Number;
protected var _rawPrevTime:Number;// = -1
public var vars:Object;
public var cachedTotalTime:Number;
public var data;
public var timeline:SimpleTimeline;
public var cachedStartTime:Number;
public var prevNode:TweenCore;
public var cachedDuration:Number;
public var gc:Boolean;
protected var _pauseTime:Number;
public var cacheIsDirty:Boolean;
public var cachedPaused:Boolean;
public var cachedTimeScale:Number;
public var cachedTotalDuration:Number;
public static const version:Number = 1.13;
protected static var _classInitted:Boolean;
public function TweenCore(_arg1:Number=0, _arg2:Object=null){
var _local3:SimpleTimeline;
_rawPrevTime = -1;
super();
this.vars = ((_arg2) || ({}));
this.cachedDuration = (this.cachedTotalDuration = ((_arg1) || (0)));
_delay = ((this.vars.delay) || (0));
this.cachedTimeScale = ((this.vars.timeScale) || (1));
this.active = Boolean((((((_arg1 == 0)) && ((_delay == 0)))) && (!((this.vars.immediateRender == false)))));
this.cachedTotalTime = (this.cachedTime = 0);
this.data = this.vars.data;
if (!_classInitted){
if (isNaN(TweenLite.rootFrame)){
TweenLite.initClass();
_classInitted = true;
} else {
return;
};
};
_local3 = ((this.vars.timeline is SimpleTimeline)) ? this.vars.timeline : (this.vars.useFrames) ? TweenLite.rootFramesTimeline : TweenLite.rootTimeline;
this.cachedStartTime = (_local3.cachedTotalTime + _delay);
_local3.addChild(this);
if (this.vars.reversed){
this.cachedReversed = true;
};
if (this.vars.paused){
this.paused = true;
};
}
public function renderTime(_arg1:Number, _arg2:Boolean=false, _arg3:Boolean=false):void{
}
public function get delay():Number{
return (_delay);
}
public function get duration():Number{
return (this.cachedDuration);
}
public function set reversed(_arg1:Boolean):void{
if (_arg1 != this.cachedReversed){
this.cachedReversed = _arg1;
setTotalTime(this.cachedTotalTime, true);
};
}
public function set startTime(_arg1:Number):void{
var _local2:Boolean;
_local2 = Boolean(((!((this.timeline == null))) && (((!((_arg1 == this.cachedStartTime))) || (this.gc)))));
this.cachedStartTime = _arg1;
if (_local2){
this.timeline.addChild(this);
};
}
public function set delay(_arg1:Number):void{
this.startTime = (this.startTime + (_arg1 - _delay));
_delay = _arg1;
}
public function resume():void{
this.paused = false;
}
public function get paused():Boolean{
return (this.cachedPaused);
}
public function play():void{
this.reversed = false;
this.paused = false;
}
public function set duration(_arg1:Number):void{
this.cachedDuration = (this.cachedTotalDuration = _arg1);
setDirtyCache(false);
}
public function invalidate():void{
}
public function restart(_arg1:Boolean=false, _arg2:Boolean=true):void{
this.reversed = false;
this.paused = false;
this.setTotalTime((_arg1) ? -(_delay) : 0, _arg2);
}
public function complete(_arg1:Boolean=false, _arg2:Boolean=false):void{
if (!_arg1){
renderTime(this.cachedTotalDuration, _arg2, false);
return;
};
if (this.timeline.autoRemoveChildren){
this.setEnabled(false, false);
} else {
this.active = false;
};
if (!_arg2){
if (((((this.vars.onComplete) && ((this.cachedTotalTime == this.cachedTotalDuration)))) && (!(this.cachedReversed)))){
this.vars.onComplete.apply(null, this.vars.onCompleteParams);
} else {
if (((((this.cachedReversed) && ((this.cachedTotalTime == 0)))) && (this.vars.onReverseComplete))){
this.vars.onReverseComplete.apply(null, this.vars.onReverseCompleteParams);
};
};
};
}
public function get reversed():Boolean{
return (this.cachedReversed);
}
public function get totalTime():Number{
return (this.cachedTotalTime);
}
public function get startTime():Number{
return (this.cachedStartTime);
}
public function set currentTime(_arg1:Number):void{
setTotalTime(_arg1, false);
}
protected function setDirtyCache(_arg1:Boolean=true):void{
var _local2:TweenCore;
_local2 = (_arg1) ? this : this.timeline;
while (_local2) {
_local2.cacheIsDirty = true;
_local2 = _local2.timeline;
};
}
public function reverse(_arg1:Boolean=true):void{
this.reversed = true;
if (_arg1){
this.paused = false;
} else {
if (this.gc){
this.setEnabled(true, false);
};
};
}
public function set paused(_arg1:Boolean):void{
if (((!((_arg1 == this.cachedPaused))) && (this.timeline))){
if (_arg1){
_pauseTime = this.timeline.rawTime;
} else {
this.cachedStartTime = (this.cachedStartTime + (this.timeline.rawTime - _pauseTime));
_pauseTime = NaN;
setDirtyCache(false);
};
this.cachedPaused = _arg1;
this.active = Boolean(((((!(this.cachedPaused)) && ((this.cachedTotalTime > 0)))) && ((this.cachedTotalTime < this.cachedTotalDuration))));
};
if (((!(_arg1)) && (this.gc))){
this.setTotalTime(this.cachedTotalTime, false);
this.setEnabled(true, false);
};
}
public function kill():void{
setEnabled(false, false);
}
public function set totalTime(_arg1:Number):void{
setTotalTime(_arg1, false);
}
public function get currentTime():Number{
return (this.cachedTime);
}
protected function setTotalTime(_arg1:Number, _arg2:Boolean=false):void{
var _local3:Number;
var _local4:Number;
if (this.timeline){
_local3 = (((_pauseTime) || ((_pauseTime == 0)))) ? _pauseTime : this.timeline.cachedTotalTime;
if (this.cachedReversed){
_local4 = (this.cacheIsDirty) ? this.totalDuration : this.cachedTotalDuration;
this.cachedStartTime = (_local3 - ((_local4 - _arg1) / this.cachedTimeScale));
} else {
this.cachedStartTime = (_local3 - (_arg1 / this.cachedTimeScale));
};
if (!this.timeline.cacheIsDirty){
setDirtyCache(false);
};
if (this.cachedTotalTime != _arg1){
renderTime(_arg1, _arg2, false);
};
};
}
public function pause():void{
this.paused = true;
}
public function set totalDuration(_arg1:Number):void{
this.duration = _arg1;
}
public function get totalDuration():Number{
return (this.cachedTotalDuration);
}
public function setEnabled(_arg1:Boolean, _arg2:Boolean=false):Boolean{
if (_arg1){
this.active = Boolean(((((!(this.cachedPaused)) && ((this.cachedTotalTime > 0)))) && ((this.cachedTotalTime < this.cachedTotalDuration))));
if (((!(_arg2)) && (this.gc))){
this.timeline.addChild(this);
};
} else {
this.active = false;
if (!_arg2){
this.timeline.remove(this, true);
};
};
this.gc = !(_arg1);
return (false);
}
}
}//package com.greensock.core
Section 14
//Back (com.greensock.easing.Back)
package com.greensock.easing {
public class Back {
public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=1.70158):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((_arg1 * _arg1) * (((_arg5 + 1) * _arg1) + _arg5)) + 1)) + _arg2));
}
public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=1.70158):Number{
_arg1 = (_arg1 / _arg4);
return (((((_arg3 * _arg1) * _arg1) * (((_arg5 + 1) * _arg1) - _arg5)) + _arg2));
}
public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=1.70158):Number{
_arg1 = (_arg1 / (_arg4 * 0.5));
if (_arg1 < 1){
_arg5 = (_arg5 * 1.525);
return ((((_arg3 * 0.5) * ((_arg1 * _arg1) * (((_arg5 + 1) * _arg1) - _arg5))) + _arg2));
};
_arg1 = (_arg1 - 2);
_arg5 = (_arg5 * 1.525);
return ((((_arg3 / 2) * (((_arg1 * _arg1) * (((_arg5 + 1) * _arg1) + _arg5)) + 2)) + _arg2));
}
}
}//package com.greensock.easing
Section 15
//Bounce (com.greensock.easing.Bounce)
package com.greensock.easing {
public class Bounce {
public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):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 easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return (((_arg3 - easeOut((_arg4 - _arg1), 0, _arg3, _arg4)) + _arg2));
}
public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
if (_arg1 < (_arg4 * 0.5)){
return (((easeIn((_arg1 * 2), 0, _arg3, _arg4) * 0.5) + _arg2));
};
return ((((easeOut(((_arg1 * 2) - _arg4), 0, _arg3, _arg4) * 0.5) + (_arg3 * 0.5)) + _arg2));
}
}
}//package com.greensock.easing
Section 16
//Linear (com.greensock.easing.Linear)
package com.greensock.easing {
public class Linear {
public static const power:uint = 0;
public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
public static function easeNone(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
}
}//package com.greensock.easing
Section 17
//Strong (com.greensock.easing.Strong)
package com.greensock.easing {
public class Strong {
public static const power:uint = 4;
public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 1)) + _arg2));
}
public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = (_arg1 / _arg4);
return (((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = (_arg1 / (_arg4 * 0.5));
if (_arg1 < 1){
return ((((((((_arg3 * 0.5) * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 * 0.5) * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 2)) + _arg2));
}
}
}//package com.greensock.easing
Section 18
//TweenEvent (com.greensock.events.TweenEvent)
package com.greensock.events {
import flash.events.*;
public class TweenEvent extends Event {
public static const COMPLETE:String = "complete";
public static const START:String = "init";
public static const UPDATE:String = "change";
public static const REVERSE_COMPLETE:String = "reverseComplete";
public static const VERSION:Number = 1;
public static const REPEAT:String = "repeat";
public function TweenEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false){
super(_arg1, _arg2, _arg3);
}
override public function clone():Event{
return (new TweenEvent(this.type, this.bubbles, this.cancelable));
}
}
}//package com.greensock.events
Section 19
//AutoAlphaPlugin (com.greensock.plugins.AutoAlphaPlugin)
package com.greensock.plugins {
import flash.display.*;
import com.greensock.*;
public class AutoAlphaPlugin extends TweenPlugin {
protected var _ignoreVisible:Boolean;
protected var _target:Object;
public static const API:Number = 1;
public function AutoAlphaPlugin(){
this.propName = "autoAlpha";
this.overwriteProps = ["alpha", "visible"];
}
override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{
_target = _arg1;
addTween(_arg1, "alpha", _arg1.alpha, _arg2, "alpha");
return (true);
}
override public function killProps(_arg1:Object):void{
super.killProps(_arg1);
_ignoreVisible = Boolean(("visible" in _arg1));
}
override public function set changeFactor(_arg1:Number):void{
updateTweens(_arg1);
if (!_ignoreVisible){
_target.visible = Boolean(!((_target.alpha == 0)));
};
}
}
}//package com.greensock.plugins
Section 20
//BevelFilterPlugin (com.greensock.plugins.BevelFilterPlugin)
package com.greensock.plugins {
import flash.display.*;
import com.greensock.*;
import flash.filters.*;
public class BevelFilterPlugin extends FilterPlugin {
public static const API:Number = 1;
private static var _propNames:Array = ["distance", "angle", "highlightColor", "highlightAlpha", "shadowColor", "shadowAlpha", "blurX", "blurY", "strength", "quality"];
public function BevelFilterPlugin(){
this.propName = "bevelFilter";
this.overwriteProps = ["bevelFilter"];
}
override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{
_target = _arg1;
_type = BevelFilter;
initFilter(_arg2, new BevelFilter(0, 0, 0xFFFFFF, 0.5, 0, 0.5, 2, 2, 0, ((_arg2.quality) || (2))), _propNames);
return (true);
}
}
}//package com.greensock.plugins
Section 21
//BezierPlugin (com.greensock.plugins.BezierPlugin)
package com.greensock.plugins {
import com.greensock.core.*;
import com.greensock.*;
public class BezierPlugin extends TweenPlugin {
protected var _future:Object;
protected var _orientData:Array;
protected var _orient:Boolean;
protected var _beziers:Object;
protected var _target:Object;
public static const API:Number = 1;
protected static const _RAD2DEG:Number = 57.2957795130823;
public function BezierPlugin(){
_future = {};
super();
this.propName = "bezier";
this.overwriteProps = [];
}
override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{
if (!(_arg2 is Array)){
return (false);
};
init(_arg3, (_arg2 as Array), false);
return (true);
}
protected function init(_arg1:TweenLite, _arg2:Array, _arg3:Boolean):void{
var _local4:Object;
var _local5:Object;
var _local6:int;
var _local7:String;
var _local8:Object;
_target = _arg1.target;
_local4 = ((_arg1.vars.isTV)==true) ? _arg1.vars.exposedVars : _arg1.vars;
if (_local4.orientToBezier == true){
_orientData = [["x", "y", "rotation", 0, 0.01]];
_orient = true;
} else {
if ((_local4.orientToBezier is Array)){
_orientData = _local4.orientToBezier;
_orient = true;
};
};
_local5 = {};
_local6 = 0;
while (_local6 < _arg2.length) {
for (_local7 in _arg2[_local6]) {
if (_local5[_local7] == undefined){
_local5[_local7] = [_arg1.target[_local7]];
};
if (typeof(_arg2[_local6][_local7]) == "number"){
_local5[_local7].push(_arg2[_local6][_local7]);
} else {
_local5[_local7].push((_arg1.target[_local7] + Number(_arg2[_local6][_local7])));
};
};
_local6++;
};
for (_local7 in _local5) {
this.overwriteProps[this.overwriteProps.length] = _local7;
if (_local4[_local7] != undefined){
if (typeof(_local4[_local7]) == "number"){
_local5[_local7].push(_local4[_local7]);
} else {
_local5[_local7].push((_arg1.target[_local7] + Number(_local4[_local7])));
};
_local8 = {};
_local8[_local7] = true;
_arg1.killVars(_local8, false);
delete _local4[_local7];
};
};
_beziers = parseBeziers(_local5, _arg3);
}
override public function killProps(_arg1:Object):void{
var _local2:String;
for (_local2 in _beziers) {
if ((_local2 in _arg1)){
delete _beziers[_local2];
};
};
super.killProps(_arg1);
}
override public function set changeFactor(_arg1:Number):void{
var _local2:int;
var _local3:String;
var _local4:Object;
var _local5:Number;
var _local6:uint;
var _local7:Number;
var _local8:Object;
var _local9:Number;
var _local10:Number;
var _local11:Array;
var _local12:Number;
var _local13:Object;
var _local14:Boolean;
if (_arg1 == 1){
for (_local3 in _beziers) {
_local2 = (_beziers[_local3].length - 1);
_target[_local3] = _beziers[_local3][_local2][2];
};
} else {
for (_local3 in _beziers) {
_local6 = _beziers[_local3].length;
if (_arg1 < 0){
_local2 = 0;
} else {
if (_arg1 >= 1){
_local2 = (_local6 - 1);
} else {
_local2 = int((_local6 * _arg1));
};
};
_local5 = ((_arg1 - (_local2 * (1 / _local6))) * _local6);
_local4 = _beziers[_local3][_local2];
if (this.round){
_local7 = (_local4[0] + (_local5 * (((2 * (1 - _local5)) * (_local4[1] - _local4[0])) + (_local5 * (_local4[2] - _local4[0])))));
_target[_local3] = ((_local7)>0) ? int((_local7 + 0.5)) : int((_local7 - 0.5));
} else {
_target[_local3] = (_local4[0] + (_local5 * (((2 * (1 - _local5)) * (_local4[1] - _local4[0])) + (_local5 * (_local4[2] - _local4[0])))));
};
};
};
if (_orient){
_local2 = _orientData.length;
_local8 = {};
while (_local2--) {
_local11 = _orientData[_local2];
_local8[_local11[0]] = _target[_local11[0]];
_local8[_local11[1]] = _target[_local11[1]];
};
_local13 = _target;
_local14 = this.round;
_target = _future;
this.round = false;
_orient = false;
_local2 = _orientData.length;
while (_local2--) {
_local11 = _orientData[_local2];
this.changeFactor = (_arg1 + ((_local11[4]) || (0.01)));
_local12 = ((_local11[3]) || (0));
_local9 = (_future[_local11[0]] - _local8[_local11[0]]);
_local10 = (_future[_local11[1]] - _local8[_local11[1]]);
_local13[_local11[2]] = ((Math.atan2(_local10, _local9) * _RAD2DEG) + _local12);
};
_target = _local13;
this.round = _local14;
_orient = true;
};
}
public static function parseBeziers(_arg1:Object, _arg2:Boolean=false):Object{
var _local3:int;
var _local4:Array;
var _local5:Object;
var _local6:String;
var _local7:Object;
_local7 = {};
if (_arg2){
for (_local6 in _arg1) {
_local4 = _arg1[_local6];
_local5 = [];
_local7[_local6] = _local5;
if (_local4.length > 2){
_local5[_local5.length] = [_local4[0], (_local4[1] - ((_local4[2] - _local4[0]) / 4)), _local4[1]];
_local3 = 1;
while (_local3 < (_local4.length - 1)) {
_local5[_local5.length] = [_local4[_local3], (_local4[_local3] + (_local4[_local3] - _local5[(_local3 - 1)][1])), _local4[(_local3 + 1)]];
_local3++;
};
} else {
_local5[_local5.length] = [_local4[0], ((_local4[0] + _local4[1]) / 2), _local4[1]];
};
};
} else {
for (_local6 in _arg1) {
_local4 = _arg1[_local6];
_local5 = [];
_local7[_local6] = _local5;
if (_local4.length > 3){
_local5[_local5.length] = [_local4[0], _local4[1], ((_local4[1] + _local4[2]) / 2)];
_local3 = 2;
while (_local3 < (_local4.length - 2)) {
_local5[_local5.length] = [_local5[(_local3 - 2)][2], _local4[_local3], ((_local4[_local3] + _local4[(_local3 + 1)]) / 2)];
_local3++;
};
_local5[_local5.length] = [_local5[(_local5.length - 1)][2], _local4[(_local4.length - 2)], _local4[(_local4.length - 1)]];
} else {
if (_local4.length == 3){
_local5[_local5.length] = [_local4[0], _local4[1], _local4[2]];
} else {
if (_local4.length == 2){
_local5[_local5.length] = [_local4[0], ((_local4[0] + _local4[1]) / 2), _local4[1]];
};
};
};
};
};
return (_local7);
}
}
}//package com.greensock.plugins
Section 22
//BezierThroughPlugin (com.greensock.plugins.BezierThroughPlugin)
package com.greensock.plugins {
import com.greensock.*;
public class BezierThroughPlugin extends BezierPlugin {
public static const API:Number = 1;
public function BezierThroughPlugin(){
this.propName = "bezierThrough";
}
override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{
if (!(_arg2 is Array)){
return (false);
};
init(_arg3, (_arg2 as Array), true);
return (true);
}
}
}//package com.greensock.plugins
Section 23
//BlurFilterPlugin (com.greensock.plugins.BlurFilterPlugin)
package com.greensock.plugins {
import flash.display.*;
import com.greensock.*;
import flash.filters.*;
public class BlurFilterPlugin extends FilterPlugin {
public static const API:Number = 1;
private static var _propNames:Array = ["blurX", "blurY", "quality"];
public function BlurFilterPlugin(){
this.propName = "blurFilter";
this.overwriteProps = ["blurFilter"];
}
override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{
_target = _arg1;
_type = BlurFilter;
initFilter(_arg2, new BlurFilter(0, 0, ((_arg2.quality) || (2))), _propNames);
return (true);
}
}
}//package com.greensock.plugins
Section 24
//ColorMatrixFilterPlugin (com.greensock.plugins.ColorMatrixFilterPlugin)
package com.greensock.plugins {
import flash.display.*;
import com.greensock.*;
import flash.filters.*;
public class ColorMatrixFilterPlugin extends FilterPlugin {
protected var _matrix:Array;
protected var _matrixTween:EndArrayPlugin;
public static const API:Number = 1;
private static var _propNames:Array = [];
protected static var _lumG:Number = 0.71516;
protected static var _lumR:Number = 0.212671;
protected static var _idMatrix:Array = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0];
protected static var _lumB:Number = 0.072169;
public function ColorMatrixFilterPlugin(){
this.propName = "colorMatrixFilter";
this.overwriteProps = ["colorMatrixFilter"];
}
override public function set changeFactor(_arg1:Number):void{
_matrixTween.changeFactor = _arg1;
ColorMatrixFilter(_filter).matrix = _matrix;
super.changeFactor = _arg1;
}
override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{
var _local4:Object;
var _local5:Array;
_target = _arg1;
_type = ColorMatrixFilter;
_local4 = _arg2;
initFilter({remove:_arg2.remove, index:_arg2.index, addFilter:_arg2.addFilter}, new ColorMatrixFilter(_idMatrix.slice()), _propNames);
_matrix = ColorMatrixFilter(_filter).matrix;
_local5 = [];
if (((!((_local4.matrix == null))) && ((_local4.matrix is Array)))){
_local5 = _local4.matrix;
} else {
if (_local4.relative == true){
_local5 = _matrix.slice();
} else {
_local5 = _idMatrix.slice();
};
_local5 = setBrightness(_local5, _local4.brightness);
_local5 = setContrast(_local5, _local4.contrast);
_local5 = setHue(_local5, _local4.hue);
_local5 = setSaturation(_local5, _local4.saturation);
_local5 = setThreshold(_local5, _local4.threshold);
if (!isNaN(_local4.colorize)){
_local5 = colorize(_local5, _local4.colorize, _local4.amount);
};
};
_matrixTween = new EndArrayPlugin();
_matrixTween.init(_matrix, _local5);
return (true);
}
public static function setSaturation(_arg1:Array, _arg2:Number):Array{
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Array;
if (isNaN(_arg2)){
return (_arg1);
};
_local3 = (1 - _arg2);
_local4 = (_local3 * _lumR);
_local5 = (_local3 * _lumG);
_local6 = (_local3 * _lumB);
_local7 = [(_local4 + _arg2), _local5, _local6, 0, 0, _local4, (_local5 + _arg2), _local6, 0, 0, _local4, _local5, (_local6 + _arg2), 0, 0, 0, 0, 0, 1, 0];
return (applyMatrix(_local7, _arg1));
}
public static function setHue(_arg1:Array, _arg2:Number):Array{
var _local3:Number;
var _local4:Number;
var _local5:Array;
if (isNaN(_arg2)){
return (_arg1);
};
_arg2 = (_arg2 * (Math.PI / 180));
_local3 = Math.cos(_arg2);
_local4 = Math.sin(_arg2);
_local5 = [((_lumR + (_local3 * (1 - _lumR))) + (_local4 * -(_lumR))), ((_lumG + (_local3 * -(_lumG))) + (_local4 * -(_lumG))), ((_lumB + (_local3 * -(_lumB))) + (_local4 * (1 - _lumB))), 0, 0, ((_lumR + (_local3 * -(_lumR))) + (_local4 * 0.143)), ((_lumG + (_local3 * (1 - _lumG))) + (_local4 * 0.14)), ((_lumB + (_local3 * -(_lumB))) + (_local4 * -0.283)), 0, 0, ((_lumR + (_local3 * -(_lumR))) + (_local4 * -((1 - _lumR)))), ((_lumG + (_local3 * -(_lumG))) + (_local4 * _lumG)), ((_lumB + (_local3 * (1 - _lumB))) + (_local4 * _lumB)), 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1];
return (applyMatrix(_local5, _arg1));
}
public static function setContrast(_arg1:Array, _arg2:Number):Array{
var _local3:Array;
if (isNaN(_arg2)){
return (_arg1);
};
_arg2 = (_arg2 + 0.01);
_local3 = [_arg2, 0, 0, 0, (128 * (1 - _arg2)), 0, _arg2, 0, 0, (128 * (1 - _arg2)), 0, 0, _arg2, 0, (128 * (1 - _arg2)), 0, 0, 0, 1, 0];
return (applyMatrix(_local3, _arg1));
}
public static function applyMatrix(_arg1:Array, _arg2:Array):Array{
var _local3:Array;
var _local4:int;
var _local5:int;
var _local6:int;
var _local7:int;
if (((!((_arg1 is Array))) || (!((_arg2 is Array))))){
return (_arg2);
};
_local3 = [];
_local4 = 0;
_local5 = 0;
_local6 = 0;
while (_local6 < 4) {
_local7 = 0;
while (_local7 < 5) {
if (_local7 == 4){
_local5 = _arg1[(_local4 + 4)];
} else {
_local5 = 0;
};
_local3[(_local4 + _local7)] = (((((_arg1[_local4] * _arg2[_local7]) + (_arg1[(_local4 + 1)] * _arg2[(_local7 + 5)])) + (_arg1[(_local4 + 2)] * _arg2[(_local7 + 10)])) + (_arg1[(_local4 + 3)] * _arg2[(_local7 + 15)])) + _local5);
_local7++;
};
_local4 = (_local4 + 5);
_local6++;
};
return (_local3);
}
public static function setThreshold(_arg1:Array, _arg2:Number):Array{
var _local3:Array;
if (isNaN(_arg2)){
return (_arg1);
};
_local3 = [(_lumR * 0x0100), (_lumG * 0x0100), (_lumB * 0x0100), 0, (-256 * _arg2), (_lumR * 0x0100), (_lumG * 0x0100), (_lumB * 0x0100), 0, (-256 * _arg2), (_lumR * 0x0100), (_lumG * 0x0100), (_lumB * 0x0100), 0, (-256 * _arg2), 0, 0, 0, 1, 0];
return (applyMatrix(_local3, _arg1));
}
public static function colorize(_arg1:Array, _arg2:Number, _arg3:Number=1):Array{
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Array;
if (isNaN(_arg2)){
return (_arg1);
};
if (isNaN(_arg3)){
_arg3 = 1;
};
_local4 = (((_arg2 >> 16) & 0xFF) / 0xFF);
_local5 = (((_arg2 >> 8) & 0xFF) / 0xFF);
_local6 = ((_arg2 & 0xFF) / 0xFF);
_local7 = (1 - _arg3);
_local8 = [(_local7 + ((_arg3 * _local4) * _lumR)), ((_arg3 * _local4) * _lumG), ((_arg3 * _local4) * _lumB), 0, 0, ((_arg3 * _local5) * _lumR), (_local7 + ((_arg3 * _local5) * _lumG)), ((_arg3 * _local5) * _lumB), 0, 0, ((_arg3 * _local6) * _lumR), ((_arg3 * _local6) * _lumG), (_local7 + ((_arg3 * _local6) * _lumB)), 0, 0, 0, 0, 0, 1, 0];
return (applyMatrix(_local8, _arg1));
}
public static function setBrightness(_arg1:Array, _arg2:Number):Array{
if (isNaN(_arg2)){
return (_arg1);
};
_arg2 = ((_arg2 * 100) - 100);
return (applyMatrix([1, 0, 0, 0, _arg2, 0, 1, 0, 0, _arg2, 0, 0, 1, 0, _arg2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1], _arg1));
}
}
}//package com.greensock.plugins
Section 25
//ColorTransformPlugin (com.greensock.plugins.ColorTransformPlugin)
package com.greensock.plugins {
import flash.display.*;
import com.greensock.*;
import flash.geom.*;
public class ColorTransformPlugin extends TintPlugin {
public static const API:Number = 1;
public function ColorTransformPlugin(){
this.propName = "colorTransform";
}
override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{
var _local4:ColorTransform;
var _local5:String;
var _local6:Number;
if (!(_arg1 is DisplayObject)){
return (false);
};
_local4 = _arg1.transform.colorTransform;
for (_local5 in _arg2) {
if ((((_local5 == "tint")) || ((_local5 == "color")))){
if (_arg2[_local5] != null){
_local4.color = int(_arg2[_local5]);
};
} else {
if ((((((_local5 == "tintAmount")) || ((_local5 == "exposure")))) || ((_local5 == "brightness")))){
} else {
_local4[_local5] = _arg2[_local5];
};
};
};
if (!isNaN(_arg2.tintAmount)){
_local6 = (_arg2.tintAmount / (1 - (((_local4.redMultiplier + _local4.greenMultiplier) + _local4.blueMultiplier) / 3)));
_local4.redOffset = (_local4.redOffset * _local6);
_local4.greenOffset = (_local4.greenOffset * _local6);
_local4.blueOffset = (_local4.blueOffset * _local6);
_local4.redMultiplier = (_local4.greenMultiplier = (_local4.blueMultiplier = (1 - _arg2.tintAmount)));
} else {
if (!isNaN(_arg2.exposure)){
_local4.redOffset = (_local4.greenOffset = (_local4.blueOffset = (0xFF * (_arg2.exposure - 1))));
_local4.redMultiplier = (_local4.greenMultiplier = (_local4.blueMultiplier = 1));
} else {
if (!isNaN(_arg2.brightness)){
_local4.redOffset = (_local4.greenOffset = (_local4.blueOffset = Math.max(0, ((_arg2.brightness - 1) * 0xFF))));
_local4.redMultiplier = (_local4.greenMultiplier = (_local4.blueMultiplier = (1 - Math.abs((_arg2.brightness - 1)))));
};
};
};
_ignoreAlpha = Boolean(((!((_arg3.vars.alpha == undefined))) && ((_arg2.alphaMultiplier == undefined))));
init((_arg1 as DisplayObject), _local4);
return (true);
}
}
}//package com.greensock.plugins
Section 26
//DropShadowFilterPlugin (com.greensock.plugins.DropShadowFilterPlugin)
package com.greensock.plugins {
import flash.display.*;
import com.greensock.*;
import flash.filters.*;
public class DropShadowFilterPlugin extends FilterPlugin {
public static const API:Number = 1;
private static var _propNames:Array = ["distance", "angle", "color", "alpha", "blurX", "blurY", "strength", "quality", "inner", "knockout", "hideObject"];
public function DropShadowFilterPlugin(){
this.propName = "dropShadowFilter";
this.overwriteProps = ["dropShadowFilter"];
}
override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{
_target = _arg1;
_type = DropShadowFilter;
initFilter(_arg2, new DropShadowFilter(0, 45, 0, 0, 0, 0, 1, ((_arg2.quality) || (2)), _arg2.inner, _arg2.knockout, _arg2.hideObject), _propNames);
return (true);
}
}
}//package com.greensock.plugins
Section 27
//EndArrayPlugin (com.greensock.plugins.EndArrayPlugin)
package com.greensock.plugins {
import com.greensock.*;
public class EndArrayPlugin extends TweenPlugin {
protected var _info:Array;
protected var _a:Array;
public static const API:Number = 1;
public function EndArrayPlugin(){
_info = [];
super();
this.propName = "endArray";
this.overwriteProps = ["endArray"];
}
public function init(_arg1:Array, _arg2:Array):void{
var _local3:int;
_a = _arg1;
_local3 = _arg2.length;
while (_local3--) {
if (((!((_arg1[_local3] == _arg2[_local3]))) && (!((_arg1[_local3] == null))))){
_info[_info.length] = new ArrayTweenInfo(_local3, _a[_local3], (_arg2[_local3] - _a[_local3]));
};
};
}
override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{
if (((!((_arg1 is Array))) || (!((_arg2 is Array))))){
return (false);
};
init((_arg1 as Array), _arg2);
return (true);
}
override public function set changeFactor(_arg1:Number):void{
var _local2:int;
var _local3:ArrayTweenInfo;
var _local4:Number;
_local2 = _info.length;
if (this.round){
while (_local2--) {
_local3 = _info[_local2];
_local4 = (_local3.start + (_local3.change * _arg1));
_a[_local3.index] = ((_local4)>0) ? int((_local4 + 0.5)) : int((_local4 - 0.5));
};
} else {
while (_local2--) {
_local3 = _info[_local2];
_a[_local3.index] = (_local3.start + (_local3.change * _arg1));
};
};
}
}
}//package com.greensock.plugins
class ArrayTweenInfo {
public var change:Number;
public var index:uint;
public var start:Number;
private function ArrayTweenInfo(_arg1:uint, _arg2:Number, _arg3:Number){
this.index = _arg1;
this.start = _arg2;
this.change = _arg3;
}
}
Section 28
//FilterPlugin (com.greensock.plugins.FilterPlugin)
package com.greensock.plugins {
import flash.display.*;
import com.greensock.core.*;
import com.greensock.*;
import flash.filters.*;
public class FilterPlugin extends TweenPlugin {
protected var _index:int;
protected var _filter:BitmapFilter;
protected var _type:Class;
protected var _remove:Boolean;
protected var _target:Object;
public static const VERSION:Number = 2.03;
public static const API:Number = 1;
public function onCompleteTween():void{
var _local1:Array;
var _local2:int;
if (_remove){
_local1 = _target.filters;
if (!(_local1[_index] is _type)){
_local2 = _local1.length;
while (_local2--) {
if ((_local1[_local2] is _type)){
_local1.splice(_local2, 1);
break;
};
};
} else {
_local1.splice(_index, 1);
};
_target.filters = _local1;
};
}
protected function initFilter(_arg1:Object, _arg2:BitmapFilter, _arg3:Array):void{
var _local4:Array;
var _local5:String;
var _local6:int;
var _local7:HexColorsPlugin;
var _local8:Object;
_local4 = _target.filters;
_local8 = ((_arg1 is BitmapFilter)) ? {} : _arg1;
_index = -1;
if (_local8.index != null){
_index = _local8.index;
} else {
_local6 = _local4.length;
while (_local6--) {
if ((_local4[_local6] is _type)){
_index = _local6;
break;
};
};
};
if ((((((_index == -1)) || ((_local4[_index] == null)))) || ((_local8.addFilter == true)))){
_index = ((_local8.index)!=null) ? _local8.index : _local4.length;
_local4[_index] = _arg2;
_target.filters = _local4;
};
_filter = _local4[_index];
if (_local8.remove == true){
_remove = true;
this.onComplete = onCompleteTween;
};
_local6 = _arg3.length;
while (_local6--) {
_local5 = _arg3[_local6];
if ((((_local5 in _arg1)) && (!((_filter[_local5] == _arg1[_local5]))))){
if ((((((_local5 == "color")) || ((_local5 == "highlightColor")))) || ((_local5 == "shadowColor")))){
_local7 = new HexColorsPlugin();
_local7.initColor(_filter, _local5, _filter[_local5], _arg1[_local5]);
_tweens[_tweens.length] = new PropTween(_local7, "changeFactor", 0, 1, _local5, false);
} else {
if ((((((((_local5 == "quality")) || ((_local5 == "inner")))) || ((_local5 == "knockout")))) || ((_local5 == "hideObject")))){
_filter[_local5] = _arg1[_local5];
} else {
addTween(_filter, _local5, _filter[_local5], _arg1[_local5], _local5);
};
};
};
};
}
override public function set changeFactor(_arg1:Number):void{
var _local2:int;
var _local3:PropTween;
var _local4:Array;
_local2 = _tweens.length;
_local4 = _target.filters;
while (_local2--) {
_local3 = _tweens[_local2];
_local3.target[_local3.property] = (_local3.start + (_local3.change * _arg1));
};
if (!(_local4[_index] is _type)){
_local2 = (_index = _local4.length);
while (_local2--) {
if ((_local4[_local2] is _type)){
_index = _local2;
break;
};
};
};
_local4[_index] = _filter;
_target.filters = _local4;
}
}
}//package com.greensock.plugins
Section 29
//FrameLabelPlugin (com.greensock.plugins.FrameLabelPlugin)
package com.greensock.plugins {
import flash.display.*;
import com.greensock.*;
public class FrameLabelPlugin extends FramePlugin {
public static const API:Number = 1;
public function FrameLabelPlugin(){
this.propName = "frameLabel";
}
override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{
var _local4:Array;
var _local5:String;
var _local6:int;
var _local7:int;
if ((!(_arg3.target) is MovieClip)){
return (false);
};
_target = (_arg1 as MovieClip);
this.frame = _target.currentFrame;
_local4 = _target.currentLabels;
_local5 = _arg2;
_local6 = _target.currentFrame;
_local7 = _local4.length;
while (_local7--) {
if (_local4[_local7].name == _local5){
_local6 = _local4[_local7].frame;
break;
};
};
if (this.frame != _local6){
addTween(this, "frame", this.frame, _local6, "frame");
};
return (true);
}
}
}//package com.greensock.plugins
Section 30
//FramePlugin (com.greensock.plugins.FramePlugin)
package com.greensock.plugins {
import flash.display.*;
import com.greensock.*;
public class FramePlugin extends TweenPlugin {
public var frame:int;
protected var _target:MovieClip;
public static const API:Number = 1;
public function FramePlugin(){
this.propName = "frame";
this.overwriteProps = ["frame", "frameLabel"];
this.round = true;
}
override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{
if (((!((_arg1 is MovieClip))) || (isNaN(_arg2)))){
return (false);
};
_target = (_arg1 as MovieClip);
this.frame = _target.currentFrame;
addTween(this, "frame", this.frame, _arg2, "frame");
return (true);
}
override public function set changeFactor(_arg1:Number):void{
updateTweens(_arg1);
_target.gotoAndStop(this.frame);
}
}
}//package com.greensock.plugins
Section 31
//GlowFilterPlugin (com.greensock.plugins.GlowFilterPlugin)
package com.greensock.plugins {
import flash.display.*;
import com.greensock.*;
import flash.filters.*;
public class GlowFilterPlugin extends FilterPlugin {
public static const API:Number = 1;
private static var _propNames:Array = ["color", "alpha", "blurX", "blurY", "strength", "quality", "inner", "knockout"];
public function GlowFilterPlugin(){
this.propName = "glowFilter";
this.overwriteProps = ["glowFilter"];
}
override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{
_target = _arg1;
_type = GlowFilter;
initFilter(_arg2, new GlowFilter(0xFFFFFF, 0, 0, 0, ((_arg2.strength) || (1)), ((_arg2.quality) || (2)), _arg2.inner, _arg2.knockout), _propNames);
return (true);
}
}
}//package com.greensock.plugins
Section 32
//HexColorsPlugin (com.greensock.plugins.HexColorsPlugin)
package com.greensock.plugins {
import com.greensock.*;
public class HexColorsPlugin extends TweenPlugin {
protected var _colors:Array;
public static const API:Number = 1;
public function HexColorsPlugin(){
this.propName = "hexColors";
this.overwriteProps = [];
_colors = [];
}
override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{
var _local4:String;
for (_local4 in _arg2) {
initColor(_arg1, _local4, uint(_arg1[_local4]), uint(_arg2[_local4]));
};
return (true);
}
override public function killProps(_arg1:Object):void{
var _local2:int;
_local2 = (_colors.length - 1);
while (_local2 > -1) {
if (_arg1[_colors[_local2][1]] != undefined){
_colors.splice(_local2, 1);
};
_local2--;
};
super.killProps(_arg1);
}
public function initColor(_arg1:Object, _arg2:String, _arg3:uint, _arg4:uint):void{
var _local5:Number;
var _local6:Number;
var _local7:Number;
if (_arg3 != _arg4){
_local5 = (_arg3 >> 16);
_local6 = ((_arg3 >> 8) & 0xFF);
_local7 = (_arg3 & 0xFF);
_colors[_colors.length] = [_arg1, _arg2, _local5, ((_arg4 >> 16) - _local5), _local6, (((_arg4 >> 8) & 0xFF) - _local6), _local7, ((_arg4 & 0xFF) - _local7)];
this.overwriteProps[this.overwriteProps.length] = _arg2;
};
}
override public function set changeFactor(_arg1:Number):void{
var _local2:int;
var _local3:Array;
_local2 = (_colors.length - 1);
while (_local2 > -1) {
_local3 = _colors[_local2];
_local3[0][_local3[1]] = ((((_local3[2] + (_arg1 * _local3[3])) << 16) | ((_local3[4] + (_arg1 * _local3[5])) << 8)) | (_local3[6] + (_arg1 * _local3[7])));
_local2--;
};
}
}
}//package com.greensock.plugins
Section 33
//RemoveTintPlugin (com.greensock.plugins.RemoveTintPlugin)
package com.greensock.plugins {
public class RemoveTintPlugin extends TintPlugin {
public static const API:Number = 1;
public function RemoveTintPlugin(){
this.propName = "removeTint";
}
}
}//package com.greensock.plugins
Section 34
//RoundPropsPlugin (com.greensock.plugins.RoundPropsPlugin)
package com.greensock.plugins {
public class RoundPropsPlugin extends TweenPlugin {
public static const API:Number = 1;
public function RoundPropsPlugin(){
this.propName = "roundProps";
this.overwriteProps = [];
this.round = true;
}
public function add(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Number):void{
addTween(_arg1, _arg2, _arg3, (_arg3 + _arg4), _arg2);
this.overwriteProps[this.overwriteProps.length] = _arg2;
}
}
}//package com.greensock.plugins
Section 35
//ShortRotationPlugin (com.greensock.plugins.ShortRotationPlugin)
package com.greensock.plugins {
import com.greensock.*;
public class ShortRotationPlugin extends TweenPlugin {
public static const API:Number = 1;
public function ShortRotationPlugin(){
this.propName = "shortRotation";
this.overwriteProps = [];
}
override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{
var _local4:String;
if (typeof(_arg2) == "number"){
return (false);
};
for (_local4 in _arg2) {
initRotation(_arg1, _local4, _arg1[_local4], ((typeof(_arg2[_local4]))=="number") ? Number(_arg2[_local4]) : (_arg1[_local4] + Number(_arg2[_local4])));
};
return (true);
}
public function initRotation(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Number):void{
var _local5:Number;
_local5 = ((_arg4 - _arg3) % 360);
if (((_arg4 - _arg3) % 360) != (_local5 % 180)){
_local5 = ((_local5)<0) ? (_local5 + 360) : (_local5 - 360);
};
addTween(_arg1, _arg2, _arg3, (_arg3 + _local5), _arg2);
this.overwriteProps[this.overwriteProps.length] = _arg2;
}
}
}//package com.greensock.plugins
Section 36
//TintPlugin (com.greensock.plugins.TintPlugin)
package com.greensock.plugins {
import flash.display.*;
import com.greensock.core.*;
import com.greensock.*;
import flash.geom.*;
public class TintPlugin extends TweenPlugin {
protected var _ct:ColorTransform;
protected var _transform:Transform;
protected var _ignoreAlpha:Boolean;
public static const API:Number = 1;
protected static var _props:Array = ["redMultiplier", "greenMultiplier", "blueMultiplier", "alphaMultiplier", "redOffset", "greenOffset", "blueOffset", "alphaOffset"];
public function TintPlugin(){
this.propName = "tint";
this.overwriteProps = ["tint"];
}
override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{
var _local4:ColorTransform;
if (!(_arg1 is DisplayObject)){
return (false);
};
_local4 = new ColorTransform();
if (((!((_arg2 == null))) && (!((_arg3.vars.removeTint == true))))){
_local4.color = uint(_arg2);
};
_ignoreAlpha = true;
init((_arg1 as DisplayObject), _local4);
return (true);
}
public function init(_arg1:DisplayObject, _arg2:ColorTransform):void{
var _local3:int;
var _local4:String;
_transform = _arg1.transform;
_ct = _transform.colorTransform;
_local3 = _props.length;
while (_local3--) {
_local4 = _props[_local3];
if (_ct[_local4] != _arg2[_local4]){
_tweens[_tweens.length] = new PropTween(_ct, _local4, _ct[_local4], (_arg2[_local4] - _ct[_local4]), "tint", false);
};
};
}
override public function set changeFactor(_arg1:Number):void{
var _local2:ColorTransform;
updateTweens(_arg1);
if (_ignoreAlpha){
_local2 = _transform.colorTransform;
_ct.alphaMultiplier = _local2.alphaMultiplier;
_ct.alphaOffset = _local2.alphaOffset;
};
_transform.colorTransform = _ct;
}
}
}//package com.greensock.plugins
Section 37
//TweenPlugin (com.greensock.plugins.TweenPlugin)
package com.greensock.plugins {
import com.greensock.core.*;
import com.greensock.*;
public class TweenPlugin {
public var activeDisable:Boolean;
public var onEnable:Function;
public var round:Boolean;
public var onDisable:Function;
public var propName:String;
protected var _tweens:Array;
public var priority:int;// = 0
public var overwriteProps:Array;
public var onComplete:Function;
protected var _changeFactor:Number;// = 0
public static const VERSION:Number = 1.31;
public static const API:Number = 1;
public function TweenPlugin(){
priority = 0;
_tweens = [];
_changeFactor = 0;
super();
}
public function set changeFactor(_arg1:Number):void{
updateTweens(_arg1);
_changeFactor = _arg1;
}
protected function addTween(_arg1:Object, _arg2:String, _arg3:Number, _arg4, _arg5:String=null):void{
var _local6:Number;
if (_arg4 != null){
_local6 = ((typeof(_arg4))=="number") ? (Number(_arg4) - _arg3) : Number(_arg4);
if (_local6 != 0){
_tweens[_tweens.length] = new PropTween(_arg1, _arg2, _arg3, _local6, ((_arg5) || (_arg2)), false);
};
};
}
protected function updateTweens(_arg1:Number):void{
var _local2:int;
var _local3:PropTween;
var _local4:Number;
_local2 = _tweens.length;
if (this.round){
while (_local2--) {
_local3 = _tweens[_local2];
_local4 = (_local3.start + (_local3.change * _arg1));
_local3.target[_local3.property] = ((_local4)>0) ? int((_local4 + 0.5)) : int((_local4 - 0.5));
};
} else {
while (_local2--) {
_local3 = _tweens[_local2];
_local3.target[_local3.property] = (_local3.start + (_local3.change * _arg1));
};
};
}
public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{
addTween(_arg1, this.propName, _arg1[this.propName], _arg2, this.propName);
return (true);
}
public function get changeFactor():Number{
return (_changeFactor);
}
public function killProps(_arg1:Object):void{
var _local2:int;
_local2 = this.overwriteProps.length;
while (_local2--) {
if ((this.overwriteProps[_local2] in _arg1)){
this.overwriteProps.splice(_local2, 1);
};
};
_local2 = _tweens.length;
while (_local2--) {
if ((PropTween(_tweens[_local2]).name in _arg1)){
_tweens.splice(_local2, 1);
};
};
}
public static function activate(_arg1:Array):Boolean{
var _local2:int;
var _local3:Object;
TweenLite.onPluginEvent = TweenPlugin.onTweenEvent;
_local2 = _arg1.length;
while (_local2--) {
if (_arg1[_local2].hasOwnProperty("API")){
_local3 = new ((_arg1[_local2] as Class));
TweenLite.plugins[_local3.propName] = _arg1[_local2];
};
};
return (true);
}
private static function onTweenEvent(_arg1:String, _arg2:TweenLite):Boolean{
var _local3:PropTween;
var _local4:Boolean;
var _local5:Array;
var _local6:int;
_local3 = _arg2.cachedPT1;
if (_arg1 == "onInit"){
_local5 = [];
while (_local3) {
_local5[_local5.length] = _local3;
_local3 = _local3.nextNode;
};
_local5.sortOn("priority", (Array.NUMERIC | Array.DESCENDING));
_local6 = _local5.length;
while (_local6--) {
PropTween(_local5[_local6]).nextNode = _local5[(_local6 + 1)];
PropTween(_local5[_local6]).prevNode = _local5[(_local6 - 1)];
};
_arg2.cachedPT1 = _local5[0];
} else {
while (_local3) {
if (((_local3.isPlugin) && (_local3.target[_arg1]))){
if (_local3.target.activeDisable){
_local4 = true;
};
var _local7 = _local3.target;
_local7[_arg1]();
};
_local3 = _local3.nextNode;
};
};
return (_local4);
}
}
}//package com.greensock.plugins
Section 38
//VisiblePlugin (com.greensock.plugins.VisiblePlugin)
package com.greensock.plugins {
import flash.display.*;
import com.greensock.*;
public class VisiblePlugin extends TweenPlugin {
protected var _tween:TweenLite;
protected var _visible:Boolean;
protected var _target:Object;
protected var _initVal:Boolean;
public static const API:Number = 1;
public function VisiblePlugin(){
this.propName = "visible";
this.overwriteProps = ["visible"];
}
override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{
_target = _arg1;
_tween = _arg3;
_initVal = _target.visible;
_visible = Boolean(_arg2);
return (true);
}
override public function set changeFactor(_arg1:Number):void{
if ((((_arg1 == 1)) && ((((_tween.cachedDuration == _tween.cachedTime)) || ((_tween.cachedTime == 0)))))){
_target.visible = _visible;
} else {
_target.visible = _initVal;
};
}
}
}//package com.greensock.plugins
Section 39
//VolumePlugin (com.greensock.plugins.VolumePlugin)
package com.greensock.plugins {
import flash.display.*;
import com.greensock.*;
import flash.media.*;
public class VolumePlugin extends TweenPlugin {
protected var _st:SoundTransform;
protected var _target:Object;
public static const API:Number = 1;
public function VolumePlugin(){
this.propName = "volume";
this.overwriteProps = ["volume"];
}
override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{
if (((isNaN(_arg2)) || (!(_arg1.hasOwnProperty("soundTransform"))))){
return (false);
};
_target = _arg1;
_st = _target.soundTransform;
addTween(_st, "volume", _st.volume, _arg2, "volume");
return (true);
}
override public function set changeFactor(_arg1:Number):void{
updateTweens(_arg1);
_target.soundTransform = _st;
}
}
}//package com.greensock.plugins
Section 40
//OverwriteManager (com.greensock.OverwriteManager)
package com.greensock {
import com.greensock.core.*;
public class OverwriteManager {
public static const ALL_ONSTART:int = 4;
public static const CONCURRENT:int = 3;
public static const ALL_IMMEDIATE:int = 1;
public static const PREEXISTING:int = 5;
public static const AUTO:int = 2;
public static const version:Number = 6;
public static const NONE:int = 0;
public static var enabled:Boolean;
public static var mode:int;
public static function getGlobalPaused(_arg1:TweenCore):Boolean{
while (_arg1) {
if (_arg1.cachedPaused){
return (true);
};
_arg1 = _arg1.timeline;
};
return (false);
}
public static function init(_arg1:int=2):int{
if (TweenLite.version < 11.099994){
throw (new Error("Warning: Your TweenLite class needs to be updated to work with OverwriteManager (or you may need to clear your ASO files). Please download and install the latest version from http://www.tweenlite.com."));
};
TweenLite.overwriteManager = OverwriteManager;
mode = _arg1;
enabled = true;
return (mode);
}
public static function manageOverwrites(_arg1:TweenLite, _arg2:Object, _arg3:Array, _arg4:uint):Boolean{
var _local5:int;
var _local6:Boolean;
var _local7:TweenLite;
var _local8:Number;
var _local9:Array;
var _local10:Array;
var _local11:uint;
var _local12:uint;
var _local13:uint;
var _local14:Number;
var _local15:Number;
var _local16:TweenCore;
var _local17:Number;
var _local18:SimpleTimeline;
if (_arg4 >= 4){
_local13 = _arg3.length;
_local5 = 0;
while (_local5 < _local13) {
_local7 = _arg3[_local5];
if (_local7 != _arg1){
if (_local7.setEnabled(false, false)){
_local6 = true;
};
} else {
if (_arg4 == 5){
break;
};
};
_local5++;
};
return (_local6);
};
_local8 = _arg1.startTime;
_local9 = [];
_local10 = [];
_local11 = 0;
_local12 = 0;
_local5 = _arg3.length;
while (_local5--) {
_local7 = _arg3[_local5];
if ((((_local7 == _arg1)) || (_local7.gc))){
} else {
if (_local7.timeline != _arg1.timeline){
if (!getGlobalPaused(_local7)){
var _temp1 = _local11;
_local11 = (_local11 + 1);
var _local19 = _temp1;
_local10[_local19] = _local7;
};
} else {
if ((((((_local7.startTime <= _local8)) && (((_local7.startTime + _local7.totalDuration) > _local8)))) && (!(getGlobalPaused(_local7))))){
var _temp2 = _local12;
_local12 = (_local12 + 1);
_local19 = _temp2;
_local9[_local19] = _local7;
};
};
};
};
if (_local11 != 0){
_local14 = _arg1.cachedTimeScale;
_local15 = _local8;
_local18 = _arg1.timeline;
while (_local18) {
_local14 = (_local14 * _local18.cachedTimeScale);
_local15 = (_local15 + _local18.startTime);
_local18 = _local18.timeline;
};
_local8 = (_local14 * _local15);
_local5 = _local11;
while (_local5--) {
_local16 = _local10[_local5];
_local14 = _local16.cachedTimeScale;
_local15 = _local16.startTime;
_local18 = _local16.timeline;
while (_local18) {
_local14 = (_local14 * _local18.cachedTimeScale);
_local15 = (_local15 + _local18.startTime);
_local18 = _local18.timeline;
};
_local17 = (_local14 * _local15);
if ((((_local17 <= _local8)) && (((((_local17 + (_local16.totalDuration * _local14)) > _local8)) || ((_local16.cachedDuration == 0)))))){
var _temp3 = _local12;
_local12 = (_local12 + 1);
_local19 = _temp3;
_local9[_local19] = _local16;
};
};
};
if (_local12 == 0){
return (_local6);
};
_local5 = _local12;
if (_arg4 == 2){
while (_local5--) {
_local7 = _local9[_local5];
if (_local7.killVars(_arg2)){
_local6 = true;
};
if ((((_local7.cachedPT1 == null)) && (_local7.initted))){
_local7.setEnabled(false, false);
};
};
} else {
while (_local5--) {
if (TweenLite(_local9[_local5]).setEnabled(false, false)){
_local6 = true;
};
};
};
return (_local6);
}
}
}//package com.greensock
Section 41
//TweenLite (com.greensock.TweenLite)
package com.greensock {
import flash.display.*;
import flash.events.*;
import com.greensock.core.*;
import flash.utils.*;
import com.greensock.plugins.*;
public class TweenLite extends TweenCore {
public var target:Object;
protected var _overwrite:uint;
public var ratio:Number;// = 0
protected var _notifyPluginsOfEnabled:Boolean;
protected var _hasPlugins:Boolean;
public var cachedPT1:PropTween;
protected var _overwrittenProps:Object;
public var propTweenLookup:Object;
protected var _ease:Function;
public static const version:Number = 11.131;
public static var rootTimeline:SimpleTimeline;
public static var fastEaseLookup:Dictionary = new Dictionary(false);
public static var onPluginEvent:Function;
public static var rootFramesTimeline:SimpleTimeline;
public static var defaultEase:Function = TweenLite.easeOut;
public static var plugins:Object = {};
public static var masterList:Dictionary = new Dictionary(false);
public static var overwriteManager:Object;
public static var rootFrame:Number;
public static var killDelayedCallsTo:Function = TweenLite.killTweensOf;
private static var _shape:Shape = new Shape();
protected static var _reservedProps:Object = {ease:1, delay:1, overwrite:1, onComplete:1, onCompleteParams:1, useFrames:1, runBackwards:1, startAt:1, onUpdate:1, onUpdateParams:1, roundProps:1, onStart:1, onStartParams:1, onReverseComplete:1, onReverseCompleteParams:1, onRepeat:1, onRepeatParams:1, proxiedEase:1, easeParams:1, yoyo:1, onCompleteListener:1, onUpdateListener:1, onStartListener:1, onReverseCompleteListener:1, onRepeatListener:1, orientToBezier:1, timeScale:1, immediateRender:1, repeat:1, repeatDelay:1, timeline:1, data:1, paused:1};
public function TweenLite(_arg1:Object, _arg2:Number, _arg3:Object){
var _local4:Array;
var _local5:TweenLite;
ratio = 0;
super(_arg2, _arg3);
this.target = _arg1;
if ((((this.target is TweenCore)) && (("timeScale" in this.vars)))){
this.cachedTimeScale = 1;
};
propTweenLookup = {};
_ease = defaultEase;
_overwrite = (((!((Number(_arg3.overwrite) > -1))) || (((!(overwriteManager.enabled)) && ((_arg3.overwrite > 1)))))) ? overwriteManager.mode : int(_arg3.overwrite);
_local4 = masterList[_arg1];
if (!_local4){
masterList[_arg1] = [this];
} else {
if (_overwrite == 1){
for each (_local5 in _local4) {
if (!_local5.gc){
_local5.setEnabled(false, false);
};
};
masterList[_arg1] = [this];
} else {
_local4[_local4.length] = this;
};
};
if (((this.active) || (this.vars.immediateRender))){
renderTime(0, false, true);
};
}
override public function renderTime(_arg1:Number, _arg2:Boolean=false, _arg3:Boolean=false):void{
var _local4:Boolean;
var _local5:Number;
var _local6:PropTween;
_local5 = this.cachedTime;
if (_arg1 >= this.cachedDuration){
this.cachedTotalTime = (this.cachedTime = this.cachedDuration);
this.ratio = 1;
_local4 = true;
if (this.cachedDuration == 0){
if ((((((_arg1 == 0)) || ((_rawPrevTime < 0)))) && (!((_rawPrevTime == _arg1))))){
_arg3 = true;
};
_rawPrevTime = _arg1;
};
} else {
if (_arg1 <= 0){
this.cachedTotalTime = (this.cachedTime = (this.ratio = 0));
if (_arg1 < 0){
this.active = false;
if (this.cachedDuration == 0){
if (_rawPrevTime > 0){
_arg3 = true;
_local4 = true;
};
_rawPrevTime = _arg1;
};
};
if (((this.cachedReversed) && (!((_local5 == 0))))){
_local4 = true;
};
} else {
this.cachedTotalTime = (this.cachedTime = _arg1);
this.ratio = _ease(_arg1, 0, 1, this.cachedDuration);
};
};
if ((((this.cachedTime == _local5)) && (!(_arg3)))){
return;
};
if (!this.initted){
init();
if (((!(_local4)) && (this.cachedTime))){
this.ratio = _ease(this.cachedTime, 0, 1, this.cachedDuration);
};
};
if (((!(this.active)) && (!(this.cachedPaused)))){
this.active = true;
};
if ((((((((_local5 == 0)) && (this.vars.onStart))) && (!((this.cachedTime == 0))))) && (!(_arg2)))){
this.vars.onStart.apply(null, this.vars.onStartParams);
};
_local6 = this.cachedPT1;
while (_local6) {
_local6.target[_local6.property] = (_local6.start + (this.ratio * _local6.change));
_local6 = _local6.nextNode;
};
if (((_hasUpdate) && (!(_arg2)))){
this.vars.onUpdate.apply(null, this.vars.onUpdateParams);
};
if (_local4){
if (((_hasPlugins) && (this.cachedPT1))){
onPluginEvent("onComplete", this);
};
complete(true, _arg2);
};
}
protected function init():void{
var _local1:String;
var _local2:int;
var _local3:*;
var _local4:Boolean;
var _local5:Array;
var _local6:PropTween;
if (typeof(this.vars.ease) == "function"){
_ease = this.vars.ease;
};
if (this.vars.easeParams){
this.vars.proxiedEase = _ease;
_ease = easeProxy;
};
this.cachedPT1 = null;
this.propTweenLookup = {};
for (_local1 in this.vars) {
if ((((_local1 in _reservedProps)) && (!((((_local1 == "timeScale")) && ((this.target is TweenCore))))))){
} else {
if ((((_local1 in plugins)) && (new ((plugins[_local1] as Class)).onInitTween(this.target, this.vars[_local1], this)))){
this.cachedPT1 = new PropTween(_local3, "changeFactor", 0, 1, ((_local3.overwriteProps.length)==1) ? _local3.overwriteProps[0] : "_MULTIPLE_", true, this.cachedPT1);
if (this.cachedPT1.name == "_MULTIPLE_"){
_local2 = _local3.overwriteProps.length;
while (_local2--) {
this.propTweenLookup[_local3.overwriteProps[_local2]] = this.cachedPT1;
};
} else {
this.propTweenLookup[this.cachedPT1.name] = this.cachedPT1;
};
if (_local3.priority){
this.cachedPT1.priority = _local3.priority;
_local4 = true;
};
if (((_local3.onDisable) || (_local3.onEnable))){
_notifyPluginsOfEnabled = true;
};
_hasPlugins = true;
} else {
this.cachedPT1 = new PropTween(this.target, _local1, Number(this.target[_local1]), ((typeof(this.vars[_local1]))=="number") ? (Number(this.vars[_local1]) - this.target[_local1]) : Number(this.vars[_local1]), _local1, false, this.cachedPT1);
this.propTweenLookup[_local1] = this.cachedPT1;
};
};
};
if (_local4){
onPluginEvent("onInit", this);
};
if (this.vars.runBackwards){
_local6 = this.cachedPT1;
while (_local6) {
_local6.start = (_local6.start + _local6.change);
_local6.change = -(_local6.change);
_local6 = _local6.nextNode;
};
};
_hasUpdate = Boolean(!((this.vars.onUpdate == null)));
if (_overwrittenProps){
killVars(_overwrittenProps);
if (this.cachedPT1 == null){
this.setEnabled(false, false);
};
};
if ((((((((_overwrite > 1)) && (this.cachedPT1))) && (masterList[this.target]))) && ((_local5.length > 1)))){
if (overwriteManager.manageOverwrites(this, this.propTweenLookup, _local5, _overwrite)){
init();
};
};
this.initted = true;
}
protected function easeProxy(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return (this.vars.proxiedEase.apply(null, arguments.concat(this.vars.easeParams)));
}
override public function invalidate():void{
if (((_notifyPluginsOfEnabled) && (this.cachedPT1))){
onPluginEvent("onDisable", this);
};
this.cachedPT1 = null;
_overwrittenProps = null;
_hasUpdate = (this.initted = (this.active = (_notifyPluginsOfEnabled = false)));
this.propTweenLookup = {};
}
public function killVars(_arg1:Object, _arg2:Boolean=true):Boolean{
var _local3:String;
var _local4:PropTween;
var _local5:Boolean;
if (_overwrittenProps == null){
_overwrittenProps = {};
};
for (_local3 in _arg1) {
if ((_local3 in propTweenLookup)){
_local4 = propTweenLookup[_local3];
if (((_local4.isPlugin) && ((_local4.name == "_MULTIPLE_")))){
_local4.target.killProps(_arg1);
if (_local4.target.overwriteProps.length == 0){
_local4.name = "";
};
};
if (_local4.name != "_MULTIPLE_"){
if (_local4.nextNode){
_local4.nextNode.prevNode = _local4.prevNode;
};
if (_local4.prevNode){
_local4.prevNode.nextNode = _local4.nextNode;
} else {
if (this.cachedPT1 == _local4){
this.cachedPT1 = _local4.nextNode;
};
};
if (((_local4.isPlugin) && (_local4.target.onDisable))){
_local4.target.onDisable();
if (_local4.target.activeDisable){
_local5 = true;
};
};
delete propTweenLookup[_local3];
};
};
if (_arg2){
_overwrittenProps[_local3] = 1;
};
};
return (_local5);
}
override public function setEnabled(_arg1:Boolean, _arg2:Boolean=false):Boolean{
var _local3:Array;
if (_arg1){
_local3 = TweenLite.masterList[this.target];
if (!_local3){
TweenLite.masterList[this.target] = [this];
} else {
_local3[_local3.length] = this;
};
};
super.setEnabled(_arg1, _arg2);
if (((_notifyPluginsOfEnabled) && (this.cachedPT1))){
return (onPluginEvent((_arg1) ? "onEnable" : "onDisable", this));
};
return (false);
}
public static function initClass():void{
rootFrame = 0;
rootTimeline = new SimpleTimeline(null);
rootFramesTimeline = new SimpleTimeline(null);
rootTimeline.cachedStartTime = (getTimer() * 0.001);
rootFramesTimeline.cachedStartTime = rootFrame;
rootTimeline.autoRemoveChildren = true;
rootFramesTimeline.autoRemoveChildren = true;
_shape.addEventListener(Event.ENTER_FRAME, updateAll, false, 0, true);
if (overwriteManager == null){
overwriteManager = {mode:1, enabled:false};
};
}
public static function killTweensOf(_arg1:Object, _arg2:Boolean=false):void{
var _local3:Array;
var _local4:int;
if ((_arg1 in masterList)){
_local3 = masterList[_arg1];
_local4 = _local3.length;
while (_local4--) {
if (!TweenLite(_local3[_local4]).gc){
if (_arg2){
TweenLite(_local3[_local4]).complete(false, false);
} else {
TweenLite(_local3[_local4]).setEnabled(false, false);
};
};
};
delete masterList[_arg1];
};
}
public static function from(_arg1:Object, _arg2:Number, _arg3:Object):TweenLite{
_arg3.runBackwards = true;
if (!("immediateRender" in _arg3)){
_arg3.immediateRender = true;
};
return (new TweenLite(_arg1, _arg2, _arg3));
}
protected static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = (1 - (_arg1 / _arg4));
return ((1 - (_arg1 * _arg1)));
}
public static function delayedCall(_arg1:Number, _arg2:Function, _arg3:Array=null, _arg4:Boolean=false):TweenLite{
return (new TweenLite(_arg2, 0, {delay:_arg1, onComplete:_arg2, onCompleteParams:_arg3, immediateRender:false, useFrames:_arg4, overwrite:0}));
}
protected static function updateAll(_arg1:Event=null):void{
var _local2:Dictionary;
var _local3:Object;
var _local4:Array;
var _local5:int;
rootTimeline.renderTime((((getTimer() * 0.001) - rootTimeline.cachedStartTime) * rootTimeline.cachedTimeScale), false, false);
rootFrame++;
rootFramesTimeline.renderTime(((rootFrame - rootFramesTimeline.cachedStartTime) * rootFramesTimeline.cachedTimeScale), false, false);
if (!(rootFrame % 60)){
_local2 = masterList;
for (_local3 in _local2) {
_local4 = _local2[_local3];
_local5 = _local4.length;
while (_local5--) {
if (TweenLite(_local4[_local5]).gc){
_local4.splice(_local5, 1);
};
};
if (_local4.length == 0){
delete _local2[_local3];
};
};
};
}
public static function to(_arg1:Object, _arg2:Number, _arg3:Object):TweenLite{
return (new TweenLite(_arg1, _arg2, _arg3));
}
}
}//package com.greensock
Section 42
//TweenMax (com.greensock.TweenMax)
package com.greensock {
import flash.display.*;
import flash.events.*;
import com.greensock.core.*;
import flash.utils.*;
import com.greensock.plugins.*;
import com.greensock.events.*;
public class TweenMax extends TweenLite implements IEventDispatcher {
protected var _easePower:uint;
protected var _dispatcher:EventDispatcher;
protected var _hasUpdateListener:Boolean;
protected var _easeType:uint;
public var yoyo:Boolean;
protected var _repeat:int;// = 0
protected var _cyclesComplete:uint;// = 0
protected var _repeatDelay:Number;// = 0
public static const version:Number = 11.131;
private static var _overwriteMode:int = (OverwriteManager.enabled) ? OverwriteManager.mode : OverwriteManager.init(2);
;
public static var killTweensOf:Function = TweenLite.killTweensOf;
public static var killDelayedCallsTo:Function = TweenLite.killTweensOf;
public function TweenMax(_arg1:Object, _arg2:Number, _arg3:Object){
_repeat = 0;
_repeatDelay = 0;
_cyclesComplete = 0;
super(_arg1, _arg2, _arg3);
if (TweenLite.version < 11.1){
throw (new Error("TweenMax error! Please update your TweenLite class or try deleting your ASO files. TweenMax requires a more recent version. Download updates at http://www.TweenMax.com."));
};
this.yoyo = Boolean(this.vars.yoyo);
_repeat = ((this.vars.repeat) || (0));
_repeatDelay = ((this.vars.repeatDelay) || (0));
this.cacheIsDirty = true;
if (((((((((this.vars.onCompleteListener) || (this.vars.onUpdateListener))) || (this.vars.onStartListener))) || (this.vars.onRepeatListener))) || (this.vars.onReverseCompleteListener))){
initDispatcher();
if ((((_arg2 == 0)) && ((_delay == 0)))){
_dispatcher.dispatchEvent(new TweenEvent(TweenEvent.UPDATE));
_dispatcher.dispatchEvent(new TweenEvent(TweenEvent.COMPLETE));
};
};
if (((("timeScale" in this.vars)) && (!((this.target is TweenCore))))){
this.cachedTimeScale = this.vars.timeScale;
};
}
override protected function init():void{
var _local1:TweenMax;
var _local2:int;
var _local3:String;
var _local4:String;
var _local5:Array;
var _local6:Object;
var _local7:PropTween;
var _local8:PropTween;
var _local9:int;
if (this.vars.startAt){
this.vars.startAt.overwrite = 0;
this.vars.startAt.immediateRender = true;
_local1 = new TweenMax(this.target, 0, this.vars.startAt);
};
super.init();
if ((_ease in fastEaseLookup)){
_easeType = fastEaseLookup[_ease][0];
_easePower = fastEaseLookup[_ease][1];
};
if (((!((this.vars.roundProps == null))) && (("roundProps" in TweenLite.plugins)))){
_local5 = this.vars.roundProps;
_local9 = _local5.length;
while (_local9--) {
_local3 = _local5[_local9];
_local8 = this.cachedPT1;
while (_local8) {
if (_local8.name == _local3){
if (_local8.isPlugin){
_local8.target.round = true;
} else {
if (_local6 == null){
_local6 = new TweenLite.plugins.roundProps();
_local6.add(_local8.target, _local3, _local8.start, _local8.change);
_hasPlugins = true;
_local7 = insertPropTween(_local6, "changeFactor", 0, 1, "_MULTIPLE_", true, this.cachedPT1);
this.cachedPT1 = _local7;
} else {
_local6.add(_local8.target, _local3, _local8.start, _local8.change);
};
this.removePropTween(_local8);
this.propTweenLookup[_local3] = _local7;
};
} else {
if (((((_local8.isPlugin) && ((_local8.name == "_MULTIPLE_")))) && (!(_local8.target.round)))){
_local4 = ((" " + _local8.target.overwriteProps.join(" ")) + " ");
if (_local4.indexOf(((" " + _local3) + " ")) != -1){
_local8.target.round = true;
};
};
};
_local8 = _local8.nextNode;
};
};
};
}
protected function adjustStartValues():void{
var _local1:Number;
var _local2:PropTween;
var _local3:Number;
if (this.cachedTime != 0){
_local1 = (1 / (1 - this.ratio));
_local2 = this.cachedPT1;
while (_local2) {
if (!_local2.isPlugin){
_local3 = (_local2.start + _local2.change);
_local2.change = ((_local3 - _local2.target[_local2.property]) * _local1);
_local2.start = (_local3 - _local2.change);
_local2 = _local2.nextNode;
};
};
};
}
protected function updateTo(_arg1:Object, _arg2:Boolean=true):void{
var _local3:PropTween;
var _local4:Number;
var _local5:String;
var _local6:Object;
var _local7:Boolean;
var _local8:Object;
var _local9:int;
_local3 = this.cachedPT1;
_local4 = this.cachedTotalTime;
if (this.initted){
if (!_arg2){
this.totalTime = 0;
};
killVars(_arg1, false);
for (_local5 in _arg1) {
if ((_local5 in _reservedProps)){
} else {
if ((((_local5 in plugins)) && (new ((plugins[_local5] as Class)).onInitTween(this.target, _arg1[_local5], this)))){
_local8 = {};
_local9 = _local6.overwriteProps.length;
while (_local9--) {
_local8[_local6.overwriteProps[_local9]] = true;
};
killVars(_local8, false);
this.cachedPT1 = insertPropTween(_local6, "changeFactor", 0, 1, ((_local6.overwriteProps.length)==1) ? _local6.overwriteProps[0] : "_MULTIPLE_", true, this.cachedPT1);
_hasPlugins = true;
if (_local6.priority){
this.cachedPT1.priority = _local6.priority;
_local7 = true;
};
} else {
this.cachedPT1 = insertPropTween(this.target, _local5, this.target[_local5], _arg1[_local5], _local5, false, this.cachedPT1);
};
};
this.vars[_local5] = _arg1[_local5];
};
if (_local7){
onPluginEvent("onInit", this);
};
if (((_arg2) && (this.cachedTotalTime))){
adjustStartValues();
};
} else {
for (_local5 in _arg1) {
this.vars[_local5] = _arg1[_local5];
};
};
}
public function set repeat(_arg1:int):void{
_repeat = _arg1;
setDirtyCache(true);
}
override public function complete(_arg1:Boolean=false, _arg2:Boolean=false):void{
super.complete(_arg1, _arg2);
if (((!(_arg2)) && (_dispatcher))){
if ((((this.cachedTotalTime == this.cachedTotalDuration)) && (!(this.cachedReversed)))){
_dispatcher.dispatchEvent(new TweenEvent(TweenEvent.COMPLETE));
} else {
if (((this.cachedReversed) && ((this.cachedTotalTime == 0)))){
_dispatcher.dispatchEvent(new TweenEvent(TweenEvent.REVERSE_COMPLETE));
};
};
};
}
public function set totalProgress(_arg1:Number):void{
setTotalTime((this.totalDuration * _arg1), false);
}
override public function invalidate():void{
this.yoyo = Boolean((this.vars.yoyo == true));
_repeat = ((this.vars.repeat) || (0));
_repeatDelay = ((this.vars.repeatDelay) || (0));
_hasUpdateListener = false;
if (((((!((this.vars.onCompleteListener == null))) || (!((this.vars.onUpdateListener == null))))) || (!((this.vars.onStartListener == null))))){
initDispatcher();
};
setDirtyCache(true);
super.invalidate();
}
public function killProperties(_arg1:Array):void{
var _local2:Object;
var _local3:int;
_local2 = {};
_local3 = _arg1.length;
while (_local3--) {
_local2[_arg1[_local3]] = true;
};
killVars(_local2);
}
public function dispatchEvent(_arg1:Event):Boolean{
return (((_dispatcher)==null) ? false : _dispatcher.dispatchEvent(_arg1));
}
protected function insertPropTween(_arg1:Object, _arg2:String, _arg3:Number, _arg4, _arg5:String, _arg6:Boolean, _arg7:PropTween):PropTween{
var _local8:PropTween;
var _local9:Array;
var _local10:int;
_local8 = new PropTween(_arg1, _arg2, _arg3, ((typeof(_arg4))=="number") ? (_arg4 - _arg3) : Number(_arg4), _arg5, _arg6, _arg7);
if (((_arg6) && ((_arg5 == "_MULTIPLE_")))){
_local9 = _arg1.overwriteProps;
_local10 = _local9.length;
while (_local10--) {
this.propTweenLookup[_local9[_local10]] = _local8;
};
} else {
this.propTweenLookup[_arg5] = _local8;
};
return (_local8);
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
if (_dispatcher){
_dispatcher.removeEventListener(_arg1, _arg2, _arg3);
};
}
public function setDestination(_arg1:String, _arg2, _arg3:Boolean=true):void{
var _local4:Object;
_local4 = {};
_local4[_arg1] = _arg2;
updateTo(_local4, _arg3);
}
public function set repeatDelay(_arg1:Number):void{
_repeatDelay = _arg1;
setDirtyCache(true);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
if (_dispatcher == null){
initDispatcher();
};
if (_arg1 == TweenEvent.UPDATE){
_hasUpdateListener = true;
};
_dispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function get timeScale():Number{
return (this.cachedTimeScale);
}
override public function renderTime(_arg1:Number, _arg2:Boolean=false, _arg3:Boolean=false):void{
var _local4:Number;
var _local5:Number;
var _local6:Boolean;
var _local7:Boolean;
var _local8:Boolean;
var _local9:PropTween;
var _local10:Number;
var _local11:uint;
var _local12:Number;
_local4 = (this.cacheIsDirty) ? this.totalDuration : this.cachedTotalDuration;
_local5 = this.cachedTime;
if (_arg1 >= _local4){
this.cachedTotalTime = _local4;
this.cachedTime = this.cachedDuration;
this.ratio = 1;
_local6 = true;
if (this.cachedDuration == 0){
if ((((((_arg1 == 0)) || ((_rawPrevTime < 0)))) && (!((_rawPrevTime == _arg1))))){
_arg3 = true;
};
_rawPrevTime = _arg1;
};
} else {
if (_arg1 <= 0){
if (_arg1 < 0){
this.active = false;
if (this.cachedDuration == 0){
if (_rawPrevTime > 0){
_arg3 = true;
_local6 = true;
};
_rawPrevTime = _arg1;
};
};
this.cachedTotalTime = (this.cachedTime = (this.ratio = 0));
if (((this.cachedReversed) && (!((_local5 == 0))))){
_local6 = true;
};
} else {
this.cachedTotalTime = (this.cachedTime = _arg1);
_local8 = true;
};
};
if (_repeat != 0){
_local10 = (this.cachedDuration + _repeatDelay);
if (_local6){
if (((this.yoyo) && ((_repeat % 2)))){
this.cachedTime = (this.ratio = 0);
};
} else {
if (_arg1 > 0){
if (_cyclesComplete != (_cyclesComplete = int((this.cachedTotalTime / _local10)))){
_local7 = true;
};
this.cachedTime = (((this.cachedTotalTime / _local10) - _cyclesComplete) * _local10);
if (((this.yoyo) && ((_cyclesComplete % 2)))){
this.cachedTime = (this.cachedDuration - this.cachedTime);
} else {
if (this.cachedTime >= this.cachedDuration){
this.cachedTime = this.cachedDuration;
this.ratio = 1;
_local8 = false;
};
};
if (this.cachedTime <= 0){
this.cachedTime = (this.ratio = 0);
_local8 = false;
};
};
};
};
if ((((_local5 == this.cachedTime)) && (!(_arg3)))){
return;
};
if (!this.initted){
init();
};
if (((!(this.active)) && (!(this.cachedPaused)))){
this.active = true;
};
if (_local8){
if (_easeType){
_local11 = _easePower;
_local12 = (this.cachedTime / this.cachedDuration);
if (_easeType == 2){
_local12 = (1 - _local12);
this.ratio = _local12;
while (_local11--) {
this.ratio = (_local12 * this.ratio);
};
this.ratio = (1 - this.ratio);
} else {
if (_easeType == 1){
this.ratio = _local12;
while (_local11--) {
this.ratio = (_local12 * this.ratio);
};
} else {
if (_local12 < 0.5){
_local12 = (_local12 * 2);
this.ratio = _local12;
while (_local11--) {
this.ratio = (_local12 * this.ratio);
};
this.ratio = (this.ratio * 0.5);
} else {
_local12 = ((1 - _local12) * 2);
this.ratio = _local12;
while (_local11--) {
this.ratio = (_local12 * this.ratio);
};
this.ratio = (1 - (0.5 * this.ratio));
};
};
};
} else {
this.ratio = _ease(this.cachedTime, 0, 1, this.cachedDuration);
};
};
if ((((((_local5 == 0)) && (!((this.cachedTotalTime == 0))))) && (!(_arg2)))){
if (this.vars.onStart){
this.vars.onStart.apply(null, this.vars.onStartParams);
};
if (_dispatcher){
_dispatcher.dispatchEvent(new TweenEvent(TweenEvent.START));
};
};
_local9 = this.cachedPT1;
while (_local9) {
_local9.target[_local9.property] = (_local9.start + (this.ratio * _local9.change));
_local9 = _local9.nextNode;
};
if (((_hasUpdate) && (!(_arg2)))){
this.vars.onUpdate.apply(null, this.vars.onUpdateParams);
};
if (((_hasUpdateListener) && (!(_arg2)))){
_dispatcher.dispatchEvent(new TweenEvent(TweenEvent.UPDATE));
};
if (_local6){
if (((_hasPlugins) && (this.cachedPT1))){
onPluginEvent("onComplete", this);
};
complete(true, _arg2);
} else {
if (((_local7) && (!(_arg2)))){
if (this.vars.onRepeat){
this.vars.onRepeat.apply(null, this.vars.onRepeatParams);
};
if (_dispatcher){
_dispatcher.dispatchEvent(new TweenEvent(TweenEvent.REPEAT));
};
};
};
}
public function willTrigger(_arg1:String):Boolean{
return (((_dispatcher)==null) ? false : _dispatcher.willTrigger(_arg1));
}
public function set currentProgress(_arg1:Number):void{
if (_cyclesComplete == 0){
setTotalTime((this.duration * _arg1), false);
} else {
setTotalTime(((this.duration * _arg1) + (_cyclesComplete * this.cachedDuration)), false);
};
}
public function get totalProgress():Number{
return ((this.cachedTotalTime / this.totalDuration));
}
protected function removePropTween(_arg1:PropTween):Boolean{
if (_arg1.nextNode){
_arg1.nextNode.prevNode = _arg1.prevNode;
};
if (_arg1.prevNode){
_arg1.prevNode.nextNode = _arg1.nextNode;
} else {
if (this.cachedPT1 == _arg1){
this.cachedPT1 = _arg1.nextNode;
};
};
if (((_arg1.isPlugin) && (_arg1.target.onDisable))){
_arg1.target.onDisable();
if (_arg1.target.activeDisable){
return (true);
};
};
return (false);
}
public function get repeatDelay():Number{
return (_repeatDelay);
}
public function get repeat():int{
return (_repeat);
}
public function get currentProgress():Number{
return ((this.cachedTime / this.duration));
}
override public function set currentTime(_arg1:Number):void{
if (_cyclesComplete == 0){
} else {
if (((this.yoyo) && (((_cyclesComplete % 2) == 1)))){
_arg1 = ((this.duration - _arg1) + (_cyclesComplete * (this.cachedDuration + _repeatDelay)));
} else {
_arg1 = (_arg1 + (_cyclesComplete * (this.duration + _repeatDelay)));
};
};
setTotalTime(_arg1, false);
}
protected function initDispatcher():void{
if (_dispatcher == null){
_dispatcher = new EventDispatcher(this);
};
if ((this.vars.onStartListener is Function)){
_dispatcher.addEventListener(TweenEvent.START, this.vars.onStartListener, false, 0, true);
};
if ((this.vars.onUpdateListener is Function)){
_dispatcher.addEventListener(TweenEvent.UPDATE, this.vars.onUpdateListener, false, 0, true);
_hasUpdateListener = true;
};
if ((this.vars.onCompleteListener is Function)){
_dispatcher.addEventListener(TweenEvent.COMPLETE, this.vars.onCompleteListener, false, 0, true);
};
if ((this.vars.onRepeatListener is Function)){
_dispatcher.addEventListener(TweenEvent.REPEAT, this.vars.onRepeatListener, false, 0, true);
};
if ((this.vars.onReverseCompleteListener is Function)){
_dispatcher.addEventListener(TweenEvent.REVERSE_COMPLETE, this.vars.onReverseCompleteListener, false, 0, true);
};
}
public function hasEventListener(_arg1:String):Boolean{
return (((_dispatcher)==null) ? false : _dispatcher.hasEventListener(_arg1));
}
override public function set totalDuration(_arg1:Number):void{
if (_repeat == -1){
return;
};
this.duration = ((_arg1 - (_repeat * _repeatDelay)) / (_repeat + 1));
}
override public function get totalDuration():Number{
if (this.cacheIsDirty){
this.cachedTotalDuration = ((_repeat)==-1) ? 999999999999 : ((this.cachedDuration * (_repeat + 1)) + (_repeatDelay * _repeat));
this.cacheIsDirty = false;
};
return (this.cachedTotalDuration);
}
public function set timeScale(_arg1:Number):void{
var _local2:Number;
if (_arg1 == 0){
_arg1 = 0.0001;
};
_local2 = (((_pauseTime) || ((_pauseTime == 0)))) ? _pauseTime : this.timeline.cachedTotalTime;
this.cachedStartTime = (_local2 - (((_local2 - this.cachedStartTime) * this.cachedTimeScale) / _arg1));
this.cachedTimeScale = _arg1;
setDirtyCache(false);
}
public static function set globalTimeScale(_arg1:Number):void{
var _local2:SimpleTimeline;
var _local3:Number;
if (_arg1 == 0){
_arg1 = 0.0001;
};
if (TweenLite.rootTimeline == null){
TweenLite.to({}, 0, {});
};
_local2 = TweenLite.rootTimeline;
_local3 = (getTimer() * 0.001);
_local2.cachedStartTime = (_local3 - (((_local3 - _local2.cachedStartTime) * _local2.cachedTimeScale) / _arg1));
_local2 = TweenLite.rootFramesTimeline;
_local3 = TweenLite.rootFrame;
_local2.cachedStartTime = (_local3 - (((_local3 - _local2.cachedStartTime) * _local2.cachedTimeScale) / _arg1));
TweenLite.rootFramesTimeline.cachedTimeScale = (TweenLite.rootTimeline.cachedTimeScale = _arg1);
}
public static function fromTo(_arg1:Object, _arg2:Number, _arg3:Object, _arg4:Object):TweenMax{
_arg4.startAt = _arg3;
if (_arg3.immediateRender){
_arg4.immediateRender = true;
};
return (new TweenMax(_arg1, _arg2, _arg4));
}
public static function allFromTo(_arg1:Array, _arg2:Number, _arg3:Object, _arg4:Object, _arg5:Number=0, _arg6:Function=null, _arg7:Array=null):Array{
_arg4.startAt = _arg3;
if (_arg3.immediateRender){
_arg4.immediateRender = true;
};
return (allTo(_arg1, _arg2, _arg4, _arg5, _arg6, _arg7));
}
public static function pauseAll(_arg1:Boolean=true, _arg2:Boolean=true):void{
changePause(true, _arg1, _arg2);
}
public static function getTweensOf(_arg1:Object):Array{
var _local2:Array;
var _local3:Array;
var _local4:int;
var _local5:uint;
_local2 = masterList[_arg1];
_local3 = [];
if (_local2){
_local4 = _local2.length;
_local5 = 0;
while (_local4--) {
if (!_local2[_local4].gc){
var _temp1 = _local5;
_local5 = (_local5 + 1);
var _local6 = _temp1;
_local3[_local6] = _local2[_local4];
};
};
};
return (_local3);
}
public static function get globalTimeScale():Number{
return (((TweenLite.rootTimeline)==null) ? 1 : TweenLite.rootTimeline.cachedTimeScale);
}
public static function killChildTweensOf(_arg1:DisplayObjectContainer, _arg2:Boolean=false):void{
var _local3:Array;
var _local4:Object;
var _local5:DisplayObjectContainer;
var _local6:int;
_local3 = getAllTweens();
_local6 = _local3.length;
while (_local6--) {
_local4 = _local3[_local6].target;
if ((_local4 is DisplayObject)){
_local5 = _local4.parent;
while (_local5) {
if (_local5 == _arg1){
if (_arg2){
_local3[_local6].complete(false);
} else {
_local3[_local6].setEnabled(false, false);
};
};
_local5 = _local5.parent;
};
};
};
}
public static function delayedCall(_arg1:Number, _arg2:Function, _arg3:Array=null, _arg4:Boolean=false):TweenMax{
return (new TweenMax(_arg2, 0, {delay:_arg1, onComplete:_arg2, onCompleteParams:_arg3, immediateRender:false, useFrames:_arg4, overwrite:0}));
}
public static function isTweening(_arg1:Object):Boolean{
var _local2:Array;
var _local3:int;
var _local4:TweenLite;
_local2 = getTweensOf(_arg1);
_local3 = _local2.length;
while (_local3--) {
_local4 = _local2[_local3];
if (((_local4.active) || ((((_local4.cachedStartTime == _local4.timeline.cachedTime)) && (_local4.timeline.active))))){
return (true);
};
};
return (false);
}
public static function killAll(_arg1:Boolean=false, _arg2:Boolean=true, _arg3:Boolean=true):void{
var _local4:Array;
var _local5:Boolean;
var _local6:int;
_local4 = getAllTweens();
_local6 = _local4.length;
while (_local6--) {
_local5 = (_local4[_local6].target == _local4[_local6].vars.onComplete);
if ((((_local5 == _arg3)) || (!((_local5 == _arg2))))){
if (_arg1){
_local4[_local6].complete(false);
} else {
_local4[_local6].setEnabled(false, false);
};
};
};
}
private static function changePause(_arg1:Boolean, _arg2:Boolean=true, _arg3:Boolean=false):void{
var _local4:Array;
var _local5:Boolean;
var _local6:int;
_local4 = getAllTweens();
_local6 = _local4.length;
while (_local6--) {
_local5 = (TweenLite(_local4[_local6]).target == TweenLite(_local4[_local6]).vars.onComplete);
if ((((_local5 == _arg3)) || (!((_local5 == _arg2))))){
TweenCore(_local4[_local6]).paused = _arg1;
};
};
}
public static function from(_arg1:Object, _arg2:Number, _arg3:Object):TweenMax{
_arg3.runBackwards = true;
if (!("immediateRender" in _arg3)){
_arg3.immediateRender = true;
};
return (new TweenMax(_arg1, _arg2, _arg3));
}
public static function allFrom(_arg1:Array, _arg2:Number, _arg3:Object, _arg4:Number=0, _arg5:Function=null, _arg6:Array=null):Array{
_arg3.runBackwards = true;
if (!("immediateRender" in _arg3)){
_arg3.immediateRender = true;
};
return (allTo(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6));
}
public static function getAllTweens():Array{
var _local1:Dictionary;
var _local2:uint;
var _local3:Array;
var _local4:Array;
var _local5:int;
_local1 = masterList;
_local2 = 0;
_local3 = [];
for each (_local4 in _local1) {
_local5 = _local4.length;
while (_local5--) {
if (!TweenLite(_local4[_local5]).gc){
var _temp1 = _local2;
_local2 = (_local2 + 1);
var _local8 = _temp1;
_local3[_local8] = _local4[_local5];
};
};
};
return (_local3);
}
public static function resumeAll(_arg1:Boolean=true, _arg2:Boolean=true):void{
changePause(false, _arg1, _arg2);
}
public static function to(_arg1:Object, _arg2:Number, _arg3:Object):TweenMax{
return (new TweenMax(_arg1, _arg2, _arg3));
}
public static function allTo(_arg1:Array, _arg2:Number, _arg3:Object, _arg4:Number=0, _arg5:Function=null, _arg6:Array=null):Array{
var i:int;
var varsDup:Object;
var p:String;
var l:uint;
var a:Array;
var curDelay:Number;
var onCompleteProxy:Function;
var onCompleteParamsProxy:Array;
var lastIndex:int;
var targets = _arg1;
var duration = _arg2;
var vars = _arg3;
var stagger = _arg4;
var onCompleteAll = _arg5;
var onCompleteAllParams = _arg6;
l = targets.length;
a = [];
curDelay = ((vars.delay) || (0));
onCompleteProxy = vars.onComplete;
onCompleteParamsProxy = vars.onCompleteParams;
lastIndex = ((stagger)<=0) ? 0 : (l - 1);
i = 0;
while (i < l) {
varsDup = {};
for (p in vars) {
varsDup[p] = vars[p];
};
varsDup.delay = curDelay;
if ((((i == lastIndex)) && (!((onCompleteAll == null))))){
varsDup.onComplete = function ():void{
if (onCompleteProxy != null){
onCompleteProxy.apply(null, onCompleteParamsProxy);
};
onCompleteAll.apply(null, onCompleteAllParams);
};
};
a[a.length] = new TweenMax(targets[i], duration, varsDup);
curDelay = (curDelay + stagger);
i = (i + 1);
};
return (a);
}
TweenPlugin.activate([AutoAlphaPlugin, EndArrayPlugin, FramePlugin, RemoveTintPlugin, TintPlugin, VisiblePlugin, VolumePlugin, BevelFilterPlugin, BezierPlugin, BezierThroughPlugin, BlurFilterPlugin, ColorMatrixFilterPlugin, ColorTransformPlugin, DropShadowFilterPlugin, FrameLabelPlugin, GlowFilterPlugin, HexColorsPlugin, RoundPropsPlugin, ShortRotationPlugin, {}]);
}
}//package com.greensock
Section 43
//Tracker (com.memecounter.Tracker)
package com.memecounter {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.net.*;
import flash.system.*;
public class Tracker {
public static const ORI_DOM:String = "ori_dom";
public static const LOCALHOST:String = "localhost";
private static const MAX_ATTEMPTS:int = 3;
public static const LOCAL:String = "Local";
private static const ERROR_URL:String = "http://error.distralytics.com/comms/";
public static const TRACKER_PATH:String = "/node/tracking/trackerAS3.swf";
private static var ori_dom:String;
private static var lurl:String;
private static var _isReady:Boolean = false;
private static var _isInited:Boolean = false;
public static var c:uint;
public static var d:String = "";
public static var a:uint = 0;
public static var root:DisplayObject;
public static var mcEvent:Function;
public static var fpv:String = "";
private static var l:Loader;
public static var da:Array = ["distralytics.com", "distralytics.co.uk"];
private static var tracker:MovieClip;
private static function loadComplete(_arg1:Event):void{
var e = _arg1;
try {
tracker = e.target.content;
tracker.init(Tracker, root);
} catch(e:Error) {
trace("Memecounter error: unable to access tracker object due to security sandbox.");
};
}
public static function init(_arg1:uint, _arg2:DisplayObject):void{
var _local3:uint;
if (!_isInited){
_isInited = true;
c = _arg1;
root = _arg2;
_local3 = 0;
while (_local3 < da.length) {
Security.allowDomain(("*" + da[_local3]));
Security.allowDomain(da[_local3]);
Security.allowDomain(((c + ".c.") + da[_local3]));
Security.allowDomain(("*." + da[_local3]));
_local3++;
};
ori_dom = (root.loaderInfo.parameters.hasOwnProperty(ORI_DOM)) ? root.loaderInfo.parameters[ORI_DOM] : "";
d = ((ori_dom)!="") ? ori_dom : ((new LocalConnection().domain.indexOf(LOCALHOST))==-1) ? new LocalConnection().domain : LOCAL;
fpv = Capabilities.version.split(" ")[1].split(",")[0];
lurl = (((((((((TRACKER_PATH + "?c=") + c) + "&r=") + Math.floor((Math.random() * 10000000000))) + "&d=") + d) + "&p=") + fpv) + "&as=3");
l = new Loader();
l.contentLoaderInfo.addEventListener(Event.INIT, loadComplete);
l.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadError);
lc();
mcEvent = kvEvent;
};
}
public static function trackerReady():void{
_isReady = true;
}
public static function get isReady():Boolean{
return (_isReady);
}
public static function mcClick(_arg1:String, _arg2:String=null):void{
if (_isReady){
tracker.mcClick(_arg1, _arg2);
};
}
private static function loadError(_arg1:Event):void{
var _local2:URLLoader;
var _local3:URLRequest;
var _local4:URLVariables;
a++;
if (a < MAX_ATTEMPTS){
lc();
} else {
_local2 = new URLLoader();
_local3 = new URLRequest(ERROR_URL);
_local4 = new URLVariables();
_local3.method = URLRequestMethod.GET;
_local3.data = _local4;
_local4.error = "Unable to load SWF";
_local4.c = c;
_local4.fd = root.loaderInfo.loaderURL;
_local4.p = fpv;
_local4.mv = "3.3.x";
_local4.r = Math.random();
_local2.load(_local3);
};
}
public static function kvCountry():String{
if (_isReady){
return (tracker.kvCountry());
};
return ("");
}
public static function kvClick(_arg1:uint):void{
if (_isReady){
tracker.kvClick(_arg1);
};
}
public static function kvEvent(_arg1):void{
if (_isReady){
tracker.kvEvent(_arg1);
};
}
private static function lc():void{
var _local1:String;
var _local2:String;
_local2 = da[(a % da.length)];
if (_local2.charAt(0) === "."){
_local1 = (("http://" + _local2.substr(1, (_local2.length - 1))) + lurl);
} else {
_local1 = (((("http://" + c) + ".c.") + _local2) + lurl);
};
Security.allowDomain(_local1);
l.load(new URLRequest(_local1));
}
}
}//package com.memecounter
Section 44
//Color (fl.motion.Color)
package fl.motion {
import flash.display.*;
import flash.geom.*;
public class Color extends ColorTransform {
private var _tintMultiplier:Number;// = 0
private var _tintColor:Number;// = 0
public function Color(_arg1:Number=1, _arg2:Number=1, _arg3:Number=1, _arg4:Number=1, _arg5:Number=0, _arg6:Number=0, _arg7:Number=0, _arg8:Number=0){
_tintColor = 0;
_tintMultiplier = 0;
super(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8);
}
public function setTint(_arg1:uint, _arg2:Number):void{
var _local3:uint;
var _local4:uint;
var _local5:uint;
this._tintColor = _arg1;
this._tintMultiplier = _arg2;
this.redMultiplier = (this.greenMultiplier = (this.blueMultiplier = (1 - _arg2)));
_local3 = ((_arg1 >> 16) & 0xFF);
_local4 = ((_arg1 >> 8) & 0xFF);
_local5 = (_arg1 & 0xFF);
this.redOffset = Math.round((_local3 * _arg2));
this.greenOffset = Math.round((_local4 * _arg2));
this.blueOffset = Math.round((_local5 * _arg2));
}
public function set tintColor(_arg1:uint):void{
this.setTint(_arg1, this.tintMultiplier);
}
public function get brightness():Number{
return ((this.redOffset) ? (1 - this.redMultiplier) : (this.redMultiplier - 1));
}
private function deriveTintColor():uint{
var _local1:Number;
var _local2:uint;
var _local3:uint;
var _local4:uint;
var _local5:uint;
_local1 = (1 / this.tintMultiplier);
_local2 = Math.round((this.redOffset * _local1));
_local3 = Math.round((this.greenOffset * _local1));
_local4 = Math.round((this.blueOffset * _local1));
_local5 = (((_local2 << 16) | (_local3 << 8)) | _local4);
return (_local5);
}
public function get tintMultiplier():Number{
return (this._tintMultiplier);
}
public function get tintColor():uint{
return (this._tintColor);
}
public function set brightness(_arg1:Number):void{
var _local2:Number;
var _local3:Number;
if (_arg1 > 1){
_arg1 = 1;
} else {
if (_arg1 < -1){
_arg1 = -1;
};
};
_local2 = (1 - Math.abs(_arg1));
_local3 = 0;
if (_arg1 > 0){
_local3 = (_arg1 * 0xFF);
};
this.redMultiplier = (this.greenMultiplier = (this.blueMultiplier = _local2));
this.redOffset = (this.greenOffset = (this.blueOffset = _local3));
}
public function set tintMultiplier(_arg1:Number):void{
this.setTint(this.tintColor, _arg1);
}
private function parseXML(_arg1:XML=null):Color{
var _local2:XML;
var _local3:XML;
var _local4:String;
var _local5:uint;
if (!_arg1){
return (this);
};
_local2 = _arg1.elements()[0];
if (!_local2){
return (this);
};
for each (_local3 in _local2.attributes()) {
_local4 = _local3.localName();
if (_local4 == "tintColor"){
_local5 = (Number(_local3.toString()) as uint);
this.tintColor = _local5;
} else {
this[_local4] = Number(_local3.toString());
};
};
return (this);
}
public static function interpolateColor(_arg1:uint, _arg2:uint, _arg3:Number):uint{
var _local4:Number;
var _local5:uint;
var _local6:uint;
var _local7:uint;
var _local8:uint;
var _local9:uint;
var _local10:uint;
var _local11:uint;
var _local12:uint;
var _local13:uint;
var _local14:uint;
var _local15:uint;
var _local16:uint;
var _local17:uint;
_local4 = (1 - _arg3);
_local5 = ((_arg1 >> 24) & 0xFF);
_local6 = ((_arg1 >> 16) & 0xFF);
_local7 = ((_arg1 >> 8) & 0xFF);
_local8 = (_arg1 & 0xFF);
_local9 = ((_arg2 >> 24) & 0xFF);
_local10 = ((_arg2 >> 16) & 0xFF);
_local11 = ((_arg2 >> 8) & 0xFF);
_local12 = (_arg2 & 0xFF);
_local13 = ((_local5 * _local4) + (_local9 * _arg3));
_local14 = ((_local6 * _local4) + (_local10 * _arg3));
_local15 = ((_local7 * _local4) + (_local11 * _arg3));
_local16 = ((_local8 * _local4) + (_local12 * _arg3));
_local17 = ((((_local13 << 24) | (_local14 << 16)) | (_local15 << 8)) | _local16);
return (_local17);
}
public static function interpolateTransform(_arg1:ColorTransform, _arg2:ColorTransform, _arg3:Number):ColorTransform{
var _local4:Number;
var _local5:ColorTransform;
_local4 = (1 - _arg3);
_local5 = new ColorTransform(((_arg1.redMultiplier * _local4) + (_arg2.redMultiplier * _arg3)), ((_arg1.greenMultiplier * _local4) + (_arg2.greenMultiplier * _arg3)), ((_arg1.blueMultiplier * _local4) + (_arg2.blueMultiplier * _arg3)), ((_arg1.alphaMultiplier * _local4) + (_arg2.alphaMultiplier * _arg3)), ((_arg1.redOffset * _local4) + (_arg2.redOffset * _arg3)), ((_arg1.greenOffset * _local4) + (_arg2.greenOffset * _arg3)), ((_arg1.blueOffset * _local4) + (_arg2.blueOffset * _arg3)), ((_arg1.alphaOffset * _local4) + (_arg2.alphaOffset * _arg3)));
return (_local5);
}
public static function fromXML(_arg1:XML):Color{
return (Color(new (Color).parseXML(_arg1)));
}
}
}//package fl.motion
Section 45
//StageMask (tamba.display.StageMask)
package tamba.display {
import flash.display.*;
public class StageMask extends Sprite {
public function StageMask(_arg1:uint, _arg2:uint):void{
this.graphics.beginFill(0xFF0000);
this.graphics.drawRect(0, 0, _arg1, _arg2);
this.graphics.endFill();
}
}
}//package tamba.display
Section 46
//EventWithParams (tamba.events.EventWithParams)
package tamba.events {
import flash.events.*;
public class EventWithParams extends Event {
private var _eventParams:Object;
private var _eventType:String;// = "onCustomEvent"
public function EventWithParams(_arg1:String, _arg2:Object=null){
_eventType = "onCustomEvent";
_eventParams = {};
super(_arg1, true, true);
_eventType = _arg1;
_eventParams = _arg2;
}
public function get params():Object{
return (_eventParams);
}
override public function get type():String{
return (_eventType);
}
}
}//package tamba.events
Section 47
//Preloader (tamba.events.Preloader)
package tamba.events {
import flash.display.*;
import flash.events.*;
public class Preloader extends Sprite {
private var preloaderParent;
public static const COMPLETE:String = "onPreloaderComplete";
public static const PROGRESS:String = "onPreloaderProgress";
public function Preloader(_arg1):void{
preloaderParent = _arg1;
}
public function start():void{
if (preloaderParent.loaderInfo.bytesLoaded >= preloaderParent.loaderInfo.bytesTotal){
onPreloaderComplete();
} else {
preloaderParent.loaderInfo.addEventListener(ProgressEvent.PROGRESS, onPreloaderProgress, false, 0, true);
preloaderParent.loaderInfo.addEventListener(Event.COMPLETE, onPreloaderComplete, false, 0, true);
};
}
private function onPreloaderProgress(_arg1:ProgressEvent):void{
dispatchEvent(new EventWithParams(PROGRESS, {progress:(_arg1.bytesLoaded / _arg1.bytesTotal)}));
}
private function onPreloaderComplete(_arg1:Event=null):void{
dispatchEvent(new EventWithParams(COMPLETE));
}
}
}//package tamba.events
Section 48
//Leaderboard (tamba.game.Leaderboard)
package tamba.game {
import flash.display.*;
import flash.utils.*;
import tamba.events.*;
import tamba.net.*;
import tamba.ui.*;
public class Leaderboard extends MovieClip {
private var trackLinkage:String;
private var lineLinkage:String;
private var remoting:Remoting;
private var gatewayURL:String;
private var faceLinkage:String;
private var boardHeight:uint;
private var serviceName:String;
public function Leaderboard(_arg1:String, _arg2:String, _arg3:uint, _arg4:String, _arg5:String, _arg6:String){
gatewayURL = _arg1;
serviceName = _arg2;
boardHeight = _arg3;
lineLinkage = _arg4;
trackLinkage = _arg5;
faceLinkage = _arg6;
}
private function onRemotingSuccess(_arg1:EventWithParams):void{
var _local2:MovieClip;
var _local3:Array;
var _local4:uint;
var _local5:uint;
var _local6:ScrollBar;
var _local7:MovieClip;
var _local8:MovieClip;
var _local9:String;
_local2 = new MovieClip();
_local3 = _arg1.params.data;
_local4 = _local3.length;
_local5 = 0;
while (_local5 < _local4) {
_local8 = new (getDefinitionByName(lineLinkage));
for (_local9 in _local3[_local5]) {
if (_local8[_local9] != null){
_local8[_local9].text = _local3[_local5][_local9];
};
};
_local8.y = (_local5 * _local8.height);
onLineAdded(_local8, _local3[_local5]);
_local2.addChild(_local8);
_local5++;
};
_local6 = new ScrollBar(_local2, (_local2.width + 10), boardHeight, trackLinkage, faceLinkage);
_local7 = new MovieClip();
_local7.addChild(_local2);
_local7.addChild(_local6);
dispatchEvent(new EventWithParams("onSuccess", {method:_arg1.params.method, data:_local7}));
}
protected function onLineAdded(_arg1:MovieClip, _arg2:Object):void{
}
private function onRemotingError(_arg1:EventWithParams):void{
dispatchError(new Error("remoting"));
}
public function makeLeaderboard(_arg1:int=20):void{
remoting = new Remoting(gatewayURL, serviceName);
remoting.addEventListener("onRemotingSuccess", onRemotingSuccess, false, 0, true);
remoting.addEventListener("onRemotingError", onRemotingError, false, 0, true);
remoting.call("getHighScores", _arg1);
}
private function dispatchError(_arg1):void{
}
}
}//package tamba.game
Section 49
//SendToFriend (tamba.game.SendToFriend)
package tamba.game {
import flash.display.*;
import tamba.events.*;
import tamba.net.*;
public class SendToFriend extends Sprite {
private var senderName:String;
private var senderEmail:String;
private var errorMessages:Object;
private var remoting:Remoting;
private var gatewayURL:String;
private var recipients:Array;
private var serviceName:String;
public function SendToFriend(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:Array){
errorMessages = {error_yourname:"Please enter your name", error_youremail:"Please enter a valid email address", error_recipients:"Please enter some recipients", error_friendname:"One of your recipients has a missing name", error_friendemail:"One of your recipients has an invalid email address", error_server:"Could not connect to the server"};
super();
gatewayURL = _arg1;
serviceName = _arg2;
senderName = _arg3;
senderEmail = _arg4;
recipients = _arg5;
}
private function trim(_arg1:String):String{
if (_arg1 == null){
return ("");
};
return (_arg1.replace(/^\s+|\s+$/g, ""));
}
private function validateEmail(_arg1:String):Boolean{
var _local2:RegExp;
_arg1 = trim(_arg1);
_local2 = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/i;
if ((((_arg1.length <= 1)) || (!(_local2.test(_arg1))))){
return (false);
};
return (true);
}
private function onRemotingSuccess(_arg1:EventWithParams):void{
dispatchEvent(new EventWithParams("onSuccess", {method:_arg1.params.method, data:_arg1.params.data}));
}
public function send():void{
var _local1:uint;
var _local2:uint;
if (!validateName(senderName)){
dispatchError(new Error("error_yourname"));
return;
};
if (!validateEmail(senderEmail)){
dispatchError(new Error("error_youremail"));
return;
};
if (recipients.length <= 0){
dispatchError(new Error("error_recipients"));
return;
};
_local1 = recipients.length;
_local2 = 0;
while (_local2 < _local1) {
if (!validateName(recipients[_local2][0])){
dispatchError(new Error("error_friendname"));
return;
};
if (!validateEmail(recipients[_local2][1])){
dispatchError(new Error("error_friendemail"));
return;
};
_local2++;
};
remoting = new Remoting(gatewayURL, serviceName);
remoting.addEventListener("onRemotingSuccess", onRemotingSuccess, false, 0, true);
remoting.addEventListener("onRemotingError", onRemotingError, false, 0, true);
remoting.call("sendToFriend", senderName, senderEmail, recipients);
}
private function onRemotingError(_arg1:EventWithParams):void{
dispatchError(new Error("error_server"));
}
private function dispatchError(_arg1):void{
dispatchEvent(new EventWithParams("onError", {name:_arg1.message, message:errorMessages[_arg1.message]}));
}
private function validateName(_arg1:String=null):Boolean{
_arg1 = trim(_arg1);
if (_arg1.length <= 0){
return (false);
};
return (true);
}
}
}//package tamba.game
Section 50
//SubmitScore (tamba.game.SubmitScore)
package tamba.game {
import flash.display.*;
import tamba.events.*;
import com.adobe.crypto.*;
import tamba.net.*;
public class SubmitScore extends Sprite {
private var playerName:String;
private var playerScore:int;
private var playerEmail:String;
private var errorMessages:Object;
private var optin:int;// = 0
private var remoting:Remoting;
private var hashSalt:String;
private var gatewayURL:String;
private var serviceName:String;
public function SubmitScore(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:String, _arg6:int, _arg7:uint=0){
optin = 0;
errorMessages = {error_yourname:"Please enter your name", error_youremail:"Please enter a valid email address", error_server:"Could not connect to the server"};
super();
gatewayURL = _arg1;
serviceName = _arg2;
hashSalt = _arg3;
playerName = _arg4;
playerEmail = _arg5;
playerScore = _arg6;
optin = _arg7;
}
private function trim(_arg1:String):String{
if (_arg1 == null){
return ("");
};
return (_arg1.replace(/^\s+|\s+$/g, ""));
}
private function validateEmail(_arg1:String):Boolean{
var _local2:RegExp;
_arg1 = trim(_arg1);
_local2 = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/i;
if ((((_arg1.length <= 1)) || (!(_local2.test(_arg1))))){
return (false);
};
return (true);
}
private function onRemotingSuccess(_arg1:EventWithParams):void{
dispatchEvent(new EventWithParams("onSuccess", {method:_arg1.params.method, data:_arg1.params.data}));
}
private function onRemotingError(_arg1:EventWithParams):void{
dispatchError(new Error("error_server"));
}
private function dispatchError(_arg1):void{
dispatchEvent(new EventWithParams("onError", {name:_arg1.message, message:errorMessages[_arg1.message]}));
}
public function submit():void{
var _local1:String;
if (!validateName(playerName)){
dispatchError(new Error("error_yourname"));
return;
};
if (!validateEmail(playerEmail)){
dispatchError(new Error("error_youremail"));
return;
};
_local1 = MD5.hash(((((((("client=" + hashSalt) + "&email=") + playerEmail) + "&score=") + playerScore) + "&optin=") + optin));
remoting = new Remoting(gatewayURL, serviceName);
remoting.addEventListener("onRemotingSuccess", onRemotingSuccess, false, 0, true);
remoting.addEventListener("onRemotingError", onRemotingError, false, 0, true);
remoting.call("setHighScore", playerName, playerEmail, playerScore, optin, _local1);
}
private function validateName(_arg1:String=null):Boolean{
_arg1 = trim(_arg1);
if (_arg1.length <= 0){
return (false);
};
return (true);
}
}
}//package tamba.game
Section 51
//Audio (tamba.media.Audio)
package tamba.media {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.media.*;
public class Audio extends Sprite {
private static var effectsList:Array = [];
private static var fadeStartVolume:Number = 0;
private static var _musicVolume:Number = 1;
private static var effectsChannel:SoundChannel;
private static var musicChannel:SoundChannel;
private static var fadeTimer:Timer;
private static var fadeTimerMs:int = 50;
private static var fadeEndVolume:Number = 0;
private static var fadeRate:Number = 0.05;
private static var _effectsVolume:Number = 1;
public static function get effectsVolume():Number{
return (_effectsVolume);
}
public static function fadeMusic(_arg1:Number=0, _arg2:Number=1, _arg3:Number=1):void{
_musicVolume = (fadeStartVolume = _arg1);
fadeEndVolume = _arg2;
fadeRate = (Math.abs((fadeEndVolume - fadeStartVolume)) / ((_arg3 / fadeTimerMs) * 1000));
fadeTimer = new Timer(fadeTimerMs);
fadeTimer.addEventListener("timer", onFadeTimer, false, 0, true);
fadeTimer.start();
}
public static function stopMusic():void{
if (musicChannel != null){
musicChannel.stop();
};
}
public static function playMusic(_arg1:String):void{
var linkage = _arg1;
try {
musicChannel = new (getDefinitionByName(linkage)).play(0, 999);
trace(musicVolume);
applyMusicVolume();
} catch(error:Error) {
trace("playMusic: Invalid linkage >", linkage);
};
}
private static function onFadeTimer(_arg1:Event):void{
if (fadeEndVolume > fadeStartVolume){
musicVolume = (musicVolume + fadeRate);
} else {
musicVolume = (musicVolume - fadeRate);
};
if ((((((fadeEndVolume > fadeStartVolume)) && ((_musicVolume > fadeEndVolume)))) || ((((fadeEndVolume <= fadeStartVolume)) && ((_musicVolume < fadeEndVolume)))))){
musicVolume = fadeEndVolume;
fadeTimer.stop();
};
applyMusicVolume();
}
public static function get musicVolume():Number{
return (_musicVolume);
}
public static function stopEffects():void{
var _local1:uint;
_local1 = effectsList.length;
while (_local1--) {
if (effectsList[_local1] != null){
effectsList[_local1].stop();
};
};
effectsList = [];
}
public static function playEffect(_arg1:String, _arg2:int=1):void{
var linkage = _arg1;
var repeat = _arg2;
try {
effectsChannel = new (getDefinitionByName(linkage)).play(0, repeat);
effectsList.push(effectsChannel);
applyEffectsVolume();
} catch(error:Error) {
trace("playEffect: Invalid linkage >", linkage);
};
}
private static function applyEffectsVolume():void{
var _local1:uint;
var _local2:SoundTransform;
_local1 = effectsList.length;
while (_local1--) {
if (effectsList[_local1] != null){
_local2 = effectsList[_local1].soundTransform;
_local2.volume = _effectsVolume;
effectsList[_local1].soundTransform = _local2;
};
};
}
private static function applyMusicVolume():void{
var _local1:SoundTransform;
if (musicChannel != null){
_local1 = musicChannel.soundTransform;
_local1.volume = _musicVolume;
musicChannel.soundTransform = _local1;
};
}
public static function set effectsVolume(_arg1:Number):void{
_effectsVolume = _arg1;
applyEffectsVolume();
}
public static function set musicVolume(_arg1:Number):void{
_musicVolume = _arg1;
applyMusicVolume();
}
}
}//package tamba.media
Section 52
//GetURL (tamba.net.GetURL)
package tamba.net {
import flash.display.*;
import flash.net.*;
public class GetURL extends Sprite {
public static function goto(_arg1:String, _arg2:String=null):void{
var req:URLRequest;
var url = _arg1;
var window = _arg2;
req = new URLRequest(url);
try {
navigateToURL(req, window);
} catch(e:Error) {
trace("GetURL failed", e.message);
};
}
}
}//package tamba.net
Section 53
//Remoting (tamba.net.Remoting)
package tamba.net {
import flash.display.*;
import flash.events.*;
import tamba.events.*;
import flash.net.*;
public class Remoting extends Sprite {
private var callResponder:Responder;
private var netConnection:NetConnection;
private var functionName:String;
private var gatewayURL:String;
private var serviceName:String;
public function Remoting(_arg1:String, _arg2:String):void{
gatewayURL = _arg1;
serviceName = _arg2;
callResponder = new Responder(callHandler, errorHandler);
netConnection = new NetConnection();
netConnection.addEventListener(IOErrorEvent.IO_ERROR, onRemotingIOError, false, 0, true);
netConnection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onRemotingSecurityError, false, 0, true);
netConnection.addEventListener(NetStatusEvent.NET_STATUS, onRemotingNetStatusChange, false, 0, true);
}
private function callHandler(_arg1):void{
dispatchEvent(new EventWithParams("onRemotingSuccess", {method:functionName, data:_arg1}));
netConnection.close();
}
private function errorHandler(_arg1:Object):void{
var _local2:*;
for (_local2 in _arg1) {
trace(_local2, "=", _arg1[_local2]);
};
dispatchEvent(new EventWithParams("onRemotingError", {name:_arg1.code, message:_arg1.description}));
netConnection.close();
}
public function call(_arg1:String, ... _args):void{
functionName = _arg1;
if (netConnection.connected){
netConnection.close();
};
netConnection.connect(gatewayURL);
_args.unshift(((serviceName + ".") + functionName), callResponder);
netConnection.call.apply(null, _args);
}
private function onRemotingSecurityError(_arg1:SecurityErrorEvent):void{
dispatchError(new Error(_arg1.text));
}
private function onRemotingNetStatusChange(_arg1:NetStatusEvent):void{
if (_arg1.info.level == "error"){
dispatchError(new Error(_arg1.info.code));
};
}
private function dispatchError(_arg1):void{
dispatchEvent(new EventWithParams("onRemotingError", {name:_arg1.name, message:_arg1.message}));
}
private function onRemotingIOError(_arg1:IOErrorEvent):void{
dispatchError(new Error(_arg1.text));
}
}
}//package tamba.net
Section 54
//CheckBox (tamba.ui.CheckBox)
package tamba.ui {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
public class CheckBox extends MovieClip {
private var _checked:Boolean;// = false
private var tick:MovieClip;
public function CheckBox(_arg1:String, _arg2:String, _arg3:Boolean=false):void{
var _local4:MovieClip;
_checked = false;
super();
_local4 = new (getDefinitionByName(_arg1));
tick = new (getDefinitionByName(_arg2));
_local4.addChild(tick);
addChild(_local4);
checked = _arg3;
this.addEventListener(MouseEvent.CLICK, onCheckBoxClicked, false, 0, true);
this.buttonMode = true;
}
private function onCheckBoxClicked(_arg1:MouseEvent):void{
if (checked){
checked = false;
} else {
checked = true;
};
}
public function set checked(_arg1:Boolean):void{
_checked = _arg1;
if (_arg1){
tick.visible = true;
} else {
tick.visible = false;
};
}
public function get checked():Boolean{
return (_checked);
}
}
}//package tamba.ui
Section 55
//ScrollBar (tamba.ui.ScrollBar)
package tamba.ui {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.geom.*;
import flash.filters.*;
public class ScrollBar extends Sprite {
private var trackLinkage:String;
private var scrollContent;
private var maskHeight:int;
private var maskWidth:int;
private var contentInitY:int;
private var _scrollFace;
private var scrollMask:Sprite;
private var faceLinkage:String;
private var moveIncrement:Number;
private var _scrollTrack;
public function ScrollBar(_arg1, _arg2:Number, _arg3:Number, _arg4:String=null, _arg5:String=null):void{
scrollContent = _arg1;
maskWidth = _arg2;
maskHeight = _arg3;
trackLinkage = _arg4;
faceLinkage = _arg5;
contentInitY = scrollContent.y;
initChildren();
moveIncrement = ((scrollContent.height - scrollMask.height) / (_scrollTrack.height - _scrollFace.height));
addEventListener(Event.ADDED_TO_STAGE, onAddedToStage);
}
private function onScrollFaceMouseMove(_arg1:MouseEvent=null):void{
scrollContent.y = ((-(Math.abs((contentInitY - (_scrollFace.y + _scrollTrack.y)))) * moveIncrement) + contentInitY);
}
private function initTrack():void{
if (trackLinkage == null){
_scrollTrack = new Sprite();
_scrollTrack.graphics.beginFill(0xAAAAAA);
_scrollTrack.graphics.drawRect(0, 0, 20, scrollMask.height);
_scrollTrack.graphics.endFill();
_scrollTrack.filters = [new BevelFilter(-0.25, 45)];
} else {
_scrollTrack = new (getDefinitionByName(trackLinkage));
};
_scrollTrack.x = (scrollMask.x + scrollMask.width);
_scrollTrack.y = scrollMask.y;
addChild(_scrollTrack);
}
private function initMask():void{
scrollMask = new Sprite();
scrollMask.x = scrollContent.x;
scrollMask.y = scrollContent.y;
scrollMask.graphics.beginFill(0);
scrollMask.graphics.drawRect(0, 0, maskWidth, maskHeight);
scrollMask.graphics.endFill();
scrollContent.mask = scrollMask;
addChild(scrollMask);
}
private function initChildren():void{
removeChildren();
initMask();
initTrack();
initFace();
}
private function onScrollTrackMouseDown(_arg1:MouseEvent){
_scrollFace.y = (_scrollTrack.mouseY - _scrollFace.height);
if (_scrollFace.y < 0){
_scrollFace.y = 0;
};
onScrollFaceMouseMove();
}
private function onAddedToStage(_arg1:Event):void{
_scrollFace.addEventListener(MouseEvent.MOUSE_DOWN, onScrollFaceMouseDown, false, 0, true);
}
private function initFace():void{
if (faceLinkage == null){
_scrollFace = new Sprite();
_scrollFace.graphics.beginFill(0xEEEEEE);
_scrollFace.graphics.drawRect(0, 0, 20, 20);
_scrollFace.graphics.endFill();
_scrollFace.filters = [new BevelFilter(0.25, 45)];
} else {
_scrollFace = new (getDefinitionByName(faceLinkage));
};
_scrollFace.buttonMode = true;
_scrollTrack.addChild(_scrollFace);
}
public function get scrollTrack(){
return (_scrollTrack);
}
private function removeChildren():void{
while (numChildren) {
removeChild(getChildAt(0));
};
}
public function get scrollFace(){
return (_scrollFace);
}
private function onScrollFaceMouseUp(_arg1:MouseEvent):void{
stage.removeEventListener(MouseEvent.MOUSE_UP, onScrollFaceMouseUp);
stage.removeEventListener(MouseEvent.MOUSE_MOVE, onScrollFaceMouseMove);
stopDrag();
}
private function onScrollFaceMouseDown(_arg1:MouseEvent){
stage.addEventListener(MouseEvent.MOUSE_UP, onScrollFaceMouseUp);
stage.addEventListener(MouseEvent.MOUSE_MOVE, onScrollFaceMouseMove);
_scrollFace.startDrag(false, new Rectangle(0, 0, 0, (_scrollTrack.height - _scrollFace.height)));
}
}
}//package tamba.ui
Section 56
//GlobalObject (tamba.utils.GlobalObject)
package tamba.utils {
public class GlobalObject {
private static var _vars:Object = {};
public static function set(_arg1:String, _arg2):void{
_vars[_arg1] = _arg2;
}
public static function get(_arg1:String){
if (_vars[_arg1] == null){
};
return (_vars[_arg1]);
}
}
}//package tamba.utils
Section 57
//Utils (tamba.utils.Utils)
package tamba.utils {
import flash.display.*;
import flash.events.*;
import flash.geom.*;
public class Utils {
public static var buttonListeners:Array = [];
public static function clearButtonListeners():void{
var _local1:String;
for (_local1 in buttonListeners) {
buttonListeners[_local1][0].removeEventListener(MouseEvent[buttonListeners[_local1][1]], buttonListeners[_local1][2]);
buttonListeners[_local1][0].buttonMode = false;
};
buttonListeners = [];
}
private static function onDefaultMouseOut(_arg1:MouseEvent){
highlightClip(MovieClip(_arg1.currentTarget), false);
}
public static function highlightClip(_arg1:MovieClip, _arg2:Boolean):void{
var _local3:ColorTransform;
var _local4:int;
_local3 = new ColorTransform();
_local4 = 20;
if (!_arg2){
_local4 = 0;
};
_local3.redOffset = _local4;
_local3.greenOffset = _local4;
_local3.blueOffset = _local4;
_arg1.transform.colorTransform = _local3;
}
public static function validateEmail(_arg1:String):Boolean{
var _local2:RegExp;
_local2 = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/i;
return (_local2.test(_arg1));
}
public static function addButtonListener(_arg1:Object, _arg2:Function=null, _arg3:Function=null, _arg4:Function=null, _arg5:Boolean=false):void{
if (_arg2 == null){
_arg2 = onDefaultClick;
};
if (_arg3 == null){
_arg3 = onDefaultMouseOver;
};
if (_arg4 == null){
_arg4 = onDefaultMouseOut;
};
_arg1.addEventListener(MouseEvent.CLICK, _arg2, false, 0, true);
_arg1.addEventListener(MouseEvent.MOUSE_OVER, _arg3, false, 0, true);
_arg1.addEventListener(MouseEvent.MOUSE_OUT, _arg4, false, 0, true);
if ((_arg1 is MovieClip)){
_arg1.mouseChildren = false;
_arg1.buttonMode = true;
_arg1.useHandCursor = true;
};
if (!_arg5){
buttonListeners.push([_arg1, "CLICK", _arg2]);
buttonListeners.push([_arg1, "MOUSE_OVER", _arg3]);
buttonListeners.push([_arg1, "MOUSE_OUT", _arg4]);
};
}
public static function trim(_arg1:String):String{
if (_arg1 == null){
return ("");
};
return (_arg1.replace(/^\s+|\s+$/g, ""));
}
public static function zeroPad(_arg1:int, _arg2:int):String{
var _local3:String;
_local3 = ("" + _arg1);
while (_local3.length < _arg2) {
_local3 = ("0" + _local3);
};
return (_local3);
}
public static function validateString(_arg1:String):Boolean{
return ((_arg1.length > 0));
}
public static function msToString(_arg1:uint):String{
var _local2:Date;
var _local3:int;
var _local4:String;
var _local5:int;
var _local6:String;
var _local7:Number;
var _local8:String;
_local2 = new Date(_arg1);
_local3 = _local2.getMinutes();
_local4 = _local3.toString();
if (_local3 < 10){
_local4 = ("0" + _local4);
};
_local5 = _local2.getSeconds();
_local6 = _local5.toString();
if (_local5 < 10){
_local6 = ("0" + _local6);
};
_local7 = Math.floor(((_arg1 % 1000) / 10));
_local8 = _local7.toString();
if (_local7 < 10){
_local8 = ("0" + _local8);
};
return (((((_local4 + ":") + _local6) + ":") + _local8));
}
private static function onDefaultClick(_arg1:MouseEvent):void{
}
private static function onDefaultMouseOver(_arg1:MouseEvent){
highlightClip(MovieClip(_arg1.currentTarget), true);
}
public static function randomInteger(_arg1:Number, _arg2:Number):Number{
return (Math.round(((Math.random() * (_arg2 - _arg1)) + _arg1)));
}
}
}//package tamba.utils
Section 58
//_assets_1 (up_fla._assets_1)
package up_fla {
import flash.display.*;
public dynamic class _assets_1 extends MovieClip {
public function _assets_1(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package up_fla
Section 59
//atv_text_83 (up_fla.atv_text_83)
package up_fla {
import flash.display.*;
import flash.text.*;
public dynamic class atv_text_83 extends MovieClip {
public var text_atv:TextField;
}
}//package up_fla
Section 60
//btn_sound_70 (up_fla.btn_sound_70)
package up_fla {
import flash.display.*;
import flash.text.*;
public dynamic class btn_sound_70 extends MovieClip {
public var text_label:TextField;
}
}//package up_fla
Section 61
//footer_bookmarks_71 (up_fla.footer_bookmarks_71)
package up_fla {
import flash.display.*;
public dynamic class footer_bookmarks_71 extends MovieClip {
public var btn_delicious:MovieClip;
public var btn_facebook:MovieClip;
public var btn_stumbleupon:MovieClip;
public var btn_digg:MovieClip;
public var btn_google:MovieClip;
public var btn_twitter:MovieClip;
public var btn_yahoo:MovieClip;
public var btn_reddit:MovieClip;
}
}//package up_fla
Section 62
//game_die_inner_5 (up_fla.game_die_inner_5)
package up_fla {
import flash.display.*;
public dynamic class game_die_inner_5 extends MovieClip {
public function game_die_inner_5(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package up_fla
Section 63
//instructions_content_26 (up_fla.instructions_content_26)
package up_fla {
import flash.display.*;
public dynamic class instructions_content_26 extends MovieClip {
public var mc_scroll:MovieClip;
}
}//package up_fla
Section 64
//sendfriend_content_43 (up_fla.sendfriend_content_43)
package up_fla {
import flash.display.*;
import flash.text.*;
public dynamic class sendfriend_content_43 extends MovieClip {
public var input_yourname:TextField;
public var input_youremail:TextField;
public var input_friendemail_1:TextField;
public var input_friendemail_2:TextField;
public var input_friendemail_3:TextField;
public var input_friendname_2:TextField;
public var input_friendname_3:TextField;
public var input_friendname_1:TextField;
}
}//package up_fla
Section 65
//submitscore_content_59 (up_fla.submitscore_content_59)
package up_fla {
import flash.display.*;
import flash.text.*;
public dynamic class submitscore_content_59 extends MovieClip {
public var text_score:TextField;
public var input_yourname:TextField;
public var input_youremail:TextField;
public var mc_facebook:MovieClip;
}
}//package up_fla
Section 66
//submitscore_fb_60 (up_fla.submitscore_fb_60)
package up_fla {
import flash.display.*;
public dynamic class submitscore_fb_60 extends MovieClip {
public var mc_checkbox:checkbox;
}
}//package up_fla
Section 67
//ui_atv_bubble_82 (up_fla.ui_atv_bubble_82)
package up_fla {
import flash.display.*;
public dynamic class ui_atv_bubble_82 extends MovieClip {
public var mc_text:MovieClip;
}
}//package up_fla
Section 68
//bg_main (bg_main)
package {
import flash.display.*;
public dynamic class bg_main extends MovieClip {
}
}//package
Section 69
//boing (boing)
package {
import flash.media.*;
public dynamic class boing extends Sound {
}
}//package
Section 70
//bonus_underlay (bonus_underlay)
package {
import flash.display.*;
public dynamic class bonus_underlay extends MovieClip {
}
}//package
Section 71
//checkbox (checkbox)
package {
import flash.display.*;
public dynamic class checkbox extends MovieClip {
public function checkbox(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 72
//dice_bounce (dice_bounce)
package {
import flash.media.*;
public dynamic class dice_bounce extends Sound {
}
}//package
Section 73
//dice_flick (dice_flick)
package {
import flash.media.*;
public dynamic class dice_flick extends Sound {
}
}//package
Section 74
//fruit (fruit)
package {
import flash.media.*;
public dynamic class fruit extends Sound {
}
}//package
Section 75
//fruitclick (fruitclick)
package {
import flash.media.*;
public dynamic class fruitclick extends Sound {
}
}//package
Section 76
//fruitstop (fruitstop)
package {
import flash.media.*;
public dynamic class fruitstop extends Sound {
}
}//package
Section 77
//game_die (game_die)
package {
import flash.display.*;
public dynamic class game_die extends MovieClip {
public var mc_die:MovieClip;
public var mc_shadow:MovieClip;
public function game_die(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 78
//game_help (game_help)
package {
import flash.display.*;
import flash.text.*;
public dynamic class game_help extends MovieClip {
public var text_help:TextField;
}
}//package
Section 79
//game_message (game_message)
package {
import flash.display.*;
import flash.text.*;
public dynamic class game_message extends MovieClip {
public var text_message:TextField;
public var btn_ok:MovieClip;
public var text_progress:TextField;
}
}//package
Section 80
//game_slots (game_slots)
package {
import flash.display.*;
public dynamic class game_slots extends MovieClip {
public var btn_hold_2:MovieClip;
public var btn_hold_0:MovieClip;
public var mc_reel_0:MovieClip;
public var mc_reel_1:MovieClip;
public var mc_reel_2:MovieClip;
public var btn_hold_1:MovieClip;
public var btn_spin:MovieClip;
public var mc_help:MovieClip;
}
}//package
Section 81
//game_slots_spinner_0 (game_slots_spinner_0)
package {
import flash.display.*;
public dynamic class game_slots_spinner_0 extends MovieClip {
}
}//package
Section 82
//game_slots_spinner_1 (game_slots_spinner_1)
package {
import flash.display.*;
public dynamic class game_slots_spinner_1 extends MovieClip {
}
}//package
Section 83
//game_slots_spinner_2 (game_slots_spinner_2)
package {
import flash.display.*;
public dynamic class game_slots_spinner_2 extends MovieClip {
}
}//package
Section 84
//game_spinner (game_spinner)
package {
import flash.display.*;
public dynamic class game_spinner extends MovieClip {
public var mc_arrow:MovieClip;
public var btn_spin:MovieClip;
public var mc_help:MovieClip;
public var mc_wheel:MovieClip;
}
}//package
Section 85
//gameover_message (gameover_message)
package {
import flash.display.*;
import flash.text.*;
public dynamic class gameover_message extends MovieClip {
public var text_score:TextField;
public var mc_bride:MovieClip;
public var text_bonus:TextField;
public var mc_result:MovieClip;
public var btn_next:MovieClip;
}
}//package
Section 86
//gamestart_message (gamestart_message)
package {
import flash.display.*;
public dynamic class gamestart_message extends MovieClip {
public var mc_bride:MovieClip;
public var btn_start:MovieClip;
}
}//package
Section 87
//harp_1 (harp_1)
package {
import flash.media.*;
public dynamic class harp_1 extends Sound {
}
}//package
Section 88
//harp_2 (harp_2)
package {
import flash.media.*;
public dynamic class harp_2 extends Sound {
}
}//package
Section 89
//harp_3 (harp_3)
package {
import flash.media.*;
public dynamic class harp_3 extends Sound {
}
}//package
Section 90
//harp_4 (harp_4)
package {
import flash.media.*;
public dynamic class harp_4 extends Sound {
}
}//package
Section 91
//harp_5 (harp_5)
package {
import flash.media.*;
public dynamic class harp_5 extends Sound {
}
}//package
Section 92
//harp_6 (harp_6)
package {
import flash.media.*;
public dynamic class harp_6 extends Sound {
}
}//package
Section 93
//hud_score (hud_score)
package {
import flash.display.*;
import flash.text.*;
public dynamic class hud_score extends MovieClip {
public var text_score:TextField;
}
}//package
Section 94
//leaderboard_line (leaderboard_line)
package {
import flash.display.*;
import flash.text.*;
public dynamic class leaderboard_line extends MovieClip {
public var score:TextField;
public var username:TextField;
}
}//package
Section 95
//player_1 (player_1)
package {
import flash.display.*;
public dynamic class player_1 extends MovieClip {
public var mc_inner:MovieClip;
}
}//package
Section 96
//player_2 (player_2)
package {
import flash.display.*;
public dynamic class player_2 extends MovieClip {
public var mc_inner:MovieClip;
}
}//package
Section 97
//screen_atv (screen_atv)
package {
import flash.display.*;
public dynamic class screen_atv extends MovieClip {
public var mc_channel:MovieClip;
public var mc_bubble:MovieClip;
public var mc_bride:MovieClip;
public var mc_client:MovieClip;
public var mc_logo:MovieClip;
public var btn_next:MovieClip;
}
}//package
Section 98
//screen_footer (screen_footer)
package {
import flash.display.*;
public dynamic class screen_footer extends MovieClip {
public var btn_tamba:MovieClip;
public var btn_sound:MovieClip;
public var mc_bookmarks:MovieClip;
}
}//package
Section 99
//screen_game (screen_game)
package {
import flash.display.*;
public dynamic class screen_game extends MovieClip {
public var mc_channel:MovieClip;
public var mc_bride:MovieClip;
public var mc_client:MovieClip;
public var mc_logo:MovieClip;
public var mc_bells:MovieClip;
}
}//package
Section 100
//screen_gameover (screen_gameover)
package {
import flash.display.*;
public dynamic class screen_gameover extends MovieClip {
public var btn_submitscore:MovieClip;
public var btn_leaderboard:MovieClip;
public var btn_play:MovieClip;
public var mc_channel:MovieClip;
public var mc_bride:MovieClip;
public var mc_title:MovieClip;
public var mc_client:MovieClip;
public var mc_logo:MovieClip;
public var btn_sendfriend:MovieClip;
public var mc_bells:MovieClip;
}
}//package
Section 101
//screen_instructions (screen_instructions)
package {
import flash.display.*;
public dynamic class screen_instructions extends MovieClip {
public var mc_channel:MovieClip;
public var mc_bride:MovieClip;
public var mc_title:MovieClip;
public var mc_client:MovieClip;
public var mc_logo:MovieClip;
public var mc_content:MovieClip;
public var btn_back:MovieClip;
}
}//package
Section 102
//screen_leaderboard (screen_leaderboard)
package {
import flash.display.*;
public dynamic class screen_leaderboard extends MovieClip {
public var mc_channel:MovieClip;
public var mc_title:MovieClip;
public var mc_client:MovieClip;
public var mc_car:MovieClip;
public var mc_logo:MovieClip;
public var btn_back:MovieClip;
public var mc_board:MovieClip;
}
}//package
Section 103
//screen_preloader (screen_preloader)
package {
import flash.display.*;
import flash.text.*;
public dynamic class screen_preloader extends MovieClip {
public var mc_logo:MovieClip;
public var text_pct:TextField;
}
}//package
Section 104
//screen_sendfriend (screen_sendfriend)
package {
import flash.display.*;
import flash.text.*;
public dynamic class screen_sendfriend extends MovieClip {
public var btn_submit:MovieClip;
public var mc_channel:MovieClip;
public var text_error:TextField;
public var mc_title:MovieClip;
public var mc_client:MovieClip;
public var mc_logo:MovieClip;
public var mc_input:MovieClip;
public var btn_back:MovieClip;
public var mc_bouquet:MovieClip;
}
}//package
Section 105
//screen_submitscore (screen_submitscore)
package {
import flash.display.*;
import flash.text.*;
public dynamic class screen_submitscore extends MovieClip {
public var btn_submit:MovieClip;
public var mc_channel:MovieClip;
public var text_error:TextField;
public var mc_title:MovieClip;
public var mc_client:MovieClip;
public var mc_logo:MovieClip;
public var mc_input:MovieClip;
public var btn_back:MovieClip;
}
}//package
Section 106
//screen_title (screen_title)
package {
import flash.display.*;
public dynamic class screen_title extends MovieClip {
public var btn_leaderboard:MovieClip;
public var btn_play:MovieClip;
public var mc_channel:MovieClip;
public var btn_instructions:MovieClip;
public var mc_client:MovieClip;
public var btn_sendfriend:MovieClip;
}
}//package
Section 107
//scroll_face (scroll_face)
package {
import flash.display.*;
public dynamic class scroll_face extends MovieClip {
}
}//package
Section 108
//scroll_track (scroll_track)
package {
import flash.display.*;
public dynamic class scroll_track extends MovieClip {
}
}//package
Section 109
//scroll_track_2 (scroll_track_2)
package {
import flash.display.*;
public dynamic class scroll_track_2 extends MovieClip {
}
}//package
Section 110
//snake_ladder (snake_ladder)
package {
import flash.display.*;
public dynamic class snake_ladder extends MovieClip {
}
}//package
Section 111
//tick (tick)
package {
import flash.display.*;
public dynamic class tick extends MovieClip {
}
}//package
Section 112
//tile_dots_bl (tile_dots_bl)
package {
import flash.display.*;
public dynamic class tile_dots_bl extends MovieClip {
}
}//package
Section 113
//tile_dots_tr (tile_dots_tr)
package {
import flash.display.*;
public dynamic class tile_dots_tr extends MovieClip {
}
}//package
Section 114
//tile_symbol (tile_symbol)
package {
import flash.display.*;
public dynamic class tile_symbol extends MovieClip {
}
}//package
Section 115
//wheel (wheel)
package {
import flash.media.*;
public dynamic class wheel extends Sound {
}
}//package