Frame 1
function f_FireWave() {
var _local2;
var _local4 = false;
var _local3;
if (((!_root.b_IsRotating) && (!_root.b_PoppingCoins)) && (!_root.b_Paused)) {
_local2 = 1;
while (_local2 <= _root.n_CoinMaxX) {
_local3 = _root.o_CoinContainer[("o_Coin_" + _local2.toString()) + "_1"];
if ((_local3.n_TypeID == 0) || (_local3.n_TypeID == undefined)) {
_local4 = true;
_root.f_InitialiseCoin(_local2, 1);
}
_local2++;
}
}
if (_root.s_GameMode.toLowerCase() != "obstruction") {
_root.n_WaveFreq = _root.n_WaveFreq - _root.n_WaveReduction;
if (_root.n_WaveFreq < _root.n_WaveFloor) {
_root.n_WaveFreq = _root.n_WaveFloor;
}
_root.o_WaveProgress.n_MaxValue = _root.n_WaveFreq;
}
_root.n_WaveCounter = _root.n_WaveFreq;
_root.d_WaveLastDrop = new Date();
_root.d_WaveTimer = new Date();
return(_local4);
}
function f_InitialiseGame() {
var _local3;
var _local2;
var _local6;
var _local5;
var _local4;
var _local7 = false;
_local3 = 1;
while (_local3 <= _root.n_CoinMaxX) {
_local2 = 1;
while (_local2 <= _root.n_CoinMaxY) {
_local6 = _root.o_CoinContainer.attachMovie("Coin", (("o_Coin_" + _local3.toString()) + "_") + _local2.toString(), (100000 + (_local3 * 1000)) + _local2);
_root.f_InitialiseCoin(_local3, _local2);
_local2++;
}
_local3++;
}
if (_root.s_GameMode.toLowerCase() == "freeplay") {
_root.n_WaveOrigFreq = 5000;
_root.n_WaveReduction = 50;
_root.n_WaveFloor = 1500;
_root.n_GameSeconds = 0;
_root.n_CoinsNeeded = 3;
_root.o_TimeLeftTitle._visible = false;
_root.o_Timer._visible = false;
_root.o_WaveProgress._visible = true;
_root.o_NextWaveText._visible = true;
_root.n_GameLevel = undefined;
_local7 = true;
}
if (_root.s_GameMode.toLowerCase() == "timed") {
_root.n_WaveOrigFreq = 7000;
_root.n_WaveReduction = 50;
_root.n_WaveFloor = 1500;
_root.n_GameSeconds = 120;
_root.n_CoinsNeeded = 3;
_root.o_TimeLeftTitle._visible = true;
_root.o_Timer._visible = true;
_root.o_WaveProgress._visible = false;
_root.o_NextWaveText._visible = false;
_root.n_GameLevel = undefined;
_local7 = true;
} else if (_root.s_GameMode.toLowerCase() == "obstruction") {
_root.f_LoadObstructArray();
_root.n_WaveOrigFreq = 4000;
_root.n_WaveReduction = 150;
_root.n_WaveFloor = 2000;
_root.n_GameSeconds = 120;
_root.n_CoinsNeeded = 3;
_root.o_TimeLeftTitle._visible = true;
_root.o_Timer._visible = true;
_root.o_WaveProgress._visible = true;
_root.o_NextWaveText._visible = true;
_root.n_GameLevel = 1;
_local7 = true;
_root.f_DisplayObstruction(_root.n_GameLevel - 1);
}
_root.n_TimerSeconds = _root.n_GameSeconds;
if (_root.n_TimerSeconds > 0) {
_root.o_Timer.n_Seconds = _root.n_TimerSeconds;
_root.o_Timer.d_LastTick = new Date();
}
_root.n_Score = 0;
_root.b_PoppingCoins = false;
_root.b_LevelEnding = false;
_root.b_LevelEnded = false;
_root.b_GameInit = true;
_root.b_GameOver = false;
_root.b_Paused = false;
_local4 = 1;
while (_local4 <= 5) {
_local5 = _root["o_CoinCollect_" + _local4.toString()];
_local5.n_TypeID = _local4;
_local5._visible = _local7;
_local5.n_Total = 0;
_local5.o_CoinGraphics.gotoAndStop("Coin_" + _local4.toString());
_local4++;
}
_root.n_WaveFreq = n_WaveOrigFreq;
_root.n_WaveCounter = _root.n_WaveFreq;
_root.o_WaveProgress.n_MaxValue = _root.n_WaveFreq;
_root.o_WaveProgress.n_CurrentValue = _root.n_WaveCounter;
_root.f_FireWave();
}
function f_SuperPop(n_TypeID) {
var _local5;
var _local6;
var _local2;
var _local8 = _root.attachMovie("PopGems", "o_PopGems", _root.getNextHighestDepth(), {_x:_root.o_CoinContainer._x, _y:_root.o_CoinContainer._y});
_root.f_PlaySound("o_Explosions", "MegaPop");
var _local4;
var _local3;
_local8.gotoAndPlay(1);
_local5 = 1;
while (_local5 <= 5) {
_local6 = _root["o_CoinCollect_" + _local5.toString()];
_local6.n_Total = 0;
_local5++;
}
_root.b_PoppingCoins = true;
_root.n_NewScore = 0;
_local4 = 1;
while (_local4 <= _root.n_CoinMaxX) {
_local3 = 1;
while (_local3 <= _root.n_CoinMaxY) {
_local2 = _root.o_CoinContainer[(("o_Coin_" + _local4.toString()) + "_") + _local3.toString()];
if (_local2.n_TypeID == n_TypeID) {
_root.n_NewScore = _root.n_NewScore + _root.n_BaseScore;
_local2.n_TypeID = 0;
_local2.b_Popping = true;
_local2.o_CoinGraphics.gotoAndPlay("Coin_Pop");
}
_local3++;
}
_local4++;
}
if (_root.n_NewScore != 0) {
_root.n_Score = _root.n_Score + _root.n_NewScore;
}
_root.b_PoppingCoins = false;
}
function f_StartPop(n_X, n_Y, n_TypeID) {
var _local4;
var _local5;
var _local9;
var _local12;
var _local11;
var _local13 = 0;
var _local6;
_root.a_CoinArray = new Array();
a_CheckArray = new Array();
var _local3;
var _local2;
_root.a_CheckArray = new Array(_root.n_CoinMaxX);
_local3 = 1;
while (_local3 <= _root.n_CoinMaxX) {
_root.a_CheckArray[_local3] = new Array(_root.n_CoinMaxY);
_local2 = 1;
while (_local2 <= _root.n_CoinMaxY) {
_root.a_CheckArray[_local3][_local2] = false;
_local2++;
}
_local3++;
}
if (((!_root.b_PoppingCoins) && (!_root.b_Paused)) && (n_TypeID != 6)) {
_root.b_PoppingCoins = true;
_root.n_NewScore = 0;
_root.n_NewMultiplier = 0;
_root.n_CoinPopTypeID = n_TypeID;
_root.n_MaxX = n_X;
_root.n_MaxY = n_Y;
_root.n_MinX = n_X;
_root.n_MinY = n_Y;
_root.f_PopCoin(n_X, n_Y);
if (_root.a_CoinArray.length >= _root.n_CoinsNeeded) {
if (_root.n_GameLevel == undefined) {
_local6 = 1;
} else {
_local6 = ((_root.a_CoinArray.length - _root.n_CoinsNeeded) + 1) * (1 + ((_root.n_GameLevel - 1) / 10));
}
_local4 = 0;
while (_local4 < _root.a_CoinArray.length) {
_local5 = _root.o_CoinContainer["o_Coin_" + _root.a_CoinArray[_local4].toString()];
_root.n_NewScore = _root.n_NewScore + (_root.n_BaseScore * _local6);
_local5.n_TypeID = 0;
_local5.b_Popping = true;
_local5.o_CoinGraphics.gotoAndPlay("Coin_Pop");
_local4++;
}
}
if (_root.n_NewScore != 0) {
_root.f_PlaySound("o_Explosions", "Pop");
_root.n_Score = _root.n_Score + _root.n_NewScore;
_root["o_CoinCollect_" + n_TypeID.toString()].n_Total = _root["o_CoinCollect_" + n_TypeID.toString()].n_Total + _root.a_CoinArray.length;
_local12 = ((_root.o_CoinContainer._x - (_root.o_CoinContainer._width / 2)) + (((_root.n_MaxX + _root.n_MinX) / 2) * _root.n_CoinSpacing)) - (_root.n_CoinSpacing / 2);
_local11 = ((_root.o_CoinContainer._y - (_root.o_CoinContainer._height / 2)) + (((_root.n_MaxY + _root.n_MinY) / 2) * _root.n_CoinSpacing)) - (_root.n_CoinSpacing / 2);
_local9 = _root.attachMovie("NewScoreHolder", (("ScoreHolder_" + n_X.toString()) + "_") + n_Y.toString(), _root.getNextHighestDepth(), {_x:_local12, _y:_local11});
_local9.n_NewScore = _root.n_NewScore;
if (_root.s_GameMode.toLowerCase() == "timed") {
_root.n_TimerSeconds = _root.n_TimerSeconds + _root.a_CoinArray.length;
_root.o_Timer.n_Seconds = _root.o_Timer.n_Seconds + Math.floor(_root.a_CoinArray.length * _root.n_CoinTimeBoost);
if (_root.o_Timer.n_Seconds > _root.n_GameUpperTime) {
_root.o_Timer.n_Seconds = _root.n_GameUpperTime;
}
}
}
_root.b_PoppingCoins = false;
}
}
function f_PopCoin(n_X, n_Y) {
var _local4 = _root.o_CoinContainer[(("o_Coin_" + n_X.toString()) + "_") + n_Y.toString()];
var _local5 = false;
if ((_root.n_CoinPopTypeID == _local4.n_TypeID) && (!_root.a_CheckArray[n_X][n_Y])) {
if ((((((n_X <= _root.n_CoinMaxX) && (n_Y <= _root.n_CoinMaxX)) && (n_X > 0)) && (n_Y > 0)) && (_local4.n_TypeID > 0)) && (_local4.n_TypeID < 6)) {
if (_root.n_MinX > n_X) {
_root.n_MinX = n_X;
}
if (_root.n_MaxX < n_X) {
_root.n_MaxX = n_X;
}
if (_root.n_MinY > n_Y) {
_root.n_MinY = n_Y;
}
if (_root.n_MaxY < n_Y) {
_root.n_MaxY = n_Y;
}
_root.a_CoinArray[a_CoinArray.length] = (n_X.toString() + "_") + n_Y.toString();
_root.a_CheckArray[n_X][n_Y] = true;
_root.f_PopCoin(n_X, n_Y - 1);
_root.f_PopCoin(n_X, n_Y + 1);
_root.f_PopCoin(n_X - 1, n_Y);
_root.f_PopCoin(n_X + 1, n_Y);
}
}
}
function f_DropCoin(n_X, n_Y) {
var _local2;
var _local3;
var _local5;
if ((((n_Y <= _root.n_CoinMaxX) && (!_root.b_PoppingCoins)) && (!root.b_IsRotating)) && (!_root.b_Paused)) {
_local5 = n_Y - 1;
_local2 = _root.o_CoinContainer[(("o_Coin_" + n_X.toString()) + "_") + _local5.toString()];
_local3 = _root.o_CoinContainer[(("o_Coin_" + n_X.toString()) + "_") + n_Y.toString()];
if (_local2 != undefined) {
if ((((((!_local2.b_Popping) || (_local2.b_Popping == undefined)) && (!_local3.b_Popping)) && ((_local3.n_TypeID == 0) || (_local3.n_TypeID == undefined))) && (_local2.n_TypeID > 0)) && (_local2.n_TypeID < 6)) {
if (_local2.n_TypeID == undefined) {
_local3.n_TypeID = 0;
_local3.o_CoinGraphics.gotoAndStop("Coin_0");
} else {
_local3.n_TypeID = _local2.n_TypeID;
_local3.o_CoinGraphics.gotoAndStop("Coin_" + _local2.n_TypeID);
}
_local2.n_TypeID = 0;
_local2.o_CoinGraphics.gotoAndStop("Coin_0");
}
}
}
}
function f_ResetRotateArray() {
var _local3;
var _local2;
_root.o_RotateArray = new Array(_root.n_CoinMaxX);
_local3 = 1;
while (_local3 <= _root.n_CoinMaxX) {
_root.o_RotateArray[_local3] = new Array(_root.n_CoinMaxY);
_local2 = 1;
while (_local2 <= _root.n_CoinMaxY) {
_root.o_RotateArray[_local3][_local2] = 0;
_local2++;
}
_local3++;
}
}
function f_StartRotate(n_Direction) {
if ((!_root.b_IsRotating) && (!_root.b_Paused)) {
_root.n_RotateDestination = n_Direction;
_root.b_IsRotating = true;
}
}
function f_SwapRotatedField(n_Degrees) {
var _local3;
var _local2;
var _local6;
var _local5;
var _local4;
_root.f_ResetRotateArray();
_root.f_SetBoxRotation(0);
if (n_Degrees == -90) {
_root.o_CoinContainer.o_RotateBackground._rotation = f_DegreeTransform(_root.o_CoinContainer.o_RotateBackground._rotation, 90);
_local3 = 1;
while (_local3 <= _root.n_CoinMaxX) {
_local2 = 1;
while (_local2 <= _root.n_CoinMaxY) {
_local6 = _local2;
_local5 = (_root.n_CoinMaxX + 1) - _local3;
_root.o_RotateArray[_local3][_local2] = _root.o_CoinContainer[(("o_Coin_" + _local6.toString()) + "_") + _local5.toString()].n_TypeID;
_local2++;
}
_local3++;
}
} else if (n_Degrees == 90) {
_root.o_CoinContainer.o_RotateBackground._rotation = f_DegreeTransform(_root.o_CoinContainer.o_RotateBackground._rotation, -90);
_local3 = 1;
while (_local3 <= _root.n_CoinMaxX) {
_local2 = 1;
while (_local2 <= _root.n_CoinMaxY) {
_local6 = _local2;
_local5 = (_root.n_CoinMaxX + 1) - _local3;
_root.o_RotateArray[_local6][_local5] = _root.o_CoinContainer[(("o_Coin_" + _local3.toString()) + "_") + _local2.toString()].n_TypeID;
_local2++;
}
_local3++;
}
}
_local3 = 1;
while (_local3 <= _root.n_CoinMaxX) {
_local2 = 1;
while (_local2 <= _root.n_CoinMaxY) {
_local4 = _root.o_CoinContainer[(("o_Coin_" + _local3.toString()) + "_") + _local2.toString()];
_local4.n_TypeID = _root.o_RotateArray[_local3][_local2];
_local4.o_CoinGraphics.gotoAndStop("Coin_" + _root.o_RotateArray[_local3][_local2].toString());
_local4._rotation = 0;
_local2++;
}
_local3++;
}
}
function f_InitialiseCoin(n_X, n_Y) {
var _local2 = _root.o_CoinContainer[(("o_Coin_" + n_X.toString()) + "_") + n_Y.toString()];
var _local3;
if ((_local2.n_TypeID == undefined) || (_local2.n_TypeID == 0)) {
_local3 = Math.ceil(Math.random() * 5);
if (_root.b_GameInit) {
_local2.n_TypeID = _local3;
} else {
_local2.n_TypeID = 0;
}
_local2.n_X = n_X;
_local2.n_Y = n_Y;
_local2.b_Popping = false;
_local2._x = (_root.n_CoinLeftTopPadding + (n_X * _root.n_CoinSpacing)) - _root.n_CoinSpacing;
_local2._y = (_root.n_CoinLeftTopPadding + (n_Y * _root.n_CoinSpacing)) - _root.n_CoinSpacing;
_local2.o_CoinGraphics.gotoAndStop("Coin_" + _local2.n_TypeID.toString());
}
}
function f_SetBoxRotation(n_RotateValue) {
var _local3;
var _local2;
_root.o_CoinContainer._rotation = n_RotateValue;
_local3 = 1;
while (_local3 <= _root.n_CoinMaxX) {
_local2 = 1;
while (_local2 <= _root.n_CoinMaxY) {
if (_root.o_CoinContainer[(("o_Coin_" + _local3.toString()) + "_") + _local2.toString()].n_TypeID != 0) {
_root.o_CoinContainer[(("o_Coin_" + _local3.toString()) + "_") + _local2.toString()]._rotation = n_RotateValue * -1;
}
_local2++;
}
_local3++;
}
}
function f_ToggleSounds() {
var _local2 = new Date();
var _local3 = SharedObject.getLocal("GameSettings");
if (d_SoundsToggle == undefined) {
d_SoundsToggle = new Date(1999, 12, 31, 23, 59, 59, 0);
}
if (_root.f_OverTimeDiff(_root.d_SoundsToggle, _local2, 100)) {
_root.b_SoundsOn = !_root.b_SoundsOn;
_local3.data.b_SoundsOn = _root.b_SoundsOn;
if (_root.b_SoundsOn) {
_root.f_PlaySound("o_Sounds", "GameMusic");
} else {
stopAllSounds();
}
_root.d_SoundsToggle = _local2;
}
}
function f_PlaySound(s_Group, s_Sound) {
if (_root.b_SoundsOn) {
_root[s_Group].gotoAndPlay(s_Sound);
}
}
function f_StartGame(s_NewGameType) {
_root.b_GameInit = false;
_root.s_GameMode = s_NewGameType;
_root.o_GameLogo.gotoAndPlay("MoveToSide");
_root.gotoAndPlay("Start");
}
function f_EndGame() {
var _local4;
var _local2;
var _local3;
_local4 = 1;
while (_local4 <= _root.n_CoinMaxX) {
_local2 = 1;
while (_local2 <= _root.n_CoinMaxY) {
_local3 = _root.o_CoinContainer[(("o_Coin_" + _local4.toString()) + "_") + _local2.toString()];
_local3.n_TypeID = 0;
_local3.removeMovieClip();
_local2++;
}
_local4++;
}
_root.o_GameLogo.gotoAndPlay("Raise");
_root.gotoAndPlay("EndGame");
}
function f_DegreeTransform(n_CurrentPosition, n_ChangeVal) {
if ((n_CurrentPosition + n_ChangeVal) > 360) {
return((n_CurrentPosition + n_ChangeVal) - 360);
}
if ((n_CurrentPosition + n_ChangeVal) < 0) {
return((n_CurrentPosition + n_ChangeVal) + 360);
}
return(n_CurrentPosition + n_ChangeVal);
}
function f_OverTimeDiff(d_DateFrom, d_DateTo, n_MillisecondsDiff) {
var _local2 = (d_DateFrom.getMilliseconds() + (d_DateFrom.getSeconds() * 1000)) + (d_DateFrom.getMinutes() * 60000);
var _local1 = (d_DateTo.getMilliseconds() + (d_DateTo.getSeconds() * 1000)) + (d_DateTo.getMinutes() * 60000);
if (((_local2 + n_MillisecondsDiff) <= _local1) || (_local2 >= (_local1 + n_MillisecondsDiff))) {
return(true);
}
return(false);
}
function f_TimeDiff(d_DateFrom, d_DateTo) {
var _local3 = (d_DateFrom.getMilliseconds() + (d_DateFrom.getSeconds() * 1000)) + (d_DateFrom.getMinutes() * 60000);
var _local2 = (d_DateTo.getMilliseconds() + (d_DateTo.getSeconds() * 1000)) + (d_DateTo.getMinutes() * 60000);
return(_local2 - _local3);
}
function f_TogglePause() {
if ((f_TimeDiff(_root.d_LastPause, new Date()) > 1000) || (_root.d_LastPause == undefined)) {
if (!_root.b_Paused) {
_root.b_PausedMusic = _root.b_SoundsOn;
if (_root.b_PausedMusic) {
_root.f_ToggleSounds();
}
} else if (_root.b_PausedMusic) {
_root.f_ToggleSounds();
}
_root.b_Paused = !_root.b_Paused;
_root.d_LastPause = new Date();
}
}
function f_DisplayObstruction(n_ArrayVal) {
var _local6 = a_ObstructArray[n_ArrayVal].split("|");
var _local2;
var _local4;
var _local3;
var _local5;
_local4 = 0;
while (_local4 < 10) {
_local2 = 0;
while (_local2 < 10) {
_local5 = _local6[_local4].substring(_local2, _local2 + 1) == "1";
_local3 = _root.o_CoinContainer[(("o_Coin_" + (_local2 + 1).toString()) + "_") + (_local4 + 1).toString()];
if (_local5) {
_local3.n_TypeID = 6;
_local3.o_CoinGraphics.gotoAndStop("Coin_6");
} else {
_local3.n_TypeID = 0;
_local3.o_CoinGraphics.gotoAndStop("Coin_0");
}
_local2++;
}
_local4++;
}
}
function f_LoadObstructArray() {
a_ObstructArray = new Array();
a_ObstructArray[0] = "0000000000|0010000000|0010000000|0011110000|0000000000|0000000000|0000111100|0000000100|0000000100|0000000000|";
a_ObstructArray[1] = "0000000000|0000000000|0100000000|0010000000|0001000000|0000000000|0000001000|0000000100|0000000010|0000000000|";
a_ObstructArray[2] = "0000000000|0000000000|0011000000|0000000000|0000001100|0000000000|0000000000|0000000000|0011000000|0000000000|";
a_ObstructArray[3] = "0000000000|0000000000|0010000000|0010000000|0000000000|0000110000|0000000000|0000000100|0000000100|0000000000|";
a_ObstructArray[4] = "0000110000|0000000000|0000000000|0000000000|1000110000|0000110001|0000000000|0000000000|0000000000|0000110000|";
a_ObstructArray[5] = "0010000000|0010000000|0010000000|0010000000|0000000000|0000000000|0000000100|0000000100|0000000100|0000000100|";
a_ObstructArray[6] = "0000000000|0000000000|0000000000|0000010000|0000010000|0010000100|0000100000|0000100000|0000000000|0000000000|";
a_ObstructArray[7] = "0000000000|0000000000|0010000000|0010000000|0000000000|0011001100|0000000000|0000000100|0000000100|0000000000|";
a_ObstructArray[8] = "1000000111|1000000000|1000000000|0000000000|0000000000|0000000000|0000000000|0000000001|0000000001|1110000001|";
a_ObstructArray[9] = "0000001100|0000000000|1000000000|1000000000|0000000000|0000000000|0000000001|0000000001|0000000000|0011000000|";
a_ObstructArray[10] = "0000000000|0000000000|0000000000|0000000000|0000110000|0000110000|0000000000|0000000000|0000000000|0000000000|";
a_ObstructArray[11] = "0000110000|0000110000|0000000000|0000000000|1100000011|1100000011|0000000000|0000000000|0000110000|0000110000|";
}
function f_LockedSite() {
if (((_root._url.toLowerCase().indexOf("smileygamer.com") == -1) && (_root._url.toLowerCase().indexOf("thenakeddeveloper.com") == -1)) && (_root._url.toLowerCase().indexOf("localhost") == -1)) {
return(false);
}
return(true);
}
var CPMStarContentSpotID = "187Q274AA316";
var s_GameAds = "cpmstar";
var d_AdvertStartTime;
var n_CPMWaitTime = 5000;
var b_Debugging = true;
var n_GameLocation;
var b_LockedSite;
var n_Score;
var n_CoinsNeeded;
var n_BaseScore = 50;
var s_GameMode = "Timed";
var n_GameMinutes;
var n_GameSeconds;
var n_TimerSeconds;
var n_TotalTimerSeconds;
var n_GameLevel;
var b_LevelEnding;
var b_LevelEnded;
var b_GameOver;
var n_LevelEndPopChance = 20;
var n_GameUpperTime = 120;
var b_SoundsOn;
var d_SoundsToggle;
var b_GameInit;
var a_ObstructArray;
var n_WaveCounter;
var n_WaveOrigFreq;
var n_WaveFreq;
var d_WaveLastDrop;
var d_WaveTimer;
var n_WaveReduction;
var n_WaveFloor;
var n_CoinSpacing = 27;
var n_CoinLeftTopPadding = -121;
var n_CoinMaxX = 10;
var n_CoinMaxY = 10;
var n_CoinPopTypeID;
var b_PoppingCoins;
var a_CoinArray;
var a_CheckArray;
var n_CoinTimeBoost = 0.5;
var n_SuperPopLimit = 50;
var n_MaxX;
var n_MaxY;
var n_MinX;
var n_MinY;
var b_IsRotating;
var n_RotateSpeed = 10;
var n_RotateDestination;
var o_RotateArray;
var b_Paused;
var b_PausedMusic;
var d_LastPause;
function __com_mochibot__(swfid, mc, lv, trk) {
var x;
var g;
var s;
var fv;
var sb;
var u;
var res;
var mb;
var mbc;
var pv;
mb = "__mochibot__";
mbc = "mochibot.com";
g = (_global ? (_global) : (_level0._root));
if (g[mb + swfid]) {
return(g[mb + swfid]);
}
s = System.security;
x = mc._root.getSWFVersion;
fv = (x ? (mc.getSWFVersion()) : ((_global ? 6 : 5)));
if (!s) {
s = {};
}
sb = s.sandboxType;
if (sb == "localWithFile") {
return(null);
}
x = s.allowDomain;
if (x) {
s.allowDomain(mbc);
}
x = s.allowInsecureDomain;
if (x) {
s.allowInsecureDomain(mbc);
}
pv = ((fv == 5) ? (getVersion()) : (System.capabilities.version));
u = (((((((((((("http://" + mbc) + "/my/core.swf?mv=8&fv=") + fv) + "&v=") + escape(pv)) + "&swfid=") + escape(swfid)) + "&l=") + lv) + "&f=") + mc) + (sb ? ("&sb=" + sb) : "")) + (trk ? "&t=1" : "");
lv = ((fv > 6) ? (mc.getNextHighestDepth()) : ((g[mb + "level"] ? (g[mb + "level"] + 1) : (lv))));
g[mb + "level"] = lv;
if (fv == 5) {
res = "_level" + lv;
if (!eval (res)) {
loadMovieNum (u, lv);
}
} else {
res = mc.createEmptyMovieClip(mb + swfid, lv);
res.loadMovie(u);
}
return(res);
}
__com_mochibot__("57fd9ca3", this, 10301, true);
mochi.MochiServices.connect("7a291d74bf522e81");
_root.b_LockedSite = _root.f_LockedSite();
if (_root.s_GameAds == "mochiads") {
if (!_root.b_LockedSite) {
MochiAd.showPreGameAd({id:"7a291d74bf522e81", res:"500x500"});
} else {
o_Loader.gotoAndPlay(2);
}
} else if (_root.s_GameAds == "cpmstar") {
_root.d_AdvertStartTime = new Date();
System.security.allowDomain("server.cpmstar.com");
this.adBox.loadMovie("http://server.cpmstar.com/adviewas2.swf?contentspotid=" + _root.CPMStarContentSpotID);
o_Loader.gotoAndPlay(2);
}
stop();
Frame 3
stop();
Frame 4
_root.o_GameLogo.gotoAndPlay("Drop");
Frame 16
this.onEnterFrame = function () {
};
Frame 17
_root.gotoAndPlay("MenuEnd");
Frame 18
var n_CoinID;
var o_CoinInstr;
n_CoinID = 1;
while (n_CoinID <= 5) {
o_CoinInstr = _root["o_CoinCollect_" + n_CoinID.toString()];
o_CoinInstr.o_CoinGraphics.gotoAndStop("Coin_" + n_CoinID.toString());
n_CoinID++;
}
if (_root.s_GameMode.toLowerCase() == "timed") {
o_WaveProgress._visible = false;
o_NextWaveText._visible = false;
} else {
o_WaveProgress._visible = true;
o_NextWaveText._visible = true;
}
this.gotoAndPlay("Instruction_" + _root.s_GameMode.toLowerCase());
Frame 19
stop();
Frame 20
stop();
Frame 21
stop();
Frame 22
stop();
Frame 23
this.onEnterFrame = undefined;
stop();
Frame 24
stop();
Frame 25
stop();
Frame 26
stop();
Frame 27
stop();
Frame 28
stop();
Frame 29
this.onEnterFrame = function () {
var _local4;
var _local3;
var _local8;
var _local7 = true;
var _local5;
var _local6;
if (_root.b_GameInit != true) {
this.o_LevelText._visible = false;
_root.f_InitialiseGame();
} else if ((!_root.b_LevelEnding) && (!_root.b_LevelEnded)) {
if (_root.n_GameLevel != undefined) {
this.o_LevelText._visible = true;
this.o_LevelText.text = (("Level " + _root.n_GameLevel.toString()) + " of ") + _root.a_ObstructArray.length.toString();
} else {
this.o_LevelText._visible = false;
}
if (Key.isDown(80) || (Key.isDown(112))) {
_root.f_TogglePause();
}
if ((!_root.b_Paused) && (_root.s_GameMode.toLowerCase() != "timed")) {
_root.n_WaveCounter = _root.f_TimeDiff(_root.d_WaveTimer, new Date());
_root.o_WaveProgress.n_CurrentValue = _root.n_WaveCounter;
}
if (_root.b_IsRotating) {
if ((_root.n_RotateDestination < 0) && (_root.o_CoinContainer._rotation > _root.n_RotateDestination)) {
_root.f_SetBoxRotation(_root.o_CoinContainer._rotation - n_RotateSpeed);
} else if ((_root.n_RotateDestination > 0) && (_root.o_CoinContainer._rotation < _root.n_RotateDestination)) {
_root.f_SetBoxRotation(_root.o_CoinContainer._rotation + n_RotateSpeed);
} else if ((_root.n_RotateDestination > 0) && (_root.o_CoinContainer._rotation >= _root.n_RotateDestination)) {
_root.f_SwapRotatedField(-90);
b_IsRotating = false;
} else if ((_root.n_RotateDestination < 0) && (_root.o_CoinContainer._rotation <= _root.n_RotateDestination)) {
_root.f_SwapRotatedField(90);
b_IsRotating = false;
}
} else if ((!_root.b_IsRotating) && (!_root.b_Paused)) {
_local4 = 1;
while (_local4 <= _root.n_CoinMaxX) {
_local3 = _root.n_CoinMaxY;
while (_local3 >= 2) {
_root.f_DropCoin(_local4, _local3);
_local3--;
}
_local4++;
}
if (((_root.n_WaveCounter >= _root.n_WaveFreq) && (!_root.b_PoppingCoins)) && (_root.s_GameMode.toLowerCase() != "timed")) {
if (!_root.f_FireWave()) {
_root.b_LevelEnding = true;
_root.b_LevelEnded = false;
}
}
}
if (!_root.b_Paused) {
_root.o_Paused._x = -1000;
if ((((Key.isDown(40) || (Key.isDown(83))) || (Key.isDown(115))) && (!_root.b_IsRotating)) && (!_root.b_PoppingCoins)) {
if (_root.f_OverTimeDiff(_root.d_WaveLastDrop, new Date(), 250)) {
if (!_root.f_FireWave()) {
_root.b_LevelEnding = true;
_root.b_LevelEnded = false;
}
}
}
if ((Key.isDown(37) || (Key.isDown(65))) || (Key.isDown(97))) {
_root.f_StartRotate(-90);
}
if ((Key.isDown(39) || (Key.isDown(68))) || (Key.isDown(100))) {
_root.f_StartRotate(90);
}
if ((_root.o_Timer.n_Seconds == 0) && (!_root.b_IsRotating)) {
_root.b_LevelEnding = true;
_root.b_LevelEnded = true;
}
} else if (!_root.b_IsRotating) {
_root.o_Paused._x = _root.o_CoinContainer._x;
_root.o_Paused._y = _root.o_CoinContainer._y;
}
} else if (_root.b_LevelEnding) {
_local3 = 1;
while (_local3 <= _root.n_CoinMaxY) {
_local4 = 1;
while (_local4 <= _root.n_CoinMaxX) {
_local5 = _root.o_CoinContainer[(("o_Coin_" + _local4.toString()) + "_") + _local3.toString()];
if ((_local5.n_TypeID != 6) && (_local5.n_TypeID != 0)) {
_local6 = 100 * Math.random(100);
if (_local6 <= _root.n_LevelEndPopChance) {
_local5.o_CoinGraphics.gotoAndPlay("Coin_Pop");
_local5.n_TypeID = 0;
}
_local7 = false;
}
_local4++;
}
_local3++;
}
if (_local7 == true) {
_root.b_LevelEnding = false;
_root.b_LevelEnded = true;
}
} else if (_root.b_LevelEnded) {
_root.n_GameLevel++;
if (_root.s_GameMode.toLowerCase() == "obstruction") {
if ((_root.n_GameLevel <= _root.a_ObstructArray.length) && (_root.o_Timer.n_Seconds == 0)) {
_root.f_DisplayObstruction(_root.n_GameLevel - 1);
_root.b_LevelEnded = false;
_root.b_LevelEnding = false;
_root.n_TimerSeconds = _root.n_GameSeconds;
_root.o_Timer.n_Seconds = _root.n_TimerSeconds;
if (!_root.f_FireWave()) {
_root.b_LevelEnding = true;
_root.b_LevelEnded = false;
}
} else {
_root.b_GameOver = true;
}
} else {
_root.b_GameOver = true;
}
}
};
Frame 30
if (_root.b_GameOver) {
_root.f_EndGame();
} else {
_root.gotoAndPlay("GameLoop");
}
Frame 47
if (_root.b_GameInit) {
_root.gotoAndPlay("HiScores");
} else {
_root.gotoAndPlay("Menu");
}
Frame 48
var o_Settings = SharedObject.getLocal("GameSettings");
if ((_root.n_Score > Shared.data.n_Score) || (o_Settings.data.n_Score == undefined)) {
o_Settings.data.n_Score = _root.n_Score;
}
this.o_FinalScore.text = _root.n_Score.toString();
_root.HPScoreService.postScore(_root.n_Score, "normal");
_root.kongregateServices.connect();
_root.kongregateScores.submit(_root.n_Score);
if (_root.s_GameMode.toLowerCase() == "freeplay") {
mochi.MochiScores.showLeaderboard({boardID:"f1fb72a662b4d418", score:_root.n_Score});
}
if (_root.s_GameMode.toLowerCase() == "timed") {
mochi.MochiScores.showLeaderboard({boardID:"0fe3c8929ae02ebe", score:_root.n_Score});
} else if (_root.s_GameMode.toLowerCase() == "obstruction") {
mochi.MochiScores.showLeaderboard({boardID:"9e4f6d6743d6b16f", score:_root.n_Score});
}
stop();
Frame 49
gotoAndPlay ("Menu");
Symbol 19 MovieClip [CoinGraphics] Frame 1
stop();
Symbol 19 MovieClip [CoinGraphics] Frame 2
stop();
Symbol 19 MovieClip [CoinGraphics] Frame 3
stop();
Symbol 19 MovieClip [CoinGraphics] Frame 4
stop();
Symbol 19 MovieClip [CoinGraphics] Frame 5
stop();
Symbol 19 MovieClip [CoinGraphics] Frame 6
stop();
Symbol 19 MovieClip [CoinGraphics] Frame 7
stop();
Symbol 19 MovieClip [CoinGraphics] Frame 15
_parent.b_Popping = false;
Symbol 21 Button [CoinButton]
on (release) {
if (!_root.b_Paused) {
if ((((_root.o_CoinContainer[(("o_Coin_" + this.n_X.toString()) + "_") + (this.n_Y - 1).toString()].n_TypeID == this.n_TypeID) || (_root.o_CoinContainer[(("o_Coin_" + (this.n_X + 1).toString()) + "_") + this.n_Y.toString()].n_TypeID == this.n_TypeID)) || (_root.o_CoinContainer[(("o_Coin_" + (this.n_X - 1).toString()) + "_") + this.n_Y.toString()].n_TypeID == this.n_TypeID)) || (_root.o_CoinContainer[(("o_Coin_" + this.n_X.toString()) + "_") + (this.n_Y + 1).toString()].n_TypeID == this.n_TypeID)) {
_root.f_StartPop(this.n_X, this.n_Y, this.n_TypeID);
}
}
}
Symbol 22 MovieClip [Coin] Frame 1
var n_TypeID;
var n_X;
var n_Y;
var b_Popping;
this.onEnterFrame = function () {
};
Symbol 22 MovieClip [Coin] Frame 2
this.gotoAndPlay("CoinStart");
Symbol 27 MovieClip [NewScoreText] Frame 1
this.onEnterFrame = function () {
this.o_ScoreText.text = _parent.n_NewScore.toString();
};
Symbol 28 MovieClip [NewScoreHolder] Frame 1
var n_NewScore;
Symbol 28 MovieClip [NewScoreHolder] Frame 16
this.removeMovieClip();
Symbol 34 MovieClip [PopGems] Frame 21
this.removeMovieClip();
Symbol 41 Button [NextDrop]
on (release) {
_root.f_FireWave();
}
Symbol 53 MovieClip [Progress] Frame 1
function f_showProgress() {
if (n_CurrentValue != undefined) {
if (this.n_CurrentValue >= this.n_MaxValue) {
this.gotoAndPlay("Unfinished");
} else {
this.gotoAndPlay("Finished");
}
} else {
this.gotoAndPlay("Unfinished");
}
}
var n_MaxValue;
var n_CurrentValue;
this.onEnterFrame = function () {
if ((n_MaxValue != undefined) and (n_CurrentValue != undefined)) {
if (n_CurrentValue > n_MaxValue) {
o_ProgressBar._width = o_ProgressBorder._width;
} else {
o_ProgressBar._width = (o_ProgressBorder._width / n_MaxValue) * n_CurrentValue;
}
}
};
Symbol 53 MovieClip [Progress] Frame 2
this.f_showProgress();
Symbol 53 MovieClip [Progress] Frame 4
this.f_showProgress();
Symbol 56 MovieClip [Score] Frame 1
var s_ScoreString = ("0000000000" + _root.n_Score.toString()).toString();
if (_root.n_Score != undefined) {
this.ScoreText.text = s_ScoreString.substring(s_ScoreString.length - 10, s_ScoreString.length);
} else {
this.ScoreText.text = "0000000000";
}
Symbol 56 MovieClip [Score] Frame 2
gotoAndPlay (1);
Symbol 71 MovieClip [EndGameOverlay] Frame 1
stop();
Symbol 71 MovieClip [EndGameOverlay] Frame 2
_root.f_BombArea(9, 10000000);
this.play();
Symbol 71 MovieClip [EndGameOverlay] Frame 3
_root.f_BombArea(8, 10000000);
Symbol 71 MovieClip [EndGameOverlay] Frame 4
_root.f_BombArea(7, 10000000);
Symbol 71 MovieClip [EndGameOverlay] Frame 5
_root.f_BombArea(6, 10000000);
Symbol 71 MovieClip [EndGameOverlay] Frame 6
_root.f_BombArea(5, 10000000);
Symbol 71 MovieClip [EndGameOverlay] Frame 7
_root.f_BombArea(4, 10000000);
Symbol 71 MovieClip [EndGameOverlay] Frame 8
_root.f_BombArea(3, 10000000);
Symbol 71 MovieClip [EndGameOverlay] Frame 9
_root.f_BombArea(2, 10000000);
Symbol 71 MovieClip [EndGameOverlay] Frame 10
_root.f_BombArea(1, 10000000);
Symbol 71 MovieClip [EndGameOverlay] Frame 49
_root.gotoAndPlay("HiScores");
Symbol 85 Button [ClickToPlayGame]
on (release) {
trace("here");
_root.gotoAndPlay("Splash");
}
Symbol 86 MovieClip [Loader] Frame 2
var siteLoaded = _root.getBytesLoaded();
var siteTotal = _root.getBytesTotal();
var percentage = Math.round((siteLoaded / siteTotal) * 100);
loadingBar._xscale = percentage;
percentClip.percentDisplay.text = percentage + "%";
percentClip._x = loadingBar._x + loadingBar._width;
bytesDisplay.text = ((("loaded " + siteLoaded) + " of ") + siteTotal) + " bytes";
if (siteLoaded >= siteTotal) {
gotoAndPlay ("End");
}
Symbol 86 MovieClip [Loader] Frame 3
gotoAndPlay ("Looper");
Symbol 86 MovieClip [Loader] Frame 4
if (_root.s_GameAds == "cpmstar") {
if (_root.f_TimeDiff(_root.d_AdvertStartTime, new Date()) >= _root.n_CPMWaitTime) {
this.gotoAndPlay("PlayGame");
}
} else {
_root.gotoAndPlay("Splash");
this.stop();
}
Symbol 86 MovieClip [Loader] Frame 5
this.gotoAndPlay("End");
Symbol 86 MovieClip [Loader] Frame 6
this.stop();
Symbol 91 Button [NakedDevBigLogo]
on (release) {
getURL ("http://www.thenakeddeveloper.com", "_blank");
}
Symbol 268 MovieClip [__Packages.mochi.MochiServices] Frame 0
class mochi.MochiServices
{
static var _id, _container, _clip, _sendChannelName, _rcvChannelName, __get__comChannelName, onError, _listenChannel, _rcvChannel, _loader, _loaderListener, _sendChannel;
function MochiServices () {
}
static function get id() {
return(_id);
}
static function get clip() {
return(_container);
}
static function get childClip() {
return(_clip);
}
static function getVersion() {
return("1.2");
}
static function allowDomains(server) {
var _local1 = server.split("/")[2].split(":")[0];
if (System.security) {
if (System.security.allowDomain) {
System.security.allowDomain("*");
System.security.allowDomain(_local1);
}
if (System.security.allowInsecureDomain) {
System.security.allowInsecureDomain("*");
System.security.allowInsecureDomain(_local1);
}
}
return(_local1);
}
static function get isNetworkAvailable() {
if (System.security) {
var _local1 = System.security;
if (_local1.sandboxType == "localWithFile") {
return(false);
}
}
return(true);
}
static function set comChannelName(val) {
if (val != undefined) {
if (val.length > 3) {
_sendChannelName = val + "_fromgame";
_rcvChannelName = val;
initComChannels();
}
}
//return(__get__comChannelName());
}
static function get connected() {
return(_connected);
}
static function connect(id, clip, onError) {
if ((!_connected) && (_clip == undefined)) {
trace("MochiServices Connecting...");
_connecting = true;
init(id, clip);
}
if (onError != undefined) {
mochi.MochiServices.onError = onError;
} else if (mochi.MochiServices.onError == undefined) {
mochi.MochiServices.onError = function (errorCode) {
trace(errorCode);
};
}
}
static function disconnect() {
if (_connected || (_connecting)) {
_connecting = (_connected = false);
flush(true);
if (_clip != undefined) {
_clip.removeMovieClip();
delete _clip;
}
_listenChannel.close();
_rcvChannel.close();
}
}
static function init(id, clip) {
_id = id;
if (clip != undefined) {
_container = clip;
} else {
_container = _root;
}
loadCommunicator(id, _container);
}
static function loadCommunicator(id, clip) {
var _local2 = "_mochiservices_com_" + id;
if (_clip != null) {
return(_clip);
}
if (!isNetworkAvailable) {
return(null);
}
allowDomains(_gatewayURL);
_clip = clip.createEmptyMovieClip(_local2, 10336, false);
_loader = new MovieClipLoader();
if (_loaderListener.waitInterval != null) {
clearInterval(_loaderListener.waitInterval);
}
_loaderListener = {};
_loaderListener.onLoadError = function (target_mc, errorCode, httpStatus) {
trace("MochiServices could not load.");
mochi.MochiServices.disconnect();
mochi.MochiServices.onError.apply(null, [errorCode]);
};
_loaderListener.onLoadStart = function (target_mc) {
this.isLoading = true;
};
_loaderListener.startTime = getTimer();
_loaderListener.wait = function () {
if ((getTimer() - this.startTime) > 10000) {
if (!this.isLoading) {
mochi.MochiServices.disconnect();
mochi.MochiServices.onError.apply(null, ["IOError"]);
}
clearInterval(this.waitInterval);
}
};
_loaderListener.waitInterval = setInterval(_loaderListener, "wait", 1000);
_loader.addListener(_loaderListener);
_loader.loadClip(_gatewayURL, _clip);
_sendChannel = new LocalConnection();
_sendChannel._queue = [];
_rcvChannel = new LocalConnection();
_rcvChannel.allowDomain = function (d) {
return(true);
};
_rcvChannel.allowInsecureDomain = _rcvChannel.allowDomain;
_rcvChannel._nextcallbackID = 0;
_rcvChannel._callbacks = {};
listen();
return(_clip);
}
static function onStatus(infoObject) {
if (!(infoObject.level === "error")) {
} else {
_connected = false;
_listenChannel.connect(_listenChannelName);
}
}
static function listen() {
_listenChannel = new LocalConnection();
_listenChannel.handshake = function (args) {
mochi.MochiServices.__set__comChannelName(args.newChannel);
};
_listenChannel.allowDomain = function (d) {
return(true);
};
_listenChannel.allowInsecureDomain = _listenChannel.allowDomain;
_listenChannel.connect(_listenChannelName);
trace("Waiting for MochiAds services to connect...");
}
static function initComChannels() {
if (!_connected) {
_sendChannel.onStatus = function (infoObject) {
mochi.MochiServices.onStatus(infoObject);
};
_sendChannel.send(_sendChannelName, "onReceive", {methodName:"handshakeDone"});
_sendChannel.send(_sendChannelName, "onReceive", {methodName:"registerGame", id:_id, clip:_clip, version:getVersion()});
_rcvChannel.onStatus = function (infoObject) {
mochi.MochiServices.onStatus(infoObject);
};
_rcvChannel.onReceive = function (pkg) {
var _local5 = pkg.callbackID;
var _local4 = this._callbacks[_local5];
if (!_local4) {
return(undefined);
}
var _local2 = _local4.callbackMethod;
var _local3 = _local4.callbackObject;
if (_local3 && (typeof(_local2) == "string")) {
_local2 = _local3[_local2];
}
if (_local2 != undefined) {
_local2.apply(_local3, pkg.args);
}
delete this._callbacks[_local5];
};
_rcvChannel.onError = function () {
mochi.MochiServices.onError.apply(null, ["IOError"]);
};
_rcvChannel.connect(_rcvChannelName);
trace("connected!");
_connecting = false;
_connected = true;
_listenChannel.close();
while (_sendChannel._queue.length > 0) {
_sendChannel.send(_sendChannelName, "onReceive", _sendChannel._queue.shift());
}
}
}
static function flush(error) {
var _local1;
var _local2;
while (_sendChannel._queue.length > 0) {
_local1 = _sendChannel._queue.shift();
if (_local1.callbackID != null) {
_local2 = _rcvChannel._callbacks[_local1.callbackID];
}
delete _rcvChannel._callbacks[_local1.callbackID];
if (error) {
handleError(_local1.args, _local2.callbackObject, _local2.callbackMethod);
}
}
}
static function handleError(args, callbackObject, callbackMethod) {
if (args != null) {
if (args.onError != null) {
args.onError.apply(null, ["NotConnected"]);
}
}
if (callbackMethod != null) {
args = {};
args.error = true;
args.errorCode = "NotConnected";
if ((callbackObject != null) && (typeof(callbackMethod) == "string")) {
callbackObject[callbackMethod](args);
} else if (callbackMethod != null) {
callbackMethod.apply(args);
}
}
}
static function send(methodName, args, callbackObject, callbackMethod) {
if (_connected) {
_sendChannel.send(_sendChannelName, "onReceive", {methodName:methodName, args:args, callbackID:_rcvChannel._nextcallbackID});
} else {
if ((_clip == undefined) || (!_connecting)) {
onError.apply(null, ["NotConnected"]);
handleError(args, callbackObject, callbackMethod);
flush(true);
return(undefined);
}
_sendChannel._queue.push({methodName:methodName, args:args, callbackID:_rcvChannel._nextcallbackID});
}
_rcvChannel._callbacks[_rcvChannel._nextcallbackID] = {callbackObject:callbackObject, callbackMethod:callbackMethod};
_rcvChannel._nextcallbackID++;
}
static var _gatewayURL = "http://www.mochiads.com/static/lib/services/services.swf";
static var _listenChannelName = "__mochiservices";
static var _connecting = false;
static var _connected = false;
}
Symbol 269 MovieClip [__Packages.MochiAd] Frame 0
class MochiAd
{
function MochiAd () {
}
static function getVersion() {
return("2.1");
}
static function showPreGameAd(options) {
var _local27 = {clip:_root, ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:16747008, background:16777161, outline:13994812, ad_started:function () {
this.clip.stop();
}, ad_finished:function () {
this.clip.play();
}};
options = _parseOptions(options, _local27);
var clip = options.clip;
var _local23 = 11000;
var _local26 = options.ad_timeout;
delete options.ad_timeout;
var fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!load(options)) {
options.ad_finished();
return(undefined);
}
options.ad_started();
var mc = clip._mochiad;
mc.onUnload = function () {
options.ad_finished();
};
var _local14 = _getRes(options);
var _local4 = _local14[0];
var _local13 = _local14[1];
mc._x = _local4 * 0.5;
mc._y = _local13 * 0.5;
var chk = mc.createEmptyMovieClip("_mochiad_wait", 3);
chk._x = _local4 * -0.5;
chk._y = _local13 * -0.5;
var _local7 = chk.createEmptyMovieClip("_mochiad_bar", 4);
_local7._x = 10;
_local7._y = _local13 - 20;
var _local22 = options.color;
delete options.color;
var _local19 = options.background;
delete options.background;
var _local24 = options.outline;
delete options.outline;
var _local5 = _local7.createEmptyMovieClip("_outline", 1);
_local5.beginFill(_local19);
_local5.moveTo(0, 0);
_local5.lineTo(_local4 - 20, 0);
_local5.lineTo(_local4 - 20, 10);
_local5.lineTo(0, 10);
_local5.lineTo(0, 0);
_local5.endFill();
var _local3 = _local7.createEmptyMovieClip("_inside", 2);
_local3.beginFill(_local22);
_local3.moveTo(0, 0);
_local3.lineTo(_local4 - 20, 0);
_local3.lineTo(_local4 - 20, 10);
_local3.lineTo(0, 10);
_local3.lineTo(0, 0);
_local3.endFill();
_local3._xscale = 0;
var _local6 = _local7.createEmptyMovieClip("_outline", 3);
_local6.lineStyle(0, _local24, 100);
_local6.moveTo(0, 0);
_local6.lineTo(_local4 - 20, 0);
_local6.lineTo(_local4 - 20, 10);
_local6.lineTo(0, 10);
_local6.lineTo(0, 0);
chk.ad_msec = _local23;
chk.ad_timeout = _local26;
chk.started = getTimer();
chk.showing = false;
chk.last_pcnt = 0;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function () {
var _local2 = 100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time));
if (_local2 > 0) {
this._parent._alpha = _local2;
} else {
var _local3 = this._parent._parent;
MochiAd.unload(_local3);
delete this.onEnterFrame;
}
};
mc.lc.adLoaded = function (width, height) {
};
mc.lc.adjustProgress = function (msec) {
var _local2 = this.mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = msec;
};
chk.onEnterFrame = function () {
var _local6 = this._parent._parent;
var _local12 = this._parent._mochiad_ctr;
var _local5 = getTimer() - this.started;
var _local3 = false;
var _local4 = _local6.getBytesTotal();
var _local8 = _local6.getBytesLoaded();
var _local10 = (100 * _local8) / _local4;
var _local11 = (100 * _local5) / chk.ad_msec;
var _local9 = this._mochiad_bar._inside;
var _local2 = Math.min(100, Math.min(_local10 || 0, _local11));
_local2 = Math.max(this.last_pcnt, _local2);
this.last_pcnt = _local2;
_local9._xscale = _local2;
if (!chk.showing) {
var _local7 = _local12.getBytesTotal();
if ((_local7 > 0) || (typeof(_local7) == "undefined")) {
chk.showing = true;
chk.started = getTimer();
} else if (_local5 > chk.ad_timeout) {
_local3 = true;
}
}
if (_local5 > chk.ad_msec) {
_local3 = true;
}
if (((_local4 > 0) && (_local8 >= _local4)) && (_local3)) {
if (this.server_control) {
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = chk.fadeFunction;
}
}
};
}
static function showInterLevelAd(options) {
var _local13 = {clip:_root, ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function () {
this.clip.stop();
}, ad_finished:function () {
this.clip.play();
}};
options = _parseOptions(options, _local13);
var clip = options.clip;
var _local10 = 11000;
var _local12 = options.ad_timeout;
delete options.ad_timeout;
var fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!load(options)) {
options.ad_finished();
return(undefined);
}
options.ad_started();
var mc = clip._mochiad;
mc.onUnload = function () {
options.ad_finished();
};
var _local5 = _getRes(options);
var _local14 = _local5[0];
var _local11 = _local5[1];
mc._x = _local14 * 0.5;
mc._y = _local11 * 0.5;
var chk = mc.createEmptyMovieClip("_mochiad_wait", 3);
chk.ad_msec = _local10;
chk.ad_timeout = _local12;
chk.started = getTimer();
chk.showing = false;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function () {
var _local2 = 100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time));
if (_local2 > 0) {
this._parent._alpha = _local2;
} else {
var _local3 = this._parent._parent;
MochiAd.unload(_local3);
delete this.onEnterFrame;
}
};
mc.lc.adLoaded = function (width, height) {
};
mc.lc.adjustProgress = function (msec) {
var _local2 = this.mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = msec - 250;
};
chk.onEnterFrame = function () {
var _local5 = this._parent._mochiad_ctr;
var _local4 = getTimer() - this.started;
var _local2 = false;
if (!chk.showing) {
var _local3 = _local5.getBytesTotal();
if ((_local3 > 0) || (typeof(_local3) == "undefined")) {
chk.showing = true;
chk.started = getTimer();
} else if (_local4 > chk.ad_timeout) {
_local2 = true;
}
}
if (_local4 > chk.ad_msec) {
_local2 = true;
}
if (_local2) {
if (this.server_control) {
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = this.fadeFunction;
}
}
};
}
static function showTimedAd(options) {
showInterLevelAd(options);
}
static function showPreloaderAd(options) {
showPreGameAd(options);
}
static function _allowDomains(server) {
var _local1 = server.split("/")[2].split(":")[0];
if (System.security) {
if (System.security.allowDomain) {
System.security.allowDomain("*");
System.security.allowDomain(_local1);
}
if (System.security.allowInsecureDomain) {
System.security.allowInsecureDomain("*");
System.security.allowInsecureDomain(_local1);
}
}
return(_local1);
}
static function _loadCommunicator(options) {
var _local26 = {clip:_root, com_server:"http://x.mochiads.com/com/1/", method:"loadCommunicator", depth:10337, id:"_UNKNOWN_"};
options = _parseOptions(options, _local26);
options.swfv = options.clip.getSWFVersion() || 6;
options.mav = getVersion();
var _local18 = options.clip;
var _local20 = "_mochiad_com_" + options.id;
if (!_isNetworkAvailable()) {
return(null);
}
if (_local18[_local20]) {
return(_local18[_local20].lc);
}
var _local21 = options.com_server + options.id;
_allowDomains(_local21);
delete options.id;
delete options.com_server;
var _local25 = options.depth;
delete options.depth;
var _local17 = _local18.createEmptyMovieClip(_local20, _local25);
var _local11 = _local17.createEmptyMovieClip("_mochiad_com", 1);
for (var _local15 in options) {
_local11[_local15] = options[_local15];
}
var _local6 = new LocalConnection();
var _local16 = ["", Math.floor(new Date().getTime()), random(999999)].join("_");
_local6.mc = _local17;
_local6.name = _local16;
_local6.allowDomain = function (d) {
return(true);
};
_local6.allowInsecureDomain = _local6.allowDomain;
_local6.connect(_local16);
_local17.lc = _local6;
_local11.lc = _local16;
_local6._id = 0;
_local6._queue = [];
_local6.rpcResult = function (cb_arg) {
var _local8 = parseInt(cb_arg);
var _local4 = this._callbacks[_local8];
if (!_local4) {
return(undefined);
}
delete this._callbacks[_local8];
var _local5 = [];
var _local3 = 2;
while (_local3 < _local4.length) {
_local5.push(_local4[_local3]);
_local3++;
}
_local3 = 1;
while (_local3 < arguments.length) {
_local5.push(arguments[_local3]);
_local3++;
}
var _local6 = _local4[1];
var _local7 = _local4[0];
if (_local7 && (typeof(_local6) == "string")) {
_local6 = _local7[_local6];
}
if (_local6) {
_local6.apply(_local7, _local5);
}
};
_local6._didConnect = function (endpoint) {
this._endpoint = endpoint;
var _local4 = this._queue;
delete this._queue;
var _local5 = this.doSend;
var _local2 = 0;
while (_local2 < _local4.length) {
var _local3 = _local4[_local2];
_local5.apply(this, _local3);
_local2++;
}
};
_local6.doSend = function (args, cbobj, cbfn) {
if (this._endpoint == null) {
var _local4 = [];
var _local3 = 0;
while (_local3 < arguments.length) {
_local4.push(arguments[_local3]);
_local3++;
}
this._queue.push(_local4);
return(undefined);
}
this._id = this._id + 1;
var _local5 = this._id;
if ((cbfn === undefined) || (cbfn === null)) {
cbfn = cbobj;
}
this._callbacks[_local5] = [cbobj, cbfn];
var _local7 = new LocalConnection();
var _local9 = _local7.send(this._endpoint, "rpc", _local5, args);
};
_local6._callbacks = {};
_local6._callbacks[0] = [_local6, "_didConnect"];
_local11.st = getTimer();
_local11.loadMovie(_local21 + ".swf", "POST");
return(_local6);
}
static function fetchHighScores(options, callbackObj, callbackMethod) {
var _local1 = _loadCommunicator({id:options.id});
if (!_local1) {
return(false);
}
var _local4 = ["fetchHighScores", options];
_local1.doSend(["fetchHighScores", options], callbackObj, callbackMethod);
return(true);
}
static function sendHighScore(options, callbackObj, callbackMethod) {
var _local1 = _loadCommunicator({id:options.id});
if (!_local1) {
return(false);
}
var _local4 = ["sendHighScore", options];
_local1.doSend(["sendHighScore", options], callbackObj, callbackMethod);
return(true);
}
static function load(options) {
var _local13 = {clip:_root, server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"};
options = _parseOptions(options, _local13);
options.swfv = options.clip.getSWFVersion() || 6;
options.mav = getVersion();
var _local9 = options.clip;
if (!_isNetworkAvailable()) {
return(null);
}
if (_local9._mochiad_loaded) {
return(null);
}
var _local12 = options.depth;
delete options.depth;
var _local6 = _local9.createEmptyMovieClip("_mochiad", _local12);
var _local11 = _getRes(options);
options.res = (_local11[0] + "x") + _local11[1];
options.server = options.server + options.id;
delete options.id;
_local9._mochiad_loaded = true;
var _local4 = _local6.createEmptyMovieClip("_mochiad_ctr", 1);
for (var _local7 in options) {
_local4[_local7] = options[_local7];
}
var _local10 = _local4.server;
delete _local4.server;
var _local14 = _allowDomains(_local10);
_local6.onEnterFrame = function () {
if (this._mochiad_ctr._url != this._url) {
this.onEnterFrame = function () {
if (!this._mochiad_ctr) {
delete this.onEnterFrame;
MochiAd.unload(this._parent);
}
};
}
};
var _local5 = new LocalConnection();
var _local8 = ["", Math.floor(new Date().getTime()), random(999999)].join("_");
_local5.mc = _local6;
_local5.name = _local8;
_local5.hostname = _local14;
_local5.allowDomain = function (d) {
return(true);
};
_local5.allowInsecureDomain = _local5.allowDomain;
_local5.connect(_local8);
_local6.lc = _local5;
_local4.lc = _local8;
_local4.st = getTimer();
_local4.loadMovie(_local10 + ".swf", "POST");
return(_local6);
}
static function unload(clip) {
if (typeof(clip) == "undefined") {
clip = _root;
}
if (clip.clip && (clip.clip._mochiad)) {
clip = clip.clip;
}
if (!clip._mochiad) {
return(false);
}
clip._mochiad.removeMovieClip();
delete clip._mochiad_loaded;
delete clip._mochiad;
return(true);
}
static function _isNetworkAvailable() {
if (System.security) {
var _local1 = System.security;
if (_local1.sandboxType == "localWithFile") {
return(false);
}
}
return(true);
}
static function _getRes(options) {
var _local3 = options.clip.getBounds();
var _local2 = 0;
var _local1 = 0;
if (typeof(options.res) != "undefined") {
var _local4 = options.res.split("x");
_local2 = parseFloat(_local4[0]);
_local1 = parseFloat(_local4[1]);
} else {
_local2 = _local3.xMax - _local3.xMin;
_local1 = _local3.yMax - _local3.yMin;
}
if ((_local2 == 0) || (_local1 == 0)) {
_local2 = Stage.width;
_local1 = Stage.height;
}
return([_local2, _local1]);
}
static function _parseOptions(options, defaults) {
var _local4 = {};
for (var _local8 in defaults) {
_local4[_local8] = defaults[_local8];
}
if (options) {
for (var _local8 in options) {
_local4[_local8] = options[_local8];
}
}
if (_root.mochiad_options) {
var _local5 = _root.mochiad_options.split("&");
var _local2 = 0;
while (_local2 < _local5.length) {
var _local3 = _local5[_local2].split("=");
_local4[unescape(_local3[0])] = unescape(_local3[1]);
_local2++;
}
}
return(_local4);
}
}
Symbol 270 MovieClip [__Packages.mochi.MochiScores] Frame 0
class mochi.MochiScores
{
static var boardID, onClose, onError;
function MochiScores () {
}
static function setBoardID(boardID) {
mochi.MochiScores.boardID = boardID;
mochi.MochiServices.send("scores_setBoardID", {boardID:boardID});
}
static function showLeaderboard(options) {
if (options.clip != null) {
if (options.clip != mochi.MochiServices.__get__clip()) {
mochi.MochiServices.disconnect();
mochi.MochiServices.connect(mochi.MochiServices.__get__id(), options.clip);
}
delete options.clip;
}
if (options.name != null) {
if (typeof(options.name) == "object") {
if (options.name.text != undefined) {
options.name = options.name.text;
}
}
}
if (options.score != null) {
if (typeof(options.score) == "object") {
if (options.score.text != undefined) {
options.score = options.score.text;
}
}
}
if (options.onDisplay != null) {
options.onDisplay();
} else {
mochi.MochiServices.__get__clip().stop();
}
if (options.onClose != null) {
onClose = options.onClose;
} else {
onClose = function () {
mochi.MochiServices.__get__clip().play();
};
}
if (options.onError != null) {
onError = options.onError;
} else {
onError = onClose;
}
if (options.boardID == null) {
if (boardID != null) {
options.boardID = boardID;
}
}
mochi.MochiServices.send("scores_showLeaderboard", {options:options}, null, doClose);
}
static function closeLeaderboard() {
mochi.MochiServices.send("scores_closeLeaderboard");
}
static function getPlayerInfo(callbackObj, callbackMethod) {
mochi.MochiServices.send("scores_getPlayerInfo", null, callbackObj, callbackMethod);
}
static function submit(score, name, callbackObj, callbackMethod) {
mochi.MochiServices.send("scores_submit", {score:score, name:name}, callbackObj, callbackMethod);
}
static function requestList(callbackObj, callbackMethod) {
mochi.MochiServices.send("scores_requestList", null, callbackObj, callbackMethod);
}
static function scoresArrayToObjects(scores) {
var _local5 = {};
var _local1;
var _local4;
var _local2;
var _local6;
for (var _local8 in scores) {
if (typeof(scores[_local8]) == "object") {
if ((scores[_local8].cols != null) && (scores[_local8].rows != null)) {
_local5[_local8] = [];
_local2 = scores[_local8];
_local4 = 0;
while (_local4 < _local2.rows.length) {
_local6 = {};
_local1 = 0;
while (_local1 < _local2.cols.length) {
_local6[_local2.cols[_local1]] = _local2.rows[_local4][_local1];
_local1++;
}
_local5[_local8].push(_local6);
_local4++;
}
} else {
_local5[_local8] = {};
for (var _local7 in scores[_local8]) {
_local5[_local8][_local7] = scores[_local8][_local7];
}
}
} else {
_local5[_local8] = scores[_local8];
}
}
return(_local5);
}
static function doClose(args) {
if (args.error == true) {
if (args.errorCode == undefined) {
args.errorCode = "IOError";
}
onError.apply(null, [args.errorCode]);
} else {
onClose.apply();
}
}
}
Symbol 106 Button [SplashButton]
on (release) {
getURL ("http://www.smileygamer.com/?gameref=2013", "_blank");
}
Symbol 107 MovieClip [SplashGraphics] Frame 121
_root.play();
Symbol 119 MovieClip [EndGameContainer] Frame 2
this.gotoAndPlay(1);
Symbol 132 MovieClip [GameLogo] Frame 1
if (_root.b_SoundsOn == undefined) {
_root.b_SoundsOn = true;
_root.f_PlaySound("o_Sounds", "GameMusic");
}
Symbol 132 MovieClip [GameLogo] Frame 11
_root.f_PlaySound("o_Sounds", "Boom");
Symbol 132 MovieClip [GameLogo] Frame 20
_root.f_PlaySound("o_Sounds", "Boom");
Symbol 132 MovieClip [GameLogo] Frame 30
_root.f_PlaySound("o_Sounds", "Boom");
Symbol 132 MovieClip [GameLogo] Frame 31
stop();
Symbol 132 MovieClip [GameLogo] Frame 40
stop();
Symbol 132 MovieClip [GameLogo] Frame 61
stop();
Symbol 137 Button [NakedDevClicker]
on (release) {
getURL ("http://www.thenakeddeveloper.com", "_blank");
}
Symbol 145 Button [SponsorMoreGames]
on (release) {
getURL ("http://www.smileygamer.com/?gameref=2013", "_blank");
}
Symbol 149 MovieClip [Sounds] Frame 2
gotoAndStop (1);
Symbol 149 MovieClip [Sounds] Frame 4
gotoAndStop (1);
Symbol 149 MovieClip [Sounds] Frame 6
gotoAndStop (1);
Symbol 149 MovieClip [Sounds] Frame 8
gotoAndStop (1);
Symbol 152 MovieClip [ExplosionSounds] Frame 2
gotoAndStop (1);
Symbol 152 MovieClip [ExplosionSounds] Frame 4
this.stop();
Symbol 152 MovieClip [ExplosionSounds] Frame 6
this.stop();
Symbol 156 Button [AddToYourSite]
on (release) {
getURL ("http://www.smileygamer.com/freecontent.html?gameref=2013", "_blank");
}
Symbol 159 Button [SoundsOff]
on (release) {
_root.f_ToggleSounds();
}
Symbol 162 Button [SoundsOn]
on (release) {
_root.f_ToggleSounds();
}
Symbol 163 MovieClip [SoundsOnOff] Frame 1
if (_root.b_SoundsOn == false) {
this.gotoAndPlay("Off");
} else {
this.gotoAndPlay("On");
}
Symbol 163 MovieClip [SoundsOnOff] Frame 3
if (_root.b_SoundsOn) {
this.gotoAndPlay("On");
} else {
this.gotoAndPlay("Off");
}
Symbol 163 MovieClip [SoundsOnOff] Frame 5
if (_root.b_SoundsOn) {
this.gotoAndPlay("On");
} else {
this.gotoAndPlay("Off");
}
Symbol 172 Button [StartTimedGame]
on (release) {
_root.f_StartGame("timed");
}
Symbol 179 Button [StartObstructionGame]
on (release) {
_root.f_StartGame("obstruction");
}
Symbol 186 Button [StartFreePlayGame]
on (release) {
_root.f_StartGame("freeplay");
}
Symbol 188 Button [StartTimedGameRestricted]
on (release) {
getURL ("http://www.smileygamer.com/play/2013/rox.html?gameref=2013", "_blank");
}
Symbol 189 MovieClip [MenuContainer] Frame 1
if (!_root.b_LockedSite) {
this.gotoAndPlay("LockedDownMenu");
}
Symbol 189 MovieClip [MenuContainer] Frame 2
this.gotoAndPlay("UnlockedMenu");
Symbol 189 MovieClip [MenuContainer] Frame 4
this.gotoAndPlay("LockedDownMenu");
Symbol 198 Button
on (release) {
this.gotoAndPlay("EndGame");
}
Symbol 202 MovieClip [Timer] Frame 1
var n_Seconds;
var d_LastTick;
this.onEnterFrame = function () {
var _local4 = "00";
var _local3 = "00";
if (!_root.b_Paused) {
if ((this.n_Seconds != undefined) && (this.d_LastTick != undefined)) {
if (this.n_Seconds > 0) {
if (_root.f_OverTimeDiff(this.d_LastTick, new Date(), 1000)) {
this.n_Seconds--;
this.d_LastTick = new Date();
}
}
_local4 = "00" + Math.floor(this.n_Seconds / 60);
_local4 = _local4.substr(_local4.length - 2, 2);
_local3 = "00" + (this.n_Seconds % 60);
_local3 = _local3.substr(_local3.length - 2, 2);
this.o_TimerText.text = (_local4 + ":") + _local3;
}
}
};
Symbol 202 MovieClip [Timer] Frame 2
this.gotoAndPlay(1);
Symbol 207 Button [StartGamePostInst]
on (release) {
this.gotoAndPlay("GameLoop");
}
Symbol 211 Button [CoinCollectorHit]
on (release) {
if (this.n_Total >= _root.n_SuperPopLimit) {
_root.f_SuperPop(this.n_TypeID);
}
}
Symbol 216 MovieClip [CoinCollector] Frame 1
var n_Total;
var n_TypeID;
this.onEnterFrame = function () {
if (n_TypeID == undefined) {
n_TypeID = this._name.split("_")[this._name.split("_").length - 1];
}
if (n_Total != undefined) {
if (n_Total < _root.n_SuperPopLimit) {
this.o_Total.text = "x" + n_Total.toString();
this.o_MovingArrows._visible = false;
} else {
this.o_Total.text = "READY";
this.o_MovingArrows._visible = true;
}
} else {
this.o_Total.text = "x0";
this.o_MovingArrows._visible = false;
}
};
Symbol 216 MovieClip [CoinCollector] Frame 2
gotoAndPlay (1);
Symbol 220 Button
on (release) {
_root.gotoAndPlay("Instruction_NextWave");
}
Symbol 227 Button
on (release) {
_root.gotoAndPlay("Instruction_RotateLeft");
}
Symbol 236 Button
on (release) {
_root.play();
}
Symbol 240 MovieClip [PreviewBox] Frame 1
var n_Rotate;
if (n_Rotate != undefined) {
n_Rotate = n_Rotate + 5;
if (n_Rotate > 360) {
n_Rotate = n_Rotate - 360;
}
} else {
n_Rotate = 0;
}
this.o_Rotate._rotation = n_Rotate;
Symbol 240 MovieClip [PreviewBox] Frame 2
this.gotoAndPlay(1);
Symbol 243 Button
on (release) {
_root.play();
}
Symbol 251 Button
on (release) {
_root.f_StartRotate(-90);
}
Symbol 252 Button
on (release) {
_root.f_StartRotate(90);
}
Symbol 253 Button
on (release) {
var o_Anim;
o_Anim = _root.attachMovie("PopGems", "o_PopGems", _root.getNextHighestDepth(), {_x:_root.o_CoinContainer._x, _y:_root.o_CoinContainer._y});
_root.f_PlaySound("o_Explosions", "MegaPop");
o_Anim.gotoAndPlay(1);
_root.n_GameLevel = _root.a_ObstructArray.length + 1;
_root.b_LevelEnding = true;
}
Symbol 267 Button
on (release) {
trace("here");
_root.gotoAndPlay("Menu");
}