Frame 1
function RemoveBrick(BrikID) {
var _local3 = random(4);
switch (_local3) {
case 0 :
_root.brick1.start();
break;
case 1 :
_root.brick2.start();
break;
case 2 :
_root.brick3.start();
break;
case 3 :
default :
_root.brick4.start();
}
iScore++;
this["Brick" + BrikID]._visible = false;
bricksNumber--;
if (bricksNumber <= 0) {
if (currentLevel < maxLevel) {
_root.victory.start();
currentLevel++;
cleanupBricks();
loadBricks();
}
setInitialPosition();
}
}
function AddBullet(xBullet, yBullet) {
if (isTir == true) {
duplicateMovieClip (Bullet, "Bullet" + iBulletID, iBulletID + 4100);
var _local2;
this["Bullet" + iBulletID]._x = xBullet;
this["Bullet" + iBulletID]._y = yBullet;
iBulletID++;
iBulletNumber++;
}
}
function AddBonus(xBonus, yBonus) {
var _local2 = random(4);
if (_local2 == 2) {
duplicateMovieClip (Bonus, "Bonus" + iBonusID, iBonusID + 2100);
var _local6;
this["Bonus" + iBonusID]._x = xBonus;
this["Bonus" + iBonusID]._y = yBonus;
caurina.transitions.Tweener.addTween(this["Bonus" + iBonusID], {_color:"0xffffff", time:0.3, delay:0, transition:"linear"});
caurina.transitions.Tweener.addTween(this["Bonus" + iBonusID], {_color:null, time:0.3, delay:0.3, transition:"linear"});
iBonusID++;
iBonusNumber++;
iScore = iScore + 5;
}
}
function cleanupBalls() {
var _local2 = 0;
_local2 = 0;
while (_local2 < iBallMax) {
if (this["Ball" + _local2]) {
removeMovieClip(this["Ball" + _local2]);
}
Used_BallPosArray[_local2] = 0;
x_BallPosArray[_local2] = 0;
y_BallPosArray[_local2] = 0;
vx_BallPosArray[_local2] = 0.5;
vy_BallPosArray[_local2] = 0.5;
_local2++;
}
iBallNumber = 0;
}
function initBall() {
cleanupBalls();
iBallNumber = 0;
duplicateMovieClip (_root.Ball, "Ball" + iBallNumber, iBallNumber + 3100);
Used_BallPosArray[iBallNumber] = 1;
x_BallPosArray[iBallNumber] = 314;
y_BallPosArray[iBallNumber] = 430;
vx_BallPosArray[iBallNumber] = 0.5;
vy_BallPosArray[iBallNumber] = -0.5;
iBallNumber++;
}
function removeBall(ballPos) {
if (((Used_BallPosArray[ballPos] == 1) && (iBallNumber > 0)) && (this["Ball" + ballPos])) {
trace("remove a ball.. i: " + ballPos);
Used_BallPosArray[ballPos] = 0;
removeMovieClip(this["Ball" + ballPos]);
iBallNumber--;
trace("Numbers of ball: " + iBallNumber);
trace(((((((((((((((((((("Array: " + Used_BallPosArray[0]) + " ") + Used_BallPosArray[1]) + " ") + Used_BallPosArray[2]) + " ") + Used_BallPosArray[3]) + " ") + Used_BallPosArray[4]) + " ") + Used_BallPosArray[5]) + " ") + Used_BallPosArray[6]) + " ") + Used_BallPosArray[7]) + " ") + Used_BallPosArray[8]) + " ") + Used_BallPosArray[9]) + " ");
} else {
trace((((("cant remove a ball !!!!! " + Used_BallPosArray[ballPos]) + " iBallNumber: ") + iBallNumber) + " visible: ") + this["Ball" + ballPos]);
}
}
function DoMultiball() {
var _local4 = -1;
var _local2;
_local2 = 0;
while (_local2 < iBallMax) {
if (Used_BallPosArray[_local2] == 0) {
trace((("1)adding a ball... Used_BallPosArray: " + Used_BallPosArray[_local2]) + " i: ") + _local2);
break;
}
_local4 = _local2;
_local2++;
}
if (_local2 >= iBallMax) {
trace("too much balls");
return(undefined);
}
if (_local4 == -1) {
var _local3 = 0;
while (_local3 < iBallMax) {
if (Used_BallPosArray[_local3] == 1) {
_local4 = _local3;
break;
}
_local3++;
}
}
if (_local4 == -1) {
trace("no ball error");
return(undefined);
}
trace((("2)adding a ball... Used_BallPosArray: " + Used_BallPosArray[_local2]) + " i: ") + _local2);
Used_BallPosArray[_local2] = 1;
duplicateMovieClip (_root.Ball, "Ball" + _local2, _local2 + 3100);
var _local5;
x_BallPosArray[_local2] = x_BallPosArray[_local4];
y_BallPosArray[_local2] = y_BallPosArray[_local4];
vx_BallPosArray[_local2] = -vx_BallPosArray[_local4];
vy_BallPosArray[_local2] = -vy_BallPosArray[_local4];
iBallNumber++;
trace("Numbers of ball: " + iBallNumber);
trace(((((((((((((((((((("Array: " + Used_BallPosArray[0]) + " ") + Used_BallPosArray[1]) + " ") + Used_BallPosArray[2]) + " ") + Used_BallPosArray[3]) + " ") + Used_BallPosArray[4]) + " ") + Used_BallPosArray[5]) + " ") + Used_BallPosArray[6]) + " ") + Used_BallPosArray[7]) + " ") + Used_BallPosArray[8]) + " ") + Used_BallPosArray[9]) + " ");
}
function DoNormalRacket() {
_root.Racket._width = 64;
}
function DoBigRacket() {
_root.Racket._width = 128;
}
function DoBigBalls() {
var _local2;
_local2 = 0;
while (_local2 < iBallMax) {
if ((Used_BallPosArray[_local2] == 1) && (this["Ball" + _local2])) {
this["Ball" + _local2]._width = this["Ball" + _local2]._width * 2;
this["Ball" + _local2]._height = this["Ball" + _local2]._height * 2;
}
_local2++;
}
}
function DoTir() {
isTir = true;
Tir._visible = true;
}
function DoNoTir() {
isTir = false;
Tir._visible = false;
}
function stageHitTests() {
bHit = false;
Level.text = currentLevel + 1;
Lives.text = iLives;
Score.text = iScore;
var _local5 = 0;
_local5 = 0;
while (_local5 < iBulletID) {
if (this["Bullet" + _local5]) {
if ((this["Bullet" + _local5]._y >= 50) && (this["Bullet" + _local5]._y <= 250)) {
var _local4 = 0;
iY = 0;
while (iY < 20) {
iX = 0;
while (iX < 16) {
_local4 = (iY * 100) + iX;
if (this["Brick" + _local4]._visible == true) {
if (this["Brick" + _local4].hitTest(this["Bullet" + _local5]._x + (this["Bullet" + _local5]._width / 2), this["Bullet" + _local5]._y, true) == true) {
RemoveBrick(_local4);
AddBonus(this["Brick" + _local4]._x, this["Brick" + _local4]._y);
removeMovieClip(this["Bullet" + _local5]);
iBulletNumber--;
}
}
iX++;
}
iY++;
}
}
this["Bullet" + _local5]._y = this["Bullet" + _local5]._y - 8;
if (this["Bullet" + _local5]._y < 50) {
removeMovieClip(this["Bullet" + _local5]);
iBulletNumber--;
}
}
_local5++;
}
var _local6 = 0;
_local6 = 0;
while (_local6 < iBonusID) {
if (this["Bonus" + _local6]) {
this["Bonus" + _local6]._y = this["Bonus" + _local6]._y + 2;
if (this["Bonus" + _local6]._y > 470) {
removeMovieClip(this["Bonus" + _local6]);
iBonusNumber--;
} else if (this["Bonus" + _local6].hitTest(Racket) == true) {
_root.bonus.start();
switch (random(7)) {
case 0 :
DoNormalRacket();
break;
case 1 :
DoMultiball();
break;
case 2 :
DoBigRacket();
break;
case 3 :
iScore = iScore + 200;
break;
case 4 :
DoBigBalls();
break;
case 5 :
DoTir();
break;
case 6 :
DoNoTir();
}
iScore = iScore + 10;
removeMovieClip(this["Bonus" + _local6]);
iBonusNumber--;
}
}
_local6++;
}
iBallNumber = 0;
var _local3 = 0;
_local3 = 0;
while (_local3 < iBallMax) {
if ((Used_BallPosArray[_local3] > 0) && (this["Ball" + _local3])) {
iBallNumber++;
}
_local3++;
}
_local3 = 0;
while (_local3 < iBallMax) {
if ((Used_BallPosArray[_local3] > 0) && (this["Ball" + _local3])) {
this["Ball" + _local3]._x = x_BallPosArray[_local3];
this["Ball" + _local3]._y = y_BallPosArray[_local3];
if ((this["Ball" + _local3]._y >= 50) && (this["Ball" + _local3]._y <= 250)) {
var _local4 = 0;
iY = 0;
while (iY < 20) {
iX = 0;
while (iX < 16) {
_local4 = (iY * 100) + iX;
if (this["Brick" + _local4]._visible == true) {
if (vy_BallPosArray[_local3] < 0) {
if (this["Brick" + _local4].hitTest(this["Ball" + _local3]._x + (this["Ball" + _local3]._width / 2), this["Ball" + _local3]._y, true) == true) {
RemoveBrick(_local4);
vy_BallPosArray[_local3] = vy_BallPosArray[_local3] * -1;
AddBonus(this["Brick" + _local4]._x, this["Brick" + _local4]._y);
}
} else if (this["Brick" + _local4].hitTest(this["Ball" + _local3]._x + (this["Ball" + _local3]._width / 2), this["Ball" + _local3]._y + this["Ball" + _local3]._height, true) == true) {
RemoveBrick(_local4);
vy_BallPosArray[_local3] = vy_BallPosArray[_local3] * -1;
AddBonus(this["Brick" + _local4]._x, this["Brick" + _local4]._y);
}
if (vx_BallPosArray[_local3] < 0) {
if (this["Brick" + _local4].hitTest(this["Ball" + _local3]._x, this["Ball" + _local3]._y + (this["Ball" + _local3]._height / 2), true) == true) {
RemoveBrick(_local4);
vx_BallPosArray[_local3] = vx_BallPosArray[_local3] * -1;
AddBonus(this["Brick" + _local4]._x, this["Brick" + _local4]._y);
}
} else if (this["Brick" + _local4].hitTest(this["Ball" + _local3]._x + this["Ball" + _local3]._width, this["Ball" + _local3]._y + (this["Ball" + _local3]._height / 2), true) == true) {
RemoveBrick(_local4);
vx_BallPosArray[_local3] = vx_BallPosArray[_local3] * -1;
AddBonus(this["Brick" + _local4]._x, this["Brick" + _local4]._y);
}
}
iX++;
}
iY++;
}
}
if ((vx_BallPosArray[_local3] < 0) && (this["Ball" + _local3]._x <= 0)) {
vx_BallPosArray[_local3] = vx_BallPosArray[_local3] * -1;
}
if ((vx_BallPosArray[_local3] > 0) && (this["Ball" + _local3]._x >= (640 - this["Ball" + _local3]._width))) {
vx_BallPosArray[_local3] = vx_BallPosArray[_local3] * -1;
}
if ((vy_BallPosArray[_local3] < 0) && (this["Ball" + _local3]._y <= 50)) {
vy_BallPosArray[_local3] = vy_BallPosArray[_local3] * -1;
}
if (vy_BallPosArray[_local3] > 0) {
var _local9 = this["Ball" + _local3]._x + (this["Ball" + _local3]._width / 2);
if (((_local9 > Racket._x) && (_local9 < (Racket._x + Racket._width))) && (this["Ball" + _local3]._y >= (Racket._y - this["Ball" + _local3]._height))) {
_root.bounce.start();
var _local7 = (2 * (_local9 - (Racket._x + (Racket._width / 2)))) / Racket._width;
if (_local7 < -0.8) {
_local7 = -0.8;
} else if (_local7 > 0.8) {
_local7 = 0.8;
}
var _local8 = _local7;
if (_local8 < 0) {
_local8 = _local8 * -1;
}
vx_BallPosArray[_local3] = _local7;
vy_BallPosArray[_local3] = 1 - _local8;
if (vy_BallPosArray[_local3] > 0) {
vy_BallPosArray[_local3] = vy_BallPosArray[_local3] * -1;
}
}
}
if (this["Ball" + _local3]._y >= 480) {
if (iBallNumber > 1) {
trace("iBallNumber: " + iBallNumber);
removeBall(_local3);
} else {
trace("gameover");
_root.lost.start();
if (iLives > 0) {
iLives--;
setInitialPosition();
} else {
initSplash();
}
}
}
}
_local3++;
}
return(false);
}
function RemoveBrick(BrikID) {
var _local3 = random(4);
switch (_local3) {
case 0 :
_root.brick1.start();
break;
case 1 :
_root.brick2.start();
break;
case 2 :
_root.brick3.start();
break;
case 3 :
default :
_root.brick4.start();
}
iScore++;
this["Brick" + BrikID]._visible = false;
bricksNumber--;
if (bricksNumber <= 0) {
if (currentLevel < maxLevel) {
_root.victory.start();
currentLevel++;
cleanupBricks();
loadBricks();
}
setInitialPosition();
}
}
function AddBullet(xBullet, yBullet) {
if (isTir == true) {
duplicateMovieClip (Bullet, "Bullet" + iBulletID, iBulletID + 4100);
var _local2;
this["Bullet" + iBulletID]._x = xBullet;
this["Bullet" + iBulletID]._y = yBullet;
iBulletID++;
iBulletNumber++;
}
}
function AddBonus(xBonus, yBonus) {
var _local2 = random(4);
if (_local2 == 2) {
duplicateMovieClip (Bonus, "Bonus" + iBonusID, iBonusID + 2100);
var _local6;
this["Bonus" + iBonusID]._x = xBonus;
this["Bonus" + iBonusID]._y = yBonus;
caurina.transitions.Tweener.addTween(this["Bonus" + iBonusID], {_color:"0xffffff", time:0.3, delay:0, transition:"linear"});
caurina.transitions.Tweener.addTween(this["Bonus" + iBonusID], {_color:null, time:0.3, delay:0.3, transition:"linear"});
iBonusID++;
iBonusNumber++;
iScore = iScore + 5;
}
}
function cleanupBalls() {
var _local2 = 0;
_local2 = 0;
while (_local2 < iBallMax) {
if (this["Ball" + _local2]) {
removeMovieClip(this["Ball" + _local2]);
}
Used_BallPosArray[_local2] = 0;
x_BallPosArray[_local2] = 0;
y_BallPosArray[_local2] = 0;
vx_BallPosArray[_local2] = 0.5;
vy_BallPosArray[_local2] = 0.5;
_local2++;
}
iBallNumber = 0;
}
function initBall() {
cleanupBalls();
iBallNumber = 0;
duplicateMovieClip (_root.Ball, "Ball" + iBallNumber, iBallNumber + 3100);
Used_BallPosArray[iBallNumber] = 1;
x_BallPosArray[iBallNumber] = 314;
y_BallPosArray[iBallNumber] = 430;
vx_BallPosArray[iBallNumber] = 0.5;
vy_BallPosArray[iBallNumber] = -0.5;
iBallNumber++;
}
function removeBall(ballPos) {
if (((Used_BallPosArray[ballPos] == 1) && (iBallNumber > 0)) && (this["Ball" + ballPos])) {
trace("remove a ball.. i: " + ballPos);
Used_BallPosArray[ballPos] = 0;
removeMovieClip(this["Ball" + ballPos]);
iBallNumber--;
trace("Numbers of ball: " + iBallNumber);
trace(((((((((((((((((((("Array: " + Used_BallPosArray[0]) + " ") + Used_BallPosArray[1]) + " ") + Used_BallPosArray[2]) + " ") + Used_BallPosArray[3]) + " ") + Used_BallPosArray[4]) + " ") + Used_BallPosArray[5]) + " ") + Used_BallPosArray[6]) + " ") + Used_BallPosArray[7]) + " ") + Used_BallPosArray[8]) + " ") + Used_BallPosArray[9]) + " ");
} else {
trace((((("cant remove a ball !!!!! " + Used_BallPosArray[ballPos]) + " iBallNumber: ") + iBallNumber) + " visible: ") + this["Ball" + ballPos]);
}
}
function DoMultiball() {
var _local4 = -1;
var _local2;
_local2 = 0;
while (_local2 < iBallMax) {
if (Used_BallPosArray[_local2] == 0) {
trace((("1)adding a ball... Used_BallPosArray: " + Used_BallPosArray[_local2]) + " i: ") + _local2);
break;
}
_local4 = _local2;
_local2++;
}
if (_local2 >= iBallMax) {
trace("too much balls");
return(undefined);
}
if (_local4 == -1) {
var _local3 = 0;
while (_local3 < iBallMax) {
if (Used_BallPosArray[_local3] == 1) {
_local4 = _local3;
break;
}
_local3++;
}
}
if (_local4 == -1) {
trace("no ball error");
return(undefined);
}
trace((("2)adding a ball... Used_BallPosArray: " + Used_BallPosArray[_local2]) + " i: ") + _local2);
Used_BallPosArray[_local2] = 1;
duplicateMovieClip (_root.Ball, "Ball" + _local2, _local2 + 3100);
var _local5;
x_BallPosArray[_local2] = x_BallPosArray[_local4];
y_BallPosArray[_local2] = y_BallPosArray[_local4];
vx_BallPosArray[_local2] = -vx_BallPosArray[_local4];
vy_BallPosArray[_local2] = -vy_BallPosArray[_local4];
iBallNumber++;
trace("Numbers of ball: " + iBallNumber);
trace(((((((((((((((((((("Array: " + Used_BallPosArray[0]) + " ") + Used_BallPosArray[1]) + " ") + Used_BallPosArray[2]) + " ") + Used_BallPosArray[3]) + " ") + Used_BallPosArray[4]) + " ") + Used_BallPosArray[5]) + " ") + Used_BallPosArray[6]) + " ") + Used_BallPosArray[7]) + " ") + Used_BallPosArray[8]) + " ") + Used_BallPosArray[9]) + " ");
}
function DoNormalRacket() {
_root.Racket._width = 64;
}
function DoBigRacket() {
_root.Racket._width = 128;
}
function DoBigBalls() {
var _local2;
_local2 = 0;
while (_local2 < iBallMax) {
if ((Used_BallPosArray[_local2] == 1) && (this["Ball" + _local2])) {
this["Ball" + _local2]._width = this["Ball" + _local2]._width * 2;
this["Ball" + _local2]._height = this["Ball" + _local2]._height * 2;
}
_local2++;
}
}
function DoTir() {
isTir = true;
Tir._visible = true;
}
function DoNoTir() {
isTir = false;
Tir._visible = false;
}
function stageHitTests() {
bHit = false;
Level.text = currentLevel + 1;
Lives.text = iLives;
Score.text = iScore;
var _local5 = 0;
_local5 = 0;
while (_local5 < iBulletID) {
if (this["Bullet" + _local5]) {
if ((this["Bullet" + _local5]._y >= 50) && (this["Bullet" + _local5]._y <= 250)) {
var _local4 = 0;
iY = 0;
while (iY < 20) {
iX = 0;
while (iX < 16) {
_local4 = (iY * 100) + iX;
if (this["Brick" + _local4]._visible == true) {
if (this["Brick" + _local4].hitTest(this["Bullet" + _local5]._x + (this["Bullet" + _local5]._width / 2), this["Bullet" + _local5]._y, true) == true) {
RemoveBrick(_local4);
AddBonus(this["Brick" + _local4]._x, this["Brick" + _local4]._y);
removeMovieClip(this["Bullet" + _local5]);
iBulletNumber--;
}
}
iX++;
}
iY++;
}
}
this["Bullet" + _local5]._y = this["Bullet" + _local5]._y - 8;
if (this["Bullet" + _local5]._y < 50) {
removeMovieClip(this["Bullet" + _local5]);
iBulletNumber--;
}
}
_local5++;
}
var _local6 = 0;
_local6 = 0;
while (_local6 < iBonusID) {
if (this["Bonus" + _local6]) {
this["Bonus" + _local6]._y = this["Bonus" + _local6]._y + 2;
if (this["Bonus" + _local6]._y > 470) {
removeMovieClip(this["Bonus" + _local6]);
iBonusNumber--;
} else if (this["Bonus" + _local6].hitTest(Racket) == true) {
_root.bonus.start();
switch (random(7)) {
case 0 :
DoNormalRacket();
break;
case 1 :
DoMultiball();
break;
case 2 :
DoBigRacket();
break;
case 3 :
iScore = iScore + 200;
break;
case 4 :
DoBigBalls();
break;
case 5 :
DoTir();
break;
case 6 :
DoNoTir();
}
iScore = iScore + 10;
removeMovieClip(this["Bonus" + _local6]);
iBonusNumber--;
}
}
_local6++;
}
iBallNumber = 0;
var _local3 = 0;
_local3 = 0;
while (_local3 < iBallMax) {
if ((Used_BallPosArray[_local3] > 0) && (this["Ball" + _local3])) {
iBallNumber++;
}
_local3++;
}
_local3 = 0;
while (_local3 < iBallMax) {
if ((Used_BallPosArray[_local3] > 0) && (this["Ball" + _local3])) {
this["Ball" + _local3]._x = x_BallPosArray[_local3];
this["Ball" + _local3]._y = y_BallPosArray[_local3];
if ((this["Ball" + _local3]._y >= 50) && (this["Ball" + _local3]._y <= 250)) {
var _local4 = 0;
iY = 0;
while (iY < 20) {
iX = 0;
while (iX < 16) {
_local4 = (iY * 100) + iX;
if (this["Brick" + _local4]._visible == true) {
if (vy_BallPosArray[_local3] < 0) {
if (this["Brick" + _local4].hitTest(this["Ball" + _local3]._x + (this["Ball" + _local3]._width / 2), this["Ball" + _local3]._y, true) == true) {
RemoveBrick(_local4);
vy_BallPosArray[_local3] = vy_BallPosArray[_local3] * -1;
AddBonus(this["Brick" + _local4]._x, this["Brick" + _local4]._y);
}
} else if (this["Brick" + _local4].hitTest(this["Ball" + _local3]._x + (this["Ball" + _local3]._width / 2), this["Ball" + _local3]._y + this["Ball" + _local3]._height, true) == true) {
RemoveBrick(_local4);
vy_BallPosArray[_local3] = vy_BallPosArray[_local3] * -1;
AddBonus(this["Brick" + _local4]._x, this["Brick" + _local4]._y);
}
if (vx_BallPosArray[_local3] < 0) {
if (this["Brick" + _local4].hitTest(this["Ball" + _local3]._x, this["Ball" + _local3]._y + (this["Ball" + _local3]._height / 2), true) == true) {
RemoveBrick(_local4);
vx_BallPosArray[_local3] = vx_BallPosArray[_local3] * -1;
AddBonus(this["Brick" + _local4]._x, this["Brick" + _local4]._y);
}
} else if (this["Brick" + _local4].hitTest(this["Ball" + _local3]._x + this["Ball" + _local3]._width, this["Ball" + _local3]._y + (this["Ball" + _local3]._height / 2), true) == true) {
RemoveBrick(_local4);
vx_BallPosArray[_local3] = vx_BallPosArray[_local3] * -1;
AddBonus(this["Brick" + _local4]._x, this["Brick" + _local4]._y);
}
}
iX++;
}
iY++;
}
}
if ((vx_BallPosArray[_local3] < 0) && (this["Ball" + _local3]._x <= 0)) {
vx_BallPosArray[_local3] = vx_BallPosArray[_local3] * -1;
}
if ((vx_BallPosArray[_local3] > 0) && (this["Ball" + _local3]._x >= (640 - this["Ball" + _local3]._width))) {
vx_BallPosArray[_local3] = vx_BallPosArray[_local3] * -1;
}
if ((vy_BallPosArray[_local3] < 0) && (this["Ball" + _local3]._y <= 50)) {
vy_BallPosArray[_local3] = vy_BallPosArray[_local3] * -1;
}
if (vy_BallPosArray[_local3] > 0) {
var _local9 = this["Ball" + _local3]._x + (this["Ball" + _local3]._width / 2);
if (((_local9 > Racket._x) && (_local9 < (Racket._x + Racket._width))) && (this["Ball" + _local3]._y >= (Racket._y - this["Ball" + _local3]._height))) {
_root.bounce.start();
var _local7 = (2 * (_local9 - (Racket._x + (Racket._width / 2)))) / Racket._width;
if (_local7 < -0.8) {
_local7 = -0.8;
} else if (_local7 > 0.8) {
_local7 = 0.8;
}
var _local8 = _local7;
if (_local8 < 0) {
_local8 = _local8 * -1;
}
vx_BallPosArray[_local3] = _local7;
vy_BallPosArray[_local3] = 1 - _local8;
if (vy_BallPosArray[_local3] > 0) {
vy_BallPosArray[_local3] = vy_BallPosArray[_local3] * -1;
}
}
}
if (this["Ball" + _local3]._y >= 480) {
if (iBallNumber > 1) {
trace("iBallNumber: " + iBallNumber);
removeBall(_local3);
} else {
trace("gameover");
_root.lost.start();
if (iLives > 0) {
iLives--;
setInitialPosition();
} else {
initSplash();
}
}
}
}
_local3++;
}
return(false);
}
function loadBricks() {
bricksClipsArray[currentLevel] = new Array();
var _local3 = LevelTab[currentLevel];
iY = 0;
while (iY < 20) {
iX = 0;
while (iX < 16) {
var _local2 = _local3.charCodeAt(iX + (16 * iY)) - 48;
if (_local2 > 0) {
iBrickID = (iY * 100) + iX;
duplicateMovieClip (Brick, "Brick" + iBrickID, iBrickID);
this["Brick" + iBrickID]._x = iX * 40;
this["Brick" + iBrickID]._y = (iY * 10) + 50;
this["Brick" + iBrickID].gotoAndStop(_local2);
bricksClipsArray[currentLevel][iBricksClipsArray] = iBrickID;
iBricksClipsArray++;
}
iX++;
}
y_bricksSize2 = y_bricksSize2 + 50;
iY++;
}
bricksRemaining = iBricksClipsArray;
bricksNumber = iBricksClipsArray;
iBricksClipsArray = 0;
return(true);
}
function LoadAudio() {
_root.music = new Sound();
_root.music.attachSound("music_.mp3");
_root.brick1 = new Sound();
_root.brick1.attachSound("brick1.mp3");
_root.brick2 = new Sound();
_root.brick2.attachSound("brick2.mp3");
_root.brick3 = new Sound();
_root.brick3.attachSound("brick3.mp3");
_root.brick4 = new Sound();
_root.brick4.attachSound("brick4.mp3");
_root.bounce = new Sound();
_root.bounce.attachSound("bounce.mp3");
_root.bonus = new Sound();
_root.bonus.attachSound("bonus.mp3");
_root.lost = new Sound();
_root.lost.attachSound("lost.mp3");
_root.victory = new Sound();
_root.victory.attachSound("victory.mp3");
_root.clic = new Sound();
_root.clic.attachSound("click.mp3");
}
function initSplash() {
splashScreen = true;
GameBackground._visible = false;
Presentation._visible = true;
Presentation._visible = true;
MenuStartGame._visible = true;
MenuGetGame._visible = true;
cleanupSprites();
_root.MenuStartGame._x = -365;
_root.MenuGetGame._x = -365;
caurina.transitions.Tweener.addTween(_root.MenuStartGame, {_x:225, time:2, transition:"easeInOutElastic"});
caurina.transitions.Tweener.addTween(_root.MenuGetGame, {_x:225, time:2, transition:"easeInOutElastic"});
_root.music.stop();
_root.music.setVolume(0);
_root.music.start(0, 1000);
caurina.transitions.Tweener.addTween(_root.music, {_sound_volume:100, time:2, transition:"linear"});
}
function initGame() {
splashScreen = false;
GameBackground._visible = true;
Presentation._visible = false;
Presentation._visible = false;
MenuStartGame._visible = false;
MenuGetGame._visible = false;
isTir = false;
Tir._visible = false;
currentLevel = 0;
maxLevel = 11;
iLives = 4;
iScore = 0;
Brick._visible = false;
Bonus._visible = false;
Mouse.hide();
cleanupSprites();
loadBricks();
}
function cleanupBonus() {
var _local2 = 0;
_local2 = 0;
while (_local2 < iBonusID) {
if (this["Bonus" + _local2]._visible == true) {
removeMovieClip(this["Bonus" + _local2]);
}
_local2++;
}
iBonusID = 0;
iBonusNumber = 0;
}
function cleanupBullet() {
var _local2 = 0;
_local2 = 0;
while (_local2 < iBulletID) {
if (this["Bullet" + _local2]._visible == true) {
removeMovieClip(this["Bullet" + _local2]);
}
_local2++;
}
iBulletID = 0;
iBulletNumber = 0;
}
function cleanupBricks() {
iY = 0;
while (iY < 20) {
iX = 0;
while (iX < 16) {
var _local2 = (iY * 100) + iX;
if (this["Brick" + _local2]._visible == true) {
removeMovieClip(this["Brick" + _local2]);
}
iX++;
}
iY++;
}
}
function cleanupSprites() {
cleanupBullet();
cleanupBonus();
cleanupBricks();
cleanupBalls();
}
function setInitialPosition() {
initialPosition = true;
x_Racket = 240;
x_BallSpeed = 1;
y_BallSpeed = 1;
_root.Racket._x = 287;
_root.Racket._y = 442;
bHit = false;
cleanupBonus();
initBall();
}
function gameLoop() {
if (splashScreen == true) {
} else {
stageHitTests();
if (initialPosition == false) {
var _local2 = 0;
_local2 = 0;
while (_local2 < iBallMax) {
if ((Used_BallPosArray[_local2] > 0) && (this["Ball" + _local2])) {
x_BallPosArray[_local2] = x_BallPosArray[_local2] + (vx_BallPosArray[_local2] * ((x_BallSpeed + currentLevel) + 6));
y_BallPosArray[_local2] = y_BallPosArray[_local2] + (vy_BallPosArray[_local2] * ((y_BallSpeed + currentLevel) + 6));
}
_local2++;
}
}
}
}
var currentLevel;
var maxLevel;
var initialPosition = true;
var bricksRemaining = 0;
var bricksClipsArray = new Array();
var bricksNumber = 0;
var initialPosition = true;
var speed_Racket;
var x_Racket;
var x_BallSpeed;
var y_BallSpeed;
var bHit = false;
var iBonusID = 0;
var iBonusNumber = 0;
var iBulletID = 0;
var iBulletNumber = 0;
var iLives = 4;
var iScore = 0;
var isTir = false;
var iBallNumber = 0;
var iBallMax = 3;
var Used_BallPosArray = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
var x_BallPosArray = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
var y_BallPosArray = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
var vx_BallPosArray = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
var vy_BallPosArray = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
var currentLevel;
var maxLevel;
var initialPosition = true;
var bricksRemaining = 0;
var bricksClipsArray = new Array();
var bricksNumber = 0;
var initialPosition = true;
var speed_Racket;
var x_Racket;
var x_BallSpeed;
var y_BallSpeed;
var bHit = false;
var iBonusID = 0;
var iBonusNumber = 0;
var iBulletID = 0;
var iBulletNumber = 0;
var iLives = 4;
var iScore = 0;
var isTir = false;
var iBallNumber = 0;
var iBallMax = 3;
var Used_BallPosArray = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
var x_BallPosArray = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
var y_BallPosArray = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
var vx_BallPosArray = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
var vy_BallPosArray = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
var Level1 = "000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044444444444444004@444444@44444004444444444444400444444444444440044444444444444004444@4444444@400444444444444440000000000000000000000000000000000000000000000000000A000A000A0000000000000000000000000000000000000000000000000000";
var Level2 = "04040404040404040202020202020202050505050505050505050505050505050505050202050505050502020202050505050204040205050502040404040205050204080804020502040807070804020204080707080402020408070708040205020408080402050502040404040205050502040402050505050502020205050505050202050505050505050505050502020202020202020404040404040404";
var Level3 = "00000000000000000000000000000000000000000000000000000000000000000000000000000000333333333333333333333333333333333333333333333333000000000000000000000000000000000000000000000000555555555555555555555555555555555555555555555555000000000000000000000000000000000000000000000000444444444444444444444444444444444444444444444444";
var Level4 = "00000000000004000000000000000400000000000000040000004444444444000000444444444400000040000000000004444444000000000044444000070000000444000007000000004000007770000000000000070000000000000007000000000000000000000000000000000000000000000000000033305550333055503030505030305050303050503030505030305050303050503330555033305550";
var Level5 = "0000000000000000000000000000000000000000000000000:244444444442:00:244444444442:00:222222222222:00:222222222222:00:244::::::442:00:244::::::442:00:244::::::442:00:244::::::442:00:244::::::442:00:244::::::442:00:222222222222:00:222222222222:00:244444444442:00:244444444442:0000000000000000000000000000000000000000000000000";
var Level6 = "0::0:0:0::00:0:0:000:0:0:::0:0:0:000:0:0:0:0:0:0:000:0:0:0:0:0:0:::0:0:0:0:0:0:000:0:0:0:0:0:0:000:0:0:0:0:0000000:0:::0:0:0:0:0::000:00:0:0:0:000000000000000000000000000000000000000000000000077777777777777777777777777777777555555555555555555555555555555552222222222222222222222222222222244444444444444444444444444444444";
var Level7 = "15224::::::4225115224::::::4225115524:0000:425511A524:0000:@25A113524:0000:4253113A24:0000:42A3113524:0::0:4253113524:0::0:4253113A24:0::0:42A3113524:0::0:425311352@:0::0:4253113A24:0::0:42A3113524:0::0:4253113524:0::0:4253113A24:0::0:42A3113524:0::0:425311A524:0::0:425A115524:0::0:4255115224:0::0:4225115224:0::0:42251";
var Level8 = "005555000055550000A00A0000A00A0000A00A0000A00A0000A00A0000A00A0400A00A0000A00A4@00A00A0004A00A4400A00A0044A40A@440A00A@444A4@A4444A00A4444A44A4404A40A44@4A44A4400A@4A4444A44A4400A@@A@@4@A4@A4400A4@A4440A44A4@00A04A4400A44A4400A00A4000A44A4000A00A0000A04A0000A00A0000A00A0000A00A0000A00A0000A00A0000A00A000055550000555500";
var Level9 = "35224000000422533522400000042253355244000044255335524400004425533352440000442533335244000044253373524400004425377352440000442537735244000044253773524400004425377352440000442537735244000044253773524400004425377352440000442537335244000044253333524400004425333552440000442553355244000044255335224000000422533522400000042253";
var Level10 = "00000000000000000000000000000000000000000000000000000000000000000000000000000000000022222220000000002@@@@@20000000002@>>>@20000000002@>>>@20000000002@@@@@2000000000222222200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000";
var Level11 = ":::::::::::::::::00000000000000::00000000000000::00000000000000::00000000000000::00::::00::::00::00::::00::::00::00::::00::::00::00::::00::::00::00::::00::::00::00::000000::00::00::000000::00::00::000000::00::00::0>>>>0::00::00::0>>>>0::00::00::0>>>>0::00::00::000000::00::00::000000::00::00::AAAAAA::00::00::AAAAAA::00:";
var LevelTab = [Level1, Level2, Level3, Level4, Level5, Level6, Level7, Level8, Level9, Level10, Level11];
var iX = 0;
var iY = 0;
var iBricksClipsArray = 0;
var iBrickID = 0;
var i = 0;
var moduloI;
var splashScreen = true;
_root.MenuStartGame.onPress = function () {
initGame();
setInitialPosition();
splashScreen = false;
};
_root.MenuGetGame.onPress = function () {
getURL ("http://www.jadeware.net");
};
_root.MenuStartGame.onRollOut = function () {
caurina.transitions.Tweener.addTween(_root.MenuStartGame, {_scale:100, time:0.15, transition:"linear"});
caurina.transitions.Tweener.addTween(_root.MenuStartGame.bg_btn, {_color:"0x666666", time:0.2, transition:"linear"});
};
_root.MenuStartGame.onRollOver = function () {
clic.start();
caurina.transitions.Tweener.addTween(_root.MenuStartGame, {_scale:110, time:0.15, transition:"linear"});
caurina.transitions.Tweener.addTween(_root.MenuStartGame.bg_btn, {_color:"0xA84300", time:0.2, transition:"easeInOutQuad"});
};
_root.MenuGetGame.onRollOut = function () {
caurina.transitions.Tweener.addTween(_root.MenuGetGame, {_scale:100, time:0.15, transition:"linear"});
caurina.transitions.Tweener.addTween(_root.MenuGetGame.bg_btn, {_color:"0x666666", time:0.2, transition:"linear"});
};
_root.MenuGetGame.onRollOver = function () {
clic.start();
caurina.transitions.Tweener.addTween(_root.MenuGetGame, {_scale:110, time:0.15, transition:"linear"});
caurina.transitions.Tweener.addTween(_root.MenuGetGame.bg_btn, {_color:"0xA84300", time:0.2, transition:"easeInOutQuad"});
};
_root.onMouseDown = function () {
if (splashScreen == false) {
AddBullet((Racket._x + (Racket._width / 2)) - (Bullet._width / 2), Racket._y - Bullet._height);
}
};
_root.onMouseUp = function () {
if (splashScreen == false) {
if ((_root._xmouse > 544) && (_root._ymouse < 50)) {
initSplash();
}
}
};
_root.onMouseMove = function () {
if (splashScreen == false) {
if ((_root._xmouse > 0) && (_root._xmouse < (640 - Racket._width))) {
Racket._x = _root._xmouse;
Tir._x = (Racket._x + (Racket._width / 2)) - (Tir._width / 2);
x_Racket = Racket._x;
if (initialPosition == true) {
x_BallPosArray[0] = _root._xmouse + 24.5;
}
}
if ((_root._xmouse > 544) && (_root._ymouse < 50)) {
Mouse.show();
} else {
Mouse.hide();
}
} else {
Mouse.show();
}
};
_root.Ball.visible = false;
_root.Bullet.visible = false;
LoadAudio();
initSplash();
_root.onEnterFrame = gameLoop;
Instance of Symbol 31 MovieClip "Ball" in Frame 1
/* no clip actions */
Symbol 58 Button
on (press) {
initialPosition = false;
}
Symbol 98 MovieClip [__Packages.caurina.transitions.Tweener] Frame 0
class caurina.transitions.Tweener
{
static var _specialPropertySplitterList, _specialPropertyModifierList, _transitionList, _currentTime, _tweenList, _specialPropertyList;
function Tweener () {
trace("Tweener is an static class and should not be instantiated.");
}
static function addTween() {
if ((arguments.length < 2) || (arguments[0] == undefined)) {
return(false);
}
var _local11 = new Array();
var _local3;
var _local39;
var _local4;
var _local38;
if (arguments[0] instanceof Array) {
_local3 = 0;
while (_local3 < arguments[0].length) {
_local11.push(arguments[0][_local3]);
_local3++;
}
} else {
_local3 = 0;
while (_local3 < (arguments.length - 1)) {
_local11.push(arguments[_local3]);
_local3++;
}
}
var _local5 = arguments[arguments.length - 1];
if (!_inited) {
init();
}
if ((!_engineExists) || (_root[getControllerName()] == undefined)) {
startEngine();
}
var _local17 = (isNaN(_local5.time) ? 0 : (_local5.time));
var _local15 = (isNaN(_local5.delay) ? 0 : (_local5.delay));
var _local7 = new Object();
var _local21 = {time:true, delay:true, useFrames:true, skipUpdates:true, transition:true, onStart:true, onUpdate:true, onComplete:true, onOverwrite:true, rounded:true, onStartParams:true, onUpdateParams:true, onCompleteParams:true, onOverwriteParams:true, quickAdd:true};
var _local10 = new Object();
for (_local4 in _local5) {
if (!_local21[_local4]) {
if (_specialPropertySplitterList[_local4] != undefined) {
var _local9 = _specialPropertySplitterList[_local4].splitValues(_local5[_local4]);
_local3 = 0;
while (_local3 < _local9.length) {
_local7[_local9[_local3].name] = {valueStart:undefined, valueComplete:_local9[_local3].value};
_local3++;
}
} else if (_specialPropertyModifierList[_local4] != undefined) {
var _local8 = _specialPropertyModifierList[_local4].modifyValues(_local5[_local4]);
_local3 = 0;
while (_local3 < _local8.length) {
_local10[_local8[_local3].name] = {modifierParameters:_local8[_local3].parameters, modifierFunction:_specialPropertyModifierList[_local4].getValue};
_local3++;
}
} else {
_local7[_local4] = {valueStart:undefined, valueComplete:_local5[_local4]};
}
}
}
for (_local4 in _local10) {
if (_local7[_local4] != undefined) {
_local7[_local4].modifierParameters = _local10[_local4].modifierParameters;
_local7[_local4].modifierFunction = _local10[_local4].modifierFunction;
}
}
var _local20;
if (typeof(_local5.transition) == "string") {
var _local22 = _local5.transition.toLowerCase();
_local20 = _transitionList[_local22];
} else {
_local20 = _local5.transition;
}
if (_local20 == undefined) {
_local20 = _transitionList.easeoutexpo;
}
var _local12;
var _local6;
var _local16;
_local3 = 0;
while (_local3 < _local11.length) {
_local12 = new Object();
for (_local4 in _local7) {
_local12[_local4] = new caurina.transitions.PropertyInfoObj(_local7[_local4].valueStart, _local7[_local4].valueComplete, _local7[_local4].modifierFunction, _local7[_local4].modifierParameters);
}
_local6 = new caurina.transitions.TweenListObj(_local11[_local3], _currentTime + ((_local15 * 1000) / _timeScale), _currentTime + (((_local15 * 1000) + (_local17 * 1000)) / _timeScale), _local5.useFrames == true, _local20);
_local6.properties = _local12;
_local6.onStart = _local5.onStart;
_local6.onUpdate = _local5.onUpdate;
_local6.onComplete = _local5.onComplete;
_local6.onOverwrite = _local5.onOverwrite;
_local6.onStartParams = _local5.onStartParams;
_local6.onUpdateParams = _local5.onUpdateParams;
_local6.onCompleteParams = _local5.onCompleteParams;
_local6.onOverwriteParams = _local5.onOverwriteParams;
_local6.rounded = _local5.rounded;
_local6.skipUpdates = _local5.skipUpdates;
if (!_local5.quickAdd) {
removeTweensByTime(_local6.scope, _local6.properties, _local6.timeStart, _local6.timeComplete);
}
_tweenList.push(_local6);
if ((_local17 == 0) && (_local15 == 0)) {
_local16 = _tweenList.length - 1;
updateTweenByIndex(_local16);
removeTweenByIndex(_local16);
}
_local3++;
}
return(true);
}
static function addCaller() {
if ((arguments.length < 2) || (arguments[0] == undefined)) {
return(false);
}
var _local6 = new Array();
var _local5;
var _local12;
if (arguments[0] instanceof Array) {
_local5 = 0;
while (_local5 < arguments[0].length) {
_local6.push(arguments[0][_local5]);
_local5++;
}
} else {
_local5 = 0;
while (_local5 < (arguments.length - 1)) {
_local6.push(arguments[_local5]);
_local5++;
}
}
var _local4 = arguments[arguments.length - 1];
if (!_inited) {
init();
}
if ((!_engineExists) || (_root[getControllerName()] == undefined)) {
startEngine();
}
var _local9 = (isNaN(_local4.time) ? 0 : (_local4.time));
var _local7 = (isNaN(_local4.delay) ? 0 : (_local4.delay));
var _local10;
if (typeof(_local4.transition) == "string") {
var _local11 = _local4.transition.toLowerCase();
_local10 = _transitionList[_local11];
} else {
_local10 = _local4.transition;
}
if (_local10 == undefined) {
_local10 = _transitionList.easeoutexpo;
}
var _local3;
var _local8;
_local5 = 0;
while (_local5 < _local6.length) {
_local3 = new caurina.transitions.TweenListObj(_local6[_local5], _currentTime + ((_local7 * 1000) / _timeScale), _currentTime + (((_local7 * 1000) + (_local9 * 1000)) / _timeScale), _local4.useFrames == true, _local10);
_local3.properties = undefined;
_local3.onStart = _local4.onStart;
_local3.onUpdate = _local4.onUpdate;
_local3.onComplete = _local4.onComplete;
_local3.onOverwrite = _local4.onOverwrite;
_local3.onStartParams = _local4.onStartParams;
_local3.onUpdateParams = _local4.onUpdateParams;
_local3.onCompleteParams = _local4.onCompleteParams;
_local3.onOverwriteParams = _local4.onOverwriteParams;
_local3.isCaller = true;
_local3.count = _local4.count;
_local3.waitFrames = _local4.waitFrames;
_tweenList.push(_local3);
if ((_local9 == 0) && (_local7 == 0)) {
_local8 = _tweenList.length - 1;
updateTweenByIndex(_local8);
removeTweenByIndex(_local8);
}
_local5++;
}
return(true);
}
static function removeTweensByTime(p_scope, p_properties, p_timeStart, p_timeComplete) {
var _local4 = false;
var _local3;
var _local1;
var _local6 = _tweenList.length;
var _local2;
_local1 = 0;
while (_local1 < _local6) {
if (p_scope == _tweenList[_local1].scope) {
if ((p_timeComplete > _tweenList[_local1].timeStart) && (p_timeStart < _tweenList[_local1].timeComplete)) {
_local3 = false;
for (_local2 in _tweenList[_local1].properties) {
if (p_properties[_local2] != undefined) {
if (_tweenList[_local1].onOverwrite != undefined) {
try {
_tweenList[_local1].onOverwrite.apply(_tweenList[_local1].scope, _tweenList[_local1].onOverwriteParams);
} catch(e:Error) {
}
}
_tweenList[_local1].properties[_local2] = undefined;
delete _tweenList[_local1].properties[_local2];
_local3 = true;
_local4 = true;
}
}
if (_local3) {
if (caurina.transitions.AuxFunctions.getObjectLength(_tweenList[_local1].properties) == 0) {
removeTweenByIndex(_local1);
}
}
}
}
_local1++;
}
return(_local4);
}
static function removeTweens(p_scope) {
var _local3 = new Array();
var _local2;
_local2 = 1;
while (_local2 < arguments.length) {
if ((typeof(arguments[_local2]) == "string") && (!caurina.transitions.AuxFunctions.isInArray(arguments[_local2], _local3))) {
_local3.push(arguments[_local2]);
}
_local2++;
}
return(affectTweens(removeTweenByIndex, p_scope, _local3));
}
static function removeAllTweens() {
var _local2 = false;
var _local1;
_local1 = 0;
while (_local1 < _tweenList.length) {
removeTweenByIndex(_local1);
_local2 = true;
_local1++;
}
return(_local2);
}
static function pauseTweens(p_scope) {
var _local3 = new Array();
var _local2;
_local2 = 1;
while (_local2 < arguments.length) {
if ((typeof(arguments[_local2]) == "string") && (!caurina.transitions.AuxFunctions.isInArray(arguments[_local2], _local3))) {
_local3.push(arguments[_local2]);
}
_local2++;
}
return(affectTweens(pauseTweenByIndex, p_scope, _local3));
}
static function pauseAllTweens() {
var _local2 = false;
var _local1;
_local1 = 0;
while (_local1 < _tweenList.length) {
pauseTweenByIndex(_local1);
_local2 = true;
_local1++;
}
return(_local2);
}
static function resumeTweens(p_scope) {
var _local3 = new Array();
var _local2;
_local2 = 1;
while (_local2 < arguments.length) {
if ((typeof(arguments[_local2]) == "string") && (!caurina.transitions.AuxFunctions.isInArray(arguments[_local2], _local3))) {
_local3.push(arguments[_local2]);
}
_local2++;
}
return(affectTweens(resumeTweenByIndex, p_scope, _local3));
}
static function resumeAllTweens() {
var _local2 = false;
var _local1;
_local1 = 0;
while (_local1 < _tweenList.length) {
resumeTweenByIndex(_local1);
_local2 = true;
_local1++;
}
return(_local2);
}
static function affectTweens(p_affectFunction, p_scope, p_properties) {
var _local5 = false;
var _local2;
if (!_tweenList) {
return(false);
}
_local2 = 0;
while (_local2 < _tweenList.length) {
if (_tweenList[_local2].scope == p_scope) {
if (p_properties.length == 0) {
p_affectFunction(_local2);
_local5 = true;
} else {
var _local4 = new Array();
var _local1;
_local1 = 0;
while (_local1 < p_properties.length) {
if (_tweenList[_local2].properties[p_properties[_local1]] != undefined) {
_local4.push(p_properties[_local1]);
}
_local1++;
}
if (_local4.length > 0) {
var _local7 = caurina.transitions.AuxFunctions.getObjectLength(_tweenList[_local2].properties);
if (_local7 == _local4.length) {
p_affectFunction(_local2);
_local5 = true;
} else {
var _local8 = splitTweens(_local2, _local4);
p_affectFunction(_local8);
_local5 = true;
}
}
}
}
_local2++;
}
return(_local5);
}
static function splitTweens(p_tween, p_properties) {
var _local6 = _tweenList[p_tween];
var _local5 = _local6.clone(false);
var _local1;
var _local2;
_local1 = 0;
while (_local1 < p_properties.length) {
_local2 = p_properties[_local1];
if (_local6.properties[_local2] != undefined) {
_local6.properties[_local2] = undefined;
delete _local6.properties[_local2];
}
_local1++;
}
var _local4;
for (_local2 in _local5.properties) {
_local4 = false;
_local1 = 0;
while (_local1 < p_properties.length) {
if (p_properties[_local1] == _local2) {
_local4 = true;
break;
}
_local1++;
}
if (!_local4) {
_local5.properties[_local2] = undefined;
delete _local5.properties[_local2];
}
}
_tweenList.push(_local5);
return(_tweenList.length - 1);
}
static function updateTweens() {
if (_tweenList.length == 0) {
return(false);
}
var _local1;
_local1 = 0;
while (_local1 < _tweenList.length) {
if (!_tweenList[_local1].isPaused) {
if (!updateTweenByIndex(_local1)) {
removeTweenByIndex(_local1);
}
if (_tweenList[_local1] == null) {
removeTweenByIndex(_local1, true);
_local1--;
}
}
_local1++;
}
return(true);
}
static function removeTweenByIndex(p_tween, p_finalRemoval) {
_tweenList[p_tween] = null;
if (p_finalRemoval) {
_tweenList.splice(p_tween, 1);
}
return(true);
}
static function pauseTweenByIndex(p_tween) {
var _local1 = _tweenList[p_tween];
if ((_local1 == null) || (_local1.isPaused)) {
return(false);
}
_local1.timePaused = _currentTime;
_local1.isPaused = true;
return(true);
}
static function resumeTweenByIndex(p_tween) {
var _local1 = _tweenList[p_tween];
if ((_local1 == null) || (!_local1.isPaused)) {
return(false);
}
_local1.timeStart = _local1.timeStart + (_currentTime - _local1.timePaused);
_local1.timeComplete = _local1.timeComplete + (_currentTime - _local1.timePaused);
_local1.timePaused = undefined;
_local1.isPaused = false;
return(true);
}
static function updateTweenByIndex(i) {
var _local1 = _tweenList[i];
if ((_local1 == null) || (!_local1.scope)) {
return(false);
}
var _local11 = false;
var _local12;
var _local2;
var _local6;
var _local8;
var _local7;
var _local5;
var _local4;
var _local10;
var _local3;
if (_currentTime >= _local1.timeStart) {
_local10 = _local1.scope;
if (_local1.isCaller) {
do {
_local6 = ((_local1.timeComplete - _local1.timeStart) / _local1.count) * (_local1.timesCalled + 1);
_local8 = _local1.timeStart;
_local7 = _local1.timeComplete - _local1.timeStart;
_local5 = _local1.timeComplete - _local1.timeStart;
_local2 = _local1.transition(_local6, _local8, _local7, _local5);
if (_currentTime >= _local2) {
if (_local1.onUpdate != undefined) {
try {
_local1.onUpdate.apply(_local10, _local1.onUpdateParams);
} catch(e:Error) {
}
}
_local1.timesCalled++;
if (_local1.timesCalled >= _local1.count) {
_local11 = true;
break;
}
if (_local1.waitFrames) {
break;
}
}
} while (_currentTime >= _local2);
} else {
_local12 = ((_local1.skipUpdates < 1) || (_local1.skipUpdates == undefined)) || (_local1.updatesSkipped >= _local1.skipUpdates);
if (_currentTime >= _local1.timeComplete) {
_local11 = true;
_local12 = true;
}
if (!_local1.hasStarted) {
if (_local1.onStart != undefined) {
try {
_local1.onStart.apply(_local10, _local1.onStartParams);
} catch(e:Error) {
}
}
for (_local4 in _local1.properties) {
var _local9 = getPropertyValue(_local10, _local4);
_local1.properties[_local4].valueStart = (isNaN(_local9) ? (_local1.properties[_local4].valueComplete) : (_local9));
}
_local12 = true;
_local1.hasStarted = true;
}
if (_local12) {
for (_local4 in _local1.properties) {
_local3 = _local1.properties[_local4];
if (_local11) {
_local2 = _local3.valueComplete;
} else if (_local3.hasModifier) {
_local6 = _currentTime - _local1.timeStart;
_local5 = _local1.timeComplete - _local1.timeStart;
_local2 = _local1.transition(_local6, 0, 1, _local5);
_local2 = _local3.modifierFunction(_local3.valueStart, _local3.valueComplete, _local2, _local3.modifierParameters);
} else {
_local6 = _currentTime - _local1.timeStart;
_local8 = _local3.valueStart;
_local7 = _local3.valueComplete - _local3.valueStart;
_local5 = _local1.timeComplete - _local1.timeStart;
_local2 = _local1.transition(_local6, _local8, _local7, _local5);
}
if (_local1.rounded) {
_local2 = Math.round(_local2);
}
setPropertyValue(_local10, _local4, _local2);
}
_local1.updatesSkipped = 0;
if (_local1.onUpdate != undefined) {
try {
_local1.onUpdate.apply(_local10, _local1.onUpdateParams);
} catch(e:Error) {
}
}
} else {
_local1.updatesSkipped++;
}
}
if (_local11 && (_local1.onComplete != undefined)) {
try {
_local1.onComplete.apply(_local10, _local1.onCompleteParams);
} catch(e:Error) {
}
}
return(!_local11);
}
return(true);
}
static function init() {
_inited = true;
_transitionList = new Object();
caurina.transitions.Equations.init();
_specialPropertyList = new Object();
_specialPropertyModifierList = new Object();
_specialPropertySplitterList = new Object();
caurina.transitions.SpecialPropertiesDefault.init();
}
static function registerTransition(p_name, p_function) {
if (!_inited) {
init();
}
_transitionList[p_name] = p_function;
}
static function registerSpecialProperty(p_name, p_getFunction, p_setFunction, p_parameters) {
if (!_inited) {
init();
}
var _local1 = new caurina.transitions.SpecialProperty(p_getFunction, p_setFunction, p_parameters);
_specialPropertyList[p_name] = _local1;
}
static function registerSpecialPropertyModifier(p_name, p_modifyFunction, p_getFunction) {
if (!_inited) {
init();
}
var _local1 = new caurina.transitions.SpecialPropertyModifier(p_modifyFunction, p_getFunction);
_specialPropertyModifierList[p_name] = _local1;
}
static function registerSpecialPropertySplitter(p_name, p_splitFunction) {
if (!_inited) {
init();
}
var _local1 = new caurina.transitions.SpecialPropertySplitter(p_splitFunction);
_specialPropertySplitterList[p_name] = _local1;
}
static function startEngine() {
_engineExists = true;
_tweenList = new Array();
var _local2 = Math.floor(Math.random() * 999999);
var _local3 = _root.createEmptyMovieClip(getControllerName(), 31338 + _local2);
_local3.onEnterFrame = function () {
caurina.transitions.Tweener.onEnterFrame();
};
updateTime();
}
static function stopEngine() {
_engineExists = false;
_tweenList = null;
_currentTime = 0;
delete _root[getControllerName()].onEnterFrame;
_root[getControllerName()].removeMovieClip();
}
static function getPropertyValue(p_obj, p_prop) {
if (_specialPropertyList[p_prop] != undefined) {
return(_specialPropertyList[p_prop].getValue(p_obj, _specialPropertyList[p_prop].parameters));
}
return(p_obj[p_prop]);
}
static function setPropertyValue(p_obj, p_prop, p_value) {
if (_specialPropertyList[p_prop] != undefined) {
_specialPropertyList[p_prop].setValue(p_obj, p_value, _specialPropertyList[p_prop].parameters);
} else {
p_obj[p_prop] = p_value;
}
}
static function updateTime() {
_currentTime = getTimer();
}
static function onEnterFrame() {
updateTime();
var _local1 = false;
_local1 = updateTweens();
if (!_local1) {
stopEngine();
}
}
static function setTimeScale(p_time) {
var _local1;
if (isNaN(p_time)) {
p_time = 1;
}
if (p_time < 1E-5) {
p_time = 1E-5;
}
if (p_time != _timeScale) {
_local1 = 0;
while (_local1 < _tweenList.length) {
_tweenList[_local1].timeStart = _currentTime - (((_currentTime - _tweenList[_local1].timeStart) * _timeScale) / p_time);
_tweenList[_local1].timeComplete = _currentTime - (((_currentTime - _tweenList[_local1].timeComplete) * _timeScale) / p_time);
if (_tweenList[_local1].timePaused != undefined) {
_tweenList[_local1].timePaused = _currentTime - (((_currentTime - _tweenList[_local1].timePaused) * _timeScale) / p_time);
}
_local1++;
}
_timeScale = p_time;
}
}
static function isTweening(p_scope) {
var _local1;
_local1 = 0;
while (_local1 < _tweenList.length) {
if (_tweenList[_local1].scope == p_scope) {
return(true);
}
_local1++;
}
return(false);
}
static function getTweens(p_scope) {
var _local1;
var _local2;
var _local3 = new Array();
_local1 = 0;
while (_local1 < _tweenList.length) {
if (_tweenList[_local1].scope == p_scope) {
for (_local2 in _tweenList[_local1].properties) {
_local3.push(_local2);
}
}
_local1++;
}
return(_local3);
}
static function getTweenCount(p_scope) {
var _local1;
var _local2 = 0;
_local1 = 0;
while (_local1 < _tweenList.length) {
if (_tweenList[_local1].scope == p_scope) {
_local2 = _local2 + caurina.transitions.AuxFunctions.getObjectLength(_tweenList[_local1].properties);
}
_local1++;
}
return(_local2);
}
static function getVersion() {
return("AS2_FL7 1.25.57");
}
static function getControllerName() {
return("__tweener_controller__" + getVersion());
}
static function debug_getList() {
var _local3 = "";
var _local1;
var _local2;
_local1 = 0;
while (_local1 < _tweenList.length) {
_local3 = _local3 + (("[" + _local1) + "] ::\n");
for (_local2 in _tweenList[_local1].properties) {
_local3 = _local3 + ((((" " + _local2) + " -> ") + _tweenList[_local1].properties[_local2].valueComplete) + newline);
}
_local1++;
}
return(_local3);
}
static var _engineExists = false;
static var _inited = false;
static var _timeScale = 1;
}
Symbol 99 MovieClip [__Packages.caurina.transitions.TweenListObj] Frame 0
class caurina.transitions.TweenListObj
{
var scope, timeStart, timeComplete, useFrames, transition, auxProperties, properties, isPaused, timePaused, isCaller, updatesSkipped, timesCalled, skipUpdates, hasStarted, onStart, onUpdate, onComplete, onOverwrite, onStartParams, onUpdateParams, onCompleteParams, onOverwriteParams, rounded, count, waitFrames;
function TweenListObj (p_scope, p_timeStart, p_timeComplete, p_useFrames, p_transition) {
scope = p_scope;
timeStart = p_timeStart;
timeComplete = p_timeComplete;
useFrames = p_useFrames;
transition = p_transition;
auxProperties = new Object();
properties = new Object();
isPaused = false;
timePaused = undefined;
isCaller = false;
updatesSkipped = 0;
timesCalled = 0;
skipUpdates = 0;
hasStarted = false;
}
function clone(omitEvents) {
var _local2 = new caurina.transitions.TweenListObj(scope, timeStart, timeComplete, useFrames, transition);
_local2.properties = new Object();
for (var _local3 in properties) {
_local2.properties[_local3] = properties[_local3].clone();
}
_local2.skipUpdates = skipUpdates;
_local2.updatesSkipped = updatesSkipped;
if (!omitEvents) {
_local2.onStart = onStart;
_local2.onUpdate = onUpdate;
_local2.onComplete = onComplete;
_local2.onOverwrite = onOverwrite;
_local2.onStartParams = onStartParams;
_local2.onUpdateParams = onUpdateParams;
_local2.onCompleteParams = onCompleteParams;
_local2.onOverwriteParams = onOverwriteParams;
}
_local2.rounded = rounded;
_local2.isPaused = isPaused;
_local2.timePaused = timePaused;
_local2.isCaller = isCaller;
_local2.count = count;
_local2.timesCalled = timesCalled;
_local2.waitFrames = waitFrames;
_local2.hasStarted = hasStarted;
return(_local2);
}
function toString() {
var _local2 = "\n[TweenListObj ";
_local2 = _local2 + ("scope:" + String(scope));
_local2 = _local2 + ", properties:";
var _local3 = true;
for (var _local4 in properties) {
if (!_local3) {
_local2 = _local2 + ",";
}
_local2 = _local2 + ("[name:" + properties[_local4].name);
_local2 = _local2 + (",valueStart:" + properties[_local4].valueStart);
_local2 = _local2 + (",valueComplete:" + properties[_local4].valueComplete);
_local2 = _local2 + "]";
_local3 = false;
}
_local2 = _local2 + (", timeStart:" + String(timeStart));
_local2 = _local2 + (", timeComplete:" + String(timeComplete));
_local2 = _local2 + (", useFrames:" + String(useFrames));
_local2 = _local2 + (", transition:" + String(transition));
if (skipUpdates) {
_local2 = _local2 + (", skipUpdates:" + String(skipUpdates));
}
if (updatesSkipped) {
_local2 = _local2 + (", updatesSkipped:" + String(updatesSkipped));
}
if (onStart) {
_local2 = _local2 + (", onStart:" + String(onStart));
}
if (onUpdate) {
_local2 = _local2 + (", onUpdate:" + String(onUpdate));
}
if (onComplete) {
_local2 = _local2 + (", onComplete:" + String(onComplete));
}
if (onOverwrite) {
_local2 = _local2 + (", onOverwrite:" + String(onOverwrite));
}
if (onStartParams) {
_local2 = _local2 + (", onStartParams:" + String(onStartParams));
}
if (onUpdateParams) {
_local2 = _local2 + (", onUpdateParams:" + String(onUpdateParams));
}
if (onCompleteParams) {
_local2 = _local2 + (", onCompleteParams:" + String(onCompleteParams));
}
if (onOverwriteParams) {
_local2 = _local2 + (", onOverwriteParams:" + String(onOverwriteParams));
}
if (rounded) {
_local2 = _local2 + (", rounded:" + String(rounded));
}
if (isPaused) {
_local2 = _local2 + (", isPaused:" + String(isPaused));
}
if (timePaused) {
_local2 = _local2 + (", timePaused:" + String(timePaused));
}
if (isCaller) {
_local2 = _local2 + (", isCaller:" + String(isCaller));
}
if (count) {
_local2 = _local2 + (", count:" + String(count));
}
if (timesCalled) {
_local2 = _local2 + (", timesCalled:" + String(timesCalled));
}
if (waitFrames) {
_local2 = _local2 + (", waitFrames:" + String(waitFrames));
}
if (hasStarted) {
_local2 = _local2 + (", hasStarted:" + String(hasStarted));
}
_local2 = _local2 + "]\n";
return(_local2);
}
}
Symbol 100 MovieClip [__Packages.caurina.transitions.PropertyInfoObj] Frame 0
class caurina.transitions.PropertyInfoObj
{
var valueStart, valueComplete, hasModifier, modifierFunction, modifierParameters;
function PropertyInfoObj (p_valueStart, p_valueComplete, p_modifierFunction, p_modifierParameters) {
valueStart = p_valueStart;
valueComplete = p_valueComplete;
hasModifier = p_modifierFunction != undefined;
modifierFunction = p_modifierFunction;
modifierParameters = p_modifierParameters;
}
function clone() {
var _local2 = new caurina.transitions.PropertyInfoObj(valueStart, valueComplete, modifierFunction, modifierParameters);
return(_local2);
}
function toString() {
var _local2 = "\n[PropertyInfoObj ";
_local2 = _local2 + ("valueStart:" + String(valueStart));
_local2 = _local2 + ", ";
_local2 = _local2 + ("valueComplete:" + String(valueComplete));
_local2 = _local2 + ", ";
_local2 = _local2 + ("modifierFunction:" + String(modifierFunction));
_local2 = _local2 + ", ";
_local2 = _local2 + ("modifierParameters:" + String(modifierParameters));
_local2 = _local2 + "]\n";
return(_local2);
}
}
Symbol 101 MovieClip [__Packages.caurina.transitions.AuxFunctions] Frame 0
class caurina.transitions.AuxFunctions
{
function AuxFunctions () {
}
static function numberToR(p_num) {
return((p_num & 16711680) >> 16);
}
static function numberToG(p_num) {
return((p_num & 65280) >> 8);
}
static function numberToB(p_num) {
return(p_num & 255);
}
static function isInArray(p_string, p_array) {
var _local2 = p_array.length;
var _local1 = 0;
while (_local1 < _local2) {
if (p_array[_local1] == p_string) {
return(true);
}
_local1++;
}
return(false);
}
static function getObjectLength(p_object) {
var _local1 = 0;
for (var _local2 in p_object) {
_local1++;
}
return(_local1);
}
}
Symbol 102 MovieClip [__Packages.caurina.transitions.Equations] Frame 0
class caurina.transitions.Equations
{
function Equations () {
trace("Equations is a static class and should not be instantiated.");
}
static function init() {
caurina.transitions.Tweener.registerTransition("easenone", easeNone);
caurina.transitions.Tweener.registerTransition("linear", easeNone);
caurina.transitions.Tweener.registerTransition("easeinquad", easeInQuad);
caurina.transitions.Tweener.registerTransition("easeoutquad", easeOutQuad);
caurina.transitions.Tweener.registerTransition("easeinoutquad", easeInOutQuad);
caurina.transitions.Tweener.registerTransition("easeoutinquad", easeOutInQuad);
caurina.transitions.Tweener.registerTransition("easeincubic", easeInCubic);
caurina.transitions.Tweener.registerTransition("easeoutcubic", easeOutCubic);
caurina.transitions.Tweener.registerTransition("easeinoutcubic", easeInOutCubic);
caurina.transitions.Tweener.registerTransition("easeoutincubic", easeOutInCubic);
caurina.transitions.Tweener.registerTransition("easeinquart", easeInQuart);
caurina.transitions.Tweener.registerTransition("easeoutquart", easeOutQuart);
caurina.transitions.Tweener.registerTransition("easeinoutquart", easeInOutQuart);
caurina.transitions.Tweener.registerTransition("easeoutinquart", easeOutInQuart);
caurina.transitions.Tweener.registerTransition("easeinquint", easeInQuint);
caurina.transitions.Tweener.registerTransition("easeoutquint", easeOutQuint);
caurina.transitions.Tweener.registerTransition("easeinoutquint", easeInOutQuint);
caurina.transitions.Tweener.registerTransition("easeoutinquint", easeOutInQuint);
caurina.transitions.Tweener.registerTransition("easeinsine", easeInSine);
caurina.transitions.Tweener.registerTransition("easeoutsine", easeOutSine);
caurina.transitions.Tweener.registerTransition("easeinoutsine", easeInOutSine);
caurina.transitions.Tweener.registerTransition("easeoutinsine", easeOutInSine);
caurina.transitions.Tweener.registerTransition("easeincirc", easeInCirc);
caurina.transitions.Tweener.registerTransition("easeoutcirc", easeOutCirc);
caurina.transitions.Tweener.registerTransition("easeinoutcirc", easeInOutCirc);
caurina.transitions.Tweener.registerTransition("easeoutincirc", easeOutInCirc);
caurina.transitions.Tweener.registerTransition("easeinexpo", easeInExpo);
caurina.transitions.Tweener.registerTransition("easeoutexpo", easeOutExpo);
caurina.transitions.Tweener.registerTransition("easeinoutexpo", easeInOutExpo);
caurina.transitions.Tweener.registerTransition("easeoutinexpo", easeOutInExpo);
caurina.transitions.Tweener.registerTransition("easeinelastic", easeInElastic);
caurina.transitions.Tweener.registerTransition("easeoutelastic", easeOutElastic);
caurina.transitions.Tweener.registerTransition("easeinoutelastic", easeInOutElastic);
caurina.transitions.Tweener.registerTransition("easeoutinelastic", easeOutInElastic);
caurina.transitions.Tweener.registerTransition("easeinback", easeInBack);
caurina.transitions.Tweener.registerTransition("easeoutback", easeOutBack);
caurina.transitions.Tweener.registerTransition("easeinoutback", easeInOutBack);
caurina.transitions.Tweener.registerTransition("easeoutinback", easeOutInBack);
caurina.transitions.Tweener.registerTransition("easeinbounce", easeInBounce);
caurina.transitions.Tweener.registerTransition("easeoutbounce", easeOutBounce);
caurina.transitions.Tweener.registerTransition("easeinoutbounce", easeInOutBounce);
caurina.transitions.Tweener.registerTransition("easeoutinbounce", easeOutInBounce);
}
static function easeNone(t, b, c, d) {
return(((c * t) / d) + b);
}
static function easeInQuad(t, b, c, d) {
t = t / d;
return(((c * t) * t) + b);
}
static function easeOutQuad(t, b, c, d) {
t = t / d;
return((((-c) * t) * (t - 2)) + b);
}
static function easeInOutQuad(t, b, c, d) {
t = t / (d / 2);
if (t < 1) {
return((((c / 2) * t) * t) + b);
}
t--;
return((((-c) / 2) * ((t * (t - 2)) - 1)) + b);
}
static function easeOutInQuad(t, b, c, d) {
if (t < (d / 2)) {
return(easeOutQuad(t * 2, b, c / 2, d));
}
return(easeInQuad((t * 2) - d, b + (c / 2), c / 2, d));
}
static function easeInCubic(t, b, c, d) {
t = t / d;
return((((c * t) * t) * t) + b);
}
static function easeOutCubic(t, b, c, d) {
t = (t / d) - 1;
return((c * (((t * t) * t) + 1)) + b);
}
static function easeInOutCubic(t, b, c, d) {
t = t / (d / 2);
if (t < 1) {
return(((((c / 2) * t) * t) * t) + b);
}
t = t - 2;
return(((c / 2) * (((t * t) * t) + 2)) + b);
}
static function easeOutInCubic(t, b, c, d) {
if (t < (d / 2)) {
return(easeOutCubic(t * 2, b, c / 2, d));
}
return(easeInCubic((t * 2) - d, b + (c / 2), c / 2, d));
}
static function easeInQuart(t, b, c, d) {
t = t / d;
return(((((c * t) * t) * t) * t) + b);
}
static function easeOutQuart(t, b, c, d) {
t = (t / d) - 1;
return(((-c) * ((((t * t) * t) * t) - 1)) + b);
}
static function easeInOutQuart(t, b, c, d) {
t = t / (d / 2);
if (t < 1) {
return((((((c / 2) * t) * t) * t) * t) + b);
}
t = t - 2;
return((((-c) / 2) * ((((t * t) * t) * t) - 2)) + b);
}
static function easeOutInQuart(t, b, c, d) {
if (t < (d / 2)) {
return(easeOutQuart(t * 2, b, c / 2, d));
}
return(easeInQuart((t * 2) - d, b + (c / 2), c / 2, d));
}
static function easeInQuint(t, b, c, d) {
t = t / d;
return((((((c * t) * t) * t) * t) * t) + b);
}
static function easeOutQuint(t, b, c, d) {
t = (t / d) - 1;
return((c * (((((t * t) * t) * t) * t) + 1)) + b);
}
static function easeInOutQuint(t, b, c, d) {
t = t / (d / 2);
if (t < 1) {
return(((((((c / 2) * t) * t) * t) * t) * t) + b);
}
t = t - 2;
return(((c / 2) * (((((t * t) * t) * t) * t) + 2)) + b);
}
static function easeOutInQuint(t, b, c, d) {
if (t < (d / 2)) {
return(easeOutQuint(t * 2, b, c / 2, d));
}
return(easeInQuint((t * 2) - d, b + (c / 2), c / 2, d));
}
static function easeInSine(t, b, c, d) {
return((((-c) * Math.cos((t / d) * (Math.PI/2))) + c) + b);
}
static function easeOutSine(t, b, c, d) {
return((c * Math.sin((t / d) * (Math.PI/2))) + b);
}
static function easeInOutSine(t, b, c, d) {
return((((-c) / 2) * (Math.cos((Math.PI * t) / d) - 1)) + b);
}
static function easeOutInSine(t, b, c, d) {
if (t < (d / 2)) {
return(easeOutSine(t * 2, b, c / 2, d));
}
return(easeInSine((t * 2) - d, b + (c / 2), c / 2, d));
}
static function easeInExpo(t, b, c, d) {
return(((t == 0) ? (b) : (((c * Math.pow(2, 10 * ((t / d) - 1))) + b) - (c * 0.001))));
}
static function easeOutExpo(t, b, c, d) {
return(((t == d) ? (b + c) : (((c * 1.001) * ((-Math.pow(2, (-10 * t) / d)) + 1)) + b)));
}
static function easeInOutExpo(t, b, c, d) {
if (t == 0) {
return(b);
}
if (t == d) {
return(b + c);
}
t = t / (d / 2);
if (t < 1) {
return((((c / 2) * Math.pow(2, 10 * (t - 1))) + b) - (c * 0.0005));
}
t--;
return((((c / 2) * 1.0005) * ((-Math.pow(2, -10 * t)) + 2)) + b);
}
static function easeOutInExpo(t, b, c, d) {
if (t < (d / 2)) {
return(easeOutExpo(t * 2, b, c / 2, d));
}
return(easeInExpo((t * 2) - d, b + (c / 2), c / 2, d));
}
static function easeInCirc(t, b, c, d) {
t = t / d;
return(((-c) * (Math.sqrt(1 - (t * t)) - 1)) + b);
}
static function easeOutCirc(t, b, c, d) {
t = (t / d) - 1;
return((c * Math.sqrt(1 - (t * t))) + b);
}
static function easeInOutCirc(t, b, c, d) {
t = t / (d / 2);
if (t < 1) {
return((((-c) / 2) * (Math.sqrt(1 - (t * t)) - 1)) + b);
}
t = t - 2;
return(((c / 2) * (Math.sqrt(1 - (t * t)) + 1)) + b);
}
static function easeOutInCirc(t, b, c, d) {
if (t < (d / 2)) {
return(easeOutCirc(t * 2, b, c / 2, d));
}
return(easeInCirc((t * 2) - d, b + (c / 2), c / 2, d));
}
static function easeInElastic(t, b, c, d, a, p) {
var _local5;
if (t == 0) {
return(b);
}
t = t / d;
if (t == 1) {
return(b + c);
}
if (!p) {
p = d * 0.3;
}
if ((!a) || (a < Math.abs(c))) {
a = c;
_local5 = p / 4;
} else {
_local5 = (p / (Math.PI*2)) * Math.asin(c / a);
}
t = t - 1;
return((-((a * Math.pow(2, 10 * t)) * Math.sin((((t * d) - _local5) * (Math.PI*2)) / p))) + b);
}
static function easeOutElastic(t, b, c, d, a, p) {
var _local5;
if (t == 0) {
return(b);
}
t = t / d;
if (t == 1) {
return(b + c);
}
if (!p) {
p = d * 0.3;
}
if ((!a) || (a < Math.abs(c))) {
a = c;
_local5 = p / 4;
} else {
_local5 = (p / (Math.PI*2)) * Math.asin(c / a);
}
return((((a * Math.pow(2, -10 * t)) * Math.sin((((t * d) - _local5) * (Math.PI*2)) / p)) + c) + b);
}
static function easeInOutElastic(t, b, c, d, a, p) {
var _local5;
if (t == 0) {
return(b);
}
t = t / (d / 2);
if (t == 2) {
return(b + c);
}
if (!p) {
p = d * 0.45;
}
if ((!a) || (a < Math.abs(c))) {
a = c;
_local5 = p / 4;
} else {
_local5 = (p / (Math.PI*2)) * Math.asin(c / a);
}
if (t < 1) {
t = t - 1;
return((-0.5 * ((a * Math.pow(2, 10 * t)) * Math.sin((((t * d) - _local5) * (Math.PI*2)) / p))) + b);
}
t = t - 1;
return(((((a * Math.pow(2, -10 * t)) * Math.sin((((t * d) - _local5) * (Math.PI*2)) / p)) * 0.5) + c) + b);
}
static function easeOutInElastic(t, b, c, d, a, p) {
if (t < (d / 2)) {
return(easeOutElastic(t * 2, b, c / 2, d, a, p));
}
return(easeInElastic((t * 2) - d, b + (c / 2), c / 2, d, a, p));
}
static function easeInBack(t, b, c, d, s) {
if (s == undefined) {
s = 1.70158;
}
t = t / d;
return((((c * t) * t) * (((s + 1) * t) - s)) + b);
}
static function easeOutBack(t, b, c, d, s) {
if (s == undefined) {
s = 1.70158;
}
t = (t / d) - 1;
return((c * (((t * t) * (((s + 1) * t) + s)) + 1)) + b);
}
static function easeInOutBack(t, b, c, d, s) {
if (s == undefined) {
s = 1.70158;
}
t = t / (d / 2);
if (t < 1) {
s = s * 1.525;
return(((c / 2) * ((t * t) * (((s + 1) * t) - s))) + b);
}
t = t - 2;
s = s * 1.525;
return(((c / 2) * (((t * t) * (((s + 1) * t) + s)) + 2)) + b);
}
static function easeOutInBack(t, b, c, d, s) {
if (t < (d / 2)) {
return(easeOutBack(t * 2, b, c / 2, d, s));
}
return(easeInBack((t * 2) - d, b + (c / 2), c / 2, d, s));
}
static function easeInBounce(t, b, c, d) {
return((c - easeOutBounce(d - t, 0, c, d)) + b);
}
static function easeOutBounce(t, b, c, d) {
t = t / d;
if (t < 0.363636363636364) {
return((c * ((7.5625 * t) * t)) + b);
}
if (t < 0.727272727272727) {
t = t - 0.545454545454545;
return((c * (((7.5625 * t) * t) + 0.75)) + b);
}
if (t < 0.909090909090909) {
t = t - 0.818181818181818;
return((c * (((7.5625 * t) * t) + 0.9375)) + b);
}
t = t - 0.954545454545455;
return((c * (((7.5625 * t) * t) + 0.984375)) + b);
}
static function easeInOutBounce(t, b, c, d) {
if (t < (d / 2)) {
return((easeInBounce(t * 2, 0, c, d) * 0.5) + b);
}
return(((easeOutBounce((t * 2) - d, 0, c, d) * 0.5) + (c * 0.5)) + b);
}
static function easeOutInBounce(t, b, c, d) {
if (t < (d / 2)) {
return(easeOutBounce(t * 2, b, c / 2, d));
}
return(easeInBounce((t * 2) - d, b + (c / 2), c / 2, d));
}
}
Symbol 103 MovieClip [__Packages.caurina.transitions.SpecialPropertiesDefault] Frame 0
class caurina.transitions.SpecialPropertiesDefault
{
function SpecialPropertiesDefault () {
trace("SpecialProperties is an static class and should not be instantiated.");
}
static function init() {
caurina.transitions.Tweener.registerSpecialProperty("_frame", _frame_get, _frame_set);
caurina.transitions.Tweener.registerSpecialProperty("_sound_volume", _sound_volume_get, _sound_volume_set);
caurina.transitions.Tweener.registerSpecialProperty("_sound_pan", _sound_pan_get, _sound_pan_set);
caurina.transitions.Tweener.registerSpecialProperty("_color_ra", _color_property_get, _color_property_set, ["ra"]);
caurina.transitions.Tweener.registerSpecialProperty("_color_rb", _color_property_get, _color_property_set, ["rb"]);
caurina.transitions.Tweener.registerSpecialProperty("_color_ga", _color_property_get, _color_property_set, ["ga"]);
caurina.transitions.Tweener.registerSpecialProperty("_color_gb", _color_property_get, _color_property_set, ["gb"]);
caurina.transitions.Tweener.registerSpecialProperty("_color_ba", _color_property_get, _color_property_set, ["ba"]);
caurina.transitions.Tweener.registerSpecialProperty("_color_bb", _color_property_get, _color_property_set, ["bb"]);
caurina.transitions.Tweener.registerSpecialProperty("_color_aa", _color_property_get, _color_property_set, ["aa"]);
caurina.transitions.Tweener.registerSpecialProperty("_color_ab", _color_property_get, _color_property_set, ["ab"]);
caurina.transitions.Tweener.registerSpecialProperty("_autoAlpha", _autoAlpha_get, _autoAlpha_set);
caurina.transitions.Tweener.registerSpecialPropertySplitter("_color", _color_splitter);
caurina.transitions.Tweener.registerSpecialPropertySplitter("_colorTransform", _colorTransform_splitter);
caurina.transitions.Tweener.registerSpecialPropertySplitter("_scale", _scale_splitter);
caurina.transitions.Tweener.registerSpecialPropertyModifier("_bezier", _bezier_modifier, _bezier_get);
}
static function _color_splitter(p_value) {
var _local1 = new Array();
if (p_value == null) {
_local1.push({name:"_color_ra", value:100});
_local1.push({name:"_color_rb", value:0});
_local1.push({name:"_color_ga", value:100});
_local1.push({name:"_color_gb", value:0});
_local1.push({name:"_color_ba", value:100});
_local1.push({name:"_color_bb", value:0});
} else {
_local1.push({name:"_color_ra", value:0});
_local1.push({name:"_color_rb", value:caurina.transitions.AuxFunctions.numberToR(p_value)});
_local1.push({name:"_color_ga", value:0});
_local1.push({name:"_color_gb", value:caurina.transitions.AuxFunctions.numberToG(p_value)});
_local1.push({name:"_color_ba", value:0});
_local1.push({name:"_color_bb", value:caurina.transitions.AuxFunctions.numberToB(p_value)});
}
return(_local1);
}
static function _colorTransform_splitter(p_value) {
var _local2 = new Array();
if (p_value == null) {
_local2.push({name:"_color_ra", value:100});
_local2.push({name:"_color_rb", value:0});
_local2.push({name:"_color_ga", value:100});
_local2.push({name:"_color_gb", value:0});
_local2.push({name:"_color_ba", value:100});
_local2.push({name:"_color_bb", value:0});
} else {
if (p_value.ra != undefined) {
_local2.push({name:"_color_ra", value:p_value.ra});
}
if (p_value.rb != undefined) {
_local2.push({name:"_color_rb", value:p_value.rb});
}
if (p_value.ga != undefined) {
_local2.push({name:"_color_ba", value:p_value.ba});
}
if (p_value.gb != undefined) {
_local2.push({name:"_color_bb", value:p_value.bb});
}
if (p_value.ba != undefined) {
_local2.push({name:"_color_ga", value:p_value.ga});
}
if (p_value.bb != undefined) {
_local2.push({name:"_color_gb", value:p_value.gb});
}
if (p_value.aa != undefined) {
_local2.push({name:"_color_aa", value:p_value.aa});
}
if (p_value.ab != undefined) {
_local2.push({name:"_color_ab", value:p_value.ab});
}
}
return(_local2);
}
static function _scale_splitter(p_value) {
var _local1 = new Array();
_local1.push({name:"_xscale", value:p_value});
_local1.push({name:"_yscale", value:p_value});
return(_local1);
}
static function _frame_get(p_obj) {
return(p_obj._currentFrame);
}
static function _frame_set(p_obj, p_value) {
p_obj.gotoAndStop(Math.round(p_value));
}
static function _sound_volume_get(p_obj) {
return(p_obj.getVolume());
}
static function _sound_volume_set(p_obj, p_value) {
p_obj.setVolume(p_value);
}
static function _sound_pan_get(p_obj) {
return(p_obj.getPan());
}
static function _sound_pan_set(p_obj, p_value) {
p_obj.setPan(p_value);
}
static function _color_property_get(p_obj, p_parameters) {
return(new Color(p_obj).getTransform()[p_parameters[0]]);
}
static function _color_property_set(p_obj, p_value, p_parameters) {
var _local1 = new Object();
_local1[p_parameters[0]] = Math.round(p_value);
new Color(p_obj).setTransform(_local1);
}
static function _autoAlpha_get(p_obj) {
return(p_obj._alpha);
}
static function _autoAlpha_set(p_obj, p_value) {
p_obj._alpha = p_value;
p_obj._visible = p_value > 0;
}
static function _bezier_modifier(p_obj) {
var _local7 = [];
var _local4;
if (p_obj instanceof Array) {
_local4 = p_obj;
} else {
_local4 = [p_obj];
}
var _local3;
var _local1;
var _local2 = {};
_local3 = 0;
while (_local3 < _local4.length) {
for (_local1 in _local4[_local3]) {
if (_local2[_local1] == undefined) {
_local2[_local1] = [];
}
_local2[_local1].push(_local4[_local3][_local1]);
}
_local3++;
}
for (_local1 in _local2) {
_local7.push({name:_local1, parameters:_local2[_local1]});
}
return(_local7);
}
static function _bezier_get(b, e, t, p) {
if (p.length == 1) {
return(b + (t * (((2 * (1 - t)) * (p[0] - b)) + (t * (e - b)))));
}
var _local2 = Math.floor(t * p.length);
var _local5 = (t - (_local2 * (1 / p.length))) * p.length;
var _local3;
var _local6;
if (_local2 == 0) {
_local3 = b;
_local6 = (p[0] + p[1]) / 2;
} else if (_local2 == (p.length - 1)) {
_local3 = (p[_local2 - 1] + p[_local2]) / 2;
_local6 = e;
} else {
_local3 = (p[_local2 - 1] + p[_local2]) / 2;
_local6 = (p[_local2] + p[_local2 + 1]) / 2;
}
return(_local3 + (_local5 * (((2 * (1 - _local5)) * (p[_local2] - _local3)) + (_local5 * (_local6 - _local3)))));
}
}
Symbol 104 MovieClip [__Packages.caurina.transitions.SpecialProperty] Frame 0
class caurina.transitions.SpecialProperty
{
var parameters;
function SpecialProperty (p_getFunction, p_setFunction, p_parameters) {
getValue = p_getFunction;
setValue = p_setFunction;
parameters = p_parameters;
}
function getValue(p_obj, p_parameters) {
return(null);
}
function setValue(p_obj, p_value, p_parameters) {
}
function toString() {
var _local2 = "";
_local2 = _local2 + "[SpecialProperty ";
_local2 = _local2 + ("getValue:" + getValue.toString());
_local2 = _local2 + ", ";
_local2 = _local2 + ("setValue:" + setValue.toString());
_local2 = _local2 + ", ";
_local2 = _local2 + ("parameters:" + parameters.toString());
_local2 = _local2 + "]";
return(_local2);
}
}
Symbol 105 MovieClip [__Packages.caurina.transitions.SpecialPropertyModifier] Frame 0
class caurina.transitions.SpecialPropertyModifier
{
var modifyValues, getValue;
function SpecialPropertyModifier (p_modifyFunction, p_getFunction) {
modifyValues = p_modifyFunction;
getValue = p_getFunction;
}
function toString() {
var _local2 = "";
_local2 = _local2 + "[SpecialPropertyModifier ";
_local2 = _local2 + ("modifyValues:" + modifyValues.toString());
_local2 = _local2 + ", ";
_local2 = _local2 + ("getValue:" + getValue.toString());
_local2 = _local2 + "]";
return(_local2);
}
}
Symbol 106 MovieClip [__Packages.caurina.transitions.SpecialPropertySplitter] Frame 0
class caurina.transitions.SpecialPropertySplitter
{
function SpecialPropertySplitter (p_splitFunction) {
splitValues = p_splitFunction;
}
function splitValues(p_value) {
return([]);
}
function toString() {
var _local2 = "";
_local2 = _local2 + "[SpecialPropertySplitter ";
_local2 = _local2 + ("splitValues:" + splitValues.toString());
_local2 = _local2 + "]";
return(_local2);
}
}