Frame 1
function BeginSession() {
if (_global.SessionBegan == false) {
_global.SessionBegan = true;
fscommand ("SessionReady", "<data></data>");
}
}
function GameLaunch() {
if (_root.isSound == true) {
_root.unMuteSounds();
}
if (_root.isSound == false) {
_root.muteSounds();
}
}
function ppOff() {
_root.unMuteSounds();
maingame.masterUnpause();
}
function ppOn() {
_root.muteSounds();
maingame.masterPause();
}
function BroadcastGameScore() {
fscommand ("ScoreBroadcast", ((("<game><score>" + _root.mmscore) + "</score><time>") + returnTime(true)) + "</time></game>");
}
function SubmitFinal() {
fscommand ("ScoreSubmit", ((("<game><score>" + _root.mmscore) + "</score><time>") + returnTime(true)) + "</time></game>");
_root.gameOver();
}
function gameOver() {
_root.fromGameOver = true;
fscommand ("GameEnd", "<gamedata></gamedata>");
}
function DeluxeDownload() {
fscommand ("CustomEvent", "<gamedata>DeluxeDownload</gamedata>");
}
function RoundIntermission() {
transitionAnim.stop();
if (soundHolder._currentframe == 2) {
_root.storemuteon = true;
} else {
_root.storemuteon = false;
}
muteSounds();
_root.pauseTime();
breakdata = ("<data><breakpoint>" + maingame.levelOn) + "</breakpoint></data>";
fscommand ("GameBreak", breakdata);
}
function roundContinue() {
if (_root.storemuteon == false) {
unMuteSounds();
}
_root.resumeTime();
transitionAnim.play();
}
function loadCastcaner(loperLoad) {
ldata = ("<data><percentcomplete>" + loperLoad) + "</percentcomplete></data>";
fscommand ("LoadBroadcast", ldata);
}
function updateScore(newHighScore) {
_root.newHighScore = newHighScore;
_root.functionCalled = true;
}
function deluxeClick() {
getURL (_root.upselllink, "_blank");
if (_root.zone_api == "true") {
_root.DeluxeDownload();
}
}
var gotya = (new com.vascogames.as2.Gotya());
_root.gotyapraccgame = "ja";
_global.SessionBegan = false;
_root.startedTime = 0;
_root.gameTime = 0;
zaptimer = 0;
zapsecs = 0;
_root.txt_classicmenu = "CLASSIC";
_root.txt_classicdescription = "The Original Untimed Game";
_root.txt_actionmenu = "ACTION";
_root.txt_actiondescription = "Race Against the Clock";
_root.txt_puzzlemenu = "JEWELMAIL";
_root.txt_puzzledescription = "Challenge a friend by email";
_root.txt_inshead = "HOW TO PLAY";
_root.txt_ins1 = "SWAP ADJACENT GEMS TO MAKE SETS OF 3";
_root.txt_ins2 = "CLEAR MULTIPLE SETS FOR EXTRA POINTS";
_root.txt_ins3 = "4 GEMS WILL CREATE A POWER GEM";
_root.txt_ins4 = "5 GEMS WILL CREATE A HYPERCUBE";
_root.txt_optionshead = "OPTIONS";
_root.txt_optionssoundoff = "Sounds Off";
_root.txt_optionssoundon = "Sounds On";
_root.txt_optionhelp = "Help";
_root.txt_optionupgrade = "Upgrade";
_root.txt_optionmenu = "Main Menu";
_root.txt_optionback = "Back to Game";
_root.txt_endhead = "END GAME";
_root.txt_endmsg = "Are you sure you want to end the current game?";
_root.txt_endyes = "YES";
_root.txt_endno = "NO";
_root.txt_goduration = "Game Duration";
_root.txt_gocollected = "Gems Collected";
_root.txt_gocas = "Biggest Cascade";
_root.txt_gocomb = "Speed Bonus Points";
_root.txt_gotscore = "Total Score";
_root.txt_goplayagain = "Play Again";
_root.txt_gomainmeun = "Main Menu";
_root.txt_hint1head = "POWER GEM";
_root.txt_hint1body = "Create POWER GEMS by merging 4 gems of the same color. These new gems will explode when matched, scoring extra points!";
_root.txt_hint2head = "HYPER CUBE";
_root.txt_hint2body = "You created a HYPER CUBE by merging 5 gems of the same color. Swap it with a gem to clear all gems of that color onscreen!";
_root.txt_hintdontshow = "Don't Show Again";
_root.txt_hintcontinue = "Continue";
_root.txt_nosolvehead = "No Longer Solvable";
_root.txt_nosolvebody = "Do you want to UNDO to the last point the puzzle could be solved from?";
_root.txt_nosolveyes = "YES";
_root.txt_nosolveno = "NO";
_root.txt_pausehead = "Game paused";
_root.txt_pausetxt = "The game is paused. Click to resume.";
_root.txt_pauseresume = "RESUME";
_root.txt_popgo = "GO!";
_root.txt_popgood = "GOOD";
_root.txt_popexcellent = "EXCELLENT";
_root.txt_popincred = "INCREDIBLE";
_root.txt_popnomore1 = "NO MORE";
_root.txt_popnomore2 = "MOVES";
_root.txt_popsolved = "SOLVED";
_root.txt_poptimeup = "TIME UP!";
_root.txt_poplevelup = "LEVEL";
_root.txt_pausescreen = "*** GAME PAUSED ***";
_root.txt_pausescreen2 = "CLICK TO CONTINUE!";
_root.txt_puzuphead = "Want more puzzles?";
_root.txt_puzuptext = "Download Bejeweled 2 Deluxe to get 75+ all new puzzles, better graphics, spectacular music and more!";
_root.txt_puzupdown = "Download Now";
_root.txt_puzupmainmenu = "Main Menu";
_root.txt_puznomoves1 = "No more moves can be made.";
_root.txt_puznomoves2 = "UNDO some moves with the UNDO button or RESET by clicking the green pod to the left";
_root.txt_puznomoves3 = "Press HINT any time you're stuck on a puzzle!";
_root.txt_wrongpiecehead = "Wrong Piece";
_root.txt_wrongpiecebody = "Please select the piece indicated under the CLICK HERE arrow.";
_root.txt_wrongpieceok = "OK";
_root.txt_puz1tutetxt = "CLEAR ALL THE GEMS TO COMPLETE THE PUZZLE.";
_root.txt_puzhintclickhere = "CLICK HERE";
_root.txt_puzhintshowagain = "Show Again";
_root.txt_puzhintcontinue = "Continue";
_root.txt_puz1tute1 = "Make a set 4 gems to create a Power Gem.";
_root.txt_puz1tute2 = "When you use a Power Gem in another set it will detonate, destroying adjacent gems!";
_root.txt_puz3tute1 = "Make a Hyper Cube by combining 5 gems in a row.";
_root.txt_puz3tute2 = "Swap the Hyper Cube to destroy all gems of one color.";
_root.txt_upsellmsg = "THE WEB VERSION IS JUST A TASTE OF WHAT'S IN STORE...";
_root.txt_upsellbackto = "Back to Game";
_root.txt_upselltellmore = "Tell Me More";
_root.txt_upselldownloadnow = "Download Now!";
_root.txt_dontshowthis = "Don't Show This Again";
_root.txt_continue = "Continue";
_root.txt_backtogame = "Back to game";
_root.txt_menubut = "MENU";
_root.txt_hintbut = "HINT";
_root.txt_pausebut = "PAUSE";
_root.txt_undobut = "UNDO";
Stage.showMenu = true;
System.security.allowDomain("labs.test.vte.internal.popcap.com", "labs.eric.popcap.com", "labs.popcap.com", "www.popcap.com", "dl.labs.popcap.com");
trace(System.security.sandboxType);
var createJSFunction = flash.external.ExternalInterface.addCallback("jsNewTournament", this, updateScore);
_root.newHighScore = -1;
_root.functionCalled = false;
_root.normalPointsArray = new Array();
_root.bonusPointsArray = new Array();
_root.multipliersArray = new Array();
_root.totalPowerGems = 0;
_root.totalHyperGems = 0;
i = 0;
while (i < 12) {
_root.normalPointsArray[i] = 0;
_root.bonusPointsArray[i] = 0;
_root.multipliersArray[i] = 0;
i++;
}
_root.name = "";
_root.DebugMessage = "This is the Debug Window";
_quality = "HIGH";
stop();
_root.sentGamestartMessage = false;
_root.backGroundsLoading = false;
_root.theMessage = "";
_root.challenge = 2;
_root.maxMultiplier = 10;
_root.challengeTime = 1;
_root.enable_music = false;
_root.zone_api = false;
_root.configloaded = true;
_root.xdebug = true;
_root.theSharedObject = SharedObject.getLocal("scores");
if (_root.theSharedObject.data.sound == false) {
_root.isSound = false;
} else {
_root.isSound = true;
}
if (_root.theSharedObject.data.tute) {
_root.noTute = true;
} else {
_root.noTute = false;
}
_root.randomBackground = 1;
if (_root.backgroundLoaded) {
_root.randomBackground = 1;
} else {
_root.randomBackground = 1;
}
MovieClip.prototype.tabEnabled = false;
Button.prototype.tabEnabled = false;
TextField.prototype.tabEnabled = false;
_root.deluxelink = "";
if (_root.theHighScore >= 1000000) {
theText = _root.theHighScore.toString();
firstPart = theText.substr(0, 1);
secondPart = theText.substr(1, 3);
thirdPart = theText.substr(3, 3);
_root.textHighScore = (((firstPart + ",") + secondPart) + ",") + thirdPart;
} else if (_root.theHighScore >= 100000) {
theText = _root.theHighScore.toString();
firstPart = theText.substr(0, 3);
secondPart = theText.substr(3, 3);
_root.textHighScore = (firstPart + ",") + secondPart;
} else if (_root.theHighScore >= 10000) {
theText = _root.theHighScore.toString();
firstPart = theText.substr(0, 2);
secondPart = theText.substr(2, 3);
_root.textHighScore = (firstPart + ",") + secondPart;
} else if (_root.theHighScore >= 1000) {
theText = _root.theHighScore.toString();
firstPart = theText.substr(0, 1);
secondPart = theText.substr(1, 3);
_root.textHighScore = (firstPart + ",") + secondPart;
} else if (_root.theHighScore > 0) {
_root.textHighScore = _root.theHighScore.toString();
} else if (_root.theHighScore == 0) {
_root.textHighScore = "0";
} else {
_root.textHighScore = "0";
}
if (isNaN(_root.theHighScore)) {
trace("theHighScore is not a number, NaN!");
_root.textHighScore = "0";
}
lTimero = -20;
_root.introCounter = 0;
this.onEnterFrame = function () {
_root.introCounter++;
_root.configloaded = true;
amountloaded = _root.getBytesLoaded();
total = _root.getBytesTotal();
logofade.loadbar.gotoAndStop(int(100 * (amountloaded / total)));
if (lTimero < 0) {
loadCastcaner(logofade.loadbar._currentframe);
lTimero = 40;
}
if (((amountloaded >= total) && (_root.configloaded == true)) && (_root.introCounter >= 160)) {
gotoAndStop ("splash");
loadCastcaner(loadbar._currentframe);
delete this.onEnterFrame;
}
};
_global.ipb_get_gname = function () {
var _local4 = _root._url;
var _local5 = "";
var _local2 = "";
var _local6 = _local4.lastIndexOf("\\") + 1;
if ((_local6 == -1) || (_local6 == 0)) {
_local6 = _local4.lastIndexOf("/") + 1;
}
var _local3 = _local6;
var _local7 = String(_local4).length;
while (_local3 < String(_local4).length) {
_local2 = _local4.charAt(_local3);
if (_local2 == ".") {
break;
}
_local5 = _local5 + _local2;
_local3++;
}
return(_local5);
};
ipb_gname = _global.ipb_get_gname();
xx = new LoadVars();
xx.onLoad = function (success) {
if (success) {
_global.ipb_scoreVar = this.scoreVar;
}
};
fname = ((("arcade/gamedata/" + ipb_gname) + "/") + ipb_gname) + ".txt";
Frame 9
gotoAndStop ("menu");
Frame 17
function resetTimer() {
timeStart = getTimer();
pauseTimeCount = 0;
pausedAt = 0;
}
function pauseTime() {
if (pausedAt == 0) {
pausedAt = getTimer();
}
}
function resumeTime() {
if (pausedAt > 0) {
pauseTimeCount = pauseTimeCount + (getTimer() - pausedAt);
pausedAt = 0;
}
}
function returnTimer() {
timePassed = getTimer() - timeStart;
timeStart = timeStart + timePassed;
return(timePassed);
}
function returnTime(secformat) {
if (pausedAt > 0) {
tempPCount = getTimer() - pausedAt;
} else {
tempPCount = 0;
}
totTime = ((getTimer() - timeStart) - pauseTimeCount) - tempPCount;
if (secformat) {
return(Math.floor(totTime / 1000));
}
return(formatTime(totTime));
}
function formatTime(milisec) {
daysGone = Math.floor(milisec / 86400000);
hoursGone = Math.floor((milisec - (daysGone * 86400000)) / 3600000);
minsGone = Math.floor(((milisec - (hoursGone * 3600000)) - (daysGone * 86400000)) / 60000);
secsGone = Math.floor((((milisec - (minsGone * 60000)) - (hoursGone * 3600000)) - (daysGone * 86400000)) / 1000);
if (secsGone < 10) {
secsGone = "0" + secsGone;
}
if ((hoursGone > 0) && (minsGone < 10)) {
minsGone = "0" + minsGone;
}
if (daysGone > 0) {
if (minsGone < 10) {
minsGone = "0" + minsGone;
}
if (hoursGone < 10) {
hoursGone = "0" + hoursGone;
}
}
if ((hoursGone == 0) && (daysGone == 0)) {
return((minsGone + ":") + secsGone);
}
if (daysGone == 0) {
return((((hoursGone + ":") + minsGone) + ":") + secsGone);
}
return((((((daysGone + ":") + hoursGone) + ":") + minsGone) + ":") + secsGone);
}
function playSound(cName) {
_root.soundHolder[cName].playme();
}
function stopSound(cName) {
_root.soundHolder[cName].stopme();
}
function muteSounds() {
gameMutedOut = true;
stopAllSounds();
soundHolder.gotoAndStop(2);
soundTracks.stopAllMyTracks();
}
function unMuteSounds() {
if (_root.isMuted != true) {
gameMutedOut = false;
soundHolder.gotoAndStop(1);
soundTracks.resumeGameTrack();
}
}
function bTrans(fTarg) {
transblack.ftarget = fTarg;
transblack.gotoAndPlay(2);
}
function hTrans(hTarg, fTarg) {
halotrans.trantarget = hTarg;
halotrans.ftarget = fTarg;
halotrans.gotoAndPlay(2);
}
function gTrans(hTarg) {
transitionAnim.trantarget = hTarg;
transitionAnim.gotoAndPlay(2);
}
timeStart = 0;
pauseTimeCount = 0;
pausedAt = 0;
soundHolder._visible = false;
stop();
myScreenOn = "menu";
if (_root.isSound == false) {
muteSounds();
}
if ((_root.pathToFlash == null) || (_root.pathToFlash == undefined)) {
_root.pathToFlash = "";
}
if (_root.backGroundsLoading == false) {
try {
trace("Loading backgrounds");
mcLoader = new MovieClipLoader();
mcListener = new Object();
mcListener.onLoadStart = function (target_mc) {
trace("Starting load");
};
mcListener.onLoadInit = function (target_mc) {
trace("onLoadInit");
};
mcListener.onLoadComplete = function (target_mc, httpStatus) {
trace("Load complete");
};
mcListener.onLoadError = function (target_mc, errorCode, httpStatus) {
trace("Error loading backgrounds");
};
mcListener.onLoadProgress = function (target, mbytesLoaded, mbytesTotal) {
trace((("Bytes loaded: " + mbytesLoaded) + "Total bytes: ") + mbytesTotal);
};
mcLoader.addListener(mcListener);
trace(mcLoader.loadClip("bejeweledBlitz_backgrounds.swf", backgrounds));
_root.bg_bj.loadMovie("bejeweledBlitz_backgrounds.swf");
_root.backGroundsLoading = true;
} catch(myError) {
trace("error caught: " + myError);
}
}
_root.DebugMessage = unescape(_root.pathToFlash) + "arcade/gamedata/bejeweledBlitzv32Th/backgroundsaf.swf";
_root.stop();
Frame 25
myScreenOn = "menu";
helpbutf = 1;
Frame 28
myScreenOn = "menu";
Frame 30
myScreenOn = "menu";
Frame 33
myScreenOn = "game";
helpbutf = 2;
helppop.stop();
Frame 43
_quality = "HIGH";
myScreenOn = "menu";
Frame 52
gotoAndStop ("menu");
Frame 61
gotoAndStop ("menu");
Frame 71
if (_root.gs_notran == true) {
gotoAndStop ("game");
_root.gs_notran = false;
} else {
_root.hTrans(_root.gs_bb, _root.gs_ct);
}
Frame 81
roundContinue();
Frame 91
_root.isMuted = true;
muteSounds();
Frame 101
_root.isMuted = false;
unMuteSounds();
Frame 111
ppOn();
Frame 121
ppOff();
Symbol 58 MovieClip [newMedalBG] Frame 1
stop();
Symbol 58 MovieClip [newMedalBG] Frame 13
stop();
Symbol 65 MovieClip [gameover_multiplier_tooltip] Frame 1
stop();
Symbol 65 MovieClip [gameover_multiplier_tooltip] Frame 2
stop();
Symbol 67 MovieClip [gameover_postprofile] Frame 1
this.onRelease = function () {
getURL (("javascript:launchFeedForm_StarMedalFromFlash(" + _root.theHighScore) + ");");
_root.playSound("mouse_click");
};
Symbol 77 MovieClip [gameover_normaltooltip] Frame 1
stop();
Symbol 80 MovieClip [gameover_bonustooltip] Frame 1
stop();
Symbol 84 MovieClip [gameoverMultiplier] Frame 1
this.onUnload = function () {
trace("Multiplier unloaded");
};
this.onRollOver = function () {
var _local3 = "multiplierPop" + this.theNumber.text;
theMC = _parent.attachMovie("gameover_multiplier_tooltip", _local3, _parent.getNextHighestDepth());
trace(this._x);
if (this._x > 142) {
theMC._x = this._x - 160;
theMC._y = this._y - 7;
} else {
theMC.gotoAndStop(2);
theMC._x = this._x + 23;
theMC._y = this._y - 7;
}
theMC.theMessage = "All new points multiplied by " + this.theNumber.text;
};
this.onRollOut = function () {
var _local3 = "multiplierPop" + this.theNumber.text;
theMC = _parent[_local3];
theMC.removeMovieClip();
};
Symbol 116 MovieClip Frame 10
stop();
Symbol 125 MovieClip Frame 10
_parent.removeMovieClip();
Symbol 150 MovieClip [lightning] Frame 18
_parent.doneStike(this);
Symbol 150 MovieClip [lightning] Frame 32
_parent.finishStike(this);
this.removeMovieClip();
Symbol 159 MovieClip [scorepopon] Frame 23
this.removeMovieClip();
Symbol 159 MovieClip [scorepopon] Frame 44
stop();
Symbol 189 Button
on (press) {
_parent.selectGem(this);
_parent.dragGem(this);
}
on (release, releaseOutside) {
_parent.stopGemDrag();
}
Symbol 213 MovieClip [gem] Frame 1
gembut.useHandCursor = false;
stop();
Symbol 227 MovieClip [gameover_points] Frame 1
this.onRollOver = function () {
var _local3 = "points";
theMC = _parent.attachMovie("gameover_legendtooltip", _local3, _parent.getNextHighestDepth());
theMC._x = this._x - 20;
theMC._y = this._y + 20;
theMC.theMessage = "Base points earned for matching gems";
};
this.onRollOut = function () {
var _local2 = "points";
theMC = _parent[_local2];
theMC.removeMovieClip();
};
Symbol 229 MovieClip [gameover_speed] Frame 1
this.onRollOver = function () {
var _local3 = "speed";
theMC = _parent.attachMovie("gameover_legendtooltip", _local3, _parent.getNextHighestDepth());
theMC._x = this._x - 15;
theMC._y = this._y + 20;
theMC.theMessage = "Bonus points earned for matching gems quickly";
};
this.onRollOut = function () {
var _local2 = "speed";
theMC = _parent[_local2];
theMC.removeMovieClip();
};
Symbol 231 MovieClip [gameover_hyper] Frame 1
this.onRollOver = function () {
var _local3 = "hyper";
theMC = _parent.attachMovie("gameover_legendtooltip", _local3, _parent.getNextHighestDepth());
theMC._x = this._x - 20;
theMC._y = this._y + 20;
theMC.theMessage = "Created by matching 5 gems of the same color";
};
this.onRollOut = function () {
var _local2 = "hyper";
theMC = _parent[_local2];
theMC.removeMovieClip();
};
Symbol 243 MovieClip [Symbol 3] Frame 38
stop();
Symbol 244 MovieClip [anewhighscore] Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("newhighscoresound");
amplaying = false;
Symbol 245 MovieClip [warning] Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("warning1");
amplaying = false;
Symbol 252 MovieClip Frame 7
stop();
Symbol 257 MovieClip Frame 100
_root.challengeSentText = "Challenge sent!";
stop();
Symbol 264 MovieClip Frame 50
stop();
Symbol 264 MovieClip Frame 51
_parent.gotoAndPlay("menu");
Symbol 1065 MovieClip [__Packages.com.vascogames.as2.Gotya] Frame 0
class com.vascogames.as2.Gotya
{
var encryptedScore;
function Gotya () {
if (_root._url.indexOf("file://") == 0) {
debugMode = true;
}
debug("Api initialized");
}
function debug(msg) {
if (debugMode) {
trace("Gotya API :: " + msg);
}
}
function sendScore(score) {
debug((((("Score received: " + score) + " - ") + encryptScore(score)) + " ecrypt ") + md5(encryptScore(score)));
flash.external.ExternalInterface.call("vascogamessendcom", md5(encryptScore(score)), score);
}
function startGame() {
debug("Started Game");
flash.external.ExternalInterface.call("vascogamesstartcom", "1");
}
function gameOverScore(score) {
debug(("Game over score received: " + score) + " ");
flash.external.ExternalInterface.call("vascogamessendgocom", md5(encryptScore(score)), score);
}
function scoreError() {
debug("Error Score");
flash.external.ExternalInterface.call("vascogamesscerrorcom", "1");
}
function checkandaddscore(totalescore, score) {
totalescore = Number(totalescore);
score = Number(score);
var _local3 = vgscoreold.split("-vg-");
_local3 = _local3[1];
debug((((((("check " + vgscoreold) + " - ") + totalescore) + " - ") + score) + " spiltest ") + _local3);
if (String(_local3) == String(totalescore)) {
totalescore = totalescore + score;
vgscoreold = ("-vg-" + String(totalescore)) + "-vg-";
sendScore(Number(totalescore));
} else {
scoreError();
return(Number(_local3));
}
return(totalescore);
}
function encryptScore(score) {
var _local5 = score.toString();
encryptedScore = "";
var _local2 = 0;
while (_local2 < _local5.length) {
var _local3 = _local5.charAt(_local2);
var _local4 = digitsArray[0][_local3];
encryptedScore = encryptedScore + _local4;
_local2++;
}
return(encryptedScore);
}
function md5(s) {
return(binl2hex(core_md5(str2binl(s), s.length * chrsz)));
}
function core_md5(x, len) {
x[len >> 5] = x[len >> 5] | (128 << (len % 32));
x[(((len + 64) >>> 9) << 4) + 14] = len;
var _local5 = 1732584193 /* 0x67452301 */;
var _local4 = -271733879;
var _local3 = -1732584194;
var _local2 = 271733878 /* 0x10325476 */;
var _local6 = 0;
while (_local6 < x.length) {
var _local11 = _local5;
var _local10 = _local4;
var _local9 = _local3;
var _local8 = _local2;
_local5 = md5_ff(_local5, _local4, _local3, _local2, x[_local6 + 0], 7, -680876936);
_local2 = md5_ff(_local2, _local5, _local4, _local3, x[_local6 + 1], 12, -389564586);
_local3 = md5_ff(_local3, _local2, _local5, _local4, x[_local6 + 2], 17, 606105819);
_local4 = md5_ff(_local4, _local3, _local2, _local5, x[_local6 + 3], 22, -1044525330);
_local5 = md5_ff(_local5, _local4, _local3, _local2, x[_local6 + 4], 7, -176418897);
_local2 = md5_ff(_local2, _local5, _local4, _local3, x[_local6 + 5], 12, 1200080426);
_local3 = md5_ff(_local3, _local2, _local5, _local4, x[_local6 + 6], 17, -1473231341);
_local4 = md5_ff(_local4, _local3, _local2, _local5, x[_local6 + 7], 22, -45705983);
_local5 = md5_ff(_local5, _local4, _local3, _local2, x[_local6 + 8], 7, 1770035416);
_local2 = md5_ff(_local2, _local5, _local4, _local3, x[_local6 + 9], 12, -1958414417);
_local3 = md5_ff(_local3, _local2, _local5, _local4, x[_local6 + 10], 17, -42063);
_local4 = md5_ff(_local4, _local3, _local2, _local5, x[_local6 + 11], 22, -1990404162);
_local5 = md5_ff(_local5, _local4, _local3, _local2, x[_local6 + 12], 7, 1804603682);
_local2 = md5_ff(_local2, _local5, _local4, _local3, x[_local6 + 13], 12, -40341101);
_local3 = md5_ff(_local3, _local2, _local5, _local4, x[_local6 + 14], 17, -1502002290);
_local4 = md5_ff(_local4, _local3, _local2, _local5, x[_local6 + 15], 22, 1236535329);
_local5 = md5_gg(_local5, _local4, _local3, _local2, x[_local6 + 1], 5, -165796510);
_local2 = md5_gg(_local2, _local5, _local4, _local3, x[_local6 + 6], 9, -1069501632);
_local3 = md5_gg(_local3, _local2, _local5, _local4, x[_local6 + 11], 14, 643717713);
_local4 = md5_gg(_local4, _local3, _local2, _local5, x[_local6 + 0], 20, -373897302);
_local5 = md5_gg(_local5, _local4, _local3, _local2, x[_local6 + 5], 5, -701558691);
_local2 = md5_gg(_local2, _local5, _local4, _local3, x[_local6 + 10], 9, 38016083);
_local3 = md5_gg(_local3, _local2, _local5, _local4, x[_local6 + 15], 14, -660478335);
_local4 = md5_gg(_local4, _local3, _local2, _local5, x[_local6 + 4], 20, -405537848);
_local5 = md5_gg(_local5, _local4, _local3, _local2, x[_local6 + 9], 5, 568446438);
_local2 = md5_gg(_local2, _local5, _local4, _local3, x[_local6 + 14], 9, -1019803690);
_local3 = md5_gg(_local3, _local2, _local5, _local4, x[_local6 + 3], 14, -187363961);
_local4 = md5_gg(_local4, _local3, _local2, _local5, x[_local6 + 8], 20, 1163531501);
_local5 = md5_gg(_local5, _local4, _local3, _local2, x[_local6 + 13], 5, -1444681467);
_local2 = md5_gg(_local2, _local5, _local4, _local3, x[_local6 + 2], 9, -51403784);
_local3 = md5_gg(_local3, _local2, _local5, _local4, x[_local6 + 7], 14, 1735328473);
_local4 = md5_gg(_local4, _local3, _local2, _local5, x[_local6 + 12], 20, -1926607734);
_local5 = md5_hh(_local5, _local4, _local3, _local2, x[_local6 + 5], 4, -378558);
_local2 = md5_hh(_local2, _local5, _local4, _local3, x[_local6 + 8], 11, -2022574463);
_local3 = md5_hh(_local3, _local2, _local5, _local4, x[_local6 + 11], 16, 1839030562);
_local4 = md5_hh(_local4, _local3, _local2, _local5, x[_local6 + 14], 23, -35309556);
_local5 = md5_hh(_local5, _local4, _local3, _local2, x[_local6 + 1], 4, -1530992060);
_local2 = md5_hh(_local2, _local5, _local4, _local3, x[_local6 + 4], 11, 1272893353);
_local3 = md5_hh(_local3, _local2, _local5, _local4, x[_local6 + 7], 16, -155497632);
_local4 = md5_hh(_local4, _local3, _local2, _local5, x[_local6 + 10], 23, -1094730640);
_local5 = md5_hh(_local5, _local4, _local3, _local2, x[_local6 + 13], 4, 681279174);
_local2 = md5_hh(_local2, _local5, _local4, _local3, x[_local6 + 0], 11, -358537222);
_local3 = md5_hh(_local3, _local2, _local5, _local4, x[_local6 + 3], 16, -722521979);
_local4 = md5_hh(_local4, _local3, _local2, _local5, x[_local6 + 6], 23, 76029189);
_local5 = md5_hh(_local5, _local4, _local3, _local2, x[_local6 + 9], 4, -640364487);
_local2 = md5_hh(_local2, _local5, _local4, _local3, x[_local6 + 12], 11, -421815835);
_local3 = md5_hh(_local3, _local2, _local5, _local4, x[_local6 + 15], 16, 530742520);
_local4 = md5_hh(_local4, _local3, _local2, _local5, x[_local6 + 2], 23, -995338651);
_local5 = md5_ii(_local5, _local4, _local3, _local2, x[_local6 + 0], 6, -198630844);
_local2 = md5_ii(_local2, _local5, _local4, _local3, x[_local6 + 7], 10, 1126891415);
_local3 = md5_ii(_local3, _local2, _local5, _local4, x[_local6 + 14], 15, -1416354905);
_local4 = md5_ii(_local4, _local3, _local2, _local5, x[_local6 + 5], 21, -57434055);
_local5 = md5_ii(_local5, _local4, _local3, _local2, x[_local6 + 12], 6, 1700485571);
_local2 = md5_ii(_local2, _local5, _local4, _local3, x[_local6 + 3], 10, -1894986606);
_local3 = md5_ii(_local3, _local2, _local5, _local4, x[_local6 + 10], 15, -1051523);
_local4 = md5_ii(_local4, _local3, _local2, _local5, x[_local6 + 1], 21, -2054922799);
_local5 = md5_ii(_local5, _local4, _local3, _local2, x[_local6 + 8], 6, 1873313359);
_local2 = md5_ii(_local2, _local5, _local4, _local3, x[_local6 + 15], 10, -30611744);
_local3 = md5_ii(_local3, _local2, _local5, _local4, x[_local6 + 6], 15, -1560198380);
_local4 = md5_ii(_local4, _local3, _local2, _local5, x[_local6 + 13], 21, 1309151649);
_local5 = md5_ii(_local5, _local4, _local3, _local2, x[_local6 + 4], 6, -145523070);
_local2 = md5_ii(_local2, _local5, _local4, _local3, x[_local6 + 11], 10, -1120210379);
_local3 = md5_ii(_local3, _local2, _local5, _local4, x[_local6 + 2], 15, 718787259);
_local4 = md5_ii(_local4, _local3, _local2, _local5, x[_local6 + 9], 21, -343485551);
_local5 = safe_add(_local5, _local11);
_local4 = safe_add(_local4, _local10);
_local3 = safe_add(_local3, _local9);
_local2 = safe_add(_local2, _local8);
_local6 = _local6 + 16;
}
return(Array(_local5, _local4, _local3, _local2));
}
function md5_cmn(q, a, b, x, s, t) {
return(safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s), b));
}
function md5_ff(a, b, c, d, x, s, t) {
return(md5_cmn((b & c) | ((~b) & d), a, b, x, s, t));
}
function md5_gg(a, b, c, d, x, s, t) {
return(md5_cmn((b & d) | (c & (~d)), a, b, x, s, t));
}
function md5_hh(a, b, c, d, x, s, t) {
return(md5_cmn((b ^ c) ^ d, a, b, x, s, t));
}
function md5_ii(a, b, c, d, x, s, t) {
return(md5_cmn(c ^ (b | (~d)), a, b, x, s, t));
}
function safe_add(x, y) {
var _local1 = new Number((x & 65535) + (y & 65535));
var _local2 = new Number(((x >> 16) + (y >> 16)) + (_local1 >> 16));
return((_local2 << 16) | (_local1 & 65535));
}
function bit_rol(num, cnt) {
return((num << cnt) | (num >>> (32 - cnt)));
}
function str2binl(str) {
var _local4 = new Array();
var _local5 = (1 << chrsz) - 1;
var _local2 = 0;
while (_local2 < (str.length * chrsz)) {
_local4[_local2 >> 5] = _local4[_local2 >> 5] | ((str.charCodeAt(_local2 / chrsz) & _local5) << (_local2 % 32));
_local2 = _local2 + chrsz;
}
return(_local4);
}
function binl2str(bin) {
var _local4 = new String("");
var _local5 = (1 << chrsz) - 1;
var _local2 = 0;
while (_local2 < (bin.length * 32)) {
_local4 = _local4 + String.fromCharCode((bin[_local2 >> 5] >>> (_local2 % 32)) & _local5);
_local2 = _local2 + chrsz;
}
return(_local4);
}
function binl2hex(binarray) {
var _local3 = "0123456789abcdef";
var _local4 = new String("");
var _local1 = 0;
while (_local1 < (binarray.length * 4)) {
_local4 = _local4 + (_local3.charAt((binarray[_local1 >> 2] >> (((_local1 % 4) * 8) + 4)) & 15) + _local3.charAt((binarray[_local1 >> 2] >> ((_local1 % 4) * 8)) & 15));
_local1++;
}
return(_local4);
}
var debugMode = false;
var vgscoreold = "-vg-0-vg-";
var firstDigitArray = ["10f85au", "11kt50e", "12cmt5s2", "13v507", "14fc5i3", "1556f7l", "167gj81", "17yn90y", "185o3ko", "19ntakn"];
var digitsArray = [com.vascogames.as2.Gotya.prototype.firstDigitArray];
var b64pad = new String("");
var chrsz = new Number(8);
}
Symbol 1066 MovieClip [__Packages.md5] Frame 0
class md5
{
function md5 (b64pad, chrsz) {
if (b64pad != undefined) {
this.b64pad = b64pad;
}
if (((chrsz != undefined) && (chrsz == 8)) || (chrsz == 16)) {
this.chrsz = chrsz;
}
}
function hash(s) {
return(hex_md5(s));
}
function hex_md5(s) {
return(binl2hex(core_md5(str2binl(s), s.length * chrsz)));
}
function b64_md5(s) {
return(binl2b64(core_md5(str2binl(s), s.length * chrsz)));
}
function str_md5(s) {
return(binl2str(core_md5(str2binl(s), s.length * chrsz)));
}
function hex_hmac_md5(key, data) {
return(binl2hex(core_hmac_md5(key, data)));
}
function b64_hmac_md5(key, data) {
return(binl2b64(core_hmac_md5(key, data)));
}
function str_hmac_md5(key, data) {
return(binl2str(core_hmac_md5(key, data)));
}
function md5_cmn(q, a, b, x, s, t) {
return(safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s), b));
}
function md5_ff(a, b, c, d, x, s, t) {
return(md5_cmn((b & c) | ((b ^ 4294967000) & d), a, b, x, s, t));
}
function md5_gg(a, b, c, d, x, s, t) {
return(md5_cmn((b & d) | (c & (d ^ 4294967000)), a, b, x, s, t));
}
function md5_hh(a, b, c, d, x, s, t) {
return(md5_cmn((b ^ c) ^ d, a, b, x, s, t));
}
function md5_ii(a, b, c, d, x, s, t) {
return(md5_cmn(c ^ (b | (d ^ 4294967000)), a, b, x, s, t));
}
function core_md5(x, len) {
x[len >> 5] = x[len >> 5] | (128 << (len % 32));
x[(((len + 64) >>> 9) << 4) + 14] = len;
var _local2 = 1732584193 /* 0x67452301 */;
var _local3 = -271733879;
var _local4 = -1732584194;
var _local5 = 271733878 /* 0x10325476 */;
var _local6 = 0;
while (_local6 < x.length) {
var _local8 = _local2;
var _local9 = _local3;
var _local10 = _local4;
var _local11 = _local5;
_local2 = md5_ff(_local2, _local3, _local4, _local5, x[_local6 + 0], 7, -680876936);
_local5 = md5_ff(_local5, _local2, _local3, _local4, x[_local6 + 1], 12, -389564586);
_local4 = md5_ff(_local4, _local5, _local2, _local3, x[_local6 + 2], 17, 606105819);
_local3 = md5_ff(_local3, _local4, _local5, _local2, x[_local6 + 3], 22, -1044525330);
_local2 = md5_ff(_local2, _local3, _local4, _local5, x[_local6 + 4], 7, -176418897);
_local5 = md5_ff(_local5, _local2, _local3, _local4, x[_local6 + 5], 12, 1200080426);
_local4 = md5_ff(_local4, _local5, _local2, _local3, x[_local6 + 6], 17, -1473231341);
_local3 = md5_ff(_local3, _local4, _local5, _local2, x[_local6 + 7], 22, -45705983);
_local2 = md5_ff(_local2, _local3, _local4, _local5, x[_local6 + 8], 7, 1770035416);
_local5 = md5_ff(_local5, _local2, _local3, _local4, x[_local6 + 9], 12, -1958414417);
_local4 = md5_ff(_local4, _local5, _local2, _local3, x[_local6 + 10], 17, -42063);
_local3 = md5_ff(_local3, _local4, _local5, _local2, x[_local6 + 11], 22, -1990404162);
_local2 = md5_ff(_local2, _local3, _local4, _local5, x[_local6 + 12], 7, 1804603682);
_local5 = md5_ff(_local5, _local2, _local3, _local4, x[_local6 + 13], 12, -40341101);
_local4 = md5_ff(_local4, _local5, _local2, _local3, x[_local6 + 14], 17, -1502002290);
_local3 = md5_ff(_local3, _local4, _local5, _local2, x[_local6 + 15], 22, 1236535329);
_local2 = md5_gg(_local2, _local3, _local4, _local5, x[_local6 + 1], 5, -165796510);
_local5 = md5_gg(_local5, _local2, _local3, _local4, x[_local6 + 6], 9, -1069501632);
_local4 = md5_gg(_local4, _local5, _local2, _local3, x[_local6 + 11], 14, 643717713);
_local3 = md5_gg(_local3, _local4, _local5, _local2, x[_local6 + 0], 20, -373897302);
_local2 = md5_gg(_local2, _local3, _local4, _local5, x[_local6 + 5], 5, -701558691);
_local5 = md5_gg(_local5, _local2, _local3, _local4, x[_local6 + 10], 9, 38016083);
_local4 = md5_gg(_local4, _local5, _local2, _local3, x[_local6 + 15], 14, -660478335);
_local3 = md5_gg(_local3, _local4, _local5, _local2, x[_local6 + 4], 20, -405537848);
_local2 = md5_gg(_local2, _local3, _local4, _local5, x[_local6 + 9], 5, 568446438);
_local5 = md5_gg(_local5, _local2, _local3, _local4, x[_local6 + 14], 9, -1019803690);
_local4 = md5_gg(_local4, _local5, _local2, _local3, x[_local6 + 3], 14, -187363961);
_local3 = md5_gg(_local3, _local4, _local5, _local2, x[_local6 + 8], 20, 1163531501);
_local2 = md5_gg(_local2, _local3, _local4, _local5, x[_local6 + 13], 5, -1444681467);
_local5 = md5_gg(_local5, _local2, _local3, _local4, x[_local6 + 2], 9, -51403784);
_local4 = md5_gg(_local4, _local5, _local2, _local3, x[_local6 + 7], 14, 1735328473);
_local3 = md5_gg(_local3, _local4, _local5, _local2, x[_local6 + 12], 20, -1926607734);
_local2 = md5_hh(_local2, _local3, _local4, _local5, x[_local6 + 5], 4, -378558);
_local5 = md5_hh(_local5, _local2, _local3, _local4, x[_local6 + 8], 11, -2022574463);
_local4 = md5_hh(_local4, _local5, _local2, _local3, x[_local6 + 11], 16, 1839030562);
_local3 = md5_hh(_local3, _local4, _local5, _local2, x[_local6 + 14], 23, -35309556);
_local2 = md5_hh(_local2, _local3, _local4, _local5, x[_local6 + 1], 4, -1530992060);
_local5 = md5_hh(_local5, _local2, _local3, _local4, x[_local6 + 4], 11, 1272893353);
_local4 = md5_hh(_local4, _local5, _local2, _local3, x[_local6 + 7], 16, -155497632);
_local3 = md5_hh(_local3, _local4, _local5, _local2, x[_local6 + 10], 23, -1094730640);
_local2 = md5_hh(_local2, _local3, _local4, _local5, x[_local6 + 13], 4, 681279174);
_local5 = md5_hh(_local5, _local2, _local3, _local4, x[_local6 + 0], 11, -358537222);
_local4 = md5_hh(_local4, _local5, _local2, _local3, x[_local6 + 3], 16, -722521979);
_local3 = md5_hh(_local3, _local4, _local5, _local2, x[_local6 + 6], 23, 76029189);
_local2 = md5_hh(_local2, _local3, _local4, _local5, x[_local6 + 9], 4, -640364487);
_local5 = md5_hh(_local5, _local2, _local3, _local4, x[_local6 + 12], 11, -421815835);
_local4 = md5_hh(_local4, _local5, _local2, _local3, x[_local6 + 15], 16, 530742520);
_local3 = md5_hh(_local3, _local4, _local5, _local2, x[_local6 + 2], 23, -995338651);
_local2 = md5_ii(_local2, _local3, _local4, _local5, x[_local6 + 0], 6, -198630844);
_local5 = md5_ii(_local5, _local2, _local3, _local4, x[_local6 + 7], 10, 1126891415);
_local4 = md5_ii(_local4, _local5, _local2, _local3, x[_local6 + 14], 15, -1416354905);
_local3 = md5_ii(_local3, _local4, _local5, _local2, x[_local6 + 5], 21, -57434055);
_local2 = md5_ii(_local2, _local3, _local4, _local5, x[_local6 + 12], 6, 1700485571);
_local5 = md5_ii(_local5, _local2, _local3, _local4, x[_local6 + 3], 10, -1894986606);
_local4 = md5_ii(_local4, _local5, _local2, _local3, x[_local6 + 10], 15, -1051523);
_local3 = md5_ii(_local3, _local4, _local5, _local2, x[_local6 + 1], 21, -2054922799);
_local2 = md5_ii(_local2, _local3, _local4, _local5, x[_local6 + 8], 6, 1873313359);
_local5 = md5_ii(_local5, _local2, _local3, _local4, x[_local6 + 15], 10, -30611744);
_local4 = md5_ii(_local4, _local5, _local2, _local3, x[_local6 + 6], 15, -1560198380);
_local3 = md5_ii(_local3, _local4, _local5, _local2, x[_local6 + 13], 21, 1309151649);
_local2 = md5_ii(_local2, _local3, _local4, _local5, x[_local6 + 4], 6, -145523070);
_local5 = md5_ii(_local5, _local2, _local3, _local4, x[_local6 + 11], 10, -1120210379);
_local4 = md5_ii(_local4, _local5, _local2, _local3, x[_local6 + 2], 15, 718787259);
_local3 = md5_ii(_local3, _local4, _local5, _local2, x[_local6 + 9], 21, -343485551);
_local2 = safe_add(_local2, _local8);
_local3 = safe_add(_local3, _local9);
_local4 = safe_add(_local4, _local10);
_local5 = safe_add(_local5, _local11);
_local6 = _local6 + 16;
}
return(Array(_local2, _local3, _local4, _local5));
}
function core_hmac_md5(key, data) {
var _local3 = new Array(str2binl(key));
if (_local3.length > 16) {
_local3 = core_md5(_local3, key.length * chrsz);
}
var _local5 = new Array(16);
var _local4 = new Array(16);
var _local2 = 0;
while (_local2 < 16) {
_local5[_local2] = _local3[_local2] ^ 909522486;
_local4[_local2] = _local3[_local2] ^ 1549556828;
_local2++;
}
var _local6 = new Array(core_md5(_local5.concat(str2binl(data)), 512 + (data.length * chrsz)));
return(core_md5(_local4.concat(_local6), 640));
}
function safe_add(x, y) {
var _local1 = new Number((x & 65535) + (y & 65535));
var _local2 = new Number(((x >> 16) + (y >> 16)) + (_local1 >> 16));
return((_local2 << 16) | (_local1 & 65535));
}
function bit_rol(num, cnt) {
return((num << cnt) | (num >>> (32 - cnt)));
}
function str2binl(str) {
var _local3 = new Array();
var _local5 = (1 << chrsz) - 1;
var _local2 = 0;
while (_local2 < (str.length * chrsz)) {
_local3[_local2 >> 5] = _local3[_local2 >> 5] | ((str.charCodeAt(_local2 / chrsz) & _local5) << (_local2 % 32));
_local2 = _local2 + chrsz;
}
return(_local3);
}
function binl2str(bin) {
var _local3 = new String("");
var _local5 = (1 << chrsz) - 1;
var _local2 = 0;
while (_local2 < (bin.length * 32)) {
_local3 = _local3 + String.fromCharCode((bin[_local2 >> 5] >>> (_local2 % 32)) & _local5);
_local2 = _local2 + chrsz;
}
return(_local3);
}
function binl2hex(binarray) {
var _local4 = "0123456789abcdef";
var _local3 = new String("");
var _local1 = 0;
while (_local1 < (binarray.length * 4)) {
_local3 = _local3 + (_local4.charAt((binarray[_local1 >> 2] >> (((_local1 % 4) * 8) + 4)) & 15) + _local4.charAt((binarray[_local1 >> 2] >> ((_local1 % 4) * 8)) & 15));
_local1++;
}
return(_local3);
}
function binl2b64(binarray) {
var _local7 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
var _local4 = new String("");
var _local2 = 0;
while (_local2 < (binarray.length * 4)) {
var _local6 = ((((binarray[_local2 >> 2] >> (8 * (_local2 % 4))) & 255) << 16) | (((binarray[(_local2 + 1) >> 2] >> (8 * ((_local2 + 1) % 4))) & 255) << 8)) | ((binarray[(_local2 + 2) >> 2] >> (8 * ((_local2 + 2) % 4))) & 255);
var _local3 = 0;
while (_local3 < 4) {
if (((_local2 * 8) + (_local3 * 6)) > (binarray.length * 32)) {
_local4 = _local4 + b64pad;
} else {
_local4 = _local4 + _local7.charAt((_local6 >> (6 * (3 - _local3))) & 63);
}
_local3++;
}
_local2 = _local2 + 3;
}
return(_local4);
}
var b64pad = new String("");
var chrsz = new Number(8);
}
Symbol 1067 MovieClip [__Packages.multiplier] Frame 0
class multiplier
{
function multiplier () {
}
var mTimeSpace = 0;
var mColor = 0;
var mNumber = 0;
var mDrawn = false;
}
Symbol 274 MovieClip Frame 1
stop();
Symbol 292 Button
on (release) {
_root.gotya.startGame();
_root.practice = true;
_root.gameMode = "action";
if (_root.zone_api == "true") {
_root.gs_bb = 1;
_root.gs_ct = "game";
_root.GameLaunch("action");
} else {
_root.scoreTopText = "";
_root.scoreVsText = "";
_root.hTrans(_root.randomBackground, "game");
}
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 305 MovieClip Frame 44
stop();
Symbol 317 MovieClip Frame 1
stop();
Symbol 317 MovieClip Frame 4
if (_root.gameMode == "action") {
_root.bg_bj.gotoAndStop(_root.randomBackground);
} else {
_root.bg_bj.gotoAndStop(trantarget);
}
Symbol 317 MovieClip Frame 11
if (_root.gameMode == "action") {
_root.bg_bj.gotoAndStop(_root.randomBackground);
} else {
_root.bg_bj.gotoAndStop(trantarget);
}
Symbol 317 MovieClip Frame 19
if (_root.gameMode == "action") {
_root.bg_bj.gotoAndStop(_root.randomBackground);
} else {
_root.bg_bj.gotoAndStop(trantarget);
}
Symbol 317 MovieClip Frame 20
_parent.maingame.newLevel();
if (_root.gameMode == "action") {
_root.bg_bj.gotoAndStop(_root.randomBackground);
} else {
_root.bg_bj.gotoAndStop(trantarget);
}
Symbol 322 MovieClip Frame 1
stop();
Symbol 322 MovieClip Frame 2
_root.bg_bj.gotoAndStop(trantarget);
bg_bj.gotoAndStop(trantarget);
_root.playSound("halo");
_root.gotoAndStop("game");
blbut.useHandCursor = false;
Symbol 322 MovieClip Frame 17
Symbol 322 MovieClip Frame 20
bg_bj.gotoAndStop(trantarget);
_root.bg_bj.gotoAndStop(trantarget);
stop();
Symbol 326 MovieClip Frame 1
stop();
Symbol 326 MovieClip Frame 2
blbut.useHandCursor = false;
Symbol 326 MovieClip Frame 7
_root.gotoAndStop(ftarget);
Symbol 338 MovieClip Frame 1
function playme() {
mysound.start(0, 999999);
}
function stopme() {
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("playing1");
_parent.titlemus.stopme();
Symbol 342 MovieClip Frame 1
function playme() {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
};
}
function stopme() {
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("select");
Symbol 347 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("gemongem2");
amplaying = false;
Symbol 349 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("gotset2");
amplaying = false;
Symbol 352 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("gotsetbig2");
amplaying = false;
Symbol 354 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("gosound");
amplaying = false;
Symbol 357 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("Get_ready");
amplaying = false;
Symbol 359 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("Good");
amplaying = false;
Symbol 362 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("excellent1");
amplaying = false;
Symbol 364 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("Incredible");
amplaying = false;
Symbol 368 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("Level_Complete");
amplaying = false;
Symbol 371 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("combo32");
amplaying = false;
Symbol 374 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("combo42");
amplaying = false;
Symbol 377 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("combo52");
amplaying = false;
Symbol 380 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("combo62");
amplaying = false;
Symbol 383 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("combo72");
amplaying = false;
Symbol 385 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("bad2");
amplaying = false;
Symbol 388 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("hypergem_creation");
amplaying = false;
Symbol 390 MovieClip Frame 1
function playme() {
if (amplaying == false) {
amplaying = true;
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("bombexplode");
mysound.setVolume(60);
amplaying = false;
Symbol 392 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("electro_start");
amplaying = false;
Symbol 395 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("electro_explode");
amplaying = false;
Symbol 397 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("No_More_Moves");
amplaying = false;
Symbol 399 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("Time_Up");
amplaying = false;
Symbol 401 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("Puzzle_Solved");
amplaying = false;
Symbol 403 MovieClip Frame 1
function playme() {
if (amplaying == false) {
amplaying = true;
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("mainmenu_gamestart");
mysound.setVolume(60);
amplaying = false;
Symbol 405 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("mainmenu_mouseover");
amplaying = false;
Symbol 407 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("mainmenu_mouseclick");
amplaying = false;
Symbol 410 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("mainmenu_mouseoff");
amplaying = false;
Symbol 412 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("whirlpool1");
amplaying = false;
Symbol 415 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("multishot");
amplaying = false;
Symbol 418 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("explode2");
mysound.setVolume(60);
amplaying = false;
Symbol 420 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("badsw");
amplaying = false;
mysound.setVolume(140);
Symbol 422 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("speed2");
amplaying = false;
Symbol 424 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("speed3");
amplaying = false;
Symbol 426 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("speed4");
amplaying = false;
Symbol 428 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("speed5");
amplaying = false;
Symbol 430 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("speed6");
amplaying = false;
Symbol 431 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("speed7");
amplaying = false;
Symbol 432 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("speed8");
amplaying = false;
Symbol 433 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("speed9");
amplaying = false;
Symbol 434 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("speed10");
amplaying = false;
Symbol 435 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("thirtyseconds");
amplaying = false;
Symbol 436 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("oneminute");
amplaying = false;
Symbol 437 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("twominutes");
amplaying = false;
Symbol 438 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("threeminutes");
amplaying = false;
Symbol 439 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("speedUp");
amplaying = false;
Symbol 440 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("levelUpCreation");
amplaying = false;
Symbol 441 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("levelUpMatch");
amplaying = false;
Symbol 442 MovieClip Frame 1
function playme() {
if (amplaying == false) {
mysound.start(0, 1);
mysound.onSoundComplete = function () {
amplaying = false;
};
}
}
function stopme() {
amplaying = false;
delete mysound.onSoundComplete;
mysound.stop();
}
mysound = new Sound(this);
mysound.attachSound("speedDown");
amplaying = false;
Symbol 443 MovieClip Frame 1
stop();
_root.soundTracks.resumeGameTrack();
Symbol 485 Button
on (release) {
_parent._parent.play();
_root.theSharedObject.data.tute = false;
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 486 Button
on (release) {
_root.noTute = true;
_root.theSharedObject.data.tute = true;
_parent._parent.play();
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 496 Button
on (release) {
_root.noTute = true;
_parent._parent.play();
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 498 MovieClip Frame 1
gotoAndStop(_root.helpbutf);
Symbol 499 MovieClip Frame 10
stop();
Symbol 500 MovieClip Frame 11
stop();
Symbol 501 MovieClip Frame 11
stop();
Symbol 502 MovieClip Frame 35
stop();
Symbol 503 MovieClip Frame 11
stop();
Symbol 508 MovieClip Frame 1
if (_root.gameMode == "action") {
}
Symbol 508 MovieClip Frame 44
stop();
Symbol 508 MovieClip Frame 71
if (_parent.helpbutf == 2) {
_parent.maingame.helpBackGame();
} else if (_root.zone_api == "true") {
_root.gs_bb = 1;
_root.gs_ct = "game";
_root.gs_notran = true;
_root.GameLaunch();
} else if (_root.gameMode == "action") {
if (_root.practice) {
_root.gotoAndStop("game");
} else if (_root.emailChallenge == 2) {
_root.gotoAndStop("challenge2");
_root.bg_bj.gotoAndStop(1);
} else {
_root.gotoAndStop("challenge");
}
} else {
_root.gotoAndStop("game");
}
Symbol 508 MovieClip Frame 72
stop();
Symbol 514 Button
on (release) {
_root.maingame.findHint();
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 523 MovieClip Frame 1
stop();
Symbol 523 MovieClip Frame 12
gotoAndPlay (2);
Symbol 526 MovieClip Frame 1
stop();
Symbol 526 MovieClip Frame 12
gotoAndPlay (2);
Symbol 527 MovieClip Frame 1
stop();
Symbol 530 MovieClip Frame 1
stop();
Symbol 603 Button
on (release) {
_parent.wrongpiece._visible = true;
}
Symbol 611 MovieClip Frame 1
stop();
Symbol 611 MovieClip Frame 20
stop();
Symbol 611 MovieClip Frame 33
stop();
Symbol 614 MovieClip Frame 1
stop();
Symbol 614 MovieClip Frame 2
stop();
Symbol 615 Button
on (rollOver, dragOver) {
_parent.completeanim.sgem2.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim.sgem2.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece._visible = true;
}
Symbol 616 Button
on (rollOver, dragOver) {
_parent.completeanim.sgem3.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim.sgem3.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece._visible = true;
}
Symbol 617 Button
on (rollOver, dragOver) {
_parent.completeanim.sgem1.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim.sgem1.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece._visible = true;
}
Symbol 618 Button
on (rollOver, dragOver) {
_parent.completeanim.bgem2.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim.bgem2.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece._visible = true;
}
Symbol 619 Button
on (rollOver, dragOver) {
_parent.completeanim.bgem3.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim.bgem3.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece._visible = true;
}
Symbol 620 Button
on (press) {
_root.playSound("selectgem");
_parent.clickhere.play();
_parent.clicktypes.play();
_parent.completeanim.bgem1.gotoAndStop(3);
play();
}
on (rollOver, dragOver) {
_parent.completeanim.bgem1.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim.bgem1.gotoAndStop(1);
}
Symbol 621 Button
on (press) {
_parent.wrongpiece._visible = true;
}
on (rollOver, dragOver) {
_parent.completeanim.sgem2.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim.sgem2.gotoAndStop(1);
}
Symbol 622 Button
on (press) {
_parent.wrongpiece._visible = true;
}
on (rollOver, dragOver) {
_parent.completeanim.sgem3.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim.sgem3.gotoAndStop(1);
}
Symbol 623 Button
on (press) {
_root.playSound("selectgem");
_parent.completeanim.play();
_parent.clickhere.gotoAndPlay(21);
_parent.cleartxtanim.play();
}
on (rollOver, dragOver) {
_parent.completeanim.sgem1.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim.sgem1.gotoAndStop(1);
}
Symbol 624 Button
on (press) {
_parent.wrongpiece._visible = true;
}
on (rollOver, dragOver) {
_parent.completeanim.bgem2.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim.bgem2.gotoAndStop(1);
}
Symbol 625 Button
on (press) {
_parent.wrongpiece._visible = true;
}
on (rollOver, dragOver) {
_parent.completeanim.bgem3.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim.bgem3.gotoAndStop(1);
}
Symbol 626 Button
on (press) {
_parent.wrongpiece._visible = true;
}
Symbol 627 MovieClip Frame 1
stop();
Symbol 627 MovieClip Frame 2
stop();
Symbol 681 MovieClip Frame 1
stop();
Symbol 681 MovieClip Frame 2
stop();
Symbol 681 MovieClip Frame 3
stop();
Symbol 681 MovieClip Frame 4
stop();
Symbol 703 MovieClip Frame 1
stop();
Symbol 703 MovieClip Frame 2
stop();
Symbol 705 MovieClip Frame 1
stop();
Symbol 705 MovieClip Frame 2
clrb.useHandCursor = false;
Symbol 705 MovieClip Frame 11
_root.playSound("gotset");
Symbol 705 MovieClip Frame 22
stop();
_parent.gotoAndStop(2);
Symbol 716 Button
on (release) {
this._visible = false;
}
Symbol 720 MovieClip Frame 1
clrb.useHandCursor = false;
Symbol 727 Button
on (release) {
_parent.gotoAndStop(1);
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 728 Button
on (release) {
_parent._parent._parent._parent._parent.puzzFirstTuteEnd();
_parent._parent.gotoAndStop(1);
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 731 MovieClip Frame 1
clrb.useHandCursor = false;
clrb2.useHandCursor = false;
Symbol 732 MovieClip Frame 1
stop();
clickhere.gotoAndStop(1);
clickright.gotoAndStop(1);
completeanim.gotoAndStop(1);
cleartxtanim.gotoAndStop(1);
wrongpiece._visible = false;
clrb.useHandCursor = false;
clrb2.useHandCursor = false;
Symbol 732 MovieClip Frame 2
clrb.useHandCursor = false;
clrb2.useHandCursor = false;
Symbol 733 Button
on (release) {
_parent.wrongpiece2._visible = true;
}
Symbol 734 Button
on (rollOver, dragOver) {
_parent.completeanim2.rgem1.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim2.rgem1.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece2._visible = true;
}
Symbol 735 Button
on (rollOver, dragOver) {
_parent.completeanim2.bgem2.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim2.bgem2.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece2._visible = true;
}
Symbol 736 Button
on (rollOver, dragOver) {
_parent.completeanim2.rgem2.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim2.rgem2.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece2._visible = true;
}
Symbol 737 Button
on (rollOver, dragOver) {
_parent.completeanim2.bgem3.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim2.bgem3.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece2._visible = true;
}
Symbol 738 Button
on (rollOver, dragOver) {
_parent.completeanim2.rgem3.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim2.rgem3.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece2._visible = true;
}
Symbol 739 Button
on (rollOver, dragOver) {
_parent.completeanim2.bgem4.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim2.bgem4.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece2._visible = true;
}
Symbol 740 Button
on (rollOver, dragOver) {
_parent.completeanim2.ogem2.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim2.ogem2.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece2._visible = true;
}
Symbol 741 Button
on (rollOver, dragOver) {
_parent.completeanim2.bgem5.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim2.bgem5.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece2._visible = true;
}
Symbol 742 Button
on (rollOver, dragOver) {
_parent.completeanim2.bgem6.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim2.bgem6.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece2._visible = true;
}
Symbol 743 Button
on (rollOver, dragOver) {
_parent.completeanim2.ogem1.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim2.ogem1.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece2._visible = true;
}
Symbol 744 Button
on (press) {
_root.playSound("selectgem");
_parent.clickhere2.play();
_parent.clicktypes2.play();
_parent.completeanim2.bgem1.gotoAndStop(3);
play();
}
on (rollOver, dragOver) {
_parent.completeanim2.bgem1.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim2.bgem1.gotoAndStop(1);
}
Symbol 745 Button
on (rollOver, dragOver) {
_parent.completeanim2.rgem1.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim2.rgem1.gotoAndStop(1);
}
on (press) {
_root.playSound("selectgem");
_parent.completeanim2.play();
_parent.clickhere2.gotoAndPlay(21);
play();
}
Symbol 746 Button
on (press) {
_root.playSound("selectgem");
_parent.clickhere2.gotoAndPlay(45);
_parent.completeanim2.bgem1.gotoAndStop(5);
play();
}
Symbol 747 Button
on (rollOver, dragOver) {
_parent.completeanim2.ogem2.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim2.ogem2.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece2._visible = true;
}
Symbol 748 Button
on (press) {
_parent.clickhere2.play();
_parent.completeanim2.bgem1.gotoAndStop(5);
}
Symbol 749 Button
on (rollOver, dragOver) {
_parent.completeanim2.ogem2.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim2.ogem2.gotoAndStop(1);
}
on (press) {
_root.playSound("selectgem");
_parent.completeanim2.play();
}
Symbol 750 MovieClip Frame 1
stop();
Symbol 750 MovieClip Frame 2
stop();
Symbol 750 MovieClip Frame 3
stop();
Symbol 750 MovieClip Frame 4
stop();
Symbol 754 MovieClip Frame 1
stop();
Symbol 754 MovieClip Frame 2
stop();
Symbol 754 MovieClip Frame 3
stop();
Symbol 754 MovieClip Frame 4
stop();
Symbol 754 MovieClip Frame 5
stop();
Symbol 806 MovieClip Frame 1
stop();
Symbol 806 MovieClip Frame 2
stop();
Symbol 807 MovieClip Frame 1
stop();
Symbol 807 MovieClip Frame 2
clrb.useHandCursor = false;
Symbol 807 MovieClip Frame 11
bgem1.gotoAndStop(4);
_root.playSound("createpower");
Symbol 807 MovieClip Frame 25
stop();
_root.playSound("gemclick");
Symbol 807 MovieClip Frame 26
clrb.useHandCursor = false;
Symbol 807 MovieClip Frame 36
_parent._parent._parent._parent._parent.puzzTutetwo();
Symbol 807 MovieClip Frame 37
_parent.clickhere2.play();
_root.playSound("bombexplosion");
Symbol 807 MovieClip Frame 56
_parent.gotoAndStop(2);
Symbol 808 MovieClip Frame 1
stop();
Symbol 808 MovieClip Frame 20
stop();
Symbol 808 MovieClip Frame 44
stop();
Symbol 808 MovieClip Frame 65
stop();
Symbol 808 MovieClip Frame 71
stop();
Symbol 812 Button
on (release) {
_parent.gotoAndStop(1);
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 813 Button
on (release) {
_parent._parent._parent._parent._parent.forcePuzzleLevel();
_parent._parent.gotoAndStop(1);
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 816 MovieClip Frame 1
clrb.useHandCursor = false;
clrb2.useHandCursor = false;
Symbol 817 MovieClip Frame 1
stop();
clickhere2.gotoAndStop(1);
clickright2.gotoAndStop(1);
completeanim2.gotoAndStop(1);
cleartxtanim2.gotoAndStop(1);
wrongpiece2._visible = false;
clrb.useHandCursor = false;
clrb2.useHandCursor = false;
Symbol 817 MovieClip Frame 2
clrb.useHandCursor = false;
clrb2.useHandCursor = false;
Symbol 818 Button
on (release) {
_parent.wrongpiece3._visible = true;
}
Symbol 819 Button
on (rollOver, dragOver) {
_parent.completeanim3.ogem2.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim3.ogem2.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece3._visible = true;
}
Symbol 820 Button
on (rollOver, dragOver) {
_parent.completeanim3.ogem3.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim3.ogem3.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece3._visible = true;
}
Symbol 821 Button
on (rollOver, dragOver) {
_parent.completeanim3.rgem2.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim3.rgem2.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece3._visible = true;
}
Symbol 822 Button
on (rollOver, dragOver) {
_parent.completeanim3.rgem3.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim3.rgem3.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece3._visible = true;
}
Symbol 823 Button
on (rollOut, dragOut) {
_parent.completeanim3.ogem4.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece3._visible = true;
}
on (rollOver, dragOver) {
_parent.completeanim3.ogem4.gotoAndStop(2);
}
Symbol 824 Button
on (rollOver, dragOver) {
_parent.completeanim3.rgem4.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim3.rgem4.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece3._visible = true;
}
Symbol 825 Button
on (rollOver, dragOver) {
_parent.completeanim3.rgem5.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim3.rgem5.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece3._visible = true;
}
Symbol 826 Button
on (rollOver, dragOver) {
_parent.completeanim3.ogem5.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim3.ogem5.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece3._visible = true;
}
Symbol 827 Button
on (rollOver, dragOver) {
_parent.completeanim3.ogem1.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim3.ogem1.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece3._visible = true;
}
Symbol 828 Button
on (press) {
_root.playSound("selectgem");
_parent.completeanim3.rgem1.gotoAndStop(3);
_parent.clickhere3.play();
play();
}
on (rollOver, dragOver) {
_parent.completeanim3.rgem1.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim3.rgem1.gotoAndStop(1);
}
Symbol 829 Button
on (rollOver, dragOver) {
_parent.completeanim3.ogem4.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim3.ogem4.gotoAndStop(1);
}
on (press) {
_root.playSound("selectgem");
_parent.completeanim3.play();
_parent.completeanim3.rgem1.gotoAndStop(3);
_parent.clickhere3.play();
play();
}
Symbol 830 Button
on (rollOver, dragOver) {
_parent.completeanim3.ogem5.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim3.ogem5.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece3._visible = true;
}
Symbol 831 Button
on (press) {
_parent.wrongpiece3._visible = true;
}
Symbol 832 Button
on (press) {
_root.playSound("selectgem");
_parent.clickhere3.gotoAndPlay(55);
play();
_parent.completeanim3.rgem1.gotoAndStop(6);
}
Symbol 833 Button
on (press) {
_parent.wrongpiece3._visible = true;
}
Symbol 834 Button
on (rollOver, dragOver) {
_parent.completeanim3.ogem4.gotoAndStop(2);
}
on (rollOut, dragOut) {
_parent.completeanim3.ogem4.gotoAndStop(1);
}
on (press) {
_parent.wrongpiece3._visible = true;
}
Symbol 835 Button
on (press) {
_root.playSound("selectgem");
_parent.completeanim3.play();
_parent.clickhere3.play();
play();
}
Symbol 836 MovieClip Frame 1
stop();
Symbol 836 MovieClip Frame 2
stop();
Symbol 836 MovieClip Frame 3
stop();
Symbol 836 MovieClip Frame 4
stop();
Symbol 836 MovieClip Frame 5
stop();
Symbol 846 MovieClip Frame 1
stop();
Symbol 846 MovieClip Frame 2
clrb.useHandCursor = false;
Symbol 846 MovieClip Frame 11
rgem1.gotoAndStop(4);
_root.playSound("createhyper");
Symbol 846 MovieClip Frame 23
stop();
_root.playSound("gemclick");
Symbol 846 MovieClip Frame 24
clrb.useHandCursor = false;
Symbol 846 MovieClip Frame 33
rgem1.gotoAndStop(4);
_root.playSound("hyperstart");
_root.playSound("hyperzap");
Symbol 846 MovieClip Frame 54
_parent._parent._parent._parent._parent.puzzTutethree();
Symbol 846 MovieClip Frame 58
_parent.gotoAndStop(2);
Symbol 847 MovieClip Frame 1
stop();
Symbol 847 MovieClip Frame 20
stop();
Symbol 847 MovieClip Frame 44
stop();
Symbol 847 MovieClip Frame 54
stop();
Symbol 847 MovieClip Frame 65
stop();
Symbol 847 MovieClip Frame 76
stop();
Symbol 851 MovieClip Frame 1
stop();
clickhere3.gotoAndStop(1);
clickright3.gotoAndStop(1);
completeanim3.gotoAndStop(1);
cleartxtanim3.gotoAndStop(1);
wrongpiece3._visible = false;
clrb.useHandCursor = false;
clrb2.useHandCursor = false;
Symbol 851 MovieClip Frame 2
clrb.useHandCursor = false;
clrb2.useHandCursor = false;
Symbol 852 MovieClip Frame 2
stop();
noclicky.useHandCursor = false;
Symbol 852 MovieClip Frame 3
noclicky.useHandCursor = false;
Symbol 852 MovieClip Frame 4
noclicky.useHandCursor = false;
Symbol 855 MovieClip Frame 1
if (_root.gameMode == "puzzle") {
gotoAndStop (2);
} else {
stop();
}
Symbol 870 MovieClip Frame 1
gotoAndStop(_root.theMedalFrame);
Symbol 871 MovieClip Frame 1
if (_root.ingameMedal) {
gotoAndPlay (30);
}
Symbol 871 MovieClip Frame 59
if (_root.ingameMedal) {
stop();
}
Symbol 872 MovieClip Frame 1
stop();
Symbol 872 MovieClip Frame 16
stop();
Symbol 889 MovieClip Frame 1
stop();
Symbol 890 MovieClip Frame 1
stop();
Symbol 891 MovieClip Frame 1
stop();
Symbol 892 MovieClip Frame 1
stop();
Symbol 893 MovieClip Frame 1
stop();
Symbol 894 MovieClip Frame 1
stop();
Symbol 895 MovieClip Frame 1
stop();
Symbol 910 Button
on (release) {
trace("cock");
_parent._parent._parent.puzzleForceLevelStart(1, true);
}
Symbol 911 Button
on (release) {
_parent._parent._parent.puzzleForceLevelStart(2, true);
}
Symbol 912 Button
on (release) {
_parent._parent._parent.puzzleForceLevelStart(3, true);
}
Symbol 913 Button
on (release) {
_parent._parent._parent.puzzleForceLevelStart(4, true);
}
Symbol 914 Button
on (release) {
_parent._parent._parent.puzzleForceLevelStart(5, true);
}
Symbol 915 Button
on (release) {
_parent._parent._parent.puzzleForceLevelStart(6, true);
}
Symbol 916 Button
on (release) {
_parent._parent._parent.puzzleForceLevelStart(7, true);
}
Symbol 918 MovieClip Frame 1
if (_root.gameMode == "puzzle") {
gotoAndStop (2);
} else {
stop();
}
newMedal._visible = false;
newMedalShine._visible = false;
Symbol 919 MovieClip Frame 1
stop();
Symbol 919 MovieClip Frame 5
_root.bg_bj.gotoAndStop(_root.randomBackground);
Symbol 919 MovieClip Frame 22
stop();
if (_root.gameMode == "puzzle") {
_parent.puzzleForcePosition();
}
Symbol 920 Button
on (release) {
_parent.actionResume();
}
Symbol 923 Button
on (release) {
_root.deluxeClick();
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 924 Button
on (release) {
_root.bTrans("menu");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 934 MovieClip Frame 1
stop();
Symbol 934 MovieClip Frame 3
blubut.useHandCursor = false;
Symbol 935 MovieClip Frame 2
function boardFill(builder, forced, withtimer) {
if ((((multiplierTime <= 0) && (_root.theGems >= gemsForMultiplier)) && (levelOn <= 9)) && (!noMultiplier)) {
_root.theGems = 0;
multiplierTime = 10000;
needLevelUpGem = 1;
noMultiplier = true;
}
levelUpDelay = 1;
myNewGems = [];
lc = 0;
while (lc < boardWidth) {
gemsPlaced = 0;
yBoost = 0;
lr = boardHeight - 1;
while (lr > -1) {
if (boardArray[lc][lr] == 0) {
myGem = newGem(lc, lr, builder);
myNewGems.push(myGem);
boardArray[lc][lr] = myGem;
gemsPlaced++;
yBoost = yBoost + (random(5) * 10);
myGem._y = (boardY - (gemsPlaced * (tileHeight * 1.5))) - yBoost;
if (forced != undefined) {
myGem.dSpeed = forced;
myGem.dtimer = withtimer;
withtimer++;
} else {
myGem.dSpeed = dropOnSpeed;
myGem.dtimer = (40 - (lr * 2)) + random(lr / 2);
}
if (myGem.myType > 9) {
myGem.myType = myGem.myType - 10;
myGem.gotoAndStop(myGem.myType);
makeMeBang(myGem);
myGem.gemSelect._visible = false;
myGem.gem.gotoAndStop(1);
} else if (myGem.myType == 8) {
makeMeHyper(myGem);
}
for (cm in randySpecials) {
if ((randySpecials[cm][0] == lr) && (randySpecials[cm][1] == lc)) {
if (randySpecials[cm][2] == "bomb") {
makeMeBang(myGem);
continue;
}
makeMeHyper(myGem);
}
}
myGem._x = myGem.xTarg;
dropArray.push(myGem);
}
lr--;
}
lc++;
}
randySpecials = [];
puzzResetOrg = false;
checkBoardDead = findMatchForMe();
if (checkBoardDead == false) {
if ((levelOn == 1) || (_root.gameMode == "action")) {
while (findMatchForMe() == false) {
i = 0;
while (i < myNewGems.length) {
myNewGems[i].myType = random(7) + 1;
myNewGems[i].gotoAndStop(myNewGems[i].myType);
myNewGems[i].gem.levelup._visible = false;
myNewGems[i].gem.levelX._visible = false;
myNewGems[i].gem.levelText._visible = false;
glowOff(myNewGems[i]);
i++;
}
}
}
}
}
function randomSpecials() {
randySpecials = [];
while (numBomb > 0) {
newLoc = [random(boardWidth), random(boardHeight), "bomb"];
prevSpec = false;
for (rcd in randySpecials) {
if ((randySpecials[rdc] == newLoc[0]) && (randySpecials[rdc] == newLoc[1])) {
prevSpec = true;
}
}
if (prevSpec == false) {
randySpecials.push(newLoc);
numBomb--;
}
}
while (numHyper > 0) {
newLoc = [random(boardWidth), random(boardHeight), "hyper"];
prevSpec = false;
for (rcd in randySpecials) {
if ((randySpecials[rdc] == newLoc[0]) && (randySpecials[rdc] == newLoc[1])) {
prevSpec = true;
}
}
if (prevSpec == false) {
randySpecials.push(newLoc);
numHyper--;
}
}
}
function sortBoard() {
casCounty = 0;
bl = 0;
while (bl < boardWidth) {
mCount = 0;
dcount = 0;
lr = boardHeight - 1;
while (lr > -1) {
dcount++;
if (boardArray[bl][lr] == "x") {
boardArray[bl].splice(lr, 1);
mCount++;
dcount = 0;
} else if ((boardArray[bl][lr].myType == 9) && (boardArray[bl][lr - 1].myType != 9)) {
boardArray[bl].splice(lr, 1);
mCount++;
dcount = 0;
} else if (mCount > 0) {
if (((boardArray[bl][lr] != undefined) && (boardArray[bl][lr] != "")) && (boardArray[bl][lr] != "x")) {
if (boardArray[bl][lr].dSpeed == 0) {
boardArray[bl][lr].dSpeed = dropRegMatch;
boardArray[bl][lr].dtimer = dcount;
}
dropArray.push(boardArray[bl][lr]);
}
}
lr--;
}
casCounty = casCounty + mCount;
while (mCount > 0) {
boardArray[bl].unshift(0);
mCount--;
}
lr = boardHeight - 1;
while (lr > -1) {
setTargs(boardArray[bl][lr], bl, lr);
lr--;
}
bl++;
}
boardFill(false, dropRegMatch, 0);
}
function resetBoard() {
tAr = [];
cc = 0;
while (cc < boardWidth) {
cAr = [];
cr = 0;
while (cr < boardHeight) {
cAr.push(0);
cr++;
}
tAr.push(cAr);
cc++;
}
return(tAr);
}
function dragGem(dGem) {
if ((dGem == swapGem1) || (dGem == swapGem2)) {
return(false);
}
gemDragging = true;
gemDragTarg = dGem;
}
function runGemDrag() {
if ((gemDragging == true) && (gemDragTarg != "")) {
dragNeigh = getGemNeighs(gemDragTarg);
mxTile = Math.floor((_xmouse - 14) / tileWidth);
myTile = Math.floor(_ymouse / tileHeight);
for (dgc in dragNeigh) {
if ((dragNeigh[dgc].myRow == myTile) && (dragNeigh[dgc].myCol == mxTile)) {
selectGem(dragNeigh[dgc]);
stopGemDrag();
return(undefined);
}
}
} else {
gemDragging = false;
}
}
function stopGemDrag() {
gemDragging = false;
gemDragTarg = "";
}
function addBombCol(newNum) {
inAr = false;
for (ab in bombCols) {
if (bombCols[ab] == newNum) {
inAr = true;
}
}
if (inAr != true) {
bombCols.push(newNum);
}
bombCols.sort();
}
function erPluster() {
for (fP in forcePluster) {
forcePluster[fP].queueMe = false;
}
}
function wipeGems(gArray) {
autoHintTimer = 0;
xtot = 0;
ytot = 0;
numG = 0;
forceSoverX = false;
soverx = 0;
sovery = 0;
gCol = gArray[0].myType;
detCheck = [];
for (tg in gArray) {
if (amIPlus(gArray[tg]) && (gArray[tg].bangMe != true)) {
gArray[tg].queueMe = true;
makeMeBang(gArray[tg]);
forcePluster.push(gArray[tg]);
continue;
}
detCheck.push(gArray[tg]);
}
nobomb = true;
gArray = bangGemmer(false, gArray);
if (nobomb == true) {
bombcombo = 0;
}
gemCounter = 0;
for (gr in gArray) {
gemCounter++;
rGem = gArray[gr];
if (rGem.isLevelUp) {
gotLevelUpGem = false;
needLevelUp = true;
levelingUp++;
matchedLevelUp = true;
theTimeSpace = int((runningTime - 2000) / 5000);
if (theTimeSpace > 11) {
theTimeSpace = 11;
}
var _local3 = new multiplier();
_local3.mTimeSpace = theTimeSpace;
_local3.mColor = gArray[tg].myType;
_local3.mNumber = levelOn + levelingUp;
multipliersArray.push(_local3);
}
if (needLevelUp) {
needLevelUp = false;
levelOn = levelOn + levelingUp;
levelText = levelText + levelingUp;
levelingUp = 0;
textPop(9);
}
if (((rGem != undefined) && (boardArray[rGem.myCol][rGem.myRow] != "x")) && (rGem.queueMe != true)) {
if (rGem.myRow != undefined) {
xtot = xtot + rGem.myRow;
ytot = ytot + rGem.myCol;
}
numG++;
_root.gemsCollected++;
theGems++;
_root.theGems++;
boardArray[rGem.myCol][rGem.myRow] = "x";
gemsShrinking.push(rGem);
}
}
if (numG > 0) {
if (forceSoverX == true) {
displayScore(calcScore(masterGemMatchScore, nobomb), gCol, soverx, sovery);
} else {
displayScore(calcScore(masterGemMatchScore, nobomb), gCol, ((ytot * tileWidth) / numG) + (tileWidth / 2), ((xtot * tileHeight) / numG) + (tileWidth / 2));
}
if (madeHyper == true) {
_root.playSound("createhyper");
} else if (madeBoom == true) {
_root.playSound("createpower");
} else if (matchedLevelUp) {
_root.playSound("speedUp");
matchedLevelUp = false;
} else if (combocount < 3) {
if (numG < 4) {
if (matchMultiplier > 10) {
_root.playSound("speed10");
} else {
switch (matchMultiplier) {
case 1 :
_root.playSound("gotset");
break;
case 2 :
_root.playSound("speed2");
break;
case 3 :
_root.playSound("speed3");
break;
case 4 :
_root.playSound("speed4");
break;
case 5 :
_root.playSound("speed5");
break;
case 6 :
_root.playSound("speed6");
break;
case 7 :
_root.playSound("speed7");
break;
case 8 :
_root.playSound("speed8");
break;
case 9 :
_root.playSound("speed9");
break;
case 10 :
_root.playSound("speed10");
break;
default :
_root.playSound("gotset");
}
}
} else {
_root.playSound("gotsetbig");
}
} else if (combocount < 4) {
_root.playSound("combo3");
} else if (combocount < 5) {
_root.playSound("combo4");
} else if (combocount < 6) {
_root.playSound("combo5");
} else if (combocount < 7) {
_root.playSound("combo6");
} else {
_root.playSound("combo7");
}
madeHyper = false;
madeBoom = false;
}
if (bombQueue.length > 0) {
gamePhase = "bombQ";
} else {
gamePhase = "gemshrink";
}
removeAllHints();
}
function gemShrink() {
gLen = gemsShrinking.length;
for (gg in gemsShrinking) {
gsRef = gemsShrinking[gg];
gsRef._xscale = gsRef._xscale - 15;
gsRef._yscale = gsRef._yscale - 15;
if (((gsRef._xscale < 5) || (gsRef == undefined)) || (gsRef._xscale == undefined)) {
gemsShrinking.splice(gg, 1);
gsRef.removeMovieClip();
}
}
if (gemsShrinking.length < 1) {
gamePhase = "drop";
sortBoard();
}
}
function selectGem(sGem) {
if (theTime <= 0) {
return(undefined);
}
if (hackSel < 1) {
deHighAll = false;
if ((sGem == swapGem1) || (sGem == swapGem2)) {
return(false);
}
if (_root.cheatsOn == true) {
if (Key.isDown(16)) {
makeMeBang(sGem);
return(undefined);
}
if (Key.isDown(17)) {
makeLevelUp(sGem);
return(undefined);
}
if (Key.isDown(18)) {
makeMeHyper(sGem);
return(undefined);
}
if (Key.isDown(49)) {
sGem.myType = 1;
sGem.gotoAndStop(sGem.myType);
sGem.gem.gotoAndStop(1);
sGem.exploSpark.gotoAndStop(1);
sGem.exploSpark._visible = false;
sGem.pglow.gotoAndStop(1);
sGem.pglow._visible = false;
sGem.gem.levelX._visible = false;
sGem.gem.levelText._visible = false;
sGem.gem.levelup._visible = false;
sGem.colorGlow._visible = false;
return(undefined);
}
if (Key.isDown(50)) {
sGem.myType = 2;
sGem.gotoAndStop(sGem.myType);
sGem.gem.gotoAndStop(1);
sGem.exploSpark.gotoAndStop(1);
sGem.exploSpark._visible = false;
sGem.pglow.gotoAndStop(1);
sGem.pglow._visible = false;
sGem.gem.levelX._visible = false;
sGem.gem.levelText._visible = false;
sGem.gem.levelup._visible = false;
sGem.colorGlow._visible = false;
return(undefined);
}
if (Key.isDown(51)) {
sGem.myType = 3;
sGem.gotoAndStop(sGem.myType);
sGem.gem.gotoAndStop(1);
sGem.exploSpark.gotoAndStop(1);
sGem.exploSpark._visible = false;
sGem.pglow.gotoAndStop(1);
sGem.pglow._visible = false;
sGem.gem.levelX._visible = false;
sGem.gem.levelText._visible = false;
sGem.gem.levelup._visible = false;
sGem.colorGlow._visible = false;
return(undefined);
}
if (Key.isDown(52)) {
sGem.myType = 4;
sGem.gotoAndStop(sGem.myType);
sGem.gem.gotoAndStop(1);
sGem.exploSpark.gotoAndStop(1);
sGem.exploSpark._visible = false;
sGem.pglow.gotoAndStop(1);
sGem.pglow._visible = false;
sGem.gem.levelX._visible = false;
sGem.gem.levelText._visible = false;
sGem.gem.levelup._visible = false;
sGem.colorGlow._visible = false;
return(undefined);
}
if (Key.isDown(53)) {
sGem.myType = 5;
sGem.gotoAndStop(sGem.myType);
sGem.gem.gotoAndStop(1);
sGem.exploSpark.gotoAndStop(1);
sGem.exploSpark._visible = false;
sGem.pglow.gotoAndStop(1);
sGem.pglow._visible = false;
sGem.gem.levelX._visible = false;
sGem.gem.levelText._visible = false;
sGem.gem.levelup._visible = false;
sGem.colorGlow._visible = false;
return(undefined);
}
if (Key.isDown(54)) {
sGem.myType = 6;
sGem.gotoAndStop(sGem.myType);
sGem.gem.gotoAndStop(1);
sGem.exploSpark.gotoAndStop(1);
sGem.exploSpark._visible = false;
sGem.pglow.gotoAndStop(1);
sGem.pglow._visible = false;
sGem.gem.levelX._visible = false;
sGem.gem.levelText._visible = false;
sGem.gem.levelup._visible = false;
sGem.colorGlow._visible = false;
return(undefined);
}
if (Key.isDown(55)) {
sGem.myType = 7;
sGem.gotoAndStop(sGem.myType);
sGem.gem.gotoAndStop(1);
sGem.exploSpark.gotoAndStop(1);
sGem.exploSpark._visible = false;
sGem.pglow.gotoAndStop(1);
sGem.pglow._visible = false;
sGem.gem.levelX._visible = false;
sGem.gem.levelText._visible = false;
sGem.gem.levelup._visible = false;
sGem.colorGlow._visible = false;
return(undefined);
}
}
if (gemHigh1 == sGem) {
deHighGem(gemHigh1);
gemHigh1 = "";
} else if ((gemHigh1 != "") && (gamePhase == "norm")) {
foundA = false;
myN = getGemNeighs(sGem);
for (nn in myN) {
if (myN[nn] == gemHigh1) {
gemHigh2 = sGem;
highGem(sGem);
swapGem1 = gemHigh1;
swapGem2 = gemHigh2;
swapGem1.tG = gemHigh2;
swapGem2.tG = gemHigh1;
swapGemAr = [swapGem1, swapGem2];
gemHigh1 = "";
gemHigh2 = "";
gamePhase = "gemswap";
swapDirection = "first";
foundA = true;
removeAllHints();
}
}
if (foundA == false) {
deHighGem(gemHigh1);
deHighGem(gemHigh2);
gemHigh1 = "";
gemHigh2 = "";
deHighAll = true;
}
} else if (gemHigh1 == "") {
if (sGem.myType != 9) {
highGem(sGem);
gemHigh1 = sGem;
_root.playSound("selectgem");
}
}
if (deHighAll == true) {
selectGem(sGem);
deHighAll = false;
}
}
}
function swapGemVars(g1, g2, noTarg) {
sc = g1.myCol;
sr = g1.myRow;
g1.myCol = g2.myCol;
g1.myRow = g2.myRow;
boardArray[g1.myCol][g1.myRow] = g1;
g2.myCol = sc;
g2.myRow = sr;
boardArray[g2.myCol][g2.myRow] = g2;
if (noTarg != true) {
setTargs(g1, g1.myCol, g1.myRow);
setTargs(g2, g2.myCol, g2.myRow);
}
}
function highGem(hGem) {
hGem.gemSelect._visible = true;
if (!hGem.isLevelUp) {
hGem.gem.play();
}
glowOff(hGem);
}
function deHighGem(hGem) {
hGem.gemSelect._visible = false;
hGem.tG = "";
hGem.gem.gotoAndStop(1);
mxxxTile = Math.floor(_xmouse / tileWidth);
myyyTile = Math.floor(_ymouse / tileHeight);
if (boardArray[mxxxTile][myyyTile] == hGem) {
glowOn(hGem);
}
}
function newGem(tCol, tRow, noMatch) {
puzzGem = 0;
if (_root.gameMode == "puzzle") {
if (levelInPlay == true) {
puzzGem = 9;
} else {
puzzGem = puzzleBoard[tRow][tCol];
}
noMatch = false;
}
gName = "gem" + gemDepth;
attachMovie("gem", gName, gemDepth);
gemDepth++;
gRef = this[gName];
if (puzzResetOrg == true) {
gRef.originalRow = puzzleBoardRestore[tRow][(boardWidth - tCol) - 1][0];
gRef.originalCol = puzzleBoardRestore[tRow][(boardWidth - tCol) - 1][1];
} else {
gRef.originalRow = tRow;
gRef.originalCol = tCol;
}
setTargs(gRef, tCol, tRow);
if (puzzGem < 1) {
gRef.myType = randGemType();
} else {
gRef.myType = puzzGem;
}
if (noMatch == true) {
nM = false;
while (nM == false) {
hasM = matchCheck(gRef, true);
if (hasM == false) {
nM = true;
continue;
}
gRef.myType = randGemType();
}
}
gRef.gemSelect._visible = false;
gRef.gotoAndStop(gRef.myType);
gRef.gem.gotoAndStop(1);
gRef.exploSpark.gotoAndStop(1);
gRef.exploSpark._visible = false;
gRef.pglow.gotoAndStop(1);
gRef.pglow._visible = false;
levelUpDelay--;
if (((needLevelUpGem > 0) && (_root.gameMode == "action")) && (levelUpDelay <= 0)) {
gotLevelUpGem = true;
makeLevelUp(gRef);
needLevelUpGem--;
gRef.gem.gem._visible = false;
gRef.pglow._visible = false;
_root.playSound("levelUpCreation");
} else {
gRef.gem.levelX._visible = false;
gRef.gem.levelText._visible = false;
gRef.gem.levelup._visible = false;
gRef.colorGlow._visible = false;
}
return(gRef);
}
function setTargs(tGem, tC, tR) {
tGem.myCol = tC;
tGem.myRow = tR;
tGem.xTarg = getColX(tC);
tGem.yTarg = getRowY(tR);
}
function getColX(co) {
return(((co * tileWidth) + (tileWidth / 2)) + 16);
}
function getRowY(co) {
return(((co * tileHeight) + (tileHeight / 2)) + 4);
}
function randGemType() {
return(random(7) + 1);
}
function glowGems() {
mxTile = Math.floor((_xmouse - 14) / tileWidth);
myTile = Math.floor(_ymouse / tileHeight);
glowTile = boardArray[mxTile][myTile];
if (glowTile == gemGlowing) {
} else {
glowOff(gemGlowing);
gemGlowing = glowTile;
glowOn(gemGlowing);
}
}
function glowOn(gloGem) {
if (gloGem.isLevelUp != true) {
gloGem.pglow._visible = true;
gloGem.pglow.play();
}
}
function glowOff(gloGem) {
gloGem.pglow._visible = false;
gloGem.pglow.stop();
}
function amIPlus(plusCan) {
plusNeigh = getGemNeighs(plusCan);
amPlussy = true;
if (plusNeigh.length < 4) {
return(false);
}
for (pan in plusNeigh) {
if (plusNeigh[pan].myType != plusCan.myType) {
amPlussy = false;
}
}
return(amPlussy);
}
function getGemNeighs(gemN) {
neighArray = [];
topG = boardArray[gemN.myCol][gemN.myRow - 1];
if (topG != undefined) {
neighArray.push(topG);
}
botG = boardArray[gemN.myCol][gemN.myRow + 1];
if (botG != undefined) {
neighArray.push(botG);
}
leftG = boardArray[gemN.myCol - 1][gemN.myRow];
if (leftG != undefined) {
neighArray.push(leftG);
}
rightG = boardArray[gemN.myCol + 1][gemN.myRow];
if (rightG != undefined) {
neighArray.push(rightG);
}
return(neighArray);
}
function getNineNeighbours(nineGem) {
nineArray = getGemNeighs(nineGem);
topG = boardArray[nineGem.myCol - 1][nineGem.myRow - 1];
if (topG != undefined) {
nineArray.push(topG);
}
botG = boardArray[nineGem.myCol - 1][nineGem.myRow + 1];
if (botG != undefined) {
nineArray.push(botG);
}
leftG = boardArray[nineGem.myCol + 1][nineGem.myRow - 1];
if (leftG != undefined) {
nineArray.push(leftG);
}
rightG = boardArray[nineGem.myCol + 1][nineGem.myRow + 1];
if (rightG != undefined) {
nineArray.push(rightG);
}
return(nineArray);
}
function runLightning() {
lightTimer--;
if (lightTimer < 0) {
if (lightGems.length < 1) {
if ((lightTimer < 35) && (lStrikes.length == 0)) {
detonateGem(hyperGem);
sortBoard();
wipeGems();
}
} else {
lightTarget = lightGems.shift();
startStrike = lightGems[random(lightGems.length)];
if (startStrike == undefined) {
startStrike = hyperGem;
}
lightStrike(startStrike, lightTarget);
lightTimer = lightBreak;
}
}
}
function lightStrike(startGem, endGem) {
liName = "light" + scorePopDepth;
attachMovie("lightning", liName, scorePopDepth);
scorePopDepth++;
liRef = this[liName];
liRef._x = startGem._x;
liRef._y = startGem._y;
liRef.lightline.gotoAndStop(hyperCol);
x_cord = startGem._x - endGem._x;
y_cord = startGem._y - endGem._y;
dist = Math.round(Math.sqrt((x_cord * x_cord) + (y_cord * y_cord)));
liRef._height = dist;
Radians = Math.atan2(startGem._y - endGem._y, startGem._x - endGem._x);
liRef._rotation = Math.round((Radians * 180) / 3.141593) - 90;
liRef.myDet = endGem;
lStrikes.push(liRef);
}
function killMrLighting() {
for (sts in lStrikes) {
lStrikes[sts].removeMovieClip();
lStrikes.splice(sts, 1);
}
lStrikes = [];
_root.stopSound("hyperstart");
_root.stopSound("hyperzap");
}
function doneStike(strikeRef) {
levelMultStrike = (levelOn / 2) + 0.5;
_root.playSound("hyperzap");
if (strikeRef.myDet.bangMe == true) {
detCheck = [strikeRef.myDet];
strikeScore = 45 * levelMultStrike;
currentPower = currentPower + 45;
if (_root.gameMode == "action") {
strikeScore = strikeScore * 20;
}
displayScore(strikeScore, hyperCol, strikeRef.myDet._x, strikeRef.myDet._y, true);
bangGemmer();
} else {
strikeScore = 20 * levelMultStrike;
if (_root.gameMode == "action") {
strikeScore = strikeScore * 20;
}
currentPower = currentPower + 20;
displayScore(strikeScore, hyperCol, strikeRef.myDet._x, strikeRef.myDet._y, true);
}
if ((runningTime > 0) && (runningTime < 7000)) {
normalPointsArray[0] = normalPointsArray[0] + strikeScore;
} else {
theTimeSpace = int((runningTime - 2000) / 5000);
if (theTimeSpace > 11) {
theTimeSpace = 11;
}
normalPointsArray[theTimeSpace] = normalPointsArray[theTimeSpace] + strikeScore;
}
detonateGem(strikeRef.myDet);
}
function finishStike(strikeDoneRef) {
for (sts in lStrikes) {
if (lStrikes[sts] == strikeDoneRef) {
lStrikes.splice(sts, 1);
}
}
}
function bangGemmer(instadet, gArray) {
while (detCheck.length > 0) {
checkG = detCheck.pop();
if ((checkG.bangMe == true) && (checkG.queueMe != true)) {
totalPowerGems++;
exGem = checkG;
i = 0;
while (i < gArray.length) {
if (gArray[i] == exGem) {
gArray.splice(i, 1);
}
i++;
}
gNeighbours = getNineNeighbours(exGem);
i = 0;
while (i < gArray.length) {
j = 0;
while (j < gNeighbours.length) {
if (gArray[i] == gNeighbours[j]) {
trace("gems matched, removing");
gArray.splice(i, 1);
}
j++;
}
i++;
}
if (exGem._x != undefined) {
addBombCol(exGem.myCol);
addBombCol(exGem.myCol - 1);
addBombCol(exGem.myCol + 1);
xtot = xtot + exGem.myRow;
ytot = ytot + exGem.myCol;
numG++;
forceSoverX = true;
soverx = exGem._x;
sovery = exGem._y;
detonateGem(exGem, true);
bombcombo++;
nobomb = false;
for (dg in gNeighbours) {
if ((gNeighbours[dg].bangMe != true) && (gNeighbours[dg] != undefined)) {
if (gNeighbours[dg]._x != undefined) {
if (gNeighbours[dg].isHyper == true) {
powerMyScore = 75;
currentPower = currentPower + powerMyScore;
powerMyScore = powerMyScore * levelMult;
if (_root.gameMode == "action") {
powerMyScore = powerMyScore * 20;
}
displayScore(powerMyScore, 5, gNeighbours[dg]._x, gNeighbours[dg]._y, true);
if ((runningTime > 0) && (runningTime < 7000)) {
normalPointsArray[0] = normalPointsArray[0] + powerMyScore;
} else {
theTimeSpace = int((runningTime - 2000) / 5000);
if (theTimeSpace > 11) {
theTimeSpace = 11;
}
normalPointsArray[theTimeSpace] = normalPointsArray[theTimeSpace] + powerMyScore;
}
}
xtot = xtot + gNeighbours[dg].myRow;
ytot = ytot + gNeighbours[dg].myCol;
numG++;
detonateGem(gNeighbours[dg]);
}
continue;
}
if (gNeighbours[dg].bangMe == true) {
totalPowerGems++;
if (instadet == true) {
detCheck.push(gNeighbours[dg]);
continue;
}
gNeighbours[dg].queueMe == true;
bombQueue.push(gNeighbours[dg]);
}
}
}
}
}
return(gArray);
}
function activateHyper(hGem1, hGem2) {
totalHyperGems++;
_root.playSound("hyperstart");
lightGems = [];
deHighGem(gemHigh1);
gemHigh1 = "";
deHighGem(gemHigh2);
gemHigh2 = "";
if (hGem1.isHyper == true) {
hyperGem = hGem1;
otherGem = hGem2;
hyperCol = hGem2.myType;
} else {
hyperGem = hGem2;
otherGem = hGem1;
hyperCol = hGem1.myType;
}
slc = 0;
while (slc < boardWidth) {
slr = boardHeight - 1;
while (slr > -1) {
if (boardArray[slc][slr].myType == hyperCol) {
if (boardArray[slc][slr].isLevelUp) {
needLevelUp = true;
}
if ((boardArray[slc][slr] != hyperGem) && (boardArray[slc][slr] != otherGem)) {
lightGems.push(boardArray[slc][slr]);
}
}
slr--;
}
slc++;
}
lightStrike(hyperGem, otherGem);
lightTimer = 0;
gamePhase = "lightning";
}
function makeMeBang(bGem) {
if (bGem.isLevelUp) {
gotLevelUpGem = false;
needLevelUp = true;
needLevelUpGem = false;
levelingUp++;
matchedLevelUp = true;
theTimeSpace = int((runningTime - 2000) / 5000);
if (theTimeSpace > 11) {
theTimeSpace = 11;
}
var _local2 = new multiplier();
_local2.mTimeSpace = theTimeSpace;
_local2.mColor = bGem.myType;
_local2.mNumber = levelOn + levelingUp;
multipliersArray.push(_local2);
bGem.gem.levelText._visible = false;
bGem.gem.levelX._visible = false;
bGem.gem.levelup._visible = false;
bGem.gem.gem._visible = true;
bGem.isLevelUp = false;
bGem.pglow._visible = true;
}
bGem.exploSpark._visible = true;
bGem.exploSpark.play();
bGem.bangMe = true;
trace("makeboom");
madeBoom = true;
doneBang = bGem;
}
function makeLevelUp(lGem) {
lGem.gem.levelText._visible = true;
lGem.gem.levelX._visible = true;
lGem.gem.levelup._visible = true;
lGem.gem.gem._visible = false;
lGem.isLevelUp = true;
lGem.pglow._visible = false;
}
function makeMeHyper(hGem) {
if (hGem.isLevelUp) {
gotLevelUpGem = false;
needLevelUp = true;
needLevelUpGem = false;
levelingUp++;
matchedLevelUp = true;
theTimeSpace = int((runningTime - 2000) / 5000);
if (theTimeSpace > 11) {
theTimeSpace = 11;
}
var _local2 = new multiplier();
_local2.mTimeSpace = theTimeSpace;
_local2.mColor = hGem.myType;
_local2.mNumber = levelOn + levelingUp;
multipliersArray.push(_local2);
hGem.gem.levelText._visible = false;
hGem.gem.levelX._visible = false;
hGem.gem.levelup._visible = false;
hGem.gem.gem._visible = true;
hGem.isLevelUp = false;
hGem.pglow._visible = true;
}
hGem.gotoAndStop(8);
hGem.isHyper = true;
hGem.bangMe = false;
hGem.myType = 8;
madeHyper = true;
doneHyper = hGem;
}
function detonateGem(deGem, exploOn) {
if (deGem._x != undefined) {
if (deGem.isLevelUp) {
gotLevelUpGem = false;
needLevelUp = true;
levelingUp++;
needLevelUpGem = false;
matchedLevelUp = true;
theTimeSpace = int((runningTime - 2000) / 5000);
if (theTimeSpace > 11) {
theTimeSpace = 11;
}
var _local3 = new multiplier();
_local3.mTimeSpace = theTimeSpace;
_local3.mColor = deGem.myType;
_local3.mNumber = levelOn + levelingUp;
multipliersArray.push(_local3);
}
if (needLevelUp) {
needLevelUp = false;
levelOn = levelOn + levelingUp;
levelText = levelText + levelingUp;
levelingUp = 0;
textPop(9);
}
bs = 0;
while (bs < numberShards) {
createShard(deGem.myType, deGem._x, deGem._y);
bs++;
}
_root.gemsCollected++;
theGems++;
_root.theGems++;
theGems++;
_root.theGems++;
_root.stopSound("gotset");
_root.stopSound("gotsetbig");
_root.stopSound("combo3");
_root.stopSound("combo4");
_root.stopSound("combo5");
_root.stopSound("combo6");
_root.playSound("bombexplosion");
boardArray[deGem.myCol][deGem.myRow] = "x";
if (exploOn == true) {
exploHere(deGem._x, deGem._y);
}
deGem.removeMovieClip();
}
}
function exploHere(ex, ey) {
eEff = "e" + gemDepth;
attachMovie("exploeffect", eEff, gemDepth);
gemDepth++;
eRef = this[eEff];
eRef._x = ex;
eRef._y = ey;
}
function bQueue() {
bQTimer--;
if (bQTimer < 0) {
bT = bombQueue.shift();
bT.queueMe = false;
bTemp = [bT];
wipeGems(bTemp);
bQTimer = bQbreak;
}
}
function checkcheckcheckBOOM() {
slc = 0;
while (slc < boardWidth) {
slr = boardHeight - 1;
while (slr > -1) {
if (boardArray[slc][slr].bangMe == true) {
return(boardArray[slc][slr]);
}
slr--;
}
slc++;
}
return(false);
}
function checkcheckcheckHYPER() {
slc = 0;
while (slc < boardWidth) {
slr = boardHeight - 1;
while (slr > -1) {
if (boardArray[slc][slr].isHyper == true) {
return(boardArray[slc][slr]);
}
slr--;
}
slc++;
}
return(false);
}
function matchCheck(mGem, checking) {
gemType = mGem.myType;
if ((gemType == 8) || (gemType == 9)) {
return(false);
}
vertArray = [];
horzArray = [];
stopCount = false;
counter = 1;
while (stopCount == false) {
stopCount = true;
uGem = boardArray[mGem.myCol][mGem.myRow - counter];
if (uGem != undefined) {
if (uGem.myType == gemType) {
vertArray.push(uGem);
counter++;
stopCount = false;
}
}
}
stopCount = false;
counter = 1;
while (stopCount == false) {
stopCount = true;
uGem = boardArray[mGem.myCol][mGem.myRow + counter];
if (uGem != undefined) {
if (uGem.myType == gemType) {
vertArray.push(uGem);
counter++;
stopCount = false;
}
}
}
stopCount = false;
counter = 1;
while (stopCount == false) {
stopCount = true;
uGem = boardArray[mGem.myCol - counter][mGem.myRow];
if (uGem != undefined) {
if (uGem.myType == gemType) {
horzArray.push(uGem);
counter++;
stopCount = false;
}
}
}
stopCount = false;
counter = 1;
while (stopCount == false) {
stopCount = true;
uGem = boardArray[mGem.myCol + counter][mGem.myRow];
if (uGem != undefined) {
if (uGem.myType == gemType) {
horzArray.push(uGem);
counter++;
stopCount = false;
}
}
}
if (checking == true) {
if ((vertArray.length > 1) || (horzArray.length > 1)) {
return(true);
}
return(false);
}
if ((vertArray.length > 1) && (horzArray.length > 1)) {
if ((vertArray.length >= 4) || (horzArray.length >= 4)) {
if (mGem.bangMe != true) {
makeMeHyper(mGem);
} else {
vertArray.push(mGem);
}
masterGemMatchScore = 5;
} else if (mGem.bangMe == true) {
vertArray.push(mGem);
masterGemMatchScore = 4;
} else {
makeMeBang(mGem);
masterGemMatchScore = 5;
}
wipeGems(vertArray);
wipeGems(horzArray);
return(true);
}
if (vertArray.length > 1) {
if (vertArray.length >= 4) {
if (mGem.bangMe != true) {
makeMeHyper(mGem);
} else {
vertArray.push(mGem);
}
masterGemMatchScore = 5;
} else if ((vertArray.length == 3) && (mGem.bangMe != true)) {
makeMeBang(mGem);
masterGemMatchScore = 4;
} else {
vertArray.push(mGem);
if (mGem.bangMe != true) {
masterGemMatchScore = 3;
} else {
masterGemMatchScore = vertArray.length;
}
}
wipeGems(vertArray);
return(true);
}
if (horzArray.length > 1) {
if (horzArray.length >= 4) {
if (mGem.bangMe != true) {
makeMeHyper(mGem);
} else {
horzArray.push(mGem);
}
masterGemMatchScore = 5;
} else if ((horzArray.length == 3) && (mGem.bangMe != true)) {
makeMeBang(mGem);
masterGemMatchScore = 4;
} else {
horzArray.push(mGem);
if (mGem.bangMe != true) {
masterGemMatchScore = 3;
} else {
masterGemMatchScore = horzArray.length;
}
}
wipeGems(horzArray);
return(true);
}
return(false);
}
function moveShards() {
ss = 0;
while (ss < shardsOn.length) {
smR = shardsOn[ss];
smR._x = smR._x + smR.xmov;
smR._y = smR._y + smR.ymov;
smR.xmov = smR.xmov * 0.95;
smR.ymov = smR.ymov + 0.8;
if (smR._y > shardRemove) {
smR.removeMovieClip();
shardsOn.splice(ss, 1);
}
ss++;
}
}
function createShard(sColour, sX, sY) {
sName = "shard" + shardDepth;
attachMovie("shard", sName, shardDepth);
shardDepth++;
shRef = this[sName];
shRef.gotoAndStop(sColour);
shRef._x = sX;
shRef._y = sY;
shRef.xmov = random(5) + 3;
if (random(2) == 1) {
shRef.xmov = shRef.xmov * -1;
}
shRef.ymov = (random(10) + 1) * -1;
shardsOn.push(shRef);
}
function gemToShard(shardGem) {
shardGem.xmov = random(12) + 3;
if (random(2) == 1) {
shardGem.xmov = shardGem.xmov * -1;
}
shardGem.ymov = (random(10) + 3) * -1;
shardGem.noRot = true;
shardsOn.push(shardGem);
}
function swapGems() {
_root.theGems = 0;
onTarg = false;
for (gg in swapGemAr) {
gemS = swapGemAr[gg];
if (gemS.xTarg == gemS.tG.xTarg) {
if (swapDirection == "first") {
gTarg = gemS.tG.yTarg;
} else {
gTarg = gemS.yTarg;
}
if (gTarg > gemS._y) {
gemS._y = gemS._y + swapSpeed;
if (gemS._y > gTarg) {
gemS._y = gTarg;
onTarg = true;
}
} else {
gemS._y = gemS._y - swapSpeed;
if (gemS._y < gTarg) {
gemS._y = gTarg;
onTarg = true;
}
}
continue;
}
if (swapDirection == "first") {
gTarg = gemS.tG.xTarg;
} else {
gTarg = gemS.xTarg;
}
if (gTarg > gemS._x) {
gemS._x = gemS._x + swapSpeed;
if (gemS._x > gTarg) {
gemS._x = gTarg;
onTarg = true;
}
continue;
}
gemS._x = gemS._x - swapSpeed;
if (gemS._x < gTarg) {
gemS._x = gTarg;
onTarg = true;
}
}
if (onTarg == true) {
if (swapDirection == "first") {
swapGemVars(swapGem1, swapGem2);
if ((((swapGem1.isHyper == true) || (swapGem2.isHyper == true)) && (swapGem1.myType != 9)) && (swapGem2.myType != 9)) {
if (_root.gameMode == "puzzle") {
buildSolution(swapGem1, swapGem2);
makePuzzleMove(swapGem1, swapGem2);
}
activateHyper(swapGem1, swapGem2);
} else {
if (swapGem1.bangMe == true) {
hasMatched2 = matchCheck(swapGem2);
hasMatched1 = matchCheck(swapGem1);
} else {
hasMatched1 = matchCheck(swapGem1);
hasMatched2 = matchCheck(swapGem2);
}
erPluster();
if ((hasMatched1 == false) && (hasMatched2 == false)) {
swapDirection = "second";
swapGemVars(swapGem1, swapGem2);
_root.playSound("badswap");
showWarning();
} else {
if (_root.gameMode == "puzzle") {
buildSolution(swapGem1, swapGem2);
makePuzzleMove(swapGem1, swapGem2);
}
deHighGem(swapGem1);
swapGem1 = "";
deHighGem(swapGem2);
swapGem2 = "";
swapGemAr = [];
}
}
} else {
deHighGem(swapGem1);
swapGem1 = "";
deHighGem(swapGem2);
swapGem2 = "";
gamePhase = "norm";
}
}
}
function dropGems() {
if (boardinAnimate._currentframe == boardinAnimate._totalframes) {
d = 0;
while (d < dropArray.length) {
dRef = dropArray[d];
if (gemHigh1 != dRef) {
dRef.gem.gotoAndStop(1);
}
dRef._y = dRef._y + dRef.dSpeed;
dRef._y = dRef._y + findBombBoost(dRef.myCol);
if (dRef.dSpeed < 22) {
dRef.dSpeed = dRef.dSpeed + speedDecrease;
}
if (((dRef._y > dRef.yTarg) || (dRef._y == undefined)) || (dRef.myType == 9)) {
dRef.dSpeed = 0;
dRef.haveBeenFaked = false;
dRef._y = dRef.yTarg;
moveArray.push(dRef);
dropArray.splice(d, 1);
d--;
if ((gClickTimer < -2) && (dRef.myType != 9)) {
gClickTimer = 0;
_root.playSound("gemclick");
}
}
d++;
}
if (dropArray.length < 1) {
gameBoardReady = true;
erPluster();
if (myFirstDropBaby == true) {
myFirstDropBaby = false;
}
gemMatched = false;
for (m in moveArray) {
checkMe = matchCheck(moveArray[m]);
if (checkMe == true) {
gemMatched = true;
}
}
moveArray = [];
bombCols = [];
if (gemMatched == false) {
noMultiplier = false;
theGems = 0;
if (_root.gamehasbeenoverf == 1) {
trace("gameover count");
gamePhase = "gameover";
gameoverCount = 50;
} else {
gamePhase = "norm";
}
doneHintTurn = false;
scorecombocount = 0;
cascadeCounter = 1;
combocount = 1;
bombcombo = 0;
if (_root.gameMode == "puzzle") {
doubleCheckBoard();
isPuzzDone = puzzleCheckWin();
puzzleCopyBoard();
if (isPuzzDone == true) {
puzzleEndLevel();
} else {
allPuzzMovesDone = findMatchForMe(false, false, true);
if (allPuzzMovesDone == false) {
actionpPop.gotoAndStop(4);
}
}
} else {
if (_root.gameMode != "action") {
isTheJigUp = findMatchForMe();
} else {
isTheJigUp = true;
}
if (isTheJigUp == false) {
if (_root.gamehasbeenoverf != "1") {
startGameOver();
}
} else if ((showPower == false) && (doneBang != false)) {
bommmbGem = checkcheckcheckBOOM();
if (bommmbGem != false) {
showHint(1, bommmbGem);
showPower = true;
doneBang = false;
}
} else if ((doneHyper != false) && (showHyper == false)) {
bommmbGem = checkcheckcheckHYPER();
if (bommmbGem != false) {
showHint(2, bommmbGem);
showHyper = true;
doneHyper = false;
}
}
if (gemHigh1 != "") {
gemDragTarg = gemHigh1;
gemDragging = true;
runGemDrag();
}
}
} else {
cascadeCounter++;
if (cascadeCounter > _root.biggestCascade) {
_root.biggestCascade = cascadeCounter;
}
}
}
}
}
function findBombBoost(myCol) {
arPos = -1;
for (ami in bombCols) {
if (bombCols[ami] == myCol) {
arPos = ami;
}
}
if (arPos > -1) {
if ((arPos == 0) || (arPos == (bombCols.length - 1))) {
return(-6);
}
return(-8);
}
return(0);
}
function raiseBombCols() {
lbc = 0;
while (lbc < bombCols.length) {
thisBombCol = bombCols[lbc];
gonePastBoom = false;
btt = boardHeight;
while (btt > -1) {
fakeMoveGem = boardArray[thisBombCol][btt];
if (fakeMoveGem == "x") {
gonePastBoom = true;
}
if (gonePastBoom == true) {
if (fakeMoveGem.haveBeenFaked != true) {
fakeMoveGem.dSpeed = dropRegMatch;
fakeMoveGem.haveBeenFaked = true;
}
calcSpedd = fakeMoveGem.dSpeed + findBombBoost(fakeMoveGem.myCol);
if (fakeMoveGem != "x") {
fakeYTarg = calcFakeY(fakeMoveGem);
if ((fakeMoveGem._y + calcSpedd) > fakeYTarg) {
fakeMoveGem._y = fakeYTarg;
} else {
fakeMoveGem._y = fakeMoveGem._y + calcSpedd;
fakeMoveGem.dSpeed = fakeMoveGem.dSpeed + speedDecrease;
}
}
}
btt--;
}
lbc++;
}
}
function calcFakeY(yfaker) {
fyCorCount = boardHeight + 1;
fy = boardHeight;
while (fy > -1) {
cfgemmy = boardArray[yfaker.myCol][fy];
if (cfgemmy != "x") {
fyCorCount--;
}
if (cfgemmy == yfaker) {
fyC = getRowY(fyCorCount);
return(fyC);
}
fy--;
}
}
function showHint(hintNum, gemRef) {
if (_parent.hintShow._visible != false) {
if (((hintNum == 1) && (_root.shownThePower != true)) || ((hintNum == 2) && (_root.shownTheHyper != true))) {
if (_root.gameMode != "action") {
_parent.hintShow.gotoAndStop(2);
_parent.hintShow.myHints.gotoAndStop(hintNum);
if (gemRef.myRow < 4) {
_parent.hintShow._y = 270;
} else {
_parent.hintShow._y = 90;
}
popHintArrow(gemRef);
_root.pauseTime();
gamePaused = true;
actionPaused = true;
}
}
}
}
function showWarning() {
if (shownWarn == false) {
if (_root.gameMode != "action") {
_parent.hintShow._y = 90;
_parent.hintShow.gotoAndStop(5);
_root.pauseTime();
gamePaused = true;
actionPaused = true;
shownWarn = true;
}
}
}
function hideHint() {
if (_root.gameMode == "action") {
actionRevealGems();
}
_parent.hintShow.gotoAndStop(1);
_root.resumeTime();
removeAllHints();
gamePaused = false;
actionPaused = false;
}
function findHint(autohinty) {
hideHint();
hinty = findMatchForMe();
if (hinty != false) {
popHintArrow(hinty);
doneHintTurn = true;
}
}
function popHintArrow(hTarg, noeeer) {
if (noeeer != true) {
removeAllHints();
}
if (hTarg._x != undefined) {
hName = "hint" + gemDepth;
attachMovie("hintarrow", hName, gemDepth);
gemDepth++;
hintRef = this[hName];
hintRef._x = hTarg._x;
hintRef._y = hTarg._y;
hintArrows.push(hintRef);
hackHintCount = 200;
}
}
function removeAllHints() {
for (hh in hintArrows) {
hintArrows[hh].removeMovieClip();
}
hintArrows = [];
hackHintCount = 0;
}
function findMatchForMe(findAll, chkHypp, puzcan) {
findAllGems = [];
if ((_root.gameMode == "puzzle") && (puzcan != true)) {
return(true);
}
flc = 0;
while (flc < boardWidth) {
flr = boardHeight - 1;
while (flr > -1) {
fmGem = boardArray[flc][flr];
chker = false;
if ((flc % 2) == 0) {
if ((flr % 2) == 0) {
chker = true;
}
} else if ((flr % 2) != 0) {
chker = true;
}
chker = true;
if (chker == true) {
matchHere = checkIMatch(fmGem);
if (fmGem.isHyper == true) {
fetchHyperNeigh = getGemNeighs(fmGem);
for (faf in fetchHyperNeigh) {
if (fetchHyperNeigh[faf].myType != 9) {
matchHere = true;
}
}
}
if (matchHere == true) {
if (findAll == true) {
findAllGems.push(fmGem);
} else {
return(fmGem);
}
}
}
flr--;
}
flc++;
}
if (findAllGems.length > 0) {
return(findAllGems);
}
return(false);
}
function checkGemStringMatch(drArray) {
for (dra in drArray) {
drCheck = checkIMatch(drArray[dra]);
if (drCheck == true) {
return(true);
}
}
return(false);
}
function checkIMatch(cmGem, noNeighs) {
nToCheck = getGemNeighs(cmGem);
for (cmN in nToCheck) {
cmNeigh = nToCheck[cmN];
if (cmNeigh != undefined) {
if (noNeighs != true) {
swapGemVars(cmGem, cmNeigh, true);
}
isThereMatch = matchCheck(cmGem, true);
if (noNeighs != true) {
swapGemVars(cmGem, cmNeigh, true);
}
if (isThereMatch == true) {
return(true);
}
}
}
}
function masterPause() {
trace("Paused");
muteSounds();
actionPause();
}
function masterUnpause() {
if (gamePaused == true) {
trace("Unpausing");
unMuteSounds();
actionResume();
}
}
function showMeHelp() {
this._visible = false;
_parent.helppop.gotoAndPlay("helpin");
_parent.levelStartPop.gotoAndStop(1);
_root.options.gotoAndStop(1);
if (_root.gameMode == "action") {
actionRevealGems();
}
}
function helpBackGame() {
if (_root.isSound == true) {
_root.unMuteSounds();
}
if (_root.isSound == false) {
_root.muteSounds();
}
gamePaused = false;
_root.resumeTime();
_parent.levelStartPop.gotoAndStop(1);
this._visible = true;
if (_root.gameMode == "action") {
_root.theTimer._visible = true;
actionResume();
}
}
function quitGamePress() {
if ((_root.zone_api == "true") && (_root.gameMode != "puzzle")) {
if (_root.isSound == true) {
_root.unMuteSounds();
}
if (_root.isSound == false) {
_root.muteSounds();
}
_root.SubmitFinal();
} else {
if (_root.isSound == true) {
_root.unMuteSounds();
}
if (_root.isSound == false) {
_root.muteSounds();
}
_root.backGame = false;
_root.bTrans("menu");
}
}
function playAgainPress() {
_root.randomBackground = random(_root.bg_bj._totalframes) + 1;
_root.bg_bj.gotoAndStop(_root.randomBackground);
_root.gameoverPop.gotoAndStop(1);
beginGame();
}
function showOptions() {
if (((gamePhase != "gameover") && (gamePhase != "levelEnd")) || ((gamePhase != "gameover") && (_root.gameMode == "puzzle"))) {
_root.theTimer._visible = false;
gamePaused = true;
_root.pauseTime();
_parent.levelStartPop.stop();
_root.options.gotoAndStop(2);
if (_root.gameMode == "action") {
actionPause();
}
}
}
function hideMenu() {
if (_root.isSound == true) {
_root.unMuteSounds();
} else if (_root.isSound == false) {
_root.muteSounds();
}
gamePaused = false;
_root.resumeTime();
if (_parent.levelStartPop._currentframe > 1) {
_parent.levelStartPop.play();
}
_root.options.gotoAndStop(1);
if (_root.gameMode == "action") {
_root.theTimer._visible = true;
actionResume();
}
}
function calcScore(gCount, nobomber) {
if (combocount <= 1) {
if (consecMatches <= 2) {
consecMatches++;
}
if ((speedCounter <= 96) && (consecMatches == 3)) {
consecMatches++;
speedCounter = 0;
matchMultiplier++;
if (matchMultiplier > highSpeed) {
highSpeed = matchMultiplier;
}
}
if ((speedCounter <= (32 + (matchMulitplier * 4))) && (consecMatches > 3)) {
speedCounter = 0;
matchMultiplier++;
if (matchMultiplier > 11) {
matchMultiplier = 11;
highSpeed = 11;
}
if (matchMultiplier > highSpeed) {
highSpeed = matchMultiplier;
}
}
}
if (combocount >= 3) {
}
ccScore = 0;
if (combocount == 1) {
bScore = 10;
} else if (combocount == 2) {
bScore = 20;
} else if (combocount == 3) {
bScore = 30;
} else if (combocount == 4) {
bScore = 40;
} else if (combocount == 5) {
bScore = 60;
} else if (combocount == 6) {
bScore = 80;
} else if (combocount == 7) {
bScore = 110;
} else if (combocount == 8) {
bScore = 160;
} else {
bScore = 210;
}
ccScore = ccScore + bScore;
if (nobomber == false) {
ccScore = ccScore + 25;
}
if (bombcombo > 1) {
if (bombcombo == 2) {
ccScore = 40;
} else if (bombcombo == 3) {
ccScore = 50;
} else if (bombcombo == 4) {
ccScore = 60;
} else {
ccScore = (bombcombo + 2) * 10;
}
}
if (gCount == 4) {
ccScore = ccScore + 10;
} else if (gCount == 5) {
ccScore = ccScore + 20;
}
if (_root.gameMode != "action") {
currentPower = currentPower + int(ccScore);
}
if (_root.gameMode == "action") {
ccScore = ccScore * 20;
}
ccScore = Math.floor(ccScore);
scorecombocount = scorecombocount + ccScore;
if (scorecombocount > _root.biggestCombo) {
_root.biggestCombo = scorecombocount;
}
var _local2 = 0;
if (combocount <= 1) {
_local2 = ((100 * matchMultiplier) - 100) * levelOn;
if ((runningTime > 0) && (runningTime < 7000)) {
bonusPointsArray[0] = bonusPointsArray[0] + _local2;
} else {
theTimeSpace = int((runningTime - 2000) / 5000);
if (theTimeSpace > 11) {
theTimeSpace = 11;
}
trace(theTimeSpace);
bonusPointsArray[theTimeSpace] = bonusPointsArray[theTimeSpace] + _local2;
}
totalBonusScore = totalBonusScore + _local2;
}
ccScore = ccScore * levelOn;
if ((runningTime > 0) && (runningTime < 7000)) {
normalPointsArray[0] = normalPointsArray[0] + ccScore;
} else {
theTimeSpace = int((runningTime - 2000) / 5000);
if (theTimeSpace > 11) {
theTimeSpace = 11;
}
normalPointsArray[theTimeSpace] = normalPointsArray[theTimeSpace] + ccScore;
}
ccScore = ccScore + _local2;
return(ccScore);
}
function displayScore(score, col, sx, sy, noinc) {
if ((lastScoreYHack > (sy - 5)) && (lastScoreYHack < (sy + 5))) {
sy = sy + 25;
lastScoreYHack = sy;
} else {
lastScoreYHack = sy;
}
ddScore = Math.floor(score);
ddScore = ddScore + "";
splitScore = ddScore.split("");
if (_root.gameMode == "action") {
splitScore[splitScore.length - 1] = "0";
}
ddScore = "";
spz = 0;
while (spz < splitScore.length) {
ddScore = ddScore + splitScore[spz];
spz++;
}
ddScore = int(ddScore);
score = ddScore;
if (_root.gameMode == "puzzle") {
return(false);
}
if (noinc != true) {
combocount++;
if (combocount == 4) {
if (_root.gameMode == "action") {
_root.playSound("good");
} else {
textPop(3);
}
} else if (combocount == 6) {
if (_root.gameMode == "action") {
_root.playSound("excellent");
} else {
textPop(4);
}
} else if (combocount == 8) {
if (_root.gameMode == "action") {
_root.playSound("incredible");
} else {
textPop(5);
}
}
}
scName = "scorepoparrooo" + testScoreDepthy;
attachMovie("scorepopon", scName, testScoreDepthy);
testScoreDepthy++;
scRef = this[scName];
scRef.cScore.gotoAndStop(col);
scRef.mScore = Math.floor(score);
scRef._x = sx;
scRef._y = sy;
if (col == undefined) {
scRef._visible = false;
}
myScore = Number(_root.gotya.checkandaddscore(myScore, Math.floor(score)));
myScoret = myScore;
if (myScore >= 25000) {
this.boardinAnimate.scordp.blankMedal._visible = false;
_root.theMedalFrame = int(myScore / 25000);
if ((_root.theMedalFrame > medalNumber) && (_root.theMedalFrame <= 10)) {
this.boardinAnimate.scordp.theMedal.theMedalGlow.gotoAndPlay(30);
if (_root.theMedalFrame > highestMedal) {
highestMedal = _root.theMedalFrame;
this.boardinAnimate.scordp.theMedal.gotoAndPlay(2);
this.boardinAnimate.scordp.medalRays.gotoAndPlay(2);
this.boardinAnimate.scordp.newMedal._visible = true;
this.boardinAnimate.scordp.newMedalShine._visible = true;
this.boardinAnimate.scordp.newMedal.gotoAndPlay(1);
this.boardinAnimate.scordp.newMedalShine.gotoAndPlay(1);
} else {
this.boardinAnimate.scordp.theMedal.gotoAndStop(16);
}
medalNumber = _root.theMedalFrame;
}
if (myScore >= 250000) {
medalTier = "";
this.boardinAnimate.scordp.medalText.text = " The highest medal";
} else {
medalTier = String(((_root.theMedalFrame + 1) * 25) + "k");
}
}
delayGraceTimer = delayGraceTimer + ((GraceSeconds * 2) / 10);
if (delayGraceTimer > (GraceSecondsMax / 10)) {
delayGraceTimer = GraceSecondsMax;
}
convertScore();
}
function textPop(tType, delay) {
if (delay == true) {
_parent.levelStartPop.gotoAndPlay("delay");
} else {
_parent.levelStartPop.gotoAndPlay("nodelay");
}
if ((_root.gameMode == "action") && (levelOn > 1)) {
_root.scoreUp = "SCORE x" + levelOn;
_root.scoreUpgf = levelOn;
_root.scoreUp2 = "x" + levelOn;
} else {
_parent.levelStartPop.levNum = levelOn;
}
_parent.levelStartPop.levFrame = tType;
}
function autoHintMe() {
autoHintTimer++;
if (autoHintTimer == autoHintAt) {
if (_root.gameMode != "puzzle") {
findHint(true);
autoHintTimer = 0;
}
}
}
function manageTimerBar() {
if (this.boardinAnimate.scordp.orangebar._currentframe < speedFrameCount) {
multiplierSpeed = 1;
if ((speedFrameCount - this.boardinAnimate.scordp.orangebar._currentframe) > 3) {
this.boardinAnimate.scordp.orangebar.nextFrame();
this.boardinAnimate.scordp.orangebar.nextFrame();
this.boardinAnimate.scordp.orangebar.nextFrame();
this.boardinAnimate.scordp.orangebar.nextFrame();
} else {
this.boardinAnimate.scordp.orangebar.nextFrame();
}
if (this.boardinAnimate.scordp.orangebar._currentframe >= 106) {
speedFrameCount = 50;
this.boardinAnimate.scordp.orangebar.gotoAndStop(1);
matchMultiplier++;
_root.playSound("speedUp");
this.boardinAnimate.scordp.theTimerGlow.gotoAndPlay(2);
}
} else if (this.boardinAnimate.scordp.orangebar._currentframe > speedFrameCount) {
if ((this.boardinAnimate.scordp.orangebar._currentframe - speedFrameCount) > 5) {
this.boardinAnimate.scordp.orangebar.prevFrame();
this.boardinAnimate.scordp.orangebar.prevFrame();
this.boardinAnimate.scordp.orangebar.prevFrame();
this.boardinAnimate.scordp.orangebar.prevFrame();
this.boardinAnimate.scordp.orangebar.prevFrame();
this.boardinAnimate.scordp.orangebar.prevFrame();
} else if ((this.boardinAnimate.scordp.orangebar._currentframe - speedFrameCount) > 3) {
this.boardinAnimate.scordp.orangebar.prevFrame();
this.boardinAnimate.scordp.orangebar.prevFrame();
this.boardinAnimate.scordp.orangebar.prevFrame();
this.boardinAnimate.scordp.orangebar.prevFrame();
} else if ((this.boardinAnimate.scordp.orangebar._currentframe - speedFrameCount) > 1) {
this.boardinAnimate.scordp.orangebar.prevFrame();
this.boardinAnimate.scordp.orangebar.prevFrame();
} else {
this.boardinAnimate.scordp.orangebar.prevFrame();
}
if ((this.boardinAnimate.scordp.orangebar._currentframe <= 2) && (matchMultiplier > 1)) {
speedFrameCount = 106;
this.boardinAnimate.scordp.orangebar.gotoAndStop(106);
matchMultiplier--;
_root.playSound("speedDown");
multiplierSpeed++;
if (matchMultiplier <= 1) {
matchMultiplier = 1;
}
}
}
}
function managePowerBar() {
if (_root.gameMode == "action") {
barPer = actionPower;
} else {
thisRoundTarget = myScoreTarget - lastScoreTarget;
thisRoundScore = myScore - lastScoreTarget;
barPer = Math.round((thisRoundScore / thisRoundTarget) * 500);
}
if (boardinAnimate.mainboard.powerbar._currentframe < barPer) {
dist = barPer - boardinAnimate.mainboard.powerbar._currentframe;
if (dist > 50) {
boardinAnimate.mainboard.powerbar.nextFrame();
boardinAnimate.mainboard.powerbar.nextFrame();
boardinAnimate.mainboard.powerbar.nextFrame();
boardinAnimate.mainboard.powerbar.nextFrame();
} else if (dist > 30) {
boardinAnimate.mainboard.powerbar.nextFrame();
boardinAnimate.mainboard.powerbar.nextFrame();
boardinAnimate.mainboard.powerbar.nextFrame();
} else if (dist > 15) {
boardinAnimate.mainboard.powerbar.nextFrame();
boardinAnimate.mainboard.powerbar.nextFrame();
} else {
boardinAnimate.mainboard.powerbar.nextFrame();
}
if ((boardinAnimate.mainboard.powerbar._currentframe == 500) && (_root.gameMode != "action")) {
if (gamePhase == "norm") {
levelEnd();
}
}
} else if (boardinAnimate.mainboard.powerbar._currentframe > barPer) {
boardinAnimate.mainboard.powerbar.prevFrame();
}
}
function convertScore() {
if (myScore >= 1000000) {
theText = myScoret.toString();
firstPart = theText.substr(0, 1);
secondPart = theText.substr(1, 3);
thirdPart = theText.substr(3, 3);
textScore = (((firstPart + ",") + secondPart) + ",") + thirdPart;
} else if (myScore >= 100000) {
theText = myScoret.toString();
firstPart = theText.substr(0, 3);
secondPart = theText.substr(3, 3);
textScore = (firstPart + ",") + secondPart;
} else if (myScore >= 10000) {
theText = myScoret.toString();
firstPart = theText.substr(0, 2);
secondPart = theText.substr(2, 3);
textScore = (firstPart + ",") + secondPart;
} else if (myScore >= 1000) {
theText = myScoret.toString();
firstPart = theText.substr(0, 1);
secondPart = theText.substr(1, 3);
textScore = (firstPart + ",") + secondPart;
} else {
textScore = myScoret.toString();
}
}
function increaseLevel() {
levelMult = int(levelOn) + int(_root.levelIncrement);
if (currentLevel == _root.level1) {
currentLevel = _root.level2;
} else if (currentLevel == _root.level2) {
currentLevel = _root.level3;
} else if (currentLevel == _root.level3) {
currentLevel = _root.level4;
} else if (currentLevel == _root.level4) {
currentLevel = _root.level5;
} else if (currentLevel == _root.level5) {
currentLevel = _root.level6;
} else if (currentLevel == _root.level6) {
currentLevel = _root.level7;
} else {
currentLevel = _root.Level8;
}
}
function setupActionGame() {
boardinAnimate.mainboard.redlights.gotoAndStop(1);
runningTime = 0;
actionDec = 6;
actionTimer = 75;
actionTimeOver = false;
delayGraceTimer = 0;
actionPower = 0;
twoMinutes = false;
oneMinute = false;
thirtySeconds = false;
fifteen = false;
warningCounter = 32;
delayWarning = 0;
totalBonusScore = 0;
consecMatches = 0;
highSpeed = 0;
gotLevelUpGem = false;
}
function setupActionLevel() {
currentPower = powerTarget / 2;
if (actionTimer > 15) {
actionTimer = actionTimer - 9;
} else if (actionDec < 12) {
actionDec++;
}
actionCounter = 0;
redflash = false;
speedCounter = 0;
speedFrameCounter = 50;
theAddedScore = 0;
multiplierSpeed = 1;
matchMultiplier = 1;
consecMatches = 0;
mPointMultiplier = mTimedPMBase + (levelOn * mTimedPMMult);
mPointsPerQuake = int(mTimedBonus * mPointMultiplier);
mTimedBonus = mTimedBonus + mTimedBonusMult;
mTimedBonusMult = mTimedBonusMult + mTimedBonusAccel;
mBonusPenalty = 0;
finalActionPower = 0;
if (aLastPointMultiplier == undefined) {
mTimedPenaltyVel = TimedPV;
mTimedPenaltyAccel = TimedPA;
mTimedPenaltyJerk = TimedPJ;
} else {
aScale = mPointMultiplier / aLastPointMultiplier;
mTimedPenaltyVel = mTimedPenaltyVel * aScale;
mTimedPenaltyAccel = mTimedPenaltyAccel * aScale;
mTimedPenaltyJerk = mTimedPenaltyJerk * aScale;
aTimeToAdvance = TimedLevelAdvance;
mTimedPenaltyVel = mTimedPenaltyVel + (mTimedPenaltyAccel * aTimeToAdvance);
mTimedPenaltyAccel = mTimedPenaltyAccel + (mTimedPenaltyJerk * aTimeToAdvance);
}
aLastPointMultiplier = mPointMultiplier;
mLastQuakePoints = myScore;
mNextQuakePoints = myScore + mPointsPerQuake;
clearInterval(_root.myBonusUpdate);
_root.myBonusUpdate = setInterval(UpdateBonusPenalty, 100);
}
function UpdateBonusPenalty() {
if (gamePaused == false) {
if (delayGraceTimer > 0) {
delayGraceTimer--;
} else {
aPenaltyPct = Math.min((boardinAnimate.mainboard.powerbar._currentframe / mBarLen) + 0.65, 1);
mBonusPenalty = mBonusPenalty + ((mTimedPenaltyVel * aPenaltyPct) / 10);
mTimedPenaltyVel = mTimedPenaltyVel + ((mTimedPenaltyAccel * aPenaltyPct) / 10);
mTimedPenaltyAccel = mTimedPenaltyAccel + ((mTimedPenaltyJerk * aPenaltyPct) / 10);
}
}
}
function runActionMode() {
theAddedScore = (100 * matchMultiplier) - 100;
if (matchMultiplier == 1) {
this.boardinAnimate.scordp.matchMultipliertext._visible = false;
this.boardinAnimate.scordp.speedText._visible = false;
} else {
this.boardinAnimate.scordp.matchMultipliertext._visible = true;
this.boardinAnimate.scordp.speedText._visible = true;
}
if ((!actionPaused) && (!myFirstDropBaby)) {
if ((gamePhase == "norm") && (consecMatches >= 1)) {
speedCounter++;
}
if ((speedCounter >= 96) && (consecMatches <= 2)) {
consecMatches = 0;
speedCounter = 0;
matchMultiplier = 1;
}
if ((speedCounter >= (32 + (matchMultiplier * 4))) && (consecMatches > 2)) {
consecMatches = 0;
speedCounter = 0;
matchMultiplier = 1;
}
multiplierTime = multiplierTime - timeChunk;
runningTime = runningTime + timeChunk;
}
if (theTime <= 180000) {
timerRunning = true;
}
theTime = ((_root.challengeTime * 180000) + 2000) - runningTime;
clockTime = _root.formatTime(theTime);
if ((theTime > ((_root.challengeTime * 180000) + 500)) || (theTime < 0)) {
boardinAnimate.mainboard.powerbar.timeText._visible = false;
} else {
boardinAnimate.mainboard.powerbar.timeText._visible = true;
}
if ((theTime <= 15000) && (!fifteen)) {
boardinAnimate.mainboard.redlights.gotoAndStop(2);
fifteen = true;
}
if (theTime <= 15000) {
warningCounter--;
}
if (((theTime <= 15000) && (theTime > 0)) && (warningCounter <= 0)) {
delayWarning++;
warningCounter = 36 - delayWarning;
_root.playSound("warning");
}
aBonusBarLen = (((((myScore - mLastQuakePoints) - mBonusPenalty) * mBarLen) / 2) / (mNextQuakePoints - mLastQuakePoints)) + (mBarLen / 2);
actionPower = (500 * theTime) / (_root.challengeTime * 180000);
actionPower = int(actionPower);
if (boardinAnimate.mainboard.powerbar._currentframe < 50) {
if (redflash == false) {
redflash = true;
}
} else if (redflash == true) {
redflash = false;
}
if (gamePhase == "norm") {
if (((theTime <= 0) && (gamePhase != "gameover")) && (gamePhase != "dead")) {
actionTimeOver = true;
if (_root.gamehasbeenoverf != 1) {
startGameOver();
}
}
}
}
function actionPause() {
actionPaused = true;
if (levelInPlay != false) {
if (myFirstDropBaby == false) {
gamePaused = true;
removeAllHints();
actionHideGems();
actionpPop.gotoAndStop(2);
_root.pauseTime();
} else {
flagMeUpBaby = true;
}
}
}
function actionResume() {
actionPaused = false;
if (_root.isSound == true) {
_root.unMuteSounds();
} else if (_root.isSound == false) {
_root.muteSounds();
}
gamePaused = false;
actionpPop.gotoAndStop(1);
actionRevealGems();
_root.resumeTime();
}
function actionHideGems() {
lc = 0;
while (lc < boardWidth) {
lr = boardHeight - 1;
while (lr > -1) {
boardArray[lc][lr]._visible = false;
lr--;
}
lc++;
}
gcs = 0;
while (gcs < gemsShrinking.length) {
gemsShrinking[gcs]._visible = false;
gcs++;
}
for (sed in shardsOn) {
shardsOn[sed]._visible = false;
}
removeAllHints();
}
function actionRevealGems() {
lc = 0;
while (lc < boardWidth) {
lr = boardHeight - 1;
while (lr > -1) {
boardArray[lc][lr]._visible = true;
lr--;
}
lc++;
}
gcs = 0;
while (gcs < gemsShrinking.length) {
gemsShrinking[gcs]._visible = true;
gcs++;
}
for (sed in shardsOn) {
shardsOn[sed]._visible = true;
}
}
function copySolutions() {
copyMySol = [];
for (cms in currentPuzSolutions) {
copyMeToo = [];
meToo = 0;
while (meToo < currentPuzSolutions[cms].length) {
copyMeToo.push(currentPuzSolutions[cms][meToo]);
meToo++;
}
copyMySol.push(copyMeToo);
}
solutionsUndo.push(copyMySol);
}
function reverseSolutions() {
currentPuzSolutions = [];
solutionsUndo.pop();
thisTurnsSol = solutionsUndo.pop();
for (fft in thisTurnsSol) {
currentPuzSolutions.push(thisTurnsSol[fft]);
}
}
function puzzleHintClick() {
if (gamePhase == "norm") {
if (puzzleSolveable == false) {
_parent.hintShow.gotoAndStop(3);
} else if ((currentPuzSolutions.length > 1) || (currentPuzSolutions[0].length > 1)) {
puzzHintLoc = findValidGeminPaths();
popHintArrow(puzzHintLoc[0]);
popHintArrow(puzzHintLoc[1], true);
} else {
trace("uno");
popHintArrow(findCoordBoard(currentPuzSolutions[0][0][0], true));
popHintArrow(findCoordBoard(currentPuzSolutions[0][0][1], true), true);
}
}
}
function findValidGeminPaths() {
for (mpv in currentPuzSolutions) {
thisPc = currentPuzSolutions[mpv];
for (fgh in thisPc) {
puzzLoca = thisPc[fgh];
puzzGee1 = findCoordBoard(puzzLoca[0], true);
puzzGee2 = findCoordBoard(puzzLoca[1], true);
puzz1Neighs = getGemNeighs(puzzGee1);
for (pcf in puzz1Neighs) {
if (puzz1Neighs[pcf] == puzzGee2) {
trace("NEXT TO");
swapGemVars(puzzGee1, puzzGee2, true);
willMatchUp1 = checkIMatch(puzzGee1, true);
willMatchUp2 = checkIMatch(puzzGee2, true);
swapGemVars(puzzGee1, puzzGee2, true);
if ((((willMatchUp1 == true) || (willMatchUp2 == true)) || (puzzGee2.isHyper == true)) || (puzzGee1.isHyper == true)) {
return([puzzGee1, puzzGee2]);
}
}
}
}
}
return(false);
}
function findCoordBoard(bbcCoords, blankok) {
slc = 0;
while (slc < boardWidth) {
slr = boardHeight - 1;
while (slr > -1) {
if (((boardArray[slc][slr].originalRow == bbcCoords[0]) && (boardArray[slc][slr].originalCol == bbcCoords[1])) && (boardArray[slc][slr].myType != 9)) {
if (blankok == true) {
return(boardArray[slc][slr]);
}
if (boardArray[slc][slr].myType != 9) {
return(boardArray[slc][slr]);
}
}
slr--;
}
slc++;
}
return(false);
}
function puzzUndoToPoss() {
while (puzzleSolveCount > 1) {
puzzleUndo.pop();
puzzleUndoOrgPos.pop();
reverseSolutions();
copySolutions();
puzzleSolveCount--;
}
puzzleUndeMove();
}
function setupPuzzHints() {
resetPuzzAns();
solutionsUndo = [];
copySolutions();
puzzleSolveable = true;
puzzleSolveCount = 0;
}
function resetPuzzAns() {
myPuzHints = this[("puzzle" + levelOn) + "Solutions"];
currentPuzSolutions = [];
for (mph in myPuzHints) {
copyAlso = [];
gogo = 0;
while (gogo < myPuzHints[mph].length) {
copyAlso.push(myPuzHints[mph][gogo]);
gogo++;
}
currentPuzSolutions.push(copyAlso);
}
}
function doubleCheckBoard() {
if (puzzleSolveable == true) {
if ((levelOn == 4) && (mrPuzMoveCount == 7)) {
return(undefined);
}
testCanHint = findValidGeminPaths();
if (testCanHint == false) {
puzzleSolveable = false;
puzzleSolveCount++;
}
}
}
function makePuzzleMove(pbuild1, pbuild2) {
mrPuzMoveCount++;
trace(" MY MOVES = " + mrPuzMoveCount);
hackblock = false;
if (levelOn == 4) {
if ((pbuild1.myRow == 3) && (pbuild1.myCol == 4)) {
if ((pbuild2.myRow == 3) && (pbuild2.myCol == 5)) {
hackblock = true;
}
} else if ((pbuild2.myRow == 3) && (pbuild2.myCol == 4)) {
if ((pbuild1.myRow == 3) && (pbuild1.myCol == 5)) {
hackblock = true;
}
}
}
canCompletePuzz = false;
for (lps in currentPuzSolutions) {
flagPuzzValid = false;
isItHere = puzzleMoveInPath(currentPuzSolutions[lps], pbuild1, pbuild2, true);
if (isItHere == true) {
canCompletePuzz = true;
flagPuzzValid = true;
}
if ((flagPuzzValid == false) || (hackblock == true)) {
if (hackblock) {
canCompletePuzz = false;
}
currentPuzSolutions.splice(lps, 1);
}
}
if (currentPuzSolutions.length < 1) {
trace("IMPOSSIBLE");
puzzleSolveable = false;
puzzleSolveCount++;
} else {
trace("POSSIBLE");
if (puzzleSolveable == false) {
puzzleSolveCount++;
}
}
copySolutions();
}
function puzzleMoveInPath(myPathoo, ppMoo1, ppMoo2, splicer) {
for (oop in myPathoo) {
grabCoords = myPathoo[oop];
pFirstIn = false;
pSecondIn = false;
isMeAMatch = clipMatchCoords(ppMoo1, ppMoo2, grabCoords);
if (isMeAMatch == true) {
if (splicer == true) {
myPathoo.splice(oop, 1);
}
return(true);
}
}
return(false);
}
function clipMatchCoords(pMove1, pMove2, theseCoords) {
if ((pMove1.originalRow == theseCoords[0][0]) && (pMove1.originalCol == theseCoords[0][1])) {
pFirstIn = true;
} else if ((pMove1.originalRow == theseCoords[1][0]) && (pMove1.originalCol == theseCoords[1][1])) {
pFirstIn = true;
}
if ((pMove2.originalRow == theseCoords[0][0]) && (pMove2.originalCol == theseCoords[0][1])) {
pSecondIn = true;
} else if ((pMove2.originalRow == theseCoords[1][0]) && (pMove2.originalCol == theseCoords[1][1])) {
pSecondIn = true;
}
if ((pSecondIn == true) && (pFirstIn == true)) {
return(true);
}
return(false);
}
function undoPuzzleMove() {
reverseSolutions();
copySolutions();
mrPuzMoveCount--;
puzzleSolveCount--;
if (puzzleSolveCount < 1) {
puzzleSolveable = true;
puzzleSolveCount = 0;
}
solBuilder = [];
}
function buildSolution(builder1, builder2) {
solBuilder.push(((((((("[" + builder1.originalRow) + ",") + builder1.originalCol) + "],[") + builder2.originalRow) + ",") + builder2.originalCol) + "]");
}
function traceSolution() {
solString = "[";
for (idd in solBuilder) {
solString = solString + (("[" + solBuilder[idd]) + "],");
}
solString = solString + "]";
trace("************");
trace(solString);
trace("************");
}
function puzzleForceLevelStart(targLevel, skipper) {
_parent.levelStartPop.gotoAndStop(1);
levelOn = targLevel - 1;
levelInPlay = false;
gamePhase = "levelEnd";
actionpPop.gotoAndStop(1);
numBomb = 0;
numHyper = 0;
clearEverything();
forcePuzzleLevel(true, skipper);
killMrLighting();
mrPuzMoveCount = 0;
solBuilder = [];
}
function puzzleNewLevel() {
puzzleBoard = this["map" + levelOn];
numBomb = 0;
numHyper = 0;
setupPuzzHints();
mrPuzMoveCount = 0;
}
function puzzleForcePosition() {
lc = 0;
while (lc < boardWidth) {
lr = boardHeight - 1;
while (lr > -1) {
boardArray[lc][lr]._x = boardArray[lc][lr].xTarg;
boardArray[lc][lr]._y = boardArray[lc][lr].yTarg;
lr--;
}
lc++;
}
boardinAnimate.scordp.puzzlemaps["puzbut" + levelOn].gotoAndStop(2);
setPDisplay();
dropArray = [];
}
function puzzleRunMode() {
currentPower = 0;
}
function puzzleCheckWin() {
puzzGemFound = false;
lc = 0;
while (lc < boardWidth) {
lr = boardHeight - 1;
while (lr > -1) {
if ((boardArray[lc][lr].myType != undefined) && (boardArray[lc][lr].myType < 9)) {
puzzGemFound = true;
}
lr--;
}
lc++;
}
if (puzzGemFound == true) {
return(false);
}
puzzlesComplete.push(levelOn);
return(true);
}
function puzzleEndLevel() {
levelInPlay = false;
gamePhase = "levelEnd";
numBomb = 0;
numHyper = 0;
_root.pauseTime();
textPop(7);
_root.playSound("solved");
}
function forcePuzzleLevel(noTutey, skipper) {
skipcreate = false;
numBomb = 0;
numHyper = 0;
puzGameCompp = false;
allPuzzyDone = returnPuzzUnsolved();
if ((allPuzzyDone == false) && (skipper != true)) {
remAllGems();
actionpPop.gotoAndStop(3);
} else {
if (skipper != true) {
if (allPuzzyDone > 0) {
levelOn = allPuzzyDone - 1;
} else {
levelOn = allPuzzyDone;
}
}
if (noTutey != true) {
if (levelOn == 2) {
if (puz2shown == false) {
remAllGems();
boardinAnimate.mainboard.pztutes.gotoAndStop(3);
puz2shown = true;
skipcreate = true;
}
} else if (levelOn == 5) {
if (puz3shown == false) {
remAllGems();
boardinAnimate.mainboard.pztutes.gotoAndStop(4);
puz3shown = true;
skipcreate = true;
}
}
}
if (skipcreate == false) {
newLevel();
boardinAnimate.gotoAndStop(boardinAnimate._totalframes);
}
}
puzzleUndo = [];
setPDisplay();
}
function returnPuzzUnsolved() {
resetpxc = false;
pxc = levelOn;
while (pxc < 8) {
levHasDone = false;
for (pzc in puzzlesComplete) {
if (pxc == puzzlesComplete[pzc]) {
levHasDone = true;
}
}
if ((levHasDone != true) && (pxc < 8)) {
return(pxc);
}
if ((resetpxc == false) && (pxc > 6)) {
pxc = 0;
resetpxc = true;
}
pxc++;
}
return(false);
}
function setPDisplay() {
for (gfd in puzzlesComplete) {
trace("highlight " + puzzlesComplete[gfd]);
trace("c frame = " + boardinAnimate.scordp.puzzlemaps["puzbut" + puzzlesComplete[gfd]]._currentframe);
if (boardinAnimate.scordp.puzzlemaps["puzbut" + puzzlesComplete[gfd]]._currentframe != 2) {
boardinAnimate.scordp.puzzlemaps["puzbut" + puzzlesComplete[gfd]].gotoAndStop(3);
}
}
}
function puzzTutetwo() {
puzzExplode(4, 100, 300);
puzzExplode(4, 140, 300);
puzzExplode(2, 140, 240);
puzzExplode(4, 180, 300);
puzzExplode(2, 220, 300);
}
function puzzTutethree() {
puzzExplode(2, 20, 300);
puzzExplode(2, 60, 300);
puzzExplode(2, 140, 300);
puzzExplode(2, 180, 300);
puzzExplode(2, 180, 240);
puzzExplode(2, 260, 300);
}
function puzzExplode(col, pxx, pyy) {
bs = 0;
while (bs < numberShards) {
createShard(col, pxx, pyy);
bs++;
}
}
function puzzFirstTuteEnd() {
puz1shown = true;
beginGame();
}
function puzzleCopyBoard() {
pzUndo = [];
pzUndoOrg = [];
lc = 0;
while (lc < boardWidth) {
pzRow = [];
pzoRow = [];
lr = boardHeight - 1;
while (lr > -1) {
gType = boardArray[lr][lc].myType;
if (boardArray[lr][lc].bangMe == true) {
gType = gType + 10;
}
pzRow.push(gType);
pzoRow.push([boardArray[lr][lc].originalRow, boardArray[lr][lc].originalCol]);
lr--;
}
pzRow.reverse();
pzUndo.push(pzRow);
pzUndoOrg.push(pzoRow);
lc++;
}
puzzleUndo.push(pzUndo);
puzzleUndoOrgPos.push(pzUndoOrg);
}
function puzzleUndeMove() {
if (gamePhase == "norm") {
if (puzzleUndo.length > 1) {
remAllGems();
levelInPlay = false;
boardArray = resetBoard();
puzzleUndo.pop();
puzzleBoard = puzzleUndo.pop();
puzzleUndoOrgPos.pop();
puzzleBoardRestore = puzzleUndoOrgPos.pop();
puzzResetOrg = true;
boardFill(true);
puzzleForcePosition();
gamePhase = "drop";
if (actionpPop._currentframe == 4) {
actionpPop.gotoAndStop(1);
}
levelInPlay = true;
undoPuzzleMove();
madeHyper = false;
madeBoom = false;
}
}
}
function think() {
timeChunk = _root.returnTimer();
if (gamePaused == false) {
if (gamePhase == "drop") {
dropGems();
} else if (gamePhase == "gemswap") {
swapGems();
} else if (gamePhase == "gemshrink") {
gemShrink();
raiseBombCols();
} else if (gamePhase == "bombQ") {
bQueue();
raiseBombCols();
} else if (gamePhase == "lightning") {
runLightning();
raiseBombCols();
} else if (gamePhase == "gameover") {
if (gameoverCountf > 0) {
gameoverCountf--;
} else {
gotbombsto = 0;
_root.gamehasbeenoverf = 1;
flc = 0;
while (flc < boardWidth) {
flr = boardHeight - 1;
while (flr > -1) {
fmGem = boardArray[flc][flr];
if (fmGem.bangMe == true) {
powerMyScore = 75;
currentPower = currentPower + powerMyScore;
powerMyScore = powerMyScore * levelMult;
powerMyScore = powerMyScore * 20;
displayScore(powerMyScore, 5, fmGem._x, fmGem._y, true);
gotbombsto = 1;
detCheck.push(fmGem);
}
flr--;
}
flc++;
}
if (gotbombsto == 1) {
gArray = bangGemmer(false, gArray);
trace((("totalPowerGems = " + totalPowerGems) + " ") + gameoverCount);
gemShrink();
raiseBombCols();
} else if (gameoverCount > 0) {
gameoverCount--;
} else {
trace("gameover");
runGameOver();
}
}
}
moveShards();
glowGems();
if (_root.gameMode == "classic") {
managePowerBar();
}
if (_root.gameMode == "action") {
}
runGemDrag();
autoHintMe();
gClickTimer--;
if (_root.gameMode == "action") {
runActionMode();
} else if (_root.gameMode == "puzzle") {
puzzleRunMode();
}
if (_root.zone_api == "true") {
API_timer--;
if ((API_timer < 0) && (_root.pausedAt < 1)) {
_root.BroadcastGameScore();
API_timer = API_btime;
}
}
hackHintCount--;
if (hackHintCount == 1) {
removeAllHints();
}
_root.mmscore = myScore;
if (_root.gameMode != "action") {
theTime = "";
}
}
hackPauseT--;
hackSel--;
}
function beginGame() {
if (_root.newHighScore != -1) {
_root.theHighScore = _root.newHighScore;
_root.newHighScore = -1;
if (_root.theHighScore >= 1000000) {
theText = _root.theHighScore.toString();
firstPart = theText.substr(0, 1);
secondPart = theText.substr(1, 3);
thirdPart = theText.substr(3, 3);
_root.textHighScore = (((firstPart + ",") + secondPart) + ",") + thirdPart;
} else if (_root.theHighScore >= 100000) {
theText = _root.theHighScore.toString();
firstPart = theText.substr(0, 3);
secondPart = theText.substr(3, 3);
_root.textHighScore = (firstPart + ",") + secondPart;
} else if (_root.theHighScore >= 10000) {
theText = _root.theHighScore.toString();
firstPart = theText.substr(0, 2);
secondPart = theText.substr(2, 3);
_root.textHighScore = (firstPart + ",") + secondPart;
} else if (_root.theHighScore >= 1000) {
theText = _root.theHighScore.toString();
firstPart = theText.substr(0, 1);
secondPart = theText.substr(1, 3);
_root.textHighScore = (firstPart + ",") + secondPart;
} else if (_root.theHighScore > 0) {
_root.textHighScore = _root.theHighScore.toString();
} else if (_root.theHighScore == 0) {
_root.textHighScore = "0";
} else {
_root.textHighScore = "0";
}
}
this.boardinAnimate.scordp.newMedal._visible = false;
this.boardinAnimate.scordp.newMedalShine._visible = false;
highestMedal = int(_root.theHighScore / 25000);
medalNumber = 0;
medalTier = "25k";
_root.ingameMedalFrame = 1;
_root.ingameMedal = true;
this.boardinAnimate.scordp.blankMedal._visible = true;
this.boardinAnimate.scordp.medalText.text = "NEXT MEDAL -";
_root.theMedalFrame = 1;
this.boardinAnimate.scordp.theMedal.gotoAndStop(16);
totalPowerGems = 0;
totalHyperGems = 0;
_root.totalPowerGems = 0;
_root.totalHyperGems = 0;
multipliersArray = new Array();
_root.normalPointsArray = new Array();
_root.bonusPointsArray = new Array();
_root.multipliersArray = new Array();
i = 0;
while (i < 12) {
normalPointsArray[i] = 0;
bonusPointsArray[i] = 0;
_root.normalPointsArray[i] = 0;
_root.bonusPointsArray[i] = 0;
_root.multipliersArray[i] = 0;
i++;
}
_root.gameoverPop.movingHighscore._visible = false;
noMultiplier = false;
gameBoardReady = false;
readyForInput = false;
timerRunning = false;
_root.theGems = 0;
levelingUp = 0;
multiplierTime = 0;
finalSound = false;
if (_root.practice) {
var _local3 = new TextFormat(null, 22);
boardinAnimate.scordp.emailTextBox.setTextFormat(_local3);
boardinAnimate.scordp.friendTextBox.setTextFormat(_local3);
}
levelText = 1;
levelOn = 0;
myScore = 0;
myScoret = 0;
myScoreTarget = 0;
lastScoreTarget = 0;
lastLevelScore = 0;
API_timer = API_btime;
textScore = "";
_root.gameDuration = 0;
_root.gemsCollected = 0;
_root.biggestCascade = 1;
_root.biggestCombo = 0;
_root.totalScore = 0;
convertScore();
showPower = false;
showHyper = false;
doneBang = false;
doneHyper = false;
madeHyper = false;
madeBoom = false;
_root.resetTimer();
if (_root.gameMode == "action") {
setupActionGame();
}
if (_root.gameMode == "puzzle") {
if (puz1shown == false) {
boardinAnimate.gotoAndPlay(2);
} else {
newLevel();
boardinAnimate.gotoAndStop(boardinAnimate._totalframes);
}
} else {
newLevel();
}
}
function newLevel() {
clearEverything();
API_timer = API_btime;
randomSpecials();
lastLevelScore = myScore;
lastScoreTarget = myScoreTarget;
mPointMultiplier = NormPMBase + (levelOn * NormPMMult);
myScoreTarget = myScoreTarget + int((NormBonus + (levelOn * NormBonusMult)) * mPointMultiplier);
levelOn++;
levelText++;
if (_root.gameMode == "action") {
switch (levelOn) {
case 1 :
myScoreTarget = _root.level1;
break;
case 2 :
myScoreTarget = _root.level2;
break;
case 3 :
myScoreTarget = _root.level3;
break;
case 4 :
myScoreTarget = _root.level4;
break;
case 4 :
myScoreTarget = _root.level4;
break;
case 5 :
myScoreTarget = _root.level5;
break;
case 6 :
myScoreTarget = _root.level6;
}
}
if ((levelOn % 2) != 0) {
_root.soundTracks.nextGameTrack();
}
if (_root.gameMode == "puzzle") {
puzzleNewLevel();
}
boardArray = resetBoard();
boardFill(true);
myFirstDropBaby = true;
if (_root.gameMode != "puzzle") {
powerTarget = 500 + (levelOn * 150);
currentPower = 0;
boardinAnimate.mainboard.powerbar.gotoAndStop(1);
if (levelOn == 1) {
if (_root.gameMode == "action") {
_root.theTimer.gotoAndPlay(2);
_root.playSound("threeminutes");
}
textPop(1, true);
} else if ((levelOn > 1) && (_root.gameMode == "action")) {
textPop(9);
} else {
textPop(2);
}
}
gamePhase = "drop";
boardinAnimate.gotoAndPlay(2);
madeHyper = false;
madeBoom = false;
_root.resumeTime();
levelInPlay = true;
if (_root.gameMode == "action") {
setupActionLevel();
}
}
function levelEnd() {
levelInPlay = false;
gamePhase = "levelEnd";
_root.pauseTime();
hideHint();
if (_root.gameMode != "action") {
_root.playSound("levelcomplete");
}
_root.playSound("leveltrans");
bggCount = levelOn + 1;
madeHyper = false;
madeBoom = false;
while (bggCount > 18) {
bggCount = bggCount - 18;
}
_parent.gTrans(bggCount);
clearInterval(myBonusUpdate);
gotLevelUpGem = false;
}
function clearEverything() {
randySpecials = [];
remAllGems();
ss = 0;
while (ss < shardsOn.length) {
shardsOn[ss].removeMovieClip();
ss++;
}
hideHint();
shardsOn = [];
bombCols = [];
}
function remAllGems() {
lc = 0;
while (lc < boardWidth) {
lr = boardHeight - 1;
while (lr > -1) {
if (boardArray[lc][lr].bangMe == true) {
numBomb++;
}
if (boardArray[lc][lr].isHyper == true) {
numHyper++;
}
boardArray[lc][lr].removeMovieClip();
lr--;
}
lc++;
}
for (dc in dropArray) {
dropArray[dc].removeMovieClip();
}
for (gss in gemsShrinking) {
gemsShrinking[gss].removeMovieClip();
}
gemsShrinking = [];
hideHint();
dropArray = [];
madeHyper = false;
madeBoom = false;
}
function startGameOver() {
if (gamePhase != "gameover") {
trace("gameover");
removeAllHints();
gamePhase = "gameover";
if ((_root.gameMode == "action") && (actionTimeOver == true)) {
textPop(8);
_root.playSound("timeup");
} else {
textPop(6);
_root.playSound("nomoves");
}
hideHint();
shakeCount = 50;
gameoverCountf = 50;
_root.totalScore = myScoret;
}
}
function sendResults() {
if (myScore > _root.firstScore) {
var _local2 = new LoadVars();
_local2.firstName = _root.secondName;
_local2.secondName = _root.firstName;
_local2.firstEmail = _root.secondEmail;
_local2.secondEmail = _root.firstEmail;
_local2.theMessage = _root.myMessage;
_local2.replyMessage = _root.theMessage;
_local2.firstScore = myScore;
_local2.secondScore = _root.firstScore;
_local2.challenge = 2;
_local2.avatar = _root.avatarFrame2;
_local2.avatar2 = _root.avatar;
_local2.sendAndLoad("emailer.php", _local2, "POST");
_root.emailChallenge = 1;
} else {
var _local2 = new LoadVars();
_local2.firstName = _root.firstName;
_local2.secondName = _root.secondName;
_local2.firstEmail = _root.firstEmail;
_local2.secondEmail = _root.secondEmail;
_local2.theMessage = _root.theMessage;
_local2.replyMessage = _root.myMessage;
_local2.firstScore = _root.firstScore;
_local2.secondScore = myScore;
_local2.challenge = 2;
_local2.avatar = _root.avatar;
_local2.avatar2 = _root.avatarFrame2;
_local2.sendAndLoad("emailer.php", _local2, "POST");
_root.emailChallenge = 1;
}
}
function runGameOver() {
highSpeedScore = (highSpeed * 100) - 100;
if (shakeCount > -1) {
removeAllHints();
flc = 0;
while (flc < boardWidth) {
flr = boardHeight - 1;
while (flr > -1) {
fmGem = boardArray[flc][flr];
if (shakeCount == 0) {
gemToShard(fmGem);
} else {
if (fmGem.orgX == undefined) {
fmGem.orgX = fmGem._x;
fmGem.orgY = fmGem._y;
}
fmGem._x = (fmGem.orgX + random(8)) - 4;
fmGem._y = (fmGem.orgY + random(8)) - 4;
}
flr--;
}
if (shakeCount == 0) {
if (finalSound == false) {
finalSound = true;
_root.playSound("explosion2");
}
}
flc++;
}
} else {
_root.ingameMedal = false;
_root.gameOverHighScoreText = myScore;
_root.challengeSentText = "";
if (shardsOn.length == 0) {
gamePhase = "dead";
if (_root.newHighScore != -1) {
_root.theHighScore = _root.newHighScore;
_root.newHighScore = -1;
if (_root.theHighScore >= 1000000) {
theText = _root.theHighScore.toString();
firstPart = theText.substr(0, 1);
secondPart = theText.substr(1, 3);
thirdPart = theText.substr(3, 3);
_root.textHighScore = (((firstPart + ",") + secondPart) + ",") + thirdPart;
} else if (_root.theHighScore >= 100000) {
theText = _root.theHighScore.toString();
firstPart = theText.substr(0, 3);
secondPart = theText.substr(3, 3);
_root.textHighScore = (firstPart + ",") + secondPart;
} else if (_root.theHighScore >= 10000) {
theText = _root.theHighScore.toString();
firstPart = theText.substr(0, 2);
secondPart = theText.substr(2, 3);
_root.textHighScore = (firstPart + ",") + secondPart;
} else if (_root.theHighScore >= 1000) {
theText = _root.theHighScore.toString();
firstPart = theText.substr(0, 1);
secondPart = theText.substr(1, 3);
_root.textHighScore = (firstPart + ",") + secondPart;
} else if (_root.theHighScore > 0) {
_root.textHighScore = _root.theHighScore.toString();
} else if (_root.theHighScore == 0) {
_root.textHighScore = "0";
} else {
_root.textHighScore = "0";
}
}
i = 0;
while (i < 12) {
_root.normalPointsArray[i] = normalPointsArray[i];
_root.bonusPointsArray[i] = bonusPointsArray[i];
_root.multipliersArray = multipliersArray;
i++;
}
var _local3 = new LoadVars();
var _local4;
var _local2 = new Array();
_local4 = _root.querystring.split("&");
i = 0;
while (i < _local4.length) {
_local2[i] = _local4[i].split("=");
i++;
}
i = 0;
while (i < _local2.length) {
if (_local2[i][0] == "fb_user") {
_local3.fb_id = _local2[i][1];
} else {
_local3[_local2[i][0]] = _local2[i][1];
}
i++;
}
var _local5 = new md5();
checksum = _local5.hash(String((myScore + "nonivechey902!0") + _local3.fb_sig_user));
_local3.score = myScore;
_local3.csm = checksum;
if ((_root.pathToPHP == null) || (_root.pathToPHP == undefined)) {
_root.pathToPHP = "";
}
if (_root.xdebug) {
_root.urlText = "report_score.php?" + unescape(_local3.toString());
}
score = myScore;
_root.totalPowerGems = totalPowerGems;
_root.totalHyperGems = totalHyperGems;
_root.gameoverPop.gotoAndStop(6);
_root.endScreen = 1;
_root.gameoverPop.movingHighscore._visible = false;
if (myScore > _root.theHighScore) {
_root.theHighScore = myScore;
trace("New highscore");
_root.gameoverPop.gover.newHighScore.gotoAndStop(2);
_root.gameoverPop.movingHighscore._visible = true;
_root.theHighScore = myScore;
_root.stopSound("explosion2");
if (_root.theHighScore >= 1000000) {
theText = _root.theHighScore.toString();
firstPart = theText.substr(0, 1);
secondPart = theText.substr(1, 3);
thirdPart = theText.substr(3, 3);
_root.textHighScore = (((firstPart + ",") + secondPart) + ",") + thirdPart;
} else if (_root.theHighScore >= 100000) {
theText = _root.theHighScore.toString();
firstPart = theText.substr(0, 3);
secondPart = theText.substr(3, 3);
_root.textHighScore = (firstPart + ",") + secondPart;
} else if (_root.theHighScore >= 10000) {
theText = _root.theHighScore.toString();
firstPart = theText.substr(0, 2);
secondPart = theText.substr(2, 3);
_root.textHighScore = (firstPart + ",") + secondPart;
} else if (_root.theHighScore >= 1000) {
theText = _root.theHighScore.toString();
firstPart = theText.substr(0, 1);
secondPart = theText.substr(1, 3);
_root.textHighScore = (firstPart + ",") + secondPart;
} else if (_root.theHighScore > 0) {
_root.textHighScore = _root.theHighScore.toString();
} else if (_root.theHighScore == 0) {
_root.textHighScore = "0";
} else {
_root.textHighScore = "0";
}
_root.playSound("anewhighscore");
}
if (myScore >= 1000000) {
theText = myScoret.toString();
firstPart = theText.substr(0, 1);
secondPart = theText.substr(1, 3);
thirdPart = theText.substr(3, 3);
_root.gameoverText = (((firstPart + ",") + secondPart) + ",") + thirdPart;
} else if (myScore >= 100000) {
theText = myScoret.toString();
firstPart = theText.substr(0, 3);
secondPart = theText.substr(3, 3);
_root.gameoverText = (firstPart + ",") + secondPart;
} else if (myScore >= 10000) {
theText = myScoret.toString();
firstPart = theText.substr(0, 2);
secondPart = theText.substr(2, 3);
_root.gameoverText = (firstPart + ",") + secondPart;
} else if (myScore >= 1000) {
theText = myScoret.toString();
firstPart = theText.substr(0, 1);
secondPart = theText.substr(1, 3);
_root.gameoverText = (firstPart + ",") + secondPart;
} else if (myScore > 0) {
_root.gameoverText = myScoret.toString();
} else if (myScore == 0) {
_root.gameoverText = "0";
} else {
_root.gameoverText = "0";
}
}
}
shakeCount--;
}
var medalTier = "";
_root.ingameMedalFrame = 1;
_root.ingameMedal = true;
var normalPointsArray = new Array();
var bonusPointsArray = new Array();
var multipliersArray = new Array();
var totalPowerGems = 0;
var totalHyperGems = 0;
_root.totalPowerGems = 0;
_root.totalHyperGems = 0;
i = 0;
while (i < 12) {
normalPointsArray[i] = 0;
bonusPointsArray[i] = 0;
i++;
}
stop();
noMultiplier = false;
gemsForMultiplier = 10;
gameBoardReady = false;
readyForInput = false;
timerRunning = false;
_root.thinkStarves = 0;
levelingUp = 0;
_root.gameIsRunning = false;
boardinAnimate.mainboard.powerbar.timeText.embedFonts = true;
finalSound = false;
_root.isMuted = false;
gamePhase = "norm";
levelOn = 0;
levelText = 1;
levelInPlay = false;
myScoreTarget = 0;
lastScoreTarget = 0;
lastLevelScore = 0;
NormBonus = 500;
NormBonusMult = 150;
NormPMBase = 1;
NormPMMult = 0.5;
theTime = 0;
_root.gameDuration = 0;
_root.gemsCollected = 0;
_root.biggestCascade = 1;
_root.biggestCombo = 0;
_root.totalScore = 0;
boardWidth = 8;
boardHeight = 8;
boardArray = [];
boardY = 0;
tileWidth = 39;
tileHeight = 39.5;
dropArray = [];
moveArray = [];
dropSpeed = 15;
swapDirection = "";
swapGemAr = [];
swapSpeed = 5;
numBomb = 0;
numHyper = 0;
randySpecials = [];
gClickTimer = 0;
levelMult = 1;
currentLevel = _root.level1;
gotLevelUpGem = false;
theAddedScore = 0;
totalBonusScore = 0;
consecMatches = 0;
highSpeed = 0;
textScore = "";
frameCounter = 0;
lastTime = getTimer();
totalFrameTime = 0;
_root.framesPerSecond = 32;
allFrames = 0;
cascadeCounter = 1;
theGems = 0;
_root.theGems = 0;
dropOnSpeed = 3;
dropRegMatch = 2.65;
gemDepth = 1000;
gemHigh1 = "";
gemHigh2 = "";
gemGlowing = "";
gemsShrinking = [];
bombCols = [];
bombcombo = 0;
gemDragging = false;
gemDragTarg = "";
nobomb = false;
masterGemMatchScore = 0;
forcePluster = [];
madeHyper = false;
madeBoom = false;
matchedLevelUp = false;
hackSel = 0;
numberShards = 3;
bombQueue = [];
bQbreak = -1;
bQTimer = bQbreak;
lightGems = [];
lStrikes = [];
lightBreak = 1;
lightTimer = 0;
shardDepth = 9999;
shardsOn = [];
shardRemove = 385;
speedDecrease = 1.2;
hintArrows = [];
showPower = false;
showHyper = false;
doneBang = false;
doneHyper = false;
shownWarn = false;
doneHintTurn = false;
hackHintCount = 0;
scorePopDepth = 50000;
testScoreDepthy = 70000 /* 0x011170 */;
myScore = 1;
myScoret = 0;
combocount = 1;
basepoints = 10;
multiplierCounter = 0;
matchMultiplier = 1;
scorecombocount = 0;
powerTarget = 0;
currentPower = 0;
autoHintTimer = 0;
autoHintAt = 5000;
lastScoreYHack = -100;
mTimedBonus = 130;
mTimedBonusMult = 50;
mTimedBonusAccel = 10;
mTimedPMBase = 20;
mTimedPMMult = 10;
TimedPV = 50;
TimedPA = 0.26;
TimedPJ = 0.00121;
GraceSeconds = 0.2;
GraceSecondsMult = 0.002;
GraceSecondsMax = 1;
delayGraceTimer = 0;
actionPaused = false;
twoMinutes = false;
oneMinute = false;
thirtySeconds = false;
fifteen = false;
multiplierDecay = 0;
totalBonusScore = 0;
multiplierTime = 0;
actionTimer = 70;
actionDec = 3;
actionCounter = 0;
redflash = false;
actionTimeOver = false;
mBarLen = 500;
map1 = [[9, 9, 9, 9, 9, 9, 9, 9], [9, 9, 9, 9, 9, 9, 9, 9], [9, 5, 4, 6, 5, 4, 5, 9], [9, 5, 4, 6, 5, 4, 5, 9], [9, 4, 5, 5, 6, 5, 4, 9], [3, 2, 1, 7, 7, 1, 2, 3], [3, 2, 1, 7, 7, 1, 2, 3], [2, 3, 7, 1, 1, 7, 3, 2]];
map2 = [[9, 9, 9, 9, 9, 9, 9, 9], [9, 9, 9, 9, 9, 9, 9, 9], [9, 9, 9, 9, 9, 9, 9, 9], [9, 9, 9, 9, 9, 9, 9, 9], [9, 9, 9, 9, 9, 9, 9, 9], [6, 4, 1, 5, 2, 7, 4, 3], [3, 6, 4, 1, 5, 2, 7, 4], [6, 4, 1, 5, 2, 7, 4, 3]];
map3 = [[9, 9, 9, 9, 9, 9, 9, 9], [9, 9, 4, 4, 9, 9, 9, 9], [9, 6, 1, 6, 9, 9, 9, 9], [9, 1, 6, 1, 9, 9, 9, 9], [9, 6, 1, 6, 9, 9, 9, 9], [9, 1, 6, 1, 9, 9, 9, 9], [9, 6, 1, 6, 5, 5, 9, 9], [9, 1, 6, 1, 14, 5, 9, 9]];
map4 = [[9, 9, 9, 9, 9, 9, 9, 9], [9, 9, 9, 9, 9, 9, 9, 5], [9, 9, 9, 9, 9, 9, 9, 5], [9, 9, 9, 9, 4, 9, 4, 4], [9, 6, 4, 3, 7, 2, 6, 5], [9, 6, 4, 3, 7, 2, 6, 5], [9, 4, 3, 7, 2, 6, 5, 1], [9, 6, 4, 3, 7, 2, 6, 5]];
map5 = [[9, 9, 9, 9, 9, 9, 9, 9], [9, 9, 9, 9, 9, 5, 9, 9], [9, 9, 9, 9, 1, 4, 9, 9], [9, 9, 9, 9, 1, 4, 9, 9], [9, 9, 7, 2, 4, 1, 9, 9], [9, 9, 7, 4, 6, 4, 9, 9], [9, 9, 4, 7, 4, 6, 9, 9], [9, 9, 7, 5, 5, 6, 9, 9]];
map6 = [[9, 9, 9, 9, 9, 9, 9, 9], [9, 9, 9, 9, 9, 1, 9, 9], [9, 9, 9, 9, 6, 5, 6, 9], [9, 9, 9, 9, 4, 6, 4, 9], [9, 9, 9, 9, 2, 4, 2, 9], [9, 9, 9, 9, 6, 2, 6, 9], [9, 9, 9, 9, 4, 6, 4, 9], [1, 9, 9, 5, 5, 4, 5, 5]];
map7 = [[9, 9, 9, 9, 5, 4, 9, 9], [9, 9, 9, 9, 1, 4, 9, 9], [9, 9, 9, 9, 1, 2, 9, 9], [3, 9, 9, 9, 6, 1, 5, 8], [6, 9, 9, 9, 5, 1, 4, 8], [7, 9, 9, 9, 5, 7, 1, 8], [2, 9, 9, 6, 3, 5, 6, 8], [4, 9, 9, 5, 4, 1, 6, 8]];
currentPuzSolutions = [];
validPairs = [];
puzzleSolveable = true;
puzzleSolveCount = 0;
solutionsUndo = [];
mrPuzMoveCount = 0;
puzzle1Solutions = [[[[7, 1], [7, 0]], [[7, 3], [7, 2]], [[7, 5], [7, 4]], [[7, 7], [7, 6]], [[4, 5], [4, 6]], [[4, 3], [4, 4]], [[4, 1], [4, 2]]]];
puzzle2Solutions = [[[[6, 7], [6, 0]], [[6, 6], [6, 0]], [[6, 5], [6, 0]], [[6, 0], [6, 4]], [[6, 3], [6, 0]], [[6, 0], [6, 2]], [[6, 0], [6, 1]]]];
puzzle3Solutions = [[[[3, 2], [2, 2]], [[5, 2], [4, 2]], [[7, 2], [6, 2]]], [[[6, 2], [7, 2]], [[2, 2], [5, 2]], [[4, 2], [3, 2]]], [[[2, 2], [7, 2]], [[3, 2], [6, 2]], [[4, 2], [5, 2]]], [[[2, 2], [3, 2]], [[7, 2], [4, 2]], [[5, 2], [6, 2]]], [[[2, 2], [7, 2]], [[3, 2], [4, 2]], [[6, 2], [5, 2]]], [[[6, 2], [7, 2]], [[2, 2], [3, 2]], [[5, 2], [4, 2]]], [[[2, 2], [7, 2]], [[3, 2], [4, 2]], [[6, 2], [5, 2]]], [[[2, 2], [6, 1]], [[7, 3], [6, 3]], [[6, 1], [6, 2]], [[4, 3], [4, 2]]], [[[2, 1], [7, 1]], [[2, 3], [3, 3]], [[6, 2], [6, 3]], [[4, 1], [4, 2]]], [[[5, 3], [7, 2]], [[5, 1], [6, 1]], [[5, 3], [5, 2]], [[3, 1], [3, 2]]], [[[5, 1], [7, 2]], [[5, 3], [6, 3]], [[5, 1], [5, 2]], [[3, 3], [3, 2]]], [[[6, 3], [2, 2]], [[6, 1], [7, 1]], [[6, 2], [6, 3]], [[4, 1], [4, 2]]], [[[7, 2], [2, 2]], [[3, 1], [4, 1]], [[6, 2], [6, 1]], [[4, 3], [4, 2]]], [[[2, 3], [7, 3]], [[2, 1], [3, 1]], [[6, 1], [6, 2]], [[4, 3], [4, 2]]], [[[2, 2], [7, 2]], [[4, 3], [3, 3]], [[6, 3], [6, 2]], [[4, 1], [4, 2]]], [[[6, 1], [7, 1]], [[6, 3], [2, 2]], [[6, 3], [6, 2]], [[4, 1], [4, 2]]], [[[6, 3], [7, 3]], [[6, 1], [2, 2]], [[6, 2], [6, 1]], [[4, 2], [4, 3]]], [[[6, 2], [7, 2]], [[2, 1], [3, 1]], [[5, 2], [5, 1]], [[3, 2], [3, 3]]]];
puzzle4Solutions = [[[[3, 4], [3, 5]], [[6, 7], [7, 1]], [[6, 7], [6, 1]], [[6, 7], [6, 2]], [[6, 7], [6, 3]], [[6, 7], [6, 4]], [[6, 7], [6, 5]], [[6, 7], [6, 6]]]];
puzzle5Solutions = [[[[4, 4], [5, 4]], [[4, 5], [4, 4]]], [[[6, 2], [3, 2]], [[5, 4], [4, 4]], [[6, 2], [7, 2]], [[4, 4], [4, 5]]], [[[6, 2], [3, 2]], [[5, 4], [4, 4]], [[4, 4], [4, 5]], [[6, 2], [7, 2]]]];
puzzle6Solutions = [[[[2, 5], [1, 5]], [[3, 5], [2, 5]], [[4, 5], [3, 5]], [[5, 5], [4, 5]], [[6, 5], [5, 5]], [[7, 5], [6, 5]]], [[[2, 5], [1, 5]], [[7, 5], [2, 5]], [[6, 5], [2, 5]], [[5, 5], [3, 5]], [[4, 5], [3, 5]]], [[[2, 5], [1, 5]], [[2, 5], [3, 5]], [[3, 5], [7, 5]], [[4, 5], [6, 5]], [[4, 5], [5, 5]]], [[[2, 5], [1, 5]], [[2, 5], [7, 5]], [[2, 5], [5, 5]], [[2, 5], [3, 5]], [[3, 5], [4, 5]], [[5, 5], [6, 5]]], [[[2, 5], [1, 5]], [[2, 5], [7, 5]], [[4, 5], [6, 5]], [[5, 5], [4, 5]], [[2, 5], [3, 5]]], [[[2, 5], [1, 5]], [[2, 5], [3, 5]], [[3, 5], [7, 5]], [[3, 5], [5, 5]], [[4, 5], [3, 5]], [[5, 5], [6, 5]]], [[[2, 5], [1, 5]], [[2, 5], [7, 5]], [[2, 5], [6, 5]], [[2, 5], [5, 5]], [[2, 5], [4, 5]], [[3, 5], [2, 5]]], [[[2, 5], [1, 5]], [[2, 5], [6, 5]], [[5, 5], [2, 5]], [[7, 5], [6, 5]], [[2, 5], [4, 5]], [[2, 5], [3, 5]]], [[[2, 5], [1, 5]], [[4, 5], [2, 5]], [[5, 5], [4, 5]], [[6, 5], [5, 5]], [[7, 5], [6, 5]], [[2, 5], [3, 5]]], [[[2, 5], [1, 5]], [[5, 5], [2, 5]], [[6, 5], [5, 5]], [[7, 5], [6, 5]], [[2, 5], [4, 5]], [[2, 5], [3, 5]]], [[[2, 5], [1, 5]], [[2, 5], [6, 5]], [[2, 5], [4, 5]], [[2, 5], [3, 5]], [[6, 5], [7, 5]], [[5, 5], [4, 5]]], [[[1, 5], [0, 5]], [[1, 5], [6, 5]], [[5, 6], [1, 5]], [[1, 5], [3, 5]], [[2, 5], [1, 5]], [[5, 6], [5, 5]]], [[[1, 5], [2, 5]], [[6, 5], [2, 5]], [[3, 5], [5, 5]], [[7, 5], [6, 5]], [[3, 5], [4, 5]]], [[[1, 5], [2, 5]], [[5, 5], [2, 5]], [[5, 5], [7, 5]], [[4, 5], [2, 5]], [[5, 5], [6, 5]], [[3, 5], [2, 5]]], [[[1, 5], [2, 5]], [[2, 5], [7, 5]], [[3, 5], [2, 5]], [[3, 5], [5, 5]], [[3, 5], [4, 5]], [[6, 5], [5, 5]]], [[[2, 5], [1, 5]], [[2, 5], [4, 5]], [[4, 5], [6, 5]], [[4, 5], [5, 5]], [[3, 5], [2, 5]], [[7, 5], [6, 5]]], [[[1, 5], [2, 5]], [[2, 5], [7, 5]], [[2, 5], [6, 5]], [[3, 5], [4, 5]], [[4, 5], [5, 5]]], [[[2, 5], [1, 5]], [[2, 5], [7, 5]], [[5, 5], [4, 5]], [[5, 5], [6, 5]], [[2, 5], [3, 5]]], [[[2, 5], [1, 5]], [[6, 5], [2, 5]], [[7, 5], [6, 5]], [[4, 5], [3, 5]], [[5, 5], [4, 5]]], [[[2, 5], [1, 5]], [[2, 5], [6, 5]], [[4, 5], [3, 5]], [[7, 5], [6, 5]], [[4, 5], [5, 5]]], [[[1, 5], [2, 5]], [[2, 5], [7, 5]], [[2, 5], [6, 5]], [[2, 5], [5, 5]], [[3, 5], [2, 5]], [[4, 5], [3, 5]]], [[[1, 5], [2, 5]], [[2, 5], [6, 5]], [[6, 5], [7, 5]], [[3, 5], [5, 5]], [[4, 5], [3, 5]]], [[[1, 5], [2, 5]], [[7, 5], [2, 5]], [[2, 5], [5, 5]], [[2, 5], [4, 5]], [[2, 5], [3, 5]], [[5, 5], [6, 5]]], [[[2, 5], [1, 5]], [[3, 5], [2, 5]], [[4, 5], [3, 5]], [[5, 5], [4, 5]], [[7, 5], [5, 5]], [[6, 5], [5, 5]]], [[[1, 5], [2, 5]], [[5, 5], [2, 5]], [[3, 5], [2, 5]], [[4, 5], [3, 5]], [[5, 5], [7, 5]], [[6, 5], [5, 5]]], [[[2, 5], [1, 5]], [[2, 5], [3, 5]], [[3, 5], [5, 5]], [[5, 5], [7, 5]], [[6, 5], [5, 5]], [[4, 5], [3, 5]]], [[[2, 5], [1, 5]], [[2, 5], [5, 5]], [[5, 5], [6, 5]], [[2, 5], [3, 5]], [[6, 5], [7, 5]], [[3, 5], [4, 5]]], [[[1, 5], [2, 5]], [[3, 5], [2, 5]], [[3, 5], [7, 5]], [[5, 5], [4, 5]], [[5, 5], [6, 5]]], [[[2, 5], [1, 5]], [[2, 5], [3, 5]], [[3, 5], [5, 5]], [[3, 5], [4, 5]], [[6, 5], [5, 5]], [[7, 5], [6, 5]]], [[[1, 5], [2, 5]], [[2, 5], [6, 5]], [[6, 5], [7, 5]], [[2, 5], [5, 5]], [[2, 5], [3, 5]], [[3, 5], [4, 5]]]];
puzzle7Solutions = [[[[7, 4], [3, 7]], [[3, 6], [7, 4]], [[7, 7], [7, 6]], [[7, 5], [7, 4]], [[6, 7], [6, 4]], [[6, 6], [6, 4]], [[6, 5], [6, 4]], [[2, 5], [4, 7]], [[4, 6], [2, 5]], [[5, 5], [5, 7]], [[5, 6], [5, 5]]], [[[3, 7], [2, 5]], [[3, 6], [2, 5]], [[7, 7], [7, 6]], [[6, 7], [6, 4]], [[5, 7], [5, 5]], [[4, 6], [4, 7]], [[7, 4], [7, 5]], [[6, 4], [6, 6]], [[6, 4], [6, 5]], [[5, 5], [5, 6]], [[2, 5], [1, 5]], [[6, 5], [2, 5]], [[7, 5], [6, 5]], [[2, 5], [5, 5]], [[2, 5], [4, 5]], [[2, 5], [3, 5]]], [[[2, 5], [3, 7]], [[3, 6], [2, 5]], [[7, 7], [7, 6]], [[5, 7], [5, 5]], [[4, 7], [4, 6]], [[2, 5], [7, 4]], [[7, 5], [7, 4]], [[6, 4], [6, 7]], [[6, 6], [6, 4]], [[5, 6], [5, 5]], [[6, 5], [6, 4]]]];
breakCount = 0;
solBuilder = [];
puzzleBoard = [];
puzzleUndo = [];
puzzleUndoOrgPos = [];
puzzlesComplete = [];
puzzResetOrg = false;
puzzleBoardRestore = [];
puz1shown = false;
puz2shown = false;
puz3shown = false;
if (!_root.practice) {
if (_root.emailChallenge == 2) {
_root.theEmail = _root.firstEmail;
} else {
_root.theEmail = _root.secondEmail;
}
}
if (_root.practice) {
_root.theEmail = _root.highscore;
}
if (_root.gameMode == "classic") {
_root.theEmail = "";
}
this.boardinAnimate.scordp.orangebar.stop();
gamePaused = false;
spacePressed = false;
actionpPop.swapDepths(99999999);
this.m_iTimeAcc = 0;
this.m_iTimeLast = getTimer();
this.onEnterFrame = function () {
frameCounter++;
timePassed = getTimer() - lastTime;
lastTime = lastTime + timePassed;
theFrames = 1000 / timePassed;
allFrames = allFrames + theFrames;
if (frameCounter >= 32) {
frameCounter = 0;
_root.framesPerSecond = allFrames / 32;
allFrames = 0;
}
var _local5 = getTimer() - m_iTimeLast;
var _local3 = 0;
var _local2 = 33;
while (_local3 < _local5) {
think();
m_iTimeAcc = m_iTimeAcc + _local2;
var _local4 = getTimer() - m_iTimeLast;
if (_local4 > 100) {
_root.thinkStarves++;
m_iTimeLast = getTimer();
break;
}
m_iTimeLast = m_iTimeLast + _local2;
_local3 = _local3 + _local2;
}
};
hackPauseT = 0;
API_timer = 0;
API_btime = 100;
shakeCount = 20;
beginGame();
Symbol 936 MovieClip Frame 1
stop();
Symbol 936 MovieClip Frame 124
masterUnpause();
stop();
Symbol 959 MovieClip Frame 1
if (_parent.levFrame == 8) {
gotoAndStop (11);
} else if (_parent.levFrame == 9) {
gotoAndStop(_root.scoreUpgf + 1);
} else {
gotoAndStop (1);
}
Symbol 960 MovieClip Frame 1
stop();
Symbol 960 MovieClip Frame 75
if (_root.gameMode == "puzzle") {
if (tClip._currentframe == 7) {
_root.maingame.forcePuzzleLevel();
}
}
Symbol 960 MovieClip Frame 89
_root.maingame.readyForInput = true;
if (_root.maingame.flagMeUpBaby) {
_root.maingame.flagMeUpBaby = false;
}
Symbol 966 Button
on (release) {
this._visible = false;
_root.shownThePower = true;
_root.maingame.hideHint();
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 967 Button
on (release) {
_root.maingame.hideHint();
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 972 Button
on (release) {
this._visible = false;
_root.shownTheHyper = true;
_root.maingame.hideHint();
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 982 Button
on (release) {
_parent.gotoAndStop(1);
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 983 Button
on (release) {
_root.maingame.puzzUndoToPoss();
_parent.gotoAndStop(1);
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 988 MovieClip Frame 1
stop();
Symbol 989 Button
on (release) {
_root.ppOff();
gotoAndStop (1);
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 993 Button
on (release) {
_root.maingame.hideHint();
gotoAndStop (1);
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 997 MovieClip Frame 1
stop();
delete this.onEnterFrame;
Symbol 997 MovieClip Frame 2
bbut.useHandCursor = false;
Symbol 997 MovieClip Frame 3
bbut.useHandCursor = false;
Symbol 997 MovieClip Frame 4
bbut.useHandCursor = false;
spacePressedDown = false;
this.onEnterFrame = function () {
if (Key.isDown(32)) {
spacePressedDown = true;
} else if (spacePressedDown == true) {
_root.ppOff();
gotoAndStop (1);
spacePressedDown = false;
}
};
Symbol 997 MovieClip Frame 5
bbut.useHandCursor = false;
Symbol 998 MovieClip Frame 1
_root.gameDuration = _root.formatTime(_root.challengeTime * 180000);
var myTextFormat = new TextFormat();
myTextFormat.underline = true;
GameOverTextBox.setTextFormat(myTextFormat);
blankiebut.useHandCursor = false;
Symbol 1001 MovieClip Frame 1
this.onRollOver = function () {
var _local3 = "power";
theMC = _parent.attachMovie("gameover_legendtooltip", _local3, _parent.getNextHighestDepth());
theMC._x = this._x - 15;
theMC._y = this._y + 20;
theMC.theMessage = "Created by matching 4 gems of the same color";
};
this.onRollOut = function () {
var _local2 = "power";
theMC = _parent[_local2];
theMC.removeMovieClip();
};
Symbol 1008 MovieClip Frame 1
stop();
Symbol 1008 MovieClip Frame 5
stop();
Symbol 1015 MovieClip Frame 1
stop();
Symbol 1015 MovieClip Frame 19
stop();
Symbol 1019 MovieClip Frame 1
stop();
Symbol 1019 MovieClip Frame 13
stop();
Symbol 1030 MovieClip Frame 1
stop();
Symbol 1030 MovieClip Frame 6
stop();
Symbol 1032 MovieClip Frame 1
stop();
Symbol 1032 MovieClip Frame 2
if (_root.xdebug) {
urlTextbox._visible = true;
} else {
urlTextbox._visible = false;
}
randomMessage = int(random(4));
switch (randomMessage) {
case 0 :
_root.BJ2Message = "Play the Classic Bejeweled 2 on PopCap.com for Free";
_root.BJ2Link = "http://www.popcap.com/games/free/bejeweled2/?cid=fba:bj2:ingame2";
break;
case 1 :
_root.BJ2Message = "";
_root.BJ2Link = "";
break;
case 2 :
_root.BJ2Message = "";
_root.BJ2Link = "";
break;
case 3 :
_root.BJ2Message = "";
_root.BJ2Link = "";
}
Symbol 1032 MovieClip Frame 3
avatarsEnd.gotoAndStop(_root.avatarFrame);
Symbol 1032 MovieClip Frame 4
_root.randomFrame = random(5) + 1;
if (_root.randomFrame == _root.avatarFrame) {
_root.randomFrame++;
}
avatarsWinner.gotoAndStop(_root.randomFrame);
_root.theCounter = 0;
_root.movieRolling = true;
avatarsLoser.gotoAndStop(_root.avatar);
replyMessageTextBox.onSetFocus = function () {
replyMessageTextBox.text = "";
};
_root.timeCounter = 0;
_root.sentEmail = false;
this.onEnterFrame = function () {
_root.timeCounter++;
if ((_root.timeCounter >= 320) && (!_root.sentEmail)) {
_root.sentEmail = true;
_root.maingame.sendResults();
_root.maingame.quitGamePress();
}
};
Symbol 1032 MovieClip Frame 5
_root.randomFrame = random(5) + 1;
if (_root.randomFrame == _root.avatarFrame) {
_root.randomFrame++;
}
avatarsLoser.gotoAndStop(_root.randomFrame);
_root.theCounter = 0;
_root.movieRolling = true;
avatarsWinner.gotoAndStop(_root.avatar);
replyMessageTextBox.onSetFocus = function () {
replyMessageTextBox.text = "";
};
_root.timeCounter = 0;
this.onEnterFrame = function () {
_root.timeCounter++;
if ((_root.timeCounter >= 320) && (!_root.sentEmail)) {
_root.sentEmail = true;
_root.maingame.sendResults();
_root.maingame.quitGamePress();
}
};
Symbol 1032 MovieClip Frame 6
if (_root.xdebug) {
urlTextbox._visible = true;
} else {
urlTextbox._visible = false;
}
var myTextFormat = new TextFormat();
myTextFormat.underline = true;
postprofile.postText.setTextFormat(myTextFormat);
_root.topToolTipGreen = new Array();
_root.topToolTipBlue = new Array();
var myTextFormat = new TextFormat();
myTextFormat.underline = true;
GameOverTextBox.setTextFormat(myTextFormat);
_root.theTextScore = _root.textHighScore;
_root.allTheMultipliers = new Array();
var theGreenRectArray = new Array();
var theGreenTopPiece = new Array();
var theGreenTopArray = new Array();
var theGreenBarArray = new Array();
var theGreenBotPiece = new Array();
var theBlueRectArray = new Array();
var theBlueTopPiece = new Array();
var theBlueTopArray = new Array();
var theBlueBarArray = new Array();
var multipleMultipliers = new Array();
var multiplierDepth = 0;
var theScale = 0;
var timeCounter = 0;
publishbutton._visible = false;
newHighScore = _root.maingame.myScoret;
if (newHighScore < 25000) {
scoreRange = 25000;
scoreBottom = 0;
percentRange = 30;
percentBottom = 0;
percentInRange = (newHighScore - scoreBottom) / scoreRange;
percentile = 100 - ((percentInRange * percentRange) + percentBottom);
} else if (newHighScore < 50000) {
scoreRange = 25000;
scoreBottom = 25000;
percentRange = 20;
percentBottom = 30;
percentInRange = (newHighScore - scoreBottom) / scoreRange;
percentile = 100 - ((percentInRange * percentRange) + percentBottom);
} else if (newHighScore < 75000) {
scoreRange = 25000;
scoreBottom = 50000;
percentRange = 17;
percentBottom = 50;
percentInRange = (newHighScore - scoreBottom) / scoreRange;
percentile = 100 - ((percentInRange * percentRange) + percentBottom);
} else if (newHighScore < 100000) {
scoreRange = 25000;
scoreBottom = 75000 /* 0x0124F8 */;
percentRange = 10;
percentBottom = 67;
percentInRange = (newHighScore - scoreBottom) / scoreRange;
percentile = 100 - ((percentInRange * percentRange) + percentBottom);
} else if (newHighScore < 125000) {
scoreRange = 25000;
scoreBottom = 100000 /* 0x0186A0 */;
percentRange = 7;
percentBottom = 77;
percentInRange = (newHighScore - scoreBottom) / scoreRange;
percentile = 100 - ((percentInRange * percentRange) + percentBottom);
} else if (newHighScore < 150000) {
scoreRange = 25000;
scoreBottom = 125000 /* 0x01E848 */;
percentRange = 6;
percentBottom = 84;
percentInRange = (newHighScore - scoreBottom) / scoreRange;
percentile = 100 - ((percentInRange * percentRange) + percentBottom);
} else if (newHighScore < 175000) {
scoreRange = 25000;
scoreBottom = 150000 /* 0x0249F0 */;
percentRange = 5;
percentBottom = 90;
percentInRange = (newHighScore - scoreBottom) / scoreRange;
percentile = 100 - ((percentInRange * percentRange) + percentBottom);
} else if (newHighScore < 200000) {
scoreRange = 25000;
scoreBottom = 175000 /* 0x02AB98 */;
percentRange = 3;
percentBottom = 95;
percentInRange = (newHighScore - scoreBottom) / scoreRange;
percentile = 100 - ((percentInRange * percentRange) + percentBottom);
} else if (newHighScore < 225000) {
scoreRange = 25000;
scoreBottom = 200000 /* 0x030D40 */;
percentRange = 1;
percentBottom = 98;
percentInRange = (newHighScore - scoreBottom) / scoreRange;
percentile = 100 - ((percentInRange * percentRange) + percentBottom);
} else if (newHighScore < 250000) {
scoreRange = 25000;
scoreBottom = 225000 /* 0x036EE8 */;
percentRange = 0.9;
percentBottom = 99;
percentInRange = (newHighScore - scoreBottom) / scoreRange;
percentile = 100 - ((percentInRange * percentRange) + percentBottom);
}
thePercentText = percentile.toString();
if (thePercentText.length > 5) {
thePercentText = thePercentText.substring(0, 4);
}
if (newHighScore >= 250000) {
_root.topPercentText = String("One of the world's best!");
} else if (newHighScore < 25000) {
_root.topPercentText = "";
} else {
_root.topPercentText = String(("Top " + thePercentText) + "% of all scores");
}
trace("The score: " + _root.maingame.myScoret);
if (_root.maingame.myScore >= 25000) {
_root.theMedalFrame = 0;
_root.theMedalFrame = int(_root.maingame.myScore / 25000);
trace("The number of medal " + _root.theMedalFrame);
medal._visible = true;
} else {
medal._visible = false;
publishbutton._visible = false;
}
var theHighBar = 0;
var barNumber = 0;
i = 0;
while (i < 12) {
var theCurrentBar = (_root.normalPointsArray[i] + _root.bonusPointsArray[i]);
if (theCurrentBar > theHighBar) {
barNumber = i;
theHighBar = theCurrentBar;
}
i++;
}
trace("Bar number: " + barNumber);
i = 0;
while (i < _root.multipliersArray.length) {
if (_root.multipliersArray[i].mTimeSpace == barNumber) {
trace("adding 5k to highest bar");
theHighBar = theHighBar + 5000;
}
i++;
}
trace("The highest bar " + theHighBar);
if (theHighBar < 2500) {
_root.Graph1 = "2500";
_root.Graph2 = "2000";
_root.Graph3 = "1500";
_root.Graph4 = "1000";
_root.Graph5 = "500";
theScale = 2500;
} else if (theHighBar < 5000) {
_root.Graph1 = "5K";
_root.Graph2 = "4K";
_root.Graph3 = "3K";
_root.Graph4 = "2K";
_root.Graph5 = "1K";
theScale = 5000;
} else if (theHighBar < 7500) {
_root.Graph1 = "7.5K";
_root.Graph2 = "6K";
_root.Graph3 = "4.5K";
_root.Graph4 = "3K";
_root.Graph5 = "1.5K";
theScale = 7500;
} else if (theHighBar < 10000) {
_root.Graph1 = "10K";
_root.Graph2 = "8K";
_root.Graph3 = "6K";
_root.Graph4 = "4K";
_root.Graph5 = "2K";
theScale = 10000;
} else if (theHighBar < 15000) {
_root.Graph1 = "15K";
_root.Graph2 = "12K";
_root.Graph3 = "9K";
_root.Graph4 = "6K";
_root.Graph5 = "3K";
theScale = 15000;
} else if (theHighBar < 20000) {
_root.Graph1 = "20K";
_root.Graph2 = "16K";
_root.Graph3 = "12K";
_root.Graph4 = "8K";
_root.Graph5 = "4K";
theScale = 20000;
} else if (theHighBar < 25000) {
_root.Graph1 = "25K";
_root.Graph2 = "20K";
_root.Graph3 = "15K";
_root.Graph4 = "10K";
_root.Graph5 = "5K";
theScale = 25000;
} else if (theHighBar < 30000) {
_root.Graph1 = "30K";
_root.Graph2 = "24K";
_root.Graph3 = "18K";
_root.Graph4 = "12K";
_root.Graph5 = "6K";
theScale = 30000;
} else if (theHighBar < 40000) {
_root.Graph1 = "40K";
_root.Graph2 = "32K";
_root.Graph3 = "24K";
_root.Graph4 = "16K";
_root.Graph5 = "8K";
theScale = 40000;
} else if (theHighBar < 50000) {
_root.Graph1 = "50K";
_root.Graph2 = "40K";
_root.Graph3 = "30K";
_root.Graph4 = "20K";
_root.Graph5 = "10K";
theScale = 50000;
} else if (theHighBar < 75000) {
_root.Graph1 = "75K";
_root.Graph2 = "60K";
_root.Graph3 = "45K";
_root.Graph4 = "30K";
_root.Graph5 = "15K";
theScale = 75000 /* 0x0124F8 */;
} else {
_root.Graph1 = "100K";
_root.Graph2 = "80K";
_root.Graph3 = "60K";
_root.Graph4 = "40K";
_root.Graph5 = "20K";
theScale = 100000 /* 0x0186A0 */;
}
trace("The Scale: " + theScale);
i = 0;
while (i < 12) {
_root.topToolTipBlue[i] = 226;
_root.topToolTipGreen[i] = 226;
theGreenRectArray[i] = new flash.geom.Rectangle(0, -120, 33, 120);
theGreenTopPiece[i] = this["GreenBarTop" + (i + 1)];
theGreenBarArray[i] = this["GreenBar" + (i + 1)];
theGreenBotPiece[i] = this["GreenBarBot" + (i + 1)];
theGreenTopArray[i] = -124 + (120 * (_root.normalPointsArray[i] / theScale));
theGreenBarArray[i].scrollRect = theGreenRectArray[i];
theBlueTopPiece[i] = this["BlueBarTop" + (i + 1)];
theBlueBarArray[i] = this["BlueBar" + (i + 1)];
theBlueTopArray[i] = theGreenTopArray[i] + (120 * (_root.bonusPointsArray[i] / theScale));
theBlueRectArray[i] = new flash.geom.Rectangle(0, -120, 33, (-theGreenTopArray[i]) - 5);
theBlueBarArray[i].scrollRect = theBlueRectArray[i];
if (_root.normalPointsArray[i] <= 0) {
theBlueTopPiece[i]._visible = false;
theBlueBarArray[i]._visible = false;
theGreenTopPiece[i]._visible = false;
theGreenBarArray[i]._visible = false;
theGreenBotPiece[i]._visible = false;
}
multipleMultipliers[i] = 0;
theGreenBarArray[i].onRollOver = function () {
theBarNumber = Number(this._name.substr(8));
theTotalScore = _root.normalPointsArray[theBarNumber - 1];
var _local4 = "tt" + theBarNumber;
theMC = _parent.attachMovie("gameover_normaltooltip", _local4, getNextHighestDepth());
theMC.theScore.text = theTotalScore;
theMC._y = _root.topToolTipGreen[theBarNumber - 1] + 60;
if (theBarNumber >= 10) {
theMC.gotoAndStop(2);
theMC._x = -85 + (37 * theBarNumber);
} else {
theMC._x = 50 + (37 * theBarNumber);
}
};
theBlueBarArray[i].onRollOver = function () {
theBarNumber = Number(this._name.substr(7));
theTotalScore = _root.bonusPointsArray[theBarNumber - 1];
var _local4 = "tt" + theBarNumber;
theMC = _parent.attachMovie("gameover_bonustooltip", _local4, getNextHighestDepth());
theMC.theScore.text = theTotalScore;
theMC._y = _root.topToolTipBlue[theBarNumber - 1] + 60;
if (theBarNumber >= 10) {
theMC.gotoAndStop(2);
theMC._x = -85 + (37 * theBarNumber);
} else {
theMC._x = 50 + (37 * theBarNumber);
}
};
theGreenBarArray[i].onRollOut = function () {
theBarNumber = Number(this._name.substr(8));
var _local3 = "tt" + theBarNumber;
theMC = _parent[_local3];
theMC.removeMovieClip();
};
theBlueBarArray[i].onRollOut = function () {
theBarNumber = Number(this._name.substr(7));
var _local3 = "tt" + theBarNumber;
theMC = _parent[_local3];
theMC.removeMovieClip();
};
theGreenTopPiece[i].onRollOver = function () {
theBarNumber = Number(this._name.substr(11));
theTotalScore = _root.normalPointsArray[theBarNumber - 1];
var _local4 = "tt" + theBarNumber;
theMC = _parent.attachMovie("gameover_normaltooltip", _local4, getNextHighestDepth());
theMC.theScore.text = theTotalScore;
theMC._y = _root.topToolTipGreen[theBarNumber - 1] + 60;
if (theBarNumber >= 10) {
theMC.gotoAndStop(2);
theMC._x = -85 + (37 * theBarNumber);
} else {
theMC._x = 50 + (37 * theBarNumber);
}
};
theBlueTopPiece[i].onRollOver = function () {
theBarNumber = Number(this._name.substr(10));
theTotalScore = _root.bonusPointsArray[theBarNumber - 1];
var _local4 = "tt" + theBarNumber;
theMC = _parent.attachMovie("gameover_bonustooltip", _local4, getNextHighestDepth());
theMC.theScore.text = theTotalScore;
theMC._y = _root.topToolTipBlue[theBarNumber - 1] + 60;
if (theBarNumber >= 10) {
theMC.gotoAndStop(2);
theMC._x = -85 + (37 * theBarNumber);
} else {
theMC._x = 50 + (37 * theBarNumber);
}
};
theGreenTopPiece[i].onRollOut = function () {
theBarNumber = Number(this._name.substr(11));
var _local3 = "tt" + theBarNumber;
theMC = _parent[_local3];
theMC.removeMovieClip();
};
theBlueTopPiece[i].onRollOut = function () {
theBarNumber = Number(this._name.substr(10));
var _local3 = "tt" + theBarNumber;
theMC = _parent[_local3];
theMC.removeMovieClip();
};
i++;
}
this.onLoad = function () {
trace("Gameover loaded");
};
this.onUnload = function () {
trace("Gameover unloaded");
};
this.onEnterFrame = function () {
timeCounter++;
trace("Game over on enter frame: " + timeCounter);
if (timeCounter == 1) {
movingName.gotoAndPlay(2);
} else if (timeCounter == 8) {
movingScore.gotoAndPlay(2);
} else if (timeCounter == 16) {
movingPercent.gotoAndPlay(2);
} else if (timeCounter == 24) {
movingHighscore.gotoAndPlay(2);
} else if (timeCounter == 32) {
topPercent.gotoAndPlay(2);
medal.gotoAndPlay(2);
} else if ((timeCounter == 48) && (_root.maingame.myScore >= 25000)) {
publishbutton._visible = true;
publishbutton.enabled = true;
} else if (timeCounter >= 64) {
i = 0;
while (i < 12) {
if (theGreenTopArray[i] > -20) {
theSpeed = 7;
} else if (theGreenTopArray[i] > -40) {
theSpeed = 6;
} else if (theGreenTopArray[i] > -60) {
theSpeed = 5;
} else if (theGreenTopArray[i] > -80) {
theSpeed = 4;
} else if (theGreenTopArray[i] > -100) {
theSpeed = 3;
} else {
theSpeed = 3;
}
var _local3;
if ((i > 0) && (theGreenTopArray[i - 1] != -120)) {
_local3 = Math.abs((-124 - theGreenRectArray[i - 1].y) / (-124 - theGreenTopArray[i - 1]));
} else {
_local3 = 1;
}
if ((theGreenRectArray[i].y < theGreenTopArray[i]) && (_local3 > 0.5)) {
theGreenRectArray[i].y = theGreenRectArray[i].y + theSpeed;
theGreenTopPiece[i]._y = theGreenTopPiece[i]._y - theSpeed;
if (theGreenRectArray[i].y > theGreenTopArray[i]) {
theGreenRectArray[i].y = theGreenTopArray[i];
theGreenTopPiece[i]._y = 103 - theGreenRectArray[i].y;
}
theGreenBarArray[i].scrollRect = theGreenRectArray[i];
}
if (theGreenRectArray[i].y > -10) {
theGreenRectArray[i].y = -10;
}
if (theGreenTopPiece[i]._y < 109) {
theGreenTopPiece[i]._y = 109;
}
_root.topToolTipGreen[i] = theGreenTopPiece[i]._y;
if (theBlueTopArray[i] > -20) {
theSpeed = 7;
} else if (theBlueTopArray[i] > -40) {
theSpeed = 6;
} else if (theBlueTopArray[i] > -60) {
theSpeed = 5;
} else if (theBlueTopArray[i] > -80) {
theSpeed = 4;
} else if (theBlueTopArray[i] > -100) {
theSpeed = 3;
} else {
theSpeed = 3;
}
if ((theGreenRectArray[i].y >= theGreenTopArray[i]) && (_local3 > 0.5)) {
if (theBlueRectArray[i].y < theBlueTopArray[i]) {
theBlueRectArray[i].y = theBlueRectArray[i].y + theSpeed;
theBlueTopPiece[i]._y = theBlueTopPiece[i]._y - theSpeed;
if (theBlueRectArray[i].y > theBlueTopArray[i]) {
theBlueRectArray[i].y = theBlueTopArray[i];
theBlueTopPiece[i]._y = 103 - theBlueRectArray[i].y;
}
theBlueBarArray[i].scrollRect = theBlueRectArray[i];
}
}
if (theBlueRectArray[i].y > -10) {
theBlueRectArray[i].y = -10;
}
if (theBlueTopPiece[i]._y < 109) {
theBlueTopPiece[i]._y = 109;
}
_root.topToolTipBlue[i] = theBlueTopPiece[i]._y;
if ((theBlueRectArray[i].y >= theBlueTopArray[i]) || (theBlueRectArray[i].y >= 0)) {
j = 0;
while (j < _root.multipliersArray.length) {
if ((_root.multipliersArray[j].mTimeSpace == i) && (!_root.multipliersArray[j].mDrawn)) {
_root.multipliersArray[j].mDrawn = true;
aName = "multiplier" + multiplierDepth;
multiplierDepth++;
attachMovie("gameoverMultiplier", aName, getNextHighestDepth());
ref = this[aName];
ref.gotoAndStop(_root.multipliersArray[j].mColor);
ref.theNumber.text = _root.multipliersArray[j].mNumber;
multipleMultipliers[i]++;
ref._y = (theBlueTopPiece[i]._y - 20) - (20 * multipleMultipliers[i]);
ref._x = -153 + (37 * i);
_root.allTheMultipliers.push(ref);
}
j++;
}
}
i++;
}
}
};
blankiebut.useHandCursor = false;
_root.maingame.myScore = _root.gotya.checkandaddscore(_root.maingame.myScore, 0);
_root.gotya.gameOverScore(Number(_root.maingame.myScore));
Symbol 1036 Button
on (release) {
if (soundclip._currentframe == 1) {
soundclip.gotoAndStop(2);
_root.isSound = false;
} else if (soundclip._currentframe == 2) {
soundclip.gotoAndStop(1);
_root.isSound = true;
}
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 1037 Button
on (release) {
_root.maingame.showMeHelp();
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 1038 Button
on (release) {
gotoAndStop (2);
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 1039 Button
on (release) {
_root.maingame.hideMenu();
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 1047 Button
on (release) {
if (soundclip._currentframe == 1) {
soundclip.gotoAndStop(2);
_root.isSound = false;
_root.theSharedObject.data.sound = false;
} else if (soundclip._currentframe == 2) {
soundclip.gotoAndStop(1);
_root.isSound = true;
_root.theSharedObject.data.sound = true;
}
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 1048 Button
on (release) {
_root.maingame.showMeHelp();
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 1049 Button
on (release) {
gotoAndStop (2);
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 1050 Button
on (release) {
_root.maingame.hideMenu();
_root.playSound("mouse_click");
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 1058 Button
on (release) {
_root.maingame.quitGamePress();
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 1059 Button
on (release) {
_root.maingame.hideMenu();
}
on (rollOver) {
_root.playSound("mouse_over");
}
on (rollOut) {
_root.playSound("mouse_off");
}
Symbol 1063 MovieClip Frame 1
if (_root.isSound == true) {
soundclip.gotoAndStop(1);
}
if (_root.isSound == false) {
soundclip.gotoAndStop(2);
}
stop();
bbut.useHandCursor = false;
Symbol 1064 MovieClip Frame 1
stop();