Frame 1
function getHighScores() {
loadVariables ("http://www.beboobled.com/getHighScores.php?" + new Date(), _root);
}
function saveHighScore() {
lv.load((((scoreScript + "?playername=") + playername) + "&score=") + score);
}
game = "Beboobled";
site = "SWF";
sendto = "http://www.zooass.com";
version = "full";
gametest = "false";
scoreScript = "http://www.beboobled.com/updateHighScores.php";
lv = new LoadVars();
stop();
Frame 2
gotoAndStop (1);
Frame 3
function resetMeter() {
girlFlash = 1;
if (level == 1) {
console.girl.gotoAndStop(1);
}
}
function resetGemArrays() {
gems1 = new Array(x, 1, 1, 1, 1, 1, 1, 1, 1);
gems2 = new Array(x, 1, 1, 1, 1, 1, 1, 1, 1);
gems3 = new Array(x, 1, 1, 1, 1, 1, 1, 1, 1);
gems4 = new Array(x, 1, 1, 1, 1, 1, 1, 1, 1);
gems5 = new Array(x, 1, 1, 1, 1, 1, 1, 1, 1);
gems6 = new Array(x, 1, 1, 1, 1, 1, 1, 1, 1);
gems7 = new Array(x, 1, 1, 1, 1, 1, 1, 1, 1);
gems8 = new Array(x, 1, 1, 1, 1, 1, 1, 1, 1);
}
function makeGem(gem, column) {
gemX = (column * dropDistance) + left;
gemY = bottom - (gem * dropDistance);
if (initializeGems == "true") {
gemYdrop = bottom - ((gem + 9) * dropDistance);
attachMovie("gemtypes", (("gem" + gem) + "col") + column, _root.getNextHighestDepth(), {_x:gemX, _y:gemYdrop});
} else {
attachMovie("gemtypes", (("gem" + gem) + "col") + column, _root.getNextHighestDepth(), {_x:gemX, _y:gemY});
}
gemTypeSelected = 0;
while (gemTypeSelected == 0) {
gemType = (level * 10) + random(gemTypes);
if ((gemType == eval ((("gem" + gem) + "col") + (column - 1))._currentframe) && (gemType == eval ((("gem" + gem) + "col") + (column - 2))._currentframe)) {
} else if ((gemType == eval ((("gem" + (gem - 1)) + "col") + column)._currentframe) && (gemType == eval ((("gem" + (gem - 2)) + "col") + column)._currentframe)) {
} else {
gemTypeSelected = 1;
}
}
eval ((("gem" + gem) + "col") + column).gotoAndStop(gemType);
this["gems" + column][i] = 1;
if (initializeGems == "true") {
tweenGem = new mx.transitions.Tween(eval ((("gem" + gem) + "col") + column), "_y", mx.transitions.easing.Regular.easeInOut, gemYdrop, gemY, 20);
}
}
function checkMatch() {
match = 0;
column = 1;
while (column < (columns + 1)) {
gem = gemsInColumn;
while (gem > 0) {
if ((eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem - 1)) + "col") + column)._currentframe) && (eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem - 2)) + "col") + column)._currentframe)) {
this["gems" + column][gem] = 0;
this["gems" + column][gem - 1] = 0;
this["gems" + column][gem - 2] = 0;
match++;
}
if ((eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + gem) + "col") + (column + 1))._currentframe) && (eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + gem) + "col") + (column + 2))._currentframe)) {
this["gems" + column][gem] = 0;
this["gems" + (column + 1)][gem] = 0;
this["gems" + (column + 2)][gem] = 0;
match++;
}
gem--;
}
column++;
}
if (shuffling != "true") {
_root.play();
}
}
function popGems() {
trace("popping gems");
column = 1;
while (column < (columns + 1)) {
gem = 1;
while (gem < (gemsInColumn + 1)) {
if (this["gems" + column][gem] == 0) {
points = level * 10;
eval ((("gem" + gem) + "col") + column).points.points.points = points;
if (_root._currentframe < 25) {
score = score + (points * popsThisTurn);
}
popsThisTurn++;
pop++;
trace("gems popped: " + pop);
if (pop == flashCount) {
console.girl.gotoAndPlay("girl2");
} else if (pop == (flashCount * 2)) {
console.girl.gotoAndPlay("girl3");
} else if (pop == (flashCount * 3)) {
console.girl.gotoAndPlay("girl4");
} else if (pop == (flashCount * 4)) {
console.girl.gotoAndPlay("girl5");
} else if (pop == (flashCount * 5)) {
console.girl.gotoAndPlay("girl6");
} else if (pop == (flashCount * 6)) {
console.girl.gotoAndStop("flash");
}
attachMovie("pop", "pop" + pop, _root.getNextHighestDepth(), {_x:eval ((("gem" + gem) + "col") + column)._x, _y:eval ((("gem" + gem) + "col") + column)._y});
eval ((("gem" + gem) + "col") + column).removeMovieClip();
}
gem++;
}
column++;
}
}
function moveGems() {
gems2renameTemp = new Array();
column = 1;
while (column < (columns + 1)) {
gems2make = 0;
gem = gemsInColumn;
while (gem > 0) {
nextGem = gem - 1;
emptySpots = 0;
while (nextGem > 0) {
if ((this["gems" + column][gem] != 0) && (this["gems" + column][nextGem] == 0)) {
emptySpots++;
}
nextGem--;
}
if (emptySpots > 0) {
gemInstance = eval ((("gem" + gem) + "col") + column)._name;
tweenGem = new mx.transitions.Tween(eval (gemInstance), "_y", mx.transitions.easing.Regular.easeInOut, eval (gemInstance)._y, eval (gemInstance)._y + (dropDistance * emptySpots), 5 * emptySpots);
gemsMoving++;
tweenGem.onMotionFinished = function () {
gemsMoving--;
};
gems2renameTemp.push((("gem" + gem) + "col") + column);
gems2renameTemp.push((("~gem" + Number(gem - emptySpots)) + "col") + column);
}
if (this["gems" + column][gem] == 0) {
gems2make++;
}
gem--;
}
gems2slide = gems2make;
while (gems2make > 0) {
newGem = Number(gems2make + gemsInColumn);
makeGem(newGem, column);
gemInstance = eval ((("gem" + (gems2make + gemsInColumn)) + "col") + column)._name;
tweenGem = new mx.transitions.Tween(eval (gemInstance), "_y", mx.transitions.easing.Regular.easeInOut, eval (gemInstance)._y, eval (gemInstance)._y + (dropDistance * gems2slide), 5 * gems2slide);
gemsMoving++;
tweenGem.onMotionFinished = function () {
gemsMoving--;
};
gems2renameTemp.push((("gem" + newGem) + "col") + column);
gems2renameTemp.push((("~gem" + Number(newGem - gems2slide)) + "col") + column);
gems2make--;
}
column++;
}
}
function renameGems() {
trace("renaming gems");
gems2rename = new Array();
i = 0;
while (i < gems2renameTemp.length) {
this[gems2renameTemp[i]]._name = gems2renameTemp[i + 1];
gems2rename.push(gems2renameTemp[i + 1]);
i = i + 2;
}
for (var _local2 in gems2rename) {
this[gems2rename[_local2]]._name = gems2rename[_local2].substr(1, gems2rename[_local2].length);
}
}
function movesLeft() {
hints = new Array();
column = 1;
while (column < (columns + 1)) {
gem = gemsInColumn;
while (gem > 0) {
moves = 0;
if ((eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem + 2)) + "col") + column)._currentframe) && (eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem + 3)) + "col") + column)._currentframe)) {
moves++;
}
if ((eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem - 2)) + "col") + column)._currentframe) && (eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem - 3)) + "col") + column)._currentframe)) {
moves++;
}
if ((eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem - 1)) + "col") + (column - 1))._currentframe) && (eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem - 2)) + "col") + (column - 1))._currentframe)) {
moves++;
}
if ((eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem + 1)) + "col") + (column - 1))._currentframe) && (eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem - 1)) + "col") + (column - 1))._currentframe)) {
moves++;
}
if ((eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem + 1)) + "col") + (column - 1))._currentframe) && (eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem + 2)) + "col") + (column - 1))._currentframe)) {
moves++;
}
if ((eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem - 1)) + "col") + (column + 1))._currentframe) && (eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem - 2)) + "col") + (column + 1))._currentframe)) {
moves++;
}
if ((eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem + 1)) + "col") + (column + 1))._currentframe) && (eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem - 1)) + "col") + (column + 1))._currentframe)) {
moves++;
}
if ((eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem + 1)) + "col") + (column + 1))._currentframe) && (eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem + 2)) + "col") + (column + 1))._currentframe)) {
moves++;
}
if ((eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + gem) + "col") + (column - 2))._currentframe) && (eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + gem) + "col") + (column - 3))._currentframe)) {
moves++;
}
if ((eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + gem) + "col") + (column + 2))._currentframe) && (eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + gem) + "col") + (column + 3))._currentframe)) {
moves++;
}
if ((eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem + 1)) + "col") + (column + 1))._currentframe) && (eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem + 1)) + "col") + (column + 2))._currentframe)) {
moves++;
}
if ((eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem + 1)) + "col") + (column - 1))._currentframe) && (eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem + 1)) + "col") + (column + 1))._currentframe)) {
moves++;
}
if ((eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem + 1)) + "col") + (column - 1))._currentframe) && (eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem + 1)) + "col") + (column - 2))._currentframe)) {
moves++;
}
if ((eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem - 1)) + "col") + (column + 1))._currentframe) && (eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem - 1)) + "col") + (column + 2))._currentframe)) {
moves++;
}
if ((eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem - 1)) + "col") + (column - 1))._currentframe) && (eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem - 1)) + "col") + (column + 1))._currentframe)) {
moves++;
}
if ((eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem - 1)) + "col") + (column - 1))._currentframe) && (eval ((("gem" + gem) + "col") + column)._currentframe == eval ((("gem" + (gem - 1)) + "col") + (column - 2))._currentframe)) {
moves++;
}
if (moves > 0) {
hints.push((("gem" + gem) + "col") + column);
}
gem--;
}
column++;
}
trace(hints.length + " possible moves left");
}
function removeGems() {
column = 1;
while (column < (columns + 1)) {
gem = 1;
while (gem < (gemsInColumn + 1)) {
eval ((("gem" + gem) + "col") + column).removeMovieClip();
gem++;
}
column++;
}
}
function shuffleGemsRandom() {
shuffling = "true";
match = 1;
while ((match > 0) || (hints.length == 0)) {
gems2shuffle = new Array();
column = 1;
while (column < (columns + 1)) {
gem = 1;
while (gem < (gemsInColumn + 1)) {
gems2shuffle.push(eval ((("gem" + gem) + "col") + column)._currentframe);
gem++;
}
column++;
}
gemsShuffled = new Array();
while (gems2shuffle.length > 0) {
r = int(Math.random() * gems2shuffle.length);
gemsShuffled.push(gems2shuffle[r]);
gems2shuffle.splice(r, 1);
}
gemIndex = 0;
column = 1;
while (column < (columns + 1)) {
gem = 1;
while (gem < (gemsInColumn + 1)) {
eval ((("gem" + gem) + "col") + column).gotoAndStop(gemsShuffled[gemIndex]);
gemIndex++;
gem++;
}
column++;
}
checkMatch();
resetGemArrays();
movesLeft();
}
shuffling = "false";
}
function shuffleGems() {
trace("shuffling gems");
shuffles--;
shuffling = "true";
swapSound.start();
column = 1;
while (column < (columns + 1)) {
gem = 1;
while (gem < (gemsInColumn + 1)) {
tweenGem1 = new mx.transitions.Tween(eval ((("gem" + gem) + "col") + column), "_x", mx.transitions.easing.Regular.easeInOut, eval ((("gem" + gem) + "col") + column)._x, eval ((("gem" + gem) + "col") + column)._x + dropDistance, 5);
tweenGem2 = new mx.transitions.Tween(eval ((("gem" + gem) + "col") + (column + 1)), "_x", mx.transitions.easing.Regular.easeInOut, eval ((("gem" + gem) + "col") + (column + 1))._x, eval ((("gem" + gem) + "col") + (column + 1))._x - dropDistance, 5);
gem++;
}
column = column + 2;
}
tweenGem2.onMotionFinished = function () {
column = 1;
while (column < (columns + 1)) {
gem = 1;
while (gem < (gemsInColumn + 1)) {
gemX = eval ((("gem" + gem) + "col") + column)._x;
gem2x = eval ((("gem" + gem) + "col") + (column + 1))._x;
eval ((("gem" + gem) + "col") + column)._x = gem2x;
eval ((("gem" + gem) + "col") + (column + 1))._x = gemX;
gem1type = eval ((("gem" + gem) + "col") + column)._currentframe;
gem2type = eval ((("gem" + gem) + "col") + (column + 1))._currentframe;
eval ((("gem" + gem) + "col") + column).gotoAndStop(gem2type);
eval ((("gem" + gem) + "col") + (column + 1)).gotoAndStop(gem1type);
gem++;
}
column = column + 2;
}
swapSound.start();
gem = 8;
while (gem > 0) {
column = 1;
while (column < (columns + 1)) {
tweenGem1 = new mx.transitions.Tween(eval ((("gem" + gem) + "col") + column), "_y", mx.transitions.easing.Regular.easeInOut, eval ((("gem" + gem) + "col") + column)._y, eval ((("gem" + gem) + "col") + column)._y + dropDistance, 5);
tweenGem2 = new mx.transitions.Tween(eval ((("gem" + (gem - 1)) + "col") + column), "_y", mx.transitions.easing.Regular.easeInOut, eval ((("gem" + (gem - 1)) + "col") + column)._y, eval ((("gem" + (gem - 1)) + "col") + column)._y - dropDistance, 5);
column++;
}
gem = gem - 2;
}
tweenGem2.onMotionFinished = function () {
gem = 8;
while (gem > 0) {
column = 1;
while (column < (columns + 1)) {
gemY = eval ((("gem" + gem) + "col") + column)._y;
gem2y = eval ((("gem" + (gem - 1)) + "col") + column)._y;
eval ((("gem" + gem) + "col") + column)._y = gem2y;
eval ((("gem" + (gem - 1)) + "col") + column)._y = gemY;
gem1type = eval ((("gem" + gem) + "col") + column)._currentframe;
gem2type = eval ((("gem" + (gem - 1)) + "col") + column)._currentframe;
eval ((("gem" + gem) + "col") + column).gotoAndStop(gem2type);
eval ((("gem" + (gem - 1)) + "col") + column).gotoAndStop(gem1type);
column++;
}
gem = gem - 2;
}
shuffling = "false";
checkMatch();
if (match > 0) {
trace(match + " matches after shuffle");
_root.gotoAndPlay("matchAction");
} else {
movesLeft();
if (hints.length == 0) {
_root.gotoAndPlay("noMovesLeft");
} else {
gotoAndStop ("ok2click");
}
}
};
};
}
gemsInColumn = 8;
columns = 8;
dropDistance = 50;
gemsMoving = 0;
shuffling = "false";
left = 162;
bottom = 435;
bgsquare = 1;
skipsquare = 0;
column = 1;
while (column < (columns + 1)) {
gem = 1;
while (gem < (gemsInColumn + 1)) {
boxX = (column * dropDistance) + left;
boxY = bottom - (gem * dropDistance);
trace("boxY" + boxY);
attachMovie("bgsquare", "bgsquare" + bgsquare, _root.getNextHighestDepth(), {_x:boxX, _y:boxY});
if (skipsquare == 0) {
eval ("bgsquare" + bgsquare).gotoAndStop(2);
skipsquare = 1;
} else {
skipsquare = 0;
}
bgsquare++;
gem++;
}
if (skipsquare == 0) {
skipsquare = 1;
} else {
skipsquare = 0;
}
column++;
}
attachMovie("splash", "splash", _root.getNextHighestDepth(), {_x:387, _y:207});
attachMovie("anigirls", "anigirls", _root.getNextHighestDepth(), {_x:187, _y:7});
startSound = new Sound();
startSound.attachSound("Pickup_MagicBells13.wav");
swapSound = new Sound();
swapSound.attachSound("swish.wav");
clickSound = new Sound();
clickSound.attachSound("swip.wav");
popSound = new Sound();
popSound.attachSound("pop.wav");
swoopInSound = new Sound();
swoopInSound.attachSound("swip.wav");
badmoveSound = new Sound();
badmoveSound.attachSound("AHOOGA.WAV");
noneleftSound = new Sound();
noneleftSound.attachSound("cuckoo.wav");
stop();
Frame 4
level = 1;
score = 0;
pop = 0;
flashCount = 20;
gemTypes = 5;
shuffles = 3;
hintsLeft = 5;
hintsEnabled = 1;
if (gametest == "true") {
flashCount = 1;
level = 1;
gemTypes = 5;
}
resetMeter();
resetGemArrays();
movesLeft();
Frame 5
function dropEm() {
column = 1;
while (column < (columns + 1)) {
makeGem(gem, column);
column++;
}
gem++;
if (gem == 9) {
clearInterval(pauseInterval);
initializeGems = "false";
play();
}
}
if (member) {
infoboxes.buddylink.gotoAndStop("level" + level);
} else {
infoboxes.buddylink.gotoAndStop("nonmembers");
}
startSound.start();
initializeGems = "true";
gem = 1;
pauseInterval = setInterval(dropEm, 100);
stop();
stop();
Frame 8
if (gem8col8._y != 35) {
gotoAndPlay ("wait");
} else {
gotoAndPlay ("checkMoves");
}
Frame 9
movesLeft();
if (hints.length == 0) {
gotoAndPlay ("noMovesLeft");
}
Frame 10
trace("ok to click");
if (hintsLeft == 0) {
hintsEnabled = 0;
}
ok2click = 1;
hintUsed = 0;
clickNumber = 0;
popsThisTurn = 1;
stop();
Frame 14
trace("swapping gems");
eval (click1).hilite.gotoAndStop(1);
eval (click2).hilite.gotoAndStop(1);
gem1type = eval (click1)._currentframe;
gem2type = eval (click2)._currentframe;
if (click1.substr(1, 4) == click2.substr(1, 4)) {
gem1x = eval (click1)._x;
gem2x = eval (click2)._x;
tweenGem1 = new mx.transitions.Tween(eval (click1), "_x", mx.transitions.easing.Regular.easeInOut, gem1x, gem2x, 10);
tweenGem2 = new mx.transitions.Tween(eval (click2), "_x", mx.transitions.easing.Regular.easeInOut, gem2x, gem1x, 10);
swapSound.start();
tweenGem2.onMotionFinished = function () {
eval (click1)._x = gem1x;
eval (click2)._x = gem2x;
eval (click1).gotoAndStop(gem2type);
eval (click2).gotoAndStop(gem1type);
checkMatch();
};
} else {
gem1y = eval (click1)._y;
gem2y = eval (click2)._y;
tweenGem1 = new mx.transitions.Tween(eval (click1), "_y", mx.transitions.easing.Regular.easeInOut, gem1y, gem2y, 10);
tweenGem2 = new mx.transitions.Tween(eval (click2), "_y", mx.transitions.easing.Regular.easeInOut, gem2y, gem1y, 10);
swapSound.start();
tweenGem2.onMotionFinished = function () {
eval (click1)._y = gem1y;
eval (click2)._y = gem2y;
eval (click1).gotoAndStop(gem2type);
eval (click2).gotoAndStop(gem1type);
checkMatch();
};
}
stop();
Frame 15
if (match > 0) {
trace("match found");
popSound.start();
popGems();
moveGems();
gotoAndPlay ("movewait");
} else {
trace("no match found");
badmoveSound.start();
score = score - (level * 500);
if (score < 100) {
score = 0;
}
if (click1.substr(1, 4) == click2.substr(1, 4)) {
tweenGem1 = new mx.transitions.Tween(eval (click1), "_x", mx.transitions.easing.Regular.easeInOut, gem1x, gem2x, 10);
tweenGem2 = new mx.transitions.Tween(eval (click2), "_x", mx.transitions.easing.Regular.easeInOut, gem2x, gem1x, 10);
swapSound.start();
tweenGem2.onMotionFinished = function () {
eval (click1)._x = gem1x;
eval (click2)._x = gem2x;
eval (click1).gotoAndStop(gem1type);
eval (click2).gotoAndStop(gem2type);
gotoAndStop ("movesLeft");
};
stop();
} else {
tweenGem1 = new mx.transitions.Tween(eval (click1), "_y", mx.transitions.easing.Regular.easeInOut, gem1y, gem2y, 10);
tweenGem2 = new mx.transitions.Tween(eval (click2), "_y", mx.transitions.easing.Regular.easeInOut, gem2y, gem1y, 10);
swapSound.start();
tweenGem2.onMotionFinished = function () {
eval (click1)._y = gem1y;
eval (click2)._y = gem2y;
eval (click1).gotoAndStop(gem1type);
eval (click2).gotoAndStop(gem2type);
gotoAndStop ("movesLeft");
};
}
stop();
}
Frame 19
if (gemsMoving > 0) {
gotoAndPlay ("moveWait");
}
Frame 20
resetGemArrays();
if (match != 0) {
renameGems();
match = 0;
}
checkMatch();
if (match != 0) {
trace("additional match");
popSound.start();
popGems();
moveGems();
gotoAndPlay ("movewait");
} else {
trace("no additional match");
gotoAndPlay ("movesLeft");
}
Frame 26
movesLeft();
if (hints.length == 0) {
gotoAndPlay ("noMovesLeft");
} else if (console.girl._currentframe > 16) {
gotoAndPlay ("nextLevel");
} else {
gotoAndPlay ("ok2click");
}
Frame 27
attachMovie("nomoves", "nomoves", _root.getNextHighestDepth(), {_x:387.5, _y:206.5});
if (shuffles > 0) {
nomoves.gotoAndStop(2);
}
stop();
Frame 28
shuffleGems();
stop();
Frame 38
anigirls.gotoAndStop(2);
flyinBoobies = new Array("gem3col2", "gem3col3", "gem3col4", "gem3col5", "gem3col6", "gem3col7", "gem4col2", "gem4col3", "gem4col4", "gem4col5", "gem4col6", "gem4col7", "gem5col3", "gem5col4", "gem5col5", "gem5col6");
i = 0;
while (i < flyinBoobies.length) {
attachMovie("pop", "pop" + pop, _root.getNextHighestDepth(), {_x:eval (flyinBoobies[i])._x, _y:eval (flyinBoobies[i])._y});
eval (flyinBoobies[i]).removeMovieClip();
pop++;
i++;
}
Frame 48
console.girl.play();
stop();
Frame 49
column = 1;
while (column < (columns + 1)) {
gem = 1;
while (gem < (gemsInColumn + 1)) {
eval ((("gem" + gem) + "col") + column).removeMovieClip();
gem++;
}
column++;
}
anigirls.gotoAndPlay("girl" + level);
stop();
Frame 50
console.girl.play();
stop();
Frame 51
anigirls.gotoAndStop(1);
pop = 0;
level++;
if (level == 2) {
flashCount = 30;
gemTypes = 5;
} else if (level == 3) {
flashCount = 40;
gemTypes = 6;
} else if (level == 4) {
flashCount = 50;
gemTypes = 6;
} else if (level == 5) {
flashCount = 60;
gemTypes = 7;
} else if (level == 6) {
flashCount = 70;
gemTypes = 7;
}
if (gametest == "true") {
flashCount = 1;
}
resetMeter();
resetGemArrays();
movesLeft();
if ((version == "demo") && (level == 3)) {
gotoAndStop ("demo");
} else {
gotoAndPlay ("stackGems");
}
Frame 52
attachMovie("splash", "splash", _root.getNextHighestDepth(), {_x:387, _y:207});
splash.gotoAndStop("demo");
Frame 53
attachMovie("splash", "splash", _root.getNextHighestDepth(), {_x:387, _y:207});
trace("check for high score");
if (_root.score > _root.score10) {
trace("high score beat!");
splash.gotoAndStop("highScore");
}
stop();
Symbol 5 MovieClip Frame 1
loaded = _root.getBytesLoaded();
total = _root.getBytesTotal();
percent = int(100 * Number(loaded / total));
setProperty(statusbar, _xscale , percent);
Symbol 5 MovieClip Frame 2
if (percent != 100) {
gotoAndPlay (1);
} else {
play();
}
Symbol 5 MovieClip Frame 3
flashversion = $version;
if (flashversion eq "") {
flashversion = "Unable to Detect";
}
url = _url;
hostname = substring(url, 0, 21);
_root.gotoAndPlay("initialize");
Symbol 386 MovieClip [__Packages.mx.transitions.OnEnterFrameBeacon] Frame 0
class mx.transitions.OnEnterFrameBeacon
{
function OnEnterFrameBeacon () {
}
static function init() {
var _local4 = _global.MovieClip;
if (!_root.__OnEnterFrameBeacon) {
mx.transitions.BroadcasterMX.initialize(_local4);
var _local3 = _root.createEmptyMovieClip("__OnEnterFrameBeacon", 9876);
_local3.onEnterFrame = function () {
_global.MovieClip.broadcastMessage("onEnterFrame");
};
}
}
static var version = "1.1.0.52";
}
Symbol 387 MovieClip [__Packages.mx.transitions.BroadcasterMX] Frame 0
class mx.transitions.BroadcasterMX
{
var _listeners;
function BroadcasterMX () {
}
static function initialize(o, dontCreateArray) {
if (o.broadcastMessage != undefined) {
delete o.broadcastMessage;
}
o.addListener = mx.transitions.BroadcasterMX.prototype.addListener;
o.removeListener = mx.transitions.BroadcasterMX.prototype.removeListener;
if (!dontCreateArray) {
o._listeners = new Array();
}
}
function addListener(o) {
removeListener(o);
if (broadcastMessage == undefined) {
broadcastMessage = mx.transitions.BroadcasterMX.prototype.broadcastMessage;
}
return(_listeners.push(o));
}
function removeListener(o) {
var _local2 = _listeners;
var _local3 = _local2.length;
while (_local3--) {
if (_local2[_local3] == o) {
_local2.splice(_local3, 1);
if (!_local2.length) {
broadcastMessage = undefined;
}
return(true);
}
}
return(false);
}
function broadcastMessage() {
var _local5 = String(arguments.shift());
var _local4 = _listeners.concat();
var _local6 = _local4.length;
var _local3 = 0;
while (_local3 < _local6) {
_local4[_local3][_local5].apply(_local4[_local3], arguments);
_local3++;
}
}
static var version = "1.1.0.52";
}
Symbol 388 MovieClip [__Packages.mx.transitions.Tween] Frame 0
class mx.transitions.Tween
{
var obj, prop, begin, useSeconds, _listeners, addListener, prevTime, _time, looping, _duration, broadcastMessage, isPlaying, _fps, prevPos, _pos, change, _intervalID, _startTime;
function Tween (obj, prop, func, begin, finish, duration, useSeconds) {
mx.transitions.OnEnterFrameBeacon.init();
if (!arguments.length) {
return;
}
this.obj = obj;
this.prop = prop;
this.begin = begin;
position = (begin);
this.duration = (duration);
this.useSeconds = useSeconds;
if (func) {
this.func = func;
}
this.finish = (finish);
_listeners = [];
addListener(this);
start();
}
function set time(t) {
prevTime = _time;
if (t > duration) {
if (looping) {
rewind(t - _duration);
update();
broadcastMessage("onMotionLooped", this);
} else {
if (useSeconds) {
_time = _duration;
update();
}
stop();
broadcastMessage("onMotionFinished", this);
}
} else if (t < 0) {
rewind();
update();
} else {
_time = t;
update();
}
//return(time);
}
function get time() {
return(_time);
}
function set duration(d) {
_duration = (((d == null) || (d <= 0)) ? (_global.Infinity) : (d));
//return(duration);
}
function get duration() {
return(_duration);
}
function set FPS(fps) {
var _local2 = isPlaying;
stopEnterFrame();
_fps = fps;
if (_local2) {
startEnterFrame();
}
//return(FPS);
}
function get FPS() {
return(_fps);
}
function set position(p) {
setPosition(p);
//return(position);
}
function setPosition(p) {
prevPos = _pos;
obj[prop] = (_pos = p);
broadcastMessage("onMotionChanged", this, _pos);
updateAfterEvent();
}
function get position() {
return(getPosition());
}
function getPosition(t) {
if (t == undefined) {
t = _time;
}
return(func(t, begin, change, _duration));
}
function set finish(f) {
change = f - begin;
//return(finish);
}
function get finish() {
return(begin + change);
}
function continueTo(finish, duration) {
begin = position;
this.finish = (finish);
if (duration != undefined) {
this.duration = (duration);
}
start();
}
function yoyo() {
continueTo(begin, time);
}
function startEnterFrame() {
if (_fps == undefined) {
_global.MovieClip.addListener(this);
} else {
_intervalID = setInterval(this, "onEnterFrame", 1000 / _fps);
}
isPlaying = true;
}
function stopEnterFrame() {
if (_fps == undefined) {
_global.MovieClip.removeListener(this);
} else {
clearInterval(_intervalID);
}
isPlaying = false;
}
function start() {
rewind();
startEnterFrame();
broadcastMessage("onMotionStarted", this);
}
function stop() {
stopEnterFrame();
broadcastMessage("onMotionStopped", this);
}
function resume() {
fixTime();
startEnterFrame();
broadcastMessage("onMotionResumed", this);
}
function rewind(t) {
_time = ((t == undefined) ? 0 : (t));
fixTime();
update();
}
function fforward() {
time = (_duration);
fixTime();
}
function nextFrame() {
if (useSeconds) {
time = ((getTimer() - _startTime) / 1000);
} else {
time = (_time + 1);
}
}
function onEnterFrame() {
nextFrame();
}
function prevFrame() {
if (!useSeconds) {
time = (_time - 1);
}
}
function toString() {
return("[Tween]");
}
function fixTime() {
if (useSeconds) {
_startTime = getTimer() - (_time * 1000);
}
}
function update() {
position = (getPosition(_time));
}
static var version = "1.1.0.52";
static var __initBeacon = mx.transitions.OnEnterFrameBeacon.init();
static var __initBroadcaster = mx.transitions.BroadcasterMX.initialize(mx.transitions.Tween.prototype, true);
function func(t, b, c, d) {
return(((c * t) / d) + b);
}
}
Symbol 389 MovieClip [__Packages.mx.transitions.easing.Regular] Frame 0
class mx.transitions.easing.Regular
{
function Regular () {
}
static function easeIn(t, b, c, d) {
t = t / d;
return(((c * t) * t) + b);
}
static function easeOut(t, b, c, d) {
t = t / d;
return((((-c) * t) * (t - 2)) + b);
}
static function easeInOut(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 var version = "1.1.0.52";
}
Symbol 48 MovieClip Frame 1
stop();
stop();
Symbol 48 MovieClip Frame 4
stop();
Symbol 48 MovieClip Frame 7
stop();
Symbol 48 MovieClip Frame 10
stop();
Symbol 48 MovieClip Frame 13
stop();
Symbol 48 MovieClip Frame 16
stop();
Symbol 48 MovieClip Frame 36
_root.play();
stop();
Symbol 48 MovieClip Frame 46
_root.play();
Symbol 58 MovieClip Frame 1
count = 1;
stop();
Symbol 58 MovieClip Frame 11
count++;
if (count < 4) {
gotoAndPlay (3);
}
Symbol 63 MovieClip Frame 1
stop();
Symbol 63 MovieClip Frame 2
_root.clickSound.start();
Symbol 64 Button
on (press) {
if ((_root.ok2click == 1) && (_root._currentframe == 10)) {
_root.clickNumber++;
if (_root.clickNumber == 1) {
_root.click1 = this._name;
trace("clicked " + _root.click1);
hilite.gotoAndStop(2);
hint.gotoAndStop(1);
} else if (_root.clickNumber == 2) {
if (this._name == _root.click1) {
trace("duplicate click");
_root.clickNumber = 1;
} else if ((Math.abs(this._name.substr(7, 1) - _root.click1.substr(7, 1)) + Math.abs(this._name.substr(3, 1) - _root.click1.substr(3, 1))) > 1) {
trace("gem not adjacent");
_root.clickNumber = 1;
} else {
_root.ok2click == 0;
_root.click2 = this._name;
trace("clicked " + _root.click2);
hilite.gotoAndStop(2);
_root.gotoAndPlay("clicked");
}
}
}
}
Symbol 80 MovieClip Frame 11
stop();
Symbol 81 MovieClip [pop] Frame 1
i = 2;
while (Number(i) < 10) {
duplicateMovieClip ("isk1", "isk" add i, i);
setProperty("isk" add i, _rotation , random(360));
scalefactor = 200 + Number(random(60));
setProperty("isk" add i, _xscale , scalefactor);
setProperty("isk" add i, _yscale , scalefactor);
i = Number(i) + 1;
}
Symbol 81 MovieClip [pop] Frame 25
this.removeMovieClip();
stop();
Symbol 83 MovieClip Frame 1
stop();
Symbol 83 MovieClip Frame 2
_root.clickSound.start();
Symbol 91 Button
on (release) {
getURL ("http://zooass.newgrounds.com/", "_blank");
}
Symbol 97 Button
on (press) {
if ((((_root.clickNumber == 0) && (_root.hintUsed == 0)) && (_root.hintsLeft > 0)) && (_root.hintsEnabled == 1)) {
trace("hint activated");
_root.hintUsed = 1;
_root.hint = _root.hints[random(hints.length)];
_root.hintsLeft--;
}
if ((eval ("_root." + _root.hint).hint._currentframe == 1) && (_root.hintsEnabled == 1)) {
eval ("_root." + _root.hint).hint.gotoAndPlay(2);
}
if (_root.hintsEnabled == 0) {
trace("no hints left sound");
_root.noneleftSound.start();
}
}
Symbol 100 Button
on (press) {
if ((((_root._currentframe == 10) && (_root.clickNumber == 0)) && (_root.shuffles > 0)) && (_root.shuffling == "false")) {
_root.shuffleGems();
}
if ((((_root._currentframe == 10) && (_root.clickNumber == 0)) && (_root.shuffles == 0)) && (_root.shuffling == "false")) {
trace("no shuffles left sound");
_root.noneleftSound.start();
}
}
Symbol 104 Button
on (press) {
howToPlay.play();
}
Symbol 119 MovieClip [bgsquare] Frame 1
stop();
Symbol 171 MovieClip [gemtypes] Frame 1
stop();
Symbol 209 Button
on (press) {
play();
}
Symbol 215 Button
on (release) {
_root.playername = nameTF.text;
_root.saveHighScore();
_root.gotoAndPlay("resetGame");
removeMe();
}
Symbol 226 Button
on (release) {
_root.play();
this.removeMovieClip();
}
Symbol 229 Button
on (press) {
getURL ("http://www.zooass.com/saveus", "_blank");
}
Symbol 230 MovieClip [splash] Frame 1
function removeMe() {
this.removeMovieClip();
}
_root.getHighScores();
stop();
Symbol 230 MovieClip [splash] Frame 6
_root.gotoAndPlay("resetGame");
removeMe();
Symbol 230 MovieClip [splash] Frame 7
playerscore = _root.score;
version = _root.version;
secretkey = "Yw)8cK~r!";
Symbol 232 Button
on (press) {
_root.removeGems();
_root.gotoAndPlay("highScore");
this.removeMovieClip();
}
Symbol 237 MovieClip [nomoves] Frame 1
stop();
Symbol 237 MovieClip [nomoves] Frame 2
function endPause() {
clearInterval(pauseInterval);
_root.play();
play();
}
pauseInterval = setInterval(endPause, 2000);
stop();
Symbol 237 MovieClip [nomoves] Frame 3
this.removeMovieClip();
Symbol 246 MovieClip Frame 199
stopAllSounds();
stop();
_root.play();
Symbol 268 MovieClip Frame 214
stopAllSounds();
stop();
_root.play();
Symbol 293 MovieClip Frame 261
shakin.stop();
stopAllSounds();
stop();
_root.play();
Symbol 326 MovieClip Frame 347
shakin.stop();
stopAllSounds();
stop();
_root.play();
Symbol 346 MovieClip Frame 356
shakin.stop();
stopAllSounds();
stop();
_root.play();
Symbol 363 MovieClip Frame 2
stop();
Symbol 368 Button
on (press) {
stopAllSounds();
nextFrame();
}
Symbol 377 Button
on (press) {
stopBoobs = true;
dx = 0;
dy = 0;
removeDupliClips();
dragMe._x = startX;
dragMe._y = startY;
nextFrame();
}
Symbol 379 MovieClip [anigirls] Frame 1
stop();
Symbol 379 MovieClip [anigirls] Frame 2
stop();
Symbol 379 MovieClip [anigirls] Frame 3
stop();
Symbol 379 MovieClip [anigirls] Frame 7
stop();
Symbol 379 MovieClip [anigirls] Frame 11
stop();
Symbol 379 MovieClip [anigirls] Frame 15
stop();
Symbol 379 MovieClip [anigirls] Frame 20
stop();
Symbol 379 MovieClip [anigirls] Frame 25
stop();
Symbol 379 MovieClip [anigirls] Frame 26
function makeDupliClips() {
i = 0;
while (i <= dupliClips) {
dupliClip = "m" + Number(dupliClips - i);
dragMe.duplicateMovieClip(dupliClip, dupliClips - i);
eval (dupliClip).gotoAndStop(girl);
eval (dupliClip).mc.gotoAndStop(girl);
eval (dupliClip).dynamask.gotoAndStop(girl);
eval (dupliClip).dynamask._xscale = 100 + (i * 1);
eval (dupliClip).dynamask._yscale = 100 + (i * 1);
i++;
}
}
function removeDupliClips() {
i = 0;
while (i <= dupliClips) {
dupliClip = "m" + Number(dupliClips - i);
eval (dupliClip).removeMovieClip();
i++;
}
}
startX = dragMe._x;
startY = dragMe._y;
tempo = 0.1;
wobble = 0.99;
dx = 0;
dy = 0;
girl = 1;
stopBoobs = false;
dupliClips = 30;
makeDupliClips();
dragMe.onEnterFrame = function () {
if (!stopBoobs) {
if (!dragging) {
dx = (dx + ((startX - this._x) * tempo)) * wobble;
dy = (dy + ((startY - this._y) * tempo)) * wobble;
this._x = this._x + dx;
this._y = this._y + dy;
}
i = 0;
while (i <= dupliClips) {
eval ("m" + i)._x = startX - (((startX - dragMe._x) / dupliClips) * i);
eval ("m" + i)._y = startY - (((startY - dragMe._y) / dupliClips) * i);
i++;
}
}
};
dragMe.onMouseDown = function () {
dragging = true;
this.startDrag(true);
};
dragMe.onMouseUp = function () {
dragging = false;
stopDrag();
};
Symbol 379 MovieClip [anigirls] Frame 27
stopAllSounds();
_root.gotoAndPlay("highScore");
gotoAndStop (1);
Symbol 385 MovieClip Frame 1
stop();