Section 1
//MainTimeline (ZooKeeper_fla.MainTimeline)
package ZooKeeper_fla {
import flash.events.*;
import flash.media.*;
import flash.display.*;
import flash.text.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.geom.*;
import flash.printing.*;
import flash.profiler.*;
import flash.sampler.*;
import flash.system.*;
import flash.ui.*;
import flash.utils.*;
import flash.xml.*;
public dynamic class MainTimeline extends MovieClip {
public var _quitButton:PauseButton;
public var ORANGE_CIRCLE:int;
public var playButtonMenu:KikoButton;
public var board2;
public var faderOn:Boolean;
public var KEY_LEFT:int;
public var gameoverText:TextField;
public var gameBoard:GameBoard;
public var faderOff:Boolean;
public var loader:URLLoader;
public var shinyArray:Array;
public var SCREEN_WIDTH:int;
public var timeToShine:int;
public var bricksAreFallingState:Boolean;
public var readyGoTimer:int;
public var appearingArray:Array;
public var secondBrick:MiniIcon;
public var secondBrickYVel:Number;
public var switchSound:SwitchSound;
public var swappingAmount:int;
public var pauseState:Boolean;
public var DOOR_STAR:int;
public var fourthBrick:MiniIcon;
public var gameOverState:Boolean;
public var fadePanel2;
public var STAR:int;
public var debug:TextField;
public var KEY_X:int;
public var secondSelectedBrick:Brick;
public var enoughTime:int;
public var KEY_Z:int;
public var secondX:int;
public var secondY:int;
public var fourthText:TextField;
public var shinyState:Boolean;
public var k:int;
public var sx1:int;
public var sx2:int;
public var nickname:String;
public var SHAPED_FADE:int;
public var gameTimer:GameTimer;
public var selectedType:int;
public var yOffset:int;
public var SCREEN_HEIGHT:int;
public var clickSound:ClickSound;
public var sy1:int;
public var sy2:int;
public var addscore:int;
public var lastLevel:int;
public var score:int;
public var KEY_UP:int;
public var id_game:String;
public var loader2:URLLoader;
public var KEY_DOWN:int;
public var blipSound:Blip2Sound;
public var timerSlowDown:int;
public var levelGoals;
public var pointsText:TextField;
public var oldSecondBrickXVel:Number;
public var KEY_ENTER:int;
public var firstClickState:Boolean;
public var wellDoneText:TextField;
public var firstRandomState:Boolean;
public var gameOverSwitch:int;
public var menuSlowDown:int;
public var GameString:Array;
public var allowedTiles:Array;
public var musicTransform:SoundTransform;
public var fifthBrick:MiniIcon;
public var levelText:TextField;
public var NORMAL_FADE:int;
public var scoreText:TextField;
public var bricksSwappingState:Boolean;
public var selectionSound:SelectionSound;
public var tempoText:TextField;
public var menuSelection:int;
public var waitAfterVanishState:Boolean;
public var WHITE_FADE:int;
public var KEY_SPACE:int;
public var fadePanel;
public var explosionSound:ExplosionSound;
public var heartShape;
public var laserBricks:Array;
public var swap2:Brick;
public var swap1:Brick;
public var _pauseButton:PauseButton;
public var oldSecondBrickYVel:Number;
public var sixthBrick:MiniIcon;
public var board:Array;
public var id:String;
public var firstBrickXVel:Number;
public var musicChannel:SoundChannel;
public var currentParticle:int;
public var levelExplosionState:Boolean;
public var thirdBrick:MiniIcon;
public var sixthText:TextField;
public var chainnum:int;
public var vcheckArray:Array;
public var doNotDoTheSwap:Boolean;
public var oldFirstBrickXVel:Number;
public var thirdText:TextField;
public var loading:MovieClip;
public var tutoText1:TextField;
public var tutoText2:TextField;
public var tutoText3:TextField;
public var tutoText4:TextField;
public var levelCompleteString:LevelCompleteString;
public var scoreResult:TextField;
public var amountToVanish:Array;
public var gameMusic:GameMusic;
public var timerEnd:int;
public var readyGoState:Boolean;
public var menuButtonArray:Array;
public var firstBrick:MiniIcon;
public var particleArray:Array;
public var firstBrickYVel:Number;
public var oldFirstBrickYVel:Number;
public var BLACK_SQUARE:int;
public var fallingBricksAmount:int;
public var fifthText:TextField;
public var punteggioText:TextField;
public var gameEndedState:Boolean;
public var level:int;
public var row0:TextField;
public var row1:TextField;
public var row2:TextField;
public var row3:TextField;
public var row4:TextField;
public var introText4:TextField;
public var introText5:TextField;
public var introText6:TextField;
public var introText1:TextField;
public var introText2:TextField;
public var introText3:TextField;
public var row6:TextField;
public var fallArray:Array;
public var maxParticlesVelocity:int;
public var firstX:int;
public var selectorBrick:SelectorBrick;
public var row5:TextField;
public var row7:TextField;
public var firstSelectedBrick:Brick;
public var maxParticles:int;
public var fallingBricks2:Array;
public var explodingBricks:Array;
public var firstY:int;
public var fallingBricks:Array;
public var levelCompleteState:Boolean;
public var bricksFallingState:Boolean;
public var firstTime:Boolean;
public var secondText:TextField;
public var timerEnd2:int;
public var laserSelector:Cursor;
public var loggedText:TextField;
public var helpButtonMenu:KikoButton;
public var alreadyOut:Boolean;
public var sendScoreTime:int;
public var restorePreviousSituation:Boolean;
public var secondBrickXVel:Number;
public var lvupnum:int;
public var introAmount:int;
public var initSound:InitSound;
public var errorSound:ErrorSound;
public var slowDownIntro:int;
public var yourScoreText:TextField;
public var lang:String;
public var pointsSound:PointsSound;
public var KEY_RIGHT:int;
public var firstText:TextField;
public function MainTimeline(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8, 8, frame9);
}
public function helpMouseClick(_arg1:MouseEvent):void{
clickSound.play();
setUpEscapeSequence(NORMAL_FADE);
stage.removeEventListener(MouseEvent.CLICK, helpMouseClick);
}
public function timeUp(_arg1:int):void{
gameTimer.width = (gameTimer.width + _arg1);
if (gameTimer.width > 180){
gameTimer.width = 180;
};
}
public function setUpBoard():void{
var _local3:int;
var _local4:int;
var _local5:int;
var _local6:int;
var _local7:int;
var _local8:int;
timeToShine = 100;
fallingBricks = new Array();
fallingBricks2 = new Array();
var _local1:int;
var _local2:int;
while (_local2 < 8) {
_local3 = 0;
while (_local3 < 8) {
_local4 = 0;
_local5 = 0;
if (level < 7){
_local6 = Math.ceil((Math.random() * allowedTiles[level]));
} else {
_local6 = Math.ceil((Math.random() * allowedTiles[level]));
};
if (!_local1){
_local7 = Math.ceil((Math.random() * 300));
};
if (_local2 > 1){
if (board[(_local2 - 1)][_local3] == board[(_local2 - 2)][_local3]){
_local4 = board[(_local2 - 1)][_local3];
};
if (board[_local2][(_local3 - 1)] == board[_local2][(_local3 - 2)]){
_local5 = board[_local2][(_local3 - 1)];
};
};
if ((((_local6 == _local4)) || ((_local6 == _local5)))){
_local8 = _local6;
while ((((_local8 == _local4)) || ((_local8 == _local5)))) {
if (level < 7){
_local8 = Math.ceil((Math.random() * allowedTiles[level]));
} else {
_local8 = Math.ceil((Math.random() * allowedTiles[level]));
};
};
_local6 = _local8;
};
board[_local2][_local3] = _local6;
_local3++;
};
_local2++;
};
refreshBoard();
}
public function initLevel():void{
gameTimer.width = 182;
appearingArray = new Array();
var _local1:int;
while (_local1 < 64) {
appearingArray.push((_local1 + 50));
_local1++;
};
amountToVanish = new Array();
var _local2:int;
while (_local2 < levelGoals[level].length) {
amountToVanish.push(levelGoals[level][_local2]);
_local2++;
};
gameBoard.y = -500;
firstBrick.gotoAndStop(2);
secondBrick.gotoAndStop(4);
thirdBrick.gotoAndStop(6);
fourthBrick.gotoAndStop(8);
fifthBrick.gotoAndStop(10);
sixthBrick.gotoAndStop(12);
bricksFallingState = true;
setUpBoard();
while (vanishcheck()) {
setUpBoard();
};
firstSelectedBrick = null;
secondSelectedBrick = null;
slowDownIntro = 0;
introAmount = 0;
var _local3:int;
while (_local3 < gameBoard.numChildren) {
gameBoard.getChildAt(_local3).alpha = 0;
_local3++;
};
gameBoard.y = 20;
firstClickState = false;
pauseState = false;
shinyState = false;
gameOverState = false;
levelCompleteState = false;
levelExplosionState = false;
restorePreviousSituation = false;
bricksAreFallingState = false;
waitAfterVanishState = false;
readyGoState = false;
gameBoard.yVel = 1;
timerSlowDown = 0;
firstX = -1;
firstY = -1;
secondX = -1;
secondY = -1;
firstBrickXVel = 0;
firstBrickYVel = 0;
secondBrickXVel = 0;
secondBrickYVel = 0;
oldFirstBrickXVel = 0;
oldFirstBrickYVel = 0;
oldSecondBrickXVel = 0;
oldSecondBrickYVel = 0;
}
public function enterFrameHelp(_arg1:Event):void{
if (faderOff){
};
if (!faderOff){
if (entranceSequence()){
faderOff = true;
stage.addEventListener(MouseEvent.CLICK, helpMouseClick);
};
} else {
if (faderOn){
if (escapeSequence()){
stage.removeEventListener(Event.ENTER_FRAME, enterFrameHelp);
gotoAndStop(2);
};
};
};
}
function frame3(){
stop();
loggedText.text = GameString[2];
}
function frame5(){
stage.addEventListener(Event.ENTER_FRAME, enterFrameGame);
faderOff = false;
slowDownIntro = 0;
introAmount = 0;
maxParticles = 200;
currentParticle = 0;
maxParticlesVelocity = 15;
particleArray = new Array(maxParticles);
scoreText.text = "0";
tempoText.text = GameString[4];
punteggioText.text = GameString[15];
levelText.text = GameString[3];
_pauseButton.buttonMode = true;
_pauseButton.textInside.text = GameString[5];
_quitButton.buttonMode = true;
_quitButton.textInside.text = GameString[6];
firstBrick.gotoAndStop(2);
secondBrick.gotoAndStop(4);
thirdBrick.gotoAndStop(6);
fourthBrick.gotoAndStop(8);
fifthBrick.gotoAndStop(10);
sixthBrick.gotoAndStop(12);
BLACK_SQUARE = 0;
ORANGE_CIRCLE = 1;
STAR = 2;
DOOR_STAR = 3;
board = new Array();
board[0] = [0, 0, 0, 0, 0, 0, 0, 0];
board[1] = [0, 0, 0, 0, 0, 0, 0, 0];
board[2] = [0, 0, 0, 0, 0, 0, 0, 0];
board[3] = [0, 0, 0, 0, 0, 0, 0, 0];
board[4] = [0, 0, 0, 0, 0, 0, 0, 0];
board[5] = [0, 0, 0, 0, 0, 0, 0, 0];
board[6] = [0, 0, 0, 0, 0, 0, 0, 0];
board[7] = [0, 0, 0, 0, 0, 0, 0, 0];
board2 = new Array();
board2[0] = [0, 0, 0, 0, 0, 0, 0, 0];
board2[1] = [0, 0, 0, 0, 0, 0, 0, 0];
board2[2] = [0, 0, 0, 0, 0, 0, 0, 0];
board2[3] = [0, 0, 0, 0, 0, 0, 0, 0];
board2[4] = [0, 0, 0, 0, 0, 0, 0, 0];
board2[5] = [0, 0, 0, 0, 0, 0, 0, 0];
board2[6] = [0, 0, 0, 0, 0, 0, 0, 0];
board2[7] = [0, 0, 0, 0, 0, 0, 0, 0];
levelGoals = new Array();
levelGoals[0] = [3, 3, 3, 3, 3, 3];
levelGoals[1] = [6, 6, 6, 6, 6, 6];
levelGoals[2] = [9, 9, 9, 9, 9, 9];
levelGoals[3] = [12, 12, 12, 12, 12, 12];
levelGoals[4] = [15, 15, 15, 15, 15, 15];
levelGoals[5] = [18, 18, 18, 18, 18, 18];
levelGoals[6] = [21, 21, 21, 21, 21, 21];
levelGoals[7] = [24, 24, 24, 24, 24, 24];
levelGoals[8] = [27, 27, 27, 27, 27, 27];
levelGoals[9] = [30, 30, 30, 30, 30, 30];
firstText.text = levelGoals[0][0];
secondText.text = levelGoals[0][1];
thirdText.text = levelGoals[0][2];
fourthText.text = levelGoals[0][3];
fifthText.text = levelGoals[0][4];
sixthText.text = levelGoals[0][5];
fallArray = new Array(0, 0, 0, 0, 0, 0, 0, 0);
vcheckArray = new Array(0, 0, 0, 0, 0, 0, 0, 0);
allowedTiles = new Array(6, 6, 6, 6, 6, 6, 6, 6, 6, 6);
sx1 = 0;
sy1 = 0;
sx2 = 0;
sy2 = 0;
addscore = 0;
score = 0;
level = 0;
chainnum = 1;
lvupnum = (level + 2);
lastLevel = 9;
swappingAmount = 0;
setUpEntranceSequence(NORMAL_FADE);
bricksFallingState = true;
gameEndedState = false;
}
public function addScore():void{
var _local4:int;
var _local5:int;
var _local6:int;
var _local7:int;
var _local1:int;
var _local2:int;
while (_local2 < 8) {
_local4 = 0;
while (_local4 < 6) {
if (board2[_local2][_local4] != 0){
_local5 = 1;
while (board2[_local2][(_local4 + _local5)] == board2[_local2][_local4]) {
_local5++;
if ((_local4 + _local5) > 7){
break;
};
};
--_local5;
if (_local5 >= 2){
_local1 = (_local1 + (_local5 + 1));
addscore = ((((level + 1) * 10) * Math.pow(2, (_local5 - 2))) * Math.pow(2, (chainnum - 1)));
if (addscore > 9999){
addscore = 9999;
};
score = (score + addscore);
timeUp((_local1 * chainnum));
_local4 = (_local4 + _local5);
};
};
_local4++;
};
_local2++;
};
var _local3:int;
while (_local3 < 8) {
_local6 = 0;
while (_local6 < 6) {
if (board2[_local6][_local3] != 0){
_local7 = 1;
while (board2[(_local6 + _local7)][_local3] == board2[_local6][_local3]) {
_local7++;
if ((_local6 + _local7) > 7){
break;
};
};
--_local7;
if (_local7 >= 2){
_local1 = (_local1 + (_local7 + 1));
addscore = ((((level + 1) * 10) * Math.pow(2, (_local7 - 2))) * Math.pow(2, (chainnum - 1)));
if (addscore > 9999){
addscore = 9999;
};
score = (score + addscore);
timeUp((_local1 * chainnum));
_local6 = (_local6 + _local7);
};
};
_local6++;
};
_local3++;
};
}
public function gameRoutine():void{
var _local1:Boolean;
var _local2:int;
var _local3:Boolean;
var _local4:int;
var _local5:int;
var _local6:Boolean;
var _local7:int;
var _local8:int;
var _local9:Boolean;
var _local10:int;
var _local11:Boolean;
var _local12:int;
var _local13:int;
var _local14:int;
var _local15:Reflection;
var _local16:int;
var _local17:Boolean;
var _local18:int;
var _local19:int;
var _local20:int;
if (gameEndedState){
} else {
if (!pauseState){
if (gameOverState == true){
_local1 = true;
_local2 = 0;
while (_local2 < explodingBricks.length) {
setChildIndex(explodingBricks[_local2], (numChildren - 1));
explodingBricks[_local2].x = (explodingBricks[_local2].x + explodingBricks[_local2].xVel);
explodingBricks[_local2].y = (explodingBricks[_local2].y + explodingBricks[_local2].yVel);
explodingBricks[_local2].yVel = (explodingBricks[_local2].yVel + 1);
explodingBricks[_local2].xVel = (explodingBricks[_local2].xVel * 0.88);
explodingBricks[_local2].yVel = (explodingBricks[_local2].yVel * 0.99);
explodingBricks[_local2].alpha = 0.8;
if (explodingBricks[_local2].firstTime){
createParticles(STAR, explodingBricks[_local2].x, explodingBricks[_local2].y, explodingBricks[_local2].width, explodingBricks[_local2].height);
explodingBricks[_local2].firstTime = false;
};
if ((_local2 & 1)){
explodingBricks[_local2].rotation = (explodingBricks[_local2].rotation + 1);
} else {
explodingBricks[_local2].rotation = (explodingBricks[_local2].rotation - 1);
};
if (explodingBricks[_local2].y < 500){
_local1 = false;
};
_local2++;
};
if ((((_local1 == true)) && ((faderOn == false)))){
setUpEscapeSequence(NORMAL_FADE);
};
} else {
if (level > 8){
levelText.text = ((GameString[3] + " ") + (level + 1));
} else {
levelText.text = (((GameString[3] + " ") + "0") + (level + 1));
};
scoreText.text = ("" + score);
_local3 = true;
if (levelCompleteState == false){
_local4 = 0;
while (_local4 < amountToVanish.length) {
switch (_local4){
case 0:
if (amountToVanish[_local4] > 0){
firstText.text = amountToVanish[_local4];
_local3 = false;
} else {
firstText.text = "";
firstBrick.gotoAndStop(1);
};
break;
case 1:
if (amountToVanish[_local4] > 0){
secondText.text = amountToVanish[_local4];
_local3 = false;
} else {
secondText.text = "";
secondBrick.gotoAndStop(3);
};
break;
case 2:
if (amountToVanish[_local4] > 0){
thirdText.text = amountToVanish[_local4];
_local3 = false;
} else {
thirdText.text = "";
thirdBrick.gotoAndStop(5);
};
break;
case 3:
if (amountToVanish[_local4] > 0){
fourthText.text = amountToVanish[_local4];
_local3 = false;
} else {
fourthText.text = "";
fourthBrick.gotoAndStop(7);
};
break;
case 4:
if (amountToVanish[_local4] > 0){
fifthText.text = amountToVanish[_local4];
_local3 = false;
} else {
fifthText.text = "";
fifthBrick.gotoAndStop(9);
};
break;
case 5:
if (amountToVanish[_local4] > 0){
sixthText.text = amountToVanish[_local4];
_local3 = false;
} else {
sixthText.text = "";
sixthBrick.gotoAndStop(11);
};
break;
};
_local4++;
};
};
if (((((_local3) && (firstClickState))) && ((levelCompleteState == false)))){
_local3 = false;
levelCompleteState = true;
explodingBricks = new Array();
appearingArray = new Array();
_local5 = 0;
while (_local5 < 64) {
appearingArray.push((_local5 + 50));
_local5++;
};
introAmount = 0;
levelCompleteString.x = 305;
levelCompleteString.y = 192;
levelCompleteString.alpha = 0;
levelCompleteString.gameText.text = GameString[7];
setChildIndex(levelCompleteString, (numChildren - 1));
};
if (levelCompleteState){
if (musicTransform.volume > 0){
musicTransform.volume = (musicTransform.volume - 0.01);
musicChannel.soundTransform = musicTransform;
} else {
musicTransform.volume = 0;
musicChannel.soundTransform = musicTransform;
};
if (levelCompleteString.alpha < 1){
levelCompleteString.alpha = (levelCompleteString.alpha + 0.1);
};
_local6 = true;
_local7 = 0;
while (_local7 < appearingArray.length) {
var _local21 = appearingArray;
var _local22 = _local7;
var _local23 = (_local21[_local22] - 1);
_local21[_local22] = _local23;
if (appearingArray[_local7] > 0){
} else {
if (appearingArray[_local7] == 0){
if (introAmount < 63){
laserSelector.x = (gameBoard.x + ((_local7 % 8) * 55));
laserSelector.y = (gameBoard.y + (int((_local7 / 8)) * 55));
introAmount++;
} else {
laserSelector.x = 800;
laserSelector.y = 800;
};
if (introAmount == 1){
initSound.play();
};
} else {
if (gameBoard[((("k" + int((_local7 / 8))) + "") + (_local7 % 8))].alpha >= 0){
gameBoard[((("k" + int((_local7 / 8))) + "") + (_local7 % 8))].alpha = (gameBoard[((("k" + int((_local7 / 8))) + "") + (_local7 % 8))].alpha - 0.1);
};
};
};
_local7++;
};
_local8 = 0;
while (_local8 < appearingArray.length) {
if (gameBoard[((("k" + int((_local8 / 8))) + "") + (_local8 % 8))].alpha > 0){
_local6 = false;
};
_local8++;
};
if (_local6 == true){
levelCompleteState = false;
level++;
levelCompleteString.x = 800;
levelCompleteString.y = 800;
levelCompleteString.alpha = 0;
if (level > lastLevel){
gameEndedState = true;
setUpEscapeSequence(SHAPED_FADE);
} else {
initLevel();
};
};
} else {
if (bricksFallingState){
if (introAmount < 63){
laserSelector.x = gameBoard.x;
laserSelector.y = gameBoard.y;
};
_local9 = true;
_local10 = 0;
while (_local10 < appearingArray.length) {
_local21 = appearingArray;
_local22 = _local10;
_local23 = (_local21[_local22] - 1);
_local21[_local22] = _local23;
if (appearingArray[_local10] > 0){
} else {
if (appearingArray[_local10] == 0){
if (introAmount < 63){
laserSelector.x = (gameBoard.x + ((_local10 % 8) * 55));
laserSelector.y = (gameBoard.y + (int((_local10 / 8)) * 55));
introAmount++;
if (introAmount == 1){
initSound.play();
};
} else {
laserSelector.x = 800;
laserSelector.y = 800;
};
} else {
if (gameBoard[((("k" + int((_local10 / 8))) + "") + (_local10 % 8))].alpha < 1){
gameBoard[((("k" + int((_local10 / 8))) + "") + (_local10 % 8))].alpha = (gameBoard[((("k" + int((_local10 / 8))) + "") + (_local10 % 8))].alpha + 0.1);
};
};
};
_local10++;
};
if (slowDownIntro++ == 4){
laserSelector.visible = !(laserSelector.visible);
slowDownIntro = 0;
if ((((laserSelector.x == gameBoard.x)) && ((laserSelector.y == gameBoard.y)))){
blipSound.play();
};
};
_local7 = 0;
while (_local7 < appearingArray.length) {
if (gameBoard[((("k" + int((_local7 / 8))) + "") + (_local7 % 8))].alpha < 1){
_local9 = false;
};
_local7++;
};
if (_local9 == true){
bricksFallingState = false;
readyGoState = true;
readyGoTimer = 0;
laserSelector.x = 800;
laserSelector.y = 800;
levelCompleteString.x = 305;
levelCompleteString.y = 192;
levelCompleteString.alpha = 0;
levelCompleteString.gameText.text = GameString[8];
};
} else {
if (readyGoState){
if (levelCompleteString.alpha < 1){
levelCompleteString.alpha = (levelCompleteString.alpha + 0.1);
} else {
readyGoTimer++;
if (readyGoTimer < 40){
levelCompleteString.gameText.text = GameString[8];
} else {
if ((((readyGoTimer >= 40)) && ((readyGoTimer < 60)))){
if (musicTransform.volume == 0){
musicTransform.volume = 0.2;
musicChannel = gameMusic.play(0, 10000);
musicChannel.soundTransform = musicTransform;
};
levelCompleteString.gameText.text = GameString[9];
} else {
readyGoState = false;
firstClickState = true;
levelCompleteString.x = 800;
levelCompleteString.y = 800;
};
};
};
} else {
if (firstClickState){
makeTimerFlow();
if (firstSelectedBrick == null){
if (timeToShine-- == 0){
firstClickState = false;
shinyState = true;
shinyArray = new Array();
_local11 = false;
_local12 = ((Math.random() * allowedTiles[level]) + 1);
_local13 = 0;
while (_local13 < board.length) {
_local14 = 0;
while (_local14 < board[_local13].length) {
if (board[_local13][_local14] == _local12){
_local11 = true;
_local15 = new Reflection();
addChild(_local15);
_local15.x = (gameBoard.x + gameBoard[((("k" + _local13) + "") + _local14)].x);
_local15.y = (gameBoard.y + gameBoard[((("k" + _local13) + "") + _local14)].y);
shinyArray.push(_local15);
};
_local14++;
};
_local13++;
};
if (!_local11){
timeToShine = ((Math.random() * 100) + 100);
shinyState = false;
firstClickState = true;
};
};
};
} else {
if (shinyState){
makeTimerFlow();
if (shinyArray[0].currentFrame == 18){
_local4 = 0;
while (_local4 < shinyArray.length) {
removeChild(shinyArray[_local4]);
shinyArray[_local4] = null;
_local4++;
};
shinyState = false;
firstClickState = true;
timeToShine = ((Math.random() * 100) + 100);
};
} else {
if (bricksSwappingState){
if (performShift()){
bricksSwappingState = false;
if (!doNotDoTheSwap){
debug.text = ("SWAPPING 1)" + swappingAmount++);
_local16 = board[firstX][firstY];
board[firstX][firstY] = board[secondX][secondY];
board[secondX][secondY] = _local16;
};
if (!vanishcheck()){
errorSound.play();
restorePreviousSituation = true;
setChildIndex(swap2, (numChildren - 1));
firstBrickXVel = oldFirstBrickXVel;
firstBrickYVel = oldFirstBrickYVel;
secondBrickXVel = oldSecondBrickXVel;
secondBrickYVel = oldSecondBrickYVel;
} else {
pointsSound.play();
gameBoard[((("k" + firstX) + "") + firstY)].visible = true;
gameBoard[((("k" + secondX) + "") + secondY)].visible = true;
swap1.x = (swap1.y = 800);
swap2.x = (swap2.y = 600);
refreshBoard();
vanishBricks();
waitAfterVanishState = true;
enoughTime = 0;
addScore();
};
};
} else {
if (waitAfterVanishState){
_local17 = true;
if (_local17){
setFallingBricks();
addNewFallingBricks();
refreshBoard();
waitAfterVanishState = false;
bricksAreFallingState = true;
fallingBricksAmount = 10;
firstSelectedBrick = null;
};
} else {
if (restorePreviousSituation){
if (performShift()){
restorePreviousSituation = false;
firstClickState = true;
firstSelectedBrick = null;
debug.text = ("SWAPPING 2)" + swappingAmount++);
_local16 = board[firstX][firstY];
board[firstX][firstY] = board[secondX][secondY];
board[secondX][secondY] = _local16;
gameBoard[((("k" + firstX) + "") + firstY)].visible = true;
gameBoard[((("k" + secondX) + "") + secondY)].visible = true;
swap1.x = (swap1.y = 800);
swap2.x = (swap2.y = 600);
};
} else {
if (bricksAreFallingState){
_local1 = true;
_local2 = 0;
while (_local2 < explodingBricks.length) {
setChildIndex(explodingBricks[_local2], (numChildren - 1));
explodingBricks[_local2].x = (explodingBricks[_local2].x + explodingBricks[_local2].xVel);
explodingBricks[_local2].y = (explodingBricks[_local2].y + explodingBricks[_local2].yVel);
explodingBricks[_local2].yVel = (explodingBricks[_local2].yVel + 3);
explodingBricks[_local2].xVel = (explodingBricks[_local2].xVel * 0.88);
explodingBricks[_local2].yVel = (explodingBricks[_local2].yVel * 0.99);
explodingBricks[_local2].alpha = 0.8;
if (explodingBricks[_local2].firstTime){
createParticles(STAR, explodingBricks[_local2].x, explodingBricks[_local2].y, explodingBricks[_local2].width, explodingBricks[_local2].height);
explodingBricks[_local2].firstTime = false;
};
if ((_local2 & 1)){
explodingBricks[_local2].rotation = (explodingBricks[_local2].rotation + 1);
} else {
explodingBricks[_local2].rotation = (explodingBricks[_local2].rotation - 1);
};
if (explodingBricks[_local2].y < 500){
_local1 = false;
};
_local2++;
};
_local18 = 0;
while (_local18 < fallingBricks.length) {
if (fallingBricks[_local18].fallingAmount > 0){
_local1 = false;
fallingBricks[_local18].y = (fallingBricks[_local18].y + 5);
fallingBricks[_local18].fallingAmount = (fallingBricks[_local18].fallingAmount - 1);
};
_local18++;
};
_local18 = 0;
while (_local18 < fallingBricks2.length) {
if (fallingBricks2[_local18].fallingAmount > 0){
_local1 = false;
fallingBricks2[_local18].y = (fallingBricks2[_local18].y + 5);
fallingBricks2[_local18].fallingAmount = (fallingBricks2[_local18].fallingAmount - 1);
};
_local18++;
};
if (_local1){
_local19 = 0;
while (_local19 < explodingBricks.length) {
removeChild(explodingBricks[_local19]);
explodingBricks[_local19] = null;
_local19++;
};
_local20 = 0;
while (_local20 < fallingBricks.length) {
removeChild(fallingBricks[_local20]);
fallingBricks[_local20] = null;
_local20++;
};
_local20 = 0;
while (_local20 < fallingBricks2.length) {
removeChild(fallingBricks2[_local20]);
fallingBricks2[_local20] = null;
_local20++;
};
getAllTheBoardVisible();
bricksAreFallingState = false;
if (vanishcheck() == 0){
firstClickState = true;
chainnum = 1;
} else {
chainnum++;
bricksSwappingState = true;
doNotDoTheSwap = true;
};
};
};
};
};
};
};
};
};
};
};
};
};
};
}
public function enterFrameMenu(_arg1:Event):void{
var _local2:int;
if (faderOff){
if (menuSlowDown > 0){
if (menuSlowDown++ == 10){
if (menuSelection == 1){
setUpEscapeSequence(SHAPED_FADE);
} else {
setUpEscapeSequence(NORMAL_FADE);
};
};
};
};
if (!faderOff){
if (entranceSequence()){
faderOff = true;
_local2 = 0;
while (_local2 < menuButtonArray.length) {
menuButtonArray[_local2].addEventListener(MouseEvent.CLICK, mouseClickMenuButton);
menuButtonArray[_local2].buttonMode = true;
_local2++;
};
};
} else {
if (faderOn){
if (menuSelection == 1){
if (musicTransform.volume > 0){
musicTransform.volume = (musicTransform.volume - 0.01);
musicChannel.soundTransform = musicTransform;
} else {
musicTransform.volume = 0;
musicChannel.soundTransform = musicTransform;
};
};
if (escapeSequence()){
stage.removeEventListener(Event.ENTER_FRAME, enterFrameMenu);
menuButtonArray = null;
switch (menuSelection){
case 1:
gotoAndStop(9);
break;
case 2:
gotoAndStop(4);
break;
case 3:
gotoAndStop(4);
break;
};
};
};
};
}
public function setFallingBricks():void{
var _local2:int;
var _local3:int;
var _local4:int;
var _local5:FallingBrick;
fallingBricks = new Array();
var _local1:int;
while (_local1 < 8) {
_local2 = 7;
while (_local2 >= 0) {
if (board[_local2][_local1] == 0){
_local3 = 1;
_local4 = (_local2 - 1);
while (_local4 >= 0) {
if (board[_local4][_local1] != 0){
_local5 = new FallingBrick();
addChild(_local5);
_local5.brick.gotoAndStop(board[_local4][_local1]);
_local5.x = (gameBoard.x + (_local1 * 55));
_local5.y = (gameBoard.y + (_local4 * 55));
_local5.fallingAmount = (_local3 * 11);
fallingBricks.push(_local5);
} else {
_local3++;
};
_local4--;
};
_local2 = _local4;
};
_local2--;
};
_local1++;
};
}
public function quitClick(_arg1:MouseEvent){
var _local3:FallingBrick;
if (gameOverState){
return;
};
if (levelCompleteState){
return;
};
if (!firstClickState){
return;
};
if (pauseState){
return;
};
selectorBrick.x = (selectorBrick.y = 800);
gameOverState = true;
explosionSound.play();
gameOverSwitch = 0;
getAllTheBoardInvisible();
explodingBricks = new Array();
var _local2:int;
while (_local2 < 64) {
_local3 = new FallingBrick();
_local3.firstTime = true;
addChild(_local3);
_local3.alpha = 1;
_local3.x = (gameBoard.x + gameBoard[((("k" + int((_local2 / 8))) + "") + (_local2 % 8))].x);
_local3.y = (gameBoard.y + gameBoard[((("k" + int((_local2 / 8))) + "") + (_local2 % 8))].y);
_local3.brick.gotoAndStop(board[int((_local2 / 8))][(_local2 % 8)]);
_local3.xVel = ((Math.random() * 10) - 5);
_local3.yVel = ((Math.random() * -10) - 10);
explodingBricks.push(_local3);
_local2++;
};
}
function frame6(){
stage.addEventListener(Event.ENTER_FRAME, enterFrameGameOver);
faderOff = false;
setUpEntranceSequence(NORMAL_FADE);
pointsText.text = ("" + score);
loader2 = new URLLoader();
loader2.addEventListener(Event.COMPLETE, handleComplete2);
loader2.addEventListener(IOErrorEvent.IO_ERROR, handleError2);
loader2.addEventListener(SecurityErrorEvent.SECURITY_ERROR, handleSecurityError2);
loader2.dataFormat = URLLoaderDataFormat.TEXT;
sendScoreTime = 0;
loader2.load(new URLRequest(((("save-user-score.php?id_game=" + id_game) + "&score=") + score)));
}
public function enterFrameGameOver(_arg1:Event):void{
if (faderOff){
if (sendScoreTime > 0){
if (sendScoreTime++ == 60){
setUpEscapeSequence(NORMAL_FADE);
};
};
};
if (!faderOff){
if (entranceSequence()){
faderOff = true;
};
} else {
if (faderOn){
if (escapeSequence()){
stage.removeEventListener(Event.ENTER_FRAME, enterFrameGameOver);
gotoAndStop(2);
};
};
};
}
function frame8(){
stage.addEventListener(Event.ENTER_FRAME, enterFrameLogo);
SCREEN_WIDTH = 750;
SCREEN_HEIGHT = 480;
alreadyOut = false;
faderOn = false;
faderOff = false;
heartShape = new Heart();
heartShape.scaleX = 0.1;
heartShape.scaleY = heartShape.scaleY;
fadePanel = new FaderPanel();
fadePanel2 = new FaderPanel2();
selectedType = -1;
NORMAL_FADE = 1;
SHAPED_FADE = 2;
WHITE_FADE = 3;
gameMusic = new GameMusic();
setUpEntranceSequence(WHITE_FADE);
timerEnd2 = 0;
firstTime = true;
}
function frame9(){
stage.addEventListener(Event.ENTER_FRAME, enterFrameIntro);
faderOff = false;
setUpEntranceSequence(NORMAL_FADE);
introText1.text = GameString[20];
introText2.text = GameString[21];
introText3.text = GameString[22];
introText4.text = GameString[23];
introText5.text = GameString[24];
introText6.text = GameString[25];
}
function frame2(){
stop();
stage.addEventListener(Event.ENTER_FRAME, enterFrameMenu);
faderOff = false;
blipSound = new Blip2Sound();
errorSound = new ErrorSound();
selectionSound = new SelectionSound();
switchSound = new SwitchSound();
pointsSound = new PointsSound();
explosionSound = new ExplosionSound();
initSound = new InitSound();
clickSound = new ClickSound();
if (musicTransform.volume == 0){
musicTransform.volume = 0.2;
musicChannel = gameMusic.play(0, 10000);
musicChannel.soundTransform = musicTransform;
};
KEY_RIGHT = 39;
KEY_LEFT = 37;
KEY_UP = 38;
KEY_DOWN = 40;
KEY_X = 88;
KEY_Z = 90;
KEY_ENTER = 13;
KEY_SPACE = 32;
if (firstTime){
setUpEntranceSequence(WHITE_FADE);
firstTime = false;
} else {
setUpEntranceSequence(NORMAL_FADE);
};
playButtonMenu.buttonAnim.stop();
playButtonMenu.textInside.text = GameString[0];
helpButtonMenu.buttonAnim.stop();
helpButtonMenu.textInside.text = GameString[1];
menuButtonArray = new Array();
menuButtonArray.push(playButtonMenu);
menuButtonArray.push(helpButtonMenu);
k = 0;
while (k < menuButtonArray.length) {
menuButtonArray[k].addEventListener(MouseEvent.MOUSE_OVER, mouseOverMenuButton);
menuButtonArray[k].addEventListener(MouseEvent.MOUSE_OUT, mouseOutMenuButton);
menuButtonArray[k].buttonMode = true;
k++;
};
menuSlowDown = 0;
menuSelection = -1;
}
public function entranceSequence():Boolean{
if (selectedType == SHAPED_FADE){
heartShape.scaleX = (heartShape.scaleX + 0.1);
heartShape.scaleY = heartShape.scaleX;
if (heartShape.scaleX > 4){
removeChild(heartShape);
return (true);
};
} else {
if (selectedType == WHITE_FADE){
fadePanel2.alpha = (fadePanel2.alpha - 0.025);
if (fadePanel2.alpha <= 0){
removeChild(fadePanel2);
return (true);
};
} else {
fadePanel.alpha = (fadePanel.alpha - 0.05);
if (fadePanel.alpha <= 0){
removeChild(fadePanel);
return (true);
};
};
};
return (false);
}
function frame1(){
stop();
addEventListener(Event.ENTER_FRAME, loadProgress);
loader = new URLLoader();
loader.addEventListener(Event.COMPLETE, handleComplete);
loader.dataFormat = URLLoaderDataFormat.TEXT;
id_game = LoaderInfo(this.root.loaderInfo).parameters.id_game;
id = LoaderInfo(this.root.loaderInfo).parameters.id;
nickname = LoaderInfo(this.root.loaderInfo).parameters.nickname;
lang = LoaderInfo(this.root.loaderInfo).parameters.lang;
GameString = new Array("Play", "Help", "You are not logged!", "Level", "Time", "Pause", "Quit", "Level Complete", "Ready...", "GO!", "Game Over", "Your Score", "Well Done!", "Score sended!", "Can't send the score", "Score", "Swap the pets by clicking on them! The aim is to match three or more pets of the same type.", "To complete the level you have to reach the amount required for each pet.", "Watch the time! You have to complete the level before the time is up!", "Click to exit...", "from: tecna", "subject: virus attack", "Someone hacked the pet shop website: some pets are missing from the database! But with your help I'm sure we will restore the order. ", "Thanks for your help!", "Tecna", "click to continue...");
musicTransform = new SoundTransform();
musicTransform.volume = 0;
}
public function vanishBricks():void{
var _local3:int;
var _local4:FallingBrick;
explodingBricks = new Array();
var _local1:int;
var _local2:int;
while (_local2 < 8) {
_local3 = 0;
while (_local3 < 8) {
if (board2[_local2][_local3] != 0){
_local1++;
gameBoard[((("k" + _local2) + "") + _local3)].alpha = 0;
_local4 = new FallingBrick();
_local4.firstTime = true;
addChild(_local4);
_local4.alpha = 1;
_local4.x = (gameBoard.x + gameBoard[((("k" + _local2) + "") + _local3)].x);
_local4.y = (gameBoard.y + gameBoard[((("k" + _local2) + "") + _local3)].y);
_local4.brick.gotoAndStop(board[_local2][_local3]);
_local4.xVel = ((Math.random() * 10) - 5);
_local4.yVel = ((Math.random() * -10) - 10);
explodingBricks.push(_local4);
board[_local2][_local3] = 0;
};
_local3++;
};
_local2++;
};
}
public function mouseOutMenuButton(_arg1:MouseEvent):void{
_arg1.target.parent.buttonAnim.gotoAndStop(1);
}
public function enterFrameLogo(_arg1:Event):void{
if (faderOff){
if (timerEnd2++ == 80){
setUpEscapeSequence(WHITE_FADE);
};
};
if (!faderOff){
if (entranceSequence()){
faderOff = true;
};
} else {
if (faderOn){
if (escapeSequence()){
stage.removeEventListener(Event.ENTER_FRAME, enterFrameLogo);
gotoAndStop(2);
};
};
};
}
public function refreshBoard():void{
var _local2:int;
var _local1:int;
while (_local1 < board.length) {
_local2 = 0;
while (_local2 < board[_local1].length) {
gameBoard[((("k" + _local1) + "") + _local2)].gotoAndStop(board[_local1][_local2]);
gameBoard[((("k" + _local1) + "") + _local2)].alpha = 1;
gameBoard[((("k" + _local1) + "") + _local2)].addEventListener(MouseEvent.CLICK, clickOnBrick);
gameBoard[((("k" + _local1) + "") + _local2)].buttonMode = true;
_local2++;
};
_local1++;
};
}
function frame7(){
stage.addEventListener(Event.ENTER_FRAME, enterFrameEnding);
faderOff = false;
setUpEntranceSequence(NORMAL_FADE);
wellDoneText.text = GameString[12];
timerEnd = 0;
}
public function addNewFallingBricks():void{
var _local7:int;
var _local8:int;
var _local9:int;
var _local10:FallingBrick;
var _local11:int;
var _local12:int;
var _local1:int;
var _local2:int;
var _local3:int;
fallingBricks2 = new Array();
while (_local2 < 8) {
_local7 = 7;
_local3 = 7;
yOffset = 0;
while (_local7 >= 0) {
if (board[_local7][_local2] == 0){
yOffset++;
_local9 = _local7;
while (_local9 > 0) {
board[_local9][_local2] = board[(_local9 - 1)][_local2];
gameBoard[((("k" + _local9) + "") + _local2)].visible = false;
_local9--;
};
board[0][_local2] = Math.ceil((Math.random() * allowedTiles[level]));
gameBoard[((("k" + 0) + "") + _local2)].visible = false;
_local10 = new FallingBrick();
addChild(_local10);
_local10.brick.gotoAndStop(board[0][_local2]);
_local10.x = (gameBoard.x + (_local2 * 55));
_local10.y = (gameBoard.y - (55 * yOffset));
_local10.fallingAmount = 10;
fallingBricks2.push(_local10);
_local7++;
};
_local7--;
};
_local8 = 7;
_local2++;
};
var _local4:Array = new Array();
_local4 = [0, 0, 0, 0, 0, 0, 0, 0];
var _local5:int;
while (_local5 < 8) {
_local11 = 0;
while (_local11 < fallingBricks2.length) {
if (fallingBricks2[_local11].x == (gameBoard.x + (_local5 * 55))){
var _local13 = _local4;
var _local14 = _local5;
var _local15 = (_local13[_local14] + 1);
_local13[_local14] = _local15;
};
_local11++;
};
_local5++;
};
var _local6:int;
while (_local6 < fallingBricks2.length) {
_local12 = int(((fallingBricks2[_local6].x - gameBoard.x) / 55));
fallingBricks2[_local6].fallingAmount = (_local4[_local12] * 11);
_local6++;
};
}
public function handleComplete2(_arg1:Event):void{
var _local2:URLLoader = URLLoader(_arg1.target);
scoreResult.text = GameString[13];
sendScoreTime = 1;
}
function frame4(){
stage.addEventListener(Event.ENTER_FRAME, enterFrameHelp);
faderOff = false;
setUpEntranceSequence(NORMAL_FADE);
tutoText1.text = GameString[16];
tutoText2.text = GameString[17];
tutoText3.text = GameString[18];
tutoText4.text = GameString[19];
}
public function handleSecurityError2(_arg1:SecurityErrorEvent):void{
scoreResult.text = GameString[14];
sendScoreTime = 1;
}
public function xmlLoaded(_arg1:Event):void{
gotoAndStop(8);
}
public function enterFrameEnding(_arg1:Event):void{
if (faderOff){
if (timerEnd++ == 80){
setUpEscapeSequence(SHAPED_FADE);
};
};
if (!faderOff){
if (entranceSequence()){
faderOff = true;
};
} else {
if (faderOn){
if (escapeSequence()){
stage.removeEventListener(Event.ENTER_FRAME, enterFrameEnding);
gotoAndStop(6);
};
};
};
}
public function enterFrameGame(_arg1:Event):void{
var _local2:int;
if (faderOff){
gameRoutine();
row0.text = ((((((((((((((("" + board[0][0]) + "") + board[0][1]) + "") + board[0][2]) + "") + board[0][3]) + "") + board[0][4]) + "") + board[0][5]) + "") + board[0][6]) + "") + board[0][7]);
row1.text = ((((((((((((((("" + board[1][0]) + "") + board[1][1]) + "") + board[1][2]) + "") + board[1][3]) + "") + board[1][4]) + "") + board[1][5]) + "") + board[1][6]) + "") + board[1][7]);
row2.text = ((((((((((((((("" + board[2][0]) + "") + board[2][1]) + "") + board[2][2]) + "") + board[2][3]) + "") + board[2][4]) + "") + board[2][5]) + "") + board[2][6]) + "") + board[2][7]);
row3.text = ((((((((((((((("" + board[3][0]) + "") + board[3][1]) + "") + board[3][2]) + "") + board[3][3]) + "") + board[3][4]) + "") + board[3][5]) + "") + board[3][6]) + "") + board[3][7]);
row4.text = ((((((((((((((("" + board[4][0]) + "") + board[4][1]) + "") + board[4][2]) + "") + board[4][3]) + "") + board[4][4]) + "") + board[4][5]) + "") + board[4][6]) + "") + board[4][7]);
row5.text = ((((((((((((((("" + board[5][0]) + "") + board[5][1]) + "") + board[5][2]) + "") + board[5][3]) + "") + board[5][4]) + "") + board[5][5]) + "") + board[5][6]) + "") + board[5][7]);
row6.text = ((((((((((((((("" + board[6][0]) + "") + board[6][1]) + "") + board[6][2]) + "") + board[6][3]) + "") + board[6][4]) + "") + board[6][5]) + "") + board[6][6]) + "") + board[6][7]);
row7.text = ((((((((((((((("" + board[7][0]) + "") + board[7][1]) + "") + board[7][2]) + "") + board[7][3]) + "") + board[7][4]) + "") + board[7][5]) + "") + board[7][6]) + "") + board[7][7]);
_local2 = 0;
while (_local2 < maxParticles) {
if (particleArray[_local2] != null){
if (particleArray[_local2].xVel > maxParticlesVelocity){
particleArray[_local2].xVel = maxParticlesVelocity;
} else {
if (particleArray[_local2].xVel < -(maxParticlesVelocity)){
particleArray[_local2].xVel = -(maxParticlesVelocity);
};
};
if (particleArray[_local2].yVel > maxParticlesVelocity){
particleArray[_local2].yVel = maxParticlesVelocity;
} else {
if (particleArray[_local2].yVel < -(maxParticlesVelocity)){
particleArray[_local2].yVel = -(maxParticlesVelocity);
};
};
setChildIndex(particleArray[_local2], (numChildren - 1));
particleArray[_local2].x = (particleArray[_local2].x + particleArray[_local2].xVel);
particleArray[_local2].y = (particleArray[_local2].y + particleArray[_local2].yVel);
particleArray[_local2].yVel = (particleArray[_local2].yVel + 0.2);
particleArray[_local2].xVel = (particleArray[_local2].xVel * 0.9);
particleArray[_local2].yVel = (particleArray[_local2].yVel * 0.9);
particleArray[_local2].scaleX = (particleArray[_local2].scaleX - 0.05);
particleArray[_local2].scaleY = (particleArray[_local2].scaleY - 0.05);
particleArray[_local2].rotation = (particleArray[_local2].rotation + 10);
if (particleArray[_local2].scaleX < 0.1){
removeChild(particleArray[_local2]);
particleArray[_local2] = null;
};
};
_local2++;
};
};
if (!faderOff){
if (entranceSequence()){
faderOff = true;
_pauseButton.addEventListener(MouseEvent.CLICK, pauseClick);
_quitButton.addEventListener(MouseEvent.CLICK, quitClick);
initLevel();
};
} else {
if (faderOn){
if (musicTransform.volume > 0){
musicTransform.volume = (musicTransform.volume - 0.01);
musicChannel.soundTransform = musicTransform;
} else {
musicTransform.volume = 0;
musicChannel.soundTransform = musicTransform;
};
if (escapeSequence()){
stage.removeEventListener(Event.ENTER_FRAME, enterFrameGame);
_pauseButton.removeEventListener(MouseEvent.CLICK, pauseClick);
_quitButton.removeEventListener(MouseEvent.CLICK, quitClick);
if (gameOverState){
gotoAndStop(6);
} else {
gotoAndStop(7);
};
};
};
};
}
public function getAllTheBoardInvisible():void{
var _local2:int;
var _local1:int;
while (_local1 < 8) {
_local2 = 0;
while (_local2 < 8) {
gameBoard[((("k" + _local1) + "") + _local2)].visible = false;
_local2++;
};
_local1++;
};
}
public function createParticles(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int):void{
var _local8:*;
var _local6:int = ((_arg4 * _arg5) / 1000);
if (_local6 < 20){
_local6 = 20;
};
if (_arg1 == DOOR_STAR){
_local6 = 1;
};
var _local7:int;
while (_local7 < _local6) {
if (_arg1 == ORANGE_CIRCLE){
_local8 = new Particle1();
} else {
if (_arg1 == BLACK_SQUARE){
_local8 = new Particle2();
} else {
if ((((_arg1 == STAR)) || ((_arg1 == DOOR_STAR)))){
_local8 = new Particle3();
};
};
};
addChild(_local8);
if (_arg1 == DOOR_STAR){
_local8.scaleX = (Math.random() * 1);
_local8.scaleY = _local8.scaleX;
} else {
_local8.scaleX = ((Math.random() * 1) + 0.5);
_local8.scaleY = _local8.scaleX;
};
_local8.x = ((Math.random() * _arg4) + _arg2);
_local8.y = ((Math.random() * _arg5) + _arg3);
if (_arg1 != DOOR_STAR){
_local8.xVel = (((Math.random() * 4) - 2) * 4);
_local8.yVel = (((Math.random() * 4) - 2) * 4);
} else {
_local8.xVel = 0;
_local8.yVel = 0;
};
if (particleArray[(currentParticle % maxParticles)] != null){
removeChild(particleArray[(currentParticle % maxParticles)]);
particleArray[(currentParticle % maxParticles)] = null;
};
particleArray[(currentParticle % maxParticles)] = _local8;
currentParticle++;
_local7++;
};
}
public function clickOnBrick(_arg1:MouseEvent):void{
var _local2:int;
var _local3:int;
if (levelCompleteState){
return;
};
if (shinyState){
_local2 = 0;
while (_local2 < shinyArray.length) {
removeChild(shinyArray[_local2]);
shinyArray[_local2] = null;
_local2++;
};
shinyState = false;
firstClickState = true;
timeToShine = ((Math.random() * 100) + 100);
};
if (firstClickState == false){
return;
};
if (firstSelectedBrick == null){
firstSelectedBrick = Brick(_arg1.target);
selectorBrick.x = (gameBoard.x + _arg1.target.x);
selectorBrick.y = (gameBoard.y + _arg1.target.y);
selectionSound.play();
} else {
if (firstSelectedBrick == _arg1.target){
firstSelectedBrick = null;
selectorBrick.x = 800;
selectorBrick.y = 600;
} else {
firstX = int(firstSelectedBrick.name.charAt(1));
firstY = int(firstSelectedBrick.name.charAt(2));
secondX = int(_arg1.target.name.charAt(1));
secondY = int(_arg1.target.name.charAt(2));
if ((((firstX == secondX)) && ((firstY == (secondY - 1))))){
switchSound.play();
swap1.x = (gameBoard.x + gameBoard[((("k" + firstX) + "") + firstY)].x);
swap1.y = (gameBoard.y + gameBoard[((("k" + firstX) + "") + firstY)].y);
swap2.x = (gameBoard.x + gameBoard[((("k" + secondX) + "") + secondY)].x);
swap2.y = (gameBoard.y + gameBoard[((("k" + secondX) + "") + secondY)].y);
swap1.gotoAndStop(board[firstX][firstY]);
swap2.gotoAndStop(board[secondX][secondY]);
gameBoard[((("k" + firstX) + "") + firstY)].visible = false;
gameBoard[((("k" + secondX) + "") + secondY)].visible = false;
setChildIndex(swap1, (numChildren - 1));
bricksSwappingState = true;
doNotDoTheSwap = false;
firstClickState = false;
firstBrickXVel = 10;
firstBrickYVel = 0;
secondBrickXVel = -10;
secondBrickYVel = 0;
oldFirstBrickXVel = -10;
oldFirstBrickYVel = 0;
oldSecondBrickXVel = 10;
oldSecondBrickYVel = 0;
selectorBrick.x = 800;
selectorBrick.y = 500;
} else {
if ((((firstY == secondY)) && ((firstX == (secondX - 1))))){
switchSound.play();
swap1.visible = true;
swap2.visible = true;
swap1.x = (gameBoard.x + gameBoard[((("k" + firstX) + "") + firstY)].x);
swap1.y = (gameBoard.y + gameBoard[((("k" + firstX) + "") + firstY)].y);
swap2.x = (gameBoard.x + gameBoard[((("k" + secondX) + "") + secondY)].x);
swap2.y = (gameBoard.y + gameBoard[((("k" + secondX) + "") + secondY)].y);
swap1.gotoAndStop(board[firstX][firstY]);
swap2.gotoAndStop(board[secondX][secondY]);
setChildIndex(swap1, (numChildren - 1));
gameBoard[((("k" + firstX) + "") + firstY)].visible = false;
gameBoard[((("k" + secondX) + "") + secondY)].visible = false;
bricksSwappingState = true;
doNotDoTheSwap = false;
firstClickState = false;
firstBrickXVel = 0;
firstBrickYVel = 10;
secondBrickXVel = 0;
secondBrickYVel = -10;
oldFirstBrickXVel = 0;
oldFirstBrickYVel = -10;
oldSecondBrickXVel = 0;
oldSecondBrickYVel = 10;
selectorBrick.x = 800;
selectorBrick.y = 500;
} else {
if ((((firstX == secondX)) && ((firstY == (secondY + 1))))){
switchSound.play();
swap1.visible = true;
swap2.visible = true;
swap1.x = (gameBoard.x + gameBoard[((("k" + firstX) + "") + firstY)].x);
swap1.y = (gameBoard.y + gameBoard[((("k" + firstX) + "") + firstY)].y);
swap2.x = (gameBoard.x + gameBoard[((("k" + secondX) + "") + secondY)].x);
swap2.y = (gameBoard.y + gameBoard[((("k" + secondX) + "") + secondY)].y);
swap1.gotoAndStop(board[firstX][firstY]);
swap2.gotoAndStop(board[secondX][secondY]);
setChildIndex(swap1, (numChildren - 1));
gameBoard[((("k" + firstX) + "") + firstY)].visible = false;
gameBoard[((("k" + secondX) + "") + secondY)].visible = false;
bricksSwappingState = true;
doNotDoTheSwap = false;
firstClickState = false;
firstBrickXVel = -10;
firstBrickYVel = 0;
secondBrickXVel = 10;
secondBrickYVel = 0;
oldFirstBrickXVel = 10;
oldFirstBrickYVel = 0;
oldSecondBrickXVel = -10;
oldSecondBrickYVel = 0;
selectorBrick.x = 800;
selectorBrick.y = 500;
} else {
if ((((firstY == secondY)) && ((firstX == (secondX + 1))))){
switchSound.play();
swap1.visible = true;
swap2.visible = true;
swap1.x = (gameBoard.x + gameBoard[((("k" + firstX) + "") + firstY)].x);
swap1.y = (gameBoard.y + gameBoard[((("k" + firstX) + "") + firstY)].y);
swap2.x = (gameBoard.x + gameBoard[((("k" + secondX) + "") + secondY)].x);
swap2.y = (gameBoard.y + gameBoard[((("k" + secondX) + "") + secondY)].y);
swap1.gotoAndStop(board[firstX][firstY]);
swap2.gotoAndStop(board[secondX][secondY]);
setChildIndex(swap1, (numChildren - 1));
gameBoard[((("k" + firstX) + "") + firstY)].visible = false;
gameBoard[((("k" + secondX) + "") + secondY)].visible = false;
bricksSwappingState = true;
doNotDoTheSwap = false;
firstClickState = false;
firstBrickXVel = 0;
firstBrickYVel = -10;
secondBrickXVel = 0;
secondBrickYVel = 10;
oldFirstBrickXVel = 0;
oldFirstBrickYVel = 10;
oldSecondBrickXVel = 0;
oldSecondBrickYVel = -10;
selectorBrick.x = 800;
selectorBrick.y = 500;
};
};
};
};
};
};
}
public function loadProgress(_arg1:Event){
loading.star.rotation = (loading.star.rotation - 20);
var _local2:int = this.root.loaderInfo.bytesLoaded;
var _local3:int = this.root.loaderInfo.bytesTotal;
var _local4:int = (_local2 / 0x0400);
var _local5:int = (_local3 / 0x0400);
var _local6:int = ((100 * _local2) / _local3);
if (_local2 >= _local3){
removeEventListener(Event.ENTER_FRAME, loadProgress);
gotoAndStop(8);
};
}
public function setUpEntranceSequence(_arg1:int):void{
faderOff = false;
selectedType = _arg1;
if (_arg1 == SHAPED_FADE){
mask = heartShape;
heartShape.x = (SCREEN_WIDTH / 2);
heartShape.y = (SCREEN_HEIGHT / 2);
heartShape.scaleX = 0.01;
heartShape.scaleY = heartShape.scaleX;
addChild(heartShape);
} else {
if (_arg1 == WHITE_FADE){
mask = null;
fadePanel2.x = 0;
fadePanel2.y = 0;
fadePanel2.alpha = 1;
addChild(fadePanel2);
} else {
mask = null;
fadePanel.x = 0;
fadePanel.y = 0;
fadePanel.alpha = 1;
addChild(fadePanel);
};
};
}
public function setUpEscapeSequence(_arg1:int):void{
faderOn = true;
selectedType = _arg1;
if (_arg1 == SHAPED_FADE){
mask = heartShape;
heartShape.x = (SCREEN_WIDTH / 2);
heartShape.y = (SCREEN_HEIGHT / 2);
heartShape.scaleX = 4;
heartShape.scaleY = heartShape.scaleX;
addChild(heartShape);
} else {
if (_arg1 == WHITE_FADE){
mask = null;
fadePanel2.x = 0;
fadePanel2.y = 0;
fadePanel2.alpha = 0;
addChild(fadePanel2);
} else {
if (_arg1 == NORMAL_FADE){
mask = null;
fadePanel.x = 0;
fadePanel.y = 0;
fadePanel.alpha = 0;
addChild(fadePanel);
};
};
};
}
public function escapeSequence():Boolean{
if (selectedType == SHAPED_FADE){
heartShape.scaleX = (heartShape.scaleX - 0.1);
heartShape.scaleY = heartShape.scaleX;
if (heartShape.scaleX < 0.01){
removeChild(heartShape);
faderOn = false;
return (true);
};
} else {
if (selectedType == WHITE_FADE){
fadePanel2.alpha = (fadePanel2.alpha + 0.025);
if (fadePanel2.alpha >= 1){
removeChild(fadePanel2);
faderOn = false;
return (true);
};
} else {
fadePanel.alpha = (fadePanel.alpha + 0.05);
if (fadePanel.alpha >= 1){
removeChild(fadePanel);
faderOn = false;
return (true);
};
};
};
return (false);
}
public function mouseOverMenuButton(_arg1:MouseEvent):void{
_arg1.target.parent.buttonAnim.gotoAndStop(4);
}
public function vanishcheck():int{
var _local5:*;
var _local6:int;
var _local7:int;
var _local8:int;
var _local9:int;
var _local10:int;
var _local11:int;
var _local1:int;
while (_local1 < 8) {
_local5 = 0;
while (_local5 < 8) {
board2[_local1][_local5] = 0;
_local5++;
};
_local1++;
};
var _local2:int;
var _local3:int;
while (_local3 < 8) {
_local6 = 0;
while (_local6 < 6) {
if (board[_local3][(_local6 + 1)] == board[_local3][_local6]){
_local7 = 2;
while (board[_local3][(_local6 + _local7)] == board[_local3][_local6]) {
_local7++;
};
if (_local7 > 2){
_local2++;
_local8 = _local6;
while (_local8 < (_local6 + _local7)) {
board2[_local3][_local8] = board[_local3][_local6];
if (bricksFallingState == false){
var _local12 = amountToVanish;
var _local13 = (board[_local3][_local6] - 1);
var _local14 = (_local12[_local13] - 1);
_local12[_local13] = _local14;
};
_local8++;
};
_local6 = (_local6 + (_local7 - 1));
};
};
_local6++;
};
_local3++;
};
var _local4:int;
while (_local4 < 8) {
_local9 = 0;
while (_local9 < 6) {
if (board[(_local9 + 1)][_local4] == board[_local9][_local4]){
_local10 = 2;
if ((_local9 + _local10) < 8){
while (board[(_local9 + _local10)][_local4] == board[_local9][_local4]) {
_local10++;
if ((_local9 + _local10) >= 8){
break;
};
};
};
if (_local10 > 2){
_local2++;
_local11 = _local9;
while (_local11 < (_local9 + _local10)) {
board2[_local11][_local4] = board[_local9][_local4];
if (bricksFallingState == false){
_local12 = amountToVanish;
_local13 = (board[_local9][_local4] - 1);
_local14 = (_local12[_local13] - 1);
_local12[_local13] = _local14;
};
_local11++;
};
_local9 = (_local9 + (_local10 - 1));
};
};
_local9++;
};
_local4++;
};
if (_local2 > 0){
return (1);
};
return (0);
}
public function introMouseClick(_arg1:MouseEvent):void{
clickSound.play();
setUpEscapeSequence(NORMAL_FADE);
stage.removeEventListener(MouseEvent.CLICK, introMouseClick);
}
public function handleComplete(_arg1:Event):void{
var _local2:URLLoader = URLLoader(_arg1.target);
if (_local2.data == "1"){
gotoAndStop(2);
} else {
gotoAndStop(3);
};
}
public function handleError2(_arg1:IOErrorEvent):void{
scoreResult.text = GameString[14];
sendScoreTime = 1;
}
public function pauseClick(_arg1:MouseEvent){
if (gameOverState){
return;
};
if (levelCompleteState){
return;
};
if (((firstClickState) || (pauseState))){
clickSound.play();
if (pauseState){
pauseState = false;
getAllTheBoardVisible();
levelCompleteString.x = 800;
levelCompleteString.y = 800;
selectorBrick.visible = true;
} else {
pauseState = true;
getAllTheBoardInvisible();
levelCompleteString.x = 305;
levelCompleteString.y = 192;
levelCompleteString.alpha = 1;
levelCompleteString.gameText.text = GameString[5];
selectorBrick.visible = false;
};
};
}
public function mouseClickMenuButton(_arg1:MouseEvent):void{
clickSound.play();
if (_arg1.target.parent.name == "playButtonMenu"){
menuSelection = 1;
} else {
if (_arg1.target.parent.name == "helpButtonMenu"){
menuSelection = 3;
};
};
var _local2:int;
while (_local2 < menuButtonArray.length) {
menuButtonArray[_local2].removeEventListener(MouseEvent.MOUSE_OVER, mouseOverMenuButton);
menuButtonArray[_local2].removeEventListener(MouseEvent.MOUSE_OUT, mouseOutMenuButton);
menuButtonArray[_local2].removeEventListener(MouseEvent.CLICK, mouseClickMenuButton);
_local2++;
};
menuSlowDown = 1;
_arg1.target.parent.buttonAnim.gotoAndPlay(1);
}
public function makeTimerFlow():void{
var _local1:int;
var _local2:FallingBrick;
if (timerSlowDown++ == (14 - level)){
timerSlowDown = 0;
gameTimer.width--;
if (gameTimer.width < 2){
selectorBrick.x = (selectorBrick.y = 800);
gameOverState = true;
explosionSound.play();
gameOverSwitch = 0;
getAllTheBoardInvisible();
explodingBricks = new Array();
_local1 = 0;
while (_local1 < 64) {
_local2 = new FallingBrick();
_local2.firstTime = true;
addChild(_local2);
_local2.alpha = 1;
_local2.x = (gameBoard.x + gameBoard[((("k" + int((_local1 / 8))) + "") + (_local1 % 8))].x);
_local2.y = (gameBoard.y + gameBoard[((("k" + int((_local1 / 8))) + "") + (_local1 % 8))].y);
_local2.brick.gotoAndStop(board[int((_local1 / 8))][(_local1 % 8)]);
_local2.xVel = ((Math.random() * 10) - 5);
_local2.yVel = ((Math.random() * -10) - 10);
explodingBricks.push(_local2);
_local1++;
};
};
};
}
public function getAllTheBoardVisible():void{
var _local2:int;
var _local1:int;
while (_local1 < 8) {
_local2 = 0;
while (_local2 < 8) {
gameBoard[((("k" + _local1) + "") + _local2)].visible = true;
_local2++;
};
_local1++;
};
}
public function performShift():Boolean{
var _local1:Boolean;
if (firstBrickXVel != 0){
_local1 = false;
if (firstBrickXVel > 0){
swap1.x = (swap1.x + 5);
firstBrickXVel--;
} else {
swap1.x = (swap1.x - 5);
firstBrickXVel++;
};
} else {
if (firstBrickYVel != 0){
_local1 = false;
if (firstBrickYVel > 0){
swap1.y = (swap1.y + 5);
firstBrickYVel--;
} else {
swap1.y = (swap1.y - 5);
firstBrickYVel++;
};
};
};
if (secondBrickXVel != 0){
_local1 = false;
if (secondBrickXVel > 0){
swap2.x = (swap2.x + 5);
secondBrickXVel--;
} else {
swap2.x = (swap2.x - 5);
secondBrickXVel++;
};
} else {
if (secondBrickYVel != 0){
_local1 = false;
if (secondBrickYVel > 0){
swap2.y = (swap2.y + 5);
secondBrickYVel--;
} else {
swap2.y = (swap2.y - 5);
secondBrickYVel++;
};
};
};
return (_local1);
}
public function enterFrameIntro(_arg1:Event):void{
if (faderOff){
};
if (!faderOff){
if (entranceSequence()){
faderOff = true;
stage.addEventListener(MouseEvent.CLICK, introMouseClick);
};
} else {
if (faderOn){
if (escapeSequence()){
stage.removeEventListener(Event.ENTER_FRAME, enterFrameIntro);
gotoAndStop(5);
};
};
};
}
}
}//package ZooKeeper_fla
Section 2
//AlphaBrick (AlphaBrick)
package {
import flash.display.*;
public dynamic class AlphaBrick extends MovieClip {
}
}//package
Section 3
//BlackPanel (BlackPanel)
package {
import flash.display.*;
public dynamic class BlackPanel extends MovieClip {
}
}//package
Section 4
//BlackSquare (BlackSquare)
package {
import flash.display.*;
public dynamic class BlackSquare extends MovieClip {
}
}//package
Section 5
//Blip2Sound (Blip2Sound)
package {
import flash.media.*;
public dynamic class Blip2Sound extends Sound {
}
}//package
Section 6
//Brick (Brick)
package {
import flash.display.*;
public dynamic class Brick extends MovieClip {
}
}//package
Section 7
//ButtonShape (ButtonShape)
package {
import flash.display.*;
public dynamic class ButtonShape extends MovieClip {
}
}//package
Section 8
//ButtonShape_ (ButtonShape_)
package {
import flash.display.*;
public dynamic class ButtonShape_ extends MovieClip {
}
}//package
Section 9
//ClickSound (ClickSound)
package {
import flash.media.*;
public dynamic class ClickSound extends Sound {
}
}//package
Section 10
//Clock (Clock)
package {
import flash.display.*;
public dynamic class Clock extends MovieClip {
}
}//package
Section 11
//Cursor (Cursor)
package {
import flash.display.*;
public dynamic class Cursor extends MovieClip {
}
}//package
Section 12
//ErrorSound (ErrorSound)
package {
import flash.media.*;
public dynamic class ErrorSound extends Sound {
}
}//package
Section 13
//ExplosionSound (ExplosionSound)
package {
import flash.media.*;
public dynamic class ExplosionSound extends Sound {
}
}//package
Section 14
//Fader (Fader)
package {
import flash.display.*;
public dynamic class Fader extends MovieClip {
public var blackSquare:BlackSquare;
public var heart:Heart;
}
}//package
Section 15
//FaderPanel (FaderPanel)
package {
import flash.display.*;
public dynamic class FaderPanel extends MovieClip {
}
}//package
Section 16
//FaderPanel2 (FaderPanel2)
package {
import flash.display.*;
public dynamic class FaderPanel2 extends MovieClip {
}
}//package
Section 17
//FallingBrick (FallingBrick)
package {
import flash.display.*;
public dynamic class FallingBrick extends MovieClip {
public var brick:Brick;
public var yVel:Number;
public var xVel:Number;
public var firstTime:Boolean;
public var fallingAmount:int;
public function FallingBrick(){
addFrameScript(0, frame1);
}
function frame1(){
xVel = 0;
yVel = 0;
}
}
}//package
Section 18
//GameBoard (GameBoard)
package {
import flash.display.*;
public dynamic class GameBoard extends MovieClip {
public var xVel:Number;
public var k30:Brick;
public var k31:Brick;
public var k32:Brick;
public var k33:Brick;
public var k35:Brick;
public var k37:Brick;
public var k34:Brick;
public var k36:Brick;
public var k40:Brick;
public var k41:Brick;
public var k42:Brick;
public var k43:Brick;
public var k44:Brick;
public var k45:Brick;
public var k46:Brick;
public var k47:Brick;
public var k50:Brick;
public var k51:Brick;
public var k52:Brick;
public var k53:Brick;
public var k54:Brick;
public var k55:Brick;
public var k56:Brick;
public var k57:Brick;
public var k60:Brick;
public var k61:Brick;
public var k62:Brick;
public var k63:Brick;
public var k64:Brick;
public var k65:Brick;
public var k66:Brick;
public var k67:Brick;
public var yVel:Number;
public var k70:Brick;
public var k71:Brick;
public var k72:Brick;
public var k73:Brick;
public var k74:Brick;
public var k75:Brick;
public var k76:Brick;
public var k77:Brick;
public var k00:Brick;
public var k01:Brick;
public var k02:Brick;
public var k03:Brick;
public var k04:Brick;
public var k05:Brick;
public var k06:Brick;
public var k07:Brick;
public var k10:Brick;
public var k11:Brick;
public var k12:Brick;
public var k13:Brick;
public var k14:Brick;
public var k15:Brick;
public var k17:Brick;
public var k16:Brick;
public var k20:Brick;
public var k21:Brick;
public var k22:Brick;
public var k23:Brick;
public var k24:Brick;
public var k25:Brick;
public var k26:Brick;
public var k27:Brick;
public function GameBoard(){
addFrameScript(0, frame1);
}
function frame1(){
yVel = 0;
xVel = 0;
}
}
}//package
Section 19
//GameMusic (GameMusic)
package {
import flash.media.*;
public dynamic class GameMusic extends Sound {
}
}//package
Section 20
//GameTemp (GameTemp)
package {
import flash.display.*;
public dynamic class GameTemp extends MovieClip {
}
}//package
Section 21
//GameTimer (GameTimer)
package {
import flash.display.*;
public dynamic class GameTimer extends MovieClip {
}
}//package
Section 22
//Heart (Heart)
package {
import flash.display.*;
public dynamic class Heart extends MovieClip {
}
}//package
Section 23
//HelpButtonMenu (HelpButtonMenu)
package {
import flash.display.*;
public dynamic class HelpButtonMenu extends MovieClip {
}
}//package
Section 24
//HelpMenu (HelpMenu)
package {
import flash.display.*;
public dynamic class HelpMenu extends MovieClip {
}
}//package
Section 25
//InGameBackground (InGameBackground)
package {
import flash.display.*;
public dynamic class InGameBackground extends MovieClip {
}
}//package
Section 26
//InitSound (InitSound)
package {
import flash.media.*;
public dynamic class InitSound extends Sound {
}
}//package
Section 27
//KikoButton (KikoButton)
package {
import flash.display.*;
import flash.text.*;
public dynamic class KikoButton extends MovieClip {
public var textInside:TextField;
public var buttonAnim:KikoButtonShape;
}
}//package
Section 28
//KikoButtonShape (KikoButtonShape)
package {
import flash.display.*;
public dynamic class KikoButtonShape extends MovieClip {
}
}//package
Section 29
//LaserBrick (LaserBrick)
package {
import flash.display.*;
public dynamic class LaserBrick extends MovieClip {
}
}//package
Section 30
//LaserBrickEffect (LaserBrickEffect)
package {
import flash.display.*;
public dynamic class LaserBrickEffect extends MovieClip {
}
}//package
Section 31
//LeftPanel (LeftPanel)
package {
import flash.display.*;
public dynamic class LeftPanel extends MovieClip {
}
}//package
Section 32
//LevelCompleteString (LevelCompleteString)
package {
import flash.display.*;
import flash.text.*;
public dynamic class LevelCompleteString extends MovieClip {
public var gameText:TextField;
}
}//package
Section 33
//LevelIntroPanel (LevelIntroPanel)
package {
import flash.display.*;
public dynamic class LevelIntroPanel extends MovieClip {
}
}//package
Section 34
//LogoScreen (LogoScreen)
package {
import flash.display.*;
public dynamic class LogoScreen extends MovieClip {
}
}//package
Section 35
//MenuBackground (MenuBackground)
package {
import flash.display.*;
public dynamic class MenuBackground extends MovieClip {
}
}//package
Section 36
//MiniIcon (MiniIcon)
package {
import flash.display.*;
public dynamic class MiniIcon extends MovieClip {
}
}//package
Section 37
//Particle1 (Particle1)
package {
import flash.display.*;
public dynamic class Particle1 extends MovieClip {
public var yVel:Number;
public var xVel:Number;
public var yPos:int;
public var xPos:int;
public function Particle1(){
addFrameScript(0, frame1);
}
function frame1(){
}
}
}//package
Section 38
//Particle2 (Particle2)
package {
import flash.display.*;
public dynamic class Particle2 extends MovieClip {
public var yVel:Number;
public var xVel:Number;
public var yPos:int;
public var xPos:int;
public function Particle2(){
addFrameScript(0, frame1);
}
function frame1(){
}
}
}//package
Section 39
//Particle3 (Particle3)
package {
import flash.display.*;
public dynamic class Particle3 extends MovieClip {
}
}//package
Section 40
//PauseButton (PauseButton)
package {
import flash.display.*;
import flash.text.*;
public dynamic class PauseButton extends MovieClip {
public var textInside:TextField;
}
}//package
Section 41
//PlayButtonMenu (PlayButtonMenu)
package {
import flash.display.*;
import flash.text.*;
public dynamic class PlayButtonMenu extends MovieClip {
public var textInside:TextField;
}
}//package
Section 42
//PointsSound (PointsSound)
package {
import flash.media.*;
public dynamic class PointsSound extends Sound {
}
}//package
Section 43
//QuitButton (QuitButton)
package {
import flash.display.*;
public dynamic class QuitButton extends MovieClip {
}
}//package
Section 44
//Reflection (Reflection)
package {
import flash.display.*;
public dynamic class Reflection extends MovieClip {
public var littleBrick:Brick;
public function Reflection(){
addFrameScript(0, frame1, 17, frame18);
}
function frame18(){
stop();
}
function frame1(){
this.mask = littleBrick;
}
}
}//package
Section 45
//ScoreButtonNo (ScoreButtonNo)
package {
import flash.display.*;
import flash.text.*;
public dynamic class ScoreButtonNo extends SimpleButton {
public var textInside:TextField;
}
}//package
Section 46
//ScoreButtonYes (ScoreButtonYes)
package {
import flash.display.*;
import flash.text.*;
public dynamic class ScoreButtonYes extends SimpleButton {
public var textInside:TextField;
}
}//package
Section 47
//ScoresButtonMenu (ScoresButtonMenu)
package {
import flash.display.*;
public dynamic class ScoresButtonMenu extends MovieClip {
}
}//package
Section 48
//SelectionSound (SelectionSound)
package {
import flash.media.*;
public dynamic class SelectionSound extends Sound {
}
}//package
Section 49
//SelectorBrick (SelectorBrick)
package {
import flash.display.*;
public dynamic class SelectorBrick extends MovieClip {
}
}//package
Section 50
//SwitchSound (SwitchSound)
package {
import flash.media.*;
public dynamic class SwitchSound extends Sound {
}
}//package
Section 51
//TutoPanel (TutoPanel)
package {
import flash.display.*;
public dynamic class TutoPanel extends MovieClip {
}
}//package
Section 52
//Tutorial2 (Tutorial2)
package {
import flash.display.*;
public dynamic class Tutorial2 extends MovieClip {
}
}//package
Section 53
//Tutox (Tutox)
package {
import flash.display.*;
public dynamic class Tutox extends MovieClip {
}
}//package